A GENERAL M E T H O D FOR S E N S I T I V I T Y A N A L Y S I S OF P L A N E MECHANISM Aleramo Lucifredi*
S O M M A R I O : L'articolo illuslra un me/odo genera& per I'analisi di sensibi/it~ nei meccanismi piani, particolarmente adatto ad un impiego con mezzi di calcolo automatico. La determinarcione dei coefflcienti di sensibi/#h viene effettuata per "macro", riducendo quindi al massimo lo sforzo e le conoscenze richieste al progettista. La soluzione de/problema viene ottenuta riducendolo a un sottocaso di analisi cinematica de/le ca/ene cinematiche generali equivalenti degli elementi semplici. Vengono delineall le app/icazioni al/'analisi delle /o/leranze ed all'analisi dinamica, per la determinazione delle forze (teorema dei /avori virluali) o della legge di moto (equazioni di Lagrange). S U M M A R Y : The paper describes a general method for the sensitivity analj,sis of plane mechanisms, particular/3, sttited for use with automatic computation facilities. The sensitMty coefficients are computed through "'macros", lhus greatO, reducing the effort and the background required b), the designer. The problem is solved by reducing it to a subcase of kinematic anaO,sis of the general equivalent kinematic chains of the macros. The method can be applied to tolerance anaO,sis, and to dynamic anal),sis in order to determine the forces (virtual work theorem) or the law of motion (Lagrande equations).
1.
Motivation.
The need to know the errors in the position(s) of the output member(s) of a mechanism, when the tolerances on the dimensions of the links are known, has necessitated the determination of linear relationships between the output error and the errors on each dimension. The relationship is linear since the errors are considered to be small and so they can be approximated by the differentials. Hartenberg and Denavit [1] present a general method for a generic system for which is given in an implicit form the relationship between the input tp, the output ~p and the dimensions q~: F(ql,
qo . . . . ,
q , , q~, ~o)= 0
In that case the variation A!p in consequence of variations Aqt of the parameters is given by "
aF/aqi
(1)
* Istituto di Meccanica Applicata alle Macchine, Universit8 di Genova. 2|4
Eq. (1), because of its generality, is not straighforward to use when applied to complex mechanisms, and other techniques [2] have been suggested for an easier soluti,n of the problem. The result can be applied, for instance, to the attributi,.n of tolerances for minimum cost [8], by imposing for a generic mechanism, in minimum cost conditions, tile following inequality:
h being the tolerance on the q; dimension and to, the tolerance on the !P dimension. The importance of Eq. (1) is not confined to the evaluation of the influ:nce of errors in the principal dimensiom of a mechanism on the output variable and therefore to the assignment of the tolerances to the various members as a function of the tolerance admitted for the output. It is very useful for many aspects of the analysis and sy~lthesis of mechanisms. Examples are two fundamental problems of dynamic analysis: 1) the computation of the driving, reactive, aild internal forces of a mechanism, when the law of motion and the resisting forces are known; 2) the computation of the law of motion, when the active forces are known. In the first case the virtual work theorem gives a syster0 o f algebraic equations obtained by eliminating one con. straint at a time in order to have one degree of freedon~ more than before, giving a (generalized) displacement Aqr and evaluating the (generalized) displacements of the points of application of the forces on the basis of relation (1). In the second case the Lagrange equations give as man!' differential equations as the free coordinates and such equations contain the derivatives of the variables giving the positions of the mass elements taken with respcd to the free coordinates [3]; here again these derivative~ are obtained with relation (1). Finally, as far as the synthesis of linkages is concerned recently methods have been developed based on the mini. mization of error functions which define the extent tc which the performance of the mechanism actually syn' thesized differs from the desired one [4]. For instanc~ having to synthesize a mechanism such that a point passe~ through m given positions x l , )'1; x2, .3'2; ... x , , , 3',, fo! m values of the input variables, we can write ill
E=
Y~
-
-
"
+
1
M ECCAN IC~
~.~. and y , being the coordinates of the points reached with the actual mechanism for the same m values of the input variable, A better mechanism than the actual can bc synthesized by varying the parameters in such a way as to decrease E ; using the gradient method as minimization strategy the following must hold good: Aqt
=
OE - - C Oq----~-
i = 1, ...,n
~acl therefore
~,x~ +
"
~,~ ]
~, to determine the variations Aq~ to be given to the arameters, the sensitivity coefficients Ox,/Oq~ and Oyk/Oqi ~>t be evaluated, that is the problem is reduced to the ]~r,~blem solved by Eq. (1).
~
2. Use of the <
inputs of one macro are obtained as outputs o f other previously defined macros [5]. Considering a generic macro of a mechanism, let X e l , Ne2, ..., X e m
be input variables for the considered macro
x , 1 , x , , , ..., xu r
be output variables for the considered macro
q q , ql2, ..., q%
be parameters macro
qex' q~2 "'" qez
be parameters for the macros necessary to define xe
considered
So: x~j = Xej(q~l, q% . . . . , qfi)
j = 1, 2, ..., m
x , ~ = x,k(q~ 1 , q~2' "'" qb,' x ' l '
x% . . . . , x , )
n
~i
I t
E
F
p(x,y~ " " ~
B
Fig. 1. [l'he input variables are the angle 0 and the coordinates [Bf the pivot B, while the output variables are the coordi[aates x andy of the moving pivot, which can be computed, ~,hen the parameters e and/4 are known, through the relations between the points of a rigid body. So a mechanism is described by connecting the various lnacros in series, that is operating in such a way that the
~EPTEMBER1974
the
and therefore
'!he sensitivity coefficients of a mechanism can be com~H~*d, as we said before, case by case, by tedious and ~c-consuming analytical or graphic means. i'he possibility of refering to simple structural elements fi~cros) that together define a plane mechanism of any c,,~nplexity greatly reduces the required effort and offers, iith the usual simulation languages, a very practical tool [t(,E: analysis. ;\ macro consists of one or more rigid members, connec't~J together by elementary pairs, which can be described by a system of relations defining the kinematic characteristics; such relations contain the parameters, that is the tr~cturally significant dimensions (length of links, setting ~iqle, etc.) and the variables. The variables may in general ~,: divided into inputs and outputs: input variables are th~>se whose values can be computed through macros other ihan the one under consideration, while output variables ~equire, to be numerically computed, the use of the relak,ns and of the parameters of the macro under stud);. ~o, considering for instance the Watt-2 six link mechanism ~f Fig 1, it is possible to identify a macro "crank M".
D ~
for
l dxa, = 1Z'~
~x.t~
dq,, +
m
O~u k
n
dxeh
OXeh Oq,,o dq~,o
and therefore )n
"
Ox,,k dqo, +
l
~Xuk l ~w ~Xeh
- -
(2)
This relation enables us to determine the sensitivity coefficient of the generic output variable x u , with respect to any parameter q (either q~ or qe) simply by equating all the other dqs in it with zero. In the previous expression two different kind of derivatives appear: - - the first kind consists of the Ox,,e/Oq~n and 8xue/OXeh defining the sensitivity coefficients inherent in the macro under consideration, that is referring to the parameters of the macro itself and to its input variables; - - the second kind consists of the Oxeh/Oq~,v defining the sensitivity coefficients of the input variables with respect to the parameters of the macros coming "before" that under consideration. Obviously the coefficients Ox~l,/Oq~,o can be obtained by evaluating the various dx~h, in the way described for the d x , , , , as a function of the macros coming before the one considered, and so on until all the macros composing the mechanism have been considered. So it is possible to calculate the sensitivity coefficient of a generic variable with respect to any parameter of the mechanism from the expressions of the sensitivity coefficients inherent in all the macros of the system. So the problem is to determine the sensitivity coefficients of the macros corresponding to large classes of mechanisms with respect to the internal parameters and to the input
215
variables, that is to. develop the analytical expressions o f the derivatives of the first kind appearing in Eq. (2); this can be done in ,carious ways, as will be shown later on.
a) crank x n = XA + l COS 9 yn =ya
3.
Computation of
the
sensitivity
+
I sin 9-
b) dyad
coefficients.
x c = XA + /a cos (7' + 2) It is generally possible to compute the analytical relations between input and output variables for the macros, as functions of the parameters. By way of example we quote the well known expressions for the crank and for the dyad (Fig. 2).
j'c ---.yA + Lt sin (y • 2) where Xn
cos 7 -~
--
XA
J ' n - - ff A
Lm
B
sin
7 =
lAn
2 -----arcos l~ + l T" m - - l ;2
21a./.
IA y
A
By differentiating the above expressions, as specified before, the desired sensitivity coefficients are obtained. H o w e v e r the differentiation, except in the case of the crank, is cumbersome, as will easily be understood, and gives very complicated expressions. Table I gives some of these expressions just to show this.
. B
Fig. 2.
TABLE I
OXB
0.~r
~XB
=1
=0
=0
=1
-
-
=
~B - -
COS tp
=--/sin
q0
Oxa CRANK
O9,n
ay.
0.J'n
= /cos 9
= sin 9
OXA
09
tan
~xc - -
Y --
--2 L,R
= - - la sin {3
axn
(1 + cos 7) - -
7
il
+ tan s --
2 2 2 cos"-2
2 (/a~--/A) COS y + tan~ - - (/AB + /a) COS y) 2
tan --
2 DYAD 1 -=-/a
s i n fl
Oy8
t
7 sin y tan T ~ +
2 1 + tan ~ --
2 2 cos 2 - 2
2 (IA•--/a)
sin ), + tan s - -
(/as
2
+/a) sin 7i ! /
(/a. +/a)2 __ l~
t
tan 2
2]6
MECCANIGt
It is much simpler to base the procedure on the deterruination of the velocity ratios r, defined as the ratios between the first time derivatives of two variables of the system considered. This concept, which apparently would not permit consideration of the variations with respect to the parameters, can be widened by considering the gejwral equivalent kinematic chain instead of a mechanism [6]. Here again the parameters q play the part of (input) variables of the mechanism, and they can be differentiated with respect to time and therefore the velocity ratios can .~till be defined9 When expressed as a function of the veh,cities of the variables in the general equivalent kinematic chain, relation (2) becomes
"
~,,k dq,, + ~,, x,,~ xo,,.
t
Oxe,, d, ,,o\ "
neric variable with respect to a generic parameter of the mechanism, knowing the expressions of the velocity ratios inherent in all the macros of the system, provided that every macro is reduced to an equivalent element allowing the attribution of velocities of variation to the parameters also9 Fig. 3 represents the crank, the dyad, and the slider in the equivalent configuration. Clearly, the equivalent configuration of the dyad and of the slider is identical, since only the definition of the output variables is changed. All the velocity ratios can be obtained from simple kinematic considerations, giving velocities to the 'variables of the equivalent system. So, e. g., for the dyad the following equation holds:
(3)
)
~Ac =
For this equation the remarks made in paragraph 2 xvirh reference to the use of macros are applicable and it i~ possible to compute the sensitivity coefficient of a g e
IA
dac
I [(/:8--/U)cos 9=c + sin(gsc-- 9ac)
-F(j,,~--ya) sin~Bc,'-}-~tBc--dAccOS(~AC--~nC)]
(4)
Is
~
Fig. 3
//qXc,yG
xB,yB
xA,yA
XA,YA
Fig. 4.
XB . 'V' ~~/ Fi.~. 6.
xc,Yc
~',tr
~g~
xs,Ys
TABLE n Crank
XB
ya
XA
1 0
0 I
ya ~n
XA,YA
cos -- dab sin
sin dan cos
Fig. 5.
|EPTEMBER1974
217
T A B L E III
DYAD
~sc
~ac
ye
XC
cos ~nc
c o s ~Ac
dacS
dncS
sin ~ c
sin qoac
dacS
dncS
cos ~Bc
cos ~ac
dacS
dncS
sin ~nc
sin ~0ac
sin qoac sin fpnc
sin ~nc cos ~ac
dacS
dncS
S
S
sin ~ozc cos ~pac
cos ~ac cos ~ c
sin q013csin ~oac
sin ~oac cos ~nc
sin ~pac cos q0nc
cos ~ A c c o s ~ n c
J'.,I
.x"B
S
J'Z~
cos ( ~ a c - ~o~c)
sin ~0zc
cos cpnc
S
5"
sin ~ac
C05 ~AC
S
S
~e
dacS
dncS cos ( ~ c - -
~Ac)
&c
&cS
dncS
$ = sin (~nc - - ~oac)
TABLE IV
SLIDER
qoac
~c
.YC
sin cpnc
COS ~AC
cos ~Ac cos ~Rc
sin ~Bc COS~Ac
dacD
D
D
D
c o s ~psc
sin ~AC
sin ~pac cos ~pBc
sin ~,tc sin ~pBc
d~cD
D
D
D
sin ~pBc
cos ~ac
sin cpnc sin qoac
cos ~PAcsin q~nc
dAcD
D
D
cos cpnc
sin ~pac
dacD
D
.k"A
9'.*
XB
sin qoac cos r
D cos ~ n c cos ~ a a
.yn
~e
D
sin (q~nc
BC
-
-
~Pac)
dnc sin ~oac
D dBc cos r
~c
dacD
D
D
D
sin 0Pnc -- ~oac)
1
COS ~Bc
sin ~0~c
d~cD
D
D
D
&c
218
MECCANIG~
and the sensitivity coefficients of cpac with respect to the variables appearing in Eq. (4) can be obtained by simply equating each given velocity to 1 and at the same time all the others to zero. So e. g. to compute a g a c / a x a it is sufficient to assume xa = 1 in Eq. (4), and zero all other velocities: so by definition aqgAC/aXa = ~CaC. Tables II, llI, IV (referring to Figg. 4, 5, 6 respectively), give all the sensitivity coefficients of the macros (crank, dyad and >lider) that are most useful for describing mechanisms ~,f practical use. Other macros can obviously be calculated in exactly the same way referring to the general equivalent kinematic chain for each and giving proper velocities to all the va:iables.
that is the. derivatives of the sensitivity coefficients can again be computed from the accelerations of the variables, giving zero accelerations and unit velocities to the inputs. Here again analytical expressions can be obtained from the acceleration analysis of the macros and the previous considerations about simulation languages can be extended to this case: by making k~ = 1 and xl = 0, it is possible at the same time to compute Kul and ~K=t/Sx~. Incidentally it is worth noting that the method of computing aKu~/Ox~ is also useful for deducing the analytical relations of computing numerically the quantities involved in minimization methods of error functions E using 2nd order gradient. Fig. 7 shows an example of an interactive program to
4. Generalization of rigid macros in a language. The foregoing considerations are still useful when using :imulation methods (analog computation) or simulation I ,nguages, either general purpose (CSMP, etc.), or specific, '.,," studying mechanisms. In the latter case, certainly the ~ost interesting from the practical point of view, simulation language offers the user a very congenial mode of ,:,:pression, updating, as required, the tables of data con~aining the values necessary to define kinematically the mechanism under study and the output variables o f the macros. A computation program designed to deal with ',l~e kinematics of the general equivalent kinematic chains .f the macros will permit the definition and study of any mechanism that can be deduced from that chain; a zero , clocity will be assigned for the parameters, while the i~q~ut variable(s) will assume the actual value(s) of velocity :~,~d acceleration. On the other hand, if the velocity and ,,!,e acceleration of the input variable are equated with :,:~:ro and the velocity of a parameter with 1, the velocities ,,l all the output variables will be the sensitivity coeffi,icnts of these variables with respect to that parameter. When the equations of the various macros have been v'ritten (and given to the computer in a proper form), <~nsitivity analysis is clearly a sub-case of kinematic analysis and requires no particular increase of computation programs. Lastly, in dynamic problems, when Lagrange equations arc used, it is necessary to know not only the sensitivity c,sefficients with respect to the input variable(s), but also *heir derivatives with respect to the input itself. In this case the generic output variable xu as a function of the input variable x~ is given, by definition, by xu = x i K , , ~,,~ being the sensitivity coefficient of x u with respect to xi k , = ktK,~ .
Differentiating with respect to time gives 92 a K . t
~'~ = ~r
+ xl
~x~
So, letting ~ = 0 and ~'; ~ 1, we have Xu--
SEPTEMBER 1974
Fig. 7. compute the sensitivity coefficients of the mechanism of Fig. 8 whose configuration and lengths have been taken from [9]. The interactive program uses a general program for linkages analysis. The example is self-explanatory; the data that the operator must introduce to perform the analisis have been underlined.
5.
Conclusions.
The remarks on the use of macros for evaluating the effects that the variations of the input quantities have on the output quantities in plane linkages, show that the computation is very simple and fully automatic as soon as the sensitivity coefficients inherent in the macros making up the mechanism have been evaluated; the most common mechanisms can be solved by using Tables II, III, IV as shown in the Appendix with an example. On the other hand, by solving in terms of velocities and accelerations the general equivalent kinematic chains of the simple elements, the inherent sensitivity coefficients can be evaluated very quickly, so that there are no particular difficulties involved in constructing Tables analogous to II, III, IV for more complicated macros [7]. The obtaining of analytical expressions by automatic means makes it possible to use this method with digital computers for solving numerous problems of mechanics of machinery.
Appendix. .Example. Consider again the six links Watt mechanism of Fig. 1, where ~x/~ll has to be computed.
8x
~X
0~
0X ( ~
OXD
~
03D)
cOW
219
ATTENTIONE LEGGO IN 13
NUMERO ELEMENTO DI INGRESSO : AL re&NOVELLA 4 VARIAI.UNGHEZZA 9 ANGOLO? RISPONDERE 0 0 I RISPETTIVAMENTE
o_~ ATTENZIONE LEGGO IN I3 SE ELE.MENTO DI USCITA = 0 STAI~PA LA INTERA SITUAZIONE NUMERO ELEMENTO USCITA=
l._E~
COEFFICIENTE ANGOLARE=
DERI'VA TA ANGOLARE=
.0002
-.0005
FINE ANALISI SENSIBILITA? NO DIVERSO INPUT? Sl ATTENIIORE LEGGO IN I3 NU.rIERO ELEMENT0 DI INGRESSO : COPPIA 6 VARIA LUNG.I 0 LUNG.E? RISPONDERE 0 0 1 RISPETTIVAMENTE
_L
ATTENXIONE LEGGO IN 15 $E ELEMENTO DI USCITA = 0 STAMPA LA INTERA SITUAZIONE
NUHERO KLErOENTO USCITA: 15 COEFFICI E.~TE ANGOLARE-
.025 |
DERIVATA ANGOLARE:
-.O00C
FINE ANALISI SENSIBILITA? NO "-~I VERSO I ~'PUT?
N..A ATTENZIONE LEGGO IN 15 SE ELEHENTO ,')I USCITA : 0 STAMPA LA INIERA'SITUAZIONE NUMERO ELEMENT0 USCITA:
i_s PERNO l.! COEFFICIENTE SECONDO X:
-1.0925
COEFFICIENTE SECONDO Y :
-.3825
OERIVATA SECONDO X:
.0103
DERIVATA SECONDO Y:
-.0272
FIPE ANALISI SENSIBILITA? ~IOP 00011
Fig. 8,
From Table I I :
80 a yD
0x
a~
- - / 4 sin V)
--
az~
= cos ~v
--
all
sin X /3 sin ( 0 - - X)
---- sin
Therefore: F r o m Table I I I : O#
OXD
cos Z la sin (0 - - X)
REFERENCES [1] R. S. ]-IAR'rZN~ZRG, J. D•NAVIT, Kinematic synthesis of linkages, Me Graw Hill, 1964, pag. 315 220
ex
[ c~xcos~
~ ' l = / . 4 sin ~0 [la sin (O - - X) + / 3
si~gsin~ 1 sin ( # - - X)]
[2] K. LAKSHMINARAYANA,R. G. NARAYANAMURTHI,On the analysis of the effect of tolerances in linkages, Journal of Mechanisms, Vol. 6, no 1, 1971 [3] A. E. KOBRINSKn, Dynamics of mechanisms with elastic connections and impact r Iliffe Books, London, 1969 MECCANICA
[4] A. J. NEc~I, A relaxation and gradient combination applied to tbe computer simulation of a plane four bar chain, Trans A S M E , Journal of Engineering for Industry, Vol. 93, no 1, 1971, pag. 113 [5] G. M. AcAcc[^, C. U. GALZ.ETrI, A. L. LUCIFaEDI, Sulla definizione di un linguaggio per la descri~ione di meceanismi, Rapporto Istituto di Meccanica applicata alle Macchine, Genova, 1973 [6] G. N. SANnOR, On the loop eqnations in kinematics, Seventh Conference on mechanisms, 1962 [7] C. U. GA~-LETrI, A. L. LUCIFaEDI, Analisi di sensibilit~ nei meccanismi articolati piani, Rapporto Istituto di Meccanica Applicata allc Macchine, Genova, 1972 [,~] F. H. SVECK~IAaT, Caludation of Tolerance Based on a Minimttm Cost Approach, Trans. ASME, Vol. 94, seric B, no 2, pag. 447, 1972
,SEPTEMBER 1974
[9] R. BEYEa, The kinematic synthesis of mechanisms, Chapman & Hall Ltd, London, 1963 [10] D. CORDEMAl%H. MABI]~, Development of design dJartsfor use in predicting tbe effect of Jolerances and clearances on mechanical error in four bar linkages, A SME B, paper 72, Mech 7 [11] R. WINrRUY, R. ANDEaSON, C. GNIT.KA, Analysis of elastic machinery with clearances, ASME B, paper 72, Mech 37 [12] S. Du~owsKY, On predicting tbe dynamic effects of clearances in planar mechanisms, _&SME B, paper 72, 2~r 91 [13] S. DUBOWSKY, On predicting the dynamic effects of clearances in one-dimensional closed loop systems, ASME B, paper 72, Mech 92 [14] F. BUCKENS, The effect of clearances and backlasb in high speed mechanisms, IFTOMM international symposium on linkages and computer design methods, Bucharest, June 7-13, 1973, paper C-4, Vol. C
221