~&&anwn
and Machine
Theory. 1973. Vol. 6. DP. 437456.
Computer-Aided
Pergamon
Automatic
Press.
Printed
in Great
Brltam
Design*
C. Bona% C. GallettiQ and A. LucifrediO Received
19 April 1973
Abstract After a survey of the design process to underline the different stages in which the use of a computer can be utilized with profit, some programs developed to assist the mechanical designers in their job are discussed. These are organized into an integrated system made up of a supervisor (MLINK), two basic languages (MEDES and TEADI), and several post-processors which are briefly described. Further improvements of the system are also discussed concerning new programs to be developed and new types of hardware to be adopted. introduction THE MAIN target
of the research illustrated hereafter was to improve the quality of a mechanical design and to reduce the time from the settlement of performance specifications of a new machine to the moment at which a working prototype is available. The research led to the definition of an integrated package of programs to cover those areas in the design and in the construction of a prototype that experience had proven to be more critical or more promising. The following is a list of the programs envisaged: Number and Type Synthesis
-Construction of automatic handbooks with graphical and procedural information: mechanisms data bank (TEXTE) -Analysis of an act of plane motion (AMOTO)
Functional Dimensions
-Precision point synthesis (BPOINT) -Synthesis by mathematical programming (OTMEC) -Cam design (PROTCAM, CAMTA, ACIN) -Gears and envelopes (INVIL, INGR) -Synthesis by trial and error (ACIN)
*Submission of this paper was invited by the Editor for inclusion in this special issue. This paper is a revised version of lecture notes for a seminar held at the International Centre for Mechanical Sciences (CISM), Udine, Italy (CZSM Lectures 150, Springer-Verlag, Wien) 1972. Sing. C. Olivetti % C. S.p.A., Ivrea, Italy. Ilstituto di Meccanica applicata alle macchine, University of Genoa, Genoa, Italy. 437
438
Structural Dimensions
- - S t r e s s analysis (STRESS, S T R U D L , INSTR, OUSTR) - - C o m p u t a t i o n of geometric and dynamic properties of "2½D"* bodies (GEMAS) - - D y n a m i c analysis (VELAC, ANDIN, FORZE)
Reliability Analysis
- - T o l e r a n c e analysis (TOLAN) --Overall layout analysis (GROUP)
Automatic Drawings and N/C Programming
- - 3 D drawings (PROIE) - - C h a r a c t e r drawings (CARAT) - - N / C programming of: • Gears and envelopes (INVIL, INGR) • Cams and automatic lathe cams (CAMTA, PROGRAMSIN5E) • Contouring, scribing, milling (TEADI post processors)
As the reader can see, practically all stages of the project can be assisted by appropriate programs. As no particular knowledge about the use of the computer could be supposed for potential users, one of the main specifications settled for the system was great versatility and simplicity in use. This led to the adoption of a video-display¢ as the main input-output device; to the development of a supervisor, " M L I N K " , to be able to link from any program of the system to any other; and to the development of two graphic languages, " M E D E S " and " T E A D I " , to facilitate the description to the computer of the mechanism or of the part to be studied. Before going into a detailed description of these languages and of the other programs, a few words must be said about the hardware used. The initial configuration was an IBM 1130 with 16K words of core memory, two IBM 2315 500K word disks and an IBM 2250 refreshing display. A modem and a 2400 bode line connected this computer to an IBM 360/65, but very soon it became evident that the increased power of the system did not pay the extra costs because of the very low efficiency of the link and the large amount of core storage requested on the large computer. Therefore the core storage of the 1130 was expanded to 32K and the linkage to the IBM 360[65 was dropped. All of the system, the supervisor and the two basic languages, have been developed using basic graphic software developed to minimize the storage requirements.
The Supervisor (MLINK) This program can be considered as a switch to jump to and from any program of the system. As it gains control of the CPU, the page shown in Fig. I appears on the display screen• This is a list of the programs available, any of which can be executed by indicating its name with the light pen. Any name can be added or deleted at any time by hitting the command with the light pen and typing the name on the display keyboard. Any program written with the standard M L I N K exit routine can be aborted by hitting any key of the functional keyboard. This action returns the control to M L I N K . *It is customary to refer to those tridimensional bodies where all the characteristics of interest refer to parallel planes as "2½D"bodies. +In these notes we refer mainly to one specific hardware configuration;however the same philosophy has been successfully used with a different kind of computer and display unit, as briefly discussed later on in the paper.
439
Figure 1. As the files created during the session are saved, this procedure turned out to be very helpful in recovering from any wrong command which aborts a program in execution. MLINK constitutes for the user a simple tool to access any program of the system or to link from any program to any other and therefore is the connective tissue of the system as a whole.
The Language for Describing Plane Mechanisms (MEDES) This language is used to introduce into the computer the description of the mechanism to be studied. Any type of plane mechanisms composed of the basic building blocks shown in Fig. 2 can be easily described with this program.
~,w.lla c,llmtllr~ ~ w . tt i l l I a ~ l i i
¢m~m~ml ~:~ ~a~14 N 1 l L m [ 1 1 ~ t ¢'r~m1[ a~.uL, 111~,[nw~ ¢Mim*~*.~ laMI A ~ mmm~ J mq~
*a. m
tl mmlu[iK
dimi s m ~ m ~ i o o ~ r n ~ m a m [ i
t
Figure 2. The description of the mechanism is represented in the computer by a data structure in which all the elements of the mechanism, as well as their functional dimensions and how they are interconnected with each other, are recorded. To build up this data structure, the operator has only to indicate the element he wants to add and to answer the questions which appear on the screen as a consequence. Figure 3 gives an idea of the description of a simple mechanism.
The Language for Describing Plane Shapes (TEADI) This language is used to introduce into the computer the description of plane bodies whose contours are described with straight lines and circles.
~ °
"1'1 C'D
441 The user operates as at a drafting board, with t~!~li~er.~¢¢,that, instead of taking a ruler or a compass to draw a line or a circle, he indicatrs in a menu on the screen the corresponding symbols. This activates the appropriate part of the program, which asks the user to indicate with the light pen or to type through the keyboard the elements or the information needed to complete the definition. Figure 4 # y e s an idea of the description of a simple part. Figures 5-8 illustrate some of the possibilities of the language which help the definition of figures composed of repetitive parts. The possibility of recording in a data bank the data structure of any figure to be added to that in course of definition gives a pleasant flexibility and power to the language which is appreciated in the case of complex figures with repetitive parts.
~"
~. . . .
~i~ ~
.L 6
~
~6
6i
t [
.-.,,)~..+~_;
~_t: t l
~'~
Ill :.~'."t'1
1'~
""
t
L
~': . L U _ 2 ' _ : _ I J _ ~
"II ,.'~-.~-a-
Figure 4. Construction of Automatic Handbooks with Graphical and Procedural Information: Mechanism Data Bank (TEXTE) Figures 9-14 show some possibilities of the text editor program. This program has been conceived to give the possibility of building and updating with ease pages containing alphanumeric, graphic or procedural information, to create a data bank. This program allows the user to compose a text and to memorize it on an appropriate file. The text can be composed of written information, which can be typed in from the display console, or by graphical information like the structure of mechanisms or the shapes of mechanical parts. These will be rebuilt by retrieving the associated data structures by scanning the corresponding files. Any formula, procedure, name, or graphic item inserted in the text can be defined as a message entity and by pointing the light pen to it one can jump directly to a program
442
J
0
) ~
~
/
,..~,
i~ ,llliAi i
Figure 5.
Figure 6.
i\
ff
l
i 1\
\\ "
I
/ / ~ ~ "
i
T
]
j
i 0 ' L:L
] Figure 8.
Figure 7.
Figure 9.
443
<
,:
a"
~r
" t
*
Figure 10.
i
Figure 11. associated with it. In this way it is easy to build a data bank in which it is simple to make a selective research of any item. Figure 9 gives an example of a search in a file of typical mechanisms. Figure 10 appears after having selected the straight line generator type. Here again the list of typical straight line generators could be easily updated. Figure 11 shows the trajectories generated by the mechanisms of Fig. 10, while Fig. 12 has been taken while the mechanisms were in movement. Figure 13, which appears after having selected the first straight line generator, gives information on this type of mechanism recalling the
Figure 12.
Figure 13. programs provided by the system which will accept as input the data structure associated with it. In this way it is simple to "'assemble" a handbook in any field, with the interesting feature that any formula reported can be directly computed by calling an appropriate subroutine, which is done simply by hitting with the light pen the formula to be executed. This was a feasibility study which proved the effectiveness of the approach but which has been suspended because of the lack of mass storage on the computer used and because a real profit can be gained only if the terminals can be decentralized in order to be very close to the designers" working place.
445
Figure 14. Analysis of an Act of Plane Motion (AMOTO) A program of this kind has been presented by IBM in a paper by Vitaliano and Woo of the New York Scientific Center. The idea is to define the motion of the body to be driven through some successive positions, for instance giving the positions of two points of the body, to find any intermediate position by interpolation and to write an interactive graphic program that, on the basis of the previous information, computes the trajectory of any point indicated by the user on the moveable plane. In this way it is easy to isolate by successive trials those points of the moveable plane whose trajectories are easily mechanized, like circle points, points moving on a straight line, or any other locus for which there is a known mechanism producing a trajectory of that type. An interesting development could be to give the possibility of visualizing the trajectory not only of any point of the moveable body, but also of any point of any mechanism having two degrees of freedom connecting the moveable body to the fixed frame. In this way it would be possible to find the motion generator searched not restricting the choice only to the class of four bar or slider crank mechanisms, but extending the search to compute the final dimensions with the desired precision. To be efficient this approach needs a very high interactivity rate between the user and the program and this is possible using a display and programs similar to those presented hereafter. Precision Point Synthesis (BPOINT) Figures 15 and 16 compare the results obtained by a designer after several months of trials using only drafting techniques and those obtained with the computer in a few seconds of computation time. These results have been obtained by using a program written by Professor Sandor's team at Rensselaer Polytechnic Institute[5], to which, by means of MEDES, we have added the possibility of displaying the results. The designer used a six bar linkage, while, still at the first trial, several usable four
446
Figure 15.
Figure 16. bar linkages were generated by Professor $andor's program. B~ moving the precision points selected, several other solutions could haxe been proposed to the designer.
Synthesis by Mathematical Programming (OTMEC) In the practical design environment, the synthesis problem rarely is expressed as a precision point problem; but precision point techniques, intuition or a systematic analysis of the act of movement are often the only means to give a starting point for synthesizing the real mechanism by optimization techniques. A search of the optimization algorithms available and some practical experiments have shown direct search[l] techniques to be very attractive. A program is being written which uses MEDES to compute the trajectories of the synthesized mechanism for every new set of values of its functional dimensions while a pattern search algorithm drives the search in the parameter space. The objective function, that is the function which characterizes the performance requested of the mechanism, is coded in an external subroutine which must be written by the user following some simple rules and included into the program when this is executed. With this approach a mechanical coder with 58 free parameters has been recently synthesized. This coder has a cam as principal input, seven secondary inputs (4+3) to modify the mechanism in order to position two output shafts in any of 16 equally separated positions for the first and any of 6 positions for the second. The optimization required 10min on a CDC 6600 computer to reduce the maximum error of the two outputs to less than 1°, which was considered an acceptable target. Although these times can be considered satisfactory, other studies are in course to improve the optimization algorithm either by also using gradient information or by switching between different algorithms when the optimization process loses efficiency (more recent experiments have also shown very attractive a method proposed by Nelder and Mead[2] based on simplexes).
Programs for the Design and Production of Cams This is the simplest problem of mechanism synthesis as there are infinite degrees of freedom and the problem can be reduced to the computation of the envelope generated by a simple form, the follower, in its motion rclatbe to the cam plane. For the most
447 usual follower geometries, standard prograirrs:laave be~n prepared that give directly the design of the cam. the pressure angle and curvature diagrams, and even a paper tape to drive an N/C machine (Figs. 17-19).
Figure 17.
.
Figure 18.
Figure 19.
"Tw:~
.a48
This can also be done when the follower is not a simple lever but any kind of mechanism which can be described by MEDES. This is done by inverting the movement by a post-processor of M E D E S to find the locus of the center of the follower seen on a plane which rotates at constant speed around the cam shaft tFigs. 20 and 21).
Gears and Envelopes Figures 22-25 show the different steps for the computation of an envelope. A generalized program has been written, in which the shape of the body generating
Figure 20.
Figure 21.
449 /" '.
..\.
\, \ ,/ /
Figure 22.
Figure 23.
O Figure 24.
Figure 25.
the envelope can be described by TEADI and the motion by MEDES, giving a mechanism that generates the desired motion. The program produces a visualization of the resulting envelope and, if desired computes the coordinates of the envelope curve. This can be drawn on a plotter or punched on a paper tape for an N/C machine in the case the envelope is to be cut, as for a gear.
Synthesis by Trial and Error--Kinematic Analysis by MEDES Figures 26-30 show different phases of a kinematic analysis program based on the data structures created by MEDES. After having described the mechanism structure, the OPTION lightbutton selects the page of Fig. 26. From here different possibilities are envisaged, one of which is to add some members and another is kinematic analysis. In the kinematic analysis prog] ,,i
i
~ZZA
Figure 26.
Figure 28. M.M,T. Vot. 8 No. ¢-=-C
Figure 27.
450
ram there is the possibility of changing any dimension of mechanism and seeing the ne~ configuration or position, or to ask for a step by step change of any input quantit,~ or dimensions (even more than one at the same time). ~Figs. 27 and 28.) Every position is recorded; therefore, at the end of the movement any quantity of the mechanism tangles, pivot trajectories, distances, etc.) can be visualized as a diagram (Figs. 29 and 30).
,
ii
Li
i
!
I
i
~i/f ~"
\,
/ /
i
i
..... i Figure 29.
i
! \~,/
I ! I
Figure 30.
The synthesis process can be carried on by utilizing the speed by which the effect of any dimensional variation on the mechanism reflects on any trajectory or other function performed by the mechanism.
Stress Analysis A stress analysis of bidimensional bodies can be done utilizing a standard finite difference program like the IBM S T R U D L (Structural Design Language). The discretization process is very long, tedious and error prone since for every triangle the vertices must be numbered according to certain rules, their coordinates measured and punched on cards and the incidences with neighboring vertices listed, and this often for some hundreds or even thousands of triangles. By using T E A D I to describe the body and the special program illustrated by Figs. 31-33, this process can be automated and carried on with the control of the operator, who only chooses the grid size, shape and boundaries. The choice of the density of triangles and the proportion of their sides is left to the operator skill. The result is a deck of cards that can be used directly as an input deck to the S T R U D L program. Other difficulties are faced by designers when they receive the output of the S T R U D L job, as this consists of a long list of the principal stresses and their direction at the center of each triangle. This means so many numbers that it is very difficult to
Figure 31.
Figure 32.
451 I
3
Figure 33. have a synthetic feeling of the situation. For this reason a second program is being prepared which gives a graphical picture of the situation, visualizing two vectors for any triangle scaled and directed as the principal stresses, the isostatic curves and the locus of the points having the same tr ideal to give an idea of the more critical zones.
Computation of Geometric and Dynamic Properties of "2~D" Bodies and Perspective Drawings Figure 34 shows another program which may be considered as a TEADI postprocessor. Starting with a figure described by TEADI and defining the thickness and density of every layer of which it is composed, the program visualizes the center of mass of the body and of its boundary, the principal inertia axes and computes the inertia moments with respect to any predefined axis.
I
Figure 34. Figures 35-38 show a new TEADI post-processor for 3D drawings. Any body which can be decomposed in plane layers can be described by TEADI and then visualized from any point of view, giving projections and perspectives and also the exploded view of the component.
Dynamic Analysis Other programs based on the MEDES description of a mechanism and on the same approach are being written to analyze the act of motion of mechanisms, i.e. to compute the first and second derivatives of the displacement of any point of any link. On this base, the program can solve the inverse dynamic problem, that is to calculate the
452 . . . . .
i
li~ii]] !
L~U-~A
Figure 36. Figure 35.
eUHT=" g
~;SrL
Figure 37.
~: - ~
OOO~: ~ e OOOZ; ~o0 QOO~T: Z
/d~NEILLA
Figure 38.
~,~z,~,
=~==~.,
reaction at every node and the driving force, given the act of motion and the other external forces.
Tolerance Analysis Another interesting post-processor of M E D E S is the program performing the worst case analysis, the sensitivity analysis and a statistical analysis of the effect of the tolerances on the performance of any plane mechanism. Starting with the description made by M E D E S (Fig. 39), this program requires the user to specify the tolerance bandwidth and the type of distribution for every dimension [uniform, gaussian, triangular (left or right skewed) or given as a tabulated function]. For every output quantity indicated the program computes: the variation of that quantity as each dimension varies one at a time (sensitivity analysis), the maximum and minimum values assumed by that quantity when the effects of tolerances build up in such a way as to minimize or maximize it (worst case analysis), and using a
455 e d u c a t i o n a l effort t o m a k e t h e d e s i g n e r m o r e c o n s c i o U s o f t h e p o s s i b i l i t i e s o f f e r e d b y m o d e r n c o m p u t a t i o n tools.
Acknowledgements~The programs described have been developed between 1969 and 1972 at OLivetti by a team for the evaluation of mechanical design, in collaboration with the Istituto di Meccanica applicata alle macchine of the UNiversity of Genoa. References [1] KAUPE A. F., Algorithm 178, direct search--Collected algorithms of ACM, Com. ACM 12, (1963). [2] NELDER and MEAD, A simple method for function minimization, Computer Jr. 7, 0965). [3] BONA C., PossibilitA di automazione nel progetto di meccanismi: ruso di visori grafici come mezzo di comunicazione frail progettista ed il calcolatore, Le meccanica italiana 49 (1972). [4] SMITH L. B., The use of man-machine interaction in data fitting problems, Stanford University Report SLAC 96-UC-32. [5] KAUFMANN R. E., KINSYN, an interactive kinematic design system, Proceedings of the Third World Congress for the Theory of Machines and Mechanisms, Kupari, Yugoslavia (1971). [6] VLIETSTRA J. and LUCASSEN J. B., Aedbar, a software system for designing and analysing planar bar mechanisms, Software Practice and Experience 3, 43-59 (1973).
Resume--Dans cet article on examine d'abord la procedure du project m6canique, en indiquant les diff~rentes phases qui peuvent ~tre am~lior~es d'une fa(~on substantielle & raide d'un calculateur et I'on discute quelques programmes d~velopp6s entre 1969 et 1972 chez Olivetti, en collaboration avec le "istituto di Meccanica applicata alle maccine" de rUniversit(~ de G~nes. Ces programmes ont et(~ con(;us ayant pour but final une grande versatilite et simplicit~ dans leur emploi, comme on voulait avoir entre les usagers potentiels aussi ceux ayant une connaissance tr~s reduite des calculateurs. (~a a conduit & radoption d'un video-display comme unit6 principale d'entr~e-sortie des donn6es. Les programmes sont organis~s sous forme d'un systeme integr~, qui consiste d'un superviseur (MLINK) et de deux languages principaux (MEDES et TEADI), connectes & plusieurs postprocesseurs. Le language MEDES (Figs. 2-3) permet 1'6tude des m6canismes plans d'une fad:on tres simple, parce que la description est donnee sous forme de "macros" 616mentaires: I'op6rateur dolt seulement indiquer I'eMment voulu et r6pondre aux questions apparaissantes sur 1'6cran de runite video. Le language TEADI permet la description de figures planes quelconques (Figs. 4-8) d'une fa(;on tout & fait semblable & celle employ6e dans les proc6dures conventionelles; il est aussi possible de m6moriser, modifier et reproduire les figures, darts positions arbitraires du plan, ce qui est tr~s utile darts le cas de figures complexes avec des 6Mments r~petitifs et de vues d'ensemble. Les postoprocesseurs permettent la construction de manuels automatiques avec des informations graphiques ou procedurales (TEXTE), I'analyse des acts de mouvement plans (AMOTO) pour les m6canismes d6crits par les processeurs pr6c6dents, la synth~se par points de precision (BPOINT) au moyen de la theorie de Burmester, ou par programmation math6matique (OTMEC) avec differentes methodes d'optimisation, le project et la production des cammes, des engrenages, la visualisation d'enveloppes de profils quelconques, ranalyse des sollicitations avec des programmes fond6s sur la m6thode des 616ments finis, des tol6rances (avec une proc6dure d6terministique ou statistique pour des differents possibles distributions des dimensions donn6es), I'analyse
456 dinamique (calcul des forces motrices g@n@ralis@es, des forces de liaison, des forces interieures), le dessin de vues d'ensemble des mecanismes aussi en trois dimensions, etc. Enfin on montre et discute d'autres ameliorations du systeme soit au regard des programmes, soit pour ce qui concerne I'adoption de nouveaux types de hardware.
453
Figure 39. Montecarlo analysis, the distribution of every output quantity indicated in the input phase (Figs. 40 and 41).
Overall Layout Analysis Figures 42 4.1 show an application of both languages MEDES and TEADI together. Starting with a description of the mechanism by MEDES, the shape of each part memorized in the TEADI file is associated to the corresponding element of the skeleton. As both programs are active, the skeleton position can be modified and this causes the redrawing of the parts according to the new position computed by MEDES. Every new position can in its turn be recorded in the TEADI files, where it can be manipulated with the usual options (that is scaled, measured, etc.).
Conclusions The main goal of the system of programs described was to provide a tool to make access to the computer easier for persons such as mechanical designers, who are not
Figure 40.
Figure 41.
(®
._. -~ ~=
Figure 42.
~..
---
it
I
!~X~..~=
Figure 43.
Jm~
7=/ Figure 44. programming experts. Recent experiments prove that this kind of program is suitable for realizing this goal by breaking the psychological barrier which seems to separate most mechanical designers from the computer. From experience acquired up to now, workshop people have been the most receptive to this kind of means, which have become a standard tool for N/C programming in the prototype workshop. Second to these, the programs most used are those which automate well-established design procedures such as cam, gear and spring design. Analysis and synthesis programs have been more difficult to introduce, probably due to the fact that the "return on investment" of these programs is less evident or less measureable. Nevertheless, several mechanisms have been designed in recent years with the aid of these programs with great satisfaction to the users in spite of the low availability of the system due to having one display shared among several users and the people who were implementing the system. More recently the program for tolerance analysis of plane mechanisms has been improved, adding the poss~ility of accounting for backlashes and further simplifying the input, This has led to a great improvement of its use as a standard document between the project and production departments. On the basis of the use to date, the authors' opinion is that these systems have proven their validity and can also be economically justified even without taking into account the "'intangible benefits" which they provide. It is also felt that the most important requirement for gaining a broader use and diffusion of this kind of tool is a large