Dynamics modelling and control of the 3-RCC translational platform

Massimo Callegari

*

,Matteo-Claudio 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 peg-in-hole 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 in-parallel 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

0957-4158/$ - 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.

E-mail 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 minor-mobility 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 3-UPU by Tsai and Joshi [8]

(with the variants:3-PUU and 3-RUU [9]),the 3-URC

by Di Gregorio [10],the 3-RRC by Zhao and Huang

[11],the Cartesian parallel manipulator by Kim and Tsai

[12],the 3-CRR 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 5-dof 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 dome-shaped 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 task-space position,velocity and accelera-

tion of end-eﬀ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 task-space

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 task-space

Gðd;

_

dÞ;G

x

ðp;

_

pÞ gravity forces/torques in joint-space or

task-space

Aðd;

_

dÞ;A

x

ðp;

_

pÞ vector collecting in a compact form all

dynamic terms (joint- or task-space,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 on-going operations.Dynamics shaping

[17],in fact,aims at compensating a poor dynamic be-

haviour of the system (which may be given by actuation

non-linearities,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 end-eﬀ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 end-eﬀ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 3-RCC 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 3-RCC 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 3-RPC overcon-

strained mechanism:the kinematics of the two 3-RPC

and 3-RCC 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 3-RCC 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 3-RCC mechanism.

3.Inverse dynamics model

3.1.Dynamic modelling of multi-body 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 in-parallel 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 cycle-times 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 on-line 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 on-line 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 on-line 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 multi-body 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 open-loop 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 3-RCC 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 six-dimensional 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 end-eﬀ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Þ ð7a-bÞ

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 non-singular

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 3-RCC 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 end-eﬀ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 end-eﬀ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 end-eﬀ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 joint-space 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 3-RCCrobot:it is assumed that the end-eﬀ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

3-dof 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 end-eﬀ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 sub-divided into a sequence of ele-

mental tasks grouped into the following three phases:

1.Free motion,with the end-eﬀ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 3-RCC machine suggests to

plan robot’s path in the joint space,since Cartesian space

schemes would require the on-line evaluation of the com-

plex forward kinematics;on the other hand,if model based

controllers are used,the complexity of joint-space inverse

dynamics would make the related algorithms computation-

ally expensive and,hence,less attractive than the corre-

sponding task-space 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 3-RCC robot under design,see Fig.7.

Machine’s direct dynamics has been modelled by using the

multibody code Adams while the model-based 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 path-planning 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 model-based

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 task-space control schemes have been

implemented to test by computer simulation the closed-

loop performances of the 3-RCC robot (e.g.PID,com-

puted torque,feed-forward 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 3-RCC 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 task-space 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 second-order error dynamics:

€

e

x

þK

d

_

e

x

þK

p

e

x

¼ 0

having deﬁned the task-space 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.Task-space 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

end-eﬀ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 real-time 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 break-down 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 end-eﬀ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 in-parallel 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 3-RCC 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 model-based

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 closed-loop 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 end-eﬀ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 non-linear 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

end-eﬀ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 position-controlled 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 peg-in-

hole assembly,always granting the contact between the

twomating parts,evenif during chamfer crossing the desired

force is not maintained;of course,if the end-eﬀ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 3-RCC 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 cycle-times of the task,and so on.Such a

behaviour could have well been expected for an in-parallel

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 3-RCC 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 re-write 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.peg-in-hole 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 3-RCC 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://www-sop.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 3-UPU

parallel manipulator.ASME J Mech Des 2000;122:439–46.

[9] Joshi SA,Tsai LW.Jacobian analysis of limited-DOF parallel

manipulators.ASME J Mech Des 2002;124(2):254–8.

[10] Di Gregorio R.Kinematics of the translational 3-URC 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 three-DOF 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/MECH-14101.

[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/MECH-34301.

[13] Kong X,Gosselin CM.Kinematics and singularity analysis of a novel

type of 3-CRR 3-DOF translational parallel manipulator.Int J Rob

Res 2002;21(9):791–8.

[14] Carricato M,Parenti-Castelli V.A family of 3-DOF 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 Alpe-Adria-Danube 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 platform-based 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 hardware-in-

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 force-controlled assembly operations

of a new parallel kinematics manipulator.In:Proceedings of the

Mediterranean conference on control and automation,Rhodes,2003,

IV06-02.

[35] Callegari M,Palpacelli MC,Scarponi M.Kinematics of the 3-CPU

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 3-CCR/3-RCC 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

## Σχόλια 0

Συνδεθείτε για να κοινοποιήσετε σχόλιο