Nonlinear optimization of planar linkages for kinematic syntheses

Nonlinear optimization of planar linkages for kinematic syntheses

Mech Ma~h. TheorlVol. 30. No. Pergamon NONLINEAR 4. pp. 501 518. 1995 Copyright ~ 1995 Elsevier Science Lid Printed in Great Britain. All rights re...

854KB Sizes 0 Downloads 49 Views

Mech Ma~h. TheorlVol. 30. No.

Pergamon

NONLINEAR

4. pp. 501 518. 1995 Copyright ~ 1995 Elsevier Science Lid Printed in Great Britain. All rights resevved 0095-1 14X95 $950 ~ (I.()0

0094-114X(94)00064-6

OPTIMIZATION FOR

OF

KINEMATIC

PLANAR

LINKAGES

SYNTHESES

JAVIER VALLEJO Department of Design Engineering, Escuela Superior de lngenieros (Basque Country University), C/Alameda Urquijo, s/n, 48013 Bilbao, Spain

R A F A E L AVIL]~S, A L F O N S O HERN,/~NDEZ and E N R I Q U E A M E Z U A Department of Mechanical Engineering, Escuela Superior de Ingenieros (Basque Country University). C/Alameda Urquijo, s/n, 48013 Bilbao, Spain

(Received 21 April 1994; in ret:ised form 18 August I994: receit'ed./br publication 18 October 1994)

Almtract--ln the present article a method is proposed for the optimum synthesis of planar mechanisms with lower pairs and a configuration of any type. It is valid for path synthesis generation, connecting-rod guidance, function generation, and any combination on the same mechanism. The idea is to start out with a mechanism of given dimensions that is required to satisfy the synthesis conditions, allowing the deformation of its component elements. The mechanism that least needs to be deformed will be the optimum according to this criterion. The parameters of the resulting error function are the lengths of the binary elements, the triple dimensions in the tertiaries, and the positions of the nodes linked to the frame. An expansion is used in which the first and second derivatives of the error function are calculated without the use of finite-difference schemata. This expansion enables one to use a Newton method, results of which are optimized by means of linear search, and facilitates better solutions with very few iterations.

1. I N T R O D U C T I O N

The design of mechanisms is a technological field of considerable interest, from the point of view not only of dynamic/kinematic analysis but also of synthesis. Synthesis provides methods for selecting and scaling mechanisms to meet certain requirements, e.g. to ensure that a point generates a particular path or that it passes through a series of particular positions (path ge,eration synthesis), or to coordinate the angles of the input and output components of the mechanism (function generation problem), or to situate an element in a series of defined positions (rigid-body guidance synthesis). The purpose of these procedures, once the type of mechanism (defined by its kinematic configuration) has been decided, is to scale its elements in such a way as to facilitate an exact or approximate verification of the synthesis conditions. Those methods of which the object is to select the right configuration are referred to as type syntheses, and are found exemplified in Refs [1-3]. Dimensional syntheses, which include the method here described, make it possible on the other hand to calculate the dimensions of the mechanism's components. Some of these methods result in mechanisms that verify synthesis conditions exactly [4-6]. Others are approximate, their aim being to minimize an error function and thus come closer to meeting the conditions ([3, 8 11] and the method here described). These approximate methods make possible a more general approach to the dimensional synthesis problem. In [10] there is a description of an optimum synthesis method that is the direct precursor of [I 1]. The same error function is used, but in addition the first and second derivatives are calculated by means of finite differences. In [10] this calculation was not included, and instead there was a simple approximation. The result was a robust method, based on the concept of deformation in the elements of the mechanism, for checking the generality and versatility of an error function. The drawback the number of iterations required before a solution was reached. In [1 l] there is a notable improvement, with fewer iterations: a more highly developed method looks more closely at the first and second derivatives of the error function. These derivatives are obtained via an expansion in which some terms are evaluated analytically, others by finite differences. In c o m m o n with the foregoing references, the present paper is based on deformation of mechanism elements. But now the error function is modified to include not only rod-type elements 501

502

Javier Vallejo et

al.

X1.',

F F C

1

H

D

f

/

J J

X,,, X,,

t,

(o)

I///

--x

'(b)

Fig. 1. (a) Planar mechanism with eight elements, one degree of freedom,and configuration(8R, 2P). (b) Modelling parameters. for discretizing the mechanism, as in [10] and [11], but also tertiary elements, the aim being to avoid problems of indeterminancy in the relative position of its nodes. It further includes the position of the nodes linked to the frame, heretofore not included as a variable. A closer look is taken at the relation between the deformations appearing in an element when a parameter is modified, and in consequence it has been possible to calculate the exact values of the first and second derivatives of the error function without recourse to finite-difference approaches. The examples offered show that the new algorithm, while not dispensing with the assets of the algorithms [10] and [1 1], enables one to solve complex problems more efficiently. 2. M O D E L L I N G OF M E C H A N I S M S The mechanism is represented by the nodes of its elements, which define the position of the kinematic pairs R (rotation pairs) or P (prismatic pairs), as well as a set of parameters that define restrictions of geometric type between them in a manner similar to that described in [10]. Parameters fail into three classes, according to type of restriction represented. A parameter of class b ("bar") is the distance between a pair of binary element nodes (e.g. L~, L2 or L3 in Fig. 1 below). Such a parameter is, of course, always positive. A parameter of class t ("triangle") is a triple H, M, and N of tertiary elements. H is vectorial, while M and N are scalar and positive/negative according to the shape of the triangle. Finally, parameters of class f ("frame") are the coordinates of the nodes connecting the mechanism to the frame. To each node connected by a pair R there correspond two parameters of class f (X,, X2i). To each node connected by a pair P there corresponds only one parameter, however, as shown below in Fig. 1 [node F of l(a)]. A mechanism will accordingly be defined by the coordinates of those nodes that are not connected to the frame (as many class-b parameters and binary elements as it may have), triples H, M, N for each tertiary element, and a set of coordinates for those nodes that connect with the frame. If Fig. 1 is taken as an example, the parameters defining the mechanism can be summarized in tabular form: Table 1. Group of parameters defining the mechanism in Fig. l(a) for its kinematic synthesis Class Parameter b (bar) L l, L,, L~ t (triangle) H I/M t / N I , H2/M~/N~ f (frame) Xtt, X u , XL3, X21, X22

Optimum synthesis of planar mechanisms

503

In [10] and [1 1] the only parameters used belong to class b, but in the present paper it will be shown that the class-f parameters make the method more versatile. In addition they facilitate a systematic search for the optimum position of the nodes connected to the frame, while those of class t ensure that the tertiary elements maintain the given relative orientation of their nodes [B, D, C and E, F, C in Fig. l(a)]. 3. E R R O R F U N C T I O N

The error function of (1) has already been proposed (see [10, 11]). It consists of the summation of a local error ~b~jthat has occurred at each position of the synthesis. This error is measured as the square of the increment of the dimensions of the elements onto which the mechanism is modelled, all of them parameters of class b, when the mechanism is deformed to satisfy the synthesis conditions beyond its range of movement as a rigid body. This increase in length is calculated at the position at which the sum of differences between deformed dimensions and reference dimensions of the mechanism is minimum. The position is referred to as the deformed position: b

f.

E w, E

j=l

j-I

(l)

i=1

Here s represents the number of synthesis positions, and wj is a position-weighting coefficient, which generally is taken equal to 1; b is the number of class-b parameters, L~ are the parameter reference values (lengths of the rod elements that model the mechanism), and l~j is the length of the element i when the rigid-body condition of the elements is violated and the linear elastic deformation is permitted in order to verify exactly the synthesis position j. The value of qSbjwill be zero in the event that the position j is a position of the rigid body. On the other hand, the mechanism defined by L~ that minimizes ~b will be an approximate solution of the synthesis. The error function also includes parameters belonging to classes t and f, and can be expressed as the sum of terms dependent on each class of parameter: (I) = ~ (~bhj+ ¢,~ + ¢~i)

(2)

j= 1

Figure 2 shows one of the solution mechanisms of a deformed-position problem, involving each of the three classes of parameter occurring in equation (2). To define the function ~b,jdefined in equation (3), we used terms similar to those of the function ¢Pbj- They represent distances between the nodes of a tertiary element, measured in the local reference frame x~, x2~ shown in Fig. 3. The parameter H~ is sensitive to node-relative orientation, so that the corresponding term of q~,i tends to increase when ho is opposite in sign to/4,.. Sign is opposite when the element flips, i.e. when the orientation of its nodes changes. We thus have ¢,j = ~ [2 "(h~ - H i ) 2 + (m~ - M~) 2 + (n U- N,) 2 + (d~ - D i ) 2]

(3)

i=l

Here t is the number of tertiary elements, while h~j, re!j, and n~i are class-t parameters in deformed position (as in Fig. 2). We have also: d~j= mCj+ n~j; D i = M~ + Ni;

(4)

Using similar criteria, we have for class f: ]

Cf~ = Y, (x~j- x~,)~

(5)

i=I

Here r can be 1 and/or 2, depending on the kinematic pair defined at the node. In the case of a pair P connected to the frame, the only parameter is X~. It is expressed in the local coordinate system of the node. If we substitute each of these terms into equation (2), we have for the error

Javier Vallejo et al.

504

synthesis positions

m

X13]

n2

h2j

C

J

,

px,2j,x,2j

h,j

C~

% Xui'X :'lJ

Fig. 2. Mechanism of Fig. 1 defined by b-, t-, and f-parameters,obliged to satisfy the synthesis position /, in the generation of a path through the point C. function:

@=dO~+@'+@f= £ w'[ i=, L (lij-L')2+ ~=~ £ (n~j- N~)2+ (do-

'

Di) 2] + ~ ( x r # - Xri) 2

]

(6/

i=1

Hence in order to calculate the value of @, it will be necessary to have the values of the b-, t-, and f-parameters of the mechanism at each deformed-synthesis position j. Observe that this function can be applied to mechanisms with any type of kinematic configuration and lower pairs. It can also be used for any type of synthesis (path, rigid-body guidance, function generation, combination thereof). 4. S O L U T I O N

OF T H E D E F O R M E D - P O S I T I O N

PROBLEM

The problem is to derive the coordinates ( x , , x2i) of the nodes in each synthesis position that minimize the function ~ of (7), which expresses the difference between the dimensions of the mechanism and those of another, minimally deformed mechanism in order to satisfy synthesis conditions: q~j = q~hj+ q~,j+ ~1~

(7)

To calculate this position we use a quasi-Newtonian method that calls for the introduction of the function gradient vector and of the Hessian matrix of the function ~b~. Accordingly it is necessary to expand the first- and second-derivative expressions of the Hessian matrix with respect to the node coordinates. The special form of the function q5t makes it possible to consider separately the parameters of the various classes, since they depend only on the coordinates of the nodes they define. The gradient

Optimum synthesis of planar mechanisms

505

vector and Hessian matrix expressions for class-b p a r a m e t e r s have already been derived [10, I1]. The Hessian matrix was called a g e o m e t r i c m a t r i x . It coincides with the rigidity matrix of a bi-articulated rod element in which we assume E A L t = 1, where E is modulus of elasticity. A is section, and L is length. The gradient vector is the resultant of the elastic-deformation forces acting on this element• F o r an element modelled with t-class parameters, the c o m p o n e n t s of the gradient can be deduced via the derivation of equation (3) for an element i. They a p p e a r when in the local reference frame {x~,, x2i} of a position j, shown in Fig. 3, we express the following: -2(m u - Mi) - (%-

Ni)

[ - 2 . nu(h u - Hi) - hu[(mi j - M i ) - ( n i j - N,)]] • d,/ {VO, }u = 2

(m,j -

[-2

. mi/(h u -

Hi)

M,)

+

2(n u - N i )

+ h,j[(m u -

Mi)

-

(8)

(ni, -

Ni)]]

"d u I

(mij -- M i ) - (n u - Ni)

2(h u - Hi) If now we derive the terms o f equation (3) for an element j, we obtain expressions for the Hessian matrix components. For the position i in the local reference frame of Fig. 3 we have therefore the following symmetric matrix: 2

hjd,TI

- I

2(h~+n~)d~7 2

-hju

2

[H,] 0 = 2

~



~

h u d u ~ 2(m u n i j - h b ) d i j " -hudi7

~

2(h ~ + m i 2i ) d o 2

- 1 ~

-2hindu I - 1 2hud,~ I 2

0 -2.%d,j

]

0 -- 2" miid,;

(9) i

0 2

F o r the terms corresponding to the class-f parameters we have the following expressions for the Hessian matrix gradient: {Vq~t }u = 2(x,i, - Xr, )

(] 0)

[/41] 0 = 2[I]

(1 1)

Each time the deformed-position problem is iterated, we construct the gradient vector and the

X 2i

///~\ /

\

\ .,. "\

//

X li

X2 J J J J

////

X1 Fig. 3. Local reference frame for a tertiary element.

Javier Vallejo et al.

506

overall matrix of the mechanism by a process of expansion, in the usual manner of structural analysis, of the vectors and matrices of the three types under study. These should be expressed in an overall reference frame and expanded to the dimension of the complete system, equal to twice the number of nodes in the mechanism. To expand them, we place zeros at the positions of the degrees of freedom of the nodes not belonging to the element. We then assemble: h

1

i=l b

i=l

i=1 .!

[H]j-- Z [Hb]~j+~ [H,]!,-+- E i=1

i:1

[Hr](,

(12)

i-I

When into these we have introduced P-type kinematic pairs and tie-restraint conditions, we solve the system of equations in (13). The result is a displacement vector {3 }q that for an arbitrary iteration q takes the following form:

[H]]. {6 }~ = - {Vq~}]

(13)

The vector {3 )q thus derived is not, however, applied directly to the node positions. Instead we use a linear search method to derive its optimum multiple ~q, which minimizes the function ~bj of (7). The new coordinates of the nodes in the iteration q + 1 may be expressed as follows: {X} q+lj = {X} q "~- ~ q { ~ }.q

(14)

This problem will again be looked at below, along with a procedure for including it within the general one used to minimize the function (I) for all positions instead of for each independently. The mechanism attains the deformed position when the following convergence criterion is satisfied: ~7" {Vq~}~. {3 }~
(15)

Here E is a very small value. 5. U N C O N S T R A I N E D O P T I M I Z A T I O N To search for a miniumum, we modify parameters according to a linear method. For a generic parameter Uk we have uF'

= U~ + ~ . A U ~

(16)

This allows us, on the basis of values in the qth iteration, to derive the value of Uk in the (q + 1)th approximation to the minimum. Here /~ is an optimum increment factor determined by a linear search in the parameter space according to the direction indicated by the variable-increment vector. This latter is derived by a second-order Newton method requiring the calculation of the Hessian matrix and gradient of @. It is important to bear in mind that we do not know the analytic expression of @ as a function of the parameters, and must obtain its value by solving the deformed-position problem. Consistently with equation (6), the function @ may be expressed as the summation of three functions depending on the b-, t-, and f-class parameters. The same procedure may be applied to the derivative. Differentiating with respect to Uk, we obtain for the parameters of class b

(

Oep~__2 ~ wi ~ (lv- Li)" ~ - - Yikfl c3Uk

j= t

i= I

(17)

Here Yik is a variable equal to l when Li coincides with U~. and otherwise equal to zero. This expression requires that we calculate the derivatives of the lengths/,./, in deformed positions and with respect to the parameters. Using the vector { U } to express the set of parameters, we can express this value as follows: c~l,j _

8Uk

lim I#({U}k)-I°({U})-lim l~-l,j ~v,~0 AUk Au,~0 AUk

Here {U}k is the parameter vector in Uk that has increased by AUk.

(18)

Optimum synthesis of planar mechanisms

507

S X2 J J

ALk

~ 0 k

J ////

"~

ALk

i

×~

Fig. 4. Components of the vector for class-b parameters.

Assume a mechanism in the deformed position at a synthesis point j at which it is necessary to evaluate the derivatives in equation (18). For a value of the parameter that has been increased by it will be necessary to solve again the deformed-position problem, in this case strongly nonlinear. But AUk is an increment tending to zero in (18). Hence owing to the variation of Uk, the node-displacement vector {6 }kj of the model in position j is simply the solution of the linear system

Uk

AUk,

[u],. {6 }kj= -(v~}kj

(19)

{vo}kj = {v~}kj + {v~,}kj + {VOr}kj

(20)

Here we have

From [10] and [11] we know the following. For a class-b parameter such as in Fig. 4, the components of the vector }kj, which contains the components that this parameter contributes to the gradient, are given by the expression

{V(Ob

2ALk

fcos0t

sin Ok - cos Ok -- sin For each tertiary element we must look separately at the variation in with equation (8) we have {V~b}k j =

Ok

(21)

Mk,Nk,and Hk. Consistently

hkj " ~ ki 1 {VqS,}kj = 2AM,

f

2

--hkj" dkj I --1 0

(22)

This is introduced into the local reference frame of Fig. 3, and corresponds to the variation in Mk. In the event that the parameter Nk varies, we have

f } --hk/" d~ l

{V~, }ki = 2ANk

-- 2 hkj" dk~ I 1

0

(23)

Javier Vallejo et al.

508 If Elk varies we have

2 • nkF d ki 1 {V~, }kj = 2AHk

f °}

0 (24) 2 • mk/" diil 0 -2 If now we carry out an analogous expansion with the class-f parameters, we have consistently with equation (10) {V~, }k/= 2AXk

(25)

Note how in Refs [10] and [11], as well as in equations (9) and (11), the Hessian matrix is independent of all parameters Uk. In consequence it will be this same matrix that corresponds to the coordinates of the nodes in deformed position. To obtain the gradient vector {V~b}x:swe have to expand the vectors of the elements in equations (21) and (25) to the dimension of the full system and summate them. The solution of equation (19) then gives us the value of {6 }kj in such a way that the new node positions, with Uk varying, are

{X}ki = {X}j + {6 }~j

(26)

With the vector of coordinates {x }ki we can calculate the 1,/({U }k) needed for equation (18). Once this process has been carried out for each Uk as per equation (17), we know the terms of the gradient vector {V~} of the error function in an iteration q. Since if it were used with AUk arbitrarily small we would have to take recourse to finite differences, we are obliged to modify equation (18). Figure 5 represents an arbitrary binary element i of the mechanism in deformed position j (/,), together with the node displacements when the parameter Uk is increased in AUk(6 I, 6 ~). The new length will be l~, which in the following manner can be expressed as a function of node displacements: li~ = li~[l + 2z{2" 1;;' + (6 12 • lij i)2]1,,2

(27)

By means of a Taylor expansion, and dispensing with terms of degree higher than 2, we have

l~:j=li,+ r1,+ _~ . l , [ ( 6 ~ 2 . l , ' )

-(v~,._

l,' ")q=/,+r~2+_~'.(vl,)21i7

(28)

If we substitute this into equation (18) we get lim c~liJ - lim ~27~2 + ~l at;~ ~0 (V~'2)2 3G a~.'~o AG

(29)

~k

V12

I Fig. 5. Displacement of the nodes of a binary element i for an increase in the parameter Uk.

Optimum synthesis of planar mechanisms

509

In view of the linear relation that obtains for small displacements between AUk and 6~2, from equation (29) we deduce that the second term tends to zero while the first is a constant. If the value of AUk is unity, we obtain directly the value corresponding to the derivative introduced into equation (29): ~l~j _ f~2

(30)

~G Here f~2 is the projection of the vector 6 ]2 on l~ for a unit increment in the parameter Uk. To calculate the second derivative with respect to any two parameters Uk and Up, we have the following from equation (17):

8Uk8~ -2j=,£ W,E,.= ~-~,pj\-3-~.~k-Ti k +(I,-L,) c?UkOV,

(31)

Here the only unknown is the second derivative of 10:

2l° OUkOU;

lim 1 au,.au,,~o,oAUkA----~p[I°({U}kp) =

lo({U }k) - lu({U }p) + I~({U})]

1

lim --[l~P-l~-l~+lo] au,..aup~ 0.0AUkAUp

(32)

These terms are very simple to evaluate by the criteria that have been used, for which reason the above-mentioned linear relation allows us to write

{6 }kpj=

{6 }kj + {6 }z

(33)

Here {6 }kpjis the displacement that results from simultaneously augmenting the parameters Uk and Up at the synthesis position j. If into equation (32) we substitute according to the series expansion in equation (28), we have 21,j _ 912" ~7~ ctUkdU, l~

(34)

Here v~2 and vP2 are the components perpendicular at positionj to the rod i of the vector determined by the difference in displacements at the ends of the rod for unit increments of the parameters Uk and Up (Fig. 5). In the case of class-t parameters we similarly derive the following expression for the first derivative: c~@, =

" .=

2(ho-Hi) ~ - ? ~ )

(mo M /~m~

Here 7~ takes the value 1 when the parameter U~ is exactly Hi, otherwise zero. 7~ and ~,~ behave similarly. The distance derivatives with respect to U~ can be expressed, consistently with Fig. 6, as follows: m,7

.

OUk

d,

Om~ OUk

-

0 Uk ~Uk

+

"

h~

di, (36)

Here f and ~7are the components of the node displacements expressed in the local reference frame MMT 30~B

510

Javier Vallejo

et al.

~('~/mini ,/ nil! ",, 2 Xli

~k

(~21

~k

V23 Fig. 6. Displacements of a tertiary element in local coordinates.

of the element, as in Fig. 6, due to a unit increment in Uk. Differentiating with respect to another parameter Up, we obtain the expression for the second derivatives: 020,

_2

2 ~-Tg

~-7,k)

2(h~-H,)--

(Om~ Yi~)(c~mij-7')+ (m~-M c32m~+ +t-~P

yu)

+(n~-N,)dUkcO-------~p+-~p--y,p--7,p]\c~Uk--y~--Tg +(do-D,)c3V,tgUp]

(37)

The second derivatives in equation (37) can be expressed in the local reference frame of Fig. 6: t~2h~ _ c~UkOU,

[d0(flk3 " f~ + fP3" ~7~,)+ m~(f~, • ~Tp~+ fp,. F~) -- h~. ~7~,. ~7~,] d i e

d 2m 0 _ ~uk~u,

[do(~73kl " 172Pl+ ~TPI' 172kI ) _ m,7" f k l . fPl -- h/j(f2kl " ~7~1 + "C~I" v~l)]d:~

2

0%

= [d,(~, • F~, + ~ 1 ' ~ , ) - n~. ~ , . ~ , - h,s(fL ~"~, + f~l' ~ , ) ] d o ~

c~26

_ ~ , . ~7~

(38)

Finally, for class-f parameters we have

C30f-- 2 £

OU,

1L

ws ~

(x m - X , )

63XriJ=2i~"L"ws ~f ~

(x m - X,)6 .~j

(39)

t~xmlOU,

Here is the component 6 m ~ of node i displacement for a unit increment in U~. Since second-degree terms cancel out, the second derivative ends up as follows: c~20 ~ i

J -2 OUl,.OUp

2., w i E L 3,';s'fig,s

j=l

i=1

(40)

r=l

With the values of the derivatives of the error function • we can construct the vector of the gradient {VO} and the Hessian matrix [oug].

Optimum synthesis of planar mechanisms

511

The solution of the system is

[~]~. {su}~ = -{v*}7

(41)

This gives us the increment vector {AU }, which enables us to calculate the values of the new parameters in the iteration q + 1, as shown in equation (16). We get the optimum value of fl by using the linear search method described below, which at the same time resolves the problem of obtaining the optimum factor a / o f (14). 6. L I N E A R

SEARCH

METHOD

The characteristic feature of the error function (1) introduced into equation (6) consists in differences squared:

*= ~, w~ ~ (u~/--U,): /-l

(42)

i-l

Here Ui is an arbitrary parameter of type b, t, or f. To make the synthesis problem as effective as possible it is necessary to resolve two iterative processes. One of these is overall, and concerns the optimal evaluation of the parameters. The other is local, within the first, and consists in calculating the deformed positions at which the error function (I) is evaluated. Each of these processes is part of a single scheme when the linear search method is applied. Once the vector {AU} has been derived in an iteration p then (as in [11]) we can calculate the values of the parameters in the following iteration by directly summating these value increments to the value they have in the current iteration. The deformed-position problem is then solved independently. With the linear-search method, the variation of the parameters in each overall iteration is expressed, in the manner of equation (16), as a function of the vector {AU } and a factor fl, which on being substituted into equation (42) will enable us to express (I) as a function of ft. If we then apply to (1) a one-dimensional optimization method we obtain an optimum factor fl* that allows us to modify the parameters in proportion to {AU} so that the value of (I) may be minimum. But we do not know the analytic manner in which (I) depends on the parameters, since the u 0 in equation (42) are calculated in each deformed position following the solution of a local iterative process that depends on the value of the parameters. In order to optimize (1) as a function of fl, we must solve the deformed-position problem, bearing in mind that the parameters depend on this factor. We are thus obliged to determine simultaneously the variation of the parameters, and all the deformed positions, that will no longer be independently calculable. When in each overall iteration p the parameters in fl {AU } are increased, the object being to minimize the difference between these and the u 0 calculated at the deformed positions (solution of the iteration p-1), a few displacements fl {6, }j are calculated. We obtain the displacements {5, }: by solving a system of linear equations like that of (19), taking into account that in order to calculate the gradient vector of this expression we substitute into equations (21)-(25) the increments of the corresponding parameters, which we have in the vector {AU }. By summating these displacements we obtain the following positions: {x }) = {x }: + fl {5~ }j

(43)

Here {x}j are the deformed positions of the solution of the former overall iteration. The positions obtained in equation (43) are not the deformed positions of the solution, since this is a strongly nonlinear problem. Rather {x}j are the basic positions for the local iterative process that will allow us to obtain these deformed positions. In each local iteration q we calculate displacements {5~}/ that when multiplied by a factor ~/(whose exact value we must calculate), are added to the node positions: {Y}: =

{x} 7 + ot7{6~}7

(44)

Here {Y }/are some of the intermediate positions necessary for calculation in each local iteration. In this manner we can express (1) as a function of a factor fl and as many factors ~/as there are

512

Javier Vallejo

et al.

synthesis p o s i t i o n s s in the p r o b l e m : (45) /=1

~=1

( Begin }

I

j=l,S Deformed Position Problem

{x)j

I

I s {~,)j ]=1, = -lUl~{V(p}

{x}I = {xL+ ~ { ~ j

~£]- ........ LOCALITERATioNI

I

j=1, S

[

I I=I,s

{~h1~= -[HI~.{Vg)

I ro.

al

,

~-/kin

I

oeq

' oa,o13

~o1~o~,

,

. ~aj

o1~~

"-

Ol3

,~ y~

I [cv)= (u,' I .

.

.

.

.

.

.

(

End

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

)

Fig. 7. Flowchart of the linear search process for a "'numlter" number of global iterations "p'.

.

.

.

.

Optimum synthesis of planar mechanisms

513

This we can do since each deformed position depends on the value of the ctj as well as on those of the parameters, which in turn depend on/3. In the function • of equation (45), to obtain the value/3 that minimizes it is to obtain the optimum value of the parameters, and to obtain the ~i that minimize it is to obtain the deformed positions. Each of the two problems is part of an overall problem, and their solutions are simultaneous. With this end in view we use a minimization method that cancels out the derivatives of O with respect to/3 and ~j. Although there are s + 1 variables, the second-order problem can be appreciably simplified in virtue of the special manner in which • depends on the ~j, independent for each position. If we differentiate equation (45) with respect to an arbitrary ~/we have ~O - L (uij(~j,/3) - (Ui +/3 • AUi)) ou-~° (46) We see that equation (46) depends only on ~j and/3, so that its derivative with respect to any other ~p, p not being equal to j, will cancel out: c~20

---0;

p#j;

~k OO~p

(47)

Hence the system of equations resulting from an application of the second-order minimization method would be as follows: 0 20 0 20 ~0 c ~ " A~j + ~ - ~ ' Aft 0~j' j = 1, s ,,~ (~ 2(I)

O 20

8O

a T " A/3 -

6/3

(48)

The second expression is the s + I equation of the system. This system is easy to solve, since the matrix of coefficients contains only null terms except for the main diagnonai, the last row, and the last column. In solving this we have the values Aft, which correct the node displacement effected in equation (43) for purposes of establishing the starting point, as well as A~j, for a better approach to the deformed position. Once we have these increments we can use the following expression to calculate the position of the nodes in the new iteration: {x}7 +' = {.~}i + A~{a~} 7 + Aft ~{3#}/

(49)

With the new positions it will be necessary to calculate new displacements and to carry out a new local iteration q until a convergence criterion is satisfied. The criterion applied in the local process is that when k/3 is less than a sufficiently small number, equation (15) be satisfied in all positions. When this is satisfied, they are the deformed positions. We conclude the overall process by checking whether the difference between two iterations in the value of • is sufficiently small. If it is, then further iterations are carried out to check that we are not dealing with a relative minimum. When a mechanism is synthesized, the problem may entail requirements in addition to that of satisfying movement positions. Examples are the maximum space to be occupied, and the maximum/minimum dimensions of some particular element. To consider some of these conditioning factors, lateral constraints were introduced in establishing the optimal synthesis. The minimization problem took the following shape: Minimize: Condition:

• = O({U })

(50)

U~< U,~< Up

(51)

The approach thus remains much the same. Once the increment vector has been calculated, the optimum/3 factor is restrained by the maximum variation admissible within the feasible region of the constrained variables. The following values are calculated for these variables:

/3',=(u'i- U,)laU, forAU,
foraU,>0

(52)

As limit we take the greatest of these. In the event that the limit of a variable is attained, it is determined whether the increment vector tends toward a violation of the restraint. If it does, the value of the component that corresponds to the restricted variable is cancelled out.

514

Javier Vallejo et al.

(a)

(b)

pq Fig. 8. (a) Initial mechanism, (b) solution mechanism.

Optimum synthesis of planar mechanisms

515

(a)

(b)

Q Fig. 9. (a) Initial mechanism, (b) solution mechanism.

\,

\

'\

\\

Ow

\ \

\

j~

J

J

\

j

l

©

J~ m

Optimum synthesis of planar mechanisms

(a)

517

\

,/

/

k

/



\

'\

\

\ \ \

"\

//

j

-\

Fig. I I. (a) Initial mechanism, (b) solution mechanism. MMT 30~("

\

518

Javier Vall~o et aL 7. E X A M P L E S

We now look at four syntheses solved by a c o m p u t e r p r o g r a m based on the foregoing method. They illustrate the general characteristics as regards synthesis type for solution and the type o f kinematic configuration o f the mechanism to be used. The case in Fig. 8(a) is a path synthesis. The mechanism is defined by five elements, three binary and two tertiary, and type-R pairs. The path points to be generated are on three straight lines, which are perpendicular in twos. In Fig. 8(b) we see the solution mechanism, as well as the approximate path resulting, generated by the node P. Figure 9(a) illustrates the initial mechanism and the rigid-body guidance synthesis that the nodes P and Q have to generate. The kinematic configuration is the same as before, but the t o p o l o g y is different. The difficulty with the synthesis is that the six initial positions are perpendicular to the final position. The solution in Fig. 9(b) was arrived at after 20 iterations. The third case is a multiple synthesis o f two mutually perpendicular paths in which the nodes P and Q must also be synchronized in their passage through the path positions. Figure 10(a) shows the basic mechanism, comprising two binary elements, three tertiary elements, and R-type kinematic pairs. We see the solution mechanism in Fig. 10(b). Figure l l(a) illustrates the case o f constrained synthesis. Here a quadrilateral is required to generate an elliptical path. The solution must have the three coupler nodes aligned. In Fig. l l(b) we see the solution that was arrived at following 30 iterations. 8. C O N C L U S I O N S The present paper has described an o p t i m u m dimensional synthesis procedure valid for planar mechanisms o f any kinematic configuration and synthesis type. Generality is achieved in virtue o f the error function type, the parameters o f which are the rod lengths, the dimension o f the tertiary elements, and the position o f the nodes relative to the frame. The iteration m e t h o d used consists in resolving two cycles, one o f which is referred to as the d e J b r m e d - p o s i t i o n p r o b l e m . On the basis o f this we define the value o f the error function, which in turn is minimized in the second loop. To calculate the derivatives o f the error function with respect to the parameters, a procedure was developed that does not require approximation by finite differences. The use o f linear search algorithms, with the direction o f the search determined by a second-order N e w t o n method, makes it possible to obtain minima with very few iterations. The possibility o f introducing side restrictions increases the flexibility o f the synthesis procedure, without an excessive increase in complexity. REFERENCES

1. 2. 3. 4. 5. 6. 7. 8. 9. I0. II.

N. P. Belfiore and E. Penestri, Mech. Mach. Theory 29, 177-193 (1994). A. C. Rao and C. N. Rao, Mech. Mach. Theory 28, [13 127 (1993). D. Vucina and F. Freudenstein, Mech. Mach. Theory 26, 553-563 (1991). P. A. James and B. Roth, A S M E J. Mech. Design 115, 552-559 (September 1993). C. W. Wampler, A. P. Morgan and A. J. Sommese, A S M E J. Mech. Design 114, 153-159 (1992). S. H. Tong and C. H. Chiang, Mech. Math. Theory 27, 143 155 (1992). S. Kota and S. Chiou, Mech. Mach. Theory 28, 777 794 (1993). R. Akhras and J. Angeles, Mech. Mach. Theory 25, 97 118 (1990). S. Krishnamurty and D. A. Turcic, Mech. Mach. Theory 27, 599-612 (1992). R. Avil6s, M. B. Ajuria and J. Garcia de Jal6n, Mech. Mach. Theory 20, 321-328 (1985). R. Avil6s, S. Navalpotro, E. Amezaa and A. Hernfindez, A S M E Mech. Design 116 (March 1994). Resum6--1ci on pr6sente une methode pour la sinth6se des mecanismes plains avec pairs inferieurs, rotation et prismatiques. 11est possible faire la g6neration des trajectoires, le guidage des elements rigides, et la coordination des angles d'entre&sortie, et aussi quelque combinaison d'entre eux. On cherche le mecanisme qui fi besoin de la deformation minimale pour verifier les conditions de la sinth~se, quand on permis de la deformation elastique aux elements qui forment le mechanisme. On pr&ente aussi un &ude detaill6 de l'optimization du erreur qui nous fi conduit fi un algorithme simple et efficace. Les examples present& donnent une id6e de l'amplitude du champ d'application des id&s ici present6s.