Dynamics modelling and control of the 3RCC translational platform
Massimo Callegari
*
,MatteoClaudio Palpacelli,Marco Principi
Department of Mechanics,Polytechnic University of Marche,Via Brecce Bianche,60131 Ancona,Italy
Received 20 October 2005;accepted 14 June 2006
Abstract
The article presents the inverse dynamics model of a novel translating parallel machine and proposes the structure of a force controller
for the execution of tasks characterised by interaction with the environment.The task space model of machine’s dynamics is obtained in
an eﬃcient and compact form by means of the principle of virtual work.A virtual prototyping environment has been set up to test by
computer simulation the potential of such kinematic architecture:the resulting dynamics is rather poor,mainly due to the high moving
masses,but it is shown that hybrid position/force control schemes should be able to provide good performances,including the case of
rather diﬃcult operations,such as the peginhole assembly.
2006 Elsevier Ltd.All rights reserved.
Keywords:Robotics;Parallel kinematics machines;Translation parallel mechanisms;Parallel robots;Inverse dynamics;Hybrid position/force control
1.Introduction
A new kind of machines have attracted the interest of
both academic and industrial communities for some time:
they are called parallel kinematics machines,PKMs,since
they are characterised by a moving platform that is actu
ated inparallel by several kinematic chains,also called
‘‘limbs’’ or ‘‘legs’’.Usually all the limbs are identical and
their number is equal to the number of degrees of freedom
of the platform:if this is the case,each leg is driven by one
actuator,that can be ﬁxed to machine’s frame.It must be
pointed out,however,that interesting architectures with
diﬀerent geometrical settings are possible too,especially
in case of overconstrained mechanisms,as shown for
instance by Dai et al.[1].The design of PKMs can be easily
driven to obtain lightweight constructions jointly with
good dynamic performances or even to provide the end
eﬀector with a very high stiﬀness,but some drawbacks
are unavoidable too,like the limited workspace and the
great number of joints of the mechanical design.In any
case,the industrial relevance of these machines is continu
ously growing and nowadays they are used in many diﬀer
ent ﬁelds.From the economical point of view,the most
important applications are surely the high speed manipula
tion and the machining or assembly operations,character
ised by the development of high interaction forces.Parallel
robots,for instance,can well compete with the conven
tional SCARA architecture when high speeds and acceler
ations are needed:for example,the fast and accurate Delta
robot,designed by Clavel [2] but found in many plants by
diﬀerent industrial makers,can reach up to 20g accelera
tions.On the other hand,heavy applications are suitable
to the Tricept,whose hybrid (parallel/serial) architecture
was originally conceived by Neumann [3]:in some indus
trial versions,it is able to exert maximum thrust forces of
about 45 kN with repeatability better than 0.03 mm and
is therefore used for assembly or machining.It is inciden
tally noted that both the Delta and the Tricept concepts
had really created major breakthroughs in robotic applica
tions,so that their inventors,Reymond Clavel and Karl
Erik Neumann,were both presented with the ‘‘Golden
Robot Award’’ in 1999,which is also a recognition of the
relevance of this new technology.
As a matter of fact,this kind of kinematic structure is
not new at all,as well explained by Bonev in his feature
09574158/$  see front matter 2006 Elsevier Ltd.All rights reserved.
doi:10.1016/j.mechatronics.2006.06.001
*
Corresponding author.Tel.:+39 071 220 4444;fax:+39 071 220 4801.
Email address:m.callegari@univpm.it (M.Callegari).
Mechatronics 16 (2006) 589–605
article [4]:the famous ‘‘Stewart platform’’ [5],for instance,
it was actually invented by Gough in 1947 and built a few
years later.Nevertheless,even if the subject of parallel
kinematics machines has been studied extensively in the last
years,many problems are still open for an eﬃcient exploi
tation of the concept,like the small workspace,the poor
dexterity,the diﬃcult design,the complexity of direct kine
matics equations,the coupling of position and orientation,
and so on [6,7].For these reasons there is recently a grow
ing interest in new minormobility mechanisms that are
able to performelementary motions,like pure translations,
pure rotations or even planar displacements.Speaking
about translation parallel mechanisms (TPMs),apart from
the already mentioned Delta,many other designs have
been recently proposed,like 3UPU by Tsai and Joshi [8]
(with the variants:3PUU and 3RUU [9]),the 3URC
by Di Gregorio [10],the 3RRC by Zhao and Huang
[11],the Cartesian parallel manipulator by Kim and Tsai
[12],the 3CRR by Kong and Gosselin [13] and others,
with diﬀerent theoretical approaches and practical results.
It is worth citing also the work of Carricato and Parenti
Castelli [14],who studied exhaustively the entire family of
TPMs whose limbs can be modelled as 5dof chains,which
is by far the most interesting case.
In [15,16] yet another type of translating platform has
been proposed and studied from the kinematic point of
view:since it turned out that the machine presents very
good features,like simple direct and inverse kinematic
relations,high stiﬀness,a convex domeshaped workspace,
etc.,it was decided to explore further its capabilities,espe
cially by assessing its dynamic performances and ﬁnally to
build a prototype of the machine.To this aimthe kinematic
structure has been optimised for applications characterised
by interactions with the environment and then an inte
grated mechatronic design of both mechanical structure,
see Fig.1,and control system has been concurrently devel
oped,leading to a virtual prototype of the whole system.
As a matter of fact,the challenge in the design of robots
interacting with the environment is given by the use of
dynamics shaping and/or interaction control to subdue
Nomenclature
d;
_
d;
€
d displacements,velocities and accelerations of
actuated joints
p;
_
pð¼ v
p
Þ;
€
p taskspace position,velocity and accelera
tion of endeﬀector
J(d) manipulator’s Jacobian matrix:
_
d ¼ JðdÞ
_
p
s actuation torques/forces
F external forces/moments acting at the end
eﬀector
M(d),M
x
(p) mass matrix of the system expressed in
joint or taskspace
Cðd;
_
dÞ;C
x
ðp;
_
pÞ forces/torques arising from centrifugal
and Coriolis forces expressed in joint or task
space
Dðd;
_
dÞ;D
x
ðp;
_
pÞ friction and damping forces/torques
expressed in joint or taskspace
Gðd;
_
dÞ;G
x
ðp;
_
pÞ gravity forces/torques in jointspace or
taskspace
Aðd;
_
dÞ;A
x
ðp;
_
pÞ vector collecting in a compact form all
dynamic terms (joint or taskspace,respectively)
m
ji
,I
ji
mass and inertia tensor of the cylinder (j =1) or
piston (j =2) of the ith limb
v
ji
,x
i
velocity of the centres of mass of cylinder (j =1)
or piston (j =2) of the ith limb and (common)
angular velocity
f
ji
resulting force (excluding the actuator force s
i
)
acting on cylinder (j =1) or piston (j =2) of
the ith limb
f
ji
¼ m
ji
_
v
ji
inertia force of cylinder (j =1) or piston
(j =2) of the ith limb
f
ji
¼ f
ji
þf
ji
total force acting on cylinder (j =1) or
piston (j =2) of the ith limb (excluding the
actuator force)
n
ji
resulting moment acting on cylinder (j =1) or
piston (j =2) of the ith limb
n
ji
¼ I
ji
_
x
i
x
i
ðI
ji
x
i
Þ inertia moment of cylinder
(j =1) or piston (j =2) of the ith limb
n
ji
¼ n
ji
þn
ji
total moment acting on cylinder (j =1) or
piston (j =2) of the ith limb
m
p
mass of the moving platform
f
e
external force applied to the moving platform
f
p
=m
p
g weight of the moving platform
f
p
¼ m
p
_
v
p
inertia force of the moving platform
f
p
¼ f
e
þf
p
þf
p
total force acting on the moving
platform
Fig.1.Sketch of the novel translational platform.
590 M.Callegari et al./Mechatronics 16 (2006) 589–605
unwanted eﬀects on manipulator’s behaviour by adapting
the control to the ongoing operations.Dynamics shaping
[17],in fact,aims at compensating a poor dynamic be
haviour of the system (which may be given by actuation
nonlinearities,inertial couplings,transmission compli
ance,actuation backlash,sensors’ bias,or the likes) by
using error signals measured or computed by means of a
model of robot’s dynamics.On the other hand,interaction
control cannot be based on pure motion control,since the
environment sets constraints on the geometric paths that
can be followed by the endeﬀector:therefore the hybrid
position/force approach considers strategies based on two
signals (either position or force),conveniently switched to
drive the armas the task is modiﬁed to constrained motion
manoeuvres.A simpler realisation lies in the impedance
control,which indirectly enables a compliant behaviour
of the endeﬀector from position data,on condition that
the environment can be conveniently modelled by means
of proper stiﬀness matrices.Since both robot’s dynamic
model (and therefore robot’s mechanical design) and con
troller’s structure are strictly linked one to the other and
aﬀect system’s performances,only a concurrent mecha
tronic approach to the problem can eﬀectively provide use
ful information for the overall assessment of the complex
parallel architectures.It must be added that both ﬁelds of
dynamic modelling and force control have quite a large
amount of results applied to serial mechanisms but only
a relatively small number of studies have been performed
so far on parallel kinematics machines,as pointed out in
the following paragraphs.
Therefore the article,after a short description of the
mechanism,presents a quite powerful approach for the der
ivation of robot’s inverse dynamic model,based on the
principle of virtual work.The structure of a hybrid posi
tion/force controller is then illustrated:it has been actually
implemented in Matlab and interfaced with Adams,that
performs the direct dynamics simulation of robot’s behav
iour while tracking the prescribed constrained tasks;some
numerical results are ﬁnally commented.
2.Description of the mechanism
The kinematic structure of the mechanism is shown in
Fig.2:a mobile platform is connected to the ﬁxed base
by three identical limbs,that are composed by two parts
coupled by a cylindrical pair;the lower link of each leg is
connected to the frame by a revolute joint while the upper
one is connected to the platformby a cylindrical pair.Such
kind of mechanisms are conventionally called 3RCC to
indicate the sequence of the joints in the three (identical)
limbs,starting from the ﬁxed frame and moving towards
the platform.It can be easily seen that the described archi
tecture is characterised by 3 dof’s in the space;in the gen
eral case spatial translations are coupled with changes of
orientation of the platform.Nevertheless,if the following
two geometric conditions simultaneously hold,the plat
form translates in space without rotating:
(i) the axes of the revolute and cylindrical joints of ith
limb are parallel to the same unit vector
^
t
i
,for
i =1,2 and 3;
(ii) the limbs are arranged so that
^
t
i
6¼
^
t
j
for i 5j (i,j =1,
2 and 3).
In the following sections,it will be made reference to the
remarkable case of a symmetric mechanism,with the axes
of the three revolute pairs forming an equilateral triangle
on the ﬁxed base;in the same manner,another equilateral
triangle is formed on the moving platform by the axes of
the cylindrical pairs;moreover,the legs are perpendicular
to the joints connecting the two bases.It is further observed
that,if the 3RCC mechanism is assembled for pure trans
lations,the two parts of each leg do not turn around the
cylindrical pair,which in this case could be substituted
by a prismatic joint,giving rise to the 3RPC overcon
strained mechanism:the kinematics of the two 3RPC
and 3RCC mechanisms is absolutely identical for this con
ﬁguration,and the actual choice between the two chains is
a matter of machine design considerations.It must also be
noted that in practical designs the other cylindrical pair
(connecting the limb with the moving platform) will be
probably realised by means of a revolute and a prismatic
joint,with coincident or parallel axes,to improve machine
stiﬀness.
For the following analytical developments,it is conve
nient to deﬁne the Cartesian frames shown in Fig.3:two
parallel reference systems Oð
^
x;
^
y;^zÞ and Pð
^
u;
^
v;
^
wÞ are
attached to the centres of the ﬁxed and moving platforms
respectively,with ^z;
^
w normal axes and
^
x passing through
the ﬁrst ground revolute joint;therefore p ¼ OP
!
speciﬁes
the position of the moving platform with reference to the
ﬁxed frame.a
i
¼ OA
i
!
is the distance from the centre O to
the sides of the ﬁxed triangle,similarly b
i
¼ PC
i
!
is the dis
tance from the centre P to the sides of the moving triangle;
B
i
is the attachment point of ith limb with the moving plat
form,therefore t
i
¼ t
i
^
t
i
¼ B
i
C
i
!
represents the sliding of the
upper cylindrical pair while d
i
¼ d
i
^
d
i
¼ A
i
B
i
!
is the vector
length of ith limb.It is noted that t
i
is orthogonal to the
vectors a
i
,b
i
,d
i
and to the ^z axis:therefore d
i
lies in the
Fig.2.The 3RCC parallel mechanism.
M.Callegari et al./Mechatronics 16 (2006) 589–605 591
plane generated by a
i
and the ^z axis.Finally,in correspon
dence of each ith limb,two coordinate systems are intro
duced (see Fig.3(b)):the frame A
i
ð
^
a
i
;
^
t
i
;
^
z
i
Þ A
i
ð
^
x
i
;
^
y
i
;^z
i
Þ
is attached to the ﬁxed base in such a way that
^
a
i
;
^
t
i
;
^
z
i
have
the same direction and orientation of vectors a
i
,t
i
and ^z
axis,respectively;the frame D
i
ð
^
k
i
;
^
t
i
;
^
d
i
Þ has the same origin
of previous one,with the
^
d
i
unit vector pointing along the
limb itself and the
^
k
i
unit vector arranged accordingly.
Therefore,since frame A
i
ð
^
a
i
;
^
t
i
;
^
z
i
Þ is rotated by an angle
u
i
around the ^z axis with respect to the Oð
^
x;
^
y;^zÞ ﬁxed frame
and D
i
ð
^
k
i
;
^
t
i
;
^
d
i
Þ is rotated by an angle h
i
around the
^
t
i
axis
with respect to the A
i
ð
^
a
i
;
^
t
i
;
^
z
i
Þ ﬁxed frame,the following
rotation matrices can be deﬁned:
O
R
A
i
¼ Rot
z
ð/
i
Þ ¼
c/
i
s/
i
0
s/
i
c/
i
0
0 0 1
2
6
4
3
7
5
;
A
i
R
D
i
¼ Rot
y
ðh
i
Þ ¼
ch
i
0 sh
i
0 1 0
sh
i
0 ch
i
2
6
4
3
7
5
ð1–2Þ
For the described symmetric conﬁguration some simpli
ﬁcations occur:a
1
=a
2
=a
3
=a,b
1
=b
2
=b
3
=b,/
1
=0,
/
2
=120,/
3
=240;it must be noted that the dimensions
of the sides of the two platforms,a and b,do not appear in
kinematic and dynamic relations,but only their diﬀerence
is relevant,e =a b,which can be considered a proper
scale factor of the 3RCC mechanism.
3.Inverse dynamics model
3.1.Dynamic modelling of multibody systems
It is recalled that the inverse dynamics analysis assumes
the knowledge of mechanism’s motion and ﬁnds the corre
sponding torques/forces that must be developed by actu
ated joints to produce such a motion;in direct dynamics
analysis,on the other hand,the active torques/forces are
given and the resulting motion of the mechanism must be
calculated as a function of time.In the case of complex mul
tibody systems,if d indicates the vector of displacements of
active joints and p the vector of system’s conﬁguration
coordinates in task space,the model of machines’ dynamics
is usually written in the joint space in the following
form:
s ¼ MðdÞ
€
d þCðd;
_
dÞ þDðd;
_
dÞ þGðdÞ JðdÞ
T
F
¼ MðdÞ
€
d þAðd;
_
dÞ JðdÞ
T
F ð3Þ
where all the terms appearing in (3) have been deﬁned in
the previous nomenclature section.It is apparent that,if
system’s motion is assigned in the task space,as is usually
the case,the inverse kinematics transform must be per
formed before inverse dynamics analysis can be executed.
The availability of a good inverse dynamics model is
very important for the study of mechatronic devices,since
it allows for a concurrent design of mechanical structure
and control system.This is even more evident in the case
of inparallel actuated mechanisms,that are characterised
by highly variable dynamic performances:in fact,they
depend upon the geometric conﬁguration of the machine
itself (e.g.position of joints,links’ length,etc.) but,once
the mechanical architecture has been ﬁxed,they still vary
very much according to the diﬀerent operating points in
the workspace,to the prescribed cycletimes of the task,
and so on.Through inverse dynamics simulation,there
fore,it is possible to choose the most suitable actuation
that grants the required performances to the machine and
also assess that the mechanical structure under design is
able to bear the dynamic loads developed during the most
severe working conditions.
In the present case,moreover,a dynamic model of the 3
RCC mechanismwas required for the synthesis of a hybrid
position/force controller for robot’s prototype.It will be
explained in the following paragraphs that such a control
scheme is based on the online evaluation of an inverse
dynamics model written in the task space,i.e.correlating
the forces and moments acting at tool’s tip with robot’s
Cartesian motion:
s
x
¼ M
x
ðpÞ
€
p þC
x
ðp;
_
pÞ þD
x
ðp;
_
pÞ þG
x
ðpÞ F
¼ M
x
ðpÞ
€
p þA
x
ðp;
_
pÞ F ð4Þ
where s
x
=J
T
s are the forces/moments acting at the end
eﬀector and corresponding to the actual eﬀorts at the actu
ated joints.
In case the dynamic model is not used for simulation but
is rather computed online by robot’s controller,the com
putational eﬃciency of the algorithm becomes a critical
issue.Fromthis point of view,a comparison of the schemes
(3) and (4) shows that the last one is more eﬃcient than (3)
since it does not require the online evaluation of the
inverse Jacobian matrix (but it must be noted that it needs
the computation of direct kinematics).As a matter of fact,
the key issue here is that PKMs’ dynamics is ‘‘naturally’’
expressed in the task space and its mapping into the joint
space needs additional computations,as shown in the
following Section 3.4.
Many approaches are available for the dynamic model
ling of multibody mechanical systems [18–20]:among
Fig.3.Reference frames and vector loop closure of a typical limb.
592 M.Callegari et al./Mechatronics 16 (2006) 589–605
them,the traditional Newton–Euler formulation and the
Lagrangian approach are still the most used in robot
mechanics but recently the use of screw theory has been
introduced too [21].Anyway,the dynamical analysis of
parallel mechanisms is complicated by the high number
of links and constraints,that often lead to a high number
of equations and therefore to a poor computational eﬃ
ciency [22];on the other hand,the inherent complexity of
PKMs is the main reason why only few dynamic models
of parallel robots are presently available in scientiﬁc litera
ture in symbolic form[23–25].In 1993 Zhang and Song [26]
proposed the use of the virtual work principle for the
inverse dynamic modelling of openloop manipulators,
then in 1998 Wang and Gosselin [27] ﬁrst applied the
method to parallel kinematics machines: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 purpose of robot control.
The virtual work principle states that a mechanical sys
tem is under equilibrium if and only if the virtual work
done by all the forces and moments acting on the mecha
nism vanishes for any virtual displacement of the system.
It is recalled that virtual displacements are inﬁnitesimal
changes in system’s conﬁguration that are compatible with
all the constraints imposed on the system at a given instant
in time.In the model of the 3RCC mechanism that is pre
sented in the article,it is assumed that frictional forces at
the joints are negligible,so the virtual work produced by
the constraint forces at the joint is zero and only active
forces (including the gravitational eﬀects) must be
accounted in the developments.
3.2.Equations of motion
The inverse dynamics model will be obtained directly in
the task space,without any need of further kinematic trans
forms;the approach used by Tsai in [24] will be followed,
based on the following steps:
• robot’s inverse kinematics is solved;
• limbs’ Jacobian matrices are worked out;
• the wrenches of applied and inertia forces are calculated;
• the dynamic model is formulated and solved.
In the derivation of the model,the notation introduced
in the nomenclature section is assumed (see Fig.4).It is
noted that all the forces and moments acting on the links
are reduced at the corresponding centres of mass and that
v
p
¼
_
p is the velocity of the centre of mass of the moving
platform.
Taking into account that the platform performs only
pure translations in space,the principle of virtual work
can be written for the present case:
dðdÞ
T
s þdðpÞ
T
f
p
þ
X
3
i¼1
X
2
j¼1
dðn
ji
Þ
T
F
ji
!
¼ 0 ð5Þ
where the sixdimensional vector n
ji
gathers the position
and orientation of the cylinder (j =1) or piston (j =2) of
the ith limb and F
ji
is the corresponding wrench:
F
ji
¼
:
f
ji
n
ji
"#
¼
m
ji
ðg
_
v
ji
Þ
I
ji
_
x
i
x
i
ðI
ji
x
i
Þ
ð6Þ
It is noted that (5) requires that all the inﬁnitesimal rota
tions in n
ji
are expressed as functions of the angular velo
city of the respective link,i.e.:
dn
ji
¼
v
jix
v
jiy
v
jiz
x
ix
x
iy
x
iz
½
T
dt
Since all the virtual displacements in (5) must be com
patible with the constraints,they are not independent but
can be rather expressed as functions of an independent
set of Lagrangian coordinates.If the displacements dp of
the endeﬀector are chosen for this purpose,the follow
ing relations must hold among the introduced virtual
displacements:
dðdÞ ¼ J
p
dðpÞ;dðn
ji
Þ ¼ J
ji
dðpÞ ð7abÞ
where J
p
is the 3 · 3 manipulator Jacobian matrix deﬁned
as usual for parallel mechanisms,while J
ji
is the 6 · 3 link
Jacobian matrix of the ith cylinder (j =1) or piston (j =2).
In this way from (5) it is obtained
dðpÞ
T
J
T
p
s þ
f
p
þ
X
3
i¼1
X
2
j¼1
J
T
ji
F
ji
! !
¼ 0 ð8Þ
Since (8) is valid for any virtual displacement d(p) of the
platform,it follows that
J
T
p
s þ
f
p
þ
X
3
i¼1
X
2
j¼1
J
T
ji
F
ji
!
¼ 0 ð9Þ
Eq.(9) completely describes manipulator’s dynamics;
then the inverse dynamics problem is solved by simply tak
ing out the vector of actuators’ forces s in nonsingular
conﬁgurations:
s ¼ J
T
p
f
p
þ
X
3
i¼1
X
2
j¼1
ðJ
T
ji
F
ji
Þ
! !
ð10Þ
All the elements in (10) will be worked out soon,but
basic kinematic relations must be stated ﬁrst.
Fig.4.Geometrical parameters of a typical limb.
M.Callegari et al./Mechatronics 16 (2006) 589–605 593
3.3.Kinematic relations
The reader is addressed to Ref.[15] for a complete kine
matic study of the 3RCC mechanism,including a discus
sion of the singular conﬁgurations:in this section only a
few steps of the analysis are outlined,to recall the kine
matic relations that are used in the development of the
dynamic model.In particular,the motion of the limbs will
be expressed as a function of platform’s motion,and the six
matrices J
ji
,j =1,2,i =1,2,3,introduced in (7b),will be
eventually obtained.
With reference to previous Fig.3(a),three closure equa
tions can be written,one for each limb connecting the
translating platform to the base:
p þb
i
¼ a
i
þd
i
þt
i
ð11Þ
By diﬀerentiating both sides of (11),the velocity of plat
form’s centre can be expressed independently as a function
of the three limbs’ motion by
_
p ¼ d
i
x
i
^
d
i
þ
_
d
i
^
d
i
þ
_
t
i
^
t
i
ð12Þ
Now the angular velocity of ith limb,x
i
,can be
extracted by projecting both sides of (12) along the direc
tion of the axis
^
k
i
and by using simple vector algebra
identities:
x
i
¼
_
p
^
k
i
d
i
^
t
i
ð13Þ
Taking a dot product of both sides of (12) with
^
d
i
,it is
obtained
_
d
i
¼
^
d
i
_
p ð14Þ
which,written three times,one for each i =1,2,3,leads to
the compact form:
_
d ¼ J
p
_
p ð15Þ
that deﬁnes the Jacobian matrix J
p
:
J
p
¼
^
d
T
1
^
d
T
2
^
d
T
3
2
6
4
3
7
5
The position vectors of the centres of mass of cylinder,
r
1i
,and piston,r
2i
,of ith limb,see Fig.4,are given by
the relations:
r
1i
¼ a
i
þc
1
^
d
i
r
2i
¼ a
i
þðd
i
c
2
Þ
^
d
i
that,once diﬀerentiated,provide the velocities of the two
centres of mass
v
1i
¼ c
1
x
i
^
d
i
ð16Þ
v
2i
¼ ðd
i
c
2
Þx
i
^
d
i
þ
_
d
i
^
d
i
ð17Þ
Turning to accelerations,they are worked out by direct
derivation of velocity relations,as is usually done;for
instance,by deriving (12) it is obtained
€
p ¼ d
i
_
x
i
^
d
i
þd
i
x
i
ðx
i
^
d
i
Þ þ2
_
d
i
x
i
^
d
i
þ
€
d
i
^
d
i
þ
€
t
i
^
t
i
ð18Þ
By dot multiplying both sides of (18) by
^
k
i
,the angular
acceleration of ith limb is taken out
_
x
i
¼
1
d
i
ð
€
p
^
k
i
2
_
d
i
x
i
Þ
^
t
i
ð19Þ
On the other hand,if both sides of (18) are projected
along the direction of
^
d
i
and simple vector algebra identi
ties are used once again,the linear acceleration of ith limb,
€
d
i
,is obtained:
€
d
i
¼
€
p
^
d
i
þd
i
x
2
i
that can be expressed as function of platform’s motion by
simply taking (13) into consideration:
€
d
i
¼
^
d
T
i
€
p þ
^
k
T
i
_
p
2
d
i
Finally,the accelerations of the centres of mass of cylin
der and piston of ith limb can be obtained by deriving once
again (16) and (17),respectively:
_
v
1i
¼ c
1
_
x
i
^
d
i
þc
1
x
i
ðx
i
^
d
i
Þ
_
v
2i
¼ ðd
i
c
2
Þð
_
x
i
^
d
i
Þ þðd
i
c
2
Þx
i
ðx
i
^
d
i
Þ
þ2
_
d
i
ðx
i
^
d
i
Þ þ
€
d
i
^
d
i
In order to ﬁnd computable expressions for the matrices
J
ji
,all the kinematic vectors worked out in previous para
graphs must be computed in a speciﬁc reference frame:
the local frame D
i
will be used to this aim,therefore an
expression for its unit vectors will be found ﬁrst.Taking
into account the elemental transformations deﬁned in (1)
and (2),the total rotation between local frames D
i
and
global frame O is easily obtained (see Fig.3(b)):
O
R
D
i
¼
O
R
A
i
A
i
R
D
i
¼
c/
i
ch
i
s/
i
c/
i
sh
i
s/
i
ch
i
c/
i
s/
i
sh
i
sh
i
0 ch
i
2
6
4
3
7
5
¼
^
k
i
^
t
i
^
d
i
ð20Þ
which,by deﬁnition,provides the expression of the unit
vectors of D
i
in the global frame O.It is noted that in
the following sections the notation v will both indicate
the vector v or its expression in the global frame O,while
a superscript will be used to indicate the projection of v
in any other reference frame.It is recalled that,for the
symmetric architecture under study,/
1
=0,/
2
=120,
/
3
=240,while the three articular coordinates h
i
are given
in function of the Cartesian coordinates of the endeﬀector
p ¼
p
x
p
y
p
z
T
by [15]
sh
i
¼
^
d
i
^
a
i
¼
p
x
cu
i
þp
y
su
i
e
ﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃ
ðp
x
cu
i
þp
y
su
i
eÞ
2
þp
2
z
q
ch
i
¼
^
d
i
^
z
i
¼
p
z
ﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃﬃ
ðp
x
cu
i
þp
y
su
i
eÞ
2
þp
2
z
q
594 M.Callegari et al./Mechatronics 16 (2006) 589–605
Now,taking into consideration (20),the angular veloc
ity of ith limb,x
i
,can be written in the D
i
frame:
D
i
x
i
¼
1
d
i
0
13
^
k
T
i
0
13
2
6
4
3
7
5
_
p ð21Þ
where the two vectors
_
p and
^
k
T
i
are assigned or computed in
the global frame O;in the same manner,by substituting
(21) and (14) into (16) and (17),the velocities v
ji
can be
written in the D
i
frame:
v
1i
¼
c
1
d
i
^
k
T
i
0
13
0
13
2
6
6
4
3
7
7
5
_
p
v
2i
¼
ðd
i
c
2
Þ
d
i
^
k
T
i
0
13
^
d
T
i
2
6
6
6
6
4
3
7
7
7
7
5
_
p
that can be easily computed by using the relations already
found in (20).The angular acceleration of ith limb,
_
x
i
,gi
ven by (19),can be expressed in the local D
i
frame by using
the relations (20),(21) and (14):
D
i
_
x
i
¼
1
d
2
i
0
d
i
^
k
T
i
€
p 2
^
d
T
i
_
p
^
k
T
i
_
p
0
2
6
6
4
3
7
7
5
ð22Þ
Finally,by taking into account the relations (21),(14)
and (22),the accelerations
_
v
ji
can be evaluated in the D
i
frame by
D
i
_
v
1i
¼
c
1
d
2
i
d
i
^
k
T
i
€
p 2
^
d
T
i
_
p
^
k
T
i
_
p
0
^
k
T
i
_
p
2
2
6
6
6
4
3
7
7
7
5
D
i
_
v
2i
¼
d
i
c
2
d
i
^
k
T
i
€
p þ2
c
2
d
2
i
^
d
T
i
_
p
^
k
T
i
_
p
0
^
d
T
i
€
p þ
c
2
d
2
i
^
k
T
i
_
p
2
2
6
6
6
6
6
4
3
7
7
7
7
7
5
Now it is easy to ﬁnd the
D
i
J
ji
Jacobian matrices that
relate limbs’ motion (expressed in the D
i
frame) to plat
form’s velocity
_
p (given in the global frame):
D
i
v
1i
D
i
x
i
¼
D
i
J
1i
_
p )
D
i
J
1i
¼
1
d
i
c
1
^
k
T
i
0
13
0
13
0
13
^
k
T
i
0
13
2
6
6
6
6
6
6
6
6
6
4
3
7
7
7
7
7
7
7
7
7
5
D
i
v
2i
D
i
x
i
¼
D
i
J
2i
_
p )
D
i
J
2i
¼
1
d
i
ðd
i
c
2
Þ
^
k
T
i
0
13
d
i
^
d
T
i
0
13
^
k
T
i
0
13
2
6
6
6
6
6
6
6
6
4
3
7
7
7
7
7
7
7
7
5
3.4.Computation of dynamic terms
All the terms appearing in the dynamic model (10) can
now be evaluated:
s ¼ J
T
p
f
p
þ
X
3
i¼1
D
i
J
T
1i
D
i
F
1i
þ
D
i
J
T
2i
D
i
F
2i
!
ð23Þ
The resultant of the forces applied to the moving plat
form are directly given in the global frame:
f
p
¼ ½f
e
þm
p
g m
p
_
v
p
ð24Þ
If it is assumed that no other external force is applied to
the system,the resultant of the forces applied at the centre
of mass of the cylinder (j =1) or piston (j =2) of the
ith limb,already given in (6),are computed in the D
i
frame
by
D
i
F
ji
¼
D
i
f
ji
D
i
n
ji
"#
¼
m
ji
O
R
T
D
i
g m
ji
D
i
_
v
ji
D
i
I
ji
D
i
_
x
i
D
i
x
i
D
i
I
ji
D
i
x
i
"#
ð25Þ
By substituting (24) and (25) in (23),and taking into
account the values already found for the links’ Jacobians
D
i
J
ji
,after cumbersome mathematical passages it is obtained:
s ¼ F
d
J
T
p
ð
f
p
þTF
k
Þ ð26Þ
where the newly introduced vectors F
d
,F
k
and the matrix T
are deﬁned by
F
d
¼
:
f
21;d
f
22;d
f
23;d
2
6
4
3
7
5
F
k
¼
:
c
1
f
11;k
þn
11;t
þðd
1
c
2
Þf
21;k
þn
21;t
d
1
c
1
f
12;k
þn
12;t
þðd
2
c
2
Þf
22;k
þn
22;t
d
2
c
1
f
13;k
þn
13;t
þðd
3
c
2
Þf
23;k
þn
23;t
d
3
2
6
6
6
6
6
6
6
4
3
7
7
7
7
7
7
7
5
T ¼
:
^
k
1
^
k
2
^
k
3
with
f
2i;d
¼ m
2i
O
R
D
i
;33
g m
2i
^
d
T
i
€
p þ
c
2
d
2
i
^
k
T
i
_
p
2
!
ð27Þ
f
1i;k
¼ m
1i
O
R
D
i
;31
g m
1i
c
1
d
2
i
d
i
^
k
T
i
€
p 2
^
d
T
i
_
p
^
k
T
i
_
p
ð28Þ
M.Callegari et al./Mechatronics 16 (2006) 589–605 595
f
2i;k
¼ m
2i
O
R
D
i
;31
g m
2i
d
i
c
2
d
i
^
k
T
i
€
p þ2
c
2
d
2
i
^
d
T
i
_
p
^
k
T
i
_
p
!
ð29Þ
n
1i;t
¼
D
i
I
1i;22
1
d
2
i
d
i
^
k
T
i
€
p 2
^
d
T
i
_
p
^
k
T
i
_
p
ð30Þ
n
2i;t
¼
D
i
I
2i;22
1
d
2
i
d
i
^
k
T
i
€
p 2
^
d
T
i
_
p
^
k
T
i
_
p
ð31Þ
The symbol
i
I
ji,22
in (30) and (31) represents the element
of the
i
I
ji
matrix placed in the second row and second col
umn;in the same manner,
O
R
D
i
;33
¼ cos h
i
and
O
R
D
i
;31
¼
sinh
i
,appearing in (27)–(29) respectively,are two ele
ments of the
O
R
D
i
matrix deﬁned in (20).It is noted that,
according to the notation used for the newly introduced
quantities,the subscripts k,t and d indicate the compo
nents of such quantities along the directions of the
^
k
i
;
^
t
i
;
^
d
i
axes,respectively.If both sides of (26) are multi
plied by J
T
p
it is obtained:
J
T
p
s ¼ J
T
p
F
d
f
p
TF
k
ð32Þ
To express the dynamic model of the robot in the task
space form (4),all the terms in (32) that multiply
€
p,
_
p
and g are gathered together,so that it is ﬁnally obtained
s
x
¼ J
T
p
s ¼ M
x
€
p þC
x
þG
x
f
e
ð33Þ
where the mass matrix M
x
and the vectors of dynamic and
gravitational terms C
x
and G
x
take the following form:
M
x
¼J
T
p
m
21
^
d
T
1
m
22
^
d
T
2
m
23
^
d
T
3
2
6
6
4
3
7
7
5
þm
p
I
33
þT
T
c
2
1
d
1
m
11
þ
ðd
1
c
2
Þ
2
d
1
m
21
þ
1
I
11;22
þ
1
I
21;22
( )
^
k
T
1
d
1
c
2
1
d
2
m
12
þ
ðd
2
c
2
Þ
2
d
2
m
22
þ
2
I
12;22
þ
2
I
22;22
( )
^
k
T
2
d
2
c
2
1
d
3
m
13
þ
ðd
3
c
2
Þ
2
d
3
m
23
þ
3
I
13;22
þ
3
I
23;22
( )
^
k
T
3
d
3
2
6
6
6
6
6
6
6
6
6
6
4
3
7
7
7
7
7
7
7
7
7
7
5
ð34Þ
C
x
¼C
ðcentrÞ
x
þC
ðCorÞ
x
G
x
¼J
T
p
O
R
D
1
;33
m
21
O
R
D
2
;33
m
22
O
R
D
3
;33
m
23
2
6
4
3
7
5
g
0
0
m
p
2
6
4
3
7
5
g
ðc
2
d
1
Þm
21
c
1
m
11
d
1
O
R
D
1
;31
ðc
2
d
2
Þm
22
c
1
m
12
d
2
O
R
D
2
;31
ðc
2
d
3
Þm
23
c
1
m
13
d
3
O
R
D
3
;31
2
6
6
6
6
6
6
6
4
3
7
7
7
7
7
7
7
5
g ð35Þ
with
C
ðcentrÞ
x
¼J
T
p
c
2
d
2
1
m
21
^
k
T
1
_
p
2
c
2
d
2
2
m
22
^
k
T
2
_
p
2
c
2
d
2
3
m
23
^
k
T
3
_
p
2
2
6
6
6
6
6
6
6
4
3
7
7
7
7
7
7
7
5
ð36Þ
C
ðCorÞ
x
¼
2fðc
2
d
1
Þc
2
m
21
þc
2
1
m
11
þ
1
I
11;22
þ
1
I
21;22
g
^
d
T
1
_
p
^
k
T
1
_
p
d
3
1
2 ðc
2
d
2
Þc
2
m
22
þc
2
1
m
12
þ
2
I
12;22
þ
2
I
22;22
^
d
T
2
_
p
^
k
T
2
_
p
d
3
2
2 ðc
2
d
3
Þc
2
m
23
þc
2
1
m
13
þ
3
I
13;22
þ
3
I
23;22
^
d
T
3
_
p
^
k
T
3
_
p
d
3
3
2
6
6
6
6
6
6
6
6
6
6
6
6
4
3
7
7
7
7
7
7
7
7
7
7
7
7
5
ð37Þ
The term I
3·3
,introduced in (34),represents the 3 · 3
identity matrix;moreover,as already done before,the
notation
i
I
ji,hk
indicates the element of the
i
I
ji
matrix that
is placed in the hth row and kth column.
Eq.(33) represents manipulator’s dynamic model in the
task space:J
T
p
s is the endeﬀector force that balances joint
forces s;the 3 · 3 mass matrix M
x
,in the form given by
(34),depends explicitly on limbs’ displacement d and
implicitly on platform’s position p (by means of the unit
vectors
^
k
i
;
^
t
i
;
^
d
i
).The 3 · 1 vector C
x
,on the other hand,
collects all dynamic contributions,that are separately
deﬁned as coming from centrifugal force,in (36) and Cori
olis force,in (37);ﬁnally,the eﬀect of gravitational force is
accounted in (35).Therefore,in the present case,the
inverse dynamics problem assumes the knowledge of the
spatial (translational) motion of the mechanism,p(t),while
the corresponding thrust s(t) of the linear actuators driving
the three limbs has to be computed.
If the dynamic model of the robot is needed in the joint
space,(33) can be easily transformed in the appropriate
form,at the expense of heavy additional computations;in
fact,by deriving (15),the acceleration of the endeﬀector
can be expressed in function of internal coordinates d:
€
p ¼ J
1
p
€
d J
1
p
_
J
p
J
1
p
_
d ð38Þ
and by substituting (38) into (33) it is obtained
s ¼ J
T
p
M
x
J
1
p
€
d J
T
p
M
x
J
1
p
_
J
p
J
1
p
_
d þJ
T
p
C
x
ðp;
_
pÞ
þJ
T
p
G
x
ðpÞ J
T
p
f
e
that can be written in the ﬁnal form
s ¼ M
€
d þCþGJ
T
p
f
e
with the positions
M ¼ J
T
p
M
x
J
1
p
C ¼ J
T
p
M
x
J
1
p
_
J
p
J
1
p
_
d þJ
T
p
C
x
G ¼ J
T
p
G
x
These passages prove also the already mentioned con
venience of evaluating manipulator’s dynamics in the task
space,with respect to jointspace schemes.
596 M.Callegari et al./Mechatronics 16 (2006) 589–605
3.5.Computing eﬃciency and model reﬁnements
If the inverse dynamics model of a robot is used by the
algorithms of the controller,its eﬃciency is very important
and must be carefully assessed;this is usually done by eval
uating the number of mathematical operations involved in
the model,as suggested ﬁrst by Lin and Song for parallel
manipulators [22].
Table 1 presents the computational burden of the
obtained algorithms for the inverse dynamics evaluation
of the 3RCCrobot:it is assumed that the endeﬀector’s tra
jectory is assigned and that the model is evaluated in the task
space.The resulting computing costs are quite satisfactory,
since they are comparable with the corresponding eﬀorts of
3dof serial mechanisms:this result is not unexpected,due to
the eﬃciency of the principle of virtual work and to the
simple kinematic structure of the parallel mechanism.
It is observed that both mass matrices M
x
and M are
symmetric and positive deﬁnite;furthermore,two proper
square matrices B
x
and B can always be found such that
the vectors C
x
and C are decomposed in the following way:
C
x
ðp;
_
pÞ ¼ B
x
ðp;
_
pÞ
_
p;Cðd;
_
dÞ ¼ Bðd;
_
dÞ
_
d
with B
x
and B linear in
_
p and
_
d,respectively.It can be dem
onstrated that N
x
¼
_
M
x
2B
x
and N ¼
_
M 2B are skew
symmetric matrices [28],which is an important property
to grant the stability of many classic control schemes;
moreover,from the principle of conservation of energy
by Hamilton it follows that
_
p
T
N
x
ðp;
_
pÞ
_
p ¼ 0;
_
d
T
Nðd;
_
dÞ
_
d ¼ 0
A method sometimes used to simplify the dynamic
model,and therefore to enhance the computational eﬃ
ciency,is to neglect the six terms of the mass matrix that
lie outside the main diagonal,that is usually justiﬁed by
their relative magnitude.In this case the simulations that
have been performed showed that the closer the endeﬀec
tor is to singular conﬁgurations,the greater is the relative
inﬂuence of oﬀdiagonal elements;if the isotropic point is
approached,the oﬀdiagonal elements tend to vanish.
Fig.5,for instance,plots the values of mass matrix’ ele
ments for all workspace points of two diﬀerent horizontal
planes (robot’s parameters have been taken by the virtual
prototype shown in Fig.1):Fig.5(a) shows the elements
when the plane at height z =0.1 m is swept,with z =0
being a singular plane;Fig.5(b),instead,shows the plane
at height z =0.4 m,with x =y =0,z =0.35 m being the
isotropic point.Such variability of dynamic coeﬃcients
along the path seems also to prevent another possible sim
pliﬁcation of PKMs’ dynamics,proposed in [29],which is
based upon considering constant all the elements in (34):
this is also due to the relatively large workspace of the stud
ied machine.
A sensitivity study has also been performed to sepa
rately analyse the contribution of platform and limbs to
robot’s dynamics and eventually leave out negligible terms
once again,like proposed,for instance,by Fichter [30]:
unfortunately,it came up that for usual designs the three
limbs and the platform inﬂuence the overall behaviour of
the robotic mechanism almost equally,as already observed
by other researchers for the Stewart–Gough platform [23];
this result clearly highlights the necessity to consider legs
inertia in the dynamic formulation,therefore preventing
further simpliﬁcations.
Moreover,the robot is actuated by means of revolving
motors and lead screws that control the limbs’ adjustable
lengths:in this case,much energy is accumulated in the
masses spinning around limbs’ axes (screws,motors’
rotors,etc.) and therefore the model has to be modiﬁed
accordingly.The resulting system becomes a little more
complicated,since one more link for each limb has to be
considered,like shown in Fig.6,but the same scheme out
lined in previous paragraphs can still be used to work out
the dynamic equations.The simulations show that such
contribution cannot generally be neglected,since it may
amount up to some 30% of total kinetic energy,due to
the high speed reduction of the screw/nut pairs.The con
siderations and results presented in the following sections
make reference to the reﬁned model just introduced.
4.Control
A robotic operation characterised by interaction with
the environment can be subdivided into a sequence of ele
mental tasks grouped into the following three phases:
1.Free motion,with the endeﬀector tracking the desired
trajectory in the space.
2.Transition phase,when the contact with the environment
is ﬁrst established.
3.Constrained motion,when the robot must perform the
assigned task with simultaneous position and force
control.
The parallel structure of the 3RCC machine suggests to
plan robot’s path in the joint space,since Cartesian space
schemes would require the online evaluation of the com
plex forward kinematics;on the other hand,if model based
controllers are used,the complexity of jointspace inverse
dynamics would make the related algorithms computation
ally expensive and,hence,less attractive than the corre
sponding taskspace schemes.
Table 1
Computational eﬀort for the evaluation of the inverse dynamics model
+/
*
/ Trigonometric
operations
Jacobian J
p
6 21 12
Inverse of transposed Jacobian J
T
p
15 27 0
Mass matrix M
x
60 126 48
Dynamic and gravitational
vectors C
x
and G
x
60 142 9
Final computations 18 27 0
Total number of operations 153 343 69
M.Callegari et al./Mechatronics 16 (2006) 589–605 597
Fig.5.Values of mass matrix’ elements for points lying in diﬀerent planes:height z =0.25 m(a) and z =0.1 m(b) (note the diﬀerent scale of the two sets
of plots).
Fig.6.Model of limbs’ actuation.(1) cylinder (and motor’s stator),(2) screw nut (and piston),(3) screw and motor’s rotor.
598 M.Callegari et al./Mechatronics 16 (2006) 589–605
Modelling of the transition phase is very important to
enable eﬀective computer designs of position/force control
lers [31] but the complexity of the problem deserves further
research on the topic.On the other hand,important results
can be found in literature on the subjects of unconstrained
motion control and position/force control,with relevant
industrial results.Nevertheless,only very few studies are
actually available on the control of parallel mechanisms,
therefore the mechatronic approach,trying to take all the
advantages that can result from an integrated design of
the system [32],should be stressed even more in this case.
To this aim,a virtual prototyping environment has been
developed to study by computer simulation the perfor
mances of the 3RCC robot under design,see Fig.7.
Machine’s direct dynamics has been modelled by using the
multibody code Adams while the modelbased controller,
evaluating inverse dynamics,has been written by Matlab/
Simulink,duly interfaced to previous package by the
Adams/Controls module.The mechanical design of the
machine has been developed by means of the CADprogram
SolidEdge andassessedbythe FEMpackage Ansys,thenthe
3Dgeometry has been exported to the Adams environment.
The simulations have shown that the required actuation
forces are very sensitive to manipulator’s geometry;there
fore,instead of relying on the controller for the search of
optimal pathplanning schemes,as done by some research
ers,the problem has been dealt beforehand,through a
proper optimisation of machine kinematics (the condition
number of J
T
J has been kept below the value of 5 through
out the workspace).On the other hand,it has been
assumed that the computational power of the controller
is used for the execution of compensating modelbased
algorithms,granting quite uniform performances to the
manipulator.
Fig.8(a) shows a view of the platform in the Adams
environment,that was also used as a further veriﬁcation
of the correctness of the inverse dynamics model previously
worked out symbolically.Fig.8(b) shows the ﬁnal version
of the machine,that has been optimised for stiﬀness and
workspace volume (about 165 l,equivalent to a cube of
55 cm sides);the moving parts weight around 66 kg,
accounting for 7 kg each limb plus 8 kg for the lumped
mass of each motor and 21 kg for the platform.The simu
lations that are described in the following paragraphs make
reference to such machine,neglecting the eﬀects of friction
and backlash in the joints.
4.1.Position control
A few common taskspace control schemes have been
implemented to test by computer simulation the closed
loop performances of the 3RCC robot (e.g.PID,com
puted torque,feedforward compensation),see also
Fig.9.The results showed that the computed torque
(CT) method seems the most suitable algorithm for the
Fig.7.Conceptual scheme of the virtual prototyping environment.
Fig.8.Multibody model of the 3RCC robot.
M.Callegari et al./Mechatronics 16 (2006) 589–605 599
mechanismat hand;a key argument in the choice is the fact
that this control scheme,here studied for the free naviga
tion phase,can be easily incorporated in the force control
introduced in next paragraph,to yield a hybrid position/
force controller for the constrained motion phase.
The structure of the computed torque controller,also
shown in Fig.9(b),is the following:
s
x
¼ M
x
ðpÞ u þA
x
ðp;
_
pÞ ð39Þ
u ¼
€
p
d
þK
p
ðp
d
pÞ þK
d
ð
_
p
d
_
pÞ ð40Þ
with p
d
desired robot’s taskspace position and K
p
,K
d
suitable gain matrices.The computation of actual driving
forces s =J
T
s
x
is then straightforward.Control actions
(39) and (40),taking into consideration system’s dynamics
(4),lead to the following secondorder error dynamics:
€
e
x
þK
d
_
e
x
þK
p
e
x
¼ 0
having deﬁned the taskspace error:e
x
=p
d
p.Of course
if the two gain matrices K
p
and K
d
are chosen diagonal,the
system is completely uncoupled and it is decomposed into
the following three independent equations:
€
e
xi
þk
di
_
e
xi
þk
pi
e
xi
¼ 0
with i =x,y,z.
Fig.9.Taskspace position control schemes:PID (a) and computed torque (b).
Fig.10.Time evolution of positional error in Cartesian space (a) and required torques (b) for PID and CT controllers.
600 M.Callegari et al./Mechatronics 16 (2006) 589–605
Fig.10(a) compares the behaviour of the two schemes
shown in Fig.9 when the platformis subject to a rapid ver
tical movement starting from point P
1
=(0,0,0.52) m and
stopping at point P
2
=(0,0,0.15) m;the cycle is completed
in 0.5 s by using a trapezoidal proﬁle of velocity that is
characterised by an acceleration of 1g and a maximum
velocity of 1 m/s in the task space.The gains of the control
lers have been tuned so that the maximum limit torques
deliverable by the motors (4.0 Nm nominal and 24.0 Nm
peak) are never overpassed.Fig.10(b) shows the torques
that are needed to track the speciﬁed trajectory (due to
the symmetrical conﬁguration of the machine,all the axes
are subject to the same torque).The comparative simula
tions between the conventional PID and the CT controller
show that only in extreme working conditions (i.e.high
velocities/accelerations or points close to workspace
boundary) the latter is clearly better performing than the
former in terms of position or velocity errors:nevertheless,
the CT controller is always characterised by shorter settling
times than the PIDscheme,especially for movements along
the vertical direction.
In authors’ opinion the computational burden needed
for the evaluation of the computed torque algorithmis well
compensated by the good and uniformbehaviour shown by
the robotic structure in all its workspace,when it is well
known that parallel robots usually have dynamic proper
ties that strongly depend upon operating conditions (path
velocities and accelerations,point of the workspace or
endeﬀector orientation,etc.).Moreover,the limited mobil
ity of the robot (i.e.3 dof’s of pure translation) and the
approach used to obtain the inverse dynamics equations,
led to a rather compact model that should present no prob
lems for a realtime implementation.Finally,a sensitivity
analysis has been performed to study the robustness of
the controller to changes in system’s parameters:for rea
sonable variations of such parameters (about 5–10% with
respect to nominal values) the overall behaviour remains
good,so the analysis supports the choice.It must also be
taken into consideration that the simple structure of the
mechanismshould not yield problems for the identiﬁcation
of the geometrical and inertial parameters.
4.2.Constrained motion and force control
Only few studies are available on the subject of force
control of parallel robots:this is probably due to the fact
that PKMs are relatively new architectures with quite com
plex kinematic and dynamic models.
A possible breakdown of the control schemes that have
been proposed in literature for robots interacting with the
environment is sketched in Fig.11,where both passive
and active compliance schemes are shown [33].In the last
case,robot compliance is actively adapted to the task by
the control system which either directly controls position
and force,each one in the proper direction (hybrid posi
tion/force control) or varies the mechanical impedance of
the endeﬀector according to the task (impedance control).
The hybrid controls can be explicit or implicit.Explicit
control schemes need both force and position sensors for
feedback linearization,but every direction in the task
frame is controlled either in force or in position by means
of a selection matrix.The engagement with high stiﬀness
environments may be critical for this control,which cannot
cope with high frequency modes;furthermore,it is scarcely
robust to variation of parameters during operation.Impli
cit methods identify the compliance of the contact through
the force sensors and then compute the position and veloc
ity control signals that correspond to the desired control
force.Even if some diﬃculties may arise in the identiﬁca
tion of contact forces,this class of control schemes are
characterised by a good robustness and easiness of imple
mentation and therefore have been selected for the 3
RCC robot.
It must be also pointed out that in situations character
ised by great uncertainties the redundancy of information
provided by position and force sensors is not used properly
by explicit hybrid controllers,that cancel some ‘‘channels’’
by means of the selection matrix.Since this thing does not
happen in implicit schemes,that operate inparallel the two
position and force controllers,they are more useful for
changing operating conditions.
Fig.12 shows the scheme of the control system that has
been implemented for the simulation of the 3RCC robot.
Force control is granted by a PI loop while position control
is realised through a PDmodule:it is noted that,as already
commented before,the position reference signal is modiﬁed
by the force control variable.In the inner modelbased
module,robot’s dynamics is compensated and the external
forces are taken into account as well.When the robot oper
ates in unconstrained mode,the control systemdegrades to
the computed torque algorithm presented in previous
paragraphs.
The closedloop behaviour of the system shown in
Fig.12 can be found by composing robot’s dynamics (4)
with the computed actuation torques:
Fig.11.Synoptic of possible control schemes for robots interacting with
the environment.
M.Callegari et al./Mechatronics 16 (2006) 589–605 601
s
x
¼ M
x
ðpÞ u þA
x
ðp;
_
pÞ F
and the implicit servo law
u ¼
€
p
d
þK
Pd
_
e
P
þK
Pp
e
p
þK
Fp
e
F
þK
Fi
Z
e
F
where e
p
=p
d
p is the position error,e
F
=F
d
F is the
force error,K
Pp
and K
Pd
are gain matrices for position con
trol,K
Fp
and K
Fi
are gain matrices for force control.Then,
the resulting errors dynamics is governed by
€
e
P
þK
Pd
_
e
P
þK
Pp
e
P
þK
Fp
e
F
þK
Fi
Z
e
F
¼ 0 ð41Þ
Robot’s tasks are usually deﬁned in a tool frame
T(t
1
,t
2
,n),located at the endeﬀector,with n axis perpen
dicular to the contact surface:in this frame it is usually
required the tracking of a certain trajectory along the
two directions t
1
and t
2
while a force is assigned in the
direction of the normal axis n.In such a task frame,(41)
can be decomposed in the following manner:
€
e
P;t1
þk
Pd
_
e
P;t1
þk
Pp
e
P;t1
¼ 0 ð42Þ
€
e
P;t2
þk
Pd
_
e
P;t2
þk
Pp
e
P;t2
¼ 0 ð43Þ
€
e
P;n
þk
Pd
_
e
P;n
þk
Pp
e
P;n
þk
Fp
e
F;n
þk
Fi
Z
e
F;n
¼ 0 ð44Þ
having deﬁned the diagonal gain matrices:K
Pp
=k
Pp
Æ I
3·3
,
K
Pd
=k
Pd
Æ I
3·3
,K
Fp
=k
Fp
Æ I
3·3
,K
Fi
=k
Fi
Æ I
3·3
.
Eqs.(42) and (43) describe the dynamic behaviour of
position error in the tangential directions t
1
and t
2
,where
the motion is unconstrained:stability is granted for any
choice of the gains k
Pd
and k
Pp
.Eq.(44),on the other hand,
describes the time evolution of both position and force
error in the constrained direction n.It has been shown
[33] that,along such direction,the system is stable if the
gains k
Pp
,k
Pd
,k
Fp
and k
Fi
satisfy the following condition:
k
Fi
< k
Pd
k
Pp
k
þk
Fp
where k is an estimate of contact surface stiﬀness.The
following values have been chosen for such parameters in
the present simulations:k
Pp
=10000 s
2
,k
Pd
=700 s
1
,
k
Fp
=0.1 kg
1
and k
Fi
=90 kg
1
s
1
;the contact has been
assumed to happen between parts with mutual stiﬀness
k =10 MN/m.It should be noted the high value of envi
ronment stiﬀness,typical of steel,whose handling has been
allowed by the robustness of the (Matlab implemented)
control algorithms and the (Adams based) multibody sol
ver.The contact with the environment in the normal direc
tion has been modelled through a nonlinear hardening
spring,without dampers or any other form of dissipation;
in the tangential directions a dry friction has been assumed,
with the model shown in Fig.13 (l
d
=0.16,l
s
=0.23,
v
s
=0.1 mm/s,v
d
=1 mm/s).
Several simulations have been performed to assess the
behaviour of the robot with the proposed controller:such
Fig.12.Scheme of the hybrid position/force controller.
Fig.13.Plot of the dry friction model used for the simulations.
Fig.14.Three test trajectories for constrained motion.
602 M.Callegari et al./Mechatronics 16 (2006) 589–605
tests,for instance,have veriﬁed the impact of uncertainties
or errors in the identiﬁcation of the dynamics of the robot
or the robustness of the controller to disturbances arising
from force sensors.Moreover,the possibility to use some
passive compliance to adjust for orientation errors of the
endeﬀector has been explored and the eﬀect of the added
compliance to dynamic performances has been evaluated
too.Diﬀerent kinds of approaching trajectories have been
tested,with the constrained motion to follow a chamfered
plain surface,as shown in Fig.14:the task frame has the
normal axis n perpendicular to the local surface while the
t
1
and t
2
axes lie on it,with t
1
directed in the tangential
direction,along motion progression.A constant force of
10 N has been required in the n direction,while the other
directions are positioncontrolled with diﬀerent velocity
and acceleration requirements,according to the kind of
trajectory.
Fig.15 shows the position error and the time evolution
of contact forces for a trajectory of type 3:initially it is
noted a signiﬁcant position error in the constrained motion
direction,then during the 45 chamfer crossing it dimin
ishes while the tangential motion error builds up.The nor
mal contact force stabilises soon to the required value,after
a peak in correspondence of the impact,then a few oscilla
tions are initiated by the change of surface steepness;the
small force along the t
1
direction is due to the contact fric
tion.The same eﬀects can also be noted in the plot of actu
ation torques,Fig.16,that in the considered symmetrical
conﬁguration are very similar in values and trends for all
the three motors.It has been also observed that the pro
posed control scheme,when both position and force are
deviating from the required behaviour,gives a priority to
the force signal,so the control actions tend to reduce the
force error:such a feature can be useful in case of the
occurrence of unexpected contacts which had not been
considered at the time of ‘‘motion planning’’.
Several simulations have been performed also to try to
mate a cylindrical peg in a chamfered hole,which is a classic
benchmark test for assembly operations:the results have
been presented already [34],therefore only the conclusions
are hereby summarised.The simulations showed that the
proposed control algorithm is able to perform the pegin
hole assembly,always granting the contact between the
twomating parts,evenif during chamfer crossing the desired
force is not maintained;of course,if the endeﬀector orien
tation is not controlled,signiﬁcant misalignments between
peg’s and hole’s axes may lead to the practical impossibility
to complete the manoeuvre.Finally,it has been highlighted
that the total cycle times to complete the assembly are rather
high,i.e.the velocities must be pretty slow,especially if com
pared with passive compliance devices;such performance is
common to all active compliance control schemes and has
been noted already by many researchers.
5.Conclusions
The present article aimed at assessing the dynamic per
formances of the 3RCC translation platformwhen operat
ing in contact with the environment.The inverse dynamics
model of the machine has been worked out in the task
space by means of the principle of virtual work,leading
to very compact and computationally eﬃcient equations:
Fig.16.Actuation torques at the joints.
Fig.15.Position error (a) and contact forces (b) in task frame.
M.Callegari et al./Mechatronics 16 (2006) 589–605 603
the model has been useful later on,during the design of the
physical prototype,e.g.for the selection of the actuation
system.Direct dynamics simulations,on the other hand,
have been performed by means of the Adams multibody
package and showed that robot’s performances vary very
much according to the geometric conﬁguration of the
machine,to the diﬀerent operating points in the workspace,
to the prescribed cycletimes of the task,and so on.Such a
behaviour could have well been expected for an inparallel
actuated mechanismand pressed for the design of a control
system able to ‘‘shape’’ robot’s dynamics during the diﬀer
ent operating conditions (i.e.free navigation or constrained
motion).Therefore an implicit type of hybrid position/
force controller has been developed for the 3RCC robot:
since the kinematics and dynamics of PKMs are ‘‘natu
rally’’ expressed in the Cartesian space,the computational
burden usually characterising hybrid schemes for serial
robots (due to the necessity to rewrite the dynamics in task
space) was not experienced in this case.
Many simulations have been performed to assess the
behaviour of the robot with the proposed controller when
performing tasks characterised by interaction with the envi
ronment,e.g.peginhole assembly;it has been observed
that,when both position andforce deviate fromthe assigned
trajectories,the proposed control scheme gives a priority to
the force channel,whose error is promptly reduced,feature
that can be very useful in case of unexpected impacts.
In conclusion,the kinematic study previously performed
showed many interesting features of the 3RCC architec
ture:simple topology with only relatively few joints,simple
direct kinematics equations with only one solution (by
design),convex workspace without singular conﬁgurations
(by design),high stiﬀness (by optimisation),etc.On the
other hand,two weak points are inherent to the concept
itself:the travelling platform is rather bulky,due to the
long strokes of the sideways and the dynamic performances
are rather poor,at least in the outer regions of the work
space,due to the high inertia of the lumped actuators.Nev
ertheless,the dynamic analysis commented in the article
showed that,if the robot is properly controlled,the result
ing dynamic performances conﬁrm the good potential of
the architecture outcoming from the kinematic study:its
ﬁeld of application could range from the heavy assembly
(where high thrusts must be applied) to the handling of
bulky payloads.In the end,a physical prototype of the
machine has been built,based on the same concept but
with a diﬀerent arrangement of the joints that allowed to
aim the design at high dynamics applications [35,36].
References
[1] Dai JS,Huang Z,Lipkin H.Mobility of overconstrained parallel
mechanisms.ASME J Mech Des 2006;128(1):220–9.
[2] Clavel R.Delta,a fast robot with parallel geometry.In:Proceedings
of the 18th international symposium on industrial robots,Lausanne,
France,1988.p.91–100.
[3] Neumann KE,Robot.US Patent 4732525,1986.
[4] Bonev I.The true origins of parallel robots,2003.Available from:
http://www.parallemic.org/Reviews.
[5] Gough VE,Whitehall SG.Universal tyre test machine.In:Proceed
ings of the FISITA9th international technical congress,1962.p.117–
37.
[6] Merlet JP.Still a long way to go on the road for parallel mechanisms.
In:Proceedings of the 27th ASME biennial mechanisms and robotics
conference,Montre
´
al,2002.Available from:http://wwwsop.inria.fr/
coprin/equipe/merlet/.
[7] Merlet JP.Parallel robots.2nd ed.Dordrecht:Kluwer;2005.
[8] Tsai LW,Joshi SA.Kinematics and optimization of a spatial 3UPU
parallel manipulator.ASME J Mech Des 2000;122:439–46.
[9] Joshi SA,Tsai LW.Jacobian analysis of limitedDOF parallel
manipulators.ASME J Mech Des 2002;124(2):254–8.
[10] Di Gregorio R.Kinematics of the translational 3URC mechanism.
In:Proceedings of the IEEE/ASME international conference on
advanced intelligent mechatronics,Como,Italy,2001.p.147–52.
[11] Zhao TS,Huang Z.A novel threeDOF translational platform
mechanism and its kinematics.In:Proceedings of the ASME design
engineering technical conferences and computers and information in
engineering,Baltimore,USA,2000,DECT2000/MECH14101.
[12] Kim HS,Tsai LW.Design optimisation of a Cartesian parallel
manipulator.In:Proceedings of the ASME design engineering
technical conferences and computers and information in engineering,
Montreal,Canada,2002,DECT2002/MECH34301.
[13] Kong X,Gosselin CM.Kinematics and singularity analysis of a novel
type of 3CRR 3DOF translational parallel manipulator.Int J Rob
Res 2002;21(9):791–8.
[14] Carricato M,ParentiCastelli V.A family of 3DOF translational
parallel manipulators.ASME J Mech Des 2003;125(2):302–7.
[15] Callegari M,Tarantini M.Kinematic analysis of a novel translational
platform.ASME J Mech Des 2003;125(2):308–15.
[16] Callegari M,Marzetti P.Kinematics of a family of parallel translating
mechanisms.In:Proceedings of the RAAD’03,12th international
workshop on robotics in AlpeAdriaDanube region,Cassino,
2003.
[17] Yoshikawa T.Dynamics shaping in robot force control and artiﬁcial
reality.In:Proceedings of the international conference on advanced
robotics,Tokyo,1993.p.3–8.
[18] Moon FC.Applied dynamics:with applications to multibody and
mechatronic systems.Hoboken,NJ:Wiley;1998.
[19] Papastavridis JG.Analytical mechanics:a comprehensive treatise on
the dynamics of constrained systems.Oxford:Oxford University
Press;2002.
[20] Ko
¨
vecses J,Piedbœuf JC,Lange C.Dynamics modeling and
simulation of constrained robotic systems.IEEE/ASME Trans Mech
2003;8(2):165–77.
[21] Gallardo J,Rico JM,Frisoli A,Checcacci D,Bergamasco M.
Dynamics of parallel manipulators by means of screw theory.Mech
Mach Theory 2003;38(11):1113–31.
[22] Lin YJ,Song SM.A comparative study of inverse dynamics of
manipulators with closed kinematic chain mechanisms.J Rob Syst
1990;7:507–34.
[23] Dasgupta B,Mruthyunjaya TS.A Newton–Euler formulation for the
inverse dynamics of the Stewart platform manipulator.Mech Mach
Theory 1998;33(8):1135–52.
[24] Tsai LW.Solving the inverse dynamics of a Stewart–Gough mani
pulator by the principle of virtual work.ASME J Mech Des
2000;122(1):3–9.
[25] Caccavale F,Siciliano B,Villani L.The Tricept robot:dynamics and
impedance control.IEEE/ASME Trans Mech 2003;8(2):263–8.
[26] Zhang CD,Song SM.An eﬃcient method for inverse dynamics of
manipulators based on the virtual work principle.J Rob Syst
1993;10(5):605–27.
[27] Wang J,Gosselin CM.A new approach for the dynamic analysis of
parallel manipulators.Multibody Syst Dyn 1998;2:317–34.
[28] Spong MW,Vidyasagar M.Robot dynamics and control.Hoboken,
NJ:Wiley;1989 [Chapter 6].
604 M.Callegari et al./Mechatronics 16 (2006) 589–605
[29] Lee SH,Song JB,Choi WC,Hong D.Position control of a Stewart
platformusing inverse dynamics control with approximate dynamics.
Mechatronics 2003;13(6):605–19.
[30] Fichter EF.A Stewart platformbased manipulator:general
theory and practical construction.Int J Rob Res 1986;5(2):157–
182.
[31] Aghili F,Piedbœuf JC.Contact dynamics emulation for hardwarein
loop simulation of robots interacting with environment.In:Proceed
ings of the IEEE international conference on robotics and automa
tion,Washington,2002.p.523–9.
[32] Pagilla PR,Yu B.Mechatronic design and control of a robot system
interacting with an external environment.IEEE/ASME Trans Mech
2002;12:791–811.
[33] Siciliano B,Villani L.Robot force control.Dordrecht:Kluwer;2000.
[34] Callegari M,Suardi A.On the forcecontrolled assembly operations
of a new parallel kinematics manipulator.In:Proceedings of the
Mediterranean conference on control and automation,Rhodes,2003,
IV0602.
[35] Callegari M,Palpacelli MC,Scarponi M.Kinematics of the 3CPU
parallel manipulator assembled for motions of pure translation.In:
Proceedings of the international conference on robotics and auto
mation,Barcelona,2005.p.4031–6.
[36] Callegari M,Palpacelli MC.Kinematics and optimization of the
translating 3CCR/3RCC parallel mechanisms.In:Lenarcic J,Roth
B,editors.Advances in robot kinematics:mechanisms and
motion.Dordrecht:Springer;2006.p.423–32.
M.Callegari et al./Mechatronics 16 (2006) 589–605 605
Enter the password to open this PDF file:
File name:

File size:

Title:

Author:

Subject:

Keywords:

Creation Date:

Modification Date:

Creator:

PDF Producer:

PDF Version:

Page Count:

Preparing document for printing…
0%
Σχόλια 0
Συνδεθείτε για να κοινοποιήσετε σχόλιο