Mechanics of turin parallel robot

Mechanics of turin parallel robot

Mech. Mach. Theory Vol. 32, No. 1, pp. 5i-77, 1997 Copyright © 1996 Elsevier Science Ltd Printed in Great Britain. All rights reserved P I I : S0094-1...

1MB Sizes 0 Downloads 46 Views

Mech. Mach. Theory Vol. 32, No. 1, pp. 5i-77, 1997 Copyright © 1996 Elsevier Science Ltd Printed in Great Britain. All rights reserved P I I : S0094-114X(96)00023-7 0094-114x/97 $15.00 + 0.00

Pergamon

MECHANICS OF TURIN PARALLEL ROBOT MASSIMO SORLI and C A R L O F E R R A R E S I Department of Mechanics, Politecnicodi Torino, Torino, Italy MAJA K O L A R S K I and BRANISLAV BOROVAC Faculty of Technical Sciences, 21000-Novi Sad, Trg D. Obradovi6a 6, Yugoslavia M I O M I R VUKOBRATOVI(~ Mihajlo Pupin Institute, l i000-Beograd, Volgina 15, Yugoslavia (Received 27 February 1995; receivedfor publication 6 February 1996)

Al~ract--The Turin parallel robot is a parallel manipulator whose mobile platform has 6 DOF. The platform is connectedto three double parallelogramsvia three sphericaljoints and prismatic sliderguides, whose axes are perpendicularto the mechanismplanes. The specificdesign allowslocation of servomotors on the robot base enabling minimization of the inertia parameters. In this paper geometry, kinematics and dynamicsof the mechanismare analyzed.The completedynamicmodel of the robot has been derived and robot behavior simulated. Copyright © 1996 Elsevier Science Ltd

1. INTRODUCTION I. 1. Historical background

Parallel robot design involves a mechanical architecture consisting of several arms which cooperate in supporting and moving a terminal element in the workspace. The terminal element is generally a platform connected to the device which must be moved in accordance with specifications for the number o f degrees of freedom, workspace size and shape, and the kinematic magnitudes. In general, the parallel robot configuration guarantees increased structural stiffness, which results in more accurate terminal platform positioning and lower total weight for the structure. On the debit side, parallel robot structures have smaller workspaces by comparison with serial structures of comparable bulk and load capacity. Parallel 6 D O F architectures are widely used in industry as well as in other applications. Historically, these structures were intended for industrial use, and in particular as robotized assembly workstations or as local fine adjustment devices, in some cases mounted on a robot arm. However, parallel architectures can also be used for other applications, such as moving a joystick for a multiple degree of freedom remote control, which can be sensitive to force disturbance. They may also be used for medical applications such as patient support during radiography or in a force/torque sensor configuration with six measurement axes. A classical example of a parallel 6 D O F platform to which many authors refer is the Stewart platform [1], which is kinematically similar to the machine developed earlier by Gough [2] and used for tire testing. Design specifications for the Stewart platform were established with the aim of achieving the highest ratio of payload to structure weight. In the industrial configuration used chiefly as a flight simulator, this structure thus features six linear motors, each of which is connected to the stationary base and to the top platform moving on ball joints. The six motors, which 51

52

Massimo Sorli et al.

were hydraulically actuated in the original version, act as the six support arms for the moving platform. A number of designs have been based on the Stewart architecture. Examples include designs by McCallion, who presented a fine adjustment device for robotized assembly operations [3], by Fichter, who proposed a Stewart platform in which linear arm movements are produced by lead screw drives with rotary electric actuation [4], by Arai, who presented a prototype whose kinematic architecture is similar to the Stewart platform [5, 6], and by Nakashima, whose Stewart platform version was presented in [7]. Two designs for 6 DOF active wrists mounted on the robot arm were presented by Reboulet [8] and Fujimoto [9]. In both designs, the structures are similar to the Stewart platform and the linear arm motors are pneumatically actuated in order to optimize the device power to weight ratio. Several kinematic structure geometries and a discussion of the design considerations involved were presented by Earl [10]. Hunt [11] analyzes different drive lines and compares several characteristics of parallel-actuated robot arms with those of series-actuated arms. Considerations concerning the design of planar and spherical 3 DOF manipulators are provided in [12, 13], while Merlet offers an extensive discussion of different parallel structures [14]. Parallel architectures whose kinematic structure differs from the Stewart configuration include the Inoue 6 DOF mechanism [15], the Thornton 6 DOF "tetrahedral robot" [16], the Merlet 6 DOF active wrist [17], the Clavel DELTA robot [18], the Pierrot H EXA robot [19] and the cable actuated parallel device developed by Simon [20]. All of these designs are attempts to develop high speed devices with low weight. Parallel articulated structures have also been used to implement 6-axis force/torque sensors. Examples of the use of Stewart architectures in force sensors include the robot wrist transducer by Romiti et al. [21-23] and the Nguyen sensor [24]. As an outgrowth of earlier studies of passive compliance devices [25] for robotized assembly operations, Romiti proposed a 6 DOF parallel robot prototype [26, 27] whose special drive line enables these 6 rotary motors to be positioned on the base, thus providing high dynamic performance. A kinematic and dynamic analysis of this prototype is presented in [28]. An analysis of the prototype stiffness is given in [29], while the workspace is determined in [30]. A second device, the Turin platform [31, 32] was designed and constructed on the basis of experience gained with the first prototype, and can cooperate actively in a robotic cell with other robots. An analysis of the new design's workspace and dexterity is provided in [33]. In this article, we first analyze the geometry of the parallel robot, deriving the complete relations for direct and inverse geometry. The kinematic relations for direct and inverse analysis of the system velocities and accelerations are then derived. Finally, a complete dynamic model of robot is derived in order to solve the inverse dynamics and to determine the driving torques in joints.

1.2. M e c h a n i s m structure

Robot consists of three actuated mechanisms (see Fig. 1) which support the platform. All three mechanisms are identical, and situated in three planes (rI,, rI2 and 1-I3) which are positioned perpendicular to the base x y plane forming a triangle with all three angles of 60 °. Each of three mechanisms consists of a double-parallelogram (Fig. 2), which is composed of two base supports, four lower links (links 1, 2, 1', 2'), four upper links (links 3, 4, 3', 4'), two connecting rods (elements 5 and 6) and an upper connecting rod---element 7. Links and rods are connected via shafts, so their connection can be considered as rotational joints. Two motors, attached to the base plane actuate, separately, two of the four lower links, so there are two cranks in the mechanism (links 1 and 2'), while the remaining links are all being driven. The motor activates the corresponding link rotation directly (without intermediate drives). Thus, the position of the double parallelogram is defined by angles q~ and ~ (counter-clockwise rotation is considered positive). The upper connecting rod carries a prismatic slider guide, axis nj-nj, which is perpendicular to the plane rlj of the mechanism. The moving member of the slider represents a vertical rod 8 that is connected to the terminal platform at point ~ through a ball joint. The sliding pair (prismatic joint) and ball joint are not actively actuated. Points ~ form an equilateral triangle, the center at point H0. It is obvious that

Mechanics of Turin parallel robot

53

as cranks rotate all three connecting rods perform translational motion. The vertical rod slides along its guideway so its absolute motion is composed of the following two components: translational motion of the upper connecting rod which carries the guideway and translational motion of vertical rod along its guideway. Then, the vertical rod performs translational motion, too.

Movement of the platform is obtained as the result of displacement of reference points H,,/-/2 and //3. Position of the platform is evaluated through the position of point Ho(x,y, z). Its orientation with respect to the world coordinate frame Oxyz (see Fig. 3) is described by Euler's angles ~p, 0 and ft. 2. G E O M E T R Y

2.1. A direct geometry All three double parallelograms have same design and identical parameters. One of them is shown in Fig. 4. Position vector rh of point ~ in the local coordinate frame can be written in the following form: •

Cj

rxh] r~n = [ ~ J =

[_Llsin~_L2sinql + L/2 ] EL, cos q] + L2 cos q~+h+sJ

j = 1,2,3.

(I)

xH

It;

YK r

..n2 n3

~3

I

f

"~f160 Xl"

Fig. 1. Kinematic scheme of Turin parallel robot.

O

54

Massimo Sorli et al.

H

nj

II.'

7

'

\3'

5 6

M~ q~ Fig. 2. Double parallelogram mechanism.

Position vector, rhg of point ~ in the world coordinate system Oxyz is:

r',,=r.-'r~+,"=[Siofcos~0

Iil

oilY.l+ 'JLz~J L'l

(2)

where W is the transformation matrix from Oxjyjzj to Oxyz, and r' and ~ position vectors and orientation of the Oxjyjzj to Oxyz as shown in Fig. 5. !

ZsZ

I!

Z

/ ! zH

\

!

Y,Y J

X

~

________--~ ~, Fig. 3. Angles between platform and base coordinate frame.

I!

Mechanics of Turin parallel robot

55

!1

AI

"I

h

/*

I\

1,12

n31

/._

\

I

$

\

\ Y

Yt x1 Fig. 4. One branch of the mechanism with characteristic coordinate system.

N o w , b y p r o j e c t i n g (2) we c a n write a system o f nine linear e q u a t i o n s (three o f each d o u b l e p a r a l l e l o g r a m ) expressed relative to the world c o o r d i n a t e frame: X~g = C l cos 7' + L~ sin y' sin q~ + L2 sin 7J sin q~ - ~L . sm 7' + x ' y~, = C Lsin 7 ~ - Ll cos 7 ~ sin ql - L2 cos 7 ~ sin q~ + ~L cos 7 ~ + yt z~8 = L, cos q~ + L2 cos q~ + h + s L sin 7 2 + x 2 x~ s = C 2 cos ~2 + L, sin 7 2 sin q~ + L2 sin 7 2 sin q~ - ~-

Y~s = C2 sin y 2 - L, cos 7 2 sin q~ - L2 cos 7 2 sin q~ + ~L cos 7 2 + y2 z~, = L, cos q~ + L2 cos q~ + h + s

Massimo Sorli et al.

56

x3n, = C 3cos 73 + Lt sin 73 sin q~ + L2 sin 73 sin q~ - 23 sin L. Y + x3

y3.s = C 3 sin 73 - L~ cos 73 sin q~ - L2 cos 73 sin q~ + 2Lcos 73 + y3 (3)

z~, = L~ cos q~ + L:cos q~ + h + s.

Let us note that all zJ are zero because all t T s are in the base plane. Three additional conditions follows from the mechanism particular structure. Since points ~ from an equilateral triangle, the distances between H; a n d / / j , i ~ j, are constant and have equal values of l, and the following three equations can be written: H , H2 = x / ( X ~ s - X2s)2 + (Y~s - y2s)2 + (z~, - z2g)~ = 1 H , H ~ = ~ / ( x ~ , - x ~ , ) 2 + (Y~s - Y~s) 2 + (Z2s - Z~s) 2 = 1"

H 3 H , = x / ( X 3 s - X~s) 2 + (y~g - y~,)2 + (Zig - Z~g) 2 = 1.

(4)

Now, we have a system of 12 equations with 12 unknowns. By solving system (4) values for x~s, 2 3 I 2 3 I Xns, Xns, Yns, Yag, YHg, zng, Z2ng,Zls and C =, C 2 and C 3 are obtained, i.e. we have determined positions of points ~ in O x y z , as well as displacements of sliders. Now, the positions of H~,//2 a n d / / 3 are known, while the position of H0, as well as Euler's angles 0, tp and ~Ohave to be determined. Figure 6 shows the platform in an arbitrary displaced position. If the position of H0 is expressed in the frame O x y z via points H=, H2 and/-/3, vector rH can be written as: rn = R~o~l + rh,

rH = R,o,~p3+ r~ s

(5)

,3l 3

i

Y2

x2

I

~.2 ~3

Y

0

¥ Y Z

"111

Ix Fig. 5. Top view of the base plane.

1

2 3

0° 120 ° 240 °

Mechanics of Turin parallel robot

57

l

HI

r.q H2

bZH

g

zH

/x11,H 0 1t 1

0 Fig. 6. Platform position relative to the base coordinate frame.

where the transformation matrix Rrot is

Rrot =

cos 0 cos ~0 - s i n 0 cos ~k + sin ~0 cos 0 sin ~k sin 0 cos qJ + sin q) cos 0 cos ~k ] - c o s 0 sin ~, + sin ~o sin 0 cos q, sin 0 cos ~0 cos 0 cos ~k + sin tp sin 0 sin ~, cos ~o cos qJ cos tp sin ~O - sin ~0

]

[

R~I RI2 RI3]

=

R22 R23|

(6)

~j, the vector from point ~ to H0, is expressed in the platform coordinate system HoX~yHZH. Points ~ form an equilateral triangle, the center of which is H0. Distances between H0 and ~ are equal and have value of rp. Three vector equations of system (5) transform into the following nine scalar equations: X = R,3rp + X~g y = R23rp + y~g %//3 x= -R,2r"__

rp 8,3~+x~g

z = R33rp + Z~g

rpx//~ rp y= -R22~-R23~+y~g

r.x//~ rp z= -R3,~-R33~+z~g

rps/3 rp rpx/3 rp rpx/~ rp x = R,2 - - T - - R,3-f + x~,~ y = R22--i-- - R23 ~ + y~,~ z = R,2---5-- - R . ~ + z~.

(7)

58

Massimo Sorli et al.

This is a system of nine equations with six unknowns. The solution can be calculated directly, and is given as: x~g + x ~ + x ~ 3

x=

Y=

Y~s + Y2s + Yn, zhs + z2s + z~s 3 z= 3

z~, - z~, tgqi = x/~ 2z~ -- z~g -- z ~ 2

cos q, = ~ . , / ( ~ h , ) ~ + (z~.,)~ + (zh,) ~

' ~ - - ZHgZHg ~ ~ - ZHgZH8 ' ZHgZHg

+x~,.-x~.))

\[(Y~"-y~,.)-4 (x~,. 0 = arccos~-

rp(1 + sin q~)

- ~"

(8)

2.2. Inverse geometry For a given position and orientation of the platform, i.e. known x, y and z of point H0 and Euler's angles 0, cp and ~, angles ~ and q~ have to be calculated. Position vector l~as of point H~ in the world coordinate frame Oxyz is:

¢.8 = R,o.(-r~,) + r. = ~ / Y . d = a,o,/-y

H +



(9)

Then, the following system is obtained: xhg = cos 0 cos ~p(-x~j) - (sin 0 cos ~ + sin ~o cos 0 sin ~)(-yp~j) + (sin 0 cos ¢, + sin ~p cos 0 cos ~,)(-Zp~j) + x YHg= sin 0 cos ~p(-x~j) + (cos 0 cos ~ + sin ~o sin 0 sin ~ ) ( - y ~ j ) -

(cos 0 sin ~b + sin ~p sin 0 cos ~,)(-z~j) + y

zhs = - s i n q~(-x~j) + cos ~p sin ~(-yp~j) + cos ~p cos ~ , ( - Zp~j)+ z

(10)

where xhs, Yhs and zh8 can be calculated directly from system (9). If we know x'~s and Y'H8we can calculate Cj considering the initial and displaced platform position, as shown in Fig. 7. Then Cj

I

/

\r cxy

°:1 Fig. 7. Platform displacement.

/,,

Mechanics of Turin parallel robot

59

can be calculated as: Cj =

(x~l, -

xJ)cos ~J + (.flag- y')sin ~J.

On the other hand xfig, y/.g and #Hg can be expressed via q~, q~ and CL Thus, we have: xhg = Cj cos ~ + L~ sin ~ sin q~ + L2 sin ~ sin q~ - L s .m ¢ + x~

Z Yhg = Cj sin ~ - L, cos ~ sin ~ - L2 cos ~ sin q~ + )- cos ~ + y/ zhg = L~ cos q] + L2 cos q~ + h + s.

(11)

Bearing in mind that xhv Yhg and zhs were already calculated, system (11) has three unknowns only. Accordingly, its solution is: --2~dfl j -4- d(20~Jff) 2 -- 4((if) 2 - (8')2)((ce) 2 - (~)2)

tgq~ =

2((ff)~ _ (6j)2)

q~ = arcsin

L~

(12)

L2

where ~J = - 2BiLl f f = - - 2 A J L , ; ¢~ = (AJ) 2 + (13J)2 + L~ -- L~

BJ=zhs-h-s. 3. K I N E M A T I C S

3.1. Velocities Velocities and accelerations of points ~ are the same as of points Aj on the slider. The motion of point As can be considered as a superposition of motion of the upper connecting rod and the relative motion (sliding) of the vertical rod. Since the upper connecting rod performs translational motion its velocity and acceleration will be represented through the velocity and acceleration point Vj. Expressed in the local coordinate frame it gives:

v~,=

I

Yv = ~{, [ - L , ~ sin ~ - L2t~ sin q~ J

(13)

In the world coordinate frame Oxyz the velocity of point H is calculated as:

rvus,l

[cos)a

-sin~

olFe,1

rc',cos~.-~,.sin~l

v.j = kV':JV'"/=R,,', = [Sio ~' cos0~ °/I YV/l/Le,_!-- L/cjsin ~s+~{)~vcos J

(14)

where Rj is the transformation matrix from local Ojxjyjzj to frame Oxyz. Here the unknown is (~J. Points Hj form an equilateral triangle in the same plane and three vector equations (9 scalar

60

Massimo Sorli et al.

equations) can be obtained: UH2.y -

0Hl.y =

th,Z,-UH,y=

VHZ=VHI+(~XH,H2)*

0H2z -

VH3 =

VHI

=

vH2 +

vH3 +

(0

(0

x

x

HzH4 *

H3H,) *

0 +

CIW,

-

b,w:

-C,U,+O+U,o;

OH,? =

b,w, - Uzw, + 0

-

bzw;

0

+

UH3.x -

0H2x =

0 +

0H3y -

vH2y =

-C20x

Z)H3: -

vH2; =

bzw, - C&w,+ 0

UHlx -

uH3.x =

0

tk,j-

uH3y =

-C3C&

+

OHI: -

uH3z =

C204 +

C3Wy +

a2az

-

b3w,

0

+

U,o,.

(1%

b3w, - a3w, + 0

System (15) forms a system of nine linear equations with six unknowns CIA.,wy , wr , c’, c’ and c’ which can be solved by well known numerical methods for an overdetermined system of linear equations. Now, having found ox, w,, w,, c’, c” and c’ the angular velocity cu of the platform can be computed. The linear velocity of the point Ho can be written via any of the points Hi, for example via H,: VHO =

VHI +

(W

X

HIHO)

(16)

where HIHo is the vector from HI to Ho, expressed in Oxyz and:

(17)

where m, n and p are components

of the vector HIHo. Then, the velocity of 6 VHlx + Z)HIy + utik

(w,p

-

(-c&p +

(w,n

wzfl) +

-

from

(18)

am)

qm)

I

can be computed directly. 3.2. Accelerations The accelerations can be determined in the same manner as the velocities. Thus, the accelerations of points H, are the same as of points AI. The motion of point Aj can be considered as a superposition of the motion of the upper connecting rod and relative motion (sliding) of the vertical rod. Since the upper connecting rod performs translational motion, analogously to (13), its acceleration will be represented through the acceleration of point Vj

.1 (19)

-L,~cosqi+Ll(~)2sinqi-L2~cosq’,+L2(~)2sinq$ - L,$ sin 4’;- L,(&)* cos 4’ - L& sin 4 - L2(41)’ cos q$ In the world coordinate

frame Oxyz, the acceleration of point Hj is calculated as:

Mechanics of Turin parallel robot

61

Since points HI, HI and H3 are situated on the platform, the following relations can be established:

aH2

=

aHI

+

0

X

(W

&,Z.V - a,,!.~- XI = &Q - &,I! - yl =

H,Hz) + (c;, X H,Hz) *

X

aH2;

-{

aH3

=

8H2

aHI =

+

aH3

0

-I- 0

X

(0

x

H,H,) + (c;, x HzH,) =

X

(0

x

-

&,I;

-

21 =

-

x2

aH3.r -

aH2r

aH3,

-

aH2,, -y2

aH3;

-

aH2:-

-1

HIH3) + (& x HIH3) =

aHll

-

&,IJ &,I, -

0

--3

0H3.- -

X3

+

-

b,&

0

+

U,ti;

0 + c,Q - b2ti;

=

-cZLi)r

+

0 +

a26

b&x - a&+

z2 =

aH3+

C&

b,& - U26J + 0

=

aH3~

+

-C,&

=

0

=

-c3ti.y

Z3 =

+

b&

C34

-

0

-

bjti:

0

+

+ U34

+

a3&.

(21)

0

Now, we have a system of 9 linear equations with 6 unknowns ti,, ti,., ti,, c’, c2 and %‘. Members aHlx,

aHI?,

aHI.-? aH21,

aHZ?r

aH2.-, aH3.y, aH3y

and

aH31

can be expressed via C’, C’ and C’ from (20),

and system (21) becomes: c” cos y2 - j;$ sin y2 - (c’ cos y’ - j;$ sin y’) - x, = 0 i- c,ti, - b,oL

C’ sin y2 + j;$ cos y2 - (C’ sin y’ + j;: cos y’) - y, = --cl& + 0 + a,& $--it:=b,ci,

r -a,ti ? +0

c’ cos y3 - j;$ sin y3 - (c?’ cos y2 - j;$ sin y’) - x2 = 0 + c2& - b2ti, %’ sin y3 + j;: cos y3 - (%’ sin y2 + j;$ cos y2) - y2 = - c2& + 0 + a20L .2~-.f~=b2~i)r-a2ti.+0 ? %’ cos y’ - $4 sin y’ - (c’ cos y3 - jj$ sin y’) - x3 = 0 + c3tiY- b30& %’ sin y’ + ji: cos y’ - (C’ sin y3 + j;$ cos y’) - y3 = -c,c%, + 0 + a3& it: - 5; = b3ti 1 - a,& + 0.

(22)

From (22) six unknowns CL, &, o&, c’, c’ and c’ can be easily calculated using the same method as before. In this way the angular acceleration ti of the platform is determined. The acceleration of point Ho can be, in same way as before, written as: aH0

=

aHI

+

0

x

(0

x

HIHO)+@

After some calculation, the expression for computation

x

HIHO).

(23)

of the acceleration of the platform center

Ho:

is

obtained and aH0can be calculated. 4. DYNAMICS

4.1. Deriving the dynamic model All external forces acting on the platform can be represented by the main vector F, and main moment MO, expressed relative to the center of gravity Ho of the platform, as shown in Fig. 8. All further considerations will be related to the mechanism dynamic equilibrium. Reaction forces in spherical joints in H, , Hz and H3 are unknown spatial vectors. The equations

62

Massimo Sorli et al.

Y Fig. 8. Platformwith external forces. of dynamic equilibrium for the platform are: ZFi = 0 ~ F0 + Rl + R2 + R3 = 0

Z M ( O ) = 0 ~ Mo + r. × F0 + r~g x R~ + ~8 × R: + r38 x R3

(25) =

0

(26)

where R~, R2 and R3 are reaction forces in spherical joints H,,//2 and H3. Then, the following six scalar equations can be written: ZXi=O~

Fox+ R i x + R2x+ R3x=O

Z Yi = 0 =~ F0y + Rty + R2y + R3y = 0 Z Z j = 0 ::~ Fo~ + RI~ + R2~ + R3z = 0 ZM~ = O ~ Mox + (yFoz - zFo,.) + O ' ~ , R ~ - z ~ , R , ~ ) + O ' . , R ~ - z ~ , R ~ , , ) 3 (yHg.13z -- Z3gS3y)

"Jl-

= 0

Z M , = 0 = Mox + (zFo~ - xFo=) + (z~,a,~ - x~,a,~) + (z~,R~ - x2.,R2z) 'F (z~i,~R3: - - x ~ , , R 3 z ) = 0

ZMz = 0 =*. Mo~ + (xFo,. - yFox) + (x~,Rtr - y~,R,~) + ( x ~ s R 2 y - y~,R2x) + (x~,R3,. - y3,R3x) = 0.

(27)

Equations (27) represent a system of six linear equations with nine unknowns: R,~, R2x, R3x, Rly, R2y, R3y, Riz, R2~ and R3~. This problem will be solved in the following way. In (27) forces Rs are expressed in the world coordinate frame. We will express the same forces Rs in the corresponding local frame Oxsyszs. In this case, the x-component of each force can be directly calculated and only two components

Mechanicsof Turin parallel robot

63

remain unknown. So, in system (27) components of Rj in the local frame will be introduced, and instead of nine unknowns, only six variables will be unknown. Let us explain why one component of Rj can be directly computed. The vertical rod of thejth double-parallelogram moves in the plane Hj (see Fig. 9), which is perpendicular to the prismatic slider guide axis nj-nj. As ~ is perpendicular to n/-ni it follows that//j is parallel to the plane Hi. At the point & there are two reactions: force RAt and moment MAj. The sliding connection between the vertical rod and the upper connecting rod is realized by ball slides, so friction can be neglected, which implies that reaction force RAyhas no component in nj-nj direction, i.e. it lies in plane//j. The first equation of dynamic equilibrium for the vertical rod expressed relative to the local frame Oj&yjZ, is: rr' = o ~ -1~) + a' + rb + Rb = o

(28)

where R) = reaction force Rj in the spherical joint in Hj relative to the frame Ojxjyjzj; G) = weight of the vertical rod expressed relative to the frame Ojxjyjzj; F~,j = inertia force of the vertical rod expressed relative to the frame Oj&yjzj. (the acceleration of& is equal to that of the point ~ because the vertical rod performs translational motion); and R~j = reaction force R~ expressed relative to the frame Ojxjyjzj. Vector equation (28) gives three scalar equations: xJ:

-X) +0-mOJ+

0= 0

)¢:

-Y]+0-mj~v+

Y~,j=0

zJ:

-Z)

(29)

- mg - m & + Z b = O.

Component X) can be easily determined from (29) as: )[!!

= mCy.

I

m

.j

R^j

!

MAj "j "j

xj Fig. 9. Forcesacting on vertical rod. MMT 32/I--C

M a s s i m o Sorli et al.

64

The relations between R) and R~ is: Fcos ~ R, = R'R} = / sin ~ o

- s i n 7' O][X]] [X~~cos ~ - Y) sin ~~ cos ?/ 0 / / r ~ / = [ ~ sin ~ - ~ cos ?/

o

lj[Z;j

(30)

z]

that gives force R~ expressed via its components in the local coordinate system as: R~ =

I1 [ cos RRIII~ =

sin ~ + I1] cos

.

(31)

Now, we can substitute unknowns Rtx, R2.~, R3~. R~., R2y, R3~., RI:, R2: and R3.. in (27) by the corresponding expressions from (31), and obtain the following system: Fox + XI + (X~ cos 120° - Y~ sin 120°) + (X~ cos 240 ° - Y~ sin 240 °) = 0 F0~.+ YI + (X~ sin 120 ° + Y~cos 120°) + (X] sin 240 ° + Y] cos 240 °) = 0

F0:+ Zl + Z ~ + Z~ = 0 M 0 x + ( y F 0 : - z F 0 y ) + (ys,Z~ ' ' - Z.s ' Yl) ' - z~,(X~ sin 120 ° + Y~cos 120°) -

3 | 3 1 zag(X~ sin 240 ° + Y~ cos 240 °) + yngZ: 2 + yagZ3 = 0

Mo,. + ( z F o x - xFo:) + (z.gXi I J 3 I + zs~(X~ cos 240 °

-

-

-

I 1 + z~g(X 1 cos 120 ° - Y~ sin 120°) xs~Z~)

3 I Y~ sin 240 °) -- xngZ2 2 - XHgZ3 = 0

l I 2 | M0: + (xFo~ - yFox) + ( x .l~ Y , I - y.~Xl ) - y.8(X~ cos 120 ° - Y~ sin 120 °)

-

+

y~s(X~ cos 240 ° - Y~ sin 240 °) + x ~ ( X ~ sin 120 ° + Y~ cos 120°) 3 i xsg(X~ sin 240 ° + Y~ cos 240 °) = 0.

(32)

Because the x-component of force R} is already known, (32) is a system of six linear equations with unknowns Y) and Z), j = 1, 2, 3 which can be computed by numerical methods. Now, Rj is completely known and from the second and third equation of (29) RAj in the local frame Ojxjyjzj can be determined as: r~,j= Y) + mfi'v Z~Aj = Z] + m~2v + rag.

(33)

Then, the second equation of dynamic equilibrium for the vertical rod expressed relative to the local frame Ojxjyjzj, gives: XM(A)=O~M~j+AjI1]

x ( - R ) ) + AjS) x ( F : , + G)) = 0

wherefrom components of M~,j are calculated as: M~AI, = -- ( Y) A H - rrefdvAS) M~j, = - (-- X) A H - rreC~ A S )

M~u = O.

(34)

Now, the next element, the upper connecting rod, is considered. Reactions -RAj and - M ~ act upon the upper connecting rod (see Fig. 10). Force --RAj can be reduced to point Vj in the plane //j. Then the additional moment MRj appears. It has to be emphasized that, because the mechanism moves in plane z - y , moment MRj has no x component, but y and z components of the moment do not cause motion, only additional load on the mechanism structure. Moment MA~ is placed spatially, and only the x component causes motion. In Fig. l 1 the j t h double-parallelogram mechanism is shown in 3D isometry. It consists of eight links: four lower links l, l', 2, 2' and four upper links 3, 3', 4, 4', three connecting rods: two

Mechanics of Turin parallel robot

- - "

65

T

~j

oj xj Fig. 10. Forces acting on upper connectingrod.

connecting rods 5, 6 and upper connecting rod 7. Shafts V1, VI' connect upper links 4, 4', lower links 1, 1' and connecting rod 5, while shafts V2, V2' connect upper links 3, 3', lower links 2, 2' and connecting rod 6. Four upper shafts Vgl, Vg2, Vg3, Vg4 connect upper links 3, 4, 3', 4' with upper connecting rod 7.

VI' J M1

? A 2'

Fig. I 1. Spatial sketch of the double-parallelogrammechanism.

Massimo Sorli et al.

66

The following symbols will be used: Sk = center o f mass o f the kth element, tpk = position angle o f the kth element (with respect to the yj axis), Lk = distance between two joints on the kth element (with respect to the yj axis), lk = distance between first joint and center o f mass o f the k t h element Aq, = position angle o f center o f mass o f the kth element, with respect to the line connecting two joints on the element (mechanism elements are considered to be general rigid bodies), m k = mass o f the kth element, Jk -- m o m e n t o f inertia o f the kth element, E,k = inertial force o f the kth element, Mi,k = inertial m o m e n t o f the kth element, m,~ = mass o f the ruth shaft, J~ = m o m e n t o f inertia o f the ruth shaft, F~.m = inertial force o f the ruth shaft, M i ~ = inertial m o m e n t o f the ruth shaft. Reactions - R A j , --MAj and MRj act u p o n the upper connecting rod at point Vj. Driving torques M~ and M~, necessary for dynamic equilibrium o f the mechanism, have to be determined. In order to do so, the principle o f virtual work will be used. F o r double-parallelogram mechanism we have:

6A = 6A(M{) + 6A(M~) + 6A(M~jx) + 6A(R~v) + 6 A ( M ~ ) + 6A(F~ + G)).

(35)

It has to be pointed out that, as the mechanism moves in plane Hj (performs planar motion) c o m p o n e n t s along the yj and zj axes o f m o m e n t s MAj and MRj: -- M~jy, - M~j:, M~,, and M[j= have no influence on the mechanism motion, therefore they do not exist in the expression for virtual work, With general expressions for virtual work o f force and m o m e n t : -

6A(F) = F . 6s = Y6y + Z6z;

6A(M) = M6q~

(36)

equation (35) becomes:

6A = M{6~, + M~6(,O2 + (-- YIAj)6yvj d'- (--ZIAj)6Zvj + mlAj..,6q)7 -{'- (Zinl "k- m,g)6zs, + E.,6ys, + (Z~.,.- m,.g)6zs,. 4-. Y~.l,6ys,, + (Z~.2 - m2g)6zs2 + Y~.:6ysz + (Z~.2.- mrg)6zsz + Y~.2.6Ys2.+ (Z~.3 - m3g)fzs3 + Y~.36ys3 + (Z~.y - m3.g)6zs3. + Y~.3.6Ys3. + (Z~.4 - m4g)6zs4 + E..6ys4 + (Zi.4. - m4.g)6zs4. + Ym.6ys4. + (Z~.5 - msg)6zs5 + Y~°56ys5+ (Z~.6 - m6g)6zs6 + Yi°66ys6 + (Z~.7 - mTg)6zs7

+ Yi.'16ys7 + Min,6~o. + Minl6~Ol, + min26~02 -4- Min2,6(,o2,--I-Min36(,03 -~ Min3,f~y + Min46(p4 + Mi...&,04. + Mi.56q~5 + Mi.6&p6 + Mi.76~7 + (Zi.vl -- mwg)6zAi + Yi.w6y^l + ( Z i . w - mwg)6ZA,. + Yi.v,6yAv + (Z~.v2 -- mv2g)6zA2 + Yi.vz6ym + ( Z ~ . w ' - mv2.g)6zA2. + E.vz6y,~2' + (Z~.vs, -- rnvg,g)6zm + Y~.v.,6y~3

-~- (Zinvg4 -- mvg4g)6z~.~ + Yinvg46yA4+ Mi.w&p~ + Mi.w6t.pv + Minv26tp2 + Mi.v2'6tp2" + Minvg~6~4 + Mi.v~26q~ + Mi.vg3&04, + Mi.v~6~o~..

(37)

Variations o f angles are: qh = q~,.= qh = q~' = q~ + 90 ° =~ 6q~, = &o,. = 6t;03 = &;or = 6q~ q~: = ~o2.= tp~ = tO4, = q{ - 270 ° ~ &o: = 6(p2' = 3(])4 = 6~04' = 6q/I tp~ = rp6 = q~7 = 0 ° = const. =~ 6tps = &P6 = 6rp7 = 0. T o obtain variations o f coordinates, we shall first write expressions for ys~, Zs~. . . . ys, = -1~ sin(~ + Aq,) Zs, = 1, cos(q~ + Aq,)

as follows:

ys: = 6 cos(q~ - 27O ° + a q : ) Zsz = h sin(~ - 270 ° + aq~)

ys,. = L - Iv sin(q~ + Aqv) Zsv = 1,. cos(q~ + Aq,.)

(38)

ysr = L +/2' cos(~ - 270 ° + Aq~.)

Zs2.=/2. sin(q~ - 270 ° + Aqr)

(39)

Mechanics of Turin parallel robot

yA~ = - - L . sin(q~) ZA. = L~ COS(q~)

YA2 = L2 cos(q~ - 270 °) ZA2 = Lz sin(q~ -- 270 °)

yA,' = L -- Lv sin(q~) z^v = Lv cos(q~)

67

yAZ = L + Lz cos(q~ - 270 °)

ZAr = Lz sin(q~ -- 270 °)

ys5 = - - L i sin(q~) + 15 Zs5 = LI cos(q~) Ys6 = L2 c o s ( ~ - 270 °) + 16 Zs6 = L2 sin(q~ - 270 °)

(40) (41) (42)

ys4 = - L ~ sin(q~) + / 4 c o s ( ~ - 270 ° + Aq4) zs~ = L. cos(q~) + / 4 sin(q~ - 270 ° + Aq4) ys4, = L - Lt, sin(q~) +/4, c o s ( ~ - 270 ° + Aq4,) Zs. = Lv cos(q~) + 14. sin(q~ - 270 ° + Aq4,) ys3 = L~ cos(q~ - 270 °) - / 3 cos(q~ + Aq3) Zs3 = L~ sin(q{ - 270 °) + / 3 sin(q~ + Aq3) L + Lz cos(q~ - 270 °) - 13, cos(q~ + A q r )

ysy =

Zsr = L r sin(q~ - 270 °) + 13. sin(q~ + Aq3) yA3 = - L ~ sin(q~) + L4 cos(q~ ZA3

Lv sin(q~) + L,, cos(q~ - 270 °)

Lv cos(q~) + L4, sin(q~ - 270 °)

yS7 = - L ~ sin(q~) + L4 cos(q5 ZS7

270 °)

L~ cos(q~) + L4 sin(q~ - 270 °)

yA4 = L ZA3

(43)

(44)

270 °) + / 7

L~ cos(q~) + L4 sin(q~ - 270 °) + h7

(45)

Yw = - L t s i n ( ~ ) + L4 cos(q~ - 270 °) + / 7 Zvj = L l COS(q~) + / - , 4 sin(q~ - 270 °) + h.

(46)

B e c a u s e the lengths o f all links are i d e n t i c a l , i.e. Lt = Lt, = L3 = L r = L2 = L r = L4 = L4,, Lt o n l y

will be used. B e a r i n g in m i n d that:

6f(q{, ~) = ~ 6~ + ~ 6~

(47)

we have:

6ys, = -1, cos(q~ + Aqt)hq~ 6Zs~ = -l~ sin(q~ + Aqt)6q~ 6ysv = -1., cos(q~ + Aq,,)6~2 6Zs., = - / 1 , s i n ( 6 + Aqt,)6q~

(48)

6ys2 = -12 sin(q{ - 270 ° + Aq2)66 6Zsz = 12cos(q~ - 270 ° + Aq~)6~ 6ysr = -12, sin(q{ - 270 ° + Aq2,)66 62s2, = 12cos(q{ - 270 ° + Aqz)6q{

(49)

68

Massimo

Sorli

et al.

~yAI = @At' = 6yss = - L ~ cos q~6q~ 6ZAI' = 6ZS5 "~- - - L t sin q~6q~ 6yA2 =

6y2, = 6ys6 = - L l s i n ( 4 -- 2 7 0 ° ) 3 4

(~ZA2 =

6ZAZ = 6Zs6 = Lt c o s ( 4 -- 2 7 0 ° ) 3 4

6ys4 = - - t l

(5o)

cos q~fq~ - - / 4 s i n ( 4 - 270 ° + Aq4)64

6Zs~ = - - Z t sin q~fq~ + / 4 c o s ( 4 - 270 ° + Aq~)64 6ys~. = - t l

(~ZS4' =

cos q~hq~ - / 4 , s i n ( 4 - 270 ° + Aq4,)64

- - t t sin q~fq~ +/4, cos(q~ -

270 ° + Aq4,)6~

6ys~ = - L ~ sin(q~ - 2 7 0 ° ) 3 4 - / 3 cos(q~ + Aq3)6q~ ~Zs3 = L~ c o s ( 4 6ysy = -Lt

2 7 0 ° ) 6 ~ - / 3 s i n ( ~ + Aq3)6q~

s i n ( 4 - 2 7 0 ° ) 3 4 - / 3 , cos(q~ + Aqa,)fiqJ2

6Zs3, = Lt c o s ( 4 - 2 7 0 ° ) 6 4 - 13' sin(q~ + Aq3,)6q~ 8yA3 = ~yA4 = fiys7 = fiYv7 = - L t

cos q~6q~ - L~ s i n ( 4 - 2 7 0 ° ) 3 4

6ZA3 = 3ZA4 = 3Zs7 = 6z w = - L t

sin q~fq~ + L~ c o s ( 4 - 2 7 0 ° ) 3 4 .

(51)

(52)

E q u a t i o n (37) b e c o m e s : 6 4 [ M ~ + Mi.: + Min2' + Min4 + Min4, -k- Minvl "P M i . w + Mi.v~ + Mi.vg4 - s i n ( 4 - 270 ° + Aq:)/: Y~.2 - s i n ( 4 - 270 ° + Aq2.)]/~ Y;.2 - s i n ( 4 - 270°)L~ Y~.6 + c o s ( 4 - 270 ° + Aq2)12(Zi.2 - mzg) + c o s ( 4 - 270 ° + A q z ) l z ( Z i . z , - m2.g) + c o s ( 4 - 270°)L,(Z~.6 - m6g) - s i n ( 4 - 270°)(Lt(Yi.3 + Y~.3.)) + c o s ( 4 - 270 °) x (L,(Z~.3 - m3g + Z ~ . y - m3g)) - s i n ( ~ - 270 ° + Aq4)L Y~.4 -

sin(q~ - 270 ° + Aq4.)/. Yi.4. + c o s ( 4 - 270 ° + Aq4)l.(Z,n4 - m4g)

+ c o s ( 4 - 270 ° + Aq4.)14.(Z~.4.- m4.g) - s i n ( 4 - 270°)(Yi.7 + ( - YAj))L, + COS(4 -- 270°)(Z~.4 -- m7g + ( - Z A j ) ) L ~ - s i n ( 4 - 270°)[Y~.v, + Y~.w + Y~.vg2+ Y~.vg4]L, + c o s ( 4 - 270°)[Zi.v, - m v , g + Z i . w -

m v r g -1- Zi.v~

m v ~ g + Z~.vg4 - mv84g]L,] + 6 ~ [ M ~ + M~., + M~.v + M~.3 + M~.r + M~.w

+ Mi.w. + Mi.vgl + Mi.vg3 - cos(q~ + Aq~)lj Y~.~ - cos(q~ + A q v ) l r Y~.v - cos(q~)L, Y~.~ - sin(q~ + Aq,)l,(Z~., - m t g ) - sin(q~ + Aq,.)lv(Z~.,. - m,.g) -

sin(~)L~(Z~.~ - m s g ) - cos(q~ + Aq3)/~ Y~.s - cos(q~ + Aq~)/3. Y~.r

-

sin(q~ + Aq3)l~(Z~.~ - m3g) - sin(q~ + Aq3.)13.(Z~.3. - m s g )

-

cos(q~)(Lt( Y~.4 + I"'.4) - sin(q~)(L~(Z~.4 - m4g + Z ~ . 4 . - m4.g)

- cos(q~)(Ym7 + ( - YA:))L, - sin(q~)(Z~.7 - m7g + ( - Z A ) ) L , - cos(q~) × [Yi.v2 +

Yinv2' "]- Y~.v~, + Y~.v.3IL, -

sin(q~)[Zi.w - mv2g + Zinv~, - - mv2,g

+ Z~.v~, - mvg, g + Z.vg3 - mv.3g]L,] = 0

(53)

or. in simplified form:

6 4 [ M ~ + ) q ( 4 . q~. 4 . ~ . ~ . / ~ ) 1 + 6 ~ [ M ~ + f ~ ( 4 , ~ , 4 , ~ , i~./~)1 = 0.

(54)

Mechanics of Turin parallel robot

69

Because v a r i a t i o n s o f g e n e r a l i z e d c o o r d i n a t e s are n o t zero: 605 ~ 0;

6q~ ~ 0

(55)

it follows that:

M{ = - f ~ (05. q~. ~ . ~ . ~ . i~) = - [ M , . 2 + Min2" + M,.4 + Mm.' + M,.v2 + M~nv2. + M~ovg~ + M~.vg3 - sin(05 - 270 ° + Aq2)12 Y~°2 - sin(05 - 270 ° + Aq2.)l~ Y~'.2 - sin(05 - 270°)L~ Yin6 + COS(05 -- 270 ° + Aq2)12(Zi.2 -- m2g) + cos(05 -- 270 ° + Aq2.)12.(Z~.2.- m r g ) + cos(05 - 270°)L~(Z.6 - m6g) -

sin(05 - 270°)(L~(Y~.3 + Y~n3.))+ cos(05 - 270°)(Lt(Z~.3 - m3g

+ Z~.3. - m3.g)) - sin(05 - 270 ° + A q . ) h Y~o4 - sin(05 - 270 ° + Aq4.)/4. Yi.4. + cos(05 -- 270 ° + Aq4)I4(Z.4 - m4g) + cos(05 - 270 ° + Aq4.)I4(Z~n. - r e . g ) - sin(05 - 2700)(Y~.7 + ( Y ~ ) ) L , + cos(05 - 270°)(Z~n4 - m7g + ( - Z ~ ) ) L , - sin(05 - 270°)(Y~.w + Yinw. + Y~.v~ + Y,.vs~)L~ + c o s ( ~ - 270°)(Zmv~ - m v , g + Z~.vr - m v r g + Z~.vv - m v a g + Z.vg4 - mv~4g)L~]

(56)

M~ = -J~(05. q~. ~ . ~ , ~ . ~ ) = - [ M , . , + M,.,. + M, n3 + M,°3' + M~nv, + M, nv,.

+ M~.v~2 + M~.vs4 - cos(q~ + Aq,)ll Yi.~ - cos(q~ + Aql.)Iv Yin,. -- cos(q~)Lt Y~.5 -

-

-

sin( 6 +

Aq,)l,(Zinl

-

m t g ) -- sin(q6 + Aq,.)l,.(Z~.,. - m,.g) - sin(q~)L,(Z,~5 - rn~g)

cos(q~ + Aq3)/3 Y~.3 -- cos(q~ + Aq~)/3, Y~n3'-- sin(q~ + Aq3)13(Z~3 - m3g) sin(q~ + Aq3.)13.(zi~3.- m3.g) - c o s ( 6 ) ( L , (Y~.4 + Y(n4)) -- sin(6)(L,(Z~o4

-- m~g + Zm4. - m4.g)) - cos(q~)(Y~.7 + ( - YtA:))L~ -- s i n ( 6 ) × (Zi.7 -- mTg + ( - - Z ~ ) ) L , -

-- cos(66)(Y~v2 + Y~v2. + Y~.v~, + Y~.v~3)L,

sin(q~)(Zinv2 - mv2g + Z~nv2. - mv2.g + Z~.v., - m v . , g + Zi.v.3 - mv.3g)L~].

(57)

T h u s . c o m p o n e n t s o f i n e r t i a l forces a n d m o m e n t s are:

Yio,=--mlysl Zinl=--ml~sl Min,=--J.~ Yi.i ' =

- r n r gsl.

Zin,'=-ml.zSl.

Min,.=-Jr(/J,'

Y~o2=-m2ys2 Zi.~=-m:~s: M~.2=-J:~ Yi.2 " = --m2"Ysz

Zi.2"=--mr~s2.

Yin3 = --m3fis3

Yin3' =

Zin3 = - m 3 z s 3

-m3'Ys3.

E..=-m4j:s4

Zi.3.=-m3.fs3. Zi..=-m42"s4

Yi...=-m.j:s.

Z.. = -m.-~s.

Min2' =

Min3=-J343 Mi.3.=-J3.~3. Mi.4=-J4~4 Mi.4.=-J.~.

Y~.~=-m~ys5

Z~.5=-ms-~s~

M,.~=-J~

Y~nT=--m,j:s7

ZnT=--rnT~s~

M~.7=-J~

Yi.vl=--mvtj:A, Yi.vr = - m v l . P A r

Zi.v, = - - m v , f A I Zi.vt.=--mvlYAr

-J2'~2"

Minv,=-Jv,~, Minvl, = - J v l @ .

Yi,v2=-mwyA~ Z~.v~=-mv:e~ M~,v~=-Jv:~ Y~.w,=-mv~,Y,,2, Zi.v~,=-mvr~A:, M~,~:,=-Jvr~2,

(58)

Massimo Sorli et al.

70 --/~Vgl-gA3

Zi.vg~ = -- m v ~ A ~

miav8 t =

Yinvg2 =

- - mvg2-gA3

Zinvg2 =

--mvg2ZA3

M~nv~2 = - J v . 2 ~ 3

Yinvg3 =

- - mvg3-gA4

Zinvg3 =

- - mvgaZA4

Yinvg4 =

Angular

--Jvgl(.i04

Yinvgl ~

(59)

- - mvg4-gA4

and linear accelerations

are: (60)

-9st = - l, ( - - sin(q~ + Aq,))(~2)2 - It ~ cos(q~ + A q t ) ~s, = - / , ( c o s ( q ~ + Aq,))(0~) 2 - l,/i~ s i n ( ~ + A q , ) -gs,. = - / , . ( -

sin(ti¢2 + Aq,.))(0~) 2 - l,./i~ cos(q~ + Aq,.)

fs~. = - / , . ( c o s ( q ~ + Aq,.))(~2) 2 - l , . ~ sin(q~ + Aq.,) -9s2 = - / 2 ( c o s ( q ~ - 270 ° + Aq2))(0~) 2 - 12~ sin(q~ - 270 ° + Aq2) ~s2 = / 2 ( - s i n ( q ~

- 270 ° + Aq2))(t~) 2 + 12~ cos(q~ - 270 ° + Aq2)

-9s2. = - 1 2 . ( c o s ( ~ - 270 ° + A q 2 . ) ) ( ~ ) 2 - 12.~ sin(q~ - 270 ° + Aq2.) ~s2. = / 2 . ( - s i n ( q ~

- 270 ° + A q 2 . ) ) ( ~ ) 2 + 12~ c o s ( ~ - 270 ° + Aq2.)

-gA, = -9M' = -9S5 = - - L , ( - - s i n

~)(~)2

(61)

_ Lt,~ cos

~At = ~M' = fS5 = - - L t ( c o s q~)(~)2 __ L,/i~ sin qi -9A2 = 9/,2' = -9S6 = - - L , (cos(q~ -- 2 7 0 ° ) ) ( ~ ) 2 -- L~/i~ sin(q~ - 270 °) ~A2 = ~/`2' = fS6 = L t ( - - s i n ( ~ -9s4 = - L , ( - s i n --

-- 2 7 0 ° ) ) ( ~ ) 2 + L , ~ cos(q~ - 270 °)

(62)

q~)(~)2 _ L , / ~ c o s q~ - / 4 ( c o s ( q ~ - 270 ° + A q 4 ) ) ( ~ ) 2

l . ~ sin(q~ -- 270 ° + Aq4)

~s4 = - L ~ ( c o s

q~)(~2) 2 - L , ~ sin q~ + 1 4 ( - s i n ( ~

- 270 ° + A q 4 ) ) ( ~ ) 2

+ 1 ~ cos(q~ - 270 ° + Aq4) -9s4. = - L , ( - s i n

q~)(0~) 2 - L , ~ c o s q~ - / . . ( c o s ( q ~

- 270 ° + A q 4 . ) ) ( ~ ) 2

s i n ( ~ - 270 ° + Aq4.)

-/4'/i~

~s. = - L , ( c o s

q~)(~6) 2 - L , ~ sin q~ + / 4 . ( - s i n ( q ~

- 270 ° + A q ~ . ) ) ( ~ ) 2 (63)

+ 14~ co(q~ - 270 ° + Aq4.) -9s3 = - / 3 ( - s i n ( q ~ -

+ A q 3 ) ) ( ~ ) 2 - 13/i~ cos(q~ + Aq3) - L~(cos(q~ - 2700))(002

L~/i~ sin(q~ - 270 °)

~s3 = - 1 3 ( c o s ( q ~ + A q 3 ) ) ( ~ ) 2 - 13~ sin(q~ + Aq3) + L , ( - s i n ( q ~ + L~

cos(q~ - 270 °)

-9s3. = - I t ( - s i n ( q ~ - L~

- 270°))(t~) 2

+ Aqr))(~) 2 - I~

cos(q~ + A q r ) - L , ( c o s ( ~

- 270°))(~) 2

+ Aq3.))(0~) 2 - Irt~ sin(q~ + A q r ) + L , ( - s i n ( q ~

- 270°))(~) 2

sin(q~ - 270 °)

~sr = - / r ( c o s ( q ~

+ L~/i~ cos(q~ - 270 °)

(64)

Mechanics of Turin parallel robot

71

M,

inP

YH

Gp HI

O Y

Fig. 12. Workpiece on the platform.

fA3 = fA4 = fS7 = fS7 = - - L , ( - - s i n q~)(~)2 _ L , ~ cos q~ - L,(cos(~ -- 270°))(~) 2 -- L ~ sin(ql -- 270 °) fA3 = £A, = :/ST= fS7 = --L~(cos q~)(~)2 __ L ~ sin q~ + L~(-sin(qi - 270°))(~) 2 + L , ~ cos(~ - 270°).

(65)

In this way all necessary components for calculation of driving torques from equations (56) and (57) are determined. Let us, in addition, show how external force and moment acting on point H0 should be formed. In Fig. 12 a workpiece on the platform is shown. The main vector of all external forces reduced to H0 is given as: F0 = G o + Finp -~- GT -~ Finx

(66)

where Gp = mpg (weight of the platform); GT = mwg (weight of the workpiece); E.p = - m p a . o (inertial force of the platform); E ~ T = - m w a c r (inertial force of the workpiece) and act = a.o + to × (to x rcO + o~ × rex (acceleration of workpiece mass centre). The main m o m e n t of all external forces reduced to point H0, is given as: M0 = Mi.T + Minp + r c T × (FinT + Gx)

(67)

where Mi.p = inertial m o m e n t of the platform, and Minx = inertial moment of the workpiece.

Massimo Sorli et al.

72

4.2. Forming dynamic model Complete dynamics of a Turin parallel manipulator, i.e. equations for driving torques for all three branches M~ and M~ (] = 1, 2, 3) can be written in the usual form: M=H.~[+h+Mg where M is a vector of driving torques M{ and M~ (j = 1, 2, 3), and H is an inertial matrix, h is a vector of centrifugal and Coriolis forces, /i is a vector of internal accelerations /~ and t~ (/' = 1, 2, 3), Mg is a vector of gravitational load. The following notation will be used for internal coordinates, velocities, accelerations, and driving torques:

ql---*ql; 41~?11; /]I~41; MI~M,

q~q3;

4f--'4~; 4~--'/]~; M~--*M3

q~--*q4; 4~--'44; 4~/]4; q~qs;

q~?ls;

M~---~M4

/]~--*/]5; M ~ M 5

Now, we have: MI = Hi, •/]1 + HI2"/]2 + Ht3"/]3 + H,4"/]4 + HI5"/]5 + H16/]6+ hi + Met M2 = H2, •/]1 + H22"/]2 + H23"/]3 + H24"/]4 q-- H2s"/]5 + H26/]6-'l- h: + MV

M6 = H6,'/]~ + H62 "i]2 + H63 "/]3 + H64"/]4 +/-/65 "/]5 + H66/]6 + h6 + Mg6. In order to realize the control synthesis it is necessary to obtain the elements of matrix H, vector h and vector Mg. In the following text the procedure for determining H, h and Mg is described.

Phase 1. Geometry (a) Position vectors l~H~(xhs,YHs, zhg) of points Hj (j = 1, 2, 3) are determined by solving system (3) and (4) (b) Using (8) position vector rH (X, y, Z) of point H0 is determined, as well as Euler's angles.

Phase 2. Kinematics (a) System (16) is solved and the angular velocity of platform and linear velocities of sliders oJ(og~, co,, ~ox), (7~, ~2, (~3 are obtained. (b) System (22) is solved and the angular acceleration of the platform and the linear accelerations of the sliders tb(o~, cb,., ~bx), ¢~1, ~2, ~3 are obtained. (c) Using (24) the acceleration all0 (aH0.~,aHo,, all0:) of point H0 is obtained•

Phase 3. Dynamics External load (a) The main vector of all external forces F0(F0x, F0:., F0_-) reduced to point Ho is determined. (b) The main moment of all external forces M0(M0~, M0,, M0:) reduced to point H0 is determined. Reactions in spherical joints (c) X reactions ~ , j = 1, 2, 3 are determined using (29). (d) Solution of system (32) gives ~ and Z), j = 1, 2, 3, in spherical joints• External forces External forces Y~Aiand Z~,jacting on thejth mechanism branches are determined using equations (33). Driving torque (a) Inertial moments and forces, existing in equations for driving torques (56) and (57) are found from (58) and (59), while corresponding accelerations are obtained using (60)-(65).

Mechanics of Turin parallel robot

73

(b) Coordinates that exist in (56) and (57) are given by equations (38)-(46). (c) Now, by substituting expressions for internal loads, coordinates and inertial forces and moments into (56) and (57), we obtain expressions for M~ and MS 0' = 1, 2, 3), in which only internal coordinates q~ and q~ (j = 1, 2, 3), internal velocities ~ and (6 (j - 1, 2, 3), internal accelerations ~ and ~ (j = 1, 2, 3), gravitational acceleration g and geometrical and dynamical parameters of mechanism exist, i.e. we obtain the following system: MI = M, = Ma (q~ . . . . .

qr, q~. . . . .

t~6, #, . . . . .

~6, g,

geometrical and dynamical parameters of mechanism) M~ = M2 = Mr(q, .....

qr, i1~ . . . . .

~16, ~]~, . . . , ijr, g,

geometrical and dynamical parameters of mechanism)

M 3 = M6 = M6(q, .....

q6, ~1~. . . . .

~16, i } , , . . . ,

~6, g,

geometrical and dynamical parameters of mechanism). Elements o f matrix H, vector h and vector M s are obtained simply by adequate grouping of the corresponding elements. 5. S I M U L A T I O N RESULTS The robot behaviour is simulated using parameters of the realized mechanism [32]. Drawing of one branch of the mechanism with parts denotation is shown in Fig. 13, while corresponding masses and moments of inertia are given in Table 1. Moments of inertia are expressed relative to the part mass center and axes o f coordinate frames. A zero moment of inertia indicates that this component of the m o m e n t of inertia does not participate in the mechanism dynamics, m~ and my denote the position o f mass center expressed relative to the part coordinate frame. The masses of shafts 4 and 5 were considered zero because both shafts do not move (except rotation). The moment of inertia about shaft axis was added to the inertia of the corresponding m o t o r rotor. Part 15 consists o f ball slide and the corresponding rod with spherical joint. In Fig. 9 it is denoted as vertical rod Aj//j. Parts 9' and 12' are ball bearings belonging to the mechanism parts 9 and 12, respectively. As a basic workpiece a cylinder with mass m w = 3 kg and moments of inertia I x = 1.800 k g m m 2 I~ = L = 3.400 k g m m 2 was supposed. Also, one set o f simulation results was performed for a larger workpiece having double mass, i.e. mw = 6 k g , and appropriate moments of inertia: I x = 6.075 kgrnm 2, L = L = 10.200 kgrnm 2. The platform motion was simulated where point H0 moved along straight line between points A and B. At point A the platform was horizontal with coordinates o f H0 expressed in the world coordinate frame as: x = 0, y = 0 and z = 115.21 m m and Euler's angles: tp = - 9 0 °. During motion the Euler's angles and coordinates of H0 changed Table I. Mechanism parameters

5 6 7 8 9 l0 Il 12

Mass (kg) 0.000 0.000 0.098 0.046 0.047 0.064 0.203 0.071 0.036

13

0.171

14 15 9' 12'

1.326 0.030 0.032 0.020

Part number 4

.Ix

J,

J-_

mx

m,

(kgrnm2) 0.000 0.000 70.884 31.964 33.524 !. 178 131.026 0.000 0.539 0.000 12027.4 0.000 0.000 0.000

(kgmm2) 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 6038.25 0.000 0.000 0.000

(kgmm2) 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 6038.25 0.000 0.000 0.000

(mm) 0.000 0.000 - 0.952 - 2.0!9 - 1.946 0.000 3.558 0.000 0.000 0.000 0.000 0.000 0.000 0.000

(mm) 0.000

0.000 14.216 30.272 29.187 0.000 - 28.213 40.000 0.000 0.000

7.500 0.000 0.000 0.000

74

Massimo Sorli et

al.

80

Fig. 13. One mechanism branch.

simultaneously. At the end, point B coordinates were: x = 5 mm, y = - 5 ram, z = 125.21 mm and tp = - 9 8 . 6 °, ~ = 81.4 °, 0 = - 9 8 . 6 °. The platform travelled with constant linear (~ = 1.25 mm/s, p =-1.25mm/s and ~ = 2.5 mm/s) and angular velocity (~b = ~b = 61= - - 0 . 0 3 7 5 rad/s). The movement lasted 4 s. In the following figures, showing trajectories of the joint torques, the same presentation structure is adopted. The single figure contains three diagrams, each for one mechanism branch, i.e. for mechanism branches in planes H i , / I 2 and I/3, as shown in Fig. 1. Each diagram has two lines: a solid line for joint 1, and a dashed line for joint 2. The position of joints 1 and 2 within the mechanism is clearly denoted in previous figures. In Fig. 14, the driving torques for simulated movement and empty mechanism, i.e. without workpiece, are shown. Figures 15 and 16 show trajectories for driving torques for workpieces of masses mw = 3 kg and m w = 6 kg, respectively, and for twice shorter movement, i.e. for movement lasting 2 s.

Mechanics of Turin parallel robot

.-. 2.0 ~(a)

2.0

75

m

(b)

z

"t

o

= 0.0--

0.0

- -

I

I

I

I

1.0

2.0

3.0

4.0

-2.0

0.0

I

I

I

I

1.0

2.0

3.0

4.0

-2.0 0.0

Time (s)

2.0

Time (s)

(c) Joint 1

.... o

Joint 2

0.0

I

I

I

I

1.0

2.0

3.0

4.0

-2.0 0.0

Time (s) Fig. 14. Trajectories o f the joint torques for mw= 0 kg, all link musses regular.

From all the diagrams it is obvious that this robot design possesses very good dynamic characteristics. The trajectories of driving torques are very smooth and not very sensitive to variations in payload and trajectory dynamic parameters. Thus, this mechanism design is very convenient for control purposes.

2.0 - -

2.0

(a)

m

(b) A

B

z~

Z

o.o

o.o

-2.0 0.0

I

I

I

I

0.5

1.0

1.5

2.0

Time (s)

2.0

-2.0

0.0

I

I

I

I

0.5

1.0

t.5

2.0

Time (s)

B

(c) ~

Joint 1 Joint 2

0.0--

-2.o o.0

I

I

1

I

0.5

1,0

1.$

2.0

Time (s) Fig. 15. Trajectories of the joint torques for mw= 3 kg, all link masses regular, movement lasts t = 2 s.

76

Massimo Sorli et al. 2,0

2.0

(a)

(b)

0.0

g o.o -

-zo

0.0

I

t

I

I

0.5

1.0

1.5

2,0

-2.0

0.0

I

I

0.5

1.0

I 1.5

2.0

Time (s)

Time (s)

2.0

I

B

(c) ....

Joint 1 Joint 2

0.0

-2.0 0.0

I

I

t

I

0.5

1.0

1.5

2.0

~ m e (s) Fig. 16. Trajectories of the joint torques for mw= 6 kg, all link masses regular, movement lasts t = 2 s.

6. C O N C L U S I O N S The Turin parallel r o b o t is a new, low inertia manipulator consisting o f three identical and supposed to independently driven branches carrying the joint platform. Each branch o f 2 D O F has a specific double parallelogram mechanism enabling positioning o f the actuators on the r o b o t base and reducing m a n i p u l a t o r inertia. The r o b o t is intended to be used as an active platform for holding a workpiece during manufacturing, allowing an effective control o f contact forces. In such a case, a tooling r o b o t with p o o r e r performance in terms o f dynamic accuracy can be used. In this paper a detailed analysis o f the r o b o t performances was performed. The geometry o f the parallel r o b o t was analyzed first, deriving the complete relations for direct and inverse geometry. Then, relations for velocities and accelerations were derived, and finally, a complete dynamic model o f the r o b o t has been formed. Some characteristic simulations were performed to illustrate the r o b o t ' s g o o d dynamic performance. Acknowledgement--This work has been funded by Italian Research Council (CNR) in the frame of the "Progetto

Finalizzato Robotica".

REFERENCES

1. Stewart, D., Proc. Instn Mech. Engrs, 1965-66, 180, 371. 2. Gough, V. E. and Whitehall, S. G., in Proc. 9th Int. Automobile Technical Congress F.I.S.I.T.A., pp. 117-137. Institute of Mechanical Engineers 1962. 3. McCallion, H. and Truong, P. D., in Proc. 5th World Congress on Theory of Machines and Mechanisms, 1979, pp. 611-616. 4. Fichter, E. F., Int. J. Robot. Res., 1986, 5, 157. 5. Arai, T., Cleary, K., Nakamura, T., Adachi, H. and Homma, K., in Proc. IEEE Int. Workshop on Intelligent Robots and Systems, 1990, pp. 205-212. 6. Cleary, K. and Arai, T., in Proc. IEEE Int. Conf. on Robotics and Automation, Sacramento, CA, 1991, pp. 566-571. 7. Nakashima, K., Kataoka, M., Miyahara, K. and Fujimori, J., in Proc. 23th Int. Syrup. on Industrial Robots, Tokyo, 1993, pp. 821-826. 8. Reboulet, C. and Robert, A., in Proc. 3th Int. Syrup. in Robotics Research, Gouvieux, France, 1985, pp. 237-241. 9. Fujimoto, K., Tadakoro, S., and Takamori, T., in Proc. IECON'90, 1990, pp. 427-432. 10. Earl, C. F., and Rooney, J., ASME J. Mech. Transm. Automn. Des. 1983, 105, 15. II. Hunt, K. H., ASME J. Mech. Transm. Automn. Des. 1983, 105, 705. 12. Gossclin, C. and Angeles, J., A S M E J. Mech. Transm. Automn. Des. 1988, 110, 35. 13. Gosselin, C. and Angeles, J., A S M E J. Mech. Transm. Automn. Des. 1989, 111, 202.

Mechanics of Turin parallel robot 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33.

77

Merlet, J. P., Traitb, des Nouvelles Technologies, Sbrie Robotique. Hermes, Paris, pp. 13-45. lnoue, H., Tsusaka, Y. and Fukuizumi, T., in Proc. 3th Int. Syrup. in Robotics Research, Gouvieux, France, 1985, p. 321. Thorton, G. S., in Proc. 1EEE Int. Conf. Robot Automation, Philadelphia, 1988, p. 437. Merlet, J. P. and Gosselin, C. Mech. Mach. Theory 26, 77 (1991). Clavel, R., Proc. 18th Int. Syrup. on Industrial Robots, Lausanne, 1988, p. 91. Pierrot, F., Dauchez, P., Uchiyama, M., Iimura, K., Unno, K. and Toyama, O., in Proc. 1st Japanese-French Congress o f Mechatronics, Besancon, 1992, p. 1. Simon, J. P. and Betemps, M., in Proc. Int. Workshop on Sensorial Integration for Industrial robots SIFIR '89, Zaragoza, 1989, p. 261. Romiti, A. and Sorli, M., Sensor and Actuators, 1992, 32, 531. Sorli, M., Zhmud, N., Sensor and Actuators, 1993, 37-38, 651. Ferraresi, C., Pastorelti, S., Sorli, M. and Zhmud', N., Proc. Int. Syrup. on Robotics and Manufacturing I S R A M "94, Wailea, Hawaii, 1994, p. 95. Nguyen, C. C., Antrazi, S. S., Zhou, L. and Campbell, C. E. Int. J. Robot. Automat., 1992, 7, 133. Romiti, A. and Sorli, M., Proc. 3rd Int. Conf. on Simulation in Manufacturing, Turin, 1987, p. 67. Romiti A. and Sorli, M., in Proc. Int. Workshop on Sensorial Integration for Industrial Robots SIFIR '89, Zaragova, 1989, p. 394. Romiti, A. and Sorli, M., in Proc. FAMOS Workshop, Besancon, 1990, p. 181. Romiti, A. and Sorli, M., in Proc. 23th Int. Syrup. on Industrial Robots, Barcelona, 1992, p. 437. Ceccarelli, M., Ferraresi, C. and Sorli, M., in Proc. 3rd Int. Syrup. on Measurement and Control in Robotics ISMCR, Turin, 1993, p. BmllI19. Sorli, M. and Ceccarelli, M., in Proc. 6th Int. Conf. on Advanced Robotics ICAR, Tokyo, 1993, p. 147. Romiti, A. and Sorli, M., Posizionatore spaziale ad arehitettura parallela. Italian patent. Romiti, A., Sorli, M. and Zmhud', N., in Proc. 3rd Int. Syrup. on Measurement and Control in Robotics ISMCR, Turin, 1993, p. BmlIll. Ferraresi, C., Montacchini, G. and Sorli, M., Int. J. Robot. Res. (in press).

Zusammenfassung--Der "Parallele Torino Roboter" ist ein paralleler Manipulator, dessen bewegliche Platform 6 Freiheitsgrade aufweist. Die Platform ist mit drei doppelten Parallelogramme iiber drei Kugelgelenke und prismatischen Gleitf'fihrungen, dessen Achsen normal zu den Machanismusfl/ichen sind, verbunden. Die spezifiesche L6sung erm6glicht die Stellung der Servomotoren auf dem Robotergestell, was die Minimisierung der inerzialen Parameter erm6glicht. Im Artikel werden die Geometrie, Kinematik und Dynamik des Mechanismus analysiert. Das komplette dynamische Modell des Roboters wurde ausgefurht und das Benehmen des Roboters simuliert.