9 INTRODUCERE

1
INTRODUCERE
1.1. Disciplinele inginereºti în era calculatoarelor
Competitivitatea industrialã în societatea informatizatã are la bazã trei
coordonate fundamentale care sintetizeazã cerinþele cele mai stringente ale societãþii,
calitate (Q de la quality), cost (C) ºi termen de livrare (D de la delivery). Aceste
trei “componente ale succesului” nu pot fi stãpânite fãrã utilizarea memoriei enorme,
a capacitãþii de procesare rapidã ºi a modului de interacþiune confortabil cu
calculatoarele.
CAD (Computer Aided Design), CAM (Computer Aided Manufacturing) ºi
în general conceptul CAX (Computer Aided “X”) [COIFFET93], sunt tehnologii
deja de uz curent, fãrã a cãror utilizare, dezideratele enunþate mai sus rãmân utopice.
În sfera educaþiei, apariþia noilor tehnologii a produs mutaþii majore, atât în domeniul
metodelor (Didactica), cât ºi în domeniul conþinutului. Desigur, în prima categorie,
CAX a luat forma a ceea ce îndeobºte numim “Predare asistatã de calculator”, cea
mai “fierbinte” aplicaþie fiind actualmente tehnologia ODL (Open and Distance
Learning). În domeniul conþinutului, o mare parte din discipline ºi-au schimbat
denumirea din “X” în “CAX”, adaptându-ºi conþinutul în consecinþã. În plus, s-a
impus introducerea unor noi discipline în categoria “Fundamentale”: Bazele
Calculatoarelor, Bazele Informaticii, Programare etc. Obiectivul acestora a fost de a
furniza studenþilor competenþele practice necesare la celelalte discipline cuprinse în
planurile de învãþãmânt. Toate aceste schimbãri majore au fost impuse firesc în
Universitãþi de mutaþiile importante din sfera economico-industrialã ºi mai ales de
revoluþia produsã în cercetarea ºtiinþificã. Termenul “firesc” este perfect justificat în
condiþiile definiþiei Universitãþii, care în multe þãri este chiar legiferatã: “Universitatea
10 BAZELE CAD
este o instituþie de Învãþãmânt Superior bazatã pe Cercetare” (Research Based).
Desigur, schimbãrile amintite au avut loc în toate þãrile, dar în legãturã cu contextul
socio-economic local, astfel cã rezultatele sunt nuanþate, deºi diferenþe majore se
constatã numai între þãrile bogate ºi cele sãrace.
În þara noastrã, industria vastã, dar adeseori necompetitivã la nivelul anului
’89 a cunoscut un declin drastic în ultimii zece ani, cu implicaþii dramatice în plan
socio-economic. Informatizarea ºi robotizarea industrialã, prezente de mult în þãrile
industrializate, sunt mult rãmase în urmã la noi.
Sistemele CAD / CAM / CAE majore, pe platforme hard superperformante,
înregistreazã foarte puþine instalãri la noi în þarã ºi ca atare sunt puþin cunoscute.
Universitãþile tehnice, cu unele excepþii, sunt încã destul de rupte de mediul industrial,
iar cercetarea ºtiinþificã în parteneriat cu industria este ºi ea într-o continuã scãdere.
Pe de altã parte, schimburile Universitare cu þãrile occidentale s-au intensificat
constant ºi au fost principalele forme de contact cu tehnologiile ºi cercetarea ºtiinþificã
de vârf. Este suficient sã se menþioneze în acest context programul TEMPUS,
care însemnat mult pentru Învãþãmântul Superior din România.
În aceste condiþii, schimbãrile în sistemul Universitar de dupã 1990 au
fost puternic impulsionate de comparaþia ºi decalajul faþã de sistemul occidental
ºi mai puþin de evoluþia industriei sau economiei româneºti. Modernizarea
disciplinelor ºi a metodelor de predare prin utilizarea intensivã a calculatorului
sunt elemente dorite de mult ºi au fost introduse primele ºi cu repeziciune.
Un exemplu elocvent îl constituie specializãrile de inginerie (atât cele vechi cât
ºi cele noi). În ultimii zece ani a apãrut o serie de discipline noi în zona “Fundamentelor”
destinate instrumentului de lucru principal - calculatorul: “Graficã Asistatã de
Calculator”, “CAD”, “CAD-CAM”, “Modelare 2D”, “Modelare 3D”, “CAE” etc.
Toate aceste discipline se regãsesc în planurile de învãþãmânt occidentale ºi acesta a
fost un motiv suficient ca ele sã fie imediat acceptate ºi la noi. În primii ani, cursurile
amintite au utilizat in tensiv soft-ul AutoCAD, cel mai accesibil modelor geometric în
þara noastrã, fie cã disciplina s-a numit Graficã Asistatã, CAD, CAD-CAM, “Modelare
2D/3D” sau alte denumiri. La nivelul anului 2000 însã, aceste discipline au o identitate
clarã, care impune o abordare mult mai nuanþatã..
În acest capitol se prezintã o concepþie integratã a pachetului de discipline
fundamentale “CAX” din sfera ingineriei, menit sã creeze o delimitare clarã între
discipline, utilã în optimizarea planurilor de învãþãmânt ºi a programelor analitice.
Pentru a înþelege rolul CAD, CAM, CAE ºi în general CAX, este necesarã
examinarea diferitelor activitãþi ºi funcþii care ar trebui realizate în procesul de
proiectare / fabricare a unui produs, denumit generic “ciclul produsului”.
Ciclul produsului cuprinde douã procese principale (fig. 1.1): proiectarea ºi
1
1
I
N
T
R
O
D
U
C
E
R
E
Fig. 1.1.
Marketing
Cerinþe
proiect
Specificaþii
proiect
(caiet de
sarcini)
Studiu de
fezabilitate
Concepte
proiect
Model de
analizã
Proiectare
Analizã,
optimizare
Evaluare
proiect
Docu-
mentaþie
proiect
Planificare
proces
fabricaþie
Planificare
producþie
Proiectarea
sculelor
Programare
NC, CNC
Expediþie Ambalare
Control
calitate
Producþie
12 BAZELE CAD
fabricarea. Proiectarea începe cu “cerinþele clientului”, care sunt determinate în
mod sistematic, analizate ºi ierarhizate, dupã care sunt listate într-un document
denumit cerinþele proiectului. Acestea sintetizeazã în principal funcþiile produsului
care urmeazã sã fie realizat pentru satisfacerea “cerinþelor clientului”. Documentul
este întocmit pe calculator ºi este elementul care iniþiazã baza de date computerizatã
a noului produs. Pe baza acestuia se elaboreazã primele schiþe ºi idei încluse în
caietul de sarcini, în care sunt apoi analizate din punct de vedere complexitate,
compatibilitate cu tehnologia existentã, preþ ºi performanþe ºi se recomandã chiar o
soluþie principialã. Acest caiet de sarcini este, de asemenea, întocmit computerizat
(cu text, schiþe ºi relaþii) ºi constituie primul studiu al proiectului. Instrumentele
utilizate în acest caz sunt tehnoredactarea ºi desenarea asistatã de calculator
pentru realizarea schiþelor 2D. Pe baza caietului de sarcini, se realizeazã studiul de
fezabilitate al produsului (care este o analizã tehnico-economicã) ºi se lanseazã
comanda de proiectare.
În etapele de proiectare propriu-zisã, se definesc conceptele proiectului (pãrþi
componente, funcþii, principii de funcþionare) ºi se realizeazã diverse reprezentãri
2D ºi 3D ale produsului sau ale pãrþilor componente, utilizând softuri de modelare
geometricã (CAD). Acestea sunt apoi analizate cu aplicaþii computerizate
specifice ingineriei (CAE). Procesul de proiectare se terminã cu o descriere
completã a produsului, de regulã, printr-o documentaþie completã de execuþie
(desene). Fabricaþia începe de la proiect ºi se terminã cu expediþia cãtre beneficiar.
Procesul de fabricaþie cuprinde o planificare iniþialã care se referã la fluxul de
fabricaþie al produsului, stabilirea colaborãrilor necesare, aprovizionarea etc.
Urmeazã apoi planificarea producþiei (mijloace de producþie afectate, productivitate,
cadenþã etc.), proiectarea sculelor necesare precum ºi programarea maºinilor unelte
cu control numeric. Etapa urmãtoare o constituie producþia propriu-zisã urmatã de
controlul de calitate, ambalare ºi expediþie.
Pe parcursul acestor etape, se utilizeazã o mare diversitate de instrumente
software care fac parte din categoria CAD / CAM / CAE.
Toate aceste softuri sunt aplicaþii program realizate prin utilizarea limbajelor
de programare convenþionalã de nivel înalt, cum sunt FORTRAN, PASCAL,
C, VISUAL, C++ etc., precum ºi a unor seturi de subrutine grafice (biblioteci
grafice) menite sã asigure portabilitatea softurilor pe diverse dispozitive de
afiºare graficã.
Clasificarea ºi titulatura domeniilor aferente, în conformitate cu denumirile
consacrate pe plan internaþional ale acestor activitãþi ºi prezentate ca atare în
literatura de specialitate sunt prezentate în figura 1.2.
În continuare se prezintã pe scurt conþinutul fiecãrui domeniu în parte.
13 INTRODUCERE
1.2. Graficã asistatã de calculator
Rolul sistemelor CAD este de a crea reprezentãri grafice computerizate ale
sistemelor inginereºti proiectate. În esenþã, acest lucru se realizeazã prin programare
graficã. Activitatea de programare care include entitãþi grafice ca intrãri ºi ieºiri se
numeºte programare graficã, iar domeniul ºtiinþific poartã numele de graficã
asistatã de calculator. Faþã de programarea convenþionalã (care necesitã, de
regulã, un sistem de operare, un editor pentru scrierea textului programului ºi un
compilator), în cazul programãrii grafice este necesar ºi software pentru graficã.
În principiu, software-ul pentru graficã este de douã categorii. Prima categorie
o constituie driverele grafice specifice dispozitivelor grafice (drivere de monitor, de
imprimantã, de plotter etc.), care sunt diferite chiar ºi de la un producãtor la altul
pentru acelaºi tip de dispozitiv (driver-ele de display Sonny diferã de cele Bull,
º.a.m.d.). Un driver grafic este deci un cod
program dependent de maºina pentru care este
scris, care controleazã direct procesul de afiºare
a dispozitivului grafic “condus”.
A doua categorie de software grafic o
constituie programele grafice. Acestea pot fi
scrise direct împreunã cu driver-ul (fig. 1.3,a),
utilizând aceleaºi comenzi. În acest caz însã
programul nu poate fi utilizat decât pentru
Limbaje de pro-
gramare con-
venþionalã
“C”
“VISUAL C”
Biblioteci gra-
fice (subrutine)
- GKS
- Open GL
- ACIS
- PARASOLID
Software CAD:
- Desenare A.C.
- Model are
Geomet r i c ã
WF, SF, Solid
Programare
convenþionalã
Graficã asistatã CAD CAD
CAE
Fig. 1.2.
Software:
- Fabricare
CNC
- Analizã MEF,
MBS, OPT
- Evaluare
a) b)
Program
Driver
Dispozitiv
grafic
Program
Bibliotecã
graficã
Driver
Dispozitiv
grafic
Fig. 1.3.
14 BAZELE CAD
dispozitivul grafic respectiv, iar portabilitatea pe alte sisteme grafice este minimã.
Pe lângã acest dezavantaj major, limbajul în care se scriu driver-ele este foarte
sãrac ºi abstract, iar programatorii din zilele noastre sunt obiºnuiþi cu limbajele de
nivel înalt, bogate în instrucþiuni ºi facilitãþi. De aceea, a devenit o practicã de a
echipa dispozitivele grafice, pe lângã driver, ºi cu o bibliotecã de subrutine grafice
pentru diverse operaþiuni grafice.
Aceste biblioteci sunt concepute asemãnãtor cu bibliotecile matematice de
programare convenþionalã. Majoritatea acestor biblioteci conþin subrutine pentru
trasarea de linii, cercuri etc. Biblioteca graficã este construitã “peste” driver-ul
grafic (fig. 1.3,b).
Problema acestor biblioteci grafice este cã, deºi funcþionalitatea este
asemãnãtoare, numele subrutinelor pot diferi, astfel cã programele grafice realizate
cu ele nu sunt portabile. Soluþia adoptatã de cãtre producãtorii de dispozitive grafice
pe plan mondial este utilizarea unui set comun de subrutine având aceleaºi denumiri
ºi argumente. Mai departe, fiecare subrutinã poate fi dezvoltatã independent de
fiecare producãtor, utilizând propriul cod. În acest fel, programele sunt portabile
indiferent de dispozitivul grafic utilizat.
Din acest motiv, încã din 1977, în SUA, a fost propus primul standard grafic
de cãtre SIGGRAPH, standardul CORE. Deoarece la ora respectivã monitoarele
în tehnologie matricealã nu erau foarte bine dezvoltate, standardul nu exploata
foarte bine avantajele noii tehnologii. Ca atare, la scurt timp, ISO a propus standardul
GKS (Graphic Kernel System). GKS a fost considerat standardul cel mai rãspândit
pentru grafica 2D.
Atât CORE cât ºi GKS au unele dezavantaje, legate mai ales de interactivitate.
Ca atare, ISO a sugerat mai târziu un alt standard, denumit PHIGS (Programmer’s
Hiearchical Interactive Graphic System), care a devenit standardul de facto pentru
majoritatea staþiilor grafice.
Recent, o nouã bibliotecã graficã comercialã, denumitã OpenGL, câºtigã
popularitate datoritã versatilitãþii sale de a lucra atât pe staþii grafice cât ºi pe PC-uri
în reþele. OpenGL a fost dezvoltatã de Silicon Graphics ºi este pe cale de a deveni
standardul de facto al perioadei actuale.
1.3. CAD
Vocaþia principalã a unui inginer este fãrã îndoialã concepþia ºi execuþia de sisteme
tehnice ºi tehnologii utile societãþii umane. Împlinirea acestei vocaþii implicã abilitãþi de
analizã ºi inovare specifice, care sunt formate de-a lungul anilor de studiu. Vocaþia de
manager (care a fost ºi este încã destinaþia principalã a inginerilor în România) este
secundarã ºi nici nu se regãseºte semnificativ în planurile de învãþãmânt actuale.
15 INTRODUCERE
Pornind de la aceastã realitate, este evident cã o disciplinã centralã în cadrul
pachetului CAX pentru ingineri trebuie sã fie disciplina CAD (Computer Aided
Design). Conform [KUNWOO99], aplicaþiile program care încorporeazã
Grafica Asistatã de Calculator ºi faciliteazã funcþii inginereºti în procesul de
concepþie sunt soft-uri CAD. Ele cuprind programe începând de la nivelul unor
instrumente geometrice de manipulare a formelor ºi pot include la cealaltã limitã
programe specializate de optimizare ºi analizã inginereascã [ZEID93]. Rolul
fundamental al unui sistem CAD este de a defini din punct de vedere geometric un
proiect mecanic, arhitectural, circuit electric etc. Pentru a îndeplini acest scop sunt
utilizate instrumentele de Desenare Asistatã de Calculator ºi Modelare Geometricã.
Aceste douã instrumente sunt componentele fundamentale ale oricãrui sistem CAD,
în care activitãþile de proiectare sunt de douã categorii: sintezã ºi analizã. Fazele
iniþiale (ca identificarea cerinþelor, studiul de fezabilitate, definirea conceptelor)
sunt pãrþi de sintezã ºi au ca rezultat proiectul conceptual al produsului viitor sub
forma unei schiþe (sketch) sau un desen de ansamblu iniþial. Aceastã formã a
proiectului este necesarã pentru angajarea deciziilor financiare majore privind
proiectul. Odatã încheiatã etapa de sintezã, începe etapa de analizã în care proiectul
se optimizeazã. În funcþie de importanþa ºi dimensiunile proiectului, se efectueazã
analiza ºi optimizarea pe diverse nivele de profunzime. La nivel minim se situeazã
analiza ºi optimizarea soluþiilor constructive de detaliu, dar în acelaºi timp se pot
realiza studii ºi simulãri de înaltã fineþe, ajungându-se la prototipare ºi experimentare
virtualã sau prototipare rapidã.
În etapa de sintezã iniþialã, calculatorul nu este utilizat permanent, deoarece
aceasta nu manipuleazã bine informaþia calitativã. În schimb, în faza conceptualã,
calculatorul poate genera seturi de variante, utilizând biblioteci sau tehnici de
proiectare creativã sau poate fi utilizat la definirea primelor variante furnizate
analizei. Funcþiile utile sunt deci: Desenare asistatã de calculator, Modelare
geometricã 3D, Proiectare parametricã ºi Macro-programare. Acestea sunt de
fapt funcþiile principale ale oricãrui sistem CAD. Ele vor fi prezentate detaliat în
capitolele urmãtoare.
16 BAZELE CAD
1.4. CAE
1.4.1. Softuri de analizã
Calculatorul îºi aratã în schimb din plin valoarea în etapa de analizã, în care se
analizeazã tensiunile ºi deformaþiile, interferenþa diferitelor piese, analiza cinematico-
dinamicã etc. Aceste pachete software fac parte din categoria CAE [KUNWOO99].
O problemã comunã a acestor soft-uri este modelul de analizã, deoarece acesta
nu întotdeauna coincide cu modelul conceptual ci cuprinde deseori simplificãri,
idealizãri, reducerea dimensiunilor etc., fiind în fapt rezultatul unui proces de
modelare. Modelarea este un proces de abstractizare a unui fenomen cu scopul
de a-l studia cu o precizie acceptabilã. Conform [ZEID93], modelarea este ºi va
rãmâne arta de bazã a ingineriei.
În principal, rolul CAE este de a analiza geometria realizatã prin tehnici CAD,
permiþând proiectantului sã simuleze ºi sã studieze comportarea produsului, în aºa fel
încât proiectul sã poatã fi îmbunãtãþit. Printre instrumentele CAE cele mai folosite se
pot menþiona Metoda Elementelor Finite (MEF) pentru analiza tensiunilor ºi
deformaþiilor, metoda sistemelor multicorp pentru simularea miºcãrii sistemelor de
corpuri interconectate prin legãturi mobile (MBS), diverse metode de optimizare etc.
Dupã cum se menþioneazã mai sus, pentru analizã este necesar un model
abstractizat, care trebuie conceput ºi construit pornind de la modelul geometric
realizat în etapa de sintezã. În soft-urile CAE comerciale, modelul geometric este
convertit în model de analizã în mod interactiv sau chiar automatizat (de exemplu
discretizarea automatã, posibilã pentru piese simple, în cadrul softurilor de analizã
MEF). Programele care faciliteazã construirea modelului de analizã se numesc
preprocesoare. Algoritmii matematici de analizã sunt implementaþi în programe
executabile denumite procesoare, care sunt capabile sã “citeascã” modelul rezultat
la preprocesare ºi sã efectueze analiza complet automat. Rezultatele sunt furnizate
sub forma unor fiºiere de date dificil de interpretat, chiar dacã datele sunt
organizate sub formã tabelarã. De aceea, o altã categorie de programe, denumite
postprocesoare, prelucreazã aceste rezultate ºi oferã utilizatorului diverse posibilitãþi
de vizualizare graficã: fie diagrame, fie câmpuri de culori sau miºcare graficã
animatã. O altã categorie CAE o constituie programele / modulele de analizã. Un
exemplu îl constituie programele de optimizare a formei [KUNWOO99]. În cadrul
acestora, se pleacã de la o formã iniþialã simplã (de exemplu un dreptunghi) ºi dupã
executarea programului este propusã o formã optimã. De regulã, criteriul adoptat
este minimizarea greutãþii piesei, în condiþiile respectãrii unor restricþii privind
tensiunile ºi deformaþiile.
17 INTRODUCERE
Practic, în etapa de analizã se poate simula (chiar grafic) comportamentul
produsului, ceea ce permite detectarea erorilor înainte de realizarea prototipului
real. Acest lucru este preferabil, deoarece costurile modificãrilor de proiect cresc
exponenþial în etapele finale ale asimilãrii.
În funcþie de tipul ºi importanþa proiectului, alocarea de timp ºi fonduri pentru
analizã este o problemã foarte delicatã, care depinde foarte mult de impactul ºi
costurile modificãrilor care pot apãrea, dar ºi de costul final al produsului care
poate fi acceptat de piaþã.
Faza de evaluare a proiectului include de regulã ºi realizarea unui prototip (în
cazul unicatelor - maºini speciale, de exemplu - evident aceastã etapã lipseºte).
Din ce în ce mai mult se foloseºte termenul de “prototipare virtualã” pentru a
denumi o nouã frontierã a puterii calculatorului, strâns legatã de evoluþia Realitãþii
Virtuale. Totuºi, aplicaþiile care meritã aceastã titulaturã sunt încã limitate la
“segmente” de produs, cuprinzând doar pãrþi sau aspecte particulare din întreg.
1.4.2. CAD / CAM / CIM
Pânã la definitivarea acestor tehnici, prototiparea rapidã, rãmâne - în ciuda
preþului ridicat - calea cea mai rapidã de evaluare a unui produs în faza de prototip.
Prototiparea rapidã este o tehnicã care aparþine domeniului CAM (Computer Aided
Manufacturing). CAM este tehnica utilizãrii calculatorului în planificarea,
managementul ºi controlul operaþiilor de fabricaþie.
Unul dintre domeniile cele mai “mature” ale domeniului CAM se referã la
controlul numeric al Maºinilor Unelte, NC (Numerical Control). NC este tehnica
utilizãrii instrucþiunilor program pentru controlul maºinilor unelte pentru aºchiere,
rectificare, matriþare, ºtanþare etc. Pornind de la modelul geometric CAD, plus
informaþii suplimentare furnizate de cãtre operator, se pot genera automat
instrucþiunile NC necesare fabricãrii. Cercetãrile actuale sunt îndreptate cãtre
minimizarea informaþiilor ºi intervenþiilor cerute operatorului.
O altã ramurã CAM este Planificarea Proceselor (PP). Aceasta are ca
rezultat detalierea fazelor de execuþie pânã la montajul general. Pentru moment
PP nu se poate face complet automatizat (numai pe baza modelului CAD, deci
fãrã intervenþia operatorului), în schimb pentru piese similare (cu trãsãturi comune)
acest lucru este posibil pe baza adaptãrii unui proces pus la punct anterior. Din
acest motiv, cercetãrile actuale sunt îndreptate cãtre identificarea trãsãturilor
care pot fi similare pieselor. Aceastã preocupare a condus la identificarea unei
noi funcþii CAD / CAE - “Recunoaºterea Trãsãturilor”. Acestea sunt similaritãþi
între piese care se întâlnesc foarte frecvent datoritã unor funcþionalitãþi comune,
procedee de prelucrare comune sau ambele. Exemple de Trãsãturi (Features)
18 BAZELE CAD
sunt: gãuri, canale, nervuri, degajãri etc. Pentru a uºura identificarea trãsãturilor
piesele sunt, de regulã, asociate în familii.
CAD, CAE ºi CAM au drept scop automatizarea diverselor operaþii cuprinse
în ciclul produsului. Ele sunt tehnici care au fost dezvoltate relativ separat, de
aceea în momentul de faþã nu existã sisteme complet integrate. Mai mult, din punct
de vedere filosofic, a fost definitã noþiunea de CIM (Computer Integrated
Manufacturing) care are drept scop integrarea celor trei domenii, cu scopul ca
întreprinderea sã devinã mai eficientã. La un astfel de sistem-nucleu se pot conecta
apoi ºi alte funcþii cu impact asupra managementului contabilitãþii, calitãþii, livrãrilor
etc. Deocamdatã însã, sistemul este mai mult o strategie de viitor pentru întreprinderi
decât o realitate contemporanã, în mãsura în care acestea încearcã în mod constant
mãrirea gradului de integrare ºi inter-compatibilitãþii sistemelor CAD, CAE, CAM
achiziþionate. Un model CIM, care poate oferi o imagine a complexitãþii conceptului
este prezentat în figura 1.4.
Conceptul CIM presupune, în primul rând, un sistem computerizat, integrat de
gestionare a datelor ºi comunicaþiei, care nu poate fi realizat decât cu o reþea de
calculatoare bine structuratã. Aceasta trebuie sã stabileascã o bazã de date unicã
(centralizatã sau distribuitã), cu reguli de exploatare riguros definite, precum ºi o
comunicaþie eficientã între diversele sectoare importante ale CIM-ului. Într-o
întreprindere cu structurã clasicã, acestea sunt în numãr de cinci:
• Management (Planificare, Evaluare).
• Sectorul de fabricaþie (CAM).
• Sectorul de montaj.
• Stocuri.
• Proiectare (Ingineria Produsului ºi a Proceselor).
Fiecare dintre aceste sectoare grupeazã în jurul sãu diverse compartimente
care îndeplinesc funcþii distincte care contribuie la funcþionalitatea sectorului.
Gestionarea datelor ºi comunicaþia în cadrul unui sector se realizeazã prin intermediul
unei reþele locale, conectatã la rândul ei la serverul central, alcãtuind astfel o
infrastructurã centralizatã, la nivelul întregii întreprinderi. Reþelele locale ale sectorului
cuprind nu numai computere obiºnuite ci ºi calculatoare de proces ºi maºini unelte
cu control numeric, astfel încât, în funcþie de gradul de informatizare a activitãþilor
din întreprindere se pot imagina funcþionalitãþi extrem de sofisticate ale CIM-ului,
care conduc în ultimã instanþã la scurtarea timpului de rãspuns al întreprinderii la
cererea pieþei (pentru produse mai simple, existã deja întreprinderi care livreazã
comenzi “la minut”, în funcþie de cererea clientului).
1
9
I
N
T
R
O
D
U
C
E
R
E
Fig. 1.4.
Studiul
pieþei
Comenzi
Contracte
Aprovizionare
Planificarea
ºi controlul
producþiei
Contabilitate
Management
Planificare &
Evaluare
Reþeaua
externã
D
a
t
e
D
a
t
e
CAD
Analizã MEF,
MBS (CAE)
Programare
CNC
Proiectare
scule
Planificarea
calitãþii
Planificarea
proceselor
Ingineria
produsului ºi a
proceselor
Asamblare
automatizatã
Inspecþie ºi
testare
automatã
Ambalare
automatã
Automate
programabile
CAM
D
a
t
e
D
a
t
e
D
a
t
e
M
a
t
e
r
ia
le
M
a
t
e
r
i
a
l
e
Stocuri
Livrare
Produse finite
Inventar
produse
finite
Transport
automat
Inventar
materiale
Recepþie
Materiale
Piese
Colaborare
Injecþie
plastic
Roboþi de
sudurã /
vopsire
Roboþi
manipulatori
CNC
CAM
Date
Fabricare piese Montaj general
D
a
t
e
Data manage-
ment & comuni-
cations
Reþea internã
20 BAZELE CAD
Dezvoltare secvenþialã a produsului
• abordare individualã
• schimbãri lente
• timp de dezvoltare lung
• calitate joasã
Dezvoltare simultanã a produsului
• abordare în echipã
• schimbãri rapide
• timp de dezvoltare scurt
• calitate înaltã
Tabelul 1.1.
1.4.3. Inginerie simultanã
Conceptul mai este întâlnit în literatura tehnicã ºi sub denumirea de concurent
engineering.
În procesul de proiectare convenþional, existã mai multe etape în care se produc
versiuni perfecþionate ale produsului. Astfel, în fazele de model experimental, prototip
sau serie zero, în mod inevitabil, specialiºtii în fabricaþie precum ºi cei în analiza
CAE identificã aspecte ale proiectului care trebuie îmbunãtãþite, aºa încât proiectul
se întoarce la compartimentul de proiectare, care trebuie sã opereze modificãrile.
Acest proces poate avea loc de mai multe ori, astfel încât se pierde timp ºi cresc
costurile. Mai mult decât atât, odatã ce compartimentul de proiectare a propus
deja anumite soluþii funcþionale, existã tendinþa de a insista pe aceste soluþii în
detrimentul costului de fabricaþie, mentenabilitãþii etc.
Conceptul de “concurent engineering” are drept scop evitarea acestei situaþii
prin crearea unei echipe de proiectare ce cuprinde o combinaþie potrivitã de
specialiºti, astfel încât sã fie luate în considerare, încã de la început, toate aspectele
de proiectare / fabricare.
Procesul tradiþional este adesea descris ca “over the wall approach” deoarece
fiecare departament implicat în proces tinde sã-ºi termine lucrul ºi apoi metaforic
vorbind sã arunce peste zid la departamentul urmãtor. În concurent engineering,
aceste bariere de comunicare între fazele de dezvoltare a unui produs sunt eliminate
pentru a permite o mai rapidã dezvoltare a acestuia spre o calitate mai bunã.
În tabelul 1.1 se prezintã o comparaþie între cele douã abordãri.
21 ARHITECTURI HARDWARE
2
ARHITECTURI HARDWARE
2.1. Un sistem CAD tipic
Din punct de vedere hardware, deºi nu sunt radical diferite de sistemele obiºnuite,
sistemele computerizate utilizate în proiectarea asistatã de calculator au totuºi arhitecturi
specifice, cu câteva elemente hard special concepute pentru lucrul în proiectarea
inginereascã. Este vorba, în primul rând, de periferice care trebuie sã fie suficient
adaptate pentru lucrul cu date geometrice (citire, afiºare, tipãrire etc.). Astfel, pe
lângã perifericele obiºnuite care se întâlnesc într-un sistem computerizat obiºnuit
(mouse, monitor, imprimantã), mai apar tablete digitizoare, terminale grafice de înaltã
rezoluþie, plottere pentru imprimare pe hârtie de mari dimensiuni etc. Configuraþia
tipicã a unui post de lucru CAD (Work Station) este reprezentatã în figura 2.1.
Structura postului de lucru include unitatea de calcul, monitorul, tastatura,
mouse, plotter pentru imprimarea desenelor, tabletã digitizoare pentru digitizarea
desenelor de pe hârtie ºi în ultimul timp un dispozitiv de prototipare rapidã care
poate fi considerat, în ultimã instanþã, un plotter 3D, deoarece reproduce modelele
solide ale pieselor, utilizând material de tip rãºinã.
Unitatea Centralã (UC), monitorul ºi mouse-ul sunt componente întâlnite ºi la
alte tipuri de sisteme computerizate (cu singura precizare cã rezoluþia monitorului
este mai înaltã – peste 1048 x 1280 dots/inch, iar resursele UC pentru calculatoare
PC sunt generoase – peste 20-30 GB HDD ºi 128-256 M RAM). În schimb,
pentru componentele specifice (tableta digitizoare, plotterul ºi dispozitivul de
prototipare rapidã), se cuvine o prezentare mai detaliatã, ce va fi datã în finalul
acestui capitol.
În general, configuraþia prezentatã mai sus nu este utilizatã ca o singurã unitate
22 BAZELE CAD
ci în conexiune cu altele similare, formând un sector pentru mai mulþi utilizatori.
Pentru acest scop se pot utiliza douã configuraþii posibile:
a) Configuraþia tip supercalculator (mainframe sau supercomputer), care
se compune dintr-o unitate centralã foarte puternicã, partiþionabilã pentru utilizarea
mai multor terminale (fig. 2.2). Acestea folosesc în comun plotterul ºi dispozitivul
de prototipare rapidã (Rapid Prototyping - RP).
Aceastã configuraþie este utilizatã numai în marile companii, care opteazã
pentru mainframe deoarece acoperã ºi celelalte necesitãþi de calcul din alte domenii
(evidenþã, stocuri, finanþe, contabilitate etc.) ºi care au, în acest fel, o bazã de date
comunã, bine protejatã. Totuºi, în afarã de costul iniþial foarte mare al sistemului,
existã dezavantaje majore legate de întreþinere ºi mai ales up-grade (costurile de
Fig. 2.1.
Tabletã
digitizoare
Tastaturã
Unitate centralã
Display grafic
de înaltã
rezoluþie
Plotter
Dispozitiv de
prototipare
rapidã
Mouse
Mainframe
Terminal 1
- Monitor
- Tastaturã
- Tabletã di-
gitizoare
- Mouse
Terminal 2
- Monitor
- Tastaturã
- Tabletã di-
gitizoare
- Mouse
Terminal n
- Monitor
- Tastaturã
- Tabletã di-
gitizoare
- Mouse
Fig. 2.2.
RP
...
Plotter
23 ARHITECTURI HARDWARE
extindere a memoriei ºi hardisk-ului sunt mult mai mari decât la sistemele mici). În
general, toate componentele hard ºi soft pentru aceste sisteme sunt mult mai
scumpe. Un alt dezavantaj îl constituie relativa dependenþã a resurselor disponibile
pentru un terminal de încãrcarea instantanee a sistemului. Dacã, de exemplu, pe
un numãr de terminale ruleazã în acelaºi timp aplicaþii “costisitoare”, terminalul
propriu poate deveni foarte lent.
b) Configuraþia de tip reþea – se realizeazã din celule de lucru indepen-
dente cu staþii grafice (workstations) sau calculatoare PC legate în reþea
(fig. 2.3).
Aceastã configuraþie are avantaje multiple, printre care se pot menþiona:
investiþie iniþialã mult mai micã, posibilitate de extindere pe mãsurã ce activitãþile
CAD cresc ºi terminale cu putere de calcul independentã.
În general, staþiile grafice fiind calculatoare mai puternice, sunt preferate de
firmele medii ºi mari, în timp ce firmele mici se rezumã la PC-uri, utilizate cu
precãdere pentru scopuri de desenare 2D.
2.2. Tipuri de reþele în CAD
Numãrul ºi diversitatea sistemelor de calcul dintr-o întreprindere rezultã din
diversele tipuri de aplicaþii la care apar date diferite ca importanþã ºi volum. De
exemplu, calculul ºi administrarea salariului se poate face în timpul nopþii. La fel se
întâmplã la folosirea MEF pentru analize complexe ce ruleazã timp îndelungat.
Alte aplicaþii necesitã o prelucrare imediatã deoarece soluþia obþinutã va fi punctul
de plecare pentru urmãtoarea aplicaþie. De exemplu, funcþiile de modelare trebuie
realizate imediat pentru ca utilizatorul sã poatã evalua rezultatele ºi sã le foloseascã
ca bazã pentru urmãtorul pas la modelare.
Astãzi nu se mai poate realiza eficient susþinerea sistemului de calcul printr-un
singur calculator central deoarece un astfel de sistem ar trebui configurat pentru
cerinþele maximale ºi pentru o mare diversitate de aplicaþii. Astfel de sisteme sunt
foarte scumpe atât la achiziþie cât ºi la întreþinere. Ele sunt întotdeauna complexe
ºi sensibile la perturbaþii. La realizarea aceleiaºi lucrãri timpii de repaus variazã
Fig. 2.3.
- Calculator
- Dispoziti-
ve input
Server - Calculator
- Dispoziti-
ve input
...
RP
Plotter
24 BAZELE CAD
foarte mult în funcþie de solicitarea sistemului. Dacã sistemul central “cade” toate
terminalele sunt “paralizate”.
Din aceastã cauzã, pentru susþinerea eficientã ºi economicã a calculatorului,
se utilizeazã sisteme descentralizate. Astfel puterea de calcul ajunge direct la
utilizator. De exemplu, în cazul PC-urilor, fiecare utilizator are propriul sistem cu un
grad de independenþã sporit, putând sã-ºi foloseascã puterea de calcul pentru
aplicaþia proprie. Timpii de rãspuns rãmân constanþi ºi depind doar de volumul
aplicaþiei. Dacã sistemul “cade” este afectat doar utilizatorul respectiv.
În paralel cu acestea, se doreºte ca toate datele sã fie cuprinse într-o bazã de
date unicã, denumitã “corporate database”. O astfel de bazã de date poate fi stocatã
fizic pe un singur calculator ori distribuit pe mai multe calculatoare, fãrã ca în acest
fel unitatea datelor sã fie perturbatã. Folosirea unui sistem descentralizat ºi
necesitatea unei stocãri centrale a datelor se poate realiza doar atunci când sistemele
descentralizate pot comunica între ele. Un astfel domeniu este reþeaua.
O reþea rezultã prin conectarea mai multor sisteme de calculatoare oarecare ºi
a echipamentelor periferice prin linii de transmitere a datelor. Sistemele conectate în
reþea se numesc noduri. O reþea cu una sau mai multe funcþii este construitã într-o
anumitã configuraþie ºi foloseºte în liniile de transmitere anumite purtãtoare ºi protocoale
(un protocol este o procedurã pentru transmiterea de date între programe).
2.2.1. Funcþiile reþelei
O reþea poate avea trei funcþii posibile: conexiunea datelor, conexiunea funcþiilor
ºi conexiunea încãrcãrilor.
a) Conexiunea datelor
Un utilizator sau un program poate avea acces la datele care sunt stocate
într-un nod al reþelei. Transferul de date se realizeazã prin copierea de fiºiere
de la un nod la celãlalt. Dezavantajul este cã, datoritã transferului, mai multe
copii ale aceluiaºi fiºier pot fi redundante. Aceasta poate conduce la probleme
de identificare a valabilitãþii datelor.
b) Conexiunea funcþiilor
Un utilizator sau un program poate avea acces la unitãþile unui alt sistem din
reþea. De exemplu, la server sau la o imprimantã. Cu aceasta, perifericele foarte
scumpe care nu se justificã pentru un singur utilizator pot fi folosite de mai mulþi
membri ai reþelei.
Un cluster este o conexiune de funcþii prin care se poate realiza accesul direct la
elemente de stocare masivã. Fiecare nod al unui cluster poate avea acces la elemente
de stocare masivã. Un cluster necesitã drivere pentru elementele de stocare masivã
care vegheazã accesul în multitasking, ca ºi viteza mare a transmisiei, astfel încât
25 ARHITECTURI HARDWARE
timpii de acces sã fie foarte mici ºi timpii de rãspuns sã fie acceptabili. Avantajul unui
cluster este dat de eliminarea datelor redundante deoarece softul pentru aplicaþii, ca
ºi toate celelalte date relevante, se aflã doar o singurã datã în cluster ºi de la datele
existente nu pot fi produse copii cu acelaºi nume. Datele sensibile (de exemplu,
înregistrarea unui proces continuu de supraveghere) pot fi “oglindite” permanent,
aceasta înseamnã cã din motive de securitate pot fi scrise redundant pe elemente de
stocare masivã care funcþioneazã în paralel ºi care în cazul cãderii unui purtãtor de
date (carrier) asigurã continuarea procesului fãrã perturbaþii.
c) Conexiunea încãrcãrilor
Aceastã funcþie faciliteazã încãrcarea aplicaþiilor pe alte noduri cu capacitãþi
libere fãrã ca utilizatorul sã observe de exemplu, dacã un sistem nu este disponibil
(sau este doar parþial) din cauza întreþinerii, “cãderii” sau suprasolicitãrii. Realizarea
acestei funcþii presupune un protocol special, care poate fi, în funcþie de tipul reþelei,
Token-ring respectiv Token-Bus.
2.2.2. Posibilitãþi de configurare
Reþelele se pot extinde fie pe un singur loc în mai multe site-uri - (LAN -
Local Area Network) sau între diferite întreprinderi (WAN - Wide Area Network).
În contrast cu LAN-ul, WAN-ul este o conectare a mai multor întreprinderi situate
mult diferit în spaþiu.
O reþea poate avea una din urmãtoarele configuraþii:
• Conectarea în 2 puncte (punct cu punct) - este cea mai simplã metodã de
comunicare între douã calculatoare sau un calculator ºi un periferic.
Capetele sunt conectate ori cu linie separatã ori cu o linie comunã
disponibilã. Toate conectãrile între calculator ºi periferic sunt PP (Point to
Point). O legãturã telefonicã este de fapt o conexiune PP.
• O reþea în linie se realizeazã prin înserierea mai multor conexiuni PP (fig. 2.4,a).
Dacã o reþea în linie este închisã, se obþine reþeaua inel (ring). Datele pot fi
transmise în ambele direcþii, iar dacã se utilizeazã un protocol Token-ring -
doar într-o singurã direcþie. Un dezavantaj al acestui tip de reþea îl constituie
complexitatea ridicatã a dirijãrii fluxului de date în reþea. Când cade un nod din
reþea, rezultã o nouã o reþea în linie. Pentru a nu ajunge în aceastã situaþie, la
unele reþele se prevede o scurtcircuitare “hard” a nodului. La alte tipuri de
reþele se construieºte un inel închis de la care se realizeazã devieri spre noduri,
astfel cã reþeaua poate funcþiona chiar ºi atunci când cade un nod (fig. 2.4,b).
• Reþeaua cu ochiuri - Toate nodurile sunt conectate cu toate nodurile. O
astfel de configuraþie este cea mai complexã ºi scumpã. Însã are ºi o siguranþã
mãritã la “cãderi” deoarece între douã noduri existã cel puþin douã cãi diferite
26 BAZELE CAD
Worstation Worstation Worstation Worstation
a)
Worstation File server
Worstation Worstation
Ring
b)
Worstation
Worstation
Worstation
Worstation
Worstation
Worstation
File server
Hub
c)
Fig. 2.4.
27 ARHITECTURI HARDWARE
de conectare, astfel cã la cãderea unei legãturi datele pot sã o ia pe alt drum.
• O reþea în stea rezultã prin realizarea mai multor conectãri PP la un singur sistem
central (fig. 2.4,c). Un astfel de sistem se întâlneºte, de exemplu, la conectarea
de PC-uri la un singur calculator central prin intermediul unui dispozitiv de
interfaþare denumit hub. În acest caz, perifericele de uz comun pentru reþea se
conecteazã la server. Calculatorul central gestioneazã fluxul de date prin reþea.
• Reþeaua cu magistralã (BUS) este o cale închisã la ambele capete, la care
sunt conectate nodurile (fig. 2.5). Prin aceasta rezultã interfeþe pentru toate
nodurile, deci lungimea unei astfel de reþele poate ajunge pânã la 2-3 km. La
fiecare 2-3 m se poate conecta un calculator. Dacã sunt necesare mai
multe noduri sau lungimi mai mari, la o reþea BUS se pot cupla ºi alte
reþele BUS sau orice altã configuraþie independentã.
• O formã aparte a reþelei cu magistrale, în special, când toate nodurile sunt
staþii de lucru este configuraþia client-server, care prin funcþia sa este un
cluster local ºi este indicatã, în special, pentru aplicaþii descentralizate.
În forma sa idealã conceptul client-
server presupune cã o staþie de lucru
performantã are resurse foarte mari
(HDD ºi RAM), iar cã serverul pune la
dispoziþie în reþea toate serviciile centrale:
stocarea centralã a programelor ºi datelor,
transmisia centralã de date, dirijarea
perifericelor, ca ºi legãtura cu alte reþele.
Toate celelalte maºini pe care ruleazã
aplicaþiile centrale sunt “clienþi”, al cãror
acces la toate programele, date, ºi
periferice se face exclusiv prin server.
De reþinut cã la reþele nu prea
mari, funcþiile serverului pot fi preluate
ºi de un calculator obiºnuit.
Dacã avantajele utilizãrii în comun
a elementelor periferice sunt îndeosebi
de naturã economicã, centralizarea
datelor ºi a programelor are ºi evidente
avantaje funcþionale:
• O stocare centralã a programelor,
întreþinere uºoarã, iar programul este
tot timpul identic la toþi utilizatorii.
Worstation
Laptop
computer
Worstation
Pen
computer
File server
File server
Laser printer
Terminator
Terminator
Fig. 2.5.
BUS
28 BAZELE CAD
Versiunile noi de programe se instaleazã doar pe server.
• O stocare centralã a datelor este esenþialã în CAD/CAM pentru o
standardizare ºi gestionare eficientã. În plus, doar la o stocare centralã a
datelor se poate realiza o protecþie eficientã.
Din aceste configuraþii de bazã se pot combina diferite forme de reþea: stea plus
inel, legarea una dupã alta a mai multor configuraþii etc. Astfel de forme se numesc
reþele arborescente. Configuraþia client-server oferã singura modalitate de cascadare
la care clientul aparþine unui nivel ierarhic mai mic ºi este totodatã server pentru acel
nivel. Cu aceasta, întreaga întreprindere poate fi legatã în reþea cu o configuraþie unitarã.
Legãturile într-o reþea se fac prin medii de comunicaþie denumite “purtãtori”
(cabluri sau unde radio). Purtãtorii au o importanþã deosebitã deoarece condiþioneazã
debitul de date ce poate fi transmis în cadrul reþelei.
2.2.3. Purtãtori (Trigger)
Ca purtãtori de tip cablu în reþele, frecvent se utilizeazã cabluri multifilare,
coaxiale, cablu optic sau legãturã radio, cu urmãtoarele caracteristici:
• Cablul multifilar - conþine fire de cupru din 2 sau 4 fire în paralel care vor
fi 2 câte 2, cu sau fãrã ecranare (pentru protecþie magneticã ºi mecanicã).
• Cablul coaxial (fig. 2.6) - are pierderi foarte mici, fiind insensibil la bruiaje
magentice. Se utilizeazã chiar pentru frecvenþe ridicate. Numãrul de noduri
care se pot conecta este nelimitat. Capacitatea de transmitere este foarte
mare.
• Cablul optic - se compune din mai multe fibre din sticlã sau material asemãnãtor,
care sunt învelite într-o fibrã protectoare. Se transmit impulsuri luminoase
care sunt reflectate în interiorul fibrei (fig. 2.7).
Deoarece au flexibilitate foarte mare se pot
îndoi foarte mult. Un astfel de purtãtor necesitã la
capete optocuploare (transformatoare de semnal)
care realizeazã conversia din semnal optic în electric
ºi invers. Ca atare, acest purtãtor poate fi utilizat
numai în legãtura punct cu punct ºi de aceea sunt
indicate în special pentru realizarea de conexiuni
între reþele locale, în interiorul reþelelor fiind mai
indicat cablul coaxial.
În contrast cu cablurile metalice la care
transmisia de date este influenþatã de zgomot (chiar
ºi în cazul ecranãrii), fibra de sticlã este total
insensibilã. Aceasta face posibilã folosirea stâlpilor
Fig. 2.6.
Ecran (fir 2)
Fir 1
Fig. 2.7.
Razã luminoasã
29 ARHITECTURI HARDWARE
de electricitate ca suport mecanic de susþinere. Fibra de sticlã este sigurã împotriva
interceptãrii deoarece o interceptare conduce imediat la întreruperea legãturii.
• Legãtura radio - se foloseºte pentru transmiterea între douã puncte cu
contact vizual când este dificil sã se monteze un cablu (de exemplu, între
2 zgârie nori). Legãturile radio au aceleaºi caracteristici ca ºi fibrele optice,
cu excepþia siguranþei la interceptare.
Alegerea tipului de purtãtor depinde de siguranþa doritã, viteza, solicitarea
mecanicã ºi flexibilitatea la utilizare (numãrul ºi costul diferitelor conectãri).
Referitor la transmisia de date, existã o bandã de bazã ºi o bandã latã.
• La banda de bazã doar o singurã aplicaþie se transmite pe purtãtor. Viteza
de transmitere este, în funcþie de protocol, mai mare de 100 MB/sec.
• La banda latã, prin modularea frecvenþei se pot transmite în paralel mai
multe aplicaþii. Din aceastã cauzã la o reþea cu extindere pe o întreprindere
întreagã, pe care trebuie sã ruleze o gamã largã de aplicaþii tehnice ºi admi-
nistrative, se va utiliza o bandã latã pentru coloana vertebralã a reþelei (back-
bone). Viteza de transmitere va fi în acest caz mai micã de 100 MB/sec.
2.3. Tableta digitizoare
Tableta digitizoare face parte din categoria dispozitivelor de intrare (INPUT),
care controleazã poziþia cursorului grafic pe ecranul display-ului. Este formatã din
douã pãrþi: o suprafaþã platã (tabletã) ºi un mouse grafic (puck) ce se deplaseazã
pe tabletã (fig. 2.8,a).
Tableta este de formã pãtratã cu dimensiuni de la 11' – 36' ºi este împãrþitã în
douã pãrþi: zona graficã ºi zona de meniu (fig. 2.8,b). Zona graficã este digitizatã
(discretizatã) prin prezenþa unor puncte sensibile încorporate în plachetã cu o rezoluþie
ce se regãseºte la display (rezoluþia tipicã este 0,005', adicã 200 dots/inch). Prin
apãsarea butonului mouse-ului grafic, se transmite unitãþii centrale cu mare precizie
poziþia mouse-ului pe tabletã. Tableta digitizoare se poate utiliza precum mouse-ul
obiºnuit, dar în acelaºi timp este foarte utilã la digitizarea vechilor desene pe suport
de hârtie, precum ºi la trecerea de la desenele stilistice realizate manual de cãtre
designeri la primele modele CAD ale produsului.
Pentru realizarea tabletei se foloseºte un sistem senzorial încorporat, utilizând
diverse tehnologii, dintre care trei sunt mai frecvent utilizate:
• tehnica electromagneticã - în care cursorul “simte” un câmp electromag-
netic al unei reþele de fire încorporate în tabletã;
• tehnica magnetorestrictivã – în care fiecare punct al tabletei posedã un
câmp magnetic distinct, recepþionat ca atare de cãtre mouse-ul grafic;
• tehnica acusticã – în aceastã tehnologie tableta care încorporeazã o reþea
finã de microfoane care recepþioneazã sunetul emis, de cãtre mouse-ul grafic.
30 BAZELE CAD
Fig. 2.8.
a)
b)
31 ARHITECTURI HARDWARE
Indiferent de tehnologia utilizatã, puck-ul este cel care comandã fluxul
informaþional dinspre tabletã cãtre unitatea centralã. Atunci când puck-ul pãrãseºte
zona sensibilã a tabletei, cursorul grafic dispare de pe ecran. Modul de transmitere
a datelor poate fi de mai multe feluri:
• punct cu punct – o apãsare a butonului corespunde transmiterii coordonatelor
unui punct;
• flux de puncte – dupã o apãsare a butonului, se transmite în continuu poziþia
puck-ului pe tabletã, pânã la o nouã apãsare a butonului care “închide” fluxul;
• fluxuri comandate – în acest caz transmiterea coordonatelor punctelor se
realizeazã numai atât timp cât butonul este apãsat;
• transmitere incrementalã – în acest caz sunt transmise poziþii succesive,
separate de o anumitã distanþã.
Datoritã dimensiunilor variabile ale tabletei, este necesarã o calibrare a tabletei
în raport cu ecranul monitorului. Aceasta se realizeazã printr-o procedurã simplã,
în care zona graficã a tabletei se identificã prin indicarea celor patru colþuri ce
corespund colþurilor zonei grafice a ecranului (fig. 2.9).
Linii paralele sau
convergente
Cursor
grafic
Display
Mouse grafic (puck)
Tabletã
Fig. 2.9.
32 BAZELE CAD
2.4. Ploterul
Un alt periferic specific CAD-ului este ploterul - dispozitiv de ieºire (OUTPUT),
de transfer pe hârtie a imaginilor grafice, în special, reprezentãrile desenelor
inginereºti realizate pe calculator. Dacã pânã recent plotterul constituia un dispozitiv
complicat ºi costisitor, tehnologiile din ultimii ani au fãcut ca acesta sã nu difere de
o imprimantã obiºnuitã decât prin dimensiuni, principiile fiind identice. Dupã depãºirea
perioadei de dezvoltãri paralele pentru cele douã tipuri de dispozitive (plotere cu
stilouri în paralel cu imprimante cu tamburi sau ace), tehnologia prezentã bazatã pe
jet de cernealã sau laser a condus la dispozitive destul de asemãnãtoare principial,
dar mult mai performante.
Principalele tipuri de plotere disponibile pe piaþã se bazeazã pe tehnologia
Ink-jet, care constã în dirijarea unor jeturi de cernealã (adesea de diferite culori)
printr-un “cap” care baleiazã transversal hârtia. Rezoluþia uzualã a acestor
dispozitive este de 300-600 dots/inch.
Deºi mai rar întâlnite, datoritã preþului de cost, se mai pot menþiona ºi ploterele
termice care au o rezoluþie similarã ca ºi ploterele bazate pe tehnologia laser (prin
utilizarea dispozitivelor xerografice).
2.5. Dispozitive de prototipare rapidã
Cunoscute ºi sub denumirea de “Rapid Protyping”, aceste dispozitive
permit obþinerea rapidã a unor modele fizice tridimensionale, fãrã utilizarea
prelucrãrilor mecanice. Principiul de bazã constã în generarea unui obiect
solid, dintr-o serie de straturi subþiri din polimeri, compozite plastice sau
celulozã.
În esenþã, prototiparea rapidã converteºte datele CAD 3D în modele fizice
fãrã a utiliza procese de prelucrare. Cele mai cunoscute tehnici de prototipare
rapidã sunt:
• stereolitografia;
• sinterizarea selectivã cu laser;
• modelarea stratificatã.
Stereolitografia este în principiu un gen de imprimare 3D bazatã pe un fluid
polimer fotosensibil ºi un sistem de scanare cu laser condus de calculator printr-un
driver, asemãnãtor cu cazul unei imprimante 2D obiºnuite.
Procesul pleacã de la un model CAD 3D, care este procesat pentru a se
crea o serie de secþiuni (“felii”) transversale orizontale. Aceste secþiuni sunt
utilizate pentru dirijarea traiectoriei laserului, care genereazã un spot ultraviolet,
33 ARHITECTURI HARDWARE
ce transformã în urma sa lichidul în solid, pânã când stratul respectiv s-a format
complet (fig. 2.10).
Dupã solidificarea unui strat, platoul mobil care susþine prototipul coboarã cu
grosimea unui strat, astfel încât laserul poate solidifica un alt strat deasupra celui
precedent. Continuând în acest fel, se construieºte solidul din rãºinã în conformitate
cu geometria modelului CAD 3D.
În urma procesãrii pentru stereolitografie, din modelul CAD 3D se obþine un
fiºier cuprinzând geometria tuturor secþiunilor ce trebuie realizate (formatul *.STL,
care se regãseºte în majoritatea sistemelor CAD performante).
Procesul este avantajos mai ales pentru piesele cu geometrie mai complicatã,
pentru care mijloacele de uzinare sunt limitate.
Procedeul de sinterizare selectivã cu laser (fig. 2.11) este similar cu
stereolitografia prin aceea cã, pornind de la modelul CAD 3D, prin convertirea în
Laser
Obiect
Platou mobil
Rãºinã
fotosensibilã
Suprafaþã
Elevator
Fig. 2.10.
Depunerea pudrei Realizarea stratului Coborârea poziþiei
Fig. 2.11.
34 BAZELE CAD
Lentile
Poziþia pe XY
Stratul
curent
Blocul “piesã”
Platforma
Rolã de
preluare
Rolã de
material
Material
Rolã de
laminare
Laser
Fig. 2.12.
“felii” subþiri se obþine prototipul fizic. În schimb materialul folosit nu mai este
rãºinã lichidã, ci pudrã de polimer solid în strat subþire. La trecerea laserului, pudra
de polimer se solidificã în zonele expuse, rezultând “felia” de prototip. Pe mãsurã
ce un strat este terminat de expus ºi se solidificã pânã la definitivarea modelului
solid se adaugã un nou strat de pudrã º.a.m.d.
Procedeul de modelare stratificatã utilizeazã acelaºi principiu de bazã,
cu deosebirea cã, “feliile” sunt realizate prin decupare din hârtie cu adeziv pe o
parte. Straturile de hârtie decupatã rãmân apoi lipite unul peste altul, luând
naºtere o piesã (fig. 2.12) care pare a fi executatã din lemn, având densitate ºi
proprietãþi similare.
35 GRAFICÃ ASISTATÃ DE CALCULATOR
3
GRAFICÃ ASISTATÃ DE CALCULATOR
Dupã cum s-a menþionat anterior, activitatea de programare care implicã entitãþi
grafice de intrare ºi de ieºire se numeºte programare graficã, iar domeniul respectiv
poartã denumirea de graficã asistatã de calculator.
Se poate afirma cã grafica asistatã este un instrument fundamental pentru
CAD, cu ajutorul cãruia sunt reprezentate modelele obiectelor pe display. Ca atare,
o prezentare a conceptelor de bazã este fireascã în contextul general al CAD-ului,
acestea regãsindu-se integral în terminologia CAD. De asemenea, o serie de
algoritmi ºi transformãri, sunt utilizate ca atare ºi în diverse operaþii de modelare
CAD, astfel încât prezentarea acestora este perfect justificatã.
În plus, faþã de conceptele de bazã, câteva elemente de software de graficã
asistatã vor fi prezentate în finalul capitolului.
În afarã de software-ul de bazã (sistemul de operare ºi limbajul de programare
cu componentele standard) necesar în programarea convenþionalã, în grafica asistatã
se foloseºte o categorie specificã de soft-uri ºi anume bibliotecile grafice.
Acestea înglobeazã în principal funcþii de afiºare graficã pe ecran, fãcând
legãtura dintre programul scris, la general, ºi dispozitivul grafic concret utilizat la
afiºare. Din acest motiv, în continuare, sunt definite câteva aspecte fundamentale
privind utilizarea spaþiului grafic de pe ecran, indiferent de tipul monitorului,
producãtorului etc.
36 BAZELE CAD
3.1. Sisteme de coordonate
Afiºarea imaginii unui obiect pe ecran se face pe baza unei corespondenþe
geometrice între poziþia în spaþiu a tuturor punctelor obiectului ºi a punctelor de pe
display care urmeazã sã fie luminate pentru afiºarea imaginii. Pentru stabilirea
acestei corespondenþe este necesarã existenþa unor sisteme de referinþã atât pentru
spaþiul obiectului cât ºi pentru spaþiul 2D al ecranului.
Pentru display, se utilizeazã un reper cu axele pe orizontalã ºi respectiv verticalã
denumit sistemul de coordonate al display-ului (DCS – Device Coordinate System).
Originea sistemului se aflã în colþul din stânga jos a monitorului. De regulã, axa
orizontalã (u) este îndreptatã cãtre dreapta, iar cea verticalã (v) în sus, valorile
coordonatelor u ºi v situându-se în domeniul [0,1], indiferent de mãrimea ºi tipul
ecranului. Astfel, un punct specificat în raport cu DCS va ocupa aceeaºi poziþie pe
ecran indiferent de tipul monitorului. Ca atare, programatorul poate specifica o
formã geometricã fãrã a þine cont de caracteristicile concrete ale monitorului.
În afarã de DCS, programatorul poate sã-ºi defineascã în raport cu acesta
propriile repere de coordonate asociate display-ului, în funcþie de necesitãþile concrete
din program.
În mod asemãnãtor, pentru spaþiul fizic al obiectului de modelat se defineºte
un reper absolut (WCS – World Coordinate System). În raport cu acest sistem se
stabilesc coordonatele tuturor punctelor relevante ale obiectului. Deseori, în aceastã
etapã, este utilã definirea unor repere de coordonate asociate obiectului, denumite
MCS (Model Coordinate System), precum ºi a unui reper de coordonate asociat
reprezentãrii de pe ecran - VCS (View Coordinate System). Între MCS ºi WCS se
stabilesc relaþii de transformare, astfel încât, în final, punctele sã poatã fi evaluate
în raport cu WCS.
Date fiind cele douã sisteme de coordonate, DCS ºi WCS, problema care se
pune este aceea a corespondenþei între ele. Principiul este de a proiecta obiectele
tridimensionale pe ecran aºa cum sunt ele proiectate pe retina ochiului. În grafica
asistatã se folosesc douã tipuri de proiecþii: perspectivã ºi paralelã. În perspectivã,
razele vizuale pleacã din punctele obiectului ºi sunt concurente în centrul de
proiecþie al ochiului (fig. 3.1), în timp ce în proiecþia paralelã razele vizuale sunt
considerate paralele.
Dupã adoptarea tipului proiecþiei, punctele acesteia pot fi calculate uºor pe
baza datelor geometrice ale obiectului, precum ºi a poziþiei relative faþã de punctul
de observare ºi respectiv ecran. Acestea sunt exprimate apoi în raport cu sistemul
ecranului VCS ºi folosite direct pentru afiºarea imaginii.
37 GRAFICÃ ASISTATÃ DE CALCULATOR
3.2. Transformãri geometrice ale modelelor CAD
Transformãrile geometrice joacã un rol central în CAD. Acestea nu se confundã
cu transformãrile grafice din cazul graficii asistate, care se referã numai la
transformãri de vizualizare. În plus, transformãrile geometrice CAD se referã ºi la
obþinerea unor entitãþi noi prin transformãri aplicate unor entitãþi deja existente în
baza de date. Acestea sunt utilizate la:
• transformãri de vizualizare a modelului pe display;
• generarea unor noi entitãþi prin translatare (MOVE), rotire (ROTATE)
sau oglindire (MIRROR);
• generarea proiecþiilor ortogonale ale modelului geometric 3D;
• generarea unor secvenþe succesive ale modelului în vederea simulãrii
miºcãrii (animaþie).
În mod obiºnuit sistemele CAD lucreazã cu douã modele distincte: modelul
intern (adevãratul model reprezentat în fiºier) ºi modelul matriceal (modelul 2D),
folosit pentru afiºare.
Operaþiile care invocã transformãrile geometrice sunt de douã feluri:
• Operaþii de vizualizare - se referã la [re]generare vectorialã ºi sunt dispuse
în meniuri, de regulã în grupul VIEW. În acest caz, se opereazã asupra
reprezentãrii pe ecran, pe baza modelului intern din baza de date;
• Operaþii constructive - se referã la definirea de noi entitãþi, de regulã, prin
comenzile din grupul CONSTRUCT. În acest caz se opereazã asupra
modelului, îmbogãþindu-se astfel baza de date cu noi entitãþi.
Modelul ºi rezoluþia de afiºare pe ecran
Datoritã naturii display-ului este în mod necesar un model 2D, chiar dacã se
reprezintã un model intern care este 3D.
Fig. 3.1.
38 BAZELE CAD
Majoritatea sistemelor CAD afiºeazã imaginile grafice ca o simplã colecþie de
vectori (“liniuþe”), indiferent cã este vorba despre linii, cercuri, curbe, etc. Aceasta
se realizeazã deoarece rutinele grafice ale sistemului “nu ºtiu” sã traseze pe ecran
decât linii, între douã puncte.
Scopul rutinelor vectoriale este de a genera un numãr suficient de vectori
(liniuþe) astfel încât curbele sã aparã netede. Acest numãr este controlat printr-o
variabilã de sistem denumitã Display Tolerance (DT), care este deviaþia maximã a
reperezentãrii vectoriale faþã de curba realã.
De exemplu, pentru cazul unui cerc de razã R, pe baza toleranþei DT (fig. 3.2)
rezultã relaþia din care se scoate unghiul la centru al unui vector ecran:
DT 5 , 0 R
DT 5 , 0 R
2
cos
+
÷
=
u
, (3.1)
DT 5 , 0 R
DT 5 , 0 R
arccos 2
+
÷
= u . (3.2)
Numãrul necesar de segmente pentru reprezentarea cercului este:
u
t
=
2
n . (3.3)
Rezultatul obþinut pentru n din relaþia (3.3) se rotunjeºte ºi se calculeazã o
valoare corectã pentru unghiul la centru
rec
, aplicând aceeaºi relaþie.
Monitoarele comerciale sunt însoþite întotdeauna de diverse grafice care, în
funcþie de diagonala ecranului, adoptã o toleranþã de afiºare potrivitã cu sensibilitatea
ochiului uman, astfel încât afiºarea liniilor curbe prin contururi poligonale sã nu fie
sesizabilã.
Fig. 3.2.
R

+

0
,
5
D
T

R - 0,5DT
Toleranþa
afiºãrii (DT)
39 GRAFICÃ ASISTATÃ DE CALCULATOR
3.4. Transfomãri grafice 2D
3.4.1. Transformãri ale ferestrei de lucru (WINDOW)
Aceste transformãri se aplicã modelului de afiºare pe ecran. Cele mai uzuale
tipuri sunt: ZOOM ºi PAN ºi se bazeazã pe douã concepte fundamentale:
• WINDOW - este prin definiþie un cadru rectangular prin care utilizatorul
“inspecteazã” modelul.
• VIEWPORT - este o zonã din ecran în care este afiºat conþinutul unei
ferestre (window) ºi care urmeazã sã fie prezentat ca o imagine. Este
posibil ca pe ecran sã avem mai multe viewport-uri active în acelaºi timp.
Operaþia de windowing constã în transformarea vectorilor din WINDOW în
VIEWPORT ºi se numeºte viewing transformation (transformarea vederilor).
Transformarea generalã a unei vederi, în funcþie de necesitãþi, conþine operaþii de:
• scalare;
• rotaþie;
• translaþie.
Dacã în grupul de mai sus lipseºte rotaþia, rezultã o transformare tip zoom
window. Pentru acest caz, cu notaþiile din figura 3.3, transformarea unui punct din
coordonatele modelului în coordonatele ecranului se efectueazã cu relaþiile:
( )
( )
b w
b t
yb yt
yb s
l w
l r
xl xr
xl s
y y
y y
v v
v y
x x
x x
v v
v x
÷
÷
÷
+ =
÷
÷
÷
+ =
care în formã sinteticã devin:
d cy y
b ax x
w s
w s
+ =
+ =
(3.4)
Dupã ce se calculeazã valorile constantelor a, b, c, d, pentru un singur punct, toate
celelalte puncte ale modelului pot fi transformate folosind doar douã înmulþiri ºi
douã adunãri.
Transformarea zoom-window este foarte utilã în operaþiile de proiectare,
deoarece permite vizualizarea ºi editarea detaliilor modelelor geometrice. De obicei,
ea opereazã asupra modelului reprezentat pe ecran ºi din acest motiv, la mãriri
semnificative, pune în evidenþã forma poligonalã a liniilor curbe. Pentru corectarea
acestui efect este nevoie de regenerarea reprezentãrii pe ecran.
40 BAZELE CAD
3.4.2. Clipping
Clipping-ul (tundere) este operaþia prin care se suprimã partea care depãºeºte
limitele viewport-ului. În literaturã se cunosc mai multe tehnici, aspectul principal
care conteazã însã este rapiditatea operaþiei. Un algoritm celebru care este des
folosit este cel propus de Cohen ºi Sutherland, [McMAHON98]. Acest algoritm
se ocupã separat de cele trei cazuri posibile:
• linii aflate integral în WINDOW;
• linii aflate integral în afarã;
• calcul rapid al punctelor de capãt ale segmentelor vizibile din liniile parþial
vizibile.
Metoda asociatã presupune parcurgerea a douã etape:
1. Testarea liniilor pentru acceptare/respingere integralã;
2. Dacã linia nu trece de punctul 1, este împãrþitã în douã pãrþi la frontiera
ferestrei ºi apoi fiecare segment este
testat în conformitate cu punctul 1.
Principiul celor douã etape ale metodei
constã în:
1. Se împarte spaþiul 2D al modelului în 9
pãrþi ºi se alocã o valoare logicã pe 4 biþi
fiecãrei regiuni (fig. 3.4). Apoi tuturor
liniilor li se asociazã la capete codul
1001
0001
0101
1000
0000
0100
1010
0010
0110
Fig. 3.4.
y
t
y
b
WINDOW
x
l
x
r
P(x
w
,y
w
)
v
yt
P(x
s
,y
s
)
VIEWPORT
v
xl
v
xr
Fig. 3.3.
v
yb
41 GRAFICÃ ASISTATÃ DE CALCULATOR
regiunii în care se aflã.
2. Se testeazã codurile asociate liniilor la capete. Dacã ambele coduri sunt
0000 atunci linia este în întregime vizibilã. Dacã intersecþia codurilor unei
linii nu este 0000 atunci linia este în întregime invizibilã.
3. Liniile neeliminate de primele douã teste sunt divizate la frontiera ferestrei
ºi se repetã testele 1 ºi 2 pentru fiecare segment în parte.
3.5. Transfomãri grafice 3D
Principiile de bazã ale transfomãrilor grafice 3D se aseamãnã cu cele din
cazul 2D. Etapele de afiºare ale modelului sunt prezentate în figura 3.5.
În cazul general, planul xy al modelului (fig. 3.6) nu este paralel cu planul
ecranului. Se considerã transformarea generalã datã de rotaþia cu unghiul u în
jurul axei y a reperului asociat modelului real 0xyz (MCS - Model Coordinate
System). Prin transformare, se obþine sistemul ecranului 0x’y’z’ (fig. 3.6).
Coordonatele punctului P în sistemul ecranului pentru afiºare sunt:
( )
( )
z. z'
, sin r ' y
, cos r ' x
=
u ÷ ¢ =
u ÷ ¢ =
(3.5)
Þinând cont cã x = r cos
¢
ºi y = r sin
¢
, relaþiile (3.5) devin:
, z ' z
, cos y sin x ' y
, sin z cos x ' x
=
u + u ÷ =
u + u =
(3.6)
sau, în formã matricealã, extinsã ºi sinteticã
,
z
y
x
0 1 0
cos 0 sin
sin 0 cos
' z
' y
' x
(
(
(
¸
(

¸

(
(
(
¸
(

¸

u u ÷
u u
=
(
(
(
¸
(

¸

(3.7)
[P’] = [M
z
] [P].
Expresii similare se obþin ºi pentru rotaþiile în jurul celorlalte 2 axe. În
cazul cel mai general, transformarea punctelor între MCS ºi cel de-al doilea
Fig. 3.5.
WINDOWING Vectorizare CLIPPING Afiºare
42 BAZELE CAD
reper cuprinde 3 rotaþii, în jurul celor 3
axe de coordonate.
Efectuând transformãrile succesiv,
matricea transformãrii generale, pentru
orice rotaþie, se obþine ca produs vectorial
al matricelor de transformare canonicã:
[M] = [M
x
] · [M
y
] · [M
z
].
Operaþiile ZOOM sunt operaþii de
scalare ºi translaþie 3D.
Practic pentru scalare se pune aceeaºi
problemã, a transpunerii modelului real
pe ecran, dar modificat cu un factor de
scalã s. Pentru scalarea unui punct
oarecare P, se folosesc urmãtoarele relaþii analitice ºi matriceale:
s
z
' z
s
y
' y
s
x
' x
=
=
=
,
(
(
(
¸
(

¸

(
(
(
(
(
(
¸
(

¸

=
(
(
(
¸
(

¸

z
y
x
s
1
0 0
0
s
1
0
0 0
s
1
' z
' y
' x
. (3.8)
Pentru translaþie se pot scrie dependenþele:
x’ = x - dx
y’ = y - dy (3.9)
z’ = z - dz
sau în forma matricealã [P’] = [P] [d] - care este însã o formã incompatibilã cu
cele anterioare. De aceea se utilizeazã coordonate omogene. Acestea reprezintã
vectorii 3D de pe coloanele matricei, prin vectori cu 4 elemente, în care al 4-lea
element este factorul de scalã:
[sx sy sz s] unde s este factorul de scalã, care se ia 1. În acest fel
matricele devin 4x4.
De exemplu, translaþia definitã de relaþia (3.9) se scrie astfel:
(
(
(
(
¸
(

¸

(
(
(
(
¸
(

¸

÷ ÷ ÷
=
(
(
(
(
¸
(

¸

1
z
y
x
1 dz dy dx
0 1 0 0
0 0 1 0
0 0 0 1
1
' z
' y
' x
.
(3.10)
y’
y
P(x,y)
P’(x’,y’)
x’
x

r
z
Fig. 3.6.
43 GRAFICÃ ASISTATÃ DE CALCULATOR
Rotaþia ºi scalarea definite de relaþiile (3.7) ºi (3.8) se descriu prin:
(
(
(
(
¸
(

¸

(
(
(
(
¸
(

¸

÷ ÷ ÷
=
(
(
(
(
¸
(

¸

1
z
y
x
1 dz dy dx
0
0 ] M [
0
1
' z
' y
' x
, (3.11)
unde [M] este matricea de rotaþie sau matricea de scalare, dupã caz. În acest fel,
toate transformãrile din spaþiul model în spaþiul ecran sunt de forma:
[ ] [ ] [ ] P A ' P = .
Pentru orice transformare, trebuie evaluatã matricea [A], care se utilizeazã
apoi pentru toate punctele din baza de date.
3.6. Tehnici de creare a imaginilor realistice
Acestea se referã la douã probleme distincte:
• Eliminarea muchiilor suprafeþelor ascunse;
• Colorarea suprafeþelor vizibile în raport cu condiþiile de iluminare.
3.6.1. Eliminarea muchiilor ascunse
Tehnica presupune omiterea liniilor ascunse la afiºare ºi este similarã cu
CLIPPING-ul, implicând, de asemenea, segmentarea ºi afiºarea parþialã a muchiilor
parþial ascunse. Diferenþa esenþialã constã în aceea cã de data aceasta testarea
nu se face în raport cu o fereastrã ci unele în raport cu altele. De aceea, eliminarea
muchiilor ascunse este un proces relativ consumator de timp.
Testarea muchiilor în raport cu feþele modelului luate ca atare este foarte
mare consumatoare de timp. De aceea majoritatea softurilor utilizeazã tehnica
tessellation - care implicã subdivizarea ºi aproximarea suprafeþelor cu poligoane
plane. Testarea faþã de suprafeþe plane este mai simplã ºi, deci, mai rapidã, iar
eroarea de aproximare este neglijabilã.
Testarea se efectueazã bineînþeles în sistemul de coordonate al modelului
(MCS), în raport cu un punct de observare, iar apoi entitãþile rãmase sunt
transformate în spaþiul 2D al ecranului în vederea afiºãrii.
Eliminarea muchiilor ascunse este un proces destul de costisitor, care la modelele
geometrice de dimensiuni foarte mari poate necesita timpi de calcul importanþi. În
acelaºi timp, este o metodã sigurã, cu fiabilitate foarte bunã.
44 BAZELE CAD
3.6.2. Eliminarea suprafeþelor ascunse
Aceasta este o tehnicã care proceseazã imaginea afiºatã pe display, ºi este
mult mai puþin sensibilã la complexitatea modelului decât tehnica liniilor.
În plus aceasta se bazeazã pe conceptul de coerenþã, conform cãruia în interiorul
unei suprafeþe diferenþa între pixelii vecini este micã. Existã mai multe tehnici de
sortare, care lucrând pe fiºierul display au avantajul cã sunt foarte rapide.
3.6.3. LIGHT ºi SHADE
Pentru completarea imaginii realistice, suprafeþele vizibile se coloreazã utilizând
o anumitã culoare ºi intensitate luminoasã. Aceasta se face luând în considerare
culoarea ºi orientarea feþelor vizibile, precum ºi iluminarea, care este de douã feluri:
• difuzã ºi reprezentatã prin intensitatea constantã a ambientului I
a
în orice
punct al spaþiului MCS;
• sursã punctiformã - caz în care se ia în considerare intensitatea reflectatã
de suprafaþele din raza vizualã.
În funcþie de acestea se utilizeazã modelul reflexiei difuze (lumina este reflectatã
în toate direcþiile), conform cãruia intensitatea luminoasã într-un punct curent se
calculeazã cu relaþia:
( ) [ ]
¿
=
+ =
n
1 i
i
pi a s
n P R I R I I , (3.12)
în care n este normala la suprafaþa de reflexie “i” în punctul P
i
; R - coeficientul de
reflexie a luminii; I
s
- luminozitatea totalã.
Datoritã utilizãrii modelelor cu faþete în scopuri de afiºare, pentru eliminarea
efectului de “cioplire” este necesarã interpolarea unei funcþii pentru I
s
astfel încât,
la graniþa dintre faþete sã nu existe schimbãri bruºte de culoare ºi tonalitate. Pentru
aceasta existã douã tehnici principale:
• tehnica Gourand (1971) - calculeazã intensitãþile pe muchii ºi le interpoleazã,
fiind deci o tehnicã de interpolare scalarã;
• tehnica PHONG (1975) - calculeazã vectorii normali pentru toate
poligoanele ºi îi interpoleazã astfel încât factorul
n
din relaþia (3.12) nu
are valori discrete ci continue. Este o tehnicã vectorialã, mai consumatoare
de timp decât prima, însã corecþia este calitativ mai bunã.
Majoritatea softurilor comerciale curente includ în gradul de facilitãþi pentru
prezentarea realisticã ambele tehnici, astfel încât utilizatorul sã poatã avea propria
opþiune, deoarece diferenþele sunt aproape insesizabile.
45 GRAFICÃ ASISTATÃ DE CALCULATOR
3.7. Biblioteci grafice
3.7.1. Privire generalã
Bibliotecile grafice sunt ansamble de subrutine adoptate de cãtre producãtorii
de dispozitive grafice în vederea facilitãrii dezvoltãrii de aplicaþii grafice interactive
PORTABILE. Din punct de vedere al utilizãrii în CAD, se disting douã nivele de
biblioteci grafice:
• Biblioteci de nivel jos (low-level graphic library), denumite uneori ºi “limbaje
de asamblare” în grafica asistatã. Acestea sunt strict legate de obiectivul
PORTABILITÃÞII aplicaþiilor de graficã asistatã între diverse dispozitive
grafice ºi de aceea existã eforturi considerabile de standardizare la nivel
internaþional. La ora actualã standardul grafic teoretic în vigoare pe plan
internaþional este PHIGS. Pe lângã acesta însã funcþioneazã ºi este acceptat
ca standard “de facto” ºi biblioteca graficã OpenGL dezvoltatã de
compania Silicon Graphics. Ultima a ajuns sã predomine în majoritatea
aplicaþiilor datoritã performanþelor sale. Caracteristica principalã a acestor
biblioteci este aceea cã numãrul entitãþilor fundamentale este redus,
incluzând puncte, linii, triunghiuri ºi patrulatere (quads). Mai departe, orice
formã este construitã cu aceste primitive grafice, chiar dacã aparent
biblioteca oferã ºi posibilitãþi mai dezvoltate.
• Biblioteci de nivel înalt (high-level graphic library), care au drept scop
crearea unui nucleu de subrutine grafice (graphic Kernel) destinate
modelãrii geometrice în principal. Aceste biblioteci sunt destinate
producãtorilor de software CAD sau Realitate Virtualã ºi sunt într-o
evoluþie continuã, pentru a putea satisface cerinþele clienþilor. Deºi nu
sunt standardizate, pe piaþa comercialã de specialitate, s-au impus cu
precãdere douã nuclee - ACIS ºi PARASOLID.
De fapt aceste biblioteci de rutine “C++” sunt atât de vaste ºi sofisticate,
încât constituie chiar nucleul CAD, deoarece ele sunt concepute ºi destinate în
primul rând acestui gen de aplicaþii. Caracteristicile acestor biblioteci vor fi
prezentate succint în capitolul 13.
3.7.2. OpenGL
OpenGL a fost dezvoltatã de cãtre Silicon Graphics pornind de la o versiune a
SGI GL Graphic Library, cãreia au dorit sã-i confere o portabilitate maximã (de
aici denumirea de OPEN).
Subrutinele din OpenGL pot fi apelate în programe “C” ºi includ funcþii de
46 BAZELE CAD
generare a obiectelor construite cu primitivele fundamentale, care sunt puncte, linii
ºi poligoane. Odatã generat obiectul, OpenGL conþine rutine de creare a vederilor
realistice, suprafeþe, transparenþã, texturi etc. Deºi sunt 100% portabile, aplicaþiile
OpenGL sunt mai rapide pe platformele Silicon Graphics, ca atare creând un avantaj
pentru acestea pe piaþa hardware.
Subrutinele OpenGL pot fi utilizate în programe “C” prin apelarea bibliotecilor,
în mod obiºnuit, la începutul programului prin instrucþiunea (comanda):
# include <GL / gl.h>
Toate funcþiile OpenGL încep cu prefixul gl în faþa cuvintelor, cu semnificaþia
respectivã (exemple: glClear, glClearColor).
În afarã de biblioteca propriu-zisã existã ºi sunt utilizate câteva extensii ale
acesteia care încorporeazã în plus dezvoltãri suplimentare:
• toolkit-ul GLU() - oferã facilitãþi pentru stabilirea matricelor de transformare
în transformãrile geometrice, lucrul cu suprafeþe NURBS, cuadrice,
retezarea suprafeþelor etc.;
• toolkit-ul GLUT (OpenGL Utility Toolkit) - pentru operaþiile de windowing,
interactivitate (lucrul cu mouse-ul) ºi meniuri;
• T
cl
/ T
k
- toolkit pentru crearea interfeþelor grafice utilizator (interpretor al
liniei de comandã, limbaj de scriptare, facilitãþi generale de programare -
variabile, bucle de ciclare, proceduri etc.).
Pentru a ilustra utilizarea bibliotecii OpenGL, în fragmentul urmãtor se prezintã
un program foarte simplu în “C” care deschide o fereastrã ºi traseazã un pãtrat,
dupã care se tipãreºte mesajul “Salut!” în fereastrã.
# include <stdio.h>
# include <GL / glut.h>
void afiºare (void)
{
glClear (GL_COLOR_BUFFER_BIT);
glColor3f (0.0, 1.0, 0.0);
glBegin (FL_POLYGON);
glVertex3f (2.0, 4.0, 0.0);
glVertex3f (8.0, 4.0, 0.0);
glVertex3f (8.0, 6.0, 0.0);
glVertex3f (2.0, 6.0, 0.0);
glEnd ();
glFlush ();
}
int main (int argc, char **argv)
47 GRAFICÃ ASISTATÃ DE CALCULATOR
{
printf (“Salut!\n”);
glutInit (&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB |
GLUT_DEPTH);
glutInitWindowPosition (100,100);
// stabilirea poziþiei ferestrei
glutInitWindowSize (300,300);
// stabilirea dimensiunilor ferestrei
glutCreateWindow (“square”);
// crearea ferestrei
glClearColor (0.0, 0.0, 0.0, 0.0);
// background negru
glMatrixMode (GL_PROJECTION);
// stabilire proiecþie view
glLoadIdentity ();
//matricea Identitate
glOrtho (0.0, 10.0, 0.0, 10.0, -1.0, 1.0);
//stabilire 10x10x2 viewing world
glutDisplayFunc (afiºare);
glutMainLoop ();
return 0;
}
În programul principal – main () – instrucþiunea glutInit iniþializeazã biblioteca
GLUT, iar glutInitDisplayMode stabileºte buffere-le asociate cu fereastra de afiºare
(de culoare - GLUT_RGB ºi adâncime pentru testul de vizibilitate -
GLUT_DEPTH). Instrucþiunea glutDisplayFunc (afiºare) stabileºte numele funcþiei
de afiºare creatã prin aceastã aplicaþie.
Unul din instrumentele foarte puternice de lucru în OpenGL este lista de
afiºare (Display list). O listã de afiºare este un grup de comenzi ale librãriei
grafice care a fost definit pentru o execuþie ulterioarã. Majoritatea comenzilor
OpenGL pot fi executate fie imediat, fie stocate într-o listã de afiºare. Ca atare, un
set de comenzi grafice poate fi denumit, organizat ºi manipulat foarte eficient într-
o listã de afiºare. De exemplu, pentru o operaþie de translaþie a unei imagini complexe
pe ecran ar fi trebuit sã se scrie comanda de translaþie pentru fiecare linie în parte.
În schimb, dacã se defineºte o listã de afiºare cu toate entitãþile obiectului, comanda
de translaþie se scrie o singurã datã.
O listã de afiºare se defineºte printr-o linie de deschidere (glBegin) ºi o linie
48 BAZELE CAD
de închidere a listei (glEnd). În exemplul de mai jos se defineºte o listã de afiºare
pentru un poligon.
glNewList (POLIGON, GL_COMPILE_AND_EXECUTE);
glBegin (GL_POLYGON);
glVertex2fv (point1);
glVertex2fv (point2);
glEnd ();
glEndList ().
49 DESENARE ASISTATÃ DE CALCULATOR
4
DESENARE ASISTATÃ DE CALCULATOR
Aplicaþiile de Desenare Asistatã de Calculator (DAC) sunt programe care
permit crearea ºi modificarea desenelor ºi schemelor inginereºti într-un mod
interactiv. În afarã de automatizarea unor operaþii constructive de rutinã pe care
le permite calculatorul, softurile de desenare asistatã de calculator aduc cu ele
toate avantajele pe care le au, de exemplu, un procesor de texte în tehnoredactare
cu posibilitãþi variate de formatare, modificare, editare etc.
Funcþiile uzuale pe care le îndeplineºte o aplicaþie de desenare asistatã de
calculator sunt prezentate în continuare ºi exemplificate pe un soft foarte rãspândit
ºi anume AutoCAD. Deºi acest soft include ºi facilitãþi vaste de modelare
geometricã, destinaþia sa principalã a fost ºi rãmâne desenarea asistatã de calculator
(pentru partea de modelare geometricã AutoDESK a lansat o extensie AutoCAD,
care se numeºte Mechanical Desktop).
4.1. Formatul de desenare
Prima operaþie la realizarea unui desen tehnic pe calculator este stabilirea
datelor generale de lucru cum ar fi: unitãþi de mãsurã, limitele desenului, grid-uri ºi
layer-e.
Pentru unitãþile de mãsurã, trebuie specificat formatul (de afiºare) pentru
mãrimile de distanþã ºi unghiuri. Formatul pentru distanþe poate fi ºtiinþific, zecimal,
fracþie, ingineresc, arhitectural. Pentru unghiuri - unitãþile de mãsurã pot fi radiani,
grade centesimale sau grade hexagesimale (afiºate în grade-minute-secunde sau
cu zecimale obiºnuite). În figura 4.1 se prezintã caseta de dialog pentru controlul
unitãþilor de mãsurã în AutoCAD 2000.
50 BAZELE CAD
Limitele de desenare reprezintã dimensiunile unui dreptunghi imaginar care
încadreazã reprezentãrile desenului la scara 1:1. În AutoCAD 2000 limitele se
stabilesc cu urmãtoarea secvenþã de comenzi:
Command: limits
Reset Model Space Limits
ON / OFF / <Lower left corner> <0.00, 0.00>: 10, 10
Upper right corner <12.00, 9.00>: 300, 200.
Indiferent de scara la care se va reprezenta desenul pe hârtie (este evident cã
pentru cazul unui pod scara va fi subunitarã), limitele stabilite prin aceastã comandã,
este bine sã ia în considerare scara unu la unu, care este recomandatã pentru a
facilita operaþiile de cotare ulterioare.
4.2. Layere
Layerele sunt echivalentul unor folii transparente suprapuse (straturi), pe care
se grupeazã anumite componente ale desenului mai ales în cazul desenelor complexe.
Lucrul cu layerele poate facilita selectarea, atunci când densitatea de linii este
mare, copierea, transferul sau editarea grupurilor de entitãþi. Layerele sunt utile, de
asemenea, la realizarea desenelor de circuite multistrat în electronicã, ca ºi la
Fig. 4.1.
51 DESENARE ASISTATÃ DE CALCULATOR
concepþia ansamblelor complexe. Dacã fiecare componentã a fost realizatã pe un
layer separat, desenele de execuþie individuale pot fi generate uºor pornindu-se de
la layerul respectiv. În figura 4.2 se prezintã caseta de control a layerelor din
AutoCAD 2000.
4.3. Funcþii de desenare de bazã
Funcþie de desenare propriu-zisã a unui sistem DAC se realizeazã cu ajutorul
unui set de 5 entitãþi 2D fundamentale, care acoperã toate necesitãþile privind
realizarea formelor ºi contururilor. Acest set de 5 entitãþi se regãseºte în toate
softurile DAC, cu diferenþe minime, mai ales în ceea ce priveºte modul interactiv
de lucru.
Fig. 4.2.
52 BAZELE CAD
4.3.1. Entitãþi fundamentale
Setul de entitãþi fundamentale absolut necesare desenãrii cu ajutorul cãruia se
realizeazã ºi alte tipuri de entitãþi acoperã urmãtoarele tipuri de linii: segment de
dreaptã, cerc, arc, spline ºi elipsã.
În tabelul 4.1 se prezintã aceste entitãþi, împreunã cu modul de apelare ºi
dialog în AutoCAD 2000.
Tabelul 4.1.
1. LINE
• Deseneazã pe ecran o succesiune de segmente de dreaptã
• Se lanseazã prin comandã de la tastaturã (line), meniu sau buton
Elemente de dialog
Line lansare comandã
First point punctul de start al seriei de segmente
Next point urmãtorul punct al seriei de segmente
Close închide conturul poligonal
Undo ºterge ultimul segment desenat
<Enter> încheie comanda
2. CIRCLE
• Deseneazã un cerc
• Se lanseazã de la tastaturã cu comanda “Circle” sau “C” sau din
meniu / buton
Elemente de dialog
Circle lansare comandã
Center point centrul cercului
2Point cerc definit prin douã puncte diametral opuse
3Point cerc definit prin trei puncte
Radius raza cercului
Diameter diametrul cercului
Ttr (tan tan radius) cerc de razã datã, tangent la douã obiecte date
next point
first point
close
next point
53 DESENARE ASISTATÃ DE CALCULATOR
3. ARC
• Deseneazã un arc de cerc
• Se lanseazã de la tastaturã cu comanda “Arc” sau “a”, sau din
meniu / buton
Elemente de dialog
Arc lansare comandã
Angle unghiul la centru al arcului
CEnter centrul arcului
Direction direcþia tangentei în punctul de start
ENd punctul final al arcului
chordLength lungimea coardei arcului
Radius raza arcului
Start point punctul de început al arcului
Second point al doilea punct pe arc
Center
R
a
d
i
u
s
D
ia
m
e
t
e
r
2Point
P
1
P
2
3Point
P
1
P
2
P
3
Ob.1
Ttr
R
Ob.2
Tabelul 4.1. (continuare)
Start
Second
End
Start
End
Center
Start
Angle
Center
Start
R
a
d
i
u
s
End
Start
Length
Center
D
i
r
e
c
t
i
o
n
Start
End
54 BAZELE CAD
4. SPLINE
• Deseneazã o curbã spline de gradul 3 (cubic spline) sau Bspline
• Se lanseazã cu comanda “Spline”, sau din meniu / buton
Elemente de dialog
Enter points se introduc punctele de control ale curbei
Close se închide curba
Fit tolerance stabileºte toleranþa de aproximare a curbei Bspline în
raport cu punctele de control
Start tangent defineºte tangenta în punctul de început al curbei
5. ELLIPSE
• Deseneazã o elipsã
• Se lanseazã cu comanda “Ellipse” de la tastaturã sau de la meniu
/ buton
Elemente de dialog
Arc deseneazã un arc de elipsã
Center centrul elipsei
Rotation se defineºte elipsa ca proiecþie a unui cerc rotit
Izocircle deseneazã un cerc în vedere izometricã (elipsã)
Axis endpoint capãtul axei
Distance distanþa pânã la capãtul celei de-a doua axe
Radius raza cercului izometric
Diameter diametrul cercului izometric
Tabelul 4.1. (continuare)
P
1
P
1
P
6
P
5
P
4
P
3
P
2
P
2
P
3
P
4
P
1
Close
P
2
P
3
P
4
Fit tolerance
P
1
P
2
P
3
P
4
Fit
Axis
Endpoint
Center
D
i
s
t
a
n
c
e
P
1
P
2
Rotation
Izocircle
55 DESENARE ASISTATÃ DE CALCULATOR
4.3.2. Entitãþi combinate
Deºi, în principiu, cu entitãþile fundamentale se poate realiza practic orice
formã 2D ce intervine în inginerie, softurile DAC mai propun în plus o serie de
funcþii bazate pe entitãþile fundamentale care automatizeazã realizarea unor operaþii
mai “migãloase”: racordãri / teºiri, haºurãri, cotãri sau adnotãri.
a) Racordarea / teºirea
Termenii utilizaþi pentru comenzile de racordare sunt “fillet” ºi “round”, iar
efectul comenzii constã în adãugarea unui arc circular, între douã segmente care
se intersecteazã, tangent în capete la cele douã segmente.
În principiu, comanda “fillet” este utilizatã pentru colþuri interioare (concave,
fig. 4.3,b), iar “round” pentru colþuri exterioare (fig. 4.3,c).
Teºirea (chamfer) este similarã cu racordarea, cu diferenþa cã în loc de arc,
între cele douã segmente se adaugã un segment de dreaptã.
În realitate, racordarea / teºirea este echivalentã cu un grup de operaþii care
implicã entitãþile fundamentale adiacente (fig. 4.3,a) ca:
• stabilirea razei;
• trasarea cercului;
• retezarea segmentelor la nivelul arcului.
În AutoCAD 2000, secvenþa de comenzi pentru racordare (interioarã ºi
exterioarã) este:
Command: fillet
(TRIM mode) Current fillet radius = 10.00
Polyline / Radius / Trim / <Select first object> r
Formã originalã Trasare arc Retezare
a)
b) c)
Fig. 4.3.
56 BAZELE CAD
Enter fillet radius <current>: 3
(TRIM mode) Current fillet radius = 3.00
Command: fillet
Polyline / Radius / Trim / <Select first object>
// Se selecteazã primul segment
Select second line
// Se selecteazã al doilea segment
b) Haºurarea
Pentru haºurarea unui contur închis, se plaseazã un model de haºurare prestabilit
în conturul respectiv. Modelul de haºurã poate fi ales dintr-o bibliotecã de modele
sau poate fi setat de cãtre utilizator.
Câteva din modelele existente în majoritatea softurilor DAC sunt prezentate
în fig. 4.4.
În AutoCAD 2000, haºurarea se realizeazã cu comanda Hatch care permite
haºurarea unui contur închis prin indicarea liniei de contur:
Command: Hatch
Pattern name or [? / Solid / User defined] <ANSI31>
Opþiunile acestei comenzi au urmãtoarea semnificaþie:
• Pattern name - permite alegerea unui model de haºurã (pattern), prin
indicarea numelui dupã care se alege scara ºi unghiul de desenare a haºurii;
• ? - afiºeazã lista modelelor de haºuri din biblioteca AutoCAD;
• Solid - pemite umplerea completã a conturului închis;
• User defined - permite utilizatorului sã-ºi defineascã un stil de haºur simplu
prin indicarea unghiului de înclinare al liniilor ºi a distanþei dintre liniile de
haºurã.
De asemenea, haºurarea se mai poate face ºi cu comanda Bhatch, care
permite o haºurare mai comodã bazatã pe caseta de dialog din figura 4.5. Aceastã
casetã de dialog permite setarea urmãtorilor parametri:
• proprietãþile haºurii: tip (predefinit sau User defined), unghi de înclinare,
scarã;
Fig. 4.4.
ANGLE ANSI31 ANSI32 ANSI36 ANSI35 ANSI34 ANSI33
CROSS DASH EARTH ESCHER FLEX HONEY SQUARE
57 DESENARE ASISTATÃ DE CALCULATOR
• modul de selectare al conturului (printr-un punct interior sau prin selectarea
conturului);
• modul de tratare a contururilor interioare (insule);
• copierea proprietãþilor unei haºuri existente pentru haºura curentã;
• haºurarea asociativã (în sensul modificãrii haºurei odatã cu modificarea
conturului).
Pentru indicarea conturului este necesarã selectarea doar a unui punct oarecare
din interiorul conturului.
c) Cotarea
Prin operaþia de cotare se înscriu cotele necesare pe un desen, în conformitate
cu standardele în vigoare. Elementele din care se compune o cotã sunt ilustrate în
figura 4.6.
Capacitatea de cotare a sistemelor DAC este consideratã cea mai atractivã
trãsãturã, deoarece valorile efective ale cotelor sunt automat mãsurate pe desen ºi
Fig. 4.5.
58 BAZELE CAD
oferite ca valoare implicitã pentru realizarea finalã a cotãrii. În acest mod, se obþine
un puternic instrument de verificare a documentaþiei chiar la proiectare ºi astfel
multe greºeli de proiectare sunt prevenite.
Deºi existã cercetãri pentru realizarea unor algoritmi de cotare automatã,
aceastã operaþie încã se realizeazã interactiv, deoarece cotarea însãºi este un limbaj
ingineresc deosebit de subtil, cu ajutorul cãruia proiectantul comunicã foarte eficient
cu inginerii tehnologi ºi de execuþie din “aval”.
În AutoCAD 2000 cotarea se realizeazã cu comenzile din familia DIM (DIM,
DIM1 ºi QDIM):
• DIM - deschide o sesiune de cotare (prompterul “Command:” se înlocuieºte
cu “DIM”);
• DIM1 - traseazã o singurã cotã dupã care se revine la prompterul
“Command:”;
• QDIM - este o comandã care permite realizarea simultanã a unor cote
similare la obiecte de acelaºi fel, prin selectarea lor împreunã.
Aceste comenzi permit definirea tuturor caracteristicilor de cotare printr-un
mare numãr de subcomenzi, prezentate în tabelul 4.2.
Toate subcomenzile corespund unor anumite valori pentru variabilele de cotare
AutoCAD.
Modificarea stilului de cotare se poate realiza rapid în AutoCAD 2000 prin
intermediul casetei de dialog “Dimension Style Manager” afiºatã la introducerea
comenzii Dimstyle (fig. 4.7). Pe aceastã cale se pot defini stiluri complete de
cotare, ce se referã la dimensiunea sãgeþii, liniile ajutãtoare, felul de cotare a razelor
ºi diametrelor etc. Stilul respectiv este ilustrat în zona de “Preview” a casetei,
astfel încât se pot vizualiza concret caracteristicile acestuia.
Extremitãþile
cotei
35
Textul cotei
Linie de
cotã
Linie
ajutãtoare
Fig. 4.6.
59 DESENARE ASISTATÃ DE CALCULATOR
Tabelul 4.2.
Fig. 4.7.
60 BAZELE CAD
d) Plasarea textelor în desen
Pentru completarea condiþiilor tehnice ºi tehnologice în desene, a indicatoarelor,
tabelelor de componenþã, notelor º.a.m.d, se plaseazã în desene texte a cãror poziþie,
orientare, font ºi mãrime de caracter se stabilesc prin comenzi dedicate. În AutoCAD
2000, acest lucru se realizeazã cu comanda Style, la lansarea cãreia se afiºeazã
caseta de dialog “Text Style” redatã în figura 4.8.
Aceastã casetã permite stabilirea principalelor caracteristici ale stilurilor de
scriere, dupã cum urmeazã:
• Style Name (numele stilului) - permite definirea mai multor stiluri de text
care se salveazã sub nume diferite;
• Font - fontul ales pentru stilul curent;
• Height - mãrimea fontului;
• Width factor - factorul de lãþime;
• Oblique angle - unghiul de înclinare al scrierii;
• Upside down - scriere în oglindã;
• Backwords - scriere de la dreapta la stânga;
• Vertical - scriere pe verticalã.
Pentru scrierea efectivã a textului se foloseºte una din comenzile Text, DText
sau MText care se folosesc în urmãtoarele situaþii:
Fig. 4.8.
61 DESENARE ASISTATÃ DE CALCULATOR
• Text - pentru scrierea unei singure linii de text la o apelare;
• DText - pentru scrierea mai multor linii de text la o apelare;
• MText - pentru scrierea unui întreg paragraf de text (fig. 4.9).
e) Generarea de blocuri ºi referinþe externe
În afarã de entitãþile combinate menþionate anterior, utilizatorul poate defini
propriile entitãþi combinate prin gruparea unui numãr de entitãþi într-un bloc, sub un
nume, care va fi tratat ulterior ca o singurã entitate. Operaþia este, de regulã, reversibilã
printr-o comandã de explodare (de exemplu, în AutoCAD 2000, comanda Explode).
Odatã definite, blocurile pot fi inserate suplimentar în desen ori de câte ori este
nevoie prin comanda Insert. Cu aceeaºi comandã, orice desen înregistrat anterior
pe disc este tratat ca un bloc ºi poate fi deci inserat oriunde în desenul curent.
În AutoCAD 2000, comanda Wblock poate salva o parte sau întregul desen
ca block, prin intermediul casetei de dialog Write block (fig. 4.10).
Definirea blocurilor este foarte avantajoasã în cazul obiectelor care apar de
mai multe ori în desen, deoarece în baza de date entitãþile blocului apar o singurã
datã. Ca atare, în acest fel, se minimizeazã dimensiunile fiºierului, cu toate avantajele
care decurg de aici.
Fig. 4.9.
62 BAZELE CAD
În mod asemãnãtor se lucreazã ºi cu referinþele externe, care sunt desene
de pe disc apelate în desenul curent. Avantajul acestora este acela cã entitãþile lor
componente nu “încarcã” baza de date a desenului curent, de asemenea, faciliteazã
propagarea modificãrilor (în cazul în care referinþa suferã modificãri, acestea se
regãsesc automat ºi în desenul în care aceasta este apelatã).
f) Atribute
Blocurile pot fi definite cu “atribute”, care reprezintã texte asociate ce pot
primi o altã valoare la fiecare inserare. Atributele sunt foarte utile la realizarea
formatului de desenare, indicatorului ºi/sau tabelului de componenþã.
În AutoCAD 2000 atributele se creeazã cu comanda ATTDEF, care are ca
efect afiºarea casetei de dialog Atribute Definition (fig. 4.11). Semnificaþia
principalelor elemente ale casetei sunt urmãtoarele:
Fig. 4.10.
63 DESENARE ASISTATÃ DE CALCULATOR
• Mode - stabileºte starea atributului: Invisible, Constant, Verify (se verificã
valoarea la inserare), Preset (valoarea este prestabilitã - nu se cere la
inserare);
• Datele atributului - Tag (denumire), Prompt ºi Value (valoare);
• Insertion Point - coordonatele punctului de inserare (se poate selecta un
punct pe ecran - pick);
• Text Options - caracteristicile textului.
Atributele se definesc înainte de definirea blocului, pentru fiecare text în
parte, þinând cont de poziþia fiecãruia în raport cu entitãþile componente ale
desenului.
4.4. Funcþii utilitare
Instrumentele descrise mai sus reprezintã nucleul oricãrui sistem de
desenare asistatã de calculator, care fac posibilã realizarea desenelor în format
electronic cu o productivitate ºi precizie mai mare, la fel cum editoarele de
texte mãresc productivitatea la redactarea documentelor scrise. În mod similar,
aplicaþiile DAC sunt prevãzute cu facilitãþi de editare (comenzi tip copy, move,
rotate etc.) care sunt foarte utile la realizarea ºi modificarea desenelor. În
Fig. 4.11.
64 BAZELE CAD
anexa 1 este prezentatã o listã completã a comenzilor disponibile în AutoCAD
2000, iar în figura 4.12 un exemplu de desen în care s-au folosit comenzile ºi
facilitãþile descrise anterior.
Fig. 4.12.
65 MODELARE GEOMETRICÃ
5
MODELAREA GEOMETRICÃ
5.1. Modele ºi metode de modelare
5.1.1. Proiectarea ºi rolul CAD
Etapele pe care le parcurge un produs în procesul de proiectare,
[McMAHON98], sunt:
• Proiectarea funcþionalã (Functional Design) - cuprinde colectarea de informaþii
despre cerinþele ºi restricþiile de proiectare precum ºi redactarea caietului de
sarcini. În aceastã etapã se definesc funcþiile produsului, funcþionarea corectã,
dar ºi eventualele moduri de funcþionare incorectã care trebuie evitate.
• Proiectare conceptualã (Conceptual Design) - cuprinde stabilirea clarã a
funcþiilor ºi identificarea soluþiilor potrivite. În aceastã etapã se identificã deja
o structurã tehnicã ce poate îndeplini funcþiile de la punctul precedent. Ideile ºi
conceptele, în aceastã etapã, sunt generate ºi analizate la un nivel abstract.
• Proiectare organologicã (Embodiment Design) - în aceastã etapã, soluþia
conceptualã este dezvoltatã, problemele sunt rezolvate ºi slãbiciunile
eliminate. Rezultatul proiectãrii conceptuale este transformat într-o structurã
fezabilã, compusã dintr-un numãr de module, submodule, ansamble,
subansamble, elemente, componente ºi elemente de interfaþã între acestea.
Rezultatul tipic al acestei etape îl constituie desenele de ansamblu principale.
• Proiectare în detaliu (Detail Design) - este o etapã în care sunt stabilite
dimensiunile, toleranþele ºi materiale pentru toate componentele produsului.
În aceastã etapã documentaþia este elaboratã astfel încât este posibilã
lansarea în fabricaþie a prototipului. În mod obiºnuit, rezultatul acestei etape
66 BAZELE CAD
îl constituie documentaþia de execuþie a produsului.
• Analiza inginereascã (Engineering Analysis) - este ultima etapã a proiectãrii,
în care proiectul este evaluat în raport cu specificaþiile funcþionale, sunt
studiate caracteristicile de rezistenþã, vibraþii ºi zgomot (acustic sau electric).
Pentru sisteme mai complexe se fac ºi simulãri care pun în evidenþã
performanþele produsului. În funcþie de rezultatele obþinute la analizã, tot
în aceastã etapã se aduc proiectului corecþiile ºi îmbunãtãþirile necesare.
În figura 5.1 se prezintã o organigramã, propusã de autor pentru procesul de
proiectare în conformitate cu modelul de mai sus.
Experienþa aratã însã cã frontierele între diversele etape ºi operaþiuni sunt
mobile de la caz la caz; de exemplu, foarte adesea caietul de sarcini este elaborat
chiar de cãtre proiectant pentru a rãspunde unei oferte ºi în acest caz se include ºi
un model structural semiconstructiv, cu destul de multe detalii asupra concepþiei,
pentru a convinge clientul ºi a câºtiga comanda; alteori, chiar dacã caietul de sarcini
transmis de cãtre client poate conþine “tema”, ideea ºi structura funcþionalã concretã
ia naºtere dupã un studiu preliminar, atunci când se cere o documentaþie pentru
materializarea unor principii nestudiate pânã atunci.
De asemenea, diferitele etape de analizã pot avea loc puþin mai în “aval” sau
în “amonte”, în funcþie de cerinþele concrete de intrare (INPUT) la analizã.
Cerinþe
¹
Caiet de
sarcini
IDEI, INOVAÞII
¹
Model structural al
ansamblului
(scheme)
DESEN
ANSAMBLU
¹
- Model geometric
- Model dinamic
DESENE DE
EXECUÞIE
¹
- Model structural
intern
- Modele optimizare
- Modelare tehnologie
Analizã
- funcþionalã cali-
tativã
- cinematicã
Analizã
- dinamicã
- rezistenþã
- deformaþii
- optimizare an-
samblu
Analizã
- tehnologie
- toleranþe
- rezistenþã
- optimizare forme
Fig. 5.1.
67 MODELARE GEOMETRICÃ
Mai mult, fazele de proiectare nu sunt totdeauna atât de clar definite, existând
numeroase feed-back-uri, reveniri ºi reluãri ale fazelor - uneori în mod iterativ.
Þinând cont de aceasta, OSHUGA stabileºte în 1989 [ZEID93] un alt proces de
proiectare, care constã din abordarea simultanã a etapelor de mai sus, dar într-un
algoritm de evaluare ºi modificare reluat iterativ.
În conformitate cu [Bolluyt2000] procesul de concepþie cuprinde un numãr de
“paºi” sau activitãþi, care include:
• identificarea necesitãþilor;
• definirea problemei;
• documentare, informare;
• determinarea restricþiilor;
• selecþia criteriilor ºi ierarhizarea restricþiilor;
• dezvoltarea de soluþii potenþiale;
• analizã;
• selecþia soluþiilor cele mai bune;
• specificarea soluþiei optime;
• comunicarea soluþiei alese.
Deºi se recunoaºte o logicã definitã în ordinea acestor paºi, proiectarea este
prin natura sa un proces iterativ astfel încât însuºi autorul recunoaºte cã rareori
procesul descris este realizat pas cu pas, datoritã faptului cã unele activitãþi trebuie
reluate. De asemenea, existã activitãþi care sunt efectuate continuu (de exemplu,
etapa de “documentare / informare” care cuprinde consultarea permanentã a
literaturii de specialitate, analiza unor produse similare existente, interviuri, teste de
laborator etc.).
5.1.2. Rolul modelãrii ºi comunicaþiei
În timpul proiectãrii, produsul nu existã fizic, astfel cã cei ce lucreazã în comun
la proiect au nevoie de modele pentru analizele ºi evaluãrile pe care le fac. Ca
atare, modelele sunt reprezentãri ale produsului sau ale unor pãrþi ale acestuia care
servesc la analize ºi evaluãri. De exemplu, geometria unei componente poate fi
reprezentatã în mai multe moduri: în plan, axonometric, o reprezentare convenþionalã
formalã etc. În acest caz este vorba de un model geometric al componentei
respective.
Scopurile modelelor sunt înregistrarea ºi manipularea ideilor. Cum produsul
este rareori opera unei singure persoane, rezultã rolul crucial al modelelor pentru
comunicaþie între diverºii parteneri care participã la realizarea ºi lansarea produsului
(proiectare, execuþie, marketing, contractare, vânzãri etc.).
68 BAZELE CAD
5.1.3. Tipuri de modele
Procesul de proiectare discutat anterior sugereazã diversitatea reprezentãrilor
necesare în proiectare. În diferite faze, proiectantul utilizeazã diverse modele, în
funcþie de proprietãþile care trebuie luate în considerare de fiecare datã.
În principal, la proiectare se pot modela funcþia, structura, forma ºi/sau
tehnologia (fig. 5.2).
Modelarea funcþiilor conduce de regulã la modele matematice sau diverse
reprezentãri CAD echivalente care se pot folosi la evaluarea acestora. Modelarea
formei ºi a structurii au o importanþã deosebitã în inginerie ºi cea mai potrivitã
cale de reprezentare a acestora este cea graficã.
În multe domenii inginereºti (construcþii, poduri, vehicule), o parte majorã a
muncii proiectantului o constituie definirea formelor ºi aranjarea pieselor componente.
Aceasta se realizeazã prin desenarea formei.
Alte domenii au drept parte principalã structura produsului (adicã pãrþile, felul
ºi ordinea conexiunilor dintre ele), care poate fi de naturã electricã, hidraulicã etc.
În aceste cazuri, modelele sunt diagramele de structurã ºi aranjament.
Dacã modelul este destinat comunicaþiei, tipul sãu mai depinde ºi de destinatar. Astfel
în faza iniþialã de discuþii se poate discuta pe bazã de schiþe cu puþine detalii, iar dacã
modelul se adreseazã producþiei, documentaþia trebuie sã fie foarte precisã ºi completã.
În mod ideal, se poate considera cã în procesul concepþiei / ciclului produsului,
modelele 3D pe calculator pot fi baza centralã pentru toate informaþiile care descriu
soluþiile potenþiale (fig. 5.3).
Fig. 5.2.
Modelarea formei
Modelarea structurii
ansamblului
Modelarea structurii
interne
69 MODELARE GEOMETRICÃ
În concluzie, se poate afirma cã, în proiectare, activitãþile de modelare a formei
ºi a structurii sunt predominante.
Modelele conþin informaþii, de douã categorii:
• evaluatoare, prin care se apreciazã cantitativ unele proprietãþi;
• generatoare de acþiuni în concepþie ºi fabricaþie.
5.1.4. Modelarea asistatã de calculator
Anterior procesul de proiectare a fost prezentat ca o serie de etape în care
proiectul este progresiv perfecþionat la nivel abstract, pânã când se obþine o descriere
completã pentru construcþie ºi fabricare. În sprijinul sarcinilor pe care le au, inginerii
concep o serie de modele utilizând diverse reprezentãri ale produsului, alþii, implicaþi
în evaluare ºi fabricaþie, extrag informaþii din aceste modele sau îºi fac propriile
modele în vederea desfãºurãrii operaþiilor respective.
Rolul CAD-ului în acest proces intervine la douã nivele:
• Automatizarea unor operaþii de producere a desenelor, diagramelor, listelor
de componente etc.;
• Asistarea proiectantului cu facilitãþi perfecþionate de concepþie - evaluare.
Aceste douã nivele corespund unui flux al proiectãrii în care modelarea formei
ºi structurii reprezintã veriga de bazã (fig. 5.4).
În desenul manual, dimensiunea reprezentãrii este restricþionatã de mãrimea
hârtiei. În CAD aceastã restricþie nu existã. Modelul este construit printr-un set de
proceduri la scara realã atât în cazul unui pod cât ºi pentru un obiect minuscul.
Proiectare / Producþie / Construcþie / Marketing / Management etc.
Identificare ºi definire
necesitãþi
Documente /
Informare
Dezvoltare / Redefinire
Concepte
Produs final
Procese
Analizã:
OK? Foarte
bine?
Baza de
date
Concepþie
Ciclu de
concepþie
NU DA
I
n
t
r
ã
r
i
Fig. 5.3.
70 BAZELE CAD
În cazul obiectelor de mari dimensiuni, pentru vizualizare pe ecran se pot folosi
scãri reduse de reprezentare, dar la fel de bine ºi scara realã pentru a se lucra la
diverse zone de detaliu (evident, în acest caz, ecranul monitorului nu poate cuprinde
întregul ansamblu).
5.1.5. Tehnici de modelare geometricã
Modelarea 2D
În cazul spaþiului 2D, modelul geometric se compune dintr-o sumã de entitãþi
geometrice plane (punct, linie dreaptã, linie curbã etc.). Definirea entitãþilor se
face printr-o gamã largã de tehnici, dintre care o parte sunt sistematizate în figura
5.5. De regulã, modelul 2D cuprinde proiecþiile ortogonale ale obiectului sau o
schemã cinematicã, o diagramã etc., care se construieºte entitate cu entitate la
care se pot adãuga adnotãri, cote etc.
Tehnicile de modelare 2D au fost prezentate detaliat în capitolul 4. Pe baza
aspectelor prezentate se pot formula urmãtoarele concluzii:
• modelarea 2D se apropie de metoda tradiþionalã a desenatorului ºi se
realizeazã prin construcþia a diferite vederi plane ale obiectului;
• calculele efectuate de cãtre calculator sunt relativ simple;
• entitãþile 2D manipulate sunt: punct, segment, arc, cerc, elipsã, curbe plane
etc.
Deficienþa principalã este cã nu existã nici o relaþie între diferitele vederi, de
aceea pot apãrea probleme de inconsecvenþã între aceastea (mai ales dupã operarea
de modificãri).
Modelare
cinematicã
Modelare
dinamicã
Modelare câmpuri
termice
Modelare câmpuri
mecanice
Date de
fabricaþie
Cerinþe
Modelare formã
structurã
Fig. 5.4.
71 MODELARE GEOMETRICÃ
Avantajele principale ale modelãrii 2D sunt: performanþã (productivitate ºi
precizie) ºi comoditate.
Modelarea 3D
Modelarea 3D este altã metodã de modelare care se bazeazã pe construcþia
unei singure reprezentãri geometrice în spaþiul 3D. În acest fel, eventualele
x
y
Point
Centrul
cercului
INT
Pe o curbã
(NEAR)
Intersecþie curbã / suprafaþã
Pe o curbã ºi pe
normala printr-un punct
Line
Uneºte 2 entitãþi
Tangenta la
2 curbe
d
Paralelã faþã de
altã linie la o
distanþã datã
Linie
Tangenta sub
un unghi
Linie printr-un punct ºi
perpendicularã pe altã linie
Centru ºi razã
Prin 3 puncte
Centrul ºi tangenta
la o curbã
Racordare
Arc tangent ºi
punct
Douã puncte ºi
centru
PUNCT
ARC
LINIE
Fig. 5.5.
s s
s
s
s
s
s
Linie
Linie
Linie
72 BAZELE CAD
incoerenþe între diferitele vederi sunt eliminate. Reprezentarea 3D este conceputã
tot ca un ansamblu de linii, care pot fi drepte ºi/sau curbe (model WIREFRAME),
de suprafeþe (denumit model cu SUPRAFEÞE) sau de solide (denumit model
SOLID).
Metoda de reprezentare aleasã determinã felul operaþiilor care se pot face
asupra modelului precum ºi felul informaþiilor asociate.
În concluzie, în spaþiul tridimensional modelarea geometricã poate fi:
• WIREFRAME - reprezentarea se realizeazã prin liniile asociate muchiilor;
• cu SUPRAFEÞE - reprezentarea se realizeazã prin suprafeþe mãrginite
de contur;
• SOLIDÃ - reprezentarea se realizeazã prin feþe (suprafaþã orientatã) ºi/sau
primitive solide.
a) Modelul filar (WIREFRAME)
Numele provine de la aspectul modelului, asemãnãtor cu o reþea din sârmã,
obiectele fiind descrise prin segmente de curbe (segment = linie cu capete). Este
cea mai economicã metodã din punct de vedere timp - calculator ºi poate fi privitã
ca o extensie în 3D a tehnicilor de desenare 2D. De exemplu, posibilitatea de a
defini sistemul de coordonate de lucru (UCS) prin puncte existente (selectabile)
sau alte entitãþi, la fel ca în 2D (fig. 5.6).
O altã tehnicã frecvent întâlnitã este lucrul în plane cu diferite profunzimi. În
acest caz, este posibil, de exemplu, sã se selecteze intersecþia aparentã într-un plan
de lucru (WORKPLANE) a douã drepte care nu sunt concurente (fig. 5.7,a).
Modelarea Wireframe a fost metoda folositã în primele modeloare 3D,
datoritã simplitãþii ºi puterii minime de calcul cerutã. Ea este însã prezentã ºi în
softurile moderne, datoritã facilitãþilor suplimentare de manipulare a modelelor
pe care le adaugã.
x
y
z
z
x
y
z
x
y
UCS definit prin 3
puncte
UCS definit de
punct ºi linie
UCS definit de planul
unei entitãþi ºi un punct
Fig. 5.6.
73 MODELARE GEOMETRICÃ
În concluzie, modelul filar este util în unele faze de lucru, dar are ºi deficienþe
cum ar fi:
• reprezentarea este ambiguã, obiectele mai complexe pot avea o aparenþã
nonsens (fig. 5.7,b);
• modelele sunt complexe ºi dificil de interpretat.
b) Modelarea cu suprafeþe
Aceastã tehnicã adaugã la modelul precedent noþiunea de faþã. Obiectele
sunt descrise prin suprafeþe limitate de un contur. Suprafaþa cea mai simplã este
planul definit de douã linii paralele, trei puncte sau de o linie ºi un punct.
Suprafeþele uzuale utilizate în softurile CAD sunt (fig. 5.8):
• suprafaþã planã;
• suprafaþã cilindricã;
• suprafaþã riglatã;
• suprafaþã de revoluþie;
• suprafaþã extrudatã.
Cele mai utilizate în modelarea geometricã sunt suprafeþele rulate ºi suprafeþele
de revoluþie.
Suprafeþele sunt reprezentate sub forma unor reþele de “petice” (patch-uri).
Deosebirea între petic ºi suprafaþã este aceeaºi ca între linie ºi polilinie, ca atare, o
suprafaþã se compune dintr-un numãr finit de petice.
Caracteristicile principale ale metodei suprafeþelor sunt:
• obiectul este descris prin suprafeþe limitate de contururi;
• facilitãþi de eliminare a liniilor ascunse;
• aspect realistic.
Sistemele CAD mai avansate permit facilitãþi de editare a suprafeþelor exact
ca în cazul liniilor (extend, trim, break etc.). De asemenea, se pot selecta curbele
de intersecþie între diversele suprafeþe.
Modelele cu suprafeþe sunt mult folosite în cazul suprafeþelor mari, cu variaþii
Fig. 5.7.
WORKPLANE
x
y
z
74 BAZELE CAD
de formã foarte line cum ar fi la nave, automobile (caroserii), aeronave etc.
Dezavantajele principale ale modelãrii cu suprafeþe sunt:
• necesitã mai multã memorie, sunt mai lente decât modelele filare ºi ca
atare în timpul concepþiei sunt mai puþin avantajoase pentru lucrul interactiv;
• suprafeþele nu pot fi compuse (ca liniile cu join sau solidele cu operaþii
logice), ele sunt doar “alãturate” pentru reprezentarea 3D a unui obiect;
• algoritmii sunt complecºi (cu dificultãþi la concepþie, mai ales cu probleme
de racordare a diverselor suprafeþe).
c) Modelarea solidã
Cele douã tehnici de modelare prezentate pânã acum, la punctele a ºi b, sunt
modele parþiale, adicã forma solidã a obiectelor trebuie dedusã din model. Pentru
multe scopuri aceastã reprezentare este satisfãcãtoare, însã o reprezentare completã
a obiectelor tinde sã includã ºi noþiunea de solid, cu unele atribute ale acestuia.
Modelarea cu ajutorul solidelor este:
• completã ºi neambiguã;
• potrivitã pentru inginerie;
• practicã ºi adaptatã calculatoarelor actuale.
Dintre tehnicile care au fost dezvoltate pentru crearea ºi definirea solidelor,
douã sunt prezente în toate aplicaþiile CAD comerciale:
Fig. 5.8.
Vector
Curbã generatoare
suprafaþã cilindricã
Curba 1
Curba 2
Linia 1
Linia 2
Suprafaþã planã
Suprafaþã cilindricã
Suprafaþã
riglatã
Curbã
extrudatã
Curba centrelor
Suprafaþã de
revoluþie
Linia de
centru
Suprafaþã extrudatã
Patch
75 MODELARE GEOMETRICÃ
• Constructive Solid Geometry (CSG) - adicã “geometria construitã cu
solide”, figura 5.9,a;
• Sweeping - “mãturare”, figura 5.9,b.
În practica curentã aceste douã tehnici se utilizeazã aproape exclusiv, într-un
mod combinat (integrat) pentru crearea modelului final.
5.1.6. Tehnica CSG
În cadrul metodei CSG, modelele sunt construite ca ºi combinaþii de solide
primitive simple cum ar fi: cubul, cilindrul, sfera, conul etc. (fig. 5.10).
Modelele sunt compacte, reclamã fiºiere de stocare mai mici, dar în schimb
feþele ºi muchiile care rezultã trebuie sã fie calculate de fiecare datã când sunt
afiºate (adicã la orice regenerare) ceea ce înseamnã consum de timp calculator
foarte mare.
Combinarea primitivelor pentru obþinerea modelelor se face cu operaþii boleene
ca: reuniunea (UNION), intersecþia (INTERSECTION) ºi scãderea (SUBSTRACT).
Aceste operaþii se efectueazã cu privire la un set de solide selectate ºi produc
drept rezultat un SOLID, astfel:
UNION - solid conþinând toate punctele solidelor S
1
ºi S
2
...
INTERSECT - solid conþinând toate punctele solidului S
1
ºi S
2
ºi...
SUBSTRACT - solid conþinând toate punctele solidului S
1
ºi nu de S
2
a) b)
Fig. 5.9.
Fig. 5.10.
76 BAZELE CAD
În figura 5.11 este ilustrat efectul operaþiilor booleene asupra unui set de
primitive (A, B).
Operatorul UNION (reuniune) corespunde operaþiei logice SAU ( B A
cuprinde toate punctele conþinute în volumele A sau B). Teoretic, cele douã solide
pot avea ºi pãrþi comune, pot fi tangente sau complet separate. Anumite softuri
permit reuniunea numai în primele douã situaþii deoarece în cazul în care cele douã
primitive nu se ating, solidul care rezultã nu are sens fizic. Pentru operatorul UNION,
ordinea operaþiilor nu are importanþã adicã:
A B B A =
A doua operaþie logicã utilizatã în tehnica CSG este scãderea (SUBSTRACT).
Operaþia de scãdere extrage volumul unui solid din cel al altui solid (fig. 5.11,b) ºi
corespunde operatorului logic NU (A – B reprezintã toate punctele cuprinse în
volumul A dar NU ºi în volumul B). Pentru operaþia de scãdere, ordinea operanzilor
afecteazã rezultatul, adicã:
A B B A ÷ = ÷
A treia operaþie logicã a sistemului CSG este intersecþia (INTERSECT).
B AB A·
A - B
Fig. 5.11.
A
B
77 MODELARE GEOMETRICÃ
Operatorul de intersecþie are ca rezultat numai volumul comun celor douã solide
(fig. 5.11,c) ºi corespunde funcþiei logice ªI (
B A·
cuprinde toate punctele conþinute
atât în volumul A cât ªI în volumul B). La fel ca în cazul reuniunii, ordinea operanzilor
nu conteazã, astfel cã:
A B B A · = ·
În figura 5.12 se ilustreazã modul de utilizare a primitivelor ºi operaþiilor logice
pentru obþinerea unui model solid 3D prin tehnica CSG.
5.1.7. Tehnica Sweeping
A doua tehnicã de modelare solidã prezentã în majoritatea softurilor CAD
este sweeping-ul (“to sweep” înseamnã “a mãtura”). Aceasta este o tehnicã
extrem de productivã, cu atât mai mult cu cât un numãr foarte mare de forme
tehnice (mai ales semifabricate) se pot modela cu aceasta. De asemenea, este
foarte utilã alãturi de tehnica CSG, deoarece existã forme aproape imposibil de
realizat exclusiv cu primitivele ºi operaþiile logice proprii CSG.
Tehnica sweeping poate fi utilizatã atât pentru crearea de modele wireframe,
sau cu suprafeþe cât ºi modele solide. Prin definiþie, miºcarea oricãrei entitãþi
geometrice (punct, linie, suprafaþã, solid) de-a lungul unei traiectorii în spaþiu produce
prin “mãturare” o nouã entitate solidã (linie, suprafaþã, solid).
În practicã, formele ºi traiectoriile permise depind de softul respectiv ºi de
Fig. 5.12.
78 BAZELE CAD
limitãrile hardware ale sistemului.
Metoda sweeping utilizeazã o curbã / suprafaþã generatoare în plan ºi o linie
dreaptã sau curbã pentru traiectorie. În anumite softuri traiectoria rectilinie permisã
este totdeauna perpendicularã pe planul suprafeþei generatoare (fig. 5.13).
În schimb, softurile profesionale permit sweeping dupã traiectorii oblice în raport
cu planul generatoarei.
De regulã, obiectul obþinut prin sweeping linear se numeºte corp extrudat,
iar cel obþinut prin sweeping de rotaþie poartã numele de corp de rotaþie.
În figura 5.14 sunt ilustrate câteva exemple de corpuri solide de rotaþie sau
obþinute prin sweeping dupã o traiectorie curbã, pornind de la aceeaºi suprafaþã
generatoare.
Fig. 5.13.
a)
b)
(2)
(1)
(2)
(1)
1. Suprafaþã generatoare
2. Traiectorie
79 MODELARE GEOMETRICÃ
5.1.8. Modelare parametricã
În multe softuri CAD, forma finalã a modelului 3D este utilizatã în mod direct
pentru realizarea documentaþiei de execuþie, ceea ce înseamnã cã modificãrile de
formã reclamã modificãri consecutive ale documentaþiei de execuþie. În anumite
softuri, la realizarea documentaþiei este permisã cotarea
asociativã, care permite schimbarea automatã a valorii
cotelor dacã obiectul îºi modificã dimensiunile (fig. 5.15).
Acest lucru este însã util numai în cazul în care nu
se modificã ºi sistemul de cote. De exemplu, dacã o
cotã dispare sau apar ca necesare alte cote neincluse
în sistemul de cotare iniþial, se impune definirea unui alt
sistem de asociere a cotelor ºi, ca atare, sistemul nu
mai este funcþional (fig. 5.16).
În cazul altor softuri, o schimbare a formei necesitã
schimbarea manualã a cotelor în conformitate cu noua
geometrie.
În toate aceste cazuri avem de-a face cu situaþia
în care modelul precede cotarea.
O altã abordare este aceea în care cotele sunt
tratate ca parametri ai desenului. Ideea, aºa cum este
Fig. 5.14.
Fig. 5.15.
80 BAZELE CAD
aplicatã în softurile profesionale (Catia, Proengineer, Unigraphics, SolidWorks etc.),
se bazeazã pe valori iniþiale ale parametrilor atribuite fiecãrei cote care definesc
forma. Acestea pot fi schimbate însã printr-o simplã editare a textului cotei, iar
forma se schimbã automat în conformitate cu noile valori. De aceastã datã relaþia
cote-geometrie s-a inversat, în sensul cã geometria este determinatã de cote.
Aceastã tehnicã se numeºte modelare parametricã.
În modelarea parametricã se defineºte mai întâi o topologie a modelului, softul
adoptã niºte valori implicite ale parametrilor care determinã dimensiunile preliminare,
orientarea ºi poziþia fiecãrei pãrþi a desenului, precum ºi relaþiile logice între diferitele
pãrþi ºi dimensiuni. La schimbarea cotelor se face ºi o verificare a acestora pentru a
evita conflictul cu valori ale altor parametri. În acest fel, operaþia de modelare se
transformã într-o simplã “schiþare” a modelului, în care utilizatorul schiþeazã iniþial
forma aºa cum o doreºte prin simple miºcãri ale mouse-ului. În etapa urmãtoare, tot
prin miºcãri simple ale mouse-ului, se indicã muchiile sau entitãþile ale cãror dimensiuni
se aleg ca parametri, dupã care, cotarea acestora, se realizeazã de cãtre sistem în
mod automat. În ultima etapã, prin simpla editare a cotelor, se modificã parametrii la
valorile dorite, iar desenul ia forma corespunzãtoare noilor valori.
Tehnica parametricã bazatã pe sketcher (modul de schiþare) este extrem de
productivã ºi este apanajul celor mai performante softuri în domeniu (ProEngineering,
Catia, Unigraphics, MicroStation etc.). De asemenea, tehnica automatizeazã ºi
proiectarea variantã (cazul familiilor de piese, fig. 5.17), care ocupã un loc important
în activitatea de proiectare (dupã unele estimãri, aproximativ 80%).
Fig. 5.16.
d
81 MODELARE GEOMETRICÃ
5.2. Modelarea geometricã prin linii
Tipuri ºi reprezentãri matematice ale liniilor (curbelor)
Aºa cum s-a arãtat anterior, modelul geometric este baza de plecare pentru
toate modelele de analizã ºi fabricaþie care sunt utilizate în procesul de proiectare
în ingineria mecanicã. Indiferent de tehnica utilizatã, modelul geometric al unui
obiect se construieºte pe un sistem CAD introducând datele necesare. Softul
converteºte aceste date în reprezentãri numerice standard, care sunt stocate în
baza de date. Studiul bazei matematice a modelãrii geometrice oferã o bunã
înþelegere a terminologiei întâlnite în CAD/CAM, ca ºi posibilitatea unor decizii
avizate asupra tipurilor de entitãþi ce trebuie utilizate într-un caz concret. Una dintre
entitãþile importante utilizate la modelarea geometricã este linia curbã.
Curbele pot fi descrise matematic prin ecuaþii parametrice sau non-parametrice,
cele din urmã putând fi explicite sau implicite. Modul de reprezentare a curbelor
are o mare influenþã asupra fiabilitãþii softului CAD, deoarece determinã direct
numãrul de operaþii de calcul necesare. În plus, este necesar ca fiecare tip de
entitate sã se defineascã simplu ºi comod, cu un numãr minim de date de intrare.
Fig. 5.17.
82 BAZELE CAD
5.2.1. Reprezentãri non-parametrice
În cazul unei curbe datã prin ecuaþii non-parametrice, de exemplu în coordonate
carteziene, douã dintre coordonate ( z ºi y) se exprimã prin funcþii în raport cu cea
de-a treia coordonatã (x) care este variabila independentã. O altã formã de
reprezentare este prin douã funcþii implicite de (x, y, z):
[ ] ( )
( )
(
(
(
¸
(

¸

=
(
(
(
¸
(

¸

=
x g
x f
x
z
y
x
P sau
( )
( )
¹
´
¦
=
=
0 z , y , x G
0 z , y , x F
.
(5.1)
În primul caz existã o corespondenþã biunivocã între punctele din domeniu ºi
cele din codomeniu (funcþie bijectivã) ºi sunt dificil de reprezentat curbe de genul
cercurilor, parabolelor etc.
Ecuaþiile non-parametrice implicite înlãturã acest dezavantaj prin definirea
curbei ca intersecþie a douã suprafeþe. Problema în acest caz însã constã în gãsirea
rãdãcinilor ecuaþiilor care adesea sunt neliniare.
Alte limite ale curbelor non-parametrice
1. Dacã alura unei curbe devine verticalã sau aproape de verticalã, valorile
derivatelor care participã la rezolvarea ecuaþiilor neliniare devin infinite
sau de valori foarte mari, imposibil de tratat cu un calculator numeric.
2. Formele din inginerie sunt definite prin relaþiile punctelor între ele ºi nu prin
relaþiile punctelor faþã de un sistem de coordonate oarecare, ca atare,
reperezentarea non-parametricã are o naturã diferitã.
3. Afiºarea curbelor printr-o serie de puncte sau mici segmente pe display
reclamã dese rezolvãri ale ecuaþiilor, ceea ce consumã mult timp de calcul.
5.2.2. Reprezentãri parametrice
Reprezentarea parametricã eliminã toate aceste dezavantaje fiind nu numai
generalã, dar ºi mai potrivitã pentru calcule ºi afiºãri. În forma parametricã, fiecare
punct al curbei este exprimat ca o funcþie de un parametru independent, u. Parametrul
joacã rolul unei coordonate locale pentru punctele de pe curbã, deoarece fiecare
valoare a lui u corespunde unui punct.
Ecuaþia tridimensionalã a unei curbe în spaþiu are în acest caz forma:
83 MODELARE GEOMETRICÃ
max min
u u u ,
) u ( z
) u ( y
) u ( x
z
y
x
] P [ s s
(
(
(
¸
(

¸

=
(
(
(
¸
(

¸

= . (5.2)
Prin urmare, coordonatele punctelor de pe curbã sunt date prin componentele
vectorului de poziþie al punctului (fig. 5.18). Ecuaþiile reprezintã o corespondenþã
între spaþiul euclidian E în valori u ºi spaþiul cartezian E
3
în valori x, y, z.
Alte avantaje ale curbelor parametrice:
• Stabilirea apartenenþei sau neapartenenþei unui punct la curbã se realizeazã
foarte rapid, prin verificarea ecuaþiilor parametrice pentru punctul res-
pectiv;
• Curbele parametrice sunt limitate prin definiþie (sunt definite între u
min
ºi
u
max
) ºi deci nu mai este necesarã precizarea limitelor ca în cazul celor
non-parametrice;
• Valorile numerice ale coordonatelor punctelor sunt utile direct la controlul
pixelilor display-ului grafic.
Din punct de vedere al definirii existã douã categorii de curbe care pot fi
reprezentate parametric:
• curbe analitice - des-
crise de ecuaþii analitice
(linii, cercuri, conice ºi
arce);
• curbe sintetice - des-
crise printr-un set de
puncte (puncte de control)
cum sunt curbele Spline sau
Bezier. Curbele analitice se
definesc foarte simplu (cu
puþine date) ºi simplificã
calculele mai ales în ceea
ce priveºte volumele, supra-
feþele etc. În schimb, ele nu
sunt întotdeauna foarte
potrivite pentru a obþine
forme mai complexe.
Curbele sintetice asi-
gurã o mai mare flexibi-
litate ºi controlul interactiv
Spaþiul parametric
u = u
min
u = u
max
U
max
P’(u)
P(u)
U
min
z
x
z
Spaþiul Euclidian
P(x,y,z)
Fig. 5.18.
84 BAZELE CAD
al formei, prin simpla schimbare a punctelor de control.
În alte aplicaþii matematice curbele analitice sunt utilizate prin funcþii non-
parametrice. În CAD însã ele se utilizeazã exclusiv prin funcþii parametrice. Pentru
ilustrare se prezintã în continuare douã exemple.
Exemplul 1. Ecuaþia implicitã non-parametricã a unui cerc cu centrul în origine
ºi raza R este datã de x
2
+ y
2
= R
2
. Sã se gãseascã funcþia parametricã a cercului.
Soluþie:
Existã o infinitate de moduri de a alege parametrizarea. Este bine, totuºi, ca
parametrizarea funcþiei sã þinã cont de poziþia sistemului de axe la care este raportatã
curba (fig. 5.19).
u 2 sin R y
, u 2 cos R x
t =
t =

] 1 , 0 [ ue
.
(5.3)
Ecuaþia parametricã a cercului
devine:
(
¸
(

¸

t
t
=
u 2 sin R
u 2 cos R
)] u ( P [
, 1 u 0 s s .
(5.4)
Exemplul 2. Ecuaþiile parametrice
ale unei elice, la care se cunoaºte dia-
metrul cilindrului ºi pasului de înfãºurare.
Se alege ca parametru unghiul
“2u” care poziþioneazã punctul curent în planul transversal (x,y),
] 1 , 0 [ ue
(fig. 5.20).
În exprimare matricealã, vectorul de poziþie al punctului curent P este:
(
(
(
(
(
(
¸
(

¸

t
t
=
(
(
(
¸
(

¸

=
bu
u 2 sin
2
a
u 2 cos
2
a
) u ( z
) u ( y
) u ( x
)] u ( P [
. (5.5)
În concluzie, reprezentarea parametricã a curbelor analitice se bazeazã pe
exprimarea analiticã a componentelor vectorului de poziþie P al punctului curent P,
printr-o singurã variabilã independentã adimensionalã.
y
x
u = 1
u = 0
P
2u
R
Fig. 5.19.
85 MODELARE GEOMETRICÃ
5.2.3. Reprezentarea
parametricã a curbelor
analitice
În continuare vor fi tratate ecuaþiile
parametrice ale curbelor analitice cele mai
utilizate în reprezentãrile WIREFRAME.
Relaþiile ºi concluziile extrase vor fi
raportate în permanenþã la practica curentã
din domeniul CAD, iar ecuaþiile
parametrice ºi dezvoltãrile aferente vor fi
prezentate în forma vectorialã, pentru
unificarea definiþiilor atât pentru modele 2D
cât ºi 3D.
5.2.3.1. Reprezentarea para-
metricã a segmentelor de dreaptã
Reprezentarea parametricã a
segmentelor de dreaptã trebuie sã
rãspundã urmãtoarelor cerinþe specifice
CAD:
• entitatea sã se defineascã în baza de
date foarte simplu (de exemplu prin punctele de la capete);
• sã se preteze la operaþiile de modificare specifice modeloarelor moderne.
Pentru ilustrare, se considerã urmãtoarele douã cazuri:
Cazul 1. O linie uneºte douã puncte P
1
ºi P
2
pentru care se defineºte un
parametru u, astfel încât pentru u = 0 sã se regãseascã P
1
iar pentru u = 1 sã se
regãseascã P
2
.
Fie P un punct curent de pe linie (fig. 5.21):
Din AOPP
1
rezultã:
) P P ( P P 1 1 ÷ + =
(5.6)
Dar ) P P ( 1 ÷ este o fracþiune u din ) P P ( 1 2 ÷ , deci:
) P P ( u ) P P ( 1 2 1 ÷ = ÷
(5.7)
rezultã
) P P ( u P P 1 2 1 ÷ + = , cu 1 u 0 s s .
În forma scalarã, aceastã ecuaþie se scrie
a
x
y
P
P
b
z
Fig. 5.20.
2u
86 BAZELE CAD
x = x
1
+ u (x
2
- x
1
)
y = y
1
+ u (y
2
- y
1
)
1 u 0 s s
. (5.8)
z = z
1
+ u (z
2
- z
1
)
Aceste ecuaþii definesc o linie, limitatã de douã puncte P
1
ºi P
2
ale cãror
valori parametrice asociate sunt 0 ºi 1. Pentru alt punct de pe aceastã linie
parametrul are o valoare u proporþionalã cu poziþia punctului respectiv.
Lungimea acestei linii este:
2
1 2
2
1 2
2
1 2
) - z z ( ) - y y ( ) - x x ( L + + =
.
Exemple de probleme tipice care
apar în CAD, în cazul liniilor drepte:
a) Care sunt coordonatele unui
punct P
3
situat la distanþa d, în sens
pozitiv, faþã de P
1
pe dreapta P
1
P
2
.
Pentru soluþionare se calculeazã
raportul
L
d
u = , apoi din (5.8) re-
zultã imediat coordonatele cãutate.
b) Dându-se un punct P
3
(x
3
,
y
3
, z
3
), se cere sã se determine dacã
aparþine sau nu dreptei P
1
P
2
. Pentru rezolvare se calculeazã u din fiecare ecuaþie
(5.8), iar dacã valorile obþinute diferã, rezultã cã punctul se aflã în afara dreptei.
Indiferent de modul în care a fost obþinutã o linie, ea este stocatã în baza de
date prin coordonatele celor douã puncte de capãt ale sale. Aceste douã puncte
conservã toate infomaþiile asociate liniei.
Cazul 1 este considerat fundamental deoarece linia este definitã exact ca ºi
în baza de date. În alte cazuri însã, deºi linia este definitã altfel, ea trebuie redusã
întotdeauna la cazul fundamental.
Cazul 2. Linia care trece printr-un punct P
1
ºi are direcþia datã de un vector
unitar dat, n .
Se considerã punctul curent P, aflat pe linie, la distanþa L faþã de P
1
(fig. 5.22).
Ca atare, se poate scrie:
n L P P 1 · + =
, R Le , (5.9)
unde L = |P - P
1
|.
Dacã se adoptã o valoare concretã pentru L rezultã al doilea punct:
z
x
y
P
1
P
2
P
1
P
2
P
P
0
Fig. 5.21.
87 MODELARE GEOMETRICÃ
n L P P 1 2 · + =
, ºi deci acest
caz s-a redus la cazul fundamental.
Alte exemple:
3. Sã se gãseascã ecuaþia ºi
punctele de capãt ale liniei care
trece printr-un punct P
1
, paralel la
o linie existentã ºi este limitatã de
cãtre un alt punct P
2
(fig. 5.23).
Linia a doua are drept capete
P
1
ºi P
5
, ca atare acestea sunt
necesare pentru stocarea în baza
de date. P
1
este dat, iar P
5
este proiecþia lui P
2
pe linie. Pe baza construcþiei din
figura 5.23 se poate scrie:
1
3 4
1
L
P P
n
÷
= , (5.10)
), P P ( n cos P P L 1 2 1
2 1 2
÷ = o =
. n L P P 1
2
1 5 · + = (5.11)
În acest fel, se determinã cele douã puncte necesare în baza de date P
1
ºi P
5
.
Pe baza reprezentãrii liniei prin
cele douã puncte de capãt, se pot face
ºi evaluãri ale poziþiei relative faþã de
alte entitãþi, lucru foarte utilizat în
CAD. Aceastã facilitate de evaluare
este prezentã practic în toate softurile
CAD.
4. Sã se gãseascã mãsura
unghiului dintre douã linii care se
intersecteazã.
Soluþie: unghiul dintre cele douã
drepte este dat de produsul scalar al versorilor
1 n ºi 2 n
4 3
3 4
1 2
1 2
2 1
P P
P P
P P
P P
cos n n
÷
·
÷
= u = . (5.12)
5. Distanþa dintre un punct (P
3
) ºi o linie (P
1
, P
2
)
Fie P
4
piciorul perpendicularei din P
3
pe linia P
1
P
2
(fig. 5.24). Distanþa cãutatã
P
4
P
3
P
1
P
2
n 1
n 1
L 1

P
5
L 2
x
y
z
Fig. 5.23.
P
1
P
x
y
z
Fig. 5.22.
n
n
L
88 BAZELE CAD
este D = |P
3
P
4
| ºi se calculeazã cu
relaþia:
o · = sin P P D
1 3
;
dar 2 1 n n sin × = o , unde 1 n este
versorul direcþiei date, iar
1 2
1 2
2
P P
) P P (
n
÷
= este versorul liniei
P
1
P
2
.
5.2.3.2. Reprezentarea parametricã a cercurilor
Cercurile ºi arcurile circulare sunt printre cele mai “populare” entitãþi manipulate
în modeloarele geometrice. În baza de date, cercul este stocat prin raza ºi centrul
sãu. Indiferent cum este definit cercul prin interfaþa graficã, el este redus întotdeauna
la acest set de date, razã - punct.
Ecuaþiile parametrice de bazã ale cercului în spaþiul 3D sunt:
. 2 u 0 ,
z z
u sin R y y
u cos R x x
c
c
c
t s s
¦
¹
¦
´
¦
=
+ =
+ =
(5.13)
Prin urmare, fiecãrei valori u îi corespunde un punct pe cerc.
În scopul afiºãrii pe ecran, aceste
ecuaþii pot fi folosite pentru generarea
unor puncte pe circumferinþa cercului,
prin incrementarea parametrului u de la
0 la 360
o
ºi afiºând segmente de dreaptã
între puncte. Totuºi, aceastã metodã este
ineficientã din punct de vedere al
timpului de calcul. O variantã mai avan-
tajoasã constã în scrierea ecuaþiilor
parametrice într-o formã incrementalã.
În acest mod, pentru douã puncte
curente P
n
ºi P
n+1
(fig. 5.25), coordo-
natele se calculeazã cu relaþiile:
P
n
(x
n
, y
n
,z
n
)
P
c
P
n+1
x
y
z
Fig. 5.25.
P
3
P
2
P
1

2
n
1 n
x
y
z
Fig. 5.24.
P
4
89 MODELARE GEOMETRICÃ
.
z z
) &u u sin( R y y
) &u u cos( R x x
,
z z
u sin R y y
u cos R x x
c 1 n
c 1 n
c 1 n
c n
c n
c n
¦
¹
¦
´
¦
=
+ + =
+ + =
¦
¹
¦
´
¦
=
+ =
+ =
+
+
+
(5.14)
Din primele trei ecuaþii rezultã R cos u = (x
n
- x
c
) ºi R sin u = (y
n
- y
c
), iar
sistemul al doilea devine:
.
z z
u sin ) x (x u cos ) y (y y u cos u sin R u cos u sin R y y
u sin ) y (y u cos ) x x ( x u sin u sin R u cos u cos R x x
c n
c n c n c c 1 n
c n c n c c 1 n
¦
¹
¦
´
¦
=
÷ + ÷ + = + + =
÷ ÷ ÷ + = ÷ + =
+
+
(5.15)
Astfel, cercul poate începe dintr-un punct iniþial ales arbitrar, iar punctele
urmãtoare pot fi calculate succesiv în manierã recursivã. În acest fel, calculul
funcþiilor trigonometrice (consumator major de timp), se face o singurã datã pentru
sin u ºi cos Au.
Arcurile de cerc sunt considerate cazuri particulare de cercuri ºi se definesc
recursiv, exact ca ºi cercurile. Singura deosebire constã în limitele parametrului,
e s
u u u s s , care reprezintã unghiurile de start ºi de sfârºit (end) ale arcului.
Indiferent de modul în care se introduce un cerc - via interfaþa graficã sau prin
comenzi de la tastaturã - înainte de a fi stocat în baza de date este convertit în
formatul standard (razã-centru).
Exemplul 1. Cerc definit prin douã puncte diametral opuse P
1
ºi P
2
.
Soluþie: Raza cercului este
2
1 2
2
1 2
2
1 2 2 1
) z z ( ) y y ( ) x x (
2
1
P P
2
1
r ÷ + ÷ + ÷ = =
(5.16)
Centrul cercului P
c
este dat de vectorul de poziþie
) P P (
2
1
P 2 1 c + = . (5.17)
Exemplul 2. Cerc determinat prin trei puncte: P
1
, P
2
, P
3
(fig. 5.26).
Centrul cercului este dat de intersecþia mediatoarelor triunghiului P
1
P
2
P
3
.
Semilaturile triunghiului pot fi exprimate în funcþie de raza cercului:
90 BAZELE CAD
¦
¦
¦
¦
¹
¦
¦
¦
¦
´
¦
· =
· =
· =
31
c 3
1 3
23
c 2
3 2
12
c 1
2 1
n P P
2
P P
n P P
2
P P
n P P
2
P P
. (5.18)
Prin rezolvarea sistemelor celor trei
ecuaþii scalare rezultã coordonatele cen-
trului P
c
al cercului
c c c
P P P
,z ,y x , iar raza
se calculeazã ca distanþa dintre P
c
ºi P
1
:
2
1 p pc
2
1 p pc
2
1 p pc 1 c
) z z ( ) y y ( ) x x ( P P r ÷ + ÷ + ÷ = = . (5.19)
5.2.3.3. Reprezentarea parametricã a elipselor
Elipsa este curba generatã de un punct care determinã în orice poziþie douã
distanþe, respectiv faþã de douã puncte fixe, astfel încât suma distanþelor este
constantã ºi egalã cu diametrul mare al elipsei. Cele douã puncte se numesc focare.
Ecuaþiile parametrice ale elipsei ºi arcelor de elipsã se determinã asemãnãtor
în cazul entitãþilor anterioare.
Ecuaþiile parametrice sunt:
.
z z
u sin B y y
u cos A x x
c
c
c
¦
¹
¦
´
¦
=
+ =
+ =
(5.20)
Deosebirea faþã de
cerc constã în apariþia
celor douã semiaxe A ºi
B în locul razei R. ªi în
cazul elipsei este comod
sã se lucreze cu un incre-
ment Au al unghiului de
poziþie.
Fig. 5.26.
P
23
P
1
P
2
P
3
n
32
P
c
P
12
P
13
n
13
n
21
P
e
P
u
A cos u
y
x
z
e
P
Fig. 5.27.
91 MODELARE GEOMETRICÃ
Alte curbe analitice uzuale (hiperbole, parabole ºi conice în general) se reprezintã
parametric în mod asemãnãtor, dar sunt destul de rar utilizate.
5.2.4. Reprezentarea parametricã a curbelor sintetice
Curbele analitice prezentate anterior nu sunt suficiente pentru acoperirea tuturor
situaþiilor ce intervin la reprezentarea formelor pieselor. Multe produse (de exemplu,
aripi, fuselaje, pantofi, sticle de forme speciale) necesitã forme libere, care, în
continuare, vor fi denumite curbe sintetice.
Curbele sintetice sunt definite printr-o colecþie de puncte numite puncte
de control. Atunci când trec prin toate punctele se spune cã le interpoleazã.
Polinoamele sunt funcþiile cele mai potrivite pentru aceastã situaþie.
Matematic, curbele sintetice reprezintã o problemã de “potrivire” a mai multor
segmente / curbe pentru obþinerea unei curbe netede. Gradul de netezime al
curbei se poate controla impunând diferite cerinþe de continuitate, dupã cum
urmeazã (fig. 5.28):
• (C
0
) ordinul zero de continuitate (funcþia continuã ºi derivata necontinuã,
fig. 5.28,c);
• (C
1
) ordinul unu de continuitate (atât curba cât ºi derivata de ordinul I sunt
continue, fig. 5.28,b);
• (C
2
) ordinul doi de continuitate (funcþia ºi derivatele de ordinul I ºi II sunt
continue, fig. 5.28,c);
În inginerie, gradul de netezime minim acceptabil este (C
1
). Pentru continuitatea
de gradul II (C
2
), cele mai simple polinoame utilizabile sunt cele de gradul II.
Ca atare, cele mai utilizate sunt funcþiile polinomiale cubice, deºi curbe utile se
obþin ºi cu polinoame de grad mai mare.
Aºa cum douã puncte pot fi unite printr-o linie, iar trei puncte printr-un arc, tot
aºa patru puncte din spaþiu definesc o curbã polinomialã cubicã.
Sistemele CAD includ, de regulã, trei tipuri de curbe polinomiale:
• Hermite cubic spline - sunt curbe care trec prin toate punctele; deci curba
Hermite este o funcþie de interpolare;
Punct
unghiular
comun
Tangente
Tangentã comunã
Centre de
curburã diferite
Centru de curburã
comun
Fig. 5.28.
R
1
R
2
92 BAZELE CAD
z
x
y
P
0
(u = 0)
P’
0
P’
1
P
1
(u = 1)
Fig. 5.29.
• Bezier - sunt funcþii care aproximeazã curba (nu trec prin punctele de control);
• B-Spline - sunt funcþii de aproximare.
5.2.4.1. Curbe HERMITE
Curbele parametrice Hermite spline cubice sunt formate din segmente de
curbe polinomiale cubice cu ordinul de continuitate doi ºi se definesc cu vectori de
poziþie ºi de tangenþã în punctele de control.
Cele mai utilizate sunt curbele spline plane, ce vor fi prezentate în continuare.
Curba CUBIC SPLINE conecteazã douã puncte de capãt ºi utilizeazã o ecuaþie
polinomialã de gradul III. De aceea pentru determinarea celor 4 coeficienþi sunt necesare
4 condiþii. Ecuaþia parametricã în formã vectorialã a unui segment spline cubic este:
1 u 0 , u C ) u ( P
3
0 i
i
i s s =
¿
=
, (5.21)
matriceal:
[P] = [C
3
]u
3
+ [C
2
]u
2
+ [C
1
]u + [C
0
], (5.22)
unde C
i
este vectorul coeficienþilor algebrici. În forma scalarã se poate scrie
¦
¦
¹
¦
¦
´
¦
+ + + =
+ + + =
+ + + =
z 0 z 1
2
z 2
3
z 3
y 0 y 1
2
y 2 3 y 3
x 0 x 1
2
x 2
3
x 3
C u C u C u C ) u ( z
C u C u C u C ) u ( y
C u C u C u C ) u ( x
. (5.23)
Vectorul tangent la curbã într-un punct oarecare se obþine prin derivarea
ecuaþiei (5.21):
1 u 0 , u i C ) u ( P
3
1 i
1 i
i s s =
¿
=
÷
,
] C [ 2 u ] C [ 6 ] " P [
] C [ u ] C [ 2 u ] C [ 3 ] ' P [
2 3
1 2
2
3
+ =
+ + =
(5.24)
Pentru determinarea coe-
ficienþilor C
i
se considerã punc-
tele de capãt P
0
, P
1
.
Cei patru coeficienþi vec-
toriali se determinã inpunând la
fiecare capãt atât coordonatele
punctului cât ºi componentele
vectorului tangent. Rezultã:
] ' P [ ], P [ 0 u
0 0
¬ = ºi
] ' P [ ], P [ 1 u
1 1
¬ =
,
93 MODELARE GEOMETRICÃ
¹
´
¦
=
=
÷ =
] C [ ] ' P [
] C [ ] P [
0 u
1 0
0 0
,
¹
´
¦
+ + =
+ + + =
÷ =
] C [ ] C [ 2 ] C [ 3 ] ' P [
] C [ ] C [ ] C [ ] C [ ] P [
1 u
1 2 3 1
0 1 2 3 1
.
(5.25)
Prin rezolvarea celor patru ecuaþii în raport cu necunoscutele C
0
,...,C
3
rezultã:
[C
0
] = [P
0
],
[C
1
] = [P’
0
],
] ' P [ ] ' P [ 2 ) ] P [ ] P [ ( 3 ] C [
1 0 0 1 2
÷ ÷ ÷ = ,
(5.26)
] ' P [ ] ' P [ ) ] P [ ] P [ ( 2 ] C [
1 0 1 0 3
+ + ÷ = .
Înlocuind în (5.21) în scriere vectorialã se obþine:
. 1 u 0
, ) u 2 u ( P' ) u u 2 u ( ' P ) u 2 u ( P ) 1 u 3 u 2 ( P
P u ' P u ] P ' P 2 ) P P ( 3 [
u ] ' P ' P ) P P ( 2 [ C u C u C u C (u) P
2 3
1
2 3
0
2 3
1
2 3
0
0
0
2
1
0
0 1
3
1 0
1 0 0 1
2
2
3
3
s s
+ + + ÷ + + ÷ + + ÷ =
+ + ÷ ÷ ÷ +
+ + + ÷ = + + + =
(5.27)
unde
0 P ,
1 P ,
0 ' P ºi
1 ' P se numesc coeficienþi geometrici.
Observaþii:
• Aceastã ecuaþie descrie curba spline cubicã în funcþie de douã puncte de
capãt ºi tangentele în acele douã puncte. Ecuaþia exprimã trecerea curbei
prin cele douã puncte (pentru u = 0 ºi u = 1). Forma ei poate fi controlatã
prin modificarea punctelor (P
0
, P
1
) sau a tangentelor în cele douã puncte
(P’
0
ºi P’
1
).
• Ecuaþia poate fi folositã pentru afiºarea curbei spline, deoarece pot fi
generate puncte corespunzãtoare pentru diferite valori ale lui u între 0 ºi 1.
• Ecuaþia reprezintã un segment cubic spline.
Generalizare - Cazul curbei Spline care trece printr-un numãr dat de puncte
de control P
0
, P
1
,..., P
n - 1
ºi are la capete tangentele P’
0
ºi P’
n - 1
.
Curba este compusã din mai multe segmente spline. Pentru calculul acestor
segmente sunt însã necesare tangentele în punctele intermediare P
1
,..., P
n - 2
.
Pentru a eluda aceastã necesitate se poate impune continuitatea curbei în aceste
puncte. Pentru ilustrare, se considerã cazul punctului P
1
, între primele douã segmente
de curbã P
0
P
1
ºi P
1
P
2
. Continuitatea de ordinul doi între cele douã segmente
94 BAZELE CAD
presupune coincidenþa între P”
1(u
1
= 1)
al primului segment ºi P”
1(u
2
= 0)
aparþinând
celui de-al doilea segment (fig. 5.30):
) 0 (u 1 ) 1 u ( 1
2 1
" P " P
= =
= , dar:
0 1
2
2
3
3
C u C u C u C P + + + =
,
1 2 3
2
C C u 2 C u 3 ) u ( ' P + + =
,
2 3
C 2 u C 6 ) u ( " P + =
,
, ' P 4 ' P 2 ) P P ( 6
' P 2 ' P 4 ) P P ( 6 ' P 6 ' P 6 ) P P ( 12 C 2 C 6 " P
1 0
1 0
1 0
0 1
1 0
1 0 2 3
) 1 (u 1
1
+ + ÷ =
= ÷ ÷ ÷ + + + ÷ = + =
=
. ' P 2 ' P 4 ) P P ( 6 C 2 " P 2 1
1 2 2
) 0 (u 1
2
÷ ÷ ÷ = =
=
Prin egalarea celor douã expresii se obþine:
2 1
1 2
1 0
1 0
' P 2 ' P 4 P 6 P 6 ' P 4 ' P 2 P 6 P 6 ÷ ÷ ÷ = + + ÷ sau
2
2
0
0
1 ' P 2 P 6 ' P 2 P 6 ' P 8 + ÷ + = ÷
) ' P ' P P 3 P 3 (
4
1
' P 2 0
2 0
1 + + ÷ ÷ =
(5.28)
Se constatã cã tangenta inter-
mediarã P’
1
se poate calcula în
funcþie de tangentele din punctele de
control vecine P’
3
ºi P’
2
. De aceea,
nu este necesarã cunoaºterea ei.
Pentru mai mult de douã seg-
mente, rezultã un numãr egal de
ecuaþii de “eliminare” a tangentelor
intermediare, astfel încât se poate afirma cã datele geometrice ale unei curbe
spline cubicã din baza de date constau dintr-un set de puncte de control ºi douã
tangente de capãt.
Curbele nu sunt întotdeauna convenabile, datoritã unei mari sensibilitãþi faþã
de schimbarea punctelor de control ºi/sau a tangentelor de capãt (în sensul cã
schimbarea unui singur punct de control poate afecta întreaga curbã, fig. 5.31).
P
0
P
1
P
2
Fig.5.30.
Punct de
legãturã
Segmentul 2
Segmentul 1
95 MODELARE GEOMETRICÃ
5.2.4.2. Curbe BEZIER
Sunt curbe de aproximare a funcþiilor (punctele de control, denumite ºi noduri,
controleazã doar forma curbei nu ºi traseul ei). Ca avantaj, ”mutarea” punctelor
de control are un efect mult mai intuitiv asupra modificãrilor de formã ale curbei.
Curbele BEZIER au fost utilizate pentru prima oarã de cãtre firma RENAULT
pentru softul UNISURF.
Diferenþele majore faþã de curbele spline cubice sunt:
1. Forma curbei Bezier este controlatã doar prin puncte. Derivatele
(tangentele) nu sunt utilizate.
2. Gradul curbelor Bezier este variabil, în funcþie de numãrul de puncte de
control. De regulã, este mai mare decât la o curbã polinomialã cubicã.
3. Curbele Bezier sunt mai netede decât spline cubice datoritã gradului superior.
În baza de date, curba Bezier este definitã prin punctele de control (n + 1 puncte).
Ele formeazã vârfurile poligonului caracteristic Bezier care predefineºte forma
curbei în mod unic.
• Numai punctele de capãt (primul ºi ultimul) sunt pe curbã. Celelalte definesc
ordinul derivatelor ºi forma curbei.
• Poligonul prefigureazã forma curbei (fig. 5.32), de unde rezultã intuitivitate
în utilizare.
Matematic, pentru n + 1
puncte, curba este definitã de
polinomul de grad n dat de
relaþia:
¿
=
÷
÷ =
n
0 i
i n i
n i
) u 1 ( C P ) u ( P
(5.29)
Fig. 5.31.
Schimbarea unui punct Schimbarea unei tangente
Curba iniþialã
Curba dupã modificarea
poziþiei P
2
P’
2
P
2
P
1
Tangenta iniþialã
Tangenta modificatã
P
1
P
2
P
0
P
3
u = 0
u = 1
Fig. 5.32.
96 BAZELE CAD
P
i
, i = 1...n sunt puncte de control
B
i, n
sunt termenii Bernstein care compun curba ºi reprezintã termenii binomului
lui Newton de acelaºi grad:
, u ] P [ ... ) u 1 ( u C ] P [ ) u 1 ]( P [ ] P(u) [
n
n
1 n
n 1
n
0
· + + ÷ · · + ÷ =
÷
1 u 0 s s . (5.30)
Observaþii:
1. Curba interpoleazã primul ºi ultimul punct de control (P
0
pentru u = 0 ºi P
n
pentru u = 1), iar pe celelalte le aproximeazã.
2. Curba este tangentã la primul ºi ultimul segment ale poligonului
caracteristic.
3. Este simetricã în raport cu u ºi 1 - u. Ca atare, indiferent de direcþia de
parametrizare, forma curbei nu se schimbã.
4. Termenul Bernstein are o influenþã maximã asupra punctului ce corespunde
parametrului
n
i
u =
(acest lucru rezultã ºi din rezolvarea ecuaþiei
0
du
dB
n , i
=
).
Aceasta înseamnã cã fiecare punct de control este influent asupra formei
curbei mai ales în zona de curbã ce corespunde valorii
n
i
u = . De exemplu, pentru
o curbã Bezier, datã prin punctele P
0
, P
1
, P
2
ºi P
3
, acestea au influenþã maximã în
zonele
3
3
respectiv 1i
3
2
,
3
1
, 0 u = .
5. Forma ºi dimensiunile unei curbe Bezier pot fi modificate:
- prin modificarea poziþiei punctelor de control (fig. 5.33,a);
- prin mãrirea influenþei unor puncte, definind mai multe puncte suprapuse.
6. Curba Bezier închisã se defineºte pentru P
0
= P
n
(fig. 5.34).
7. Curbele BEZIER au proprietatea de “coajã convexã”, adicã curba se aflã
în întregime în interiorul poligonului convex definit de punctele de control
(fig. 5.35).
Consecinþe:
a) dacã punctele sunt coliniare atunci curba este o dreaptã;
b) curba nu oscileazã niciodatã în afara poligonului ceea ce îi conferã
intuitivitate;
c) proprietatea (b) este foarte utilã la operaþiile de construcþie a curbelor.
Curbele Bezier sunt, în general, utilizate în varianta monosegment. Totuºi, uneori
în practicã este necesarã “legarea” mai multor curbe definite anterior. De aceea,
trebuie rezolvatã problema continuitãþii.
• Pentru continuitate de ordin 0 (C
0
) este necesar ca cele douã segmente sã
aibã un punct de capãt comun.
97 MODELARE GEOMETRICÃ
• Pentru continuitatea de ordin unu (C
1
) este necesar, în plus, ca panta de
capãt a segmentului 1 sã fie egalã cu panta de capãt a segmentului 2 (vectorii
tangenþi sã fie paraleli). Rezultã cã ultimul segment al primului poligon este
coliniar cu primul segment al poligonului 2. Aceasta se traduce prin
coliniaritatea a trei puncte (de fapt patru, dintre care douã sunt suprapuse).
În concluzie, curbele Bezier sunt superioare celor spline cubice, totuºi au
P
2
*
P
1
P
0
P
3
P
2
P
1
P
2
P
0
P
3
k = 3
k = 2
Fig. 5.33.
P
0
P
4
P
1
P
2
P
3
P
4
P
3
P
2
P
1
P
0
P
5
Fig. 5.34.
P
1
P
0
P
3
P
2
P
0
P
1
P
2
Fig. 5.35.
a) b)
a) b)
a) b)
98 BAZELE CAD
în unele situaþii prezintã ºi dezavantaje:
• Nu trec prin punctele de control;
• Control slab la nivel local (dacã se schimbã un punct, toatã curba se
schimbã, deºi într-o mãsurã mai micã decât în cazul Hermite).
5.2.4.3. Curbe B-Spline
Curbele B-Spline constituie generalizarea curbelor Bezier, având unele avantaje
în plus, cum ar fi:
• control local al formei curbei;
• gradul curbei nu este strict dependent de numãrul de puncte de control.
O curbã B-Spline definitã prin n + 1 puncte (P
i
) de control este datã de o
relaþie cu forma generalã similarã cu funcþia Bezier:
¿
=
=
n
0 i
k , i i
) u ( N P ) u ( P ,
max
u u 0 s s , (5.31)
unde k este gradul curbei.
Diferenþa o dau termenii N
i,k
(u) care sunt funcþii (relaþii) locale de tip B-Spline.
Funcþiile B-Spline au urmãtoarele proprietãþi:
• Partiþioneazã unitatea: 1 ) u ( N
n
0 i
k , i
=
¿
=
;
• Pozitivitate: 0 ) u ( N
k , i
> ;
• Suport local: N
i,k
(u) = 0 dacã u nu aparþine [u
i
,u
i + k + 1
];
• Grad înalt de netezime dat de gradul mai înalt al funcþiei polinomiale;
• Se scriu recursiv, conform relaþiilor:
¹
´
¦ s s
=
+
else 0
U u U 1
N
1 i i
1 , i
(k = 1),
(5.32)
) u ( N
U U
u U
) u ( N
U U
U u
) u ( N
1 k , i
k 2 i 1 i
1 i
1 k , 1 i
k 1 i i
k 1 i
k , i ÷
÷ + +
+
÷ ÷
÷ +
÷ +
÷
÷
+
÷
÷
= , (k 1).
unde U
i
sunt valorile nodale care leagã parametrul u de punctele de control printr-o
corespondenþã biunivocã (fiecare U
i
corespunde unui punct P
i
ºi invers). Valorile
nodale alcãtuiesc vectorul nodal.
În general, pentru o valoare k datã, funcþia B-Spline este un polinom în u de
gradul k - 1.
99 MODELARE GEOMETRICÃ
Pentru ordinul “2”, ecuaþiile sunt urmãtoarele:
¦
¹
¦
´
¦
e
e
÷
÷
+
÷
÷
=
+
+
÷ + +
+
÷
+ ÷
+ ÷
] U , U [ u 0
] U , U [ u ) u ( N
U U
u U
) u ( N
U U
U u
N
1 i i
1 i i 1 , i
2 2 i 1 i
1 i
1 , 1 i
1 2 i i
1 2 i
2 , i
(5.33)
¦
¹
¦
´
¦
e
e
÷
÷
+
÷
÷
=
+
+
÷ + +
+
÷
+ ÷
+ ÷
] U , U [ u 0
] U , U [ u ) u ( N
U U
u U
) u ( N
U U
U u
N
1 i i
1 i i 1 , i
2 2 i 1 i
1 i
1 , 1 i
1 2 i i
1 2 i
3 , i
(5.34)
Fiecare polinom elementar de ordin k, este nenul pe k intervale, ca atare,
numãrul total de valori în vectorul nodal pentru n + 1 puncte va fi n + 1 + k.
Dacã se definesc polinoamele B-Spline de ordin k pentru un set de k puncte,
se obþine de fapt cazul Bezier:
1 1 k n u 0 = + ÷ s s
5.2.4.4. Curbe raþionale
Curbele spline cubice, Bezier ºi B-Spline sunt principalele curbe utilizate în
CAD pentru “forme libere”. Pe de altã parte în CAD intervin ºi forme analitice
standard ca arcuri, elipse, conice etc.
Tendinþele recente au introdus modele geometrice analitice capabile sã înglobeze
atât “forme libere” cât ºi forme analitice standard prin polinoamele raþionale. Acestea
sunt capabile sã reprezinte exact atât conice cât ºi polinoamele formelor libere. De
altfel, unele sisteme CAD utilizeazã aceste funcþii ºi pentru transformãri geometrice
între diferitele reprezentãri. O formã popularã de curbe raþionale o constituie funcþiile
Non - Uniform Raþional - B-Spline (NURBS) denumite în acest fel datoritã
neuniformitãþii vectorului nodal.
Curbele NURBS sunt capabile sã reprezinte într-o singurã formã atât curbe
B-Spline ºi Bezier cât ºi curbe polinomiale. De asemenea, pot fi folosite pentru a
reprezenta curbe de interpolare ºi de aproximare.
Avantajele principale constau în reducerea complexitãþii bazei de date prin
reducerea numãrului de proceduri necesare la definire.
O funcþie raþionalã definitã de n + 1 puncte de control este datã de
, ) u ( R P ) u ( P
n
0 i
k , i i ¿
=
=
max
u u 0 s s , (5.35)
unde R
i,k
este funcþia de bazã.
100 BAZELE CAD
¿
=
=
n
0 i
k , i i
k , i i
k , i
) u ( N h
) u ( N h
) u ( R . (5.36)
Pentru h
i
= 1, R
i,k
(u) = N
i,k
.
Acest tip de funcþie are aproape toate proprietãþile curbelor discutate pânã acum,
diferenþa principalã constând în abilitatea de a controla forma curbei ºi prin factorii
de pondere h
i
. Astfel, se poate defini un vector H = [h
0
, h
1
,..., h
n
] care controleazã
punctele P
0
,...P
n
. Prin alegerea vectorului H se realizeazã controlul curbei, ceea ce
echivaleazã cu o parametrizare a curbei deºi punctele de control sunt date.
5.3. Manipularea curbelor
5.3.1. Evaluarea punctelor pe o curbã
Pe o curbã pot fi generate puncte pentru afiºare, sau definirea altor entitãþi
geometrice sau pentru alte scopuri (de exemplu, Metoda Elementelor Finite). În toate
aceste cazuri metodele de evaluare trebuie sã fie rapide ºi eficiente. Metoda evidentã
de înlocuire a parametrului nu este cea mai eficientã. Mai eficiente sunt metodele
incrementale, care sunt preferate ori de câte ori este posibilã folosirea lor.
5.3.2. Compunerea curbelor
Uneori curbele nu sunt definite analitic sau cu puncte de control ci prin preluarea
unor curbe de pe ecran deja definite. În acest caz însã trebuie asiguratã continuitatea
la nivelul joncþiunilor cu alte curbe.
Exemplu:
Fie 2 segmente de curbã, P
1
(u
1
) cu a u 0
1
s s ºi P
2
(u
2
) cu b u 0
2
s s . Pentru
compunerea lor pot fi considerate trei clase de continuitate; C
0
, C
1
, C
2
.
C
0
:
) 0 ( P ) a ( P
2 1
=
C
1
:
T ) a ( ' P
1 1
o =
T ) a ( ' P
2 2
o =
C
2
: aceeaºi curburã
Pentru o curbã în spaþiu, curbura este legatã de vectorul binormal prin relaþia:
3
' P
" P ' P
B
1 ×
=
µ
unde B este vectorul binormal. Dacã se impune aceastã condiþie în punctul de
joncþiune, rezultã
101 MODELARE GEOMETRICÃ
3
2
2 2
3
1
1 1
) 0 ( ' P
) 0 ( " P ) 0 ( ' P
) a ( ' P
) a ( " P ) a ( ' P ×
=
×
(5.37)
Înlocuind condiþiile corespunzãtoare continuitãþii de ordinul întâi (C
1
), rezultã:
3 3
2
2 2
3 3
1
1 1
T
) a ( " P T
T
) a ( " P T
o
× o
=
o
× o
(5.38)
sau
) 0 ( " P T ) a ( " P T
2
2
2
1
1
×
|
|
.
|

\
|
o
o
= ×
(5.39)
Aceastã ecuaþie poate fi îndeplinitã numai dacã:
) 0 ( " P ) a ( " P
2
2
2
1
1
|
|
.
|

\
|
o
o
=
(5.40)
5.3.3. Segmentarea curbelor
Segmentarea curbelor este echivalentã cu înlocuirea unei curbe prin mai multe
entitãþi componente care dau exact aceeaºi formã. Un exemplu de aplicaþie constã
în definirea unor suprafeþe, pornind de la un cerc interior (fig. 5.36).
Din punct de vedere matematic segmentarea constituie o operaþie de
reparametrizare a curbei care se divizeazã. De exemplu, segmentarea unei linii
(P
0
, P
1
) în punctul P
2
presupune definirea a douã noi linii în baza de date: (P
0
,
P
2
) ºi (P
2
, P
1
), iar problema se reduce la redefinirea parametrilor pentru cele
Fig. 5.36.
102 BAZELE CAD
douã curbe (fig. 5.37).
În cazul curbelor sintetice este
necesarã o transformare parametricã.
Exemplu
Pentru cazul din figura 5.38, rela-
þiile de transformare sunt:
). u u ( v u u
rezult8
), u u ( v u u
1
m 1
0
1 0
÷ + =
÷ + =
(5.41)
Dacã aceste expresii se înlocuiesc
în ecuaþia unei curbe date, se obþin pe
rând ecuaþiile celor douã segmente în
funcþie de parametrul v.
5.3.4. Scurtarea curbelor (TRIMMING)
Din punct de vedere matematic, scurtarea este o operaþie identicã cu seg-
mentarea. Singura diferenþã este cã rezultatul obþinut constã dintr-un singur segment
ºi nu douã (fig. 5.38).
Funcþia de scurtare implicã urmãtoarele etape:
• evaluarea ecuaþiei segmentului de curbã dorit;
• ºtergerea curbei originale;
• stocarea ºi afiºarea segmentului dorit;
Principiul este valabil ºi se poate folosi atât la scurtare cât ºi la extinderea
curbelor pânã la o limitã datã.
v = 1
u
1
v = 0
u
0
u
m
v = 0
v = 1
Fig. 5.37.
v = 0
u
1
v = 1
u
2
u
m
v = 1
u
m
v = 0
u
0
v = 1
u
2
Fig. 5.38.
103 MODELARE GEOMETRICÃ
5.3.5. Intersecþia a douã curbe
De regulã, rezultatul intersecþiei a douã curbe este un punct P
i
. Dacã P(u) ºi
Q(v) sunt funcþiile polinomiale ale curbelor, atunci coordonatele punctului P
i
se
determinã prin rezolvarea ecuaþiei ) v ( Q ) u ( P = .
Ecuaþia vectorialã de mai sus produce 3 ecuaþii scalare cu douã necunoscute: u ºi v.
O cale posibilã de rezolvare ar fi determinarea necunoscutelor u ºi v din primele
douã ecuaþii ºi verificarea soluþiei în cea de-a treia. În general, sistemul este neliniar
ºi trebuie rezolvat numeric cu metoda Newton - Raphson care necesitã o soluþie
iniþialã. De regulã însã sistemul CAD “cere” indicarea celor douã curbe prin
selectare; aceasta se poate realiza cât mai aproape de “soluþie”, mai ales când
sunt posibile mai multe soluþii. În acest fel se indicã indirect ºi soluþia iniþialã a
sistemului de ecuaþii neliniare.
5.3.6. Transformãri
Transformãrile sunt tehnici de generare a unor noi entitãþi prin modificarea
unor entitãþi definite anterior în modelul geometric curent.
Tehnicile de transformare uzuale în CAD sunt: proiecþie, translaþie, rotaþie,
oglindire ºi scalare. Ele sunt utile atât în activitatea de modelare cât ºi la studiul
miºcãrii mecanismelor, animare etc. De exemplu: translatarea unui obiect înseamnã
translatarea tuturor punctelor, liniilor ºi suprafeþelor.
Proprietãþile geometrice sunt INVARIANTE faþã de aceste transformãri.
5.4. Modelarea geometricã prin suprafeþe
Sistemele CAD moderne sunt prevãzute cu urmãtoarele entitãþi principale de
tip suprafaþã:
1. Suprafaþa planã - cea mai simplã - necesitã 3 puncte distincte pentru
definirea unui plan infinit.
2. Suprafaþa riglatã - este suprafaþa liniarã de interpolare între douã curbe
de frontierã, care o definesc.
3. Suprafaþa de revoluþie - este suprafaþa obþinutã prin rotirea unei curbe plane.
4. Suprafaþa cilindricã - este suprafaþa obþinutã prin translatarea unei curbe
plane, de-a lungul unei generatoare.
5. Suprafaþa sinteticã - este suprafaþa cu formã liberã definitã prin puncte
de control. Aceasta poate fi:
- Bezier;
- B-Spline;
- de tip Coons - interpolare transfinitã (între 4 curbe de contur).
104 BAZELE CAD
6. Suprafaþa de racordare (FILLET) - este suprafaþa B-Spline care
“racordeazã” alte 2 suprafeþe.
7. Suprafaþa offset - este o suprafaþã cu formã identicã în raport cu alta,
datã drept referinþã, dar de dimensiuni diferite (fig. 5.39).
Forma parametricã generalã a suprafeþelor curbe este dependentã de doi parametri:
x = x(u,v)
y = y(u,v)
z = z(u,v)
Segmente de suprafaþã (PATCH)
În cazul suprafeþelor, omologul seg-
mentului de curbã este PATCH-ul (petic),
care este un petic de suprafaþã elementar,
utilizat pentru construcþia suprafeþelor.
Aºa cum în cazul segmentelor, para-
metrul u variazã monoton de-a lungul
segmentului, în cazul peticului, parametrii
u ºi v variazã monoton pe douã direcþii,
rezultând un petic biparametric.
Parametrii u ºi v variazã, de obicei, între 0 ºi 1, dar pot fi utilizate ºi alte
intervale numerice.
Prin fixarea unui parametru, se obþin curbe pe suprafaþã în funcþie de cealaltã
variabilã, denumite curbe izoparametrice. Trasând aceste curbe pentru diferite
valori ale lui u ºi v rezultã o construcþie în formã de plasã (MESH) de curbe pe
suprafaþã (fig. 5.41).
Se poate concluziona deci cã, reprezentarea biparametricã este o corespondenþã
biunivocã între E
2
ºi E
3
, unde E
2
este spaþiul biparametric, iar E
3
reprezintã spaþiul
cartezian (fig. 5.42).
Existã 16 vectori care definesc un petic: 4 puncte plus câte 2 tangente ºi o
binormalã în fiecare punct de colþ (4 + 3 x 4 colþuri = 16 vectori).
Direcþia
offset
Fig. 5.39.
P(x,y,z)
P
x
y
z
Fig. 5.40.
Suprafaþã de referinþã
Suprafaþã offset
105 MODELARE GEOMETRICÃ
5.4.1. Reprezentarea parametricã a suprafeþelor analitice
5.4.1.1. Suprafeþe plane
Ecuaþiile parametrice ale unui plan pot avea mai multe forme în funcþie de
modul de definire a planului. Cazul cel mai utilizat în CAD este planul definit prin
trei puncte: P
0
, P
1
ºi P
2
(fig. 5.43).
Fie P
0
un punct iniþial, cãruia i se asociazã u = 0 ºi v = 0, P
0
P
1
direcþia u ºi
P
0
P
2
direcþia v, cu ] 1 , 0 [ v , u e .
Vectorul de poziþie al punctului curent P este:
). P P ( v ) P P ( u P ) v , u ( P
0 2 0 1 0
÷ + ÷ + =
Relaþia obþinutã reprezintã ecuaþia biparametricã a suprafeþei plane. Aceasta
este o suprafaþã limitatã prin valorile parametrilor u ºi v.
5.4.1.2. Suprafeþe riglate
Suprafaþa rulatã este generatã prin unirea punctelor corespondente de pe douã
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1
0
0,25
0,5
0,75
1
u
v
Fig. 5.41.
v
max
v
min
v
u
min
u
max
P(1,0)
P(1,1) P(0,1)
P(0,0)
Spaþiul parametric
u = u
min
v = v
min
u = u
max
v = v
max
u = ct
v
P
u
P
v = ct
u
Fig. 5.42.
106 BAZELE CAD
curbe de ghidare G(u) ºi Q(u) prin
linii drepte (fig. 5.44).
Caracteristicile definitorii ale
acestei suprafeþe sunt:
• într-un punct oarecare P al su-
prafeþei existã cel puþin o dreaptã
cuprinsã complet în suprafaþã;
• orice suprafaþã desfãºurabilã
este riglatã.
Conform notaþiilor din figura
5.44, pentru valori concrete ale
parametrului u, curbele izoparame-
trice respective sunt drepte în cazul
suprafeþelor riglate.
Se considerã un punct pe
dreapta Q
i
G
i
, obþinutã pentru u = u
i
.
Pe aceastã dreaptã, coordonatele
punctului curent (u
i
,v) sunt:
) G Q ( v G ) v , u ( P
i i i i
÷ + =
.
Generalizând rezultã:
), u ( Q v
) u ( G ) v 1 ( )] u ( G
) u ( Q [ v ) u ( G ) v , u ( P
+
+ ÷ = ÷
÷ + =
cu 1 u 0 s s ,
1 v 0 s s
.
5.4.1.3. Suprafeþe de rotaþie
Suprafeþele de rotaþie se obþin prin rotaþia unei curbe plane în jurul unei axe
fixe date. Prin rotaþia unei curbe plane în jurul unei axe fixe se creeazã câte un
cerc pentru fiecare punct al curbei rotite. Raza acestor cercuri este variabilã de
la un punct la altul ºi este egalã cu distanþa punctului faþã de axã r(u) (fig. 5.45).
În baza de date, suprafeþele de rotaþie se reprezintã prin identificatorii entitãþilor
componente (curba, axa ºi unghiul de rotaþie). Pentru deducerea ecuaþiei suprafeþei
se defineºte un sistem local (x
i
y
i
z
i
) cu axa z
L
pe axa de rotaþie. Se considerã
punctul curent G(u) pe curbã. Prin rotaþie, aceasta genereazã un cerc ce conþine
punctele P(u,v). Valoarea razei acestui cerc nu depinde de parametrul v ºi se
poate calcula cu relaþia
. ) 0 , u ( P ) u ( r =
v
u
P
0
P
1
P(u,v)
u
v
P
2
Fig. 5.43.
2
P
1
P
(5.42)
u
1
Q(u)
u=1
G(u) u=1
G
i
Q
i
u=0
u
v
y
x
z
Fig. 5.44.
v) , (u P
i
v) (u, P
P(u
i
,v)
P(u,v)
u=u
i
107 MODELARE GEOMETRICÃ
Datã fiind valoarea razei, ecuaþia planului se poate scrie în forma matricealã,
astfel:
,
u
v sin ) u ( r
v cos ) u ( r
)] v , u ( P [
(
(
(
¸
(

¸

=
(5.43)
unde z
L
(u) = u.
5.4.1.4. Suprafeþe cilindrice
Suprafaþa cilindricã se obþine prin translaþia unei curbe plane în lungul unei axe
fixe date. În baza de date, o astfel de entitate se înregistreazã prin identificatorul
curbei plane (fig. 5.46) ºi direcþia de translaþie datã de versorul v n , sau o linie
(datã prin douã puncte).
Prin urmare, ecuaþia suprafeþei cilindrice este:
v n v ) u ( G ) v , u ( P + =
, cu
max
u u 0 s s ,
max
v v 0 s s ,
unde G(u) este ecuaþia curbei plane, v - lungimea cilindrului, iar v n - versorul axei
cilindrului.
G(u)=P(u,0)
P(u,v)
r(u)
v
Meridiane
(v = ct)
Paralele
(u = ct)
3
n
z
L
2
n
1
n
u
u=0
z
y
x
y
L
x
L
u=1
Fig. 5.45.
108 BAZELE CAD
5.4.2. Suprafeþe sintetice
Argumentele care explicã necesitatea curbelor sintetice sunt valabile ºi în
cazul suprafeþelor. Domeniul tipic de aplicare îl constituie proiectarea formelor
aerodinamice ale avioanelor ºi automobilelor, forme optime obþinute din calcule
aerodinamice, termice, de deformaþii etc. Acestea se descriu în faza de proiectare
stilisticã prin fluxuri de puncte discrete care trebuie conectate cu acurateþe prin
suprafeþe netede. Orice micã deviaþie de la aceste suprafeþe aerodinamice poate
degrada semnificativ performanþele rezultate din calcule, la fel ca ºi în cazul curbelor
sintetice.
Suprafeþele sintetice sunt bazate tot pe ecuaþii polinomiale, care sunt de data
aceasta biparametrice.
5.4.2.1. Suprafeþe parametrice bicubice
Peticul bicubic conecteazã patru puncte “de colþ” utilizând ecuaþii polinomiale
bicubice. Forma generalã vectorialã a ecuaþiei bicubice este:
¿¿
= =
=
3
0 i
3
0 j
j i
j , i
v u C ) v , u ( P , 1 u 0 s s ,
1 v 0 s s
. (5.44)
Fiecare din cele 3 ecuaþii scalare echivalente conþine 16 coeficienþi C
ij
. În
total sunt 48 coeficienþi scalari pentru un petic, ceea ce echivaleazã cu 16 coeficienþi
vectoriali C
ij
, sintetizaþi în matricea:
P(u,v)
v=v
max
u
max
Generatoare
G(u)
Directoare
v=0
v
z
y
x
u
v
n
u
min
u
max
(u) G
v) (u, P
Fig. 5.46.
109 MODELARE GEOMETRICÃ
(
(
(
(
¸
(

¸

=
00 01 02 03
10 11 12 13
20 21 22 23
30 31 32 33
C C C C
C C C C
C C C C
C C C C
] C [ , (5.45)
unde [C] este matricea coeficienþilor vectoriali care definesc ecuaþia unui petic
bicubic.
Aceºti coeficienþi pot fi determinaþi prin:
• indicarea a 16 puncte pe care sã le conþinã suprafaþa (în acest caz avem
de-a face cu interpolare de tip Lagrange);
• indicarea a 4 puncte conþinute de suprafaþã, plus 2 x 4 tangente (în cele 2
direcþii) ºi plus vectorul binormal (interpolare Hermite).
În primul caz (Lagrange) datele manipulate sunt intuitive dar rezultatele (adicã
forma suprafeþei) pot fi surprinzãtoare (neintuitive).
În cazul al doilea (Hermite), deºi matematic convenabil, mãrimile vectoriale
manipulate (tangente ºi binormale) nu sunt tocmai intuitive pentru inginer.
De aceea, în funcþie de situaþia concretã de proiectare, se opteazã pentru o
variantã sau cealaltã.
În practicã, rareori se definesc suprafeþe bicubice cu un singur petic - cel mai
adesea sunt suprafeþe cu multiple petice. În acest caz, se pune problema continuitãþii,
la fel ca ºi în cazul curbelor spline. În cazul suprafeþelor bicubice, se lucreazã în
mod uzual cu continuitate de ordin zero (C
0
) ºi ordin unu (C
1
).
Continuitatea de ordin zero (C
0
)
Condiþiile de conectare între douã petice pot fi interpretate ca un set de condiþii
de continuitate (C
1
) pentru un numãr infinit de segmente spline cubice, de-a lungul
muchiei u, deoarece aceste condiþii sunt parametrice în v (fig. 5.47), conform relaþiilor.
. ] ) v , 1 ( ' P [ ] ) v , 0 ( ' P [ : C
, ] ) v , 1 ( P [ ] ) v , 0 ( P [ : C
1 patch
u
2 patch
u
1
1 patch 2 patch 0
=
=
(5.46)
Aceste condiþii se pot prelucra extrãgându-se din ele fie condiþii de coincidenþã
pentru punctele de control (interpolare Lagrange) ale celor 2 patch-uri, fie
eliminându-se unele date vectoriale (pentru cazul Hermite), similar ca la curbele
spline.
Ca ºi în cazul curbelor spline, existã dezavantaje (intuitivitate redusã, date de
intrare complexe) care fac greoaie utilizarea acestor suprafeþe. De aceea au fost
propuse ºi alte tipuri de suprafeþe pe baza unor polinoame de grad superior.
110 BAZELE CAD
5.4.2.2. Suprafeþe Bezier
Ca ºi în cazul curbelor Bezier, care utilizeazã un poligon caracteristic “tractabil”,
suprafeþele Bezier utilizeazã tot un poligon caracteristic, în locul vectorilor de colþ
de la suprafeþele spline. În mod similar, acestea sunt suprafeþe de aproximare.
Coordonatele punctelor de pe suprafaþa Bezier sunt date de expresia
] 1 , 0 [ v , u , ) v ( B ) u ( B P ) v , u ( P
m
0 i
n
0 j
k , j k , i ij
e =
¿¿
= =
, (5.47)
unde P
ij
sunt punctele de control - nodurile poligonului caracteristic, iar B
i,m
ºi B
j,n
sunt funcþii Bernstein, definite la fel ca în cazul curbelor Bezier.
Un exemplu de suprafaþã Bezier cu poligoanele caracteristice aferente este
prezentat în fig. 5.48.
Petic 1
Petic 2
v
1
= 1 v
2
= 1
u
2
= 1
u
1
= 1
v
1
= 0
v
2
= 0
u
2
= 1
u
2
= 0
z
y
x
v
1
u
1
v
2
u
2
Fig. 5.47.
Fig. 5.48.
Poligon
caracteristic
111 MODELARE GEOMETRICÃ
Exemplul aratã cã suprafeþele pãstreazã un numãr de proprietãþi ale curbelor
Bezier ºi anume:
• trec prin punctele de colþ ale patch-ului;
• curbele de frontierã sunt tangente la laturile din colþuri ale poligonului
caracteristic, în punctele de colþ;
• posedã proprietatea “convex hull” - “coajã convexã”.
În schimb pãstreazã ºi unele dezavantaje ale curbelor Bezier:
• control local nesatisfãcãtor;
• dificultãþi de conectare.
5.4.2.3. Suprafeþe B-Spline
Limitele suprafeþelor Bezier sunt eliminate de suprafeþele B-Spline. Acestea
pãstreazã anumite caracteristici ale tipului Bezier, reprezentând o extindere a
proprietãþilor curbelor B-Spline la nivelul suprafeþelor cu acelaºi nume.
Suprafaþa B-Spline aproximeazã un poligon caracteristic ca în figura 5.49 ºi,
în general, trece prin colþurile poligonului. Curbele de frontierã sunt tangente la
muchiile poligonului în colþuri.
Existã ºi implementãri
care nu urmeazã aceastã cale,
când poligonul este închis, ca
în figura 5.49,b.
Aºa cum punctul de
control al unei curbe B-Spline
influenþeazã forma curbei pe
un domeniu limitat al para-
metrului u, în acelaºi mod un
punct de control al suprafeþei
B-Spline influenþeazã forma
suprafeþei numai pe o porþiune
“rectangularã” limitatã a spa-
þiului parametric al variabilelor
u ºi v. Mãrimea influenþei unui
punct de control, ºi deci gradul
de aproximare a poligonului de
control poate fi modificat
variind gradul curbelor B-
Spline utilizate.
Fig. 5.49.
a)
b)
112 BAZELE CAD
Expresia matematicã a suprafeþei B-Spline este, de asemenea, o generalizare
biparametricã a cazului curbei
¿¿
= =
=
m
0 i
n
0 j
k , j k , i ij
) v ( N ) u ( N P ) v , u ( P , (5.48)
unde P
ij
sunt nodurile poligonului de control, N
i,k
(u), N
j,k
(v) sunt funcþii B-Spline
definite asemãnãtor ca în cazul curbelor B-Spline;
Din expresia (6.48) se poate vedea cã pentru cele douã direcþii parametrice
se pot utiliza funcþii de racordare N
i,k
ºi N
j,k
de grade diferite. De regulã, se utilizeazã
totuºi acelaºi grad.
5.4.2.4. Suprafeþe Coons
Toate suprafeþele sintetice prezentate anterior au o trãsãturã comunã, ºi anume
aceea cã necesitã un numãr finit de puncte de control pentru generarea suprafeþei.
Peticul COONS este o formã de “interpolare transfinitã”, deoarece interpolarea
pleacã de la un numãr infinit de puncte ºi anume punctele curbelor “de control”.
Peticul COONS se foloseºte pentru generarea unei suprafeþe, delimitatã de 4 curbe
care se intersecteazã, formând un contur închis (fig. 5.50).
Existã multe tehnici de interpolare, cea mai popularã fiind interpolarea biliniarã.
Aceastã tehnicã combinã douã suprafeþe riglate obþinute din cele 4 curbe care
delimiteazã peticul, câte o suprafaþã pentru fiecare 2 curbe opuse (fig. 5.51). Peticul
COONS se obþine prin superpoziþia celor douã suprafeþe rulate P
1
(u,v) ºi P
2
(u,v),
date de relaþiile:
1
1
v
u
x
y
z
v
u
P(u,1)
P(1,v)
P(u,0)
P(0,v)
Fig. 5.50.
Spaþiul
parametric
113 MODELARE GEOMETRICÃ
. ) 1 , (u P v ) 0 , (u P v) 1 ( (u,v) P
, ,v) 1 ( P u ,v) 0 ( P u) 1 ( (u,v) P
2
1
· + · ÷ =
· + · ÷ =
Prin adunarea celor douã ecuaþii se obþine suprafaþa:
). v , u ( P ) v , u ( P ) v , u ( ' P
2 1
+ =
Aceastã suprafaþã însã, nu mai este mãrginitã de cele patru curbe în poziþia
iniþialã, deoarece prin adunarea celor 2 suprafeþe s-a obþinut ºi o translaþie în altã
zonã a spaþiului cartezian (fig. 5.51). În etapa urmãtoare curba obþinutã trebuie
“reaºezatã” pe conturul iniþial al celor 4 curbe, prin “scãderea” unei suprafeþe
plane nedorite P
3
(u, v). Aceastã suprafaþã P
3
(u, v) poate fi definitã prin interpolare
liniarã în direcþia v (fig. 5.52), adicã:
)] 1 , 1 ( P u ) 1 , 0 ( P ) u 1 [( v )] 0 , 1 ( P u ) 0 , 0 ( P ) u 1 [( ) v 1 ( (u,v) P
3
· + · ÷ + · + · ÷ ÷ = .
În acest fel, ecuaþia suprafaþei COONS se obþine prin compunerea celor 3 suprafeþe:
) v , u ( P ) v , u ( P ) v , u ( P ) v , u ( P
3 2 1
÷ + = . (5.49)
Aceastã ecuaþie defineºte peticul biliniar COONS, care conecteazã patru curbe
în contur închis. Necesitatea scãderii suprafeþei plane reiese în mod evident dacã se
considerã peticul COONS delimitat de 4 segmente de dreaptã. În acest caz P
1
(u,v),
P
2
(u,v) ºi P
3
(u,v) descriu suprafeþe plane identice cu suprafaþa COONS finalã, iar
relaþia (5.49) devine o identitate.
3 2 1
P P P P + + = .
5.4.2.5. Suprafeþe de racordare (FILLET)
Acestea sunt suprafeþe care conecteazã douã petice neaflate în contact.
Suprafaþa FILLET este, de obicei, creatã în condiþii de continuitate (C
0
) ºi (C
1
) cu
cele douã petice date.
Suprafeþele utilizate pentru racordare sunt, în general, suprafeþe bicubice.
Punctele P
1
, P
2
, P
3
ºi P
4
ale suprafeþei de racordare (fig. 5.53) ºi tangentele
aferente se pot obþine rapid, cunoscând celelalte douã petice, prin evaluare pe
Fig. 5.51.
+ =
Poziþia
iniþialã a
conturului
P
1
(u,v)
P
2
(u,v)
P(u,v)
P’(u,v)
114 BAZELE CAD
suprafeþele aferente. Pe baza acestora se
poate defini apoi suprafaþa de racordare
ca o suprafaþã de aproximare Hermite.
Metoda poate fi folositã la racordarea
tuturor tipurilor de petice sintetice.
O altã metodã de racordare foloseºte
ca suprafeþe de legãturã petice B-Spline,
dupã urmãtorul algoritm:
• se genereazã un set de puncte între P
1
ºi P
2
de-a lungul muchiei izoparametrice v - 1
(peticul 1);
• un set similar pentru peticul 2;
• se genereazã douã curbe B-Spline
pentru cele 2 seturi;
• se genereazã suprafaþa de racordare
B-Spline pornind de la un set de puncte de
control evaluat pe cele 2 curbe B-Spline.
Petic 2
v = 0
v = 1
Suprafaþã de
racordare
v = 0
v = 1
Petic 1
v = 0
u
v
P
1
P
2
P
3
P
4
Fig. 5.53.
Fig. 5.52.
P
1
(u,v) P(0,v) P(1,v)
u
v
P(u,1)
P(u,0)
u
v
P(u,v)
v
u
(1-u)P(0,1)-uP(1,1)
(1-u)P(0,0)+uP(1,0)
P
2
(u,v)
115 MODELARE GEOMETRICÃ
5.4.2.6. Suprafeþe OFFSET
Suprafaþa offset este definitã în raport cu o altã suprafaþã similarã datã ºi se
obþine prin reprezentarea suprafeþei date cu un parametru modificat prin relaþia:
) v , u ( d ) v , u ( n ) v , u ( P ) v , u ( P
offset
· + =
, (5.50)
unde P(u,v) este suprafaþa originalã datã, n(u,v) - versorul normal în punctul (u,v)
pe suprafaþa originalã, d(u,v) - distanþa de “offsetare” în punctul (u,v). Aceasta
poate rãmâne constantã, poate varia în funcþie de un parametru sau de amândoi.
5.4.2.7. Suprafeþe parametrice raþionale
Sunt considerate cele mai generale suprafeþe. Forma suprafeþei este controlatã
prin ponderi (factori scalari) asociaþi fiecãrui punct de control. Principiile discutate
în cazul curbelor raþionale se extind integral la suprafeþe, pornind de la forma
ecuaþiilor ºi terminând cu proprietãþile, avantajele ºi dezavantajele. De aceea, nu
vor mai fi reluate.
5.4.3. Manipularea suprafeþelor
5.4.3.1. Afiºarea
Cea mai simplã metodã de afiºare a suprafeþelor constã în generarea unui
mesh (plasã) de curbe izoparametrice pe suprafaþã, prin incrementarea succesivã
a celor 2 parametri.
Majoritatea sistemelor CAD permit modificarea mãrimii “plasei”. Utilizând
aceastã mãrime - la incrementare - sunt evaluate pe rând curbele plasei care sunt
apoi afiºate.
5.4.3.2. Evaluarea punctelor ºi curbelor pe suprafeþe
Similar cu cazul curbelor, existã douã situaþii:
• soluþia directã a punctului care se obþine pe baza valorilor u ºi v ce
determinã coordonatele punctului;
• soluþia inversã a punctului; în acest caz, date fiind coordonatele punctului
x, y, z, se cer valorile parametrilor u ºi v. Acest lucru este necesar mai ales
atunci când trebuie evaluate tangentele în anumite puncte. Problema
conduce la rezolvarea unui sistem neliniar în u ºi v, care poate ridica
probleme de convergenþã în anumite cazuri.
5.4.3.3. Segmentarea suprafeþelor ºi retezarea
Problema se pune la fel ca la curbe ºi constã în reparametrizarea sau
transformarea parametricã a suprafeþei, menþinând gradul polinoamelor neschimbat.
Fie suprafaþa definitã în domeniul ] u , u [ u
m 0
e ºi ] v , v [ v
m 0
e . Se doreºte
împãrþirea ei în patru petice prin curbele izoparametrice ce trec prin punctul
P(u
1
,v
1
).
Transformarea parametricã ia forma:
116 BAZELE CAD
¹
´
¦
÷ + =
÷ + =
), v v ( v v v
), u u ( u u u
0 1 1 0
0 1 1 0
(5.51)
pentru peticul 1.
Pentru celelalte petice
se pot scrie ecuaþii si-
milare, care înlocuite în
ecuaþia suprafeþei iniþiale
conduc la obþinerea a pa-
tru ecuaþii distincte, cu noii
parametri u
1
ºi ] 1 , 0 [ v
1
e .
Retezarea, la fel ca la
curbe, este o problemã care se reduce în esenþã tot la o segmentare, urmatã de
eliminarea (ºtergerea) porþiunii nedorite.
5.4.3.4. Intersecþia
Problema intersecþiei suprafeþelor are o naturã complexã conducând, de regulã,
la rezolvarea unor sisteme neliniare.
Tipurile principale de intersecþii sunt:
• suprafaþã - curbã, P(u,v) - P(w) = 0;
• suprafaþã - suprafaþã, P(u,v) - P(t,w) = 0.
În primul caz rezultatul este un punct, coordonatele u, v, respectiv w se determinã
dintr-un sistem scalar neliniar de 3 ecuaþii - cu algoritmul numeric Newton Raphson.
În cazul particular al intersecþiei suprafaþã - dreaptã problema este însã rezolvabilã,
cu soluþie analiticã.
În al doilea caz, intersecþia este o curbã, rezultatul este deci o ecuaþie unipara-
metricã. Teoretic trebuie eliminaþi 3 parametri, iar problema se rezolvã tot pe cale
numericã. Majoritatea sistemelor CAD rezolvã problema numai pentru cazul
particular suprafaþã - plan, pentru implementarea comenzilor de tip “cut plane”.
5.5. Modelarea geometricã prin entitãþi solide
A treia tehnicã de modelare CAD este modelarea solidã. Aceastã tehnicã
poate fi în unele cazuri chiar mai rapidã ºi mai simplã decât celelalte douã
(WIREFRAME ºi SURFACE) ºi este cheia automatizãrii fabricaþiei ºi, în general,
a conceptului CIM prezentat anterior.
Modelul solid înmagazineazã mai multe informaþii, ºi permite verificarea
corectitudinii concepþiei (se poate verifica dacã 2 obiecte ocupã acelaºi spaþiu,
interferenþe etc.).
Petic 4
Petic 3
Petic 2
Petic 1
P(u
1
,v
1
)
v
1
=1; v
1
u
0
,v
0
u
v
u
1
u
1
=1
Fig. 5.54.
117 MODELARE GEOMETRICÃ
Datele necesare creãrii unui solid depind de reprezentarea internã a acestuia,
de interfaþa graficã ºi sunt de urmãtoarele tipuri:
• topologice;
• geometrice.
Diferenþa între datele geometrice ºi topologice este ilustratã în figura 5.55.
Reprezentarea solidelor este bazatã pe principiul fundamental conform
cãruia un obiect fizic împarte spaþiul în douã regiuni (spaþiul interior ºi spaþiul
exterior) separate prin frontierele obiectului. Pe baza acestei noþiuni solidul este
definit matematic, printr-un domeniu de puncte din spaþiul euclidian E
3
.
Proprietãþile pe care o reprezentare matematicã a solidelor trebuie sã le
înglobeze sunt:
• rigiditate, caracterizatã prin faptul cã între punctele solidului, distanþele
rãmân constante;
• omogenitate tridimensionalã;
• delimitare coerentã ºi clarã a exteriorului de interior.
Pentru obþinerea acestor proprietãþi au fost concepute diferite metode de
reprezentare a solidelor (ºase la numãr):
1. - prin frontiere sau B-rep;
2. - CSG;
3. - extrudare (SWEEPING);
4. - prin semispaþii;
5. - model solid analitic;
6. - descompunere celularã;
Fiecare metodã are avantaje ºi dezavantaje. Cele mai rãspândite sunt B-rep,
CSG ºi SWEEPING.
5.5.1. Reprezentarea cu semispaþii
Este o metodã de reprezentare care utilizeazã primitive infinite de tip plan,
cilindru, sferã, con, tor etc., precum ºi regulile de compunere CSG.
Principalul avantaj al metodei este acela de a fi foarte concisã.
Fig. 5.55.
L
2
C
1
L
1
L
3
R
P
1
L
2
L
3
L
1
P
1
R
L
1
L
2
L
3
C
1
P
1
R
L
1
L
2
L
3
R
P
1
Aceeaºi geometrie,
topologie diferitã
Aceeaºi topologie,
geometrie diferitã
118 BAZELE CAD
Dezavantajele principale ale metodei semispaþiilor sunt:
• poate conduce la solide incomplet limitate;
• poate produce la blocarea sistemului, prin încercarea de a calcula, de
exemplu, puncte de la infinit etc.
Metoda este folositã aproape exclusiv în domeniul cercetãrii ºtiinþifice, datoritã
primitivelor mai abstracte, ce conferã o flexibilitate ridicatã.
5.5.2. Reprezentarea prin frontiere (B-rep)
Este cea mai popularã metodã, în cadrul cãreia un obiect fizic este reprezentat
ca fiind mãrginit de un set de feþe orientate.
În baza de date, metoda stocheazã numai parametrii suprafeþelor de margine
(frontierã) ale solidului. În funcþie de tipul acestor suprafeþe, obiectele întâlnite în
inginerie sunt de douã categorii:
• poliedrale (cu feþe plane), ºi în acest caz, feþele se numesc “faþete”;
• curbe (cu feþe curbe).
Primitivele în B-rep sunt feþe, muchii ºi colþuri. Acestea sunt stocate în baza de
date ca noduri într-un graf cu legãturi orientate, pentru a se indica sensul conexiunilor.
Feþele modelului sunt, de asemenea, “orientate” ºi definesc noþiunile de interior
ºi de exterior prin intermediul normalelor. Astfel, prin convenþie, un punct P(u,v)
este interior în raport cu o suprafaþã, dacã se aflã în partea pozitivã a normalei,
datã de relaþia:
v
P
u
P
n
c
c
×
c
c
= . (5.52)
În baza de date, sistemele CAD stocheazã normala ºi sensul sãu pozitiv în
raport cu punctele explicite - deja stocate.
În continuare, obþinerea de volume solide se face combinând feþe, muchii ºi noduri.
Consistenþa topologicã a modelului se analizeazã prin respectarea urmãtoarelor reguli:
• o faþã trebuie sã fie delimitatã de un singur “inel” de muchii;
• fiecare muchie aparþine numai la 2 feþe;
• fiecare nod aparþine unei singure muchii;
• respectarea relaþiei lui EULER prin care se garanteazã “închiderea”
solidului dacã:
2 F E V
Face Edge Vertex
= + ÷ , (5.53)
în care V este numãrul colþurilor, E - numãrul muchiilor ºi F - numãrul feþelor.
Relaþia este valabilã numai pentru corpuri poliedrice care nu includ gãuri.
În cazul corpurilor complexe (ce conþin gãuri, corpuri alãturate etc.) relaþia nu
mai este valabilã, ci se aplicã relaþia EULER - POINCARE:
119 MODELARE GEOMETRICÃ
V - E + F - H + 2P = 2B, (5.54)
în care H este numãrul de gãuri în feþe, P - numãrul de gãuri strãpunse, B - numãrul
de corpuri separate.
Termenii ecuaþiei poartã denumirea de primitivele lui EULER. Ca exemplu, se
considerã obiectul din figura 5.56.
Exemplul ilustreazã modul în care a fost obþinutã relaþia Euler-Poincare pentru
corpuri complexe, pe baza principiului descompunerii acestora în corpuri simple,
pentru care relaþia lui Euler este valabilã. În cazul în care corpul considerat suferã
modificãri în sensul schimbãrii numãrului de feþe, colþuri etc., atunci un alt parametru
se va modifica, de asemenea, astfel încât relaþia sã rãmânã echilibratã.
Prin urmare, relaþia lui Euler nu este utilã numai pentru controlul validitãþii
solidelor B-rep, ci ºi pentru definirea etapelor valide de construcþie. Astfel se
poate defini o metodã de construcþie B-rep, pe baza unui set de operatori ce
poartã numele de operatori Euler. Un set complet de operatori Euler nu este
unic, el diferã de la soft la soft, în funcþie de opþiunile autorilor. Avantajul operatorilor
Euler este acela cã ei faciliteazã respectarea relaþiei de validitate eliminând astfel
operaþiile de verificare, corectare etc.
În esenþã un set de operatori Euler constã din operaþii valide de construcþie
a unui solid “piesã cu piesã”. Un exemplu de set de operatori este prezentat în
tabelul 5.1.
F - E + V - H + 2P = 2B
Cub
Gaurã triunghiularã
Gaurã dreptunghiularã
Total
6
3
5
14
12
9
12
33
8
6
8
22
0
2
1
3
0
1
0
1
1
0
0
1
Fig. 5.56.
120 BAZELE CAD
Tabelul 5.1.
Semnificaþie
Make Edge-Vertex
Make Face-Vertex
Make Body-Face-Vertex
Make Edge Kill Hole
Kill Edge-Vertex
Kill Face-Vertex
Kill Body-Face-Vertex
Kill Edge Make Hole
Operator
MEV
MFE
MBFV
ME-KH
KEV
KFE
KBFV
KE-MH
V
1
0
1
0
-1
0
-1
0
-E
1
1
0
1
-1
-1
0
-1
+F
0
1
1
0
0
-1
-1
0
-H
0
0
0
-1
0
0
0
1
Operaþiile sunt în esenþã de douã categorii - make ºi kill - pentru crearea ºi,
respectiv, ºtergerea de entitãþi primitive, cum ar fi: faþã (face), muchie (edge), colþ
(vertex), gaurã (hole) etc. Pentru ilustrarea modului de utilizare a acestora se prezintã
cazul unui tetraedru în figura 5.57.
Unul dintre cele mai importante avantaje ale metodei de reprezentare a
solidelor B-rep îl constituie baza de date ce conþine o reprezentare explicitã atât
a geometriei cât ºi a topologiei. În acest fel, modificãri cu efect aparent
spectaculos sunt posibile prin operaþii de editare relativ simple. În figura 5.58 se
prezintã structura bazei de date pentru un solid de formã tubularã, în care
geometria este definitã prin douã puncte (P
0
,...,P
1
), patru muchii (E
0
,...,E
3
) ºi
patru feþe (F
0
,...,F
3
). Topologia este reprezentatã prin graful relaþiilor dintre aceste
entitãþi, care are o formã arborescentã.
În concluzie, metoda B-rep este foarte popularã datoritã asemãnãrii cu tehnica
intuitivã tradiþionalã de concepere a solidelor. Avantajele principale ale acestei
metode sunt:
• foarte potrivitã pentru construcþii de modele cu forme neobiºnuite bazate
pe suprafeþe sintetice (fuselaje, caroserii etc.);
• conversia foarte simplã la reprezentarea WIREFRAME, care este inclusã
în definirea B-rep;
• compatibilitatea unilateralã cu CSG (se poate obþine reprezentarea B-rep
pornind de la cea CSG nu ºi invers).
Existã însã ºi dezavantaje, cum ar fi:
• necesitã mari spaþii de stocare datoritã stocãrii explicite a limitelor solidului;
• este mai dificilã pentru utilizator, datoritã operaþiilor migãloase de construcþie.
De obicei, modeloarele bazate pe metoda B-rep au o interfaþã graficã cu
utilizatorul bazatã pe metoda de modelare CSG, la care se asociazã un modul de
conversie B-rep.
121 MODELARE GEOMETRICÃ
5.5.3. Reprezentarea CSG
Împreunã cu metoda B-rep sunt cele mai utilizate scheme de reprezentare a solidelor.
Un model CSG se obþine prin compunerea booleanã a unor primitive solide
finite. Acestea, spre deosebire de reprezentarea B-rep, constituie ele însele obiecte
CSG valide.
1.
2.
3.
4.
5.
6.
7.
MBFV
MEV
MEV
MEV
MFE
MFE
MFE
4
1
3
1
1
1
0
0
0
0
0
6
0
6
1
1
1
3
1
1
1
0
4
1
3
0
0
0
3
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
2
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Fig. 5.57.
Tetraedru
V - E + F - H = 2B - 2P
122 BAZELE CAD
F0
P0 P1
F1
E0
E2
E3
F2
E1
F3
Fig. 5.58.
r
1
r
2
Solid
Topologie
Geometrie
F0 F3 F1 F2
E0
E1 E1
E2 E2
E3 E3
P0 P0
P1 P1
r
2
x/y/z r
1
r
1
r
2
x/y/z
E0
123 MODELARE GEOMETRICÃ
În baza de date, metoda CSG nu înmagazineazã explicit feþe, muchii ºi vertex-
uri ci graful operaþiilor dintre primitive. Aceasta face reprezentarea CSG foarte
concisã ºi clarã.
Primitivele
Orice sistem CSG se bazeazã pe un set de primitive care cuprinde în majoritatea
cazurilor urmãtoarele tipuri de obiecte: bloc paralelipipedic, sferã, con, cilindru, tor
ºi prismã triunghiularã.
Matematic, fiecare primitivã este definitã printr-o mulþime de puncte în spaþiul
tridimensional (x,y,z):
Bloc: {(x,y,z) / 0 < x < W, 0 < y <H ºi 0 < z < D}, (5.55)
Cilindru: {(x,y,z) / x
2
+ y
2
< R
2
ºi 0 < z < H}, (5.56)
Con: {(x,y,z) / x
2
+ y
2
<
2
z
H
R
|
.
|

\
|
ºi 0 < z < H}, (5.57)
Sferã: {(x,y,z) / x
2
+ y
2
+ z
2
< R
2
}, (5.58)
Prismã: {(x,y,z) / 0 < x < W, 0 < y < H, 0 < z < D ºi yW + xH < HW}, (5.59)
Tor: {(x,y,z) / (x
2
+ y
2
+ z
2
- R
1
2
- R
2
2
)2 < 4R
2
2
(R
1
2
- z
2
)}. (5.60)
Operaþiile uzuale de construcþie sunt: REUNIUNE, INTERSECÞIE ºi
DIFERENÞÃ.
Pentru operaþiile de afiºare însã, este necesar sã se calculeze frontierele
solidului. Odatã calculate, aceste frontiere, pot fi stocate în baza de date ca atare
(la fel ca la metoda B-rep), caz în care schema CSG rãmâne doar pentru interfaþa
cu utilizatorul. Aceasta este tendinþa generalã, datoritã faptului cã îmbinã
avantajele celor douã metode: simplitatea ºi intuitivitatea CSG cu precizia ºi
eficacitatea B-rep.
Dacã însã frontierele nu sunt stocate ca atare, operaþiile de manipulare ºi
afiºare / regenerare ale solidelor se efectueazã mult mai greu (duratã mare de
calcul a suprafeþelor afiºate).
Graful CSG are un aspect particular de arbore binar, la care nodurile sunt
conectate prin operaþii de compunere cãtre un nod rãdãcinã. Fiecãrui nod îi
corespunde un nod - pãrinte ºi douã noduri - copii. Nodul rãdãcinã nu are pãrinte,
iar nodurile fãrã copii se numesc frunze (leaves).
“Frunzele” sunt primitive geometrice de construcþie, iar rãdãcina corespunde
obiectului final. Un exemplu pentru ilustrare este prezentat în figura 5.56, unde:
k este înãlþimea arborelui, R - nodul rãdãcinã, L - frunze.
În figura 5.57 este prezentat un exemplu de compunere CSG, pentru obþinerea
unui obiect solid.
124 BAZELE CAD
5.5.4. Alte tehnici de modelare
Modelarea prin primitive pure este cea mai simplã tehnicã ºi se bazeazã pe o
singurã primitivã ale cãrei dimensiuni pot fi modificate (definitã parametric). În
acest fel, forma primitivei se poate schimba prin modificarea proporþiilor între
dimensiuni. Metoda se poate aplica la obiecte care sunt topologic identice dar nu ºi
geometric. Din acest motiv metoda este foarte limitatã ºi nu se foloseºte decât în
combinaþie cu alte metode.
Descompunerea celularã - modelul este descris prin asamblarea unui numãr
de forme elementare mici care sunt “lipite” fãrã sã se intersecteze. În esenþã, este
asemãnãtoare cu CSG, dar fãrã operaþii booleene, ci numai cu o operaþie simplã de
Fig. 5.56.
R
L L L L L L L L
k

=

3
Fig. 5.57.
(B - A) U (D - C)
B - A
D - C
A B C D
125 MODELARE GEOMETRICÃ
alãturare. Aceastã tehnicã provine din aplicaþiile cu metoda elementului finit.
Evidenþa ocupãrii spaþiului - metodã similarã descompunerii celulare prin
aceea cã modelul este divizat. Algoritmul identificã volumele elementare care nu
se aflã integral “afarã” sau “înãuntru”. Tehnica este recursivã, iniþial pornindu-se de
la diviziuni mari, pânã la diviziuni foarte mici. Metoda este destul de aproximativã,
consumatoare de timp ºi se foloseºte, în special, la calculul volumului corpurilor
solide.
SWEEPING (mãturare) - metoda descrie solide care se pot obþine prin
extrudarea sau rotaþia unui profil 2D, în raport cu o direcþie datã.
Obiectele obþinute prin SWEEPING nu sunt stocate în baza de date ca solide, ci
doar prin suprafaþa ºi curba de miºcare. Ca atare, ele se mai numesc “2,5D”, deoarece
a treia “dimensiune” rezultã printr-o miºcare simplã (translaþie sau rotaþie) a bazei
2D. Primul tip de operaþie se numeºte extruziune, iar al doilea rotaþie (fig. 5.58).
Operaþiile de sweeping sunt utile mai ales în aplicaþiile inginereºti care
simuleazã extragerea de material prin aºchiere sau pentru testarea interferenþei
geometrice între diferite obiecte. În cel de-al doilea caz se considerã coliziune
când intersecþia volumelor descrise de cele douã obiecte considerate în miºcare
nu este mulþimea vidã.
Modelarea Analiticã a Solidelor (MAS) - prin aceastã metodã se realizeazã un
model analitic unitar al unui solid, definit cu ajutorul a 3 ecuaþii în funcþie de 3 parametri
]. 1 , 0 [ w , v , u ,
) w , v , u ( z
) w , v , u ( y
) w , v , u ( x
)] w , v , u ( P [ e
(
(
(
¸
(

¸

= (5.61)
În acest caz, se realizeazã o corespondenþã biunivocã între punctele unei curbe
din spaþiul cartezian E
3
ºi punctele unui solid sintetic din acelaºi spaþiu E
3
(fig. 5.59).
Rotaþie
Extrudare liniarã
Extrudare de-a lungul
unei curbe
Fig. 5.58.
126 BAZELE CAD
Avantajul principal este dat de posibilitatea de divizare izoparametricã.
Într-adevãr, divizarea cubului în entitãþi cubice elementare (hipermesh) se poate
realiza automat în cazul solidelor - lucru foarte util în cazul aplicaþiilor cu MEF
(modelorul solid PATRAN NASTRAN are aceste facilitãþi).
Similar cu cazul suprafeþelor, la solidele MAS se definesc noþiunile de
hiper-petic (hyperpatch) ºi hiper-plasã (hypermesh). Spre deosebire de celelalte
metode, modelul MAS nu conþine date topologice, deoarece reprezentarea analiticã
conþine toate informaþiile necesare.
Ca ºi în cazul entitãþilor uni ºi biparametrice, se pot descrie hiperpatch-uri cu
forme libere: Spline, Bezier etc.Aceastã caracteristicã face din MAS o extensie ºi
o continuare logicã a modelãrilor WIREFRAME ºi SURFACE.
De exemplu, un hiperpatch Bezier poate fi definit pornind fie de la un set de
puncte de control, fie de la curbe Bezier, fie de la suprafeþe Bezier.
Hiperpatch-ul tricubic este reprezentat printr-o funcþie cu urmãtoarea formã:
¿¿¿
= = =
e =
3
0 i
3
0 j
3
0 k
k j i
ijk ] 1 , 0 [ k , j , i , w v u C ) w , v , u ( P (5.62)
Suprafeþele, curbele ºi colþurile se pot obþine particularizând relaþia (5.62) prin
substituþia valorilor corespunzãtoare ale parametrilor:
Suprafeþe: P(0,v,w), P(u,0,w), P(u,v,0), P(1,v,w) etc.
Curbe: P(0,0,w), P(1,0,w) etc.
Extremitãþi (colþuri): P(0,1,0) etc.
w
u
1
0
1
v
x
y
z
Spaþiul parametric Spaþiul cartezian
Fig. 5.59.
127 MODELARE GEOMETRICÃ
Pentru hiperpatch-ul tricubic intervin 64 coeficienþi vectoriali C
ijk
sau 192
coeficienþi scalari. Ca atare, pentru definirea unui hyperpatch sintetic tricubic trebuie
cunoscuþi 64 vectori (puncte pe frontiere sau linii tangente).
În mod asemãnãtor, hiperpatch-ul BEZIER are ecuaþia
. ] 1 , 0 [ w , v , u ), w ( B ) v ( B ) u ( B P ) w , v , u ( P
3
0 i
3
0 j
q , k
3
0 k
m , j n , i ijk ¿¿¿
= = =
e = (5.63)
Se poate defini cu un minimum de 4 x 4 x 4 = 64 puncte de control, care
formeazã poliedrul caracteristic de control al hiperpatch-ului.
În mod analog se pot defini ºi volumele B-Spline ºi NURBS.
Operaþii de construcþie folosind MAS
Pentru construirea unui solid analitic, se procedeazã de regulã la descompunerea
sa în hiperpatch-uri care nu se intersecteazã dar sunt în contact. Fiecare hiperpatch
poate apoi fi definit cu metoda “tricubicã”, Bezier etc.
Din punct de vedere al interfeþei utilizatorului, este de dorit ca metoda MAS sã
suporte operaþii booleene, ceea ce pentru moment nu a fost încã pe deplin soluþionat.
În concluzie, modelarea analiticã a solidelor este foarte atrãgãtoare pentru
modeloare ce deservesc aplicaþii de analizã cu MEF, la care este necesarã
discretizarea geometricã, de asemenea, utilizabilã pentru aplicaþiile CAM, în schimb
nu este, deocamdatã, compatibilã cu alte metode de modelare.
5.5.5. Organizarea modeloarelor solide
Fiecare tehnicã descrisã anterior are avantaje ºi dezavantaje. Unele metode
sunt mai potrivite pentru anumite aplicaþii decât altele. Pentru obþinerea unor
modeloare generale, de regulã, se opteazã pentru implementarea simultanã a mai
multor tehnici.
Din acest punct de vedere, în practicã, se întâlnesc urmãtoarele situaþii:
1. Modeloare cu reprezentare unicã. De obicei B-rep este o astfel de
reprezentare. În general, aceste modeloare suportã tehnica CSG ºi operaþii
SWEEP pentru introducerea datelor. Aceste forme sunt mai întâi convertite
B-rep ºi apoi înregistrate sub aceastã formã în baza de date.
2. Modeloare cu reprezentare multiplã - modelul este reprezentat iniþial sub
forma CSG ºi salvat cu metoda B-rep sau se merge în paralel cu cele
douã reprezentãri (situaþie destul de rarã).
128 BAZELE CAD
5.6. Tehnici CAD parametrice / variaþionale
Construcþia unui model geometric complex nu este o sarcinã uºoarã, chiar dacã
se utilizeazã un modelor puternic de nivel înalt. Dezvoltarea unui model important
poate dura zile ºi sãptãmâni, reprezentând o investiþie de timp. De aceea este important
ca modelul sã fie reutilizabil ºi uºor modificabil. Statistic, se estimeazã cã aproape
80% din sarcinile de proiectare au naturã variaþionalã, prin aceea cã scopul proiectãrii
este adaptarea unui proiect existent la noi cerinþe. Pe lângã proiectarea variaþionalã,
reutilizarea proiectelor existente este importantã pentru realizarea familiilor de piese
ºi componentelor standardizate necesare în proiectarea inovativã.
Termenii “parametric” ºi “variaþional” sunt utilizaþi în mod curent cu aceeaºi
semnificaþie, mai ales în mediul exterior utilizatorului, unde rezultatul are aceeaºi
aparenþã. Însã, din punctul de vedere al utilizatorului, cele douã noþiuni se nuanþeazã
prin felul ecuaþiilor pe care le genereazã. Astfel, în timp ce modelul parametric
conduce la ecuaþii explicite (gata rezolvate) cel variaþional utilizeazã relaþii implicite,
care se rezolvã prin metode numerice. Aceastã diferenþã face ca primele sã aibã
o utilizare aproape nelimitatã, în timp ce ultimele pot genera situaþii de blocare. În
acelaºi timp, dacã fiabilitatea este asiguratã, modul variaþional are o generalitate ºi
flexibilitate mai bunã ºi este întotdeauna tentant.
În ambele cazuri, procesul de proiectare are urmãtoarele etape (fig. 5.60):
• Crearea topologiei desenului prin operaþii de modelare geometricã ordinarã
sau modelare solidã. Rezultatul este un model care prezintã elementele
geometrice dorite ºi conectivitatea între elemente, dar fãrã dimensiuni finale.
• Definirea restricþiilor geometrice între entitãþile geometrice.
Un exemplu tipic de restricþie îl constituie exemplul din figura 5.61 în care se
prezintã o piesã rectangularã prevãzutã cu o gaurã centralã. Ca atare, intenþia de
proiectare este ca acea gaurã sã fie centralã. Pentru înglobarea acestei intenþii de
proiectare este necesar sã se defineascã restricþiile:
¦
¦
¹
¦
¦
´
¦
=
=
=
=
10 / d R
2 / d d
2 / d d
5 / d d
2
1 5
2 4
2 3
. (5.64)
Fig. 5.60.
Definire
topologie
Definire
restricþii
Evaluare
model
Creare
variante
129 MODELARE GEOMETRICÃ
Dupã definirea acestor restricþii, piesa este
complet parametrizatã, cuprinzând inclusiv intenþia
de proiectare.
• Evaluarea modelului. În aceastã etapã ecuaþiile
sunt formulate automat ºi rezolvate numeric
obþinându-se valori numerice pentru toate elementele
definitorii ale entitãþilor. Dacã sistemul restricþiilor
nu poate fi satisfãcut, în mod uzual, se afiºeazã un
avertisment.
• Crearea de variante prin schimbarea variabilelor
restricþiilor. La fiecare schimbare, modelul este regenerat prin reexecutarea
procedurii de soluþionare a sistemului de ecuaþii.
5.6.1. Modelare bazatã pe trãsãturi
Datele disponibile în modelele geometrice convenþionale conþin entitãþi geometrice
abstracte de nivel jos (low level entities): muchii, feþe, curbe etc. Aceste date nu includ
însã informaþii de nivel mai înalt privind modelul, care sã indice trãsãturi funcþionale
sau tehnologice ale obiectului, cum ar fi: gaurã, nervurã, bosaj etc. Aceste informaþii
se obþin numai în urma unui proces detaliat de interpretare a modelului geometric
realizat de cãtre inginer. Se poate spune cã modelele geometrice convenþionale
includ un singur nivel de abstractizare, bazat pe entitãþi geometrice primitive.
Deoarece reprezentarea nu include ºi intenþia de proiectare, orice modificare
ulterioarã se realizeazã pas cu pas prin editarea tuturor entitãþilor aferente. În condiþiile
în care 80% [SHAH96] din munca de proiectare o constituie proiectarea variantã
(bazatã pe modificarea unor modele mai vechi) aceste dezavantaj devine crucial ºi
impune concepþii noi privind modelarea.
În acest context, sistemele CAD moderne au introdus o categorie nouã de
entitãþi de nivel înalt, denumite trãsãturi (features), care au drept scop înglobarea
în model ºi a semnificaþiei unei forme geometrice.
Modelul bazat pe trãsãturi are o structurã de date ce cuprinde, în principal,
trãsãturile constituente ale obiectului modelat. Fiecare trãsãturã a modelului este o
entitate identificabilã care are o reprezentare explicitã. Spre deosebire de entitãþile
tradiþionale, trãsãtura include douã aspecte ºi anume forma ºi semnificaþia tehnicã.
Softurile care includ facilitãþi de modelare prin trãsãturi sunt prevãzute cu biblioteci
de trãsãturi. Avantajele principale ale modelãrii prin trãsãturi sunt:
• vitezã mare de modelare;
• propagarea modificãrilor.
Primul avantaj este posibil datoritã faptului cã trãsãturile sunt colecþii de entitãþi
cu formã genericã ºi atribute predefinite. Utilizatorul nu trebuie decât sã apeleze
Fig. 5.61.
130 BAZELE CAD
trãsãtura, întocmai ca la modelarea solidã sau cu suprafeþe. Al doilea avantaj este
posibil datoritã faptului cã trãsãturile sunt definite întotdeauna parametric, prin
intermediul restricþiilor geometrice.
Modeloarele care includ trãsãturi posedã, de regulã, o bibliotecã de trãsãturi
structuratã în clase în funcþie de tipul de aplicaþie. Totuºi, datoritã posibilitãþilor
practic infinite de a defini trãsãturi, este imposibil ca o bibliotecã sã cuprindã toate
trãsãturile necesare. De aceea, de regulã, modeloarele respective includ ºi facilitãþi
de definire comodã ºi salvare de noi trãsãturi, adaptate specificului ºi stilului de
proiectare / fabricare al utilizatorului.
Tipurile de trãsãturi sunt legate de aspecte constructivo-funcþionale ºi/sau de
procedee de fabricaþie.
Trãsãturile legate de fabricaþie sunt mai dezvoltate deoarece ele sunt foarte
utile în modelul geometric în faza de CAM (Computer Aided Manufacturing). De
regulã, ele se regãsesc în numãr destul de mare în bibliotecile soft-ului. În schimb,
trãsãturile funcþionale ºi constructive, deseori, sunt insuficiente ºi se completeazã
de cãtre utilizator cu propriile entitãþi în funcþie de stil ºi inventivitate.
În ambele cazuri, însã, modelul geometric bazat pe trãsãturi este reprezentat
ca o combinaþie de trãsãturi aflate într-o anumitã ierarhie. Aceastã filosofie este
extinsã ºi la nivel de ansamble, care sunt reprezentate ca o combinaþie de piese
detaºate aflate într-o anumitã relaþie ierarhicã. Pentru modelarea pieselor (part
modelling) se ilustreazã, în continuare, un set de trãsãturi prezent în majoritatea
softurilor CAD din generaþiile recente:
• protrusions;
• slots / cuts;
• holes;
• shafts;
• rounds;
• chamfers;
• necks;
• flanges;
• ribs.
a) Protrusions (Protuberanþe)
O protuberanþã este o entitate de nivel înalt fundamentalã în modelarea bazatã
pe trãsãturi deoarece corespunde semifabricatului (sau unei pãrþi a acestuia) din
care se executã piesa. Acþiunea sa asupra modelului este de “adãugare de material”,
spre deosebire de alte trãsãturi care corespund procesului de îndepãrtare de material
prin prelucrare. Ca atare, protuberanþele sunt trãsãturi cu care se începe, de regulã,
modelul, celelalte trãsãturi fiind definite în raport cu acestea (având deci ca bazã
131 MODELARE GEOMETRICÃ
Subsecþiunea 3
Subsecþiunea 2
Subsecþiunea 1
Secþiune
Secþiune
Axã de
revoluþie
Secþiune
Protuberanþã cu douã
contururi exterioare
Protuberanþã cu un
contur exterior ºi douã
interioare
Fig. 5.62.
Revolve
Blend
Sweep
Extrude
Traiectoria
132 BAZELE CAD
de referinþã suprafeþe ale protuberanþelor).
b) Slots (decupãri) ºi cuts (tãieturi)
Aceste trãsãturi sunt întotdeauna legate de protuberanþe deoarece corespund
îndepãrtãrii de material. “Slots” presupune îndepãrtarea materialului dintr-un contur
închis în timp ce “Cuts” corespunde îndepãrtãrii de material dintr-o porþiune
specificatã (fig. 5.63).
c) Holes (gãuri)
Aceastã trãsãturã desemneazã diferite tipuri de gãuri: strãpunse, înfundate
sau cu lamaj (fig. 5.64).
Gãurile strãpunse se definesc între douã suprafeþe existente (Thru All – gaurã
care intersecteazã toate suprafeþele, Thru Next – gaurã pânã la urmãtoarea
suprafaþã etc.).
De asemenea, gãurile pot fi obþinute prin extruziune sau prin rotaþie (cazul
gãurilor cu lamaj).
d) Shafts (arbori)
Din punct de vedere pur topologic, arborii se aseamãnã cu gãurile de rotaþie,
deoarece ambele sunt create pornind de la o secþiune de rotaþie, urmatã de
Fig. 5.63.
Fig. 5.64.
133 MODELARE GEOMETRICÃ
plasarea trãsãturii pe model. Diferenþa constã în
aceea ca arborele adaugã material, în timp ce
prin gãuri se îndepãrteazã. De regulã, arborele
este o formã geometricã ce “iese” din piesã (fig.
5.65), spre deosebire de gaurã care este o
trãsãturã plasatã în interiorul piesei.
e) Rounds (racordãri, rotunjiri)
Racordãrie sunt trãsãturi care creeazã o
conexiune fãrã muchii între douã suprafeþe.
Pentru acoperirea sitauþiilor din practicã existã multe tipuri de racordãri, dupã
cum urmeazã:
• constant – creeazã o racordare cu razã constantã;
• variable – creeazã o racordare cu razã variabilã (fig. 5.66);
• full – înlocuieºte complet o suprafaþã planã.
În funcþie de entitãþile de referinþã ale racordãrii, acestea se clasificã în patru
categorii (fig. 5.67):
• serie de muchii;
• suprafaþã – suprafaþã;
• muchie – suprafaþã;
• muchie – muchie.
Pentru intersecþia a douã racordãri (racordãri de colþ) existã trãsãturi pentru
acoperirea tuturor situaþiilor posibile, dintre care în figura 5.68 sunt ilustrate cele
mai uzuale: sector sferic (corner sphere) ºi racordare (corner sweep).
Fig. 5.65.
Fig. 5.66.
134 BAZELE CAD
f) Chamfers (teºituri)
Teºiturile pot fi create atât pentru muchii cât ºi pentru colþuri (fig. 5.69). Teºitura
este o trãsãturã care “extrage” material din obiectul modelat.
Pentru definirea teºiturii existã mai multe tehnici, care se bazeazã fie pe
indicarea muchiei ce trebuie teºitã ºi a valorii teºiturii (unghi ºi mãrime), fie pe
indicarea muchiilor ce rezultã prin teºiturã.
Serie de muchii
(Edge Chain /
Tangent Chain)
Suprafaþã - Suprafaþã
(Surf - Surf)
Muchie - Suprafaþã
(Edge - Surf)
Muchie - Muchie
(Full round)
Fig. 5.67.
135 MODELARE GEOMETRICÃ
g) Necks (Degajãri)
Degajarea este un tip special de decupare de rotaþie care creeazã un canal
circular într-o piesã (trãsãturã) de asemenea de rotaþie (fig. 5.70).
Pentru definirea unei astfel de trãsãturi, se realizeazã mai întâi conturul acesteia
în secþiunea precizatã printr-un plan denumit planul secþiunii. Aceastã tehnicã
permite definirea uºoarã ºi comodã a poziþiei ºi dimensiunilor degajãrii.
h) Flanges (Umeri)
Umãrul este analog cu degajarea cu excepþia faptului cã se adaugã material în
loc de extragere. Un exemplu ilustrativ este prezentat în figura 5.71. Modul de
lucru la definire este similar cu cel descris pentru degajãri.
Fig. 5.68.
Muchie - Muchie
(Full round)
Racordare de colþ
Racordare de colþ
Sector sferic
Raza cea mai mare
Raza cea mai mare
136 BAZELE CAD
Fig. 5.69.
Secþiunea
degajãrii
Fig. 5.70.
Teºire muchie
T
e
º
ire
c
o

Neck (degajare)
Planul
secþiunii
137 MODELARE GEOMETRICÃ
i) Ribs (Nervuri)
Nervura este un tip special de protuberanþã conceputã ca o întãriturã în anumite
construcþii sudate sau turnate. În funcþie de geometria pe care este ataºatã, nervura
poate fi liniarã sau de rotaþie (fig. 5.72).
Pentru alcãtuirea modelelor bazate pe trãsãturi, diferitele trãsãturi se
asambleazã ca blocuri de construcþie pentru crearea pieselor solide, respectând o
ierarhie de tip pãrinte-copil. Astfel, pentru crearea piesei din figura 5.73, referinþa
iniþialã (pãrinte) este socotit planul de referinþã, în raport cu care se construieºte
protuberanþa de rotaþie (fig. 5.73,a). Apoi se adaugã o nouã protuberanþã în direcþie
perpendicularã (fig. 5.73,b). Aceasta este “copil” în raport cu construcþia
premergãtoare care este “pãrinte”.
Ca atare, dacã se modificã dimensiunea primei protuberanþe ca în figura 5.73,c
se modificã automat poziþia (ºi uneori chiar forma) trãsãturilor “copil”. Acest tip de
relaþie este cunoscutã sub denumirea de relaþie “pãrinte-copil”. Evident, o trãsãturã
“copil” nu se poate defini fãrã o trãsãturã “pãrinte”, definitã anterior, în schimb
trãsãturile “pãrinte” se pot defini independent.
Acelaºi principiu de ierarhizare “pãrinte-copil” se pãstreazã ºi la crearea
ansamblurilor, ceea ce face ca baza de date sã fie puternic structuratã ºi astfel
orientatã cãtre înmagazinarea de cunoºtinþe (Knowledge Based Engineering), de
la simplu cãtre structuri foarte complexe.
Fig. 5.71.
Secþiunea
umãrului
Flange (Umãr)
Planul secþiunii
138 BAZELE CAD
Nervurã de
rotaþie
Fig. 5.72.
Nervurã liniarã
Planul
nervurii
Planul nervurii
a) b)
Fig. 5.73.
c)
Protuberanþã
de rotaþie
Plan de
referinþã
Protuberanþã
de rotaþie
Gaurã
139 MODELARE GEOMETRICÃ
5.6.2. Recunoaºterea trãsãturilor
Modelarea bazatã pe trãsãturi are o serie de avantaje foarte importante,
atât în faza de proiectare cât ºi în etapa tehnologicã. Astfel, pe lângã captarea
intenþiei de proiectare ºi propagarea modificãrilor, un alt avantaj crucial îl constituie
facilitãþile CAD-CAM pe care le oferã prin posibilitatea asocierii trãsãturilor cu
diverse procedee tehnologice. Pentru facilitarea acestor tehnologii, în afarã de
modelarea bazatã pe trãsãturi, softurile CAD performante mai conþin ºi module
de recunoaºterea trãsãturilor. Acestea sunt destinate interpretãrii ºi conversiei
modelelor mai vechi sau realizate cu softuri care nu au facilitãþi de modelare
bazate pe trãsãturi.
Identificarea trãsãturilor într-un model geometric 3D convenþional depinde de
tipul reprezentãrii, în principal B-rep sau CSG.
Reprezentarea CSG stocheazã modelul într-o formã implicitã sau neevaluatã
(adicã feþele, muchiile ºi colþurile solidului final trebuie calculate pe baza informaþiilor
din baza de date). Pe de altã parte, trãsãturile unui obiect, cum ar fi gãuri, canale
º.a.m.d. de multe ori sunt prezente explicit în structura CSG, de exemplu, o gaurã
se obþine prin “scãderea” unui cilindru din solid. Ca atare, definiþia gãurii poate fi
obþinutã direct din definiþia unui cilindru (fig. 5.74).
În alte cazuri, este posibil ca trãsãtura sã nu fie prezentã explicit în structura
CSG, de exemplu, în cazul unui canal de panã obþinut prin extragerea reuniunii unei
prisme cu doi cilindri dintr-un bloc (fig. 5.75).
Fig. 5.74.
=
Fig. 5.75.
=
140 BAZELE CAD
În acest caz, pentru identificare este necesar sã se evalueze numeric ºi sã se
interpreteze structura CSG.
Reprezentarea B-rep a solidelor stocheazã modelul într-o formã explicitã (adicã
evaluatã). Feþele, muchiile ºi colþurile sunt reprezentate explicit, exact aºa cum
sunt ele în obiectul final. În acest caz, trãsãturile sunt întotdeauna implicite, în
sensul cã necesitã interpretarea geometriei ºi topologiei pentru identificare. De
exemplu, o gaurã se regãseºte în structura B-rep ca un ansamblu de feþe ºi trebuie
identificatã prin interpretarea datelor obiectului.
Prezenþa implicitã sau explicitã a trãsãturilor într-o formã de reprezentare a
solidelor are o mare importanþã în alegerea tipului de reprezentare pentru care se
concep algoritmii de recunoaºtere.
a) Recunoaºterea trãsãturilor din structurile CSG
Din comparaþia prezentatã mai sus s-ar pãrea cã extragerea trãsãturilor din
modelul CSG este mai simplã, deoarece multe trãsãturi se pot regãsi explicit în
baza de date. Mai mult, modelul CSG poate fi construit de la bun început pornind
de la un bloc ce corespunde semifabricatului, din care se extrag apoi solide ce
corespund unor procedee de aºchiere (strunjire, frezare etc.), astfel încât la final,
structura CSG sã conþinã integral setul de trãsãturi necesare la prelucrare. Totuºi,
aceastã abordare are mai multe dezavantaje:
• Nu rezolvã problema modelelor geometrice mai vechi.
• În plus, faþã de optimizarea constructivo-funcþionalã, proiectantul trebuie
sã opereze ºi cu un numãr limitat de trãsãturi tehnologice. În practicã,
proiectantul este interesat mai întâi de funcþionalitatea dispozitivului ºi va
genera multe variante înainte de a ajunge la soluþia finalã. Ca atare, utilizarea
volumelor de uzinare este prea restrictivã.
• O altã problemã în interpretarea reprezentãrilor CSG o constituie non-
unicitatea arborilor de construcþie pentru aceeaºi piesã. Ca atare, o trãsãturã
poate fi construitã în mai multe feluri. De exemplu, un canal poate fi obþinut
pe mai multe cãi dintre care douã sunt ilustrate în figura 5.76. Având în
vedere cã pentru recunoaºterea trãsãturii trebuie cunoscute toate
combinaþiile posibile, acest dezavantaj este crucial.
• Complexitatea arborelui de construcþie CSG, mai ales, când existã ºi
operaþii pentru obþinerea racordãrilor ºi teºiturilor. În aceste cazuri este
necesarã evaluarea mãcar parþialã a structurii CSG pentru a identifica
diverse intersecþii între feþe. Dacã aceastã evaluare parþialã trebuie
fãcutã pentru orice trãsãturã susceptibilã, de multe ori volumul de calcul
îl depãºeºte pe acela cerut de generarea bazei de date B-rep încã de la
început.
141 MODELARE GEOMETRICÃ

U U
Fig. 5.76.
b) Recunoaºterea trãsãturilor din structurile B-rep
Bazele de date B-rep conþin primitive geometrice explicite reprezentate la fel,
indiferent de primitivele iniþiale utilizate la construcþie. Acest format permite
conceperea planului de uzinare într-un mod independent de secvenþele utilizate la
modelarea geometricã. Ca atare, algoritmii de interpretare a structurii B-rep pentru
identificarea trãsãturilor, deºi complecºi, sunt mult mai robuºti ºi într-un numãr
limitat pentru aceeaºi trãsãturã. Aceºti algoritmi se bazeazã, de regulã, pe rutine
de cãutare de tip sistem expert în care pentru fiecare trãsãturã se stabileºte un set
de “reguli”, care sunt testate pentru întreaga bazã de date. De exemplu, pentru o
gaurã, setul de reguli poate fi formulat astfel (fig. 5.77):
O gaurã existã dacã:
• existã o intrare în gaurã;
• existã o faþã vidã adiacentã acestei intrãri;
• existã o faþã “plinã” care conþine aceastã faþã vidã de intrare;
• existã mai multe feþe în gaurã;
• gaura se terminã cu o altã faþã.
Deºi recunoaºterea trãsãturilor din structurile CSG
nu a ieºit complet din sfera de preocupãri a dezvol-
tatorilor de softuri, se poate afirma însã cã, datoritã
avantajelor prezentate mai sus, recunoaºterea trãsã-
turilor pe baza reprezentãrii B-rep este cvasigeneralizatã
în momentul de faþã. Fig. 5.77.
142 BAZELE CAD
5.7. Stocarea modelelor geometrice
Toate programele pe calculator sunt în esenþã seturi de algoritmi sau funcþii,
ce acþioneazã asupra unor structuri de date.
În capitolele anterioare au fost prezentaþi algoritmii ºi funcþionalitatea CAD-
ului. În continuare, se prezintã structurile de date care pot fi utilizate în sistemele
CAD, pentru stocarea ºi administrarea modelelor.
Existã multe feluri în care modelul poate fi stocat ºi nu vor fi discutate în
continuare toate tehnicile. În schimb se vor aborda 5 aspecte particulare:
• Descrierea unei structuri de date adaptate modelãrii 2D ºi 3D interactivã,
pânã la nivel de suprafeþe.
• Stocarea vectorilor de imagine în fiºierul display.
• Asociativitatea între entitãþi.
• Asocierea datelor nongeometrice entitãþilor, prin intermediul atributelor.
• Asocierea modelelor într-o bazã de date ºi constituirea bazelor de date tip
Engineering Data Management System (EDMS).
5.7.1. Structuri de date pentru modelare interactivã
Organizarea datelor în fiºierul unui model geometric se aseamãnã foarte mult cu
bazele de date convenþionale. Orice bazã de date conþine un numãr de tablouri.
Acestea pot conþine înregistrãri sau indici (pointeri) cãtre alte tablouri care conþin la
rândul lor înregistrãri. Ca ºi în cazul bazelor de date, tablourile pot fi deschise (open)
pentru operaþii de citire / scriere, pot fi adãugate noi înregistrãri, se pot opera modificãri
la cele existente etc. La terminarea acestor operaþiuni tabloul trebuie închis (close).
Interactivitatea este o proprietate foarte pretenþioasã care are cerinþe specifice,
dintre care cele mai importante sunt:
• sã permitã manipularea interactivã - operaþii de adãugare, modificare ºi
ºtergere a datelor;
• sã suporte tipuri multiple de date: geometrice, text, dimensiuni, etichete,
trasee de sculã, elemente finite etc.;
• sã permitã asociere de proprietãþi ca: tip linie, layer, culoare etc.;
• sã fie compacte, pentru minimizarea spaþiului necesar pe disc;
• sã permitã modele cu spaþiu de stocare diferite;
• sã permitã un acces eficient de date (în timp scurt).
Aceste cerinþe constituie restricþii serioase la conceperea structurii datelor.
De aceea, fiecare tip de entitate va necesita o cantitate diferitã de date. De exemplu,
un punct este definit prin trei numere reale, o curbã Spline însã necesitã mai multe
categorii de date: identificatori de puncte (numere întregi), valori pentru coeficienþi
143 MODELARE GEOMETRICÃ
de pondere la B-Spline (date reale) etc. În plus, numãrul acestor date este variabil
de la caz la caz.
O primã posibilitate o constituie organizarea datelor în TABLOURI, care
presupune alocarea unor tablouri (matrice) pentru fiecare entitate (fig. 5.74).
Aceasta conduce însã la o utilizare ineficientã a spaþiului de memorie, deoarece
unele cãsuþe pot rãmâne libere.
O metodã mai evoluatã o constituie utilizarea STRUCTURILOR DE DATE
CU REFERINÞE. Metoda se bazeazã pe tablouri (tabele) specializate pentru entitãþi
ºi pentru date.
Tabloul entitãþilor conþine câte o linie pentru fiecare entitate. Aceste linii
conþin date generale (aplicabile la orice entitate) cum ar fi: tipul entitãþii, tipul liniei,
culoarea, împreunã cu pointerii necesari pentru adresarea datelor specifice ce sunt
stocate în tablourile datelor. Tabloul entitãþilor are o serie de “cãsuþe” libere de
lungime fixã, care conþin date generale aplicabile oricãrei entitãþi. Tabelul 5.2 conþine
câteva date tipice din aceastã categorie.
Tablourile datelor sunt organizate pe tipuri de date: întregi, reale, alfanumerice,
diverse tipuri de date utilizator, de exemplu, layer, tip linie (fig. 5.75) etc.
O modalitate de organizare a datelor o constituie organizarea ierarhicã în reþea,
în baze de date relaþionale. Acestea sunt organizate pe nivele ierarhice (volume,
feþe, muchii ºi puncte), prin utilizarea de referinþe încruciºate dinspre nivelele
superioare cãtre cele inferioare (fig. 5.76).
În acest tip de organizare, bazele de date conþin înregistrãri formate din date
plasate în câmpuri. Datele sunt de diverse tipuri cum ar fi: numere, text etc.
Conþinutul bazelor de date este catalogat în dicþionare de date, iar operaþiile în
baza de date sunt denumite tranzacþii.
Operaþiile permise într-o bazã de date relaþionalã se bazeazã pe principiile
algebrei relaþionale care stau la baza limbajului SQL, dezvoltat de IBM în 1975.
Existã numeroase funcþii incluse în sistemele CAD care “asistã” utilizatorul la
Fig. 5.74.
PUNCTE LINII ARCE SPLINE
144 BAZELE CAD
editarea modelului. Toate acestea sunt în esenþã funcþii de manipulare a bazei de
date ºi câteva dintre cele mai importante vor fi trecute în revistã în continuare:
• ªtergerea entitãþilor se realizeazã prin setarea numãrului entitãþii pe zero
sau o altã valoare aleasã pentru “entitãþi ºterse”.
Acest tip de operaþie poate implica fie o ºtergere temporarã fie una
permanentã. Prima mai este numitã ºi blanking sau hiding. ªtergerea este
într-un fel o operaþie drasticã, dar majoritatea sistemelor oferã facilitatea
UNDO, care face reversibilã orice greºealã.
• Tehnici de grupare a unor entitãþi definind astfel blocuri sau grupuri.
• Modificarea caracteristicilor unor entitãþi, cum ar fi culoarea sau stilul
liniei.
Fig. 5.75.
Tablou entitãþi Date reale Date întregi Tablou view...
Data
Tipul entitãþii
Identificatorul entitãþii
Adresã date întregi
Adresã date reale
Sistemul de coordonate
Numãrul stiloului
Tipul liniei
Culoarea entitãþii
Starea entitãþii
Numãrul layerului
Observaþii
de exemplu, 1 = punct; 2 = linie; 3 = arc etc.
se alocã pe mãsura creãrii entitãþilor
în domeniul admis de calculator
MCS sau UCS
de exemplu, între 0 - 7
de exemplu, în domeniul 0 - 7 (solidã, întreruptã etc.)
în domeniul 0 - 15 sau 0 - 256
ºtearsã sau activã plus afiºatã / neafiºatã
denumiri asociate
{
Tabelul 5.2.
145 MODELARE GEOMETRICÃ
• Facilitãþi de manipulare a punctelor de control pentru entitãþi sintetice
cum ar fi Spline, Bezier etc., pentru adãugarea, retragerea unor puncte
sau chiar pentru conversia curbelor de la un tip la altul (de exemplu de la
Hermite la B-Spline etc.)
Studiu de caz: bazele de date AutoCAD (*.dwg)
Fiºierele AutoCAD conþin mai multe clase de obiecte. Acestea pot fi obiecte
vizibile (cazul entitãþilor) sau invizibile (cum sunt layerele, stilul de text etc.).
La deschiderea unei noi sesiuni AutoCAD, se iniþializeazã (creeazã) în mod
automat o serie de obiecte cu setãri implicite, dupã cum urmeazã:
• layer - 0;
• text style - standard;
Fig. 5.76.
Volume
Feþe
Muchii
Puncte
146 BAZELE CAD
• mline - standard;
• dim style - standard.
De asemenea, se iniþializeazã aºa-numitul tablou al modelului ce conþine câteva
înregistrãri iniþiale: Model space ºi Paper space (care în cazul AutoCAD 2000
conþine mai multe machete - Layout0, Layout1, Layout2 etc.).
Toate aceste tablouri corespund unor obiecte “invizibile”. Numãrul tablourilor
iniþiale este de nouã ºi corespunde cu urmãtoarele clase de obiecte:
• Acdb Block Table - pentru definirea blocurilor;
• Acdb Dim Style Table - pentru stilurile de cotare;
• Acdb Layer Table - pentru layere;
• Acdb LineTypeTable - pentru tipurile de linii;
• Acdb Reg App Table - pentru nume de aplicaþii distincte, rezidente în baza
de date a modelului;
• Acdb Text Style Table - pentru stilul de text;
• Acdb UCS Table - pentru sistemul de coordonate al utilizatorului;
• Acdb Viewport Table - pentru viewport-uri;
• Acdb View Table - pentru modul de vizualizare din fiecare viewport.
În afarã de acestea existã clasele de obiecte vizibile pentru fiecare tip de entitate.
Atunci când printr-o comandã se creeazã o entitate “vizibilã”, de fapt se creeazã
o entitate de un anumit tip (clasã). Ca atare, este deschis tabloul de date
corespunzãtor pentru operaþia de scriere ºi apoi se efectueazã înregistrarea noii
entitãþi în tablou. La sfârºit, tabloul entitãþilor de tipul respectiv se închide, iar entitatea
nou definitã este afiºatã pe ecran. Toate acestea se petrec în “background”, fãrã a
putea fi influenþate de cãtre utilizator.
În AutoCAD, toate obiectele stocate în baza de date au în denumire prefixul
AcDb. Fiecare obiect este reprezentat printr-o clasã, care face parte dintr-o ierarhie
de clase de obiecte. Fiecare obiect este asociat cu un indentificator ID (“handle”)
care este unic în contextul întregului fiºier. Cu ajutorul identificatorului (object ID)
se obþine un pointer (adresã) la care se pot regãsi datele concrete ale entitãþii.
Tabloul în care sunt stocaþi identificatorii este Acdb Object ID.
La crearea ºi stocarea unei noi entitãþi în baza de date AutoCAD se parcurg
urmãtorii paºi:
1. Se deschide tabloul modelului pentru operaþia de “citire” (read).
2. Se deschide tabloul modelului pentru operaþie de “scriere” (write) ºi se cau-
tã Acdb_Model_Space, Acdb_Paper_Space sau unul dintre layout-uri.
3. Se închide tabloul modelului (close).
4. Se asociazã entitatea uneia dintre înregistrãrile din tabloul modelului.
5. Se închide înregistrarea în tabloul modelului.
6. Se închide obiectul entitãþii.
147 MODELARE GEOMETRICÃ
Toate aceste etape se repetã identic, ori de câte ori se creeazã o entitate,
indiferent cã este vorba despre o linie, un cerc, un arc etc.
5.7.2. Fiºiere display
Existã douã operaþii interactive care se efectueazã în mod regulat în CAD.
• REDRAW - este o operaþie de reafiºare a vectorilor ecran, care se face cu
scopul “curãþãrii” ecranului de “resturi” sau pentru restaurarea unor entitãþi.
• SELECTARE de entitãþi de pe ecran, asupra cãrora urmeazã sã se
efectueze operaþii de editare.
În ambele cazuri, este util sã se lucreze cu fiºierul vectorilor de afiºare. De
exemplu, la selectarea unei suprafeþe ar fi foarte dificil de delimitat în 3D lângã care
entitate se aflã cursorul, în timp ce în mod “ecran”, conteazã indicarea pixelului pe
care este poziþionat cursorul ºi care se poate identifica cu rigurozitate. De asemenea,
reafiºarea se face foarte rapid dacã vectorii sunt precalculaþi într-un fiºier.
O altã aplicaþie este comanda ZOOM care este foarte rapidã dacã foloseºte
fiºierul display, evident cu preþul unei pierderi de rezoluþie. Dacã se doreºte corectarea
rezoluþiei este obligatorie regenerarea imaginii pornind de la modelul intern.
5.7.3. Atribute
Sunt perechi de tipul nume - valoare (de exemplu material - oþel), asociate
entitãþilor geometrice prin intermediul pointerilor. Fiecare entitate poate fi asociatã
cu un numãr de atribute dar fiecare atribut poate fi asociat cu mai multe entitãþi.
Utilizarea clasicã a atributelor constã în pregãtirea listelor de materiale pornind
direct de la modelul realizat pe computer.
Exemple de atribut:
Denumire: roatã dinþatã
Reper: 4101.48.0305
Furnizor: TRACTORUL BRAªOV
Material: OLC 45
Atributele sunt de regulã asociate unei entitãþi (un bloc, un layer etc.), care din
punct de vedere al utilizatorului reprezintã obiectul fizic aferent.
5.7.4. Sisteme de administrare a bazelor de date
Marile companii posedã sisteme CAD integrate care se bazeazã pe un fond
de date folosit în comun de mai mulþi utilizatori. O asemenea bazã de date cuprinde
sute de mii de fiºiere, în special desene, care în multe cazuri sunt utilizate o perioadã
ce se întinde pe mai mulþi ani (cazul proiectelor de avioane, de exemplu, care se
întind pe mai mulþi ani). Aceste enorme baze de date au nevoie de sisteme de
148 BAZELE CAD
administrare automatã care sã ofere informaþii de sintezã cum ar fi:
• ce desene existã în baza de date a întreprinderii pentru un anumit proiect,
• care dintre acestea pot fi accesate,
• unde au fost fãcute, când ºi de cãtre cine etc.
Proiectanþii petrec foarte mult timp cãutând felurite date. Unele estimãri ºi studii
statistice aratã cã 30% din timpul de lucru este utilizat pentru operaþii de cãutare.
Sistemul care îi asistã pe ingineri în aceastã activitate se numeºte Sistem de Administrare
al Datelor Inginereºti (Engineering Data Management System, EDMS).
În afarã de indexarea ºi administrarea datelor, EDMS mai asigurã urmãtoarele
servicii:
• Mecanism de securitate a datelor, care nu permite persoanelor neautorizate
accesul ºi/sau manipularea unor categorii de date.
• Mecanism de asigurare a unicitãþii datelor, conform cãruia pentru o referinþã,
doar o singurã datã poate fi identificatã în sistem.
• Asigurã acces simultan mai multor utilizatori la baza de date, în vederea
lucrului în echipã la proiect.
Aplicaþiile EDMS sunt concepute, de obicei, cu limbajele ºi programele obiºnuite
care manipuleazã asemenea aspecte (DBase, Cobol etc.)
Un meniu tipic al unei aplicaþii EDMS este de forma prezentatã în figura 5.77.
Unele sisteme permit vizualizarea modelului, fãrã a fi necesarã încãrcarea
întregului sistem CAD.
Se anticipeazã cã în viitor, rolul ºi complexitatea sistemelor EDMS vor creºte
simþitor. Pentru moment ele nu adreseazã încã ºi alte date de care proiectantul are
nevoie, cum ar fi:
• date de la furnizori;
• detalii privind materialele ºi fabricaþia;
• rezultate ale testelor etc.
Este de aºteptat ca toate aceste aspecte sã fie integrate în sistemele EDMS.
De asemenea, alte date cum ar fi rapoarte, memorii, sesizãri de la utilizatori etc.,
vor fi incluse în sistemele EDMS, în vederea managementului calitãþii în companie.
Choose operation
1. Continue last drawing
2. Start new file
3. Retrieve from archive
4. Search file
Proiect ID
Designs
Reper
VIEW
LOAD
Fig. 5.77.
149 MODELARE GEOMETRICÃ
5.8. Evaluarea modelelor geometrice
Procesul de proiectare cuprinde numeroase etape de modelare. La început,
principalele modele reprezintã structura ºi forma produsului. Apoi, alte modele
sunt folosite pentru evaluarea proiectului ºi generarea altor informaþii, în special
pentru fabricare. EVALUAREA cuprinde multe ºi diverse aspecte, în funcþie de
proiect. Cel mai adesea, evaluarea se referã la:
• verificarea tensiunilor din material în timpul funcþionãrii;
• verificarea performanþelor termice ºi dinamice;
• evaluarea greutãþii ºi distribuþiei acesteia;
• verificarea rezistenþei la obosealã ºi coroziune.
Tehnicile utilizate diferã de la caz la caz. Datele de intrare însã, de cele mai
multe ori pot fi extrase din modelul geometric prin douã metode:
a) prin prelevare directã din model (de exemplu proprietãþile masice);
b) prin preprocesarea modelului în vederea evaluãrii cu algoritmi specifici (în
cazul aplicaþiilor de analizã cinematicã, dinamicã, tensiuni etc.).
În cazul prelevãrii directe a proprietãþilor din modelul geometric se regãsesc
urmãtoarele tipuri de evaluãri:
• lungimea ºi curburile muchiilor;
• vectorii normali ºi curbura suprafeþelor;
• perimetrul, aria, centrul de masã ºi momentele suprafeþelor plane;
• volumul, aria, proprietãþile masice ºi inerþiale ale volumelor închise.
Aceste analize geometrice implicã în esenþã subdivizarea regiunilor de interes
într-un numãr de forme elementare ºi integrarea numericã a acestor forme.
Deºi formele sunt complexe (frontiere complicate cu “insule” interne) problema
poate fi totdeauna redusã la aceea a determinãrii proprietãþilor unui poligon arbitrar.
Acest lucru poate fi realizat prin:
• însumarea proprietãþilor trapezelor formate de fiecare linie cu axele
sistemului de coordonate;
• însumarea proprietãþilor triunghiurilor formate de fiecare vector ºi un punct
arbitrar.
5.8.1. Evaluarea prin metoda trapezelor
Se considerã forma planã din figura 5.78, descrisã printr-o succesiune de linii.
Forma reprezintã vectorizarea formei iniþiale netede, pe care o aproximeazã.
Proprietãþile sunt în acest caz obþinute pe baza trapezelor formate de vectori
ºi axele sistemului de coordonate.
De exemplu, pentru evaluarea ariei unei suprafeþe, se considerã trapezul
150 BAZELE CAD
P
i - 1
P
i
AB (fig. 5.78), pentru care
( )
2
1
) y y )( x x ( Aria
i 1 i 1 i i i
· + ÷ =
÷ ÷
. (5.65)
Aria întregii suprafeþe se calculeazã prin însumare cu relaþia:
2
1
) y y )( x x ( ARIA
n
1 i
1 i i 1 i i
· + ÷ =
¿
=
÷ ÷
. (5.66)
Calculul se face având în vedere valorile absolute, astfel cã în final din aria
delimitatã de partea superioarã a curbei se scade aria delimitatã de partea inferioarã.
Într-un mod similar, se calculeazã ºi celelalte proprietãþi geometrice ale suprafeþelor
plane (centrul de masã, momente statice ºi de inerþie).
Tehnica de mai sus poate fi extinsã ºi la modelele geometrice 3D pentru analiza
volumelor mãrginite prin suprafeþe.
În cazul solidelor, metoda de calcul a proprietãþilor geometrice este direct
influenþatã de tipul reprezentãrii solidului, iar erorile de reprezentare se regãsesc
integral la evaluarea proprietãþilor.
Metodele cunoscute pentru evaluarea proprietãþilor sunt de trei categorii:
1. metode care utilizeazã direct reprezentarea internã a solidului;
2. metode care implicã o conversie a reprezentãrii interne;
3. metoda Monte Carlo.
Metodele de reprezentare a solidelor prin descompunere celularã, enumerarea
ºi codificarea spaþialã - reprezintã solidele ca pe o sumã de celule disjuncte (care
nu se intersecteazã). De aceea, pentru evaluare, orice integralã pe solid este
descompusã într-o sumã de integrale ale celulelor componente.
Fig. 5.78.

x
y
x
A B
y
D
C
P
i-1
P
i
2
y y
i 1 i
+
÷
ARIA
Aria
151 MODELARE GEOMETRICÃ
¿
} }
=
=
n
1 i
i celula solid
dv f dv f . (5.67)
Calculul integralelor celulelor mici depinde de complexitatea acestora. Dacã
celulele sunt simple calculul se face uºor, însã acestea nu sunt întotdeauna adecvate
la reprezentarea solidelor complexe. Utilizarea unor celule mai complicate poate
facilita aceste reprezentãri, însã calculul integralelor devine mai complex.
a) Cazul solidelor reprezentate analitic (MAS)
Solidul este descompus în hiperpatch-urile aferente. Fiecare hiperpatch este
descris de o ecuaþie vectorialã ) z , y , x ( f ) z , y , x ( P = ºi de un cub în spaþiul
parametric (u, v, w). Volumul solidului este dat de suma volumelor hiperpatch-
urilor care constituie solidul. Calcularea integralelor se face prin trecerea în spaþiul
parametric.
, dudvdw J ) w , v , u ( f dxdydz ) z , y , x ( f
cub hiperpatch
}}} }}}
= (5.68)
unde |J| este determinantul iacobianului
(
(
(
(
(
(
(
¸
(

¸

c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
=
w
z
w
y
w
x
v
z
v
y
v
x
u
z
u
y
u
x
J . (5.69)
Aceste integrale se pot calcula exact ºi relativ uºor.
b) Cazul solidelor SWEEP
În acest caz, se exploateazã faptul cã solidele SWEEP sunt entitãþi 2,5D.
Pentru un solid obþinut prin extrudare liniarã, volumul este:
V = A L,
unde A este aria “mãturatã”, L - distanþa pe care este deplasatã.
În cazul solidelor de rotaþie se foloseºte aceeaºi relaþie, dar cu o valoare medie
pentru L (de exemplu, L = R, unde R este raza punctului curent).
c) Cazul solidelor B-rep
În acest caz se foloseºte integrarea de suprafaþã pe baza descompunerii în
trapeze sau triunghiuri. Datoritã orientãrii feþelor, procedura este complet
automatizatã.
152 BAZELE CAD
d) Cazul solidelor CSG
Existã mai multe metode pentru calculul proprietãþilor geometrice ale acestora:
• O metodã naturalã constã în calculul proprietãþilor geometrice urmând
traseul arborelui CSG. Aceastã metodã este foarte ineficientã datoritã
dificultãþilor de calcul a intersecþiilor între solide.
• O a doua metodã se bazeazã pe conversia CSG - B-rep ºi apoi parcurgerea
algoritmului descris anterior pentru B-rep. Metoda este însã, de asemenea,
ineficientã.
• A treia metodã foloseºte conversia modelului într-o descompunere celularã,
dupã care se foloseºte metoda aferentã de însumare.
• Metoda cea mai atractivã, folositã, de altfel, ºi în alte tipuri de reprezentãri
este metoda razelor (ray tracing). Metoda calculeazã proprietãþile
integrale prin împãrþirea solidului în volume elementare (paralelipipede
dreptunghice), evaluând proprietãþile pentru fiecare element ºi apoi fãcând
însumarea rezultatelor. Volumele elementare sunt generate prin emiterea
unor raze care transverseazã solidul ºi clasificarea acestora în raport cu
solidul. Razele sunt divizate apoi în segmente interioare ºi exterioare,
dupã metodele prezentate la tehnicile de CLIPPING (tundere). Fiecare
segment interior este apoi, înconjurat cu un paralelipiped dreptunghic,
astfel încât toate paralelipipedele sunt paralele ºi în contact. Evident,
densitatea razelor determinã precizia de evaluare. Metoda razelor este
cea mai folositã în practicã.
5.8.2. Metoda Monte Carlo
Este aplicabilã indiferent de tipul reprezentãrii solidului.
Metoda porneºte de la o aproximare a integralei funcþiei f prin valori medii ale
volumului
N
V
calculate pentru un mare numãr de puncte uniform distribuite în
spaþiul modelului, adicã:
¿
}}}
=
~
N
1 i
i
V
) P ( f
N
V
dv f , (5.70)
unde P
i
sunt punctele uniform distribuite, V - volumul solidului, N - numãrul
punctelor.
Pentru rezolvarea acestei integrale se defineºte funcþia f*(P) de tipul:
) P ( g ) P ( f ) P ( f
i i i
*
· = , (5.71)
153 MODELARE GEOMETRICÃ
unde g(P
i
) este o funcþie caracteristicã a solidului care trebuie evaluat, definitã astfel:
¹
´
¦ e
=
. contrar caz în , 0
; solid P dac8 , 1
) P ( g
i
i (5.72)
În acest fel, integrala funcþiei f* acoperã de fapt integrala solidului considerat.
Prin înlocuirea funcþiei f cu f*, integrala triplã devine:
( )
¿
}}}
=
~
s
N
1 i
i
*
s
s
V
P f
N
V
dv f , (5.73)
unde V
s
este volumul unui spaþiu finit care cuprinde solidul, iar indicele s indicã
punctele care aparþin solidului.
Metoda creeazã de fapt în jurul fiecãrui punct ce are valoarea “TRUE” o
celulã cubicã, astfel încât în final, se însumeazã celulele aferente tuturor punctelor
ce aparþin solidului.
5.8.3. Implementarea pe sistemele CAD
Calculul proprietãþilor masice constituie una dintre primele aplicaþii ale modelelor
geometrice CAD.
Implementãrile din softuri cuprind aceste facilitãþi în grupul de comenzi
“CALCULATE ARIA” pentru cazul 2D ºi “CALCULATE MASS PROPERTY”
pentru aplicaþiile 3D.
Pentru grupul CALCULATE ARIA, de regulã, se cere utilizatorului sã indice
curbele de frontierã inclusiv gãurile. O eroare tipicã care intervine în aceastã utilizare
provine din neînchiderea frontierelor (ele par închise dar în realitate existã o “micã”
porþiune lipsã), adicã punctele de capãt a douã entitãþi vecine nu sunt absolut identice.
Comenzile din grupul CALCULATE MASS PROPERTIES - se pot aplica
atât la modele SURFACE cât ºi la modele solide. La modelele SURFACE,
utilizatorul trebuie sã “taie” modelul în “felii” de-a lungul unei axe z la intervalele
regulate. Aceste modele felii sunt apoi tratate separat prin operaþii de însumare
etc. Procedura este complicatã ºi destul de grosierã. La modelele solide, procedura
este complet automatã. În schimb, utilizatorul trebuie sã verifice întotdeauna unitãþile
de mãsurã ºi axele de coordonate în raport cu care se efectueazã calculele.
154 BAZELE CAD
Fig. 5.79.
În cazul softului CAD se foloseºte metoda ray tracing. Din acest motiv,
atunci când se lanseazã comanda de evaluare a proprietãþilor masice trebuie
precizatã direcþia “razelor”, care poate fi selectatã pe ox, oy sau oz. Alegerea se
face pe direcþia pe care numãrul razelor care traverseazã piesa este maxim, la
aceeaºi densitate a razelor. De exemplu, pentru solidul din figura 5.79, precizia cea
mai bunã se obþine dacã direcþia razelor se alege în lungul axei oy.
z
y
x
155 MODELAREA PENTRU ANALIZE
MODELAREA PENTRU ANALIZE
®Operatiile complexe de evaluare a modelelor geometrice ® necesita o
PREPROCESARE (prelucrarea suplimentara, inainte de anaiza propriu zisa) a
modelelor, in vederea extragerii datelor geometrice
® De asemenea, rezultatele numerice acestor analize sunt deosebit de
voluminoase ® este necesara o POST PROCESARE pentru a putea fi exploatate
Analiza cu metoda elementelor finite
®aplicabilitate: analiza fenomenelor de propagare in câmpuri analitice: tensiuni,
vibraþii, cãldurã, curgerea fluidelor, în general orice problemã de “câmp”.
®In principiu se rezolvã probleme complexe, prin rezolvarea numericã a
unui mare numãr de probleme mai simple, care împreunã aproximeazã soluþia
“întregului”.
Principiul metodei
Domeniul problemei (regiunea care este modelatã) este subdivizatã într-un
numãr de forme primitive simple, denumite elemente finite,
Elementele finite sunt definite ºi poziþionate în domeniu prin intermediul unor
puncte, denumite noduri.
Elementele finite pot avea feþe comune muchii comune si/sau noduri comune.
Ansamblul nodurilor ºi elementelor finite unui model®mesh (plasã)
Odatã realizat mesh-ul ®piesa a fost discretizatã.
156 BAZELE CAD
Piesei discretizate îi sunt aplicate condiþiile “de frontierã” (boundary condition),
®includ datele de intrare:
• forte exterioare aplicate;
• temperaturile surselor termice;
• deplasãri impuse etc.
Distribuþia proprietãþii de interes în cadrul unui element este aproximatã prin
câteva funcþii (ecuatii), specifice fiecarui tip de element finit .
Softurile MEF ® au un numar limitat de tipuri de EF. Pentru fiecare se
dispune de setul de ecuatii aferent.
Ecuaþiile pentru toate elementele finite sunt formulate automat ºi pot fi rezolvate
simultan împreunã cu condiþiile de continuitate, obþinându-se astfel o aproximare a
soluþiei globale.
Analizele cu MEF includ trei etape principale:
1.PREPROCESARE.
2.PROCESAREA sau REZOLVAREA problemei.
3.Interpretarea rezultatelor (POSTPROCESAREA).
Tehnicile CAD sunt foarte utile la automatizarea unor operaþii, cum ar fi:
• pregãtirea datelor pentru analiza cu MEF pornind de la modelul geometric
(PREPROCESARE);
• interpretarea rezultatelor (POSTPROCESARE).
6.1.2. Preprocesarea
®Una dintre operaþiile cele mai migãloase ®pregãtirea modelului discretizat.
®La începuturi ® manual (la planseta), dupã care se prelevau tabelele de
date care se introduceau tot manual în programul MEF.
Procesul ®laborios ºi înclinat spre erori.
De obicei ®o altã etapã - de verificare.
Sistemele CAD ®tehnici grafice de automatizare a discretizãrii, verificãrii
si postprocesarii
157 MODELAREA PENTRU ANALIZE
DISCRETIZAREA ® douã etape:
• Împãrþirea modelului în regiuni regulate
• Discretizarea automatizatã a regiunilor ®diferite tipuri de EF : triunghiuri,
patrulatere etc.
Metodele de discretizare ®interactive.
a) metode bazate pe modele WIREFRAME ºi SURFACE;
b) metode bazate pe solide.
a) Metode bazate pe reprezentãri WIREFRAME ºi SURFACE
Metoda nodurilor - sunt generate mai întâi nodurile.
Apoi, nodurile sunt conectate pentru a forma elemente.
Cele mai utilizate ®elementele de triunghiularã.
Pentru modelele plane utilizatorul numai nodurile de pe frontiere - discretizarea
frontierelor. Nodurile sunt numerotate.
(-1,1)
(-1,-1) (1,-1)
(1,1)
y
x
x
y
Fig. 6.2.
158 BAZELE CAD
Dacã se doreºte o densitate diferitã, modelul se imparte în mai multe regiuni.
• Ultima etapã o constituie triunghiularizarea .
®Alegerea nodurilor pentru un triunghi se face începând de la nodurile de
pe frontierã . Cel de-al treilea se alege astfel încât triunghiul sã fie cât mai
aproape de forma echilateralã.
Foarte rãspândit ® triunghiularizarea DELAUNEY.
®principiul = 3 puncte formeazã un triunghi al reþelei numai dacã cercul
circumscris nu cuprinde ºi un alt nod.
Metoda elementelor se bazeazã pe obþinerea elementelor direct din regiuni,
pe doua cai:
• Metoda izoparametricã - se obþin nodurile. Între acestea, se definesc apoi
elementele finite quadrilatere care pot fi uºor triunghiularizate prin
diagonalizare.
• Discretizare transfinitã - este similarã cu precedenta, cu diferenþa cã
frontierele nu mai sunt aproximate prin segmente rectilinii ale elementelor
ci prin segmente de curbe.
7 1
24
19
13
32
25
29
Fig. 6.1.
a)
b)
159 MODELAREA PENTRU ANALIZE
b) Metode bazate pe reprezentãri solide
Metoda principalã ® se bazeazã pe modelul analitic al solidelor (MAS)
®discretizarea izoparametricã
În restul cazurilor, metodele aferente solidelor se bazeazã pe entitãþi 2,5D
6.1.3. Postprocesarea
Examinarea rezultatelor ®o operaþie extrem de migãloasã pe cale manuala.
Tehnicile CAD simplificã foarte mult analiza rezultatelor.
Existã patru cãi grafice de prezentare a rezultatelor:
• colorarea modelului în conformitate cu efectul analizat, dupã un cod simplu
al culorilor;
• reprezentarea stãrilor deformate ale modelului;
• prin diverse diagrame
• prezentarea unor “filme” animate ale evoluþiei modelului.
Fig. 6.3.
w
u
v
z
x
y
160 BAZELE CAD
Softurile de analiza a sistemelor MULTICORP (MBS)
® analiza miºcãrii sistemelor de corpuri interconectate.
®punctul de plecare ®tot modelul geometric CAD al sistemului.
Scopul: analiza miºcãrii sistemului sub acþiunea forþelor
Date de intrare:
a) date despre corpuri: poziþie, orientare, proprietãþi masice ºi inerþiale,
formã;
b) date despre legãturi: tip, grade de libertate, corpuri adiacente, etc.
c) date despre forþele aplicate: punct de aplicaþie, modul, direcþie, sens;
Rezultatele analizei ® serie de tabele de rezultate ce descriu miºcarea
succesivã a sistemului, precum ºi forþele din legãturi,
®fiecare tablou corespunde poziþiei sistemului la un moment dat al simulãrii.
Datele despre corpuri (a) sunt extrase aproape integral din modelul CAD al
sistemului (preprocesarea).
Preprocesarea
®descrierea sistemului ®interactiv
Cuprinde urmatoarele date :
• sistemul mecanic;
• forþele ºi elementele conducãtoare;
• scenariul simulãrii dorite.
1) Descrierea sistemului mecanic cuprinde 2 aspecte:
® corpurile (BODY sau PART)
®legãturile (JOINTS ºi/sau CONSTRAINT)
a) Descrierea corpurilor ® în raport GRF -pe baza BRF
®pozitia
®orientarea
®Proprietãþile masice ºi inerþiale ale corpului în raport cu BRF-ul asociat.
®Forma corpului - pentru animatie
161 MODELAREA PENTRU ANALIZE
b) Descrierea legãturilor
Fiecare soft® bibliotecã de legãturi
®cuple compuse, de exemplu: sferã - sferã sferã - translaþie etc.
CUPLA
De rotaþie
(REVOLUTE)
Sfericã (SPHERE)
De translaþie
(TRANSLATIONAL)
Cilindricã
(CYLINDRICAL)
Miºcãri relative permise
Rotaþia relativã în jurul unei axe
comune
Rotaþiile relative în jurul unui
punct comun
Translaþia relativã în lungul a
douã axe paralele comune
Translaþia ºi rotaþia relative în
raport cu o axã comunã
Entitate geometricã
esenþialã
Axa comunã de rotaþie (do-
uã puncte)
Punctul comun (centrul cu-
plei)
Cele douã axe comune (trei
puncte)
Axa comunã (douã puncte)
Tabelul 6.1.
Fig. 6.5.
a) b)
c) d)
Bielã
e)
162 BAZELE CAD
2) Descrierea forþelor ºi elementelor conducãtoare :
• Precizarea elementului asupra cãruia opereazã.
• Precizarea direcþiilor, sensului ºi mãrimii forþei ® constantã sau variabilã
3) Datele privind scenariul simulãrii,
®timpii de început ºi sfârºit t
start
, t
end
, ssi rezolutia.
6.2.2. Procesarea
®rularea programului
6.2.3. Postprocesarea
• vizualizarea rezultatelor numerice (tabelele);
• diagrame;
• animaþie graficã - simulare.
163 MODELAREA PENTRU ANALIZE
165 STANDARDE PENTRU SCHIMBUL DE DATE
7
STANDARDE PENTRU
SCHIMBUL DE DATE
În foarte multe cazuri produsele complexe (de exemplu, automobilele) sunt
realizate cu componente executate de diferiþi furnizori, iar tendinþa actualã este de a
amplifica acest sistem. Într-un asemenea produs, o mare cantitate de date de proiectare
este necesar a fi transferatã între diverºi colaboratori. Cel mai simplu sistem prin
care douã companii pot schimba date este ca ele sã utilizeze acelaºi sistem CAD/
CAM. Multe dintre marile corporaþii au exercitat într-adevãr presiuni asupra
colaboratorilor mai mici pentru alinierea la sistemul lor. Totuºi în majoritatea cazurilor
s-a impus necesitatea unui program translator între diverse sisteme CAD/CAM.
La început au fost dezvoltate translatoare bilaterale, dar cum numãrul sistemelor
CAD s-a diversificat, aceasta a condus
cãtre o explozie a cerinþelor de translatoare
- pentru N sisteme numãrul de translatoare
necesar fiind N × (N - 1).
Soluþia la aceastã problemã o constituie
schimbul cãtre un fiºier NEUTRU
(NEUTRAL FILE) ºi apoi mai departe
cãtre fiºierul þintã (fig. 7.1). În acest mod,
numãrul de translatoare necesar este doar
2N. Un alt avantaj al formatului neutru îl
constituie arhivele neutre care pot fi utilizate
peste ani de noile sisteme CAD.
Deºi soluþia pare simplã, punerea la
Sistem C
FORMAT
NEUTRU
Sistem A Sistem B
Fig. 7.1.
166 BAZELE CAD
punct a formatului fiºierului NEUTRU, nu a fost ºi nu este simplã, datoritã marii
diversitãþi a sistemelor, precum ºi a paralelismului în standardizare, în special, între
sistemul american ºi cel european.
Douã tipuri de probleme apar la transferul datelor:
1. Reprezentarea unor date ale modelului se face în mod inevitabil rotunjit pe
parcursul: original ® neutral ® copie translatatã. Acest lucru micºoreazã precizia,
ºi unele puncte care coincideau în mod absolut la modelul original nu mai coincid în
modelul transpus în alt format.
2. O problemã, mult mai gravã, se întâlneºte atunci când se doreºte transferarea
unei entitãþi care nu este comunã în cele douã softuri: translator sau receptor. În
acest caz se cautã aproximarea acestei entitãþi prin una sau mai multe entitãþi
“cunoscute”, iar prin aproximare se pierde în mod inevitabil precizia.
Aceste tipuri de probleme, tot mai dificile pe mãsurã ce complexitatea entitãþii
creºte, au fãcut ca problema transferului sã nu aibã nici acum o rezolvare
satisfãcãtoare.
7.1. Standardul IGES
Primul standard de interschimbabilitate a fost IGES (Iniþial Graphics Exchange
Specification), dezvoltat în 1980 de marii producãtori de sisteme CAD din SUA.
El a fost conceput sub format ASCII pentru a putea fi cât mai portabil. Din acest
motiv, fiºierele sunt mult mai voluminoase decât cele originale.
Primele versiuni au fost destul de nefiabile, þinând cont doar de câteva mari
sisteme CAD americane; versiunile ulterioare au fost însã completate.
IGES defineºte un model CAD reducându-l la listã de entitãþi. Aceste entitãþi
sunt descrise într-un format neutru ASCII. Fiecare tip de entitate este asociat cu
un numãr, dupã cum urmeazã:
- Grupa 100
Entitãþi geometrice. Exemple:
100 ® arc circular,
102 ® curbã compusã,
110 ® linie,
116 ® punct etc.
- Grupa 200
Entitãþi de indicare. Exemple:
202 ® dimensiuni unghiulare,
216 ® dimensiuni liniare,
214 ® leader etc.
167 STANDARDE PENTRU SCHIMBUL DE DATE
- Grupa 300
Entitãþi de structurã. Exemple:
302 ® definire asociativitate,
310 ® definire font pentru text,
314 ® definire culoare,
406 ® proprietate,
600 - 699 ® macro-uri etc.
Fiºierul de format neutru are cinci secþiuni:
• Secþiunea START cuprinde informaþii cu privire la transferul însuºi, care
sunt date de utilizator chiar la export.
• Secþiunea GLOBAL cuprinde 24 de câmpuri cu parametrii necesari
transferului, separate prin virgulã. Semnificaþiile câmpurilor sunt urmãtoarele:
1, 2 ® caractere de delimitare,
3 ® identificatorul sistemului original,
4 ® numele fiºierului,
5 ® identificatorul soft-ului sursã (producãtor),
6 ® versiunea translatorului IGES,
7 - 11 ® precizia (Integer, Real etc.),
12 ® identificatorul receptorului,
13 ® scara spaþiului model,
14 ® unitãþi,
15 ® denumirea unitãþilor,
16 ® numãr de grosimi utilizate pentru linii,
17 ® grosimea maximã a liniilor,
18 ® ora generãrii fiºierului,
19 ® distanþa minimã,
20 ® cea mai mare coordonatã,
21, 22 ® persoana ºi organizaþia care creazã fiºierul,
23 ® versiune IGES,
24 ® standard de desenare.
• Secþiunea DIRECTORY este generatã de translatorul IGES ºi conþine
câte douã linii pentru fiecare entitate. Fiecare linie la rândul ei conþine 9
câmpuri formate din câte 8 caractere. Liniile conþin codul entitãþii ºi pointerii
cãtre datele numerice din secþiunea urmãtoare.
• Secþiunea PARAMETER DATA conþine datele specifice pentru fiecare
entitate cum ar fi valorile coordonatelor, text, numãrul punctelor de control
etc. Primul parametru al fiecãrei linii identificã tipul entitãþii. În funcþie de
aceasta rezultã apoi semnificaþia datelor care urmeazã.
168 BAZELE CAD
• Secþiunea TERMINATION marcheazã sfârºitul fiºierului ºi conþine
subtotaluri ale înregistrãrilor.
Fiecare linie are un identificator în coloanele 73 - 80. Primul caracter (col. 73)
indicã codul secþiunii: S - START, D - DIRECTORY etc.
7.2. Standardul STEP
Deºi IGES este principalul standard actual pentru schimburi CAD, un numãr
de alternative au fost dezvoltate de-a lungul anilor, datoritã inevitabilelor insatisfacþii
generate de IGES, mai ales în EUROPA. De exemplu, în Germania standardul
VDA/FS destinat industriei automobilelor, în Franþa SET (Standard d’Echange et
de Transfert), destinat industriei aerospaþiale etc.
Cãtre anul 1990, în urma unor repetate contacte în care partea europeanã a
demonstrat limitele IGES-ului, iar partea americanã supremaþia acestuia, s-a luat
decizia punerii la punct a unui standard acceptat la nivel mondial denumit STEP
(Standard Exchange for Project Data). Acest standard este în curs de finalizare
acum de cãtre Comunitatea Europeanã (printr-un program al CE, denumit ESPRIT),
iar Statele Unite urmeazã sã se alinieze la acelaºi standard, prin PDES (Product
DATA Exchange by STEP).
Standardul STEP este superior IGES-ului deoarece descrie datele, la nivel de
PRODUS ºi nu de entitate, fiind în acest fel util pentru transportul datelor ºi între
diverse celule de automatizare, nu numai între douã sisteme CAD diferite. Datele
sunt descrise cu un limbaj special, denumit EXPRESS, care stabileºte corespondenþa
modelului cu fiºierul fizic.
Modelele STEP sunt împãrþite în douã segmente principale:
• submodelul aplicaþie - conþine informaþii despre tipul aplicaþiei (mecanic,
electric etc.);
• submodelul resursã - conþine informaþii specifice aplicaþiei (date geometrice,
topologice etc.).
Acest lucru permite ierarhizarea datelor transferate pânã la nivelele foarte
înalte ale produsului.
De exemplu, un dreptunghi cuprinde (fig. 7.2):
• date - un set de patru segmente;
• relaþii între date: 2 legat cu 1, 2 legat cu 3, 3
legat cu 4, 4 legat cu 1 etc. sau A între 1 ºi 2, B între 2
ºi 3 etc.
Baza de date (Database) este conceputã ca o
colecþie de obiecte, organizatã ierarhic (fig. 7.3), care
poate fi accesatã de cãtre sistem.
1 2
3 4
A
B
C
D
Fig. 7.2.
169 STANDARDE PENTRU SCHIMBUL DE DATE
Pentru cazul dreptunghiului, situaþia este prezentatã în figura 7.4.
Limbajul EXPRESS lucreazã, de asemenea, la nivel de entitãþi, dar acestea, în
acest caz, au o altã definiþie ºi anume: entitate - ansamblu de date ºi operaþii /
restricþii asupra datelor. În esenþã operaþiile / restricþiile care sunt atribute pot fi
foarte diverse, de exemplu: real, întreg, boolean etc. Acestea pot fi ordonate în
matrice, liste, seturi etc.
Atributele pot fi referinþe cãtre alte entitãþi ºi alte tipuri de date asociate.
Exemplu:
ENTITY automobile
make: STRING
serial-number: INTEGER
engine-size: REAL
colour: colour type
owner: person
previous owner: LIST OF PERSON
Fiecare tip de entitate este descris apoi separat în mod similar.
Nivel suprafeþe
Nivel muchii
Nivel puncte
(intersecþii)
Nivel coordonate
Obiect
S
1
S
2
A B C D E F G
1 4
x y
Fig. 7.3.
Suprafaþa
Suprafaþa 1
Linie
A
B
C
D
Tip
Linii
Linie
A
B
C
D
Start
punct
1
2
3
4
Punct
sfârºit
2
3
4
1
Punct
1
2
3
4
x
x
1
x
2
x
3
x
4
y
y
1
y
2
y
3
y
4
Fig. 7.4.
170 BAZELE CAD
Exemple:
TYPE colourtype: (red, black, blue, white)
ENDTYPE;
º.a.m.d.
Se poate concepe un supertip din entitãþile superioare, constituind, în acest fel,
o structurã arborescentã de date:
ENTITY road-vehicle SUPERTYPE OF ONEOF
(truck, automobile, bicycle);
END-ENTITY;
La rândul ei, definiþia automobilului, va trebui sã reflecte acest lucru:
ENTITY automobile SUBTYPE OF
(road-vechicle).
În acest fel limbajul EXPRESS devine foarte puternic putând descrie entitãþi
oricât de complexe.
7.3. Standardul “de facto” DXF
Este un exemplu de modalitate în care un produs de succes îºi poate impune
propria structurã ca standard, în cazul de faþã AutoCAD. Deºi sistemul este departe
de a acoperi necesitãþile sistemelor CAD majore, el nu poate fi totuºi eliminat
datoritã popularitãþii sale. Formatul DXF a fost conceput iniþial ca o a doua formã
de reprezentare a entitãþilor AutoCAD (în format ASCII) dar cum AutoCAD-ul
este foarte rãspândit, s-a preferat pentru transport utilizarea directã a acestor fiºiere.
Fiºierul se bazeazã tot pe entitãþi grafice ºi este foarte voluminos, fiecare datã
ocupând o linie. Datele sunt codificate în format ASCII utilizând un sistem ale
cãrui elemente de codificare sunt prezentate în Anexa 2.
Fiºierul DXF cuprinde patru pãrþi: Header (pentru variabilele de sistem),
Tables (pentru stiluri de linie ºi UCS-uri), Blocks (pentru blocuri) ºi Entities
(pentru definirea entitãþilor). Se poate construi un fiºier DXF valid ºi numai cu
secþiunea Entities. De exemplu, pentru un fiºier al unui desen format dintr-o
singurã linie, secþiunea Entities are forma urmãtoare (în Anexa 3 este redat
conþinutul întregului fiºier):
ENTITIES
0
LINE
5
40
330
1F
171 STANDARDE PENTRU SCHIMBUL DE DATE
100
AcDbEntity
8
0
100
AcDbLine
10 Coordonata x a primului punct
1.0
20 Coordonata y a primului punct
1.0
30 Coordonata z a primului punct
0.0
11 Coordonata x a celui de-al doilea punct
5.0
21 Coordonata y a celui de-al doilea punct
5.0
31 Coordonata z a celui de-al doilea punct
0.0
0
ENDSEC Sfârºitul secþiunii.
Concurenþa acerbã pe piaþa softurilor CAD a fãcut ca dezvoltãrile ºi progresul
sã nu urmeze întotdeauna un curs strict rectiliniu, ci deseori cu sinuozitãþi ºi aspecte
ciudate care îºi au originea în interesele comerciale. Un exemplu elocvent îl
constituie standardele de schimb de date, care, în ciuda înþelegerilor existente nu
sunt sutã la sutã funcþionale. Una dintre cauze este aceea cã, în raport cu evoluþia
softurilor CAD, standardele de transfer sunt întotdeauna cu cel puþin un pas în
urmã. Aceasta deoarece cercetarea ºtiinþificã este concentratã cãtre inovaþia în
softuri, iar standardele sunt cele care trebuie sã se alinieze.
Pe de altã parte, standardele “de facto”, cum este DXF, au demonstrat cã
piaþa îºi impune totuºi regulile ei, aºa cum pare sã fie cazul formatelor impuse de
cãtre nucleele grafice CAD (pentru detalii, a se vedea subcapitolul 12.1).
Nucleele grafice CAD sunt concepute ca instrumente de bazã în dezvoltarea
softurilor CAD incluzând subrutine gata scrise pentru realizarea unui numãr mare
de funcþii de modelare geometricã. Aceste nuclee sunt dezvoltate în mod profesionist
de cãtre companii specializate care investesc ºi sunt implicate masiv în cercetarea
ºtiinþificã de profil. Ca atare, spre deosebire de standardele de transfer, nucleele
grafice sunt întotdeauna “la zi” cu ultimele inovaþii CAD, deoarece de multe ori
chiar ele sunt la originea acestora. Cum aceste nuclee implicã ºi formatul entitãþilor
172 BAZELE CAD
în baza de date ºi chiar formatul modelului geometric, încep sã fie preferate pentru
transferul de date între sistemele CAD, mai ales în mediile profesioniste.
Un exemplu elocvent îl constituie formatul SAT al nucleului grafic ACIS,
prezent ca format neutru în toate softurile care sunt dezvoltate pe baza acestui
nucleu grafic (AutoCAD, Cadkey, IronCAD, versiuni anterioare ale softului
MicroStation etc.).
Un alt format neutru care se rãspândeºte cu repeziciune este cel utilizat pentru
dispozitivele de prototipare rapidã (Rapid Prototyping), în special cele bazate pe
stereolitografie (formate *.STL), datoritã faptului cã fiºierul respectiv poate descrie
modele solide. Totuºi trebuie remarcat cã acest format nu satisface exigenþele
profesionale deoarece reprezentarea solidului este aproximativã (cuprinde doar
modelele 2,5D ale “feliilor” componente, utilizate la impresionarea cu laser).
În concluzie, se poate afirma cã în domeniul formatelor neutre softurile
comerciale CAD nu sunt încã aliniate la un standard unic, în principal datoritã
intereselor comerciale divergente. Din acest motiv, majoritatea dintre ele includ ca
facilitãþi de transfer în format neutru mai multe opþiuni, dintre care în mod uzual se
regãsesc în meniuri IGES, STEP, DXF, STL.
173 PROGRAMAREA APLICAÞIILOR CAD
8
PROGRAMAREA APLICAÞIILOR CAD
8.1. Structura limbajelor
Existã multe situaþii în care proiectantul are nevoie de o unealtã de programare,
compatibilã cu sistemul CAD avut la dispoziþie. Un exemplu tipic îl constituie
modelele geometrice parametrizate. Acestea au aceeaºi topologie însã dimensiuni
geometrice diferite. Programele de acest fel au ca date de intrare datele geometrice
dupã care modelul geometric este generat automat.
Aportul major al limbajelor de programare CAD constã în automatizarea
anumitor faze ale proiectãrii. Utilizãrile tipice ale acestor limbaje sunt:
1. Crearea automatã de entitãþi complexe sau familii de piese. O problemã
specificã o constituie parametrizarea modelului. Prin parametrizare, forma
piesei este descrisã de un set de variabile.
2. Crearea de meniuri personalizate, adaptate lucrãrilor uzuale ºi stilului de
lucru al proiectantului.
3. Crearea unor entitãþi noi, inexistente în sistem, dar necesare utilizatorului,
prin implementarea modelului matematic aferent.
4. Studiul influenþelor unor parametri geometrici asupra formei ºi proprietãþilor
obiectului.
5. Crearea unor aplicaþii inginereºti de analizã ºi simulare (analiza cu MEF,
MBS, optimizare etc.).
Programarea aplicaþiilor CAD se realizeazã cu limbaje de programare
asemãnãtoare cu cele convenþionale ca principiu, cu singura deosebire, cã acestea
pot încorpora comenzi pentru manipularea ºi interacþiunea cu mediul CAD deservit.
În general, însã, aceste limbaje CAD sunt mai puþin performante datoritã dimensiunilor
mai mari. În mod uzual, acestea cuprind urmãtoarele tipuri de instrucþiuni:
174 BAZELE CAD
1. Instrucþiuni declarative - specificã variabilele, dimensiuni ale vectorilor ºi
matricelor. Variabilele pot fi numere (reale ºi întregi), ºiruri, locaþii grafice ºi
entitãþi grafice. Ultimele douã categorii nu existã în programarea convenþionalã.
2. Instrucþiuni aritmetice - în general, asemãnãtoare cu cele din programarea
convenþionalã (adunare, scãdere, înmulþire etc.).
3. Instrucþiuni de control - controleazã traseul de execuþie al programului.
Exemple: DO, FOR, REPEAT, WHILE etc.
4. Instrucþiuni de intrare-ieºire - în afarã de instrucþiunile clasice (READ,
WRITE) limbajele CAD utilizeazã ºi instrucþiuni de citire sau extragere a
informaþiilor grafice de pe ecran sau din baza de date. În aceastã categorie
intrã instrucþiunile de tipul DIGITIZE. O astfel de instrucþiune poate fi
folositã, de exemplu, la citirea poziþiei unui punct pe model (GetPoint - în
limbajul AutoLISP). O categorie similarã de instrucþiuni este de tipul
OBTAIN care extrage informaþii dintr-o entitate existentã (de exemplu,
GetEnt - din AutoLISP).
5. Instrucþiuni de construcþie graficã - înglobeazã de regulã toate comenzile
interactive ale sistemului. De exemplu, în AutoLISP instrucþiunea
COMMAND face ca toate argumentele acesteia sã fie tratate ca ºi
comenzi date direct de la prompterul de comandã AutoCAD. Aceastã
facilitate simplificã foarte mult sintaxa acestor instrucþiuni, care devine
similarã cu sintaxa script-urilor.
Totuºi existã ºi diferenþe între instrucþiuni ºi comenzi:
• De regulã, se renunþã la afiºarea entitãþilor în timpul execuþiei programului.
• Diferã modul de selectare a entitãþilor de pe ecran (existã modalitãþi de
selectare ce sunt proprii limbajului).
6. Instrucþiuni de manipulare graficã - se definesc în mod asemãnãtor cu
cele de construcþie însã nu toate comenzile pot fi incluse în aceste instrucþiuni.
În concluzie, limbajele interactive CAD cuprind acelaºi tipuri de instrucþiuni
ca ºi limbajele convenþionale, în plus, ele cuprind ºi alte tipuri de instrucþiuni direct
legate de crearea ºi manipularea entitãþilor grafice ce compun modelele geometrice.
În funcþie de modul de lucru ºi datele procesate, limbajele interactive CAD
sunt de trei categorii: limbaje de nivel elementar, de nivel înalt ºi de programare la
nivelul bazei de date.
8.1.1. Limbaje de programare la nivel elementar
Aceste limbaje sunt concepute cu scopul de a se putea grupa ºi salva fiºiere
ce conþin secvenþe de comenzi sub un nume, care sã poatã fi executate la cerere
printr-o comandã genericã simplã. Aceste fiºiere se mai numesc MACRO-uri. Nu
175 PROGRAMAREA APLICAÞIILOR CAD
includ instrucþiuni aritmetice sau de control. Limbajele sunt, de obicei, bazate pe
interpretor ºi nu pe compilator.
Macro-urile sunt utilizate pentru “mici automatizãri” în procesul de concepþie.
Majoritatea sistemelor CAD sunt prevãzute cu facilitãþi MACRO. Programele
MACRO se salveazã pe disc sub forma unor secvenþe ASCII care pot fi ulterior
prelucrate cu editoare de text convenþionale sau se pot utiliza ca atare în aplicaþii.
8.1.2. Limbaje de nivel înalt
Sunt cele mai populare tipuri de limbaje printre utilizatorii de CAD-CAM.
Sistemele CAD comerciale sunt prevãzute întotdeauna cu un astfel de limbaj.
Exemple:
COMPUTERVISION - CVMAC (compilator),
CALMA - DAL (compilator),
McDONEL - GRIP (compilator),
AutoCAD - AutoLISP (interpretor).
Limbajele de nivel înalt includ, de regulã, toate cele 6 tipuri de instrucþiuni
prezentate în subcapitolul 8.1. Din acest motiv, programele sunt dependente de sistemul
CAD ºi nu pot fi transferate ºi executate pe alte sisteme. Problema este rezolvatã
parþial prin interfaþarea cu limbaje convenþionale (FORTRAN, C, PASCAL etc.).
Avantajele interfaþãrii:
• Toate bibliotecile matematice ºi grafice ale limbajului convenþional devin
accesibile în limbajul CAD.
• Se câºtigã în portabilitatea programelor. Tehnica constã în scrierea instrucþiunilor
în limbaj CAD doar pentru categoriile 5 ºi 6 (vezi subcapitolul 8.1), iar celelalte
instrucþiuni în limbaj convenþional (de exemplu C). La executarea programului
pe alt sistem este suficient sã se rescrie doar partea specificã limbajului CAD,
rutinele în C rãmânând aceleaºi (în AutoCAD, ultimele versiuni de AutoLISP
sunt capabile sã recunoascã secvenþe în limbajul C).
8.1.3. Limbaje de programare la nivelul bazei de date
Constituie cel mai profund acces de programare ce se poate permite utili-
zatorului. Dezavantajul principal constã în necesitatea cunoaºterii structurii bazelor
de date. Limbajele permit modificarea a însãºi sistemului CAD prin schimbarea
interfeþei grafice, adãugarea de facilitãþi noi etc. Doar sistemele CAD comerciale
sunt prevãzute cu un astfel de limbaj.
8.2. Programarea aplicaþiilor CAD în AutoLISP
Unul dintre cele mai rãspândite medii CAD atât în þarã, cât ºi în strãinãtate
este AutoCAD, al companiei AutoDESK Inc. Limbajul de programare graficã
176 BAZELE CAD
este o extensie a limbajului de nivel înalt LISP ºi se numeºte AutoLISP. Datoritã
marii popularitãþi a softului CAD, în acest subcapitol se prezintã o introducere în
programarea aplicaþiilor CAD în AutoLISP.
8.2.1. Elemente de sintaxã
Structura fundamentalã de procesare în AutoLISP este LISTA. Termenul
LISP este acronimul de la LISt Processing. În AutoLISP, lista este un ansamblu de
elemente ºi date încadrat între paranteze, cu elementele individuale (denumite atomi)
separate prin spaþii.
Existã douã tipuri de liste recunoscute de AutoLISP ºi anume expresii ºi liste
de date. O expresie este o listã care conþine un nume de funcþie ca prim element
ºi un numãr de argumente. Expresiile de bazã AutoLISP sunt similare cu ecuaþiile
matematice obiºnuite. De exemplu, în ecuaþia 1 + 2 = 3, funcþia este “+” (adunare),
argumentele sunt numerele 1 ºi 2, iar valoarea returnatã este 3. Folosind AutoLISP,
expresia de mai sus se scrie la prompterul AutoCAD, astfel:
Command: (+ 1 2)
3.
Singura diferenþã între ecuaþiile matematice ºi expresiile AutoLISP este ordinea
de scriere, precum ºi marcarea începutului ºi sfârºitului unei expresii prin paranteze.
Dupã scrierea unei expresii la prompterul AutoCAD, ea poate fi evaluatã prin
apãsarea tastelor “Space” sau “Enter”. Prin apãsarea tastei “Space” se obþine:
Command: (+ 1 2) 3,
iar prin apãsarea tastei “Enter” se obþine acelaºi rezultat, dar afiºat pe o linie nouã:
Command: (+ 1 2)
3.
Din punct de vedere sintactic, elementele unei liste sunt separate prin spaþiu.
8.2.2. Funcþii aritmetice
La fel ca majoritatea limbajelor de programare, AutoLISP cuprinde cele patru
operaþii de bazã: adunarea (+), scãderea (-), înmulþirea (*) ºi împãrþirea (/). În
tabelul 8.1 se prezintã sintaxa ºi câteva exemple pentru fiecare funcþie aritmeticã.
De asemenea, în acest tabel este cuprinsã ºi funcþia de atribuire (SETQ).
8.2.3. Tehnici uzuale de programare
Fiind un limbaj bazat pe interpretor, AutoLISP se poate utiliza direct la prompterul
de comandã AutoCAD pentru evaluarea unor expresii de dimensiuni mai mici.
Atunci când expresiile sunt mai complexe este util sã se realizeze un program
salvat într-un fiºier pentru a putea fi eventual depanat.
177 PROGRAMAREA APLICAÞIILOR CAD
Câteva din avantajele utilizãrii expresiilor AutoLISP direct la prompterul
AutoCAD sunt prezentate mai jos, împreunã cu exemple pentru ilustrare:
• Valorile returnate de cãtre AutoLISP la evaluarea unei expresii (oricât de
complexe) pot fi utilizate ca input într-o comandã AutoCAD. Exemplu:
Command: CIRCLE ¿
3P / 2P / TTR / <center point>: (se selecteazã centrul)
Diameter / <Radius>: (/ 4.5 3) ¿
Command:
• Pentru extragerea valorii unui simbol se utilizeazã semnul de exclamare “!”:
Command: (setq x 15)
15
Command: ! x
15
Command: CIRCLE ¿
3P / 2P / TTR / <center point>: (se selecteazã un punct)
Diameter / <Radius>: ! x
178 BAZELE CAD
Odatã iniþializat, un simbol rãmâne în memorie ºi poate fi utilizat:
Command: (setq n 18)
18
Command: (+ 4 n)
22
• În AutoLISP se pot utiliza ca simboluri orice combinaþii de caractere, cu
excepþia celor utilizate ca funcþii în sistem, parantezelor “()”, punct “.”,
ghilimele “” ºi punct virgulã “;”. Simbolul pi este asociat cu valoarea
constantã (neschimbabilã) 3.1415926.
• O cale eficientã de execuþie a instrucþiunilor AutoLISP este organizarea
acestora în programe sau macro-uri salvate pe disc. Fiºierul respectiv
este apoi încãrcat într-o sesiune de desenare cu comanda APPLOAD.
Textul programului se poate crea cu orice editor de texte. În sistemul
WINDOWS, cel mai comod este sã se utilizeze editorul Notepad, dar se
poate utiliza ºi Word sau WordPerfect.
• În textul unui program se pot insera linii de comentariu prin marcarea lor
cu caracterul punct ºi virgulã (;). Exemplu:
(setq * 3); se atribuie lui x valoarea 3
(setq x (* x 3)); se atribuie lui x valoarea 3x.
• Caracterul “ (ghilimele) indicã interpretorului cã toate caracterele care
urmeazã pânã la urmãtoarea apariþie a simbolului, “, reprezintã un ºir
alfanumeric. Exemplu:
Command: (setq A “OK”) ¿
“OK”
Command: (setq A “OK) ¿
1>
1>)
“OK)\n”.
• Funcþia quote are ca efect reproducerea expresiei pe care o precedã:
Command: (quote (6,2))
6,2
sau
Command: ‘(6,2)
6,2.
Aceastã facilitate este folositã la crearea listelor. Exemplu:
Command: (setq A ‘(42))
(42)
179 PROGRAMAREA APLICAÞIILOR CAD
8.2.4. Programe AutoLISP
a) Încãrcarea programelor
Programele AutoLISP se pot încãrca prin funcþii AutoLISP sau prin comenzi
AutoCAD. Funcþia LOAD în AutoLISP are drept efect citirea unui fiºier program,
controlul sintaxei ºi evaluarea expresiilor. Sintaxa funcþiei este:
Command: (Load “FILENAME”),
unde FILENAME poate fi o denumire fãrã extensie, caz în care se considerã
implicit ºi extensia (FILENAME.LSP). Este acceptatã ºi altã extensie, cum ar fi
TXT. În acest caz însã este obligatoriu ca argumentul funcþiei Load sã includã ºi
extensia respectivã (de exemplu, FILENAME.TXT).
Programele AutoLISP se pot încãrca ºi prin comanda AutoCAD APPLOAD.
Exemplu:
Command: APPLOAD.
Acelaºi efect se obþine ºi prin selectarea din meniu a opþiunii LOAD
APPLICATION. Efectul acesteia este afiºarea unei casete de dialog pentru
selectarea aplicaþiei ºi a directorului pe disc.
b) Date de intrare, grafice ºi afiºarea de mesaje pe ecran
Diferenþa fundamentalã între un program AutoLISP ºi un fiºier script sau un
macro constã în abilitatea de a specifica date de intrare la cerere. O funcþie
importantã care faciliteazã acest lucru este GETPOINT, a cãrei sintaxã este
(getpoint [PT] [PROMPT]).
Existã mai multe moduri de utilizare a acestei funcþii:
- fãrã nici un argument:
Command: (getpoint) - (Pauzã pentru selectare punct)
(3.54729 7.32429 0.0)
- cu text de acompaniere:
Command: (getpoint “Selectaþi un punct:”)
Selectaþi un punct: 4,2
(4.0 2.0 0.0)
Se pot executa douã comenzi similare consecutiv. Exemplu:
Command: (getpoint “Primul punct:”) (getpoint
“Al doilea punct:”)
Primul punct: Al doilea punct:
Între afiºarea celor douã mesaje acompaniatoare (promptere) va exista
bineînþeles o pauzã pentru selectarea primului punct.
Pentru afiºarea celor douã promptere pe linii separate, comanda se va scrie:
Command: (getpoint “Primul punct:”) (getpoint
“\n Al doilea punct:”)
180 BAZELE CAD
Primul punct:
Al doilea punct:
Afiºarea de mesaje pe ecran se poate face cu comanda PROMPT, a cãrei
sintaxã este:
(prompt MESSAGE)
unde MESSAGE este un ºir alfanumeric încadrat între ghilimele. Exemplu:
Command: (prompt “OK”)
Oknil
Funcþia PROMPT nu returneazã nimic, ceea ce în AutoLISP se simbolizeazã
prin nil. Ea poate fi utilizatã ºi în conjuncþie cu funcþia GETPOINT:
Command: (prompt “Selectaþi punctul:”) (getpoint) ¿
Selectaþi punctul: 4,3.5 ¿
(4.0 3.5 0.0)
Alte exemple:
Command: (setq A “SALUT”) ¿
SALUT
Command: (prompt A)
SALUTnil
Pentru a evita scrierea mesajului nil se poate utiliza funcþia (princ), care permite
o ieºire “silenþioasã” din secvenþã:
Command: ((prompt A) (princ))
SALUT
c) Utilizarea comenzilor AutoCAD în AutoLISP
În programele AutoLISP se pot apela comenzi AutoCAD utilizând funcþia
COMMAND care are sintaxa:
(command [ARGUMENTE]).
Funcþia COMMAND returneazã totdeauna nil:
Command: (command “LINE” “2,2” “4,2” “ ”) ¿
LINE from point: 2,2
To point: 4,2
To point:
Command: nil
Dupã cum se poate observa, funcþia COMMAND trimite toate argumentele
la prompterul de comandã AutoCAD. Mai întâi se trimite comanda LINE, apoi
coordonatele a douã puncte: (2,2) ºi (4,2). În final, se trimite un spaþiu, ceea ce
echivaleazã cu apãsarea tastei ENTER.
181 PROGRAMAREA APLICAÞIILOR CAD
Exemplul 1:
Command: (setq P1 ‘(4,2)) ¿
Command: (command “LINE” ‘(6,4) P1 ‘(4,6) “c”) ¿
LINE From point:
To point:
To point: c
Command: nil
Atunci când punctele sunt specificate în format 2D, se acceptã în mod implicit
valoarea zero pentru coordonata z.
Nu este obligatoriu ca funcþia COMMAND sã includã o secvenþã completã
de dialog. De exemplu, se poate iniþializa o comandã (de pildã, command “circle”)
dupã care dialogul sã se desfãºoare în mod obiºnuit din AutoCAD.
Exemplul 2:
(command “line” pause pause “ ”)
Deoarece instrucþiunea PAUSE cauzeazã oprirea evaluãrii expresiei AutoLISP
pânã la introducerea unor date utilizator de la tastaturã sau mouse, în exemplul de
mai sus se traseazã o linie între douã puncte indicate interactiv.
Scrierea unui program în AutoLISP
Cu noþiunile descrise anterior se poate concepe un program simplu AutoLISP:
; Program AutoLISP prog1.lsp
; Trasarea unui contur patrulater parametric
; determinat de patru puncte introduse de cãtre
utilizator
(prompt “\n Acest program deseneazã un patrulater
parametrizat”)
(setq PT1 (getpoint “\n Introduceþi punctul nr. 1:”))
(setq PT2 (getpoint “\n Introduceþi punctul nr. 2:”))
(setq PT3 (getpoint “\n Introduceþi punctul nr. 3:”))
(setq PT4 (getpoint “\n Introduceþi punctul nr. 4:”))
(command “LINE” PT1 PT2 PT3 PT4 “c”)
(prompt “\n Gata. \n”)
Acest program poate fi încãrcat în AutoCAD prin comanda APPLOAD. În
urma încãrcãrii în memorie, expresiile sunt evaluate ºi executate pe rând pânã la
terminarea programului. În cazul unor greºeli de sintaxã, acestea sunt semnalate,
iar execuþia se opreºte.
8.2.5. Subprograme
În afarã de funcþiile predefinite, în AutoLISP (ca ºi în orice alt limbaj de
programare) este posibilã definirea de subprograme, care apoi pot fi apelate în
182 BAZELE CAD
programul principal ca funcþie predefinitã AutoLISP.
Definirea de noi funcþii se realizeazã prin conceperea unui algoritm local
cuprinzând expresii care realizeazã sarcina doritã. Aceste expresii sunt asociate
cu o denumire utilizând funcþia DEFUN (DEFine FUNction), astfel încât ori de
câte ori noua denumire este evaluatã de cãtre interpretor se executã toatã secvenþa
de expresii asociate. Sintaxa generalã este:
(defun NUMEFUNCÞIE LISTÃ_ARGUMENTE EXPRESIA1
EXPRESIA2…)
LISTÃ_ARGUMENTE are douã pãrþi. Prima parte indicã lista variabilelor
globale care sunt comunicate programului principal la apelarea funcþiei. Partea a
doua este o listã a variabilelor locale. Spre deosebire de cele locale, variabilele
globale îºi pãstreazã valoarea ºi dupã executarea programului.
LISTÃ_ARGUMENTE are forma:
(argument1 argument2… / variabila1 variabila2…)
Funcþia defun returneazã totdeauna denumirea subprogramului nou definit.
Exemplu:
Command: (defun TREI_x (x) (* 3 x)) ¿
TREI_x
Command: (trei_x 4.0) ¿
12.0
Funcþiile definite în AutoLISP pot fi transformate în comenzi noi AutoCAD
prin utilizarea opþiunii “C:”, care se adaugã înaintea numelui funcþiei.
Exemplu:
; prog1.lsp
; Trasarea unui contur patrulater variabil
(defun C: patrulater (\ PT1 PT2 PT3 PT4))
(prompt “\ Acest program traseazã un patrulater”)
(setq PT1 (getpoint “\ Introduceþi punctul nr. 1:”))
(setq PT2 (getpoint “\ Introduceþi punctul nr. 2:”))
(setq PT3 (getpoint “\ Introduceþi punctul nr. 3:”))
(setq PT4 (getpoint “\ Introduceþi punctul nr. 4:”))
(command “LINE” PT1 PT2 PT3 PT4 “c”)
(prompt “\ Gata. \n”)
Dupã crearea ºi încãrcarea acestui program, comanda PATRULATER poate
fi utilizatã ca orice altã comandã AutoCAD.
Exemplu:
Command: (load “prog1”) ¿
C: patrulater
Command: patrulater
183 PROGRAMAREA APLICAÞIILOR CAD
Acest program traseazã un patrulater
Introduceþi punctul nr. 1: (se selecteazã un punct)
Introduceþi punctul nr. 2: (se selecteazã un punct)
Introduceþi punctul nr. 3: (se selecteazã un punct)
Introduceþi punctul nr. 4: (se selecteazã un punct)
Gata.
8.2.6. Prelucrarea listelor
Adevãrata putere a AutoLISP-ului constã în capacitatea de a crea, înmagazina
ºi manipula liste. Existã trei feluri de liste: expresii, liste de coordonate ºi listã de date.
Crearea listelor se realizeazã prin funcþia LIST, cu sintaxa:
(list EXPRESIA1 EXPRESIA2…)
Exemple:
Command: (setq PT1 (list (+ 2 1) (/ 50 10)))
(3.0 5.0 0.0)
Observaþie: Simpla aranjare a unor atomi între paranteze nu înseamnã cã s-a
constituit o listã. De exemplu, dupã (setq x 1 y 2 z 3), (setq PT (x y z) este o
expresie greºitã (se returneazã mesajul “Bad argument”). Pentru constituirea unei
liste sub un nume este obligatoriu ca mai întâi sã se constituie lista cu funcþia LIST
ºi apoi sã se facã operaþia de atribuire:
Command: (setq PT (LIST X Y Z))
(1 2 3)
În cazul în care lista se constituie cu funcþia QUOTE rezultatul nu este acelaºi,
dupã cum rezultã ºi din exemplul de mai jos:
Command: (setq PT ‘(X Y Z))
(X Y Z)
Manipularea listelor presupune accesul la oricare dintre elementele acesteia
pentru a putea fi exploatate în program. Aceasta se realizeazã cu douã funcþii
principale: CAR ºi CDR:
• Funcþia CAR returneazã primul element al listei. Sintaxa acesteia este:
(car LIST);
• Funcþia CDR returneazã o listã din care este exclus primul element. Sintaxa
funcþiei este: (cdr LIST).
Funcþiile CAR ºi CDR pot fi combinate pentru extragerea oricãrui element
din listã. De exemplu, pentru obþinerea celui de-al doilea element al listei ar trebui
sã se aplice mai întâi CDR ºi apoi CAR sau CAR (CDR). În AutoLISP se definesc
funcþii combinate pentru aceasta, în cazul de faþã CADR.
În mod similar, CADDR returneazã al treilea element, CADDDR al patrulea
º.a.m.d.
184 BAZELE CAD
Funcþia LAST returneazã ultimul element al listei. De exemplu funcþia
(last 4 3 1) returneazã valoarea 1.
Funcþia NTH returneazã orice element indicat prin poziþia sa în listã (primul
element este considerat pe poziþia zero).
Exemplu:
Command: (NTH n LISTA)
În AutoLISP existã multe facilitãþi de testare a expresiilor. Aceste funcþii
returneazã valoarea TRUE (T) sau FALSE (nil). Funcþiile de testare se mai numesc
ºi predicate. Acestea sunt utilizate ºi pentru a determina dacã o anumitã relaþie
este adevãratã sau nu. Ele sunt denumite predicate relaþionale ºi sunt prezentate în
tabelul 8.2.
Prin utilizarea expresiilor de testare se pot construi instrucþiuni condiþionale IF,
cu urmãtoarea sintaxã generalã:
(if EXPRtest THEN expresie [else expresie])
Expresiile de testare pot fi ºi combinate cu ajutorul funcþiilor logice AND, OR
ºi NOT. Astfel, EXPRtest poate avea forma:
(EXPRtest1 and EXPRtest2) etc.
Exemple:
(setq A 1 B “OK” C nil D ‘(0 0) E 25.4)
(if (and (> A 0) (< A 2)) then (setq B “ALERT”))
(if (and (> A 0) (= A 4)) then (setq B “GO”))
Funcþia PROGN (echivalentã cu grupul begin-end din Pascal) se foloseºte
foarte adesea în conjuncþie cu predicatele relaþionale deoarece are rolul de a grupa
expresiile ce trebuie executate dupã operaþia de testare.
Exemplu:
if (= ENTITATE “LINE”)
(progn
(setq PT1 (getpoint “\n Start point:”))
(setq PT2 (getpoint “\n End point:”))
(command “LINE” PT1 PT2)
185 PROGRAMAREA APLICAÞIILOR CAD
)
(progn
(setq PT1 (getpoint “\n Centrul cercului:”))
(setq RAZA (getdist “\n Raza cercului:”))
(command “CIRCLE” PT1 RAZA)
)
În AutoLISP tehnicile de ciclare au la bazã funcþiile REPEAT ºi WHILE.
Sintaxa acestora este:
(repeat NUMBER EXPRESIA1 EXPRESIA2…)
(while TESTexpr EXPRESIA1 EXPRESIA2…)
Exemplul 1:
(setq M 2 N 10)
(reapeat 10
(setq M (+ 2 M))
(setq N (+ 5 N))
)
Rezultatul returnat este 60.
Exemplul 2:
(setq M 2 N 10)
(while (<= N 10))
(setq N (- N 1))
(setq M (+ 5 M))
Rezultatul returnat este 52.
8.2.7. Funcþii de citire (INPUT)
În afarã de funcþia GETPOINT, prezentatã anterior, existã ºi alte funcþii de
citire destinate altor tipuri de date cum ar fi: date numerice, ºiruri alfanumerice ºi
variabile de sistem. În principal, citirea datelor în AutoLISP se realizeazã cu funcþii
de tip GET ce au sintaxa asemãnãtoare cu funcþia GETPOINT. Principalele funcþii
de citire sunt prezentate în tabelul 8.3:
Exemple:
; Definirea unei comenzi AutoCAD pentru calculul
volumului unui cilindru
; volumcil.lsp
(defun C:volcil (/ R H)
(setq R (getreal “\n Specificaþi raza cilindrului:”)
H (getreal “\n Specificaþi înãlþimea cilindrului:”)
)
186 BAZELE CAD
(prompt “\n Volumul cilindrului este:”)
(* H (* pi (* R R))) ; Relaþia de calcul a volumului
; Sfârºitul rutinei
)
Pe baza funcþiilor de citire a punctelor (getpoint) ºi a unghiurilor (getangle), în
conjuncþie cu funcþiile INPUT descrise anterior, se folosesc funcþiile INITGET ºi
GETKWORD.
Funcþia INITGET permite programatorului sã iniþializeze variabile în urmãtoarea
expresie GETXXX cu valori numai dintr-o listã de “cuvinte cheie”, care vor fi
astfel singurele inputuri valide. Toate funcþiile GETXXX (cu excepþia GETSTRING)
rãspund modului de control stabilit prin INITGET. Sintaxa funcþiei este:
(initget [mod] [keywords])
Primul argument, mod, este un întreg care poate avea diverse valori care
corespund diferitelor moduri de control ce au semnificaþiile date în tabelul 8.4.
Funcþia GETKWORD este utilizatã pentru introducerea datelor sub formã de
187 PROGRAMAREA APLICAÞIILOR CAD
cuvinte cheie, specificate anterior printr-o funcþie INITGET. Funcþia GETKWORD
acceptã numai ºiruri de caractere. Dacã valoarea introdusã corespunde unui cuvânt
cheie, atunci acesta este returnat, în caz contrar apare mesajul “Invalid option
keyword” ºi se repetã funcþia pânã când se introduce o valoare validã.
Exemple:
Command: (initget (+ 1 2 4))
(setq NUM (getint “\n Introduceþi o valoare pozitivã”)) ¿
Value must be positive and nonzero
Introduceþi o valoare pozitivã: 0 ¿
Value must be positive and nonzero
Introduceþi o valoare pozitivã: 10 ¿
10
8.2.8. Manipularea entitãþilor
O categorie de instrucþiuni inexistentã în limbajele de programare
convenþionalã este aceea referitoare la manipularea ºi crearea sau ºtergerea de
entitãþi în baza de date CAD. Principalele funcþii din aceastã categorie sunt
sistematizate în tabelul 8.5.
188 BAZELE CAD
191 ANIMAÞIA GRAFICÃ COMPUTERIZATÃ
9
ANIMAÞIA GRAFICÃ COMPUTERIZATÃ
Animaþia este un proces în care iluzia miºcãrii este realizatã prin crearea ºi
afiºarea unei secvenþe de imagini succesive într-un interval de timp suficient de
scurt.
Principiul de animare este cel inventat la începuturile cinematografiei.
Animatorul deseneazã o secvenþã de imagini, care reprezentate succesiv, produc
iluzia miºcãrii reale. Generarea imaginilor nu ia în considerare legile fizicii, ci doar
necesitatea creãrii iluziei de miºcare.
Animaþia pe computer însã poate incorpora ºi anumite aspecte ce þin de legile
fizice (aspecte cinematice, dinamice, inerþiale etc.) ºi, în acest caz, se numeºte
simulare graficã. Simularea este o extensie a modelãrii în lumea ºtiinþei ºi ingineriei
care de multe ori ajutã la o mai corectã interpretare a rezultatelor teoretice obþinute.
Exemple: simularea evoluþiei furtunilor, animarea expresiilor faciale (prin modelarea
muºchilor ºi a posibilelor lor modificãri de formã), simularea nuclearã etc.
Animaþia pe computer pãstreazã principiile animaþiei convenþionale, auto-
matizând în schimb unele etape din proces.
Etapele creãrii unui film animat sunt:
1. Keyframe - crearea imaginilor care indicã secvenþele cheie ale animaþiei.
2. Inbetweening - este interpolarea între douã keyframe-uri consecutive.
Pentru o animaþie de calitate sunt necesare 24 scene/sec. Deci, dacã miº-
carea între douã keyframe-uri consecutive dureazã n secunde, rezultã cã
sunt necesare 24 n imagini intermediare.
3. Testare linii - este o etapã în care se face o animare utilizând numai
contururile pentru verificarea continuitãþii miºcãrii.
192 BAZELE CAD
4. Colorarea - dupã corecþiile care se impun în urma etapei a 3-a se coloreazã
“celulele” delimitate de linii. În acest mod se obþine impresia de “solid” ºi
substanþã.
Existã trei tehnici de animaþie a imaginilor computerizate:
1. Animaþie bazatã pe memoria de pixeli ai ecranului.
Aceasta foloseºte imagini statice, în care pixelii nu-ºi schimbã valoarea din
memorie, ei sunt doar citiþi ºi afiºaþi într-o anumitã succesiune. Este o metodã
rudimentarã, la care pot interveni probleme în legãturã cu pixelii ocupaþi de douã
imagini diferite, ºi care ar trebui sã aibã, deci, douã valori diferite.
2. Playback în timp real.
Este cea mai popularã formã de animaþie. Cadrele sunt generate unul câte unul
în prealabil, fãrã restricþii de timp ºi salvate ca atare. La vizionare ele sunt rulate în
ordine, de aceastã datã cu frecvenþa de animaþie, de exemplu, de 24 cadre/sec.
3. Animaþia în timp real.
Constã în prezentarea cadrelor pe mãsurã ce sunt calculate. Efectul de animaþie
este, de multe ori, condiþionat de timpul de calcul necesar pentru un cadru, care
este mai mic sau egal cu perioada de vizionare (în cazul obiºnuit, 1/24 s).
9.1. Metode de obþinere a cadrelor
Acestea se referã la modalitãþile de obþinere a cadrelor ce compun prezentarea
animatã. În principal, poate fi vorba de prelucrare graficã (tehnica KeyFrame) sau
o prelucrare mai complexã pentru obþinerea unui înalt grad de realism.
9.1.1. Metoda “keyframe” (cadre cheie)
Este o extensie a tehnicii similare pentru animaþia convenþionalã din cinema.
Pornind de la existenþa cadrelor cheie, problema care se pune este aceea de a
obþine cât mai automatizat ºi precis cadrele intermediare. Tehnicile grafice
computerizate oferã douã metode de obþinere a cadrelor intermediare:
• prin interpolarea formelor grafice;
• prin parametrizarea imaginilor.
Prima tehnicã utilizeazã algoritmi de interpolare liniari sau neliniari. Sunt
preferaþi algoritmii neliniari care pot încorpora dinamicitate ºi continuitate fireascã
a miºcãrii.
În modelul parametrizat, cadrele corespund cu diverse valori asociate
parametrilor de poziþie ºi/sau formã. Aceste valori sunt interpolate ºi se obþin astfel
imaginile intermediare, care se salveazã separat pentru animaþie. Interpolarea se
face fãrã sã se þinã cont de legile fizicii, ci doar de criteriul ”realisticã”.
193 ANIMAÞIA GRAFICÃ COMPUTERIZATÃ
9.1.2. Metoda simulãrii
Aceastã tehnicã se bazeazã pe legile fizicii care controleazã miºcarea obiectelor
ce se animeazã. Legile care guverneazã miºcarea sunt formulate ºi rezolvate prin
metode matematice mai mult sau mai puþin automatizate. În acest fel miºcarea
este descrisã algoritmic, iar cadrele care compun animaþia sunt generate toate
dupã aceeaºi procedurã, fãrã a mai defini mai întâi cadrele cheie.
Un cadru este obþinut prin substituirea unei valori t în soluþia ecuaþiilor de
miºcare, dupã care poziþia ºi configuraþia obiectelor sunt recalculate. Pentru un
anumit interval de timp Dt se calculeazã o secvenþã ce poate include cadre.
Avantajele acestui tip de animaþie sunt:
• este versatil - odatã conceput modelul, este posibil sã se imagineze o
multitudine de situaþii de miºcare;
• produce o animaþie realisticã.
Din pãcate, determinarea legilor fizice care controleazã miºcarea este o
problemã complexã ºi mare consumatoare de timp de calcul, ceea ce deocamdatã
face dificilã simularea în timp real.
9.2. Tehnici de obþinere a cadrelor
Pentru obþinerea cadrelor cheie ºi a celor intermediare, softurile specializate
pe animaþia graficã a imaginilor utilizeazã o serie de tehnici de construcþie a miºcãrii
relative a obiectelor scenei, care cuprind:
• definirea de traiectorii;
• utilizarea de “imagini fantomã”;
• definirea reperelor asociate obiectelor (puncte-pivot);
• legãturi cinematice;
• deformarea obiectelor;
• metamorfozare;
• neregularitãþi spaþiale;
• animarea personajelor;
• senzaþia de miºcare prin imagini “ºterse”;
• simularea dinamicii miºcãrii.
Aceste tehnici se regãsesc ca atare în softul de animaþie 3D Studio MAX, dar
sunt comune, într-o formã sau alta, pentru toate aplicaþiile din aceastã categorie.
a) Definirea traiectoriilor
Deplasarea obiectelor se realizeazã de-a lungul unei traiectorii sau traseu,
care se defineºte printr-o curbã ce poate fi rectilinie sau oricare altã formã (inclusiv
194 BAZELE CAD
curbe sintetice Bezier, B-Spline etc.). De regulã, se folosesc curbe Bezier definite
prin punctele de control ce corespund fiecãrui cadru cheie.
b) Utilizarea imaginilor fantomã
Tehnica imaginilor fantomã se foloseºte, de regulã, pentru realizarea cadrelor
intermediare din jurul unui cadru cheie ºi constã în afiºarea în aceste cadre a unor
copii “fantomã” ale obiectului animat sub formã de cadru de sârmã sau contur
umbrit. În acest fel se poate ilustra efectul unor miºcãri potenþiale ale obiectului
respectiv cum ar fi: rotiri, deplasãri, scalãri etc. (fig. 9.1) .
c) Puncte pivot
Fiecare obiect dintr-un film animat pe computer are asociat un reper de
coordonate (în 3D Studio MAX – puncte pivot). Orice transformare (deplasare,
scalare, rotire etc.) se aplicã mai întâi reperului asociat, dupã care este aplicatã ºi
obiectului. Ca atare, este foarte importantã alegerea acestor puncte pivot, deoarece,
miºcarea obþinutã va fi întotdeauna raportatã la acestea (de exemplu, prin rotirea
obiectului, în funcþie de pivotul ales, se poate obþine o miºcare de rotaþie sau numai
o rotaþie proprie).
d) Legãturi cinematice
În multe situaþii animaþia implicã miºcarea corelatã a unui lanþ de obiecte între
care existã restricþii relative de miºcare. De exemplu, dacã se doreºte animarea
miºcãrii braþului superior al unui personaj, trebuie sã se þinã seama de relaþia braþ-
antebraþ-mânã-degete ºi sã se respecte ierarhia miºcãrilor.
În aceste cazuri, softurile oferã facilitãþi de definire a unor lanþuri ierarhice
de miºcare, pe principiul pãrinte-copil. Semnificaþia acestei relaþii este aceea cã
orice miºcare a obiectului pãrinte se transmite neschimbatã ºi obiectului-copil, în
timp ce miºcãrile impuse direct obiectului descendent nu se transmit întotdeauna ºi
obiectului-pãrinte. Existã totuºi situaþii în care acest lucru se întâmplã ºi atunci se
calculeazã cinematica inversã a lanþului cinematic (fig. 9.2).
Fig. 9.1.
195 ANIMAÞIA GRAFICÃ COMPUTERIZATÃ
e) Deformarea obiectelor
Problema simulãrii deformãrii obiectelor în timp real este
foarte dificilã, dacã se doreºte respectarea legilor fizice de
deformare. În softurile de animaþie, acest lucru se realizeazã
pentru obiecte 2D ºi 3D pe cale intuitivã, folosind conturul
care defineºte obiectul. În 3D, acest contur este o structurã
WIREFRAME echivalentã, care se poate deforma cu
metodele obiºnuite din modeloarele geometrice. În acest fel,
cadrele care simuleazã deformarea se obþin pe baza
transformãrii inverse, WIREFRAME deformat, obiect
deformat.
f) Metamorfozarea
O altã tehnicã des întâlnitã în animaþia computerizatã este
metamorfozarea. Aceasta este utilizatã pentru animarea
transformãrii unui obiect în alt obiect. Algoritmul de metamorfozare se bazeazã, de
asemenea, pe structuri WIREFRAME, asociate celor douã obiecte. Între punctele
cheie ale structurii de pornire ºi punctele cheie ale structurii þintã se stabileºte o
corespondenþã binunivocã. În acest scop softurile posedã facilitatea de definire
liberã a poziþiilor pentru fiecare punct cheie, atât în structura iniþialã cât ºi în structura
þintã. Dupã definirea acestora ºi a corespondenþelor, metamorfozarea se reduce la
o operaþie de deformare a obiectului iniþial, prin deplasarea punctelor cheie, pânã
se suprapun peste punctele cheie þintã.
g) Neregularitãþile spaþiale
Neregularitatea spaþialã constã în definirea în spaþiul miºcãrii a unui efect de
deformare care se produce automat asupra obiectelor care traverseazã zona
respectivã. Efectul acestui instrument depinde de poziþia ºi orientarea obiectului în
momentul traversãrii zonei, în raport cu poziþia neregularitãþii definite. În funcþie de
tipul de deformare ales, obiectul poate sã se unduiascã, sã se dezintegreze, sã se
“topeascã” local, sã se sfãrâme în bucãþi etc.
h) Animarea personajelor
Deseori, scenele animate cuprind miºcarea unor personaje definite anterior
printr-un ansamblu de obiecte ce descriu forma ºi trãsãturile. Personajul poate fi
un model uman, un animal, un robot, sau orice al obiect. Noþiunea de “personaj”
implicã personificarea acelui obiect prin crearea efectului de “obiect viu”, care
poate dansa, râde, alerga etc.
i) Simularea neclaritãþii în miºcare
Pentru a crea efectul de vitezã a corpurilor animate, se utilizeazã tehnici de
randare multiplã, care oferã o imagine “ºtearsã” pe direcþia de deplasare. Tehnicile
Fig. 9.2.
196 BAZELE CAD
de randare se pot aplica numai obiectului în miºcare sau întregii scene (atunci când
se doreºte crearea senzaþiei de miºcare ºi a “videocamerei”). De obicei, parametrii
de reglare a gradului de neclaritate se calculeazã în raport cu durata efectivã a
unui cadru (de exemplu, dacã pe durata de vizionare a unui cadru, obiectul ocupã
poziþii succesive diferite în spaþiu, atunci randarea multiplã se realizeazã pentru
poziþiile succesive ocupate de obiect în acest interval).
j) Simularea dinamicii obiectelor
Metoda de simulare dinamicã ia în considerare un sistem de parametri ai cadrelor
care rezultã din calculul proceselor fizice din lumea realã. Utilizarea dinamicii permite
obþinerea de miºcãri realiste pe baza proprietãþilor fizice ºi a forþelor care acþioneazã
asupra obiectelor în miºcare.
În animaþia computerizatã simularea dinamicã se poate realiza în douã ipoteze:
ipoteza solidului rigid care presupune utilizarea teoriei din dinamica corpurilor rigide
(sistemele multicorp), respectiv ipoteza solidului deformabil pentru care se utilizeazã
teoria dinamicii sistemelor de corpuri deformabile.
209 CAD - CAM ªI ROBOTICÃ
b) Faza de simulare / programare / transfer
În aceastã fazã se parcurg urmãtoarele etape:
• generarea traiectoriei - cuprinde definirea curbelor pentru fiecare
controller asociat articulaþiilor robotului sau celorlalte axe, astfel încât sã
se realizeze sarcina consideratã la parametrii impuºi (limite geometrice,
vitezã, forþã etc.);
• simularea - cuprinde deplasarea pe ecran a tuturor elementelor mobile ale
celulei în raport cu comenzile definite, în scopul verificãrii vizuale a bunei
funcþionãri;
• analiza rezultatelor simulãrii - se referã la detectarea coliziunilor, timpul
de lucru realizat, diagrame cinematice în fiecare articulaþie etc.;
• optimizarea traiectoriilor ºi a poziþiilor relative ale elementelor celulei
robotizate - cuprinde toate operaþiile de modificare a poziþiilor relative ºi
traiectoriilor alese iniþial cu scopul satisfacerii tuturor restricþiilor ºi a eliminãrii
deficienþelor constatate la simulare;
• etalonarea - este o etapã în care se realizeazã o corespondenþã clarã
între geometria, cinematica ºi dinamica simulatã ºi parametrii similari ai
celulei reale. Existã mai multe nivele de etalonare:
- etalonarea geometricã a robotului ºi a miºcãrii acestuia;
- etalonarea sculei ºi a miºcãrii acesteia;
- etalonarea mediului ce cuprinde celelalte elemente ale celulei;
• interfaþarea cu celula de fabricaþie realã - este etapa în care se
realizeazã transferul traiectoriilor concepute ºi simulate cãtre controller-ul
celulei robotizate în limbajul de programare al robotului.
208 BAZELE CAD
10.2.3. CATIA-Robotics
CATIA - este singurul sistem CAD major de pe piaþã care ºi-a dezvoltat un
modul propriu puternic de CAD-Roboticã, denumit CATIA-Robotics. Toate celelalte
sisteme CAD-Roboticã importante sunt dezvoltate independent de sistemele CAD
ºi, ca atare, comunicarea cu acestea se realizeazã prin fiºiere cu format neutru
(IGES, STEP etc.).
Conceptul promovat de CATIA-Robotics este denumit Fabricare Virtualã ºi
cuprinde douã faze: faza de concepþie ºi faza de simulare / programare / transfer.
a) Faza de concepþie
Faza de concepþie îndeplineºte “funcþia robot” descrisã anterior. Pentru aceasta
trebuie parcurse urmãtoarele etape:
• definirea mediului - în cadrul acestei etape se modeleazã complet
geometria perimetrului în care piesa ºi robotul vor fi plasaþi, inclusiv modurile
de fixare, sculele, traductorii precum ºi orice altã componentã care participã
la funcþionarea celulei robotizate;
• definirea robotului - cuprinde modelul geometric al acestuia, împreunã
cu scula pe care o deplaseazã în spaþiul de lucru;
• definirea controller-ului - cuprinde modelul sistemului electronic de
generare a traiectoriilor parcurse de robot, care controleazã diferitele
elemente de acþionare ale robotului;
• definirea axelor externe de miºcare - cuprinde modelarea geometricã a
tuturor celorlalte elemente ale celulei aflate simultan în miºcare controlatã:
conveioarele, mesele rotative, diverse axe de translaþie etc.
Reprezentarea
mediului
Restricþii de
funcþionare
Reprezentarea
sarcinii
Performanþele
robotului
Reprezentarea
robotului
Sinteza celulei
Simulare graficã
Programare
Fig. 10.5.
207 CAD - CAM ªI ROBOTICÃ
• generarea de traiectorii concepute “punct cu punct”, continuu sau prin
curbe;
• facilitãþi de detectare ºi evitare a coliziunilor;
• vizualizarea simultanã de configuraþii multiple;
• simularea ºi analiza miºcãrii: vizualizarea obiectelor în miºcare, vizualizarea
coliziunilor, a poziþiilor, vitezelor, acceleraþiilor, afiºarea timpului etc.;
• facilitãþi de dezvoltare integralã a unei interfeþe “om-maºinã”, în cazul unei
aplicaþii complet noi, pentru descrierea unei cinematici neconvenþionale ºi
validarea unui algoritm nou de evitare a obstacolelor etc.
Odatã realizatã simularea finalã a celulei robotizate, în care utilizatorul a
rezolvat toate problemele sesizate, softurile CAD-Roboticã permit, pe baza
acesteia, generarea automatã a programului computerizat al celulei, care este
utilizabil într-o manierã similarã cu cel de control a unei MCN.
Pentru a asista utilizatorul la obþinerea ºi corectarea programului, sunt prezente,
de asemenea, numeroase facilitãþi suplimentare:
• tablouri de comandã virtuale;
• biblioteci de operaþii (cu subrutine aferente) parametrice;
• limbaj de programare graficã, facilitãþi de editare ºi modificare;
• numeroase module de conversie ce permit transformarea automatã a unei
sarcini simulate grafic în cod de programare a celulei, sau într-un cod
neutru cu scopul unei post-procesãri ulterioare;
• facilitãþi de etalonare ce permit ajustarea funcþionãrii celulei reale în raport
cu funcþionarea celulei virtuale simulate grafic.
Structura ºi problemele principale care sunt rezolvate cu ajutorul aplicaþiilor
CAD-Roboticã sunt urmãtoarele (fig. 10.5):
1. Alegerea robotului:
- tipuri de articulaþii;
- unghiuri între articulaþii ºi capacitatea unghiularã necesarã;
- lungimea optimã a braþelor ºi dimensiunilor prehensoarelor;
- dimensiunile corpurilor rigide ºi elementelor de acþionare.
2. Plasamentul robotului în celula robotizatã:
- poziþie optimã;
- orientare optimã.
3. Optimizarea traiectoriilor:
- ordonarea punctelor intermediare de trecere;
- alegerea configuraþiilor structurale;
- optimizarea legilor de miºcare (prin optimizarea legilor de control);
- evitarea coliziunilor;
- etalonarea traiectoriilor.
206 BAZELE CAD
10.2.1. Funcþia robot
Permite definirea interactivã a subsistemelor componente principale ale
universului procesului: robotul ºi mediul.
a) Modelul robotului
În principiu, este vorba despre realizarea unui model geometric al robotului,
care, de regulã, utilizeazã modele solide poliedrice sau wireframe. Articulaþiile ºi
conexiunile dintre solide sunt descrise sub formã de legãturi bilaterale (translaþie,
rotaþie) ºi/sau numericã (axe, matrice de transformare etc.). Pentru aceasta, se
pot face referiri la mai multe sisteme de coordonate (bazã, sculã, prehensor etc.).
De regulã, softurile CAD-Roboticã sunt prevãzute cu biblioteci de modele
geometrice parametrizate, pentru roboþi de diferite tipuri ºi provenienþe, care au
cinematica ºi caracteristicile inerþiale necesare la analizã, pregãtite.
Pentru structuri complexe (ce includ articulaþii neconvenþionale, concepþii
particulare ale structurii cinematice cu axe neconcurente etc.), utilizatorul dispune
de instrumente care-l ajutã sã defineascã el însuºi modelul geometric al robotului ºi
sã-l adauge în baza de date. Aceste facilitãþi sunt valabile atât pentru noi structuri
de roboþi cât ºi pentru definirea unor componente noi: articulaþii, module de
poziþionare, prehensoare ºi, în general, orice instrument adiþional care poate avea o
cinematicã mai deosebitã.
b) Modelul mediului
Acesta conþine, în general, obiecte modelate solid dispuse în jurul robotului.
Scopul modelãrii mediului este analiza poziþiilor relative a miºcãrilor ºi evitarea
coliziunilor între diversele elemente ale celulei robotizate.
10.2.2. Funcþia “sarcinã” (task)
Aceastã funcþie permite simularea miºcãrii elementelor celulei robotizate, în
timpul realizãrii unei sarcini de lucru precise. Ea necesitã existenþa ºi utilizarea unui
limbaj de programare graficã, þinând cont de relaþiile geometrice evolutive dintre
robot ºi universul sãu. Pentru sintezã, o sarcinã este descompusã în sub-task-uri
sau operaþii elementare, care se specificã, în esenþã, prin relaþiile între solide care
pot fi:
• permanente;
• temporare.
Pentru asistarea utilizatorului la descrierea, optimizarea ºi simularea funcþionãrii
celulei robotizate, softurile oferã diverse facilitãþi, dintre care se amintesc:
• facilitãþi de plasare optimã a obiectelor manipulate, prin intermediul unor
algoritmi de cãutare a soluþiilor de miºcare într-o gamã limitatã de soluþii
posibile;
205 CAD - CAM ªI ROBOTICÃ
În mod similar cu sistemele CAD-CAM, pentru acest gen de aplicaþii, au
apãrut pe piaþã softuri dedicate ce integreazã facilitãþile descrise mai sus. Aceste
sisteme poartã numele de sisteme CAD-Roboticã (CAO Robotique, CAD
Robotics).
La utilizarea acestor instrumente, operatorul poate interveni:
• fie în modul clasic interactiv de la terminalul grafic;
• fie prin limbajul de control al robotului.
Aceste moduri de lucru ridicã o serie de probleme specifice, pe care aplicaþiile
trebuie sã le ia în considerare, dintre care se amintesc:
1. Diferenþa între sistemul real ºi modelul simulat. Aceasta este o problemã
“clasicã” în toate aplicaþiile de modelare. La roboþi acest lucru este cu atât
mai important cu cât dinamica miºcãrii acestora este mai importantã. În
practica industrialã modelul cinematic este, în general, suficient (dacã
jocurile din articulaþii ºi frecãrile nu depãºesc anumite limite).
2. Dificultãþi privind actualizarea în timp real a universului modelat. Acestea
provin mai ales din limitele senzoriale ºi puterea de calcul aferente sistemului
robotizat.
3. Dificultãþi de modelare riguroasã a efectelor datelor negeometrice (forþe,
timp etc.).
4. Dificultãþi de coordonare între mai multe procese (de exemplu, cazul unui
prehensor antropomorf, la care mai multe braþe trebuie sã coopereze în
procesul de prehensiune).
Dintre sistemele comerciale de CAD-Roboticã se pot aminti:
• modulul de roboticã al sistemului CATIA (Dassault Systemes);
• Roboteach (General Motors Res Lab);
• EMULA + GDP (IBM);
• SIMULATOR (Stanfort University);
• ROBOGRAPHICS (Computervision);
• ROBOCAD (Technomatics);
• ACT (LIFIA Grenoble).
Sistemele CAD Roboticã sunt aplicaþii program care includ, de obicei, douã
tipuri principale de facilitãþi:
• funcþia “robot” ce cuprinde toate aspectele modelãrii robotului ºi a
universului;
• funcþia “task” ce înglobeazã tot ce þine de deplasãrile axelor robotului.
Aceste douã funcþii permit descrierea completã a unei aplicaþii de robotizare,
pe baza cãreia se pot soluþiona problemele de sintezã înainte de realizarea ºi
experimentarea fizicã.
204 BAZELE CAD
5. Descrierea ºi stocarea unor baze de date cuprinzând operaþiile pe care le
poate executa robotul (diferite metode de deplasare - punct cu punct sau
continuu, la diferite nivele - nivel acþionare, nivel obiect etc.).
6. Verificãri simple prin simulare - îndeplinire obiective, evitare obstacole,
accesibilitate etc.
7. Interfaþarea limbajului de descriere a task-urilor cu un limbaj de
programare de nivel înalt ºi/sau cu programe de comandã ºi control (de
exemplu, CNC-ul).
8. Optimizarea pe aceastã bazã a executãrii sarcinilor, vis-á-vis de criterii
geometrice sau temporale.
Fig. 10.4.
Sistem CAD
Task-uri
Robot +
univers
Stocare

C
o
m
a
n
d
ã

Interfaþã de
“traducere”
Limbaj
D
e
s
c
r
i
e
r
e
Model simulare
203 CAD - CAM ªI ROBOTICÃ
distincþie clarã între acestea.
Dacã din punct de vedere mecanic, cele douã tipuri de sisteme sunt similare,
se poate spune însã cã utilizarea lor asistatã de calculator marcheazã o diferenþã
netã, atât datoritã uneltelor efectoare ce intervin ºi a universului modelat, cât ºi a
finalitãþii fiecãruia. Aceastã diferenþã a fãcut ca sistemele CAD utilizate pentru
asistare sã fie diferite atât în conþinut cât ºi în funcþionalitate, deºi scopul final în
ambele cazuri este programarea automatizatã a maºinii unelte, respectiv a robotului.
În ceea ce priveºte robotica, existã douã aspecte principale care sunt legate
de teoria ºi practica CAD:
1. CAD-ul roboþilor ºi al posturilor robotizate.
2. Automatizarea programãrii “off-line” a roboþilor, pe baza modelului
geometric al robotului, mediului ºi al obiectului manipulat.
Un robot se distinge de o maºinã clasicã prin capacitatea sa de a executa
sarcini diferite sau aceeaºi sarcinã în mai multe feluri, precum ºi prin capacitatea
sa de a þine seama de variaþiile reale ale mediului pentru execuþia unei sarcini. Ca
atare, la concepþia unui robot nu existã specificaþii foarte precise, deoarece prin
însãºi definiþia sa, robotul are o aplicabilitate universalã (ca exemplu, se vorbeºte
cel mult despre roboþi de sudurã, de asamblare, dar nu se cunoaºte prea mult
despre piesele ce urmeazã a fi sudate, asamblate).
Aceastã dificultate este depãºitã prin fixarea unui numãr minimal de restricþii:
• fie aferente unei clase de aplicaþii;
• fie generale (precizie, vitezã, volum mãsurat, sarcinã transportatã etc.).
Spre deosebire de CAD-CAM, la care numãrul configuraþiilor “mediului” (mai
precis construcþia MCN) este totuºi limitat, în cazul celulelor robotizate aproape
fiecare caz este unic, ºi ca atare, ideea de “biblioteci” cu celule tipizate nu este
întotdeauna fezabilã.
Marele avantaj al CAD-ului care face din el o unealtã aproape indispensabilã
la concepþia roboþilor (pentru care specificaþiile sunt deci întotdeauna incomplete)
este tocmai puterea de simulare a comportamentului unui robot la postul sãu de
lucru ºi posibilitatea de a efectua modificãri fãrã a trece prin faza experimentalã.
Din acest motiv CAD-ul în roboticã are urmãtoarele obiective specifice
(fig. 10.4):
1. Concepþia mecanicã a robotului - utilizarea clasicã a sistemelor CAD.
2. Modelarea geometricã ºi cinematicã a robotului.
3. Modelarea mediului robotului (post de lucru, unelte, obiecte manipulate
etc.).
4. Concepþia postului robotizat (alegerea robotului, optimizarea configuraþiei
postului etc.).
202 BAZELE CAD
• iniþializarea / actualizarea stãrilor maºinii (turaþie, avans etc.).
O problematicã aparte o constituie prelucrarea suprafeþelor curbe deoarece
apar situaþii de interferenþã între sculã ºi zonele concave, probleme specifice de
calcul al poziþiei sculei ºi alegerea traiectoriilor.
În acest scop, se folosesc mai multe metode dintre care cele mai importante
sunt:
• metoda contururilor (fig. 10.3,a);
• metoda intersecþiilor cu plane paralele (fig. 10.3,b);
• metoda traiectoriilor dupã curbe izoparametrice (fig. 10.3,c).
Alegerea unei metode sau a alteia depinde de geometria piesei, a sculei, precum
ºi de numãrul axelor maºinii.
Concluzii:
• Esenþa aplicaþiilor CAD-CAM constã în extracþia datelor din modelul CAD
ºi utilizarea lor în fabricaþie.
• Obiectivul principal al aplicaþiilor CAD-CAM este generarea datelor pentru
maºinile cu control numeric.
• Evoluþia domeniului CAD-CAM conduce cãtre tehnologii la care intervenþia
umanã este din ce în ce mai micã.
10.2. CAD - Roboticã
Totalitatea instrumentelor computerizate utilizate la concepþia, analiza,
optimizarea, simularea ºi programarea celulelor robotizate alcãtuiesc un domeniu
distinct, denumit în literatura de specialitate CAD-Roboticã (în literatura de limbã
englezã “CAD-Robotics” ºi “CAO-Robotique” în limba francezã).
Roboþii industriali reprezintã un domeniu ºtiinþific ce are multe puncte comune
cu aplicaþii industriale exterioare subiectului. Cea mai apropiatã zonã o constituie
cea a maºinilor unelte cu control numeric, a cãror structurã ºi principii de
funcþionare sunt apropiate de cele ale roboþilor industriali. În ciuda acestui fapt,
cele douã tipuri de sisteme mecatronice au avut evoluþii aproape autonome, fiecare
fiind propulsatã din punct de vedere conceptual de propriile necesitãþi ºi restricþii.
Aceastã similitudine a fost deseori descrisã, deºi normele internaþionale fac o
Fig. 10.3.
a) b) c)
201 CAD - CAM ªI ROBOTICÃ
10.1.3. Conceperea procesului tehnologic
Conceperea procesului tehnologic în mod automat are la bazã douã metode:
• directã;
• inversã.
În ambele cazuri se porneºte de la modelele geometrice pentru o piesã iniþialã
ºi una finalã, rezultatul fiind planul de execuþie al piesei.
Algoritmul direct porneºte de la semifabricat cãtre piesa finalã, prin operaþii
de extragere de material.
Algoritmul invers porneºte de la piesa finalã cãtre semifabricat prin operaþii
fictive de adãugare de material.
Cei doi algoritmi nu se aseamãnã prea mult deoarece aspectele ºi raþiona-
mentele geometrice sunt diferite ºi, de regulã, conduc la planuri tehnologice diferite.
De cele mai multe ori, se obþin procedee mai bune prin metoda inversã.
Algoritmii utilizaþi în modulele de concepþie automatã a procesului tehnologic
cuprind urmãtoarele etape:
1. Identificarea aspectelor geometrice importante pentru prelucrare ºi eventual
izolarea lor pe un layer separat. Aceastã formã este accesibilã interactiv
pentru corecþie, completare, editare etc.
2. Definirea geometriei sculei, de obicei, prin selectarea unei scule dintr-o
bibliotecã.
3. Definirea (obþinerea) planului tehnologic ºi definirea interactivã a traiecto-
riilor sculei pentru operaþiile de prelucrare.
4. Afiºarea miºcãrii sculei pe display ºi editarea (ajustarea / completarea /
corectarea) acesteia.
5. Obþinerea fiºierului CL din traiectoriile sculei.
6. Postprocesarea fiºierului CL ºi transmiterea sa cãtre CNC.
Faza cea mai importantã este cea a specificãrii traiectoriei sculei (etapa a
treia) care diferã în funcþie de tipul operaþiei. De exemplu, la strunjire, traiectoria
cuprinde douã ramuri:
• o ramurã activã;
• o ramurã de retragere ºi repoziþionare a sculei.
La frezare, traiectoria poate fi mult mai complicatã, mai ales dacã suprafaþa
frezatã nu este planã.
În urma etapei a treia se obþine un set brut de traiectorii calculate ale sculei.
Ca atare, este necesarã o etapã de editare (etapa a patra) care cuprinde de regulã:
• compunerea traiectoriilor;
• adãugarea de noi traiectorii;
200 BAZELE CAD
Un limbaj foarte popular din aceastã categorie este APT (Automatically
Programmed Tools) sau versiuni ale acestuia cum sunt: ADAPT, EXAPT, UNIAPT,
MINIAPT etc.
Sintaxa acestora este destul de simplã ºi permite descrierea unor entitãþi
geometrice necesare pentru a defini miºcãri ale sculei sau setarea a diverºi parametri
cum ar fi de exemplu turaþia sculei.
Osecvenþã de program care ilustreazã simplitatea programãrii este prezentatã
mai jos:
P
1
= POINT / 3.0, 2.0, -1.0
P
2
= POINT / 5.0, 3.0, -8.0
L
1
= LINE / P
1
, P
2
C
1
= CIRCLE / CENTER, P
1
, RADIUS, 1.5
…………………………
FROM / P
1
GO TO / 3.0, 4.0, -2.0
GODLTA / 2.0, 3.0, 0.0
…………………………
CUTTER / d
Programele pentru unitãþile CNC pot fi realizate pe douã cãi:
• manual - operaþie nu tocmai dificilã;
• automat - pornind de la modelul geometric prealabil al piesei printr-un modul
CAD-CAM, capabil sã genereze automat programul CNC.
Metoda care se extinde actualmente constã în programarea CNC direct din
sistemul CAD, fie prin completarea acestuia cu facilitãþi suplimentare, fie prin
utilizarea unei aplicaþii separate (modul) care genereazã automat programul APT
corespunzãtor pe baza modelului geometric CAD al piesei.
Aceastã metodã, denumitã în literaturã ºi metoda “CAD-CAM”, are câteva
avantaje în raport cu programarea convenþionalã ºi anume:
• afiºeazã miºcarea programatã a sculei în raport cu piesa, prin reprezentarea
graficã a acestora;
• oferã facilitãþi de lucru obiºnuite în mediile CAD cu meniuri ºi interfeþe
grafice cu ferestre ºi casete de dialog;
• permite transferul de date ºi modele geometrice, din diverse sisteme CAD.
Aspectul principal pe care îl înglobeazã aceste aplicaþii se referã la conceperea
automatizatã a procesului tehnologic de execuþie, pornind de la condiþiile concrete
de execuþie (tipul maºinii, felul ºi numãrul sculelor existente ºi disponibile) ºi modelul
geometric al piesei.
199 CAD - CAM ªI ROBOTICÃ
Fig. 10.2.
z
x
y
z
y
x
Pe acelaºi principiu cu limbajele de programare a aplicaþiilor CAD, limbajele
de programare NC se aseamãnã cu cele convenþionale (FORTRAN sau C), în
ceea ce priveºte nivelul de programare ºi tipurile de instrucþiuni, posedã, în plus,
instrucþiuni privind programarea miºcãrilor sculei ºi ale piesei.
a)
b) c)
198 BAZELE CAD
• interpolare liniarã - corespunde unor traiectorii curbe aproximate prin
segmente rectilinii;
• interpolare circularã - corespunde unor traiectorii curbe aproximate prin
segmente circulare.
10.1.2. Controlul MCN cu ajutorul calculatorului
Primele controllere MCU utilizau role electromagnetice, pentru executarea
comenzilor. Din anii ’70, controlul a fost asigurat prin computere specializate -
CNC (Computer Numerical Control). Acestea permit stocarea localã a programului,
precum ºi efectuarea unor operaþii suplimentare mai mult sau mai puþin sofisticate.
Astãzi unitãþile CNC sunt la fel de evoluate ca ºi computerele convenþionale. Ele
posedã tastaturã ºi ecran alfanumeric, sau chiar monitoare grafice care permit
verificãri ale traseului sculei prin vizualizare graficã.
Programul care determinã execuþia unei piese se numeºte programul piesei
ºi conþine transpunerea geometriei unei piese în specificaþii de prelucrare. În mod
obiºnuit, acest program este elaborat manual de cãtre programatori pe baza
desenelor. Rezultatul rulãrii programului piesei îl constituie un fiºier CL (Cutting
Locations), ce cuprinde punctele de control ale traseului sculei.
Fig. 10.1.
MCU
Program
197 CAD - CAM ªI ROBOTICÃ
10
CAD - CAM ªI ROBOTICÃ
10.1. CAD - CAM
10.1.1. Maºina cu control numeric
Elementul principal care a facilitat computerizarea proceselor de fabricaþie
l-a constituit apariþia maºinilor cu control numeric (MCN). În esenþã, MCN cuprind
un controller (MCU - machine control unit) capabil sã citeascã ºi sã interpreteze
un program strict, precum ºi sã comande dispozitivele de acþionare ale maºinii
(fig. 10.1).
La început, programele erau stocate pe bandã de hârtie, dar în sistemele
moderne programul este stocat în controller sau comunicat maºinii unelte de cãtre
un computer prin linii de comunicaþie speciale.
Dispozitivele de acþionare ale maºinii sunt motoare servocomandate, de regulã,
în buclã închisã (cu feedback) pentru compensarea erorilor de poziþionare ºi vitezã.
În maºina unealtã, scula poate avea multiple miºcãri în raport cu piesa ºi invers,
astfel cã MCU controleazã de obicei mai multe “axe”. Din acest punct de vedere
cele mai întâlnite situaþii sunt:
• 2 axe - de obicei, în douã direcþii ortogonale - cazul strungurilor, maºinilor
de gãurit, prese etc. (fig. 10.2,a);
• 3 axe - de obicei, 3 translaþii carteziene - cazul frezãrii, gãuririi în coordonate
etc. (fig. 10.2,b,c);
• 4 axe - 3 translaþii ºi o rotaþie - cazul unor freze combinate cu strunjire;
• 5 axe - 3 translaþii, 2 rotaþii - cazul unor freze sofisticate;
Miºcãrile uzuale posibile într-o maºinã unealtã cu control numeric sunt:
• point to point - caz în care traseul nu conteazã (de exemplu, la gãurire);
211 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
11
TEHNICI AVANSATE DE PROIECTARE
ASISTATÃ DE CALCULATOR
11.1. Sisteme CAD inteligente (KBD)
Sistemele CAD inteligente (denumite în literatura internaþionalã “Knowledge
Based Design” - KBD) reprezintã o nouã tendinþã în CAD cu principalul scop de
a crea reprezentãri de nivel foarte înalt pentru produsele proiectate.
În capitolele anterioare au fost prezentate douã nivele de reprezentare CAD
a produselor:
• reprezentare de nivel jos, bazatã pe entitãþi geometrice simple, linii,
suprafeþe sau solide;
• reprezentare de nivel înalt, bazatã pe entitãþi mai complexe, de tip trãsãturi.
În afarã de geometria propriu-zisã, aceste entitãþi înglobeazã ºi semni-
ficaþia geometriei.
Sistemele CAD inteligente îºi propun crearea de reprezentãri de nivel foarte
înalt prin aplicarea principiilor Inteligenþei artificiale.
Una dintre pãrþile principale ale Inteligenþei artificiale se referã la studiul
reprezentãrilor formale ale cunoºtinþelor (knowledge), care constituie entitãþile
cu care opereazã aceastã ºtiinþã.
Un obiectiv ºtiinþific principal al Inteligenþei artificiale este “crearea de
reprezentãri ale lumii materiale astfel încât o maºinã inteligentã sã poatã ajunge la
noi concluzii despre mediul sãu prin manipularea formalã a acestor reprezentãri”
[BUCHANAN84]. Partea din Inteligenþa artificialã care se ocupã cu dezvoltarea
acestor reprezentãri este cunoscutã în literaturã sub denumirea de Sisteme Expert.
Sistemele Expert lucreazã, de regulã, pe baza unei reprezentãri formale explicite
212 BAZELE CAD
stocatã într-o bazã de cunoºtinþe (sau bazã expert) ce caracterizeazã un anumit
domeniu. Aceste reprezentãri utilizeazã simboluri, spre deosebire de alte reprezentãri
care utilizeazã numere. Simbolurile definesc conceptele din interiorul domeniului,
cât ºi relaþiile dintre acestea.
Extracþia informaþiei din baza de cunoºtinþe este realizatã de componenta
sistemului expert, numitã modul de sintezã. Sinteza implicã procese de cãutare în
baza de cunoºtinþe cu scopul de a identifica elementele potrivite pentru îndeplinirea
unui obiectiv (de exemplu, pentru optimizarea parametrilor unui proiect).
Baza de cunoºtinþe este dezvoltatã printr-un proces de achiziþie de cunoºtinþe.
Aceasta constã în transferul de cunoºtinþe privind modul de rezolvare a problemelor,
dinspre o sursã de expertizã cãtre un program. Acest proces poate fi realizat în
mai multe moduri, dintre care, cel mai utilizat, este deducerea cunoºtinþelor
(knowledge elicitation) printr-un studiu sistematic al comportãrii sistemului.
Principiul de funcþionare al unui sistem expert este ilustrat în figura 11.1.
11.1.1. Reprezentarea cunoºtinþelor
În domeniul Inteligenþei artificiale existã numeroase tipuri de reprezentare a
cunoºtinþelor. Cele mai importante, aplicate în CAD, sunt: sisteme de producþie,
cadre, grafuri ºi reþele, reþele neuronale ºi sisteme “fuzzy”.
a) Sisteme de producþie
În cadrul acestei reprezentãri, cunoºtinþele sunt înregistrate sub formã de
perechi premizã-acþiune denumite reguli de producþie. Acestea au forma generalã:
IF (combinaþie de condiþii)
THEN (extragerea unei concluzii sau o acþiune)
De exemplu, o “regulã de producþie” care poate fi aplicatã în cazul unui
ansamblu ºurub-piuliþã ar putea fi:
IF (ºurub de miºcare) AND (sarcinã mare) AND (oþel rezistent)
THEN (filet trapezoidal)
Aceastã regulã poate fi introdusã într-o bazã de cunoºtinþe, împreunã cu alte
reguli, cum ar fi:
IF (aplicaþia este un cric)
THEN (ungerea este cu unsoare consistentã)
Utilizator
Modul de
sintezã
Bazã
expert
Achiziþie de
cunoºtinþe
Sursã de
expertizã
Fig. 11.1.
213 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
În afarã de reguli, sistemele de producþie mai includ ºi date, care permit
formularea concluziilor, cum ar fi:
aplicaþia este cric
b) Sisteme cadru
Sistemele cadru constituie o expresie a conceptului “object oriented
programming” ºi reprezintã cunoºtinþele sub formã de clase de obiecte, organizate
ierarhic pe principiul moºtenirii. De exemplu, “ºurub de miºcare” poate “moºteni”
detalii dimensionale de la o clasã superioarã “ºuruburi” ºi, în plus, poate moºteni
sistemul de notare / simbolizare de la clasa “piese normalizate”.
c) Reþele asociative
O altã formã de reprezentare a cunoºtinþelor o constituie reþelele asociative, în
care diferitele clase de obiecte sunt legate între ele printr-o reþea ce defineºte
relaþii între diferitele pãrþi componente. Un exemplu de reprezentãri tip reþea
asociativã este prezentat în figura 11.2.
d) Reprezentare hibridã
În aplicaþiile CAD inteligente (Knowledge Based Design - KBD) se utilizeazã,
de regulã, combinaþii între diversele reprezentãri. De exemplu, se utilizeazã cadre
pentru descrierea componentelor ºi reguli de producþie pentru descrierea domeniului
de cunoºtinþe. În timp ce domeniul de cunoºtinþe va rãmâne neschimbat,
componentele pot fi altele de la o evaluare la alta ºi ca atare, baza de cunoºtinþe
rãmâne valabilã ºi dupã schimbarea regulilor.
e) Reþele neuronale
Metodele de reprezentare a cunoºtinþelor prezentate anterior realizeazã o
reprezentare de tip explicit a domeniului. O altã metodã de reprezentare este cea
Roatã
Fuzetã
Automobil
Suspensie
independentã
Caroserie
Oþel
A
N
S
_
D
IN
FÃCUTÃ_DIN
FÃCUTÃ_DIN
P
IE
S
Ã
_
D
IN
P
A
R
T
E
_
D
IN
Fig. 11.2.
SOLICITATÃ_DIN
ANS_DIN
S
O
L
IC
IT
A
T
Ã
_
D
E
214 BAZELE CAD
a reþelelor neuronale, care realizeazã o reprezentare implicitã a unui comportament
prin intermediul unui obiect inteligent (program) capabil sã se autoadapteze în
raport cu factorii de influenþã exterioarã.
Reþeaua neuronalã se compune dintr-un numãr de elemente simple de calcul,
denumite neuroni, aranjate în straturi (fig. 11.3). Existã un strat de neuroni de
intrare, unul de ieºire ºi unul sau mai multe straturi interne, denumite straturi ascunse.
Fiecare neuron primeºte un semnal ponderat de la neuronii din stratul precedent,
într-o schemã care imitã neuronii legaþi prin sinapse în creierul uman.
În forma finalã, reþeaua neuronalã reconstituie o lege de generare a semnalelor
de ieºire pe baza celor de intrare. Aceastã lege de transmitere reflectã “experienþa”
dobânditã de reþea într-un proces de “instruire” anterioarã. În cadrul acestui proces,
reþeaua este confruntatã cu un mare numãr de seturi de semnale de intrare ºi
semnalele de ieºire corespunzãtoare. Pentru fiecare set de intrare reþeaua calculeazã
niºte semnale de ieºire pe care le confruntã cu semnalele aºteptate. Dacã existã
diferenþe, se modificã algoritmic ponderile aplicate semnalelor interne, pentru
modificarea transmiterii în sensul anulãrii acestor diferenþe, dar pãstrându-se în
acelaºi timp funcþionarea reþelei pentru seturile testate anterior. Atunci când nu se
mai poate modifica o pondere, fãrã alterarea experienþei anterioare, înseamnã cã
reþeaua este prea micã ºi mai trebuie adãugaþi neuroni ascunºi care sã facã posibile
sinapse suplimentare ale cãror ponderi pot fi adaptate dupã nevoi. Evident, o reþea
Fig. 11.3.
Neuroni
I
e
º
i
r
i
I
n
t
r
ã
r
i
Strat
input
Strat
ascuns
Strat
output
215 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
are capacitatea de adaptare cu atât mai mare cu cât posedã mai mulþi neuroni ºi
deci mai multe sinapse.
Reþelele de neuroni pot fi instruite pentru a “învãþa” relaþii simple (de exemplu,
dependenþa dintre numãrul de rotaþii ale unui rulment ºi sarcina dinamicã admisibilã),
dar ºi relaþii complexe, cum ar fi recunoaºterea unor forme grafice pe ecran.
e) Sisteme “fuzzy”
În exemplul de regulã de producþie prezentat la punctul (a), una dintre clauze era:
IF … (oþel rezistent) …
În proiectare sunt foarte frecvente cazurile în care proprietãþile unui obiect
sunt apreciate prin noþiuni vagi. Un exemplu tipic îl constituie rezistenþa la solicitãri,
apreciatã, de regulã, prin raportare la o tensiune admisibilã. Totuºi, dacã de pildã un
oþel are tensiunea admisibilã s
a
= 100 MPa, nu se poate afirma foarte cert cã oþelul
cu 99 MPa este un oþel slab, iar cel cu 100 MPa este un oþel tare. În realitate
inginerii sunt obiºnuiþi sã facã aprecierile într-un mod mai flexibil, bazat pe frontiere
definite vag. În figura 11.4 este prezentatã o diagramã care exprimã gradul de
certitudine asupra rezistenþei unui oþel, într-un tip de raþionament des întâlnit în
proiectare. Astfel, se considerã urmãtoarele situaþii:
• s
a
= 0…50 MPa - oþelul sigur nu este rezistent;
• s
a
= 50…100 MPa - existã un grad de incertitudine asupra rezistenþei
oþelului (mãsurat printr-un coeficient de incertitudine cu valori între 0 ºi 1);
• s
a
> 100 MPa - oþelul sigur este rezistent.
Sistemele “fuzzy” reprezintã seturi de obiecte definite într-un mod vag (fãrã
frontiere clare). Astfel, unele obiecte pot face parte sau nu dintr-o categorie, dar
existã ºi obiecte care sunt doar “parþial” membre ale unei categorii.
Frontierele vagi nu se exprimã prin numere ci prin domenii, de exemplu,
50 100 150 200 s
a
Oþel
rezistent
1
0
Fig. 11.4.
216 BAZELE CAD
s
a
= 50 - 100 MPa. Aceste domenii poartã numele de numere fuzzy ºi rolul lor
este de a exprima neclaritatea numericã a unei variabile.
Prin exprimarea termenilor unei probleme prin numere fuzzy, poate fi luatã în
considerare neclaritatea unor aspecte. Pentru a se putea opera cu aceste mãrimi,
încã din 1960 a fost definitã logica fuzzy care constituie în prezent un subiect
central în cercetarea ºtiinþificã, având aplicaþii în foarte multe domenii (control,
programare logicã etc.). Existã o algebrã a mãrimilor fuzzy ºi un principiu de
extensie, care permit propagarea variabilelor fuzzy în corpul funcþiilor numerice.
Aceastã tehnicã de inteligenþã artificialã este foarte utilã în automatizarea
unor decizii în proiectarea asistatã de calculator.
11.1.2. Scurtã descriere a sistemelor CAD inteligente
Tehnicile de inteligenþã artificialã prezentate anterior reprezintã instrumentele
principale în dezvoltarea noii generaþii de softuri CAD inteligente (Knowledge Based
Design - KBD). Obiectivul KBD este dezvoltarea unui produs prin tehnici “object-
oriented” bazate pe clase, reguli de producþie etc. Principalele caracteristici ale
aplicaþiilor KBD sunt:
• Permit definirea de clase de piese ºi structuri arborescente de produs pe
baza unor criterii ca: funcþie, familie de piese, proces tehnologic etc.
• Permit definirea masivã de informaþii asociate pieselor sub formã de
atribute. Acestea se pot referi la cote, toleranþe, materiale, relaþii între
diferite piese, greutate, cost, proces tehnologic etc. Aceste atribute sunt
utilizabile prin funcþii de inteligenþã artificialã pentru efectuarea automatã
a unor raþionamente. Atributele pot fi sub formã de expresii matematice,
reguli, relaþii cu alte atribute, întrebãri adresate utilizatorului etc.
• Permit definirea de reguli asociate sub-ansamblelor, ansamblelor ºi
produselor, organizate într-o bazã de cunoºtinþe.
• Modul de lucru este declarativ, adicã atributele ºi relaþiile sunt declarate
într-o ordine neimpusã, ceea ce dã o mare flexibilitate activitãþii utilizatorilor;
• În final se obþine un model generic al produsului ce include ºi un set de
reguli pe baza cãruia se pot realiza rapid variante de proiect final, cu toate
detaliile, în care se respectã regulile din baza expert.
• Regulile încorporate în baza de cunoºtinþe merg pânã la exprimarea
principiilor ºi relaþiilor de adoptare a fiecãrei dimensiuni ºi caracteristici
funcþionale sau tehnologice, de la detaliu la ansamblu.
• Funcþia de modelare geometricã (suprafeþe, solide, trãsãturi etc.) este
prezentã în sistem în mod neschimbat faþã de sistemele CAD obiºnuite,
dar munca de modelare este mult optimizatã ºi automatizatã, ceea ce
conferã sistemelor KBD o productivitate globalã aproape dublã.
217 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
Sistemele KBD sunt deja o realitate în câteva domenii de avangardã, cum ar
fi cele ale aviaþiei ºi automobilelor. Primele aplicaþii de acest gen sunt semnalate la
Böeing ºi Pratt & Whitney. Recent însã, companiile asiatice au lansat investiþii
enorme în dezvoltarea acestui gen de sisteme.
În Europa, pionierii acestor aplicaþii sunt grupurile TECHSPACE AERO (aviaþie)
ºi PSA Peugeot (automobile), care au dezvoltat în comun sistemul KADVISER
[GARDAN99], care funcþioneazã în conjuncþie cu sistemul CAD existent, ca un
complement inteligent pentru formalizare în limbaj natural ºi exploatarea experienþei
organizatã în baza de cunoºtinþe.
Aplicaþiile KBD complete dau rezultate spectaculoase mai ales în zona
proiectãrii variante, unde timpul de lucru se reduce de la timpi de ordinul zilelor la
câteva minute. Acest lucru permite analiza mai rapidã a variantelor, care oricum
respectã din start regulile din baza expert.
11.2. Optimizarea proiectãrii
Utilizarea masivã a sistemelor CAD în activitatea de proiectare a adus
schimbãri importante în însãºi practica de concepþie, prin definirea unor etape noi,
care pânã nu demult nu existau. Acestea au drept scop obþinerea unor proiecte cât
mai complete, atât din punctul de vedere al documentaþiei, cât mai ales din punctul
de vedere al utilizatorilor din aval ai proiectãrii ºi anume proiectanþii de tehnologie.
De asemenea, o parte din aceste tehnici se referã la gradul în care, încã din faza de
proiectare, produsul satisface cele mai înalte exigenþe ale clientului, atât din punct
de vedere calitativ cât ºi al fiabilitãþii. Aceste tehnici ºi recomandãri fac obiectul
unor cercetãri recente în vederea integrãrii lor în sistemele CAD inteligente ºi sunt
prezentate pe scurt în continuare.
11.2.1. Proiectarea pentru execuþie
Proiectarea pentru execuþie presupune aplicarea anumitor reguli compo-
nentelor proiectului, care sã asigure eficienþa (în general, perceputã ca raport preþ
/ efect) procesului de execuþie. Aceste reguli pot pãrea la prima vedere “de bun
simþ” dar foarte adesea sunt neglijate, mai ales în comunicarea dintre sectorul de
concepþie ºi cel de tehnologie.
Practica a demonstrat cã ceea ce face un produs uºor sau dificil de executat
este modul de proiectare constructivã ºi mai puþin modul de proiectare a tehnologiei.
În general, regulile de proiectare pentru execuþie reclamã simplificarea proiectului
constructiv ºi cuprind urmãtoarele aspecte:
218 BAZELE CAD
a) Tipizarea
Tipizarea implicã în esenþã controlul varietãþii componentelor. Indiferent de
diversitatea produselor companiei, la proiectare trebuie sã se facã efortul de a nu
introduce în produs componente noi decât dupã ce ne asigurãm cã nu existã o
componentã proiectatã anterior care ar putea fi utilizatã chiar dacã necesitã mici
modificãri. Este limpede cã ºi tehnologia de execuþie va suferi în acest caz modificãri
minime, în raport cu componenta reutilizatã. Ideea este de a evita ca proiectanþii sã
reinventeze componente care au fost gândite anterior. În acest sens, nu este lipsitã
de importanþã ºi studierea de cãtre proiectanþi a produselor similare de pe piaþã care
le pot dezvãlui studiile concurenþei ºi crea condiþii pentru a obþine un proiect superior.
O altã formã de tipizare constã în conceperea unor componente generice standard
semifinisate, care prin prelucrãri minime pot lua forma unor componente variate.
Aplicarea regulii tipizãrii nu reduce numai timpul de proiectare constructivã
ci ºi timpul de proiectare a tehnologiei ºi gestiunea de stocuri, deoarece mãreºte
numãrul componentelor de acelaºi fel ºi micºoreazã varietatea. Acest lucru
este crucial în cazul unor întreprinderi mari (de exemplu, în Întreprinderea
“Tractorul” Braºov existã proiecte pentru aproximativ 300 de variante de
tractoare, cu zeci de mii de componente), dar este la fel de important chiar ºi
pentru întreprinderile mici.
b) Compatibilitatea funcþionalã a componentelor cu tehnologia de execuþie
Foarte des o componentã este fabricatã într-un anumit mod, deoarece procesul
tehnologic este deja realizat pentru alte componente, ºi nu pentru cã tehnologia
respectivã este cea mai potrivitã. De exemplu, o piesã poate fi mult mai ieftinã
dacã este realizatã numai prin turnare sau prin matriþare, fãrã alte operaþii de uzinare,
rãmânând în acelaºi timp la fel de funcþionalã. Din acest motiv, suprafeþele foarte
finisate trebuie specificate pe desen numai în cazuri absolut necesare. În acest fel,
se impun mai puþine restricþii asupra alegerii procesului tehnologic. Aceeaºi regulã
este valabilã ºi pentru specificarea toleranþelor ºi abaterilor de formã. Proiectantul
trebuie sã-ºi punã problema permanent dacã nu cumva anumite toleranþe sau abateri
pot fi mai “relaxate” ca valori pentru a uºura execuþia.
c) Compatibilitatea formei cu tehnologia
Forma unei piese dicteazã în majoritatea cazurilor alegerea tehnologiei de
execuþie. În schimb, odatã intuitã, ºi tehnologia impune uneori modificãri uºoare ale
formei, care sunt cruciale din punct de vedere tehnologic, dar nu afecteazã
funcþionalitatea componentei. De exemplu, în cazul unei piese matriþate, este foarte
dificil de extras piesa din matriþã, dacã nu se prevãd încã de la proiectare unghiuri
de înclinare uºoarã a pereþilor laterali. Un alt exemplu, piesele injectate, care trebuie
sã nu prezinte muchii excesiv de ascuþite, grosime constantã de material, iar acolo
unde este posibil trebuie proiectate astfel încât extragerea din formã sã se facã rapid.
219 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
În concluzie, proiectantul trebuie sã aibã o culturã minimã în ceea ce priveºte
procedeele tehnologice posibile / disponibile, împreunã cu costurile implicate de
fiecare, durate de timp etc., astfel încât soluþia constructivã pe care o prevede sã
poatã fi executatã rapid, precis ºi eficient.
Toate aceste probleme sunt rezolvate optim într-o echipã de “concurent
engineering” prin dialogul constant care se creeazã între proiectarea constructivã
ºi proiectarea tehnologicã.
11.2.2. Proiectarea pentru asamblare
Noþiunea este consacratã sub denumirea de “Design for Assembley” ºi se
referã la necesitatea de a lua în considerare la proiectare cât de uºor se pot monta
ºi demonta componentele unui produs. Acest aspect este deosebit de important,
atât în ceea ce priveºte asamblarea produsului pe linia finalã de montaj, cât ºi în
ceea ce priveºte operaþiile ulterioare de întreþinere ºi reparaþie.
ªi în acest caz existã câteva aspecte care trebuie luate în considerare în mod
sistematic în cadrul unei companii.
a) Controlul varietãþii
În cazul asamblãrii, este foarte util ca piesele ce se monteazã pentru a se obþine un
produs sã fie de cât mai puþine tipuri. De exemplu, în cazul asamblãrilor filetate, este
bine ca acestea sã se realizeze pe cât posibil cu ºuruburi de acelaºi tip pentru a se putea
utiliza aceeaºi sculã la montare (de exemplu, ºuruburi cu locaº hexagonal sau cu acelaºi
locaº pentru ºurubelniþã). De asemenea, chiar dacã este de acelaºi tip, este foarte util
sã nu se utilizeze o varietate dimensionalã prea mare. Aceasta simplificã alegerea
ºurubului din magazie în cazul asamblãrilor robotizate, simplificã nomenclatoarele de
materiale, ºi de asemenea, simplificã activitatea la magazia de materiale.
Controlul varietãþii se realizeazã chiar ºi prin reducerea gamei de produse
printr-o concepþie raþionalã a acesteia, fãrã a se afecta satisfacerea cerinþelor.
b) Reducerea numãrului de componente
Deºi poate fi privitã ca þinând de controlul varietãþii, nevoia de reducere a
numãrului de componente þine ºi de reducerea operaþiilor de asamblare, care uneori
este considerat factorul care primeazã datoritã preþului de cost mai mare. Din
acest motiv se poate constata o tendinþã de concepere de piese complexe monolit,
care în fapt echivaleazã cu un numãr mare de componente mai simple. În acest fel,
la asamblare, numãrul operaþiilor de manipulare se reduce, ºi ca atare se realizeazã
mai rapid. Un exemplu este dat în figura 11.5, unde se preferã utilizarea unui suport
în formã de U în locul a doi suporþi în formã de L.
c) Proiectarea pentru asamblarea automatã
Odatã cu generalizarea asamblãrii automate, în multe dintre companiile
220 BAZELE CAD
industriale, au apãrut în mod explicit o serie de principii de proiectare în vederea
uºurãrii asamblãrii automate. Respectarea acestor principii este însã binevenitã ºi
în cazul asamblãrii manuale, dupã cum rezultã din cele ce urmeazã:
• Geometria ºi direcþia de montare axialã - majoritatea roboþilor de
asamblare (tip SCARA sau roboþi în coordonate carteziene) realizeazã
bine montarea axialã a pieselor numai pe direcþia verticalã, când greutatea
proprie a piesei o favorizeazã. Chiar ºi în asamblarea manualã însã,
respectarea acestui principiu conduce la creºterea rapiditãþii montajului.
În ceea ce priveºte geometria profilelor pieselor conjugate, cele poligonale
sunt de înlocuit pe cât posibil cu piese cilindrice, la care se eliminã o
operaþie în plus de orientare a piesei înainte de montare. De asemenea,
foarte importantã, în acest caz, este alegerea potrivitã a valorilor
toleranþelor ºi abaterilor de poziþie ºi formã.
• Construcþii “etajate” sau tip “sandwich” - adoptarea acestui tip de
construcþie este foarte avantajoasã în cazul montajului automatizat, deoarece
în acest caz, pentru majoritatea operaþiilor de asamblare, construcþia rãmâne
în aceeaºi poziþie pânã la terminarea montajului, evitându-se în acest fel
operaþii suplimentare de orientare a construcþiei în timpul montajului.
• Fixare simplã - o analizã a modului de fixare a componentelor conduce de
cele mai multe ori la optimizãri în proiect. De multe ori asamblãrile prin
formã pot înlocui asamblãrile filetate, economisind astfel timp la asamblare
ºi micºorând numãrul componentelor. Pe de altã parte însã, trebuie þinut
cont cã astfel de asamblãri sunt dificil de demontat (se deterioreazã uºor),
ca atare utilizarea lor trebuie realizatã cu discernãmânt (fig. 11.6).
Fig. 11.5.
Asamblare
Fig. 11.6.
221 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
11.2.3. Analiza modurilor de defectare ºi a efectelor acestora
Noþiunea este consacratã în literatura de limbã englezã sub denumirea “Failure
Mode and Efect Analysis” - FMEA, iar în limba francezã AMDEC - “Analyse de
la Maintenabilité, Defauts et Evaluation des Consequences” ºi a devenit o operaþie
de rutinã în proiectare, chiar ºi pentru întreprinderile mici. FMEA constituie o metodã
care permite identificarea potenþialelor moduri în care un produs sau proces poate
sã nu îndeplineascã aºteptãrile, precum ºi cauzele acestor situaþii.
Metoda se bazeazã pe o analizã sistematicã realizatã în echipã, pe baza listãrii
tuturor situaþiilor nedorite (defecþiuni), care pot apãrea în legãturã cu toate
componentele produsului. Fiecare defecþiune este apoi analizatã separat conform
unei grile de evaluare cantitativã bazatã pe notare. Grila evalueazã defecþiunea din
punctul de vedere al severitãþii efectului, gradului de incidenþã ºi a posibilitãþii
de prevenire prin detectare.
Analiza se efectueazã pe formulare tabelare ce conþin coloane pentru fiecare
element al grilei de evaluare (fig. 11.7).
Pe prima coloanã se listeazã succesiv toate reperele produsului, în mod
structurat, pe subansamble, urmate fiecare de componentele proprii. Pentru fiecare
reper, membrii echipei identificã ºi noteazã în coloana a doua modurile posibile de
defectare, apoi cauza ºi efectul potenþial. În coloana Control se noteazã maniera
curentã de control (inspecþie) care poate pune în evidenþã defecþiunea. În
urmãtoarele trei coloane se noteazã pe o scarã de la 1 la 10 gradul de incidenþã
posibil, severitatea ºi detectabilitatea defecþiunii prin modul de control curent. Cele
trei note se înmulþesc ºi se obþine astfel gradul de risc (RPN) al defecþiunii respective
(Risc Priority Number). Prin însumarea tuturor valorilor RPN, se obþine cifra globalã
de fiabilitate a produsului. Limita admisibilã pentru o defecþiune, precum ºi limita
maxim admisibilã pentru RPN total sunt dependente de semnificaþia notelor acordate.
În general, se lucreazã cu urmãtorul sistem de notare:
Componentã
/ Reper /
Subansamblu
Mod de
defectare
Cauzã Efect Control Incidenþã Severitate
Detectabili-
tate
Coeficient
de risc
(RPN)
TOTAL
Fig. 11.7.
222 BAZELE CAD
• •• •• Severitate
- nota 1 semnificã o defecþiune minorã, chiar inobservabilã, de exemplu, o
zgârieturã finã pe vopsea, de foarte mici dimensiuni;
- nota 5 semnificã inconfortul clientului la constatarea defecþiunii, poate chiar
o stare de insatisfacþie;
- nota 10 semnificã o defecþiune majorã, cum ar fi o punere în pericol a
operatorului sau încãlcarea legilor statului.
• •• •• Incidenþã
- nota 1 semnificã o incidenþã foarte slabã (defecþiunea nu apare aproape
niciodatã);
- nota 5 indicã o defecþiune care apare ocazional;
- nota 10 corespunde unei defecþiuni care apare în mod sistematic, destul de
des.
• •• •• Detectabilitate
- nota 1 corespunde unui defect care se detecteazã aproape sigur;
- nota 5 corespunde unui defect care nu întotdeauna se detecteazã la timp;
- nota 10 indicã un defect imposibil de detectat ºi care rãmâne deci ascuns.
Cu acest sistem de notare, valoarea RPN maxim admisã pentru un defect
este 100, iar pentru întregul produs de 1000. În cazul în care valorile obþinute depãºesc
limitele admisibile, proiectul trebuie reanalizat ºi îmbunãtãþit. Pentru aceasta,
diagrama FMEA este extrem de utilã, întrucât dã indicaþii precise asupra zonelor
din proiect care trebuie optimizate. Ca atare, se pot formula obiective clare ºi
concrete de reproiectare.
11.2.4. Proiectarea robustã - Modelul Taguchi
În 1989 Taguchi propune pentru procesul de proiectare un model care cuprinde
trei etape:
• proiectarea sistemului;
• proiectarea parametrilor;
• proiectarea toleranþelor.
În conformitate cu acest model, efortul ingineresc trebuie concentrat asupra
etapei de proiectare a parametrilor cu scopul de a se obþine un proiect ROBUST,
adicã insensibil, pe cât posibil, la variaþii normale ale mediului produsului. Factorii
mediului se referã la o mare varietate de condiþii. De exemplu, pentru un automobil
factorii pot fi: calitatea benzinei, calitatea drumului, starea vremii etc. Un proiect
robust este acela al unui produs care opereazã satisfãcãtor într-o gamã mare de
variaþie a factorilor de mediu. În acest scop, Taguchi a introdus noþiunea de
parametri critici de proiectare pentru acei parametri a cãror variaþie influenþeazã
223 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
foarte mult calitatea / funcþionarea produsului.
În principiu, aceºti parametri trebuie controlaþi în proiect prin toleranþe foarte
strânse, în timp ce restul parametrilor trebuie lãsaþi cu toleranþe relaxate pentru a
scãdea costurile.
Variaþiile parametrilor de proiectare ºi ale mediului produsului sunt denumite în
modelul Taguchi zgomot. Zgomotul poate fi de trei categorii:
• zgomot exterior, care include variaþii ale mediului de lucru, de exemplu,
variaþia temperaturii, umiditãþii, materiei prime, factori umani etc.;
• zgomot intern, care include deteriorãri interne datorate uzurii, coroziunii
etc.;
• zgomot al produsului, care cuprinde variaþiile materialului sau ale procesului
de fabricaþie.
Zgomotul exterior nu este controlabil de cãtre proiectant în timp ce zgomotul
intern ºi cel al produsului pot fi influenþate la proiectare. Ca atare, noþiunea de
proiectare robustã se referã la insensibilitatea produsului la zgomotele externe.
Ideea de bazã a proiectãrii robuste este de a selecta pe cât posibil parametri
de proiectare care minimizeazã sensibilitatea la zgomot. Deºi problema se formuleazã
simplu, în practicã este foarte dificil sã se realizeze acest lucru (fiecare cotã este
un parametru, de asemenea tipul de material, condiþiile de fabricaþie, starea
suprafeþelor etc.). Numãrul parametrilor este atât de mare încât este aproape
imposibil sã fie explorate toate combinaþiile posibile.
Pentru soluþionarea acestei probleme Taguchi propune douã tehnici:
• Tehnica maximizãrii raportului semnal-zgomot;
• Tehnica experimentelor.
a) Raportul semnal-zgomot
Acest indicator este foarte utilizat în electronicã ºi telecomunicaþii ºi se defineºte
ca raportul dintre semnalul dorit ºi cel nedorit, denumit “zgomot”, de exemplu
semnalele electrice induse din atmosferã pentru cazul unui radioreceptor. Pentru
evaluare se foloseºte relaþia de calcul
), / log( 20
N
S
µ =
unde s este deviaþia standard, iar µ este media valorilor mãsurate.
În cazul proiectãrii unui arc, de exemplu, pentru minimizarea sensibilitãþii în raport
cu lungimea liberã a arcului, este necesar un arc cu constanta elasticã cât mai micã.
În acest fel o variaþie a lungimii nu modificã prea mult forþa arcului în sistem.
Ideea sensibilitãþii la “variaþii” poate fi aplicatã ºi în fazele incipiente ale
concepþiei, când se selecteazã soluþia dintre mai multe variante. Principiul este
acela de a selecta acea soluþie care poate funcþiona în mai multe configuraþii ºi
224 BAZELE CAD
situaþii sau care poate fi adaptatã uºor la alte condiþii de funcþionare. Un exemplu
în acest sens îl constituie sculele cu funcþionare multiplã sau soluþiile constructive
care permit avioanelor sã funcþioneze ºi atunci când un motor este avariat.
b) Tehnica experimentelor
Raportul semnal / zgomot poate fi explorat pentru un numãr de parametri esenþiali
prin experimente (fizice sau analitice - simulãri). Ceea ce este dificil însã, este
identificarea acelor parametri esenþiali din mulþimea tuturor parametrilor. În timp ce
analiza combinaþiilor posibile este fezabilã pentru un numãr mic de parametri, ea
devine rapid irealistã dacã numãrul acestora creºte, deoarece numãrul total de
experimente este n
p
, unde p este numãrul parametrilor, iar n este numãrul valorilor
considerate pentru fiecare. Pentru aceste cazuri, Taguchi a propus metoda matricelor
ortogonale. Aceasta este o tehnicã statisticã, care permite obþinerea de informaþii
utile, pe baza unui numãr limitat de teste, care implicã însã toþi parametrii.
Matricele ortogonale se obþin prin combinarea unor tabele de testare, în care
pe coloane sunt parametri, iar pe linii combinaþii de valori pentru aceºti parametri.
Parametrii sunt denumiþi factori, iar valorile, nivele. Numãrul de nivele pentru un
parametru este 2 sau 3, iar aranjarea acestora în tablouri se realizeazã urmând
principii statistice. Atunci când doi factori sunt dependenþi, combinaþia lor se
considerã un nou factor, care se analizeazã ca atare. În figura 11.8 se prezintã
matricele ortogonale pentru cazul a ºapte factori pe douã nivele (fig. 11.8,a) ºi
patru factori cu douã nivele (fig. 11.8,b). Acestea prezintã opt, respectiv nouã
combinaþii de parametri care trebuie experimentate, în timp ce pentru o analizã
completã ar trebui luate în considerare toate combinaþiile posibile (pentru primul
caz n
p
= 2
7
= 128, iar pentru al doilea n
p
= 3
4
= 81).
FACTORI Combinaþie
I
II
III
IV
V
VI
VII
VIII
A
1
1
1
1
2
2
2
2
B
1
1
2
2
1
1
2
2
C
1
1
2
2
2
2
1
1
D
1
2
1
2
1
2
1
2
E
1
2
1
2
2
1
2
1
F
1
2
2
1
1
2
2
1
G
1
2
2
1
2
1
1
2
Combinaþie
I
II
III
IV
V
VI
VII
VIII
IX
A
1
1
1
2
2
2
3
3
3
B
1
2
3
1
2
3
1
2
3
C
1
2
3
2
3
1
3
1
2
D
1
2
3
3
1
2
2
3
1
FACTORI
a) b)
Fig. 11.8.
225 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
Metoda Taguchi presupune urmãtoarele etape:
• identificarea factorilor controlabili ºi necontrolabili;
• conceperea tabelelor de testare, separat pentru factorii controlabili ºi cei
necontrolabili, de forma celor din figura 11.8;
• construirea matricei ortogonale a experimentelor prin combinarea tabelelor
de testare pe orizontalã ºi verticalã (fig. 11.9);
• efectuarea experimentelor ce corespund fiecãrei cãsuþe din matricea
ortogonalã, pe orizontalã în tabloul factorilor controlabili ºi pe verticalã în
tabloul factorilor necontrolabili;
• calculul raportului semnal / zgomot pentru fiecare linie a matricei ortogonale.
Exemplu [BEDWORTH91]
Se considerã cazul operaþiei de asamblare dintre un conector ºi un tub de
plastic (fig. 11.10), pentru care se doreºte obþinerea unui efort minim la asamblare
ºi a unei rezistenþe maxime la smulgere.
Pentru aceastã operaþie, au fost identificaþi ºapte factori, dintre care patru au
fost consideraþi controlabili ºi trei necontrolabili, astfel:
C
1
C
2
C
3
C
4
C
5
F
1
F
4
F
3
F
2
Matricea ortogonalã
S / N
F
5
F
8
F
7
F
6
C
1
C
6
C
5
C
4
C
3
C
2
C
1
... C
5
- combinaþii factori controlabili,
C
1
... C
6
- combinaþii factori necontrolabili,
F
1
... F
4
- factori controlabili,
F
5
... F
8
- factori necontrolabili.
Fig. 11.9.
226 BAZELE CAD
• Factori controlabili Nivele (1 - 2 - 3)
A. Strângerea micã medie mare
B. Grosimea micã medie mare
C. Adâncimea de inserþie micã medie mare
D. Aderenþa conector-tub micã medie mare
• Factori necontrolabili Nivele (1 - 2)
E. Durata procesului 24 h 120 h
F. Temperatura 22
o
C 65
o
C
G. Umiditatea relativã 25% 75%
Numãrul total al combinaþiilor posibile de experimentare este 3
4
x 2
3
= 648 de
experimente. Prin metoda Taguchi, numãrul experimentelor necesare a fost redus
la 9 x 8 = 72. Factorii controlabili ºi zgomotul sunt plasaþi în tabele diferite dispuse
pe orizontalã ºi verticalã astfel încât se poate calcula raportul semnal / zgomot
(influenþa factorilor controlabili / influenþa zgomotului asupra forþei de smulgere,
fig. 11.11).
Prin utilizarea acestei metode se poate determina cea mai bunã combinaþie
de variabile controlabile, pentru care se obþine o forþã de smulgere maximã
minimizându-se astfel influenþa zgomotului. În figura 11.12 se prezintã raportul
semnal / zgomot pentru fiecare din cei patru factori controlabili.
d
2
Conector
Tub
d
1
A = d
1
- d
2
F
smulgere
D = % adeziv
B
F
smulgere
C
Fig. 11.10.
227 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
E
F
E x F
G
E x G
F x G
Combinaþii
1
2
3
4
5
6
7
8
9
A
1
1
1
2
2
2
3
3
3
B
1
2
3
1
2
3
1
2
3
C
1
2
3
2
3
1
3
1
2
D
1
2
3
3
1
2
2
3
1
8
2
2
1
2
1
1
19,1
21,9
20,4
24,7
25,3
24,7
21,6
24,4
28,6
7
2
2
1
1
2
2
20,0
24,2
23,3
23,2
27,5
22,5
24,3
23,2
2,6
6
2
1
2
2
1
2
19,6
19,8
18,2
18,9
21,4
19,6
18,6
19,6
22,7
5
2
1
2
1
2
1
19,6
19,7
22,6
21,0
25,6
14,7
16,8
17,8
23,1
4
1
2
2
2
2
1
19,9
19,6
15,6
18,6
25,1
19,8
23,6
16,8
17,3
3
1
2
2
1
1
2
16,9
19,4
19,1
18,9
19,4
20,0
18,4
15,1
19,3
2
1
1
1
2
2
2
9,5
16,2
16,7
17,4
18,6
16,3
19,1
15,6
19,9
1
1
1
1
1
1
1
15,6
15,0
16,3
18,3
19,7
16,2
16,4
14,2
16,1
S/N
(db)
24,025
25,522
25,335
25,904
26,908
25,326
25,711
24,832
26,152
Fig. 11.11.
27,0
26,0
25,0
24,0
27,0
26,0
25,0
24,0
Micã Medie Mare Micã Medie Mare
Micã Medie Mare Micã Medie Mare
27,0
26,0
25,0
24,0
27,0
26,0
25,0
24,0
a) b)
c) d)
Fig. 11.12.
228 BAZELE CAD
11.2.5. Analiza calitãþii produsului
(Quality Function Deployment - QFD)
Calitatea este o noþiune complexã care a fost definitã în standardul ISO ca
fiind ansamblul atributelor unui produs, menite sã satisfacã cerinþele explicite ºi
implicite ale clientului. Ca atare, calitatea unui produs este o noþiune relativã,
dependentã de client ºi de cerinþele acestuia.
“Quality Function Deployment” este o metodã de analizã sistematicã a
soluþiilor constructive ale unui produs din punctul de vedere al calitãþii în
accepþiunea de mai sus.
Principiul metodei se bazeazã pe o sistematizare a cerinþelor clientului (WHAT),
a soluþiilor constructive prin care acestea pot fi îndeplinite (HOW) - CE se cere ºi
CUM se realizeazã. De exemplu, dacã pentru o caroserie cerinþa CE este
durabilitatea, iar CUM poate fi: prin vopsire simplã, antifonare, acoperire galvanicã
etc. În realitate însã, anumite CUM-uri contribuie la realizarea mai multor cerinþe
CE. Pentru a putea analiza corelaþiile între toate cerinþele ºi modurile de realizare
pentru un produs, soluþia este construirea unei matrice în care pe linii se dispun
elementele CE, iar pe coloane elementele CUM. Cãsuþele matricei se marcheazã
sau nu în funcþie de existenþa unei legãturi între calitatea respectivã ºi soluþia
constructivã aferentã celulei. Legãtura poate fi nuanþatã prin diferenþierea
simbolurilor pentru: slabã, puternicã, foarte puternicã (fig. 11.13). Simbolurile pot fi
grafice, dar deseori se folosesc ºi numere, de regulã, utilizând valorile 1, 3 ºi 9.
CUM
C
E
Legãturã
Slabã
Puternicã
Foarte puternicã
Fig. 11.13.
229 TEHNICI AVANSATE DE PROIECTARE ASISTATÃ DE CALCULATOR
Pentru o analizã mai riguroasã, se utilizeazã o ierarhizare a cerinþelor, în funcþie
de prioritatea acordatã: cerinþe primare, secundare sau terþiare. De asemenea,
modurile de realizare sunt asociate ºi cu date cantitative privind metoda respectivã
- CÂT (fig. 11.14).
Prin intermediul diagramei din figura 11.14, calitatea produsului poate fi
optimizatã încã de la proiectare, prin analiza satisfacerii clienþilor pe întreg ciclul
produsului (fig. 11.15).
Rezultatele dintr-un nivel de analizã sunt utilizate ca date de intrare la nivelul
urmãtor º.a.m.d., pânã la sfârºitul ciclului. În mod uzual existã patru nivele de
analizã:
1. Trãsãturi ºi funcþii ale produsului - acestea sunt identificate în faza de
proiectare.
2. Caracteristicile componentelor - corespund fazei de proiectare a detaliilor.
3. Caracteristicile procesului - se identificã în faza de concepþie a procesului
de fabricaþie.
4. Proceduri operative - se referã la conþinutul procedurilor care reflectã
procesele de producþie.
Fig. 11.14.
CUM
C
E
CÂT
P
r
i
n
c
i
p
a
l
S
e
c
u
n
d
a
r
T
e
r
þ
i
a
r
230 BAZELE CAD
Diagramele QFD reprezintã
un tablou cuprinzãtor ºi sintetic
privind calitatea unui produs. Ele
sunt utile atât la analiza proiectelor,
cât ºi pentru instruirea personalului
dupã lansarea produsului în
fabricaþie. Prin adãugarea unor
elemente suplimentare (fig. 11.16)
se permite o evaluare complexã,
care þine cont de produsele similare
ale concurenþei, corelaþia dintre
diverse aspecte (partea triughiularã
din partea superioarã) etc.
În aceastã structurã, diagrama
QFD constituie o abordare holisticã
(mai este denumitã ºi “House of
Quality”) ºi este recunoscutã ca
fiind foarte eficace la eliminarea
slãbiciunilor din ciclul produsului ca
ºi construcþia întregului sistem pe
baza punctelor tari ale produsului.
Fig. 11.15.
CUM
C
E
CÂT
C
E
CÂT
CUM
CUM
C
E
CÂT
C
E
CÂT
CUM
Matricea
de
corelaþie
Cum
Importanþa
Dificultatea
tehnicã
Cât
Competitivitatea
Elemente de
control importante
Importanþa
Matricea de
legãturã
I
m
p
o
r
t
a
n
þ
a
I
m
p
o
r
t
a
n
þ
a
Ce
C
o
m
p
e
t
i
t
i
v
i
t
a
t
e
a
Fig. 11.16.
231 ARHITECTURA SOFTURILOR CAD
12
ARHITECTURA SOFTURILOR CAD
12.1. Nuclee de dezvoltare CAD
La dezvoltarea pachetelor CAD nu se utilizeazã limbajele de programare pentru
realizarea funcþiilor de desenare pentru fiecare tip de entitate ºi nici bibliotecile de
subrutine grafice folosite în grafica asistatã, ci se lucreazã cu biblioteci de subrutine
specializate ce alcãtuiesc aºa numitele nuclee de dezvoltare CAD (graphic kernels).
Într-o industrie atât de competitivã cum este cea a softurilor CAD, dezvoltatorii
nu-ºi risipesc resursele în dezvoltarea de subrutine matematice de calcul, ci se
concentreazã mai ales pe cerinþele utilizatorilor, inovaþii în interactivitate, modelarea
trãsãturilor ºi alte facilitãþi. Existã douã nuclee de dezvoltare CAD care au o largã
utilizare: ACIS ºi PARASOLID. Acestea conþin obiecte (module program ºi
subrutine) care pot fi apelate în limbajele de programare orientate pe obiecte (de
genul C++). Aceste obiecte realizeazã funcþii elementare de modelare CAD ºi
diversitatea lor acoperã toate facilitãþile uzuale în softurile CAD. Lucrând cu acestea,
dezvoltatorii concep doar modul de utilizare al softului (împreunã cu interfaþa graficã)
integrat într-o filosofie de proiectare proprie, bazat pe o anumitã viziune asupra
procesului de proiectare.
Utilizarea nucleelor grafice a devenit foarte importantã deoarece faciliteazã
compatibilitatea ºi transferul de date între pachetele CAD bazate pe acelaºi nucleu
(de exemplu, formatul SAT al nucleului ACIS se regãseºte ca format de transfer în
foarte multe softuri). Avantajul acestora constã în faptul cã sunt întotdeauna “la zi”
cu ultimele versiuni, spre deosebire de standardele de transfer convenþionale care
au o oarecare întârziere în integrarea noilor tipuri de entitãþi.
232 BAZELE CAD
12.1.1. ACIS
ACIS este un nucleu CAD promovat de compania Spatial Corporation,
începând din 1989, care cuprinde mai multe module: ACIS 3D Geometric Modeler,
ACIS Exchange package, ACIS Standard Translator ºi ACIS Deformable
Modelling Component.
Pentru realizarea funcþiilor de modelare geometricã se utilizeazã modulul ACIS
3D Geometric Modeler care este o bibliotecã C++ orientatã pe obiecte, prin care
se pune la dispoziþia dezvoltatorilor de soft CAD un bogat set de operaþii geometrice
pentru construcþia ºi manipularea obiectelor 3D.
ACIS 3D include subrutine de modelare wireframe, surface ºi solid cuprinzând
peste 50 de module componente, dintre care cele mai importante sunt:
• ACIS Blending - pentru realizarea operaþiilor de racordare (cu razã
constantã sau variabilã, diverse tipuri de teºituri pe contur rectiliniu sau
curb etc.);
• ACIS Local Operations - pentru manipularea geometriei locale a unei
entitãþi geometrice, fãrã afectarea topologiei modelului;
• ACIS Precise Hidden Line - pentru operaþiile de “ascundere” a muchiilor
invizibile;
• ACIS Shelling - pentru modelarea pieselor cu pereþi subþiri prin operaþii
offset aplicate feþelor;
• ACIS Space Warping - pentru modificarea dinamicã a unui model într-un
ecran OpenGL. Obiectul este reprezentat cu puncte “handle”, care pot fi
“agãþate” cu mouse-ul ºi modificate ca poziþie, pentru schimbarea formei
geometrice;
• ACIS Advanced Surfacing - pentru crearea de suprafeþe pornind de la un
set de curbe, prin operaþii de interpolare liniarã (skinning, lofting ºi suprafaþã
tip reþea de curbe);
• ACIS Celular Topology - pentru descompunerea unui model în subregiuni
mai mici sau celule cu scopul evaluãrii unor proprietãþi care þin de geometrie
(proprietãþi masice, arii etc.);
• VISMAN (VISualisation MANager) - pentru operaþii de manipulare vizualã
a modelelor. Permite manipularea dinamicã a modelelor 3D wireframe
sau shade.
• ACIS Deformable Modelling Component - include instrumente pentru
crearea ºi manipularea curbelor ºi suprafeþelor în formã liberã, cum ar fi
B-Spline ºi NURBS, cu facilitãþi de editare localã ºi globalã.
Dintre softurile bazate pe ACIS, cele mai importante sunt:
233 ARHITECTURA SOFTURILOR CAD
• AutoCAD and Mechanical Desktop, Autodesk Inc.
• CADKEY, CADKEY Corporation
• IronCAD, Visionary Design Systems
• TurboCAD Solid Modelor, Ashlar Inc.
12.1.2. PARASOLID
PARASOLID este nucleul grafic dezvoltat de cãtre Unigraphics Solutions
Inc. (UGS) în centrul sãu din Cambridge (UK). Primele versiuni au apãrut în 1989
ºi au fost folosite la softurile CAD Unigraphics ºi Solid Edge. De atunci, popularitatea
sa a crescut continuu, fiind astãzi baza celor mai performante softuri existente pe
piaþã. Astfel, în afarã de Unigraphics (pachet utilizat la Böeing, Pratt & Whitney,
General Motors etc.) ºi Solid Edge, se mai pot menþiona ºi alte softuri de înalt
profesionalism: SolidWorks, MicroStation (Bentley), IronCAD (care este singurul
soft ce utilizeazã ºi ACIS ºi PARASOLID), TopSolid, ProDESKTOP etc.
Nucleul grafic din ultimele generaþii pune la dispoziþia producãtorilor de soft
CAD pachetul cu facilitãþile din categoria “Extreme Modelling”, care includ:
• Complex Blending - care permite o gamã largã de combinaþii de entitãþi cu
geometrie complexã prin racordãri;
• Operaþii de manipulare ºi editare a suprafeþelor: adãugare de adâncituri,
gãuri, proeminenþe, grosime (shelling), toate la cel mai înalt nivel de
complexitate;
• Facilitãþi pentru proiectarea semiautomatizatã a matriþelor pentru injecþie
de plastic;
• Modelãri complexe utilizând curbe ºi suprafeþe sintetice: B-Spline ºi
NURBS. Aceste suprafeþe pot fi apoi “croite” prin operaþii de retezare, ºi
apoi asamblate pentru obþinerea de solide prin metoda B-rep;
• Suport pentru modele de dimensiuni mari. Aceste facilitãþi fac posibilã
definirea de modele ce cuprind mii de piese, ale cãror dimensiuni sunt
legate prin restricþii ºi trãsãturi. În acest fel se faciliteazã crearea ºi
managementul bazelor de date pe întreprindere, precum ºi integrarea
sistemelor EDMS în softurile CAD.
12.2. Funcþionalitatea tipicã a softurilor CAD profesionale
Majoritatea softurilor CAD profesionale includ la nivelul versiunilor 2000
facilitãþi de modelare bazatã pe trãsãturi ca tehnicã principalã de modelare
geometricã. Trãsãturile se realizeazã prin tehnici parametrice, pornindu-se de la o
simplã schiþã, care include ca date iniþiale doar topologia modelului. Aceasta se
realizeazã prin miºcãri simple ale mouse-ului dirijat cu mâna liberã în sensul obþinerii
234 BAZELE CAD
unei schiþe 2D de forma doritã, fãrã a se þine cont de dimensiunile reale sau scara
de reprezentare. În etapa urmãtoare se precizeazã geometria trãsãturii prin
specificarea dimensiunilor concrete ale schiþei 2D. Modelul geometric complet al
piesei se alcãtuieºte, în etapa urmãtoare, prin definirea mai multor trãsãturi într-o
structurã ierarhicã. Odatã finalizate, modelele geometrice ale pieselor sunt salvate
pe disc, pentru a putea apoi fi utilizate pentru modelarea ansamblului, pentru care
se foloseºte, de obicei, un modul separat al pachetului CAD (un exemplu de structurã
a unui model geometric este prezentat în fig. 12.1).
Precizarea cotelor ºi toleranþelor funcþionale se realizeazã, de obicei, pe modelul 3D.
Pe baza modelelor geometrice ale pieselor ºi ansamblurilor se realizeazã, în
ultima etapã, documentaþia tehnicã de execuþie (desene, planºe), cu ajutorul unul
modul specializat, denumit modul drawing sau drafting.
Documentaþie 2D Documentaþie 2D Documentaþie 2D
Ansamblu
Piesã Piesã
Trãsãturi Trãsãturi
Schiþã Schiþã
...
Schiþã Schiþã
...
Trãsãturi Trãsãturi
Schiþã Schiþã
...
Schiþã Schiþã
...
Model desenare
(Drawing)
Model ansamble
(Assembley modelling)
Model piese
(Part modelling)
Model schiþare
(Sketcher)
Fig. 12.1.
235 ARHITECTURA SOFTURILOR CAD
12.3. Softuri comerciale CAD - facilitãþi ºi performanþe
În acest subcapitol vor fi trecute succint în revistã principalele softuri comerciale
CAD, utilizate pe plan mondial. Pentru fiecare în parte se va prezenta o fiºã tehnicã
a principalelor caracteristici, pentru a facilita analiza comparativã.
12.3.1. CATIA
Pachetul CATIA oferã un set complet de facilitãþi CAD-CAM-CAE, fiind cel
mai important produs de acest fel din Europa ºi unul dintre liderii mondiali în domeniu.
Este conceput de cãtre compania Dassault Systems ºi constituie principalul
instrument utilizat la proiectarea avioanelor AIRBUS, rachetelor ARIANE etc.
Facilitãþile de modelare geometricã cuprind o gamã largã de posibilitãþi grupate
în unsprezece module, dintre care cele mai importante sunt prezentate în continuare:
1. Modulul “Feature - Based Design”
Acest modul permite gestionarea configuraþiei pieselor, crearea de trãsãturi
ºi familii de piese (fig. 12.2). Utilizatorul poate grupa trãsãturi pe diverse nivele
de complexitate, ceea ce permite o structurare riguroasã a proiectului. Gruparea
entitãþilor poate fi activatã sau dezactivatã, fiind posibilã în acest fel analiza
diverselor alternative de proiectare. Modulul conþine o bibliotecã ce cuprinde
cele mai uzuale trãsãturi cum sunt cele de tip gaurã, decupare, nervurã, bosaj,
arbore etc. De asemenea, este posibilã crearea de noi trãsãturi prin specificarea
geometriei, parametrilor ºi atributelor tehnologice. În acest mod, se pot realiza
trãsãturi complet noi, precum ºi trãsãturi obþinute prin modificarea sau combinarea
celor existente. Modulul permite, de asemenea, crearea familiilor de piese pe
Nucleu geometric
Tehnici de modelare
Curbe ºi suprafeþe sintetice
Modelarea ansamblurilor
Piese cu pereþi subþiri (shelling)
Import-export modele geometrice
Modul de desenare
Modul CAD - CAM
Modul CAD - Roboticã
Cotare ºi toleranþe funcþionale
Compania producãtoare
Preþ
Nucleu propriu
WF, suprafeþe, solid, parametric, trãsãturi
Bezier, B-Spline, NURBS
Da
Da
IGES, SET, STEP, SAT, STR, VRML, DXF
CATIA CADAM Drafting
Da
CATIA Robotics
Da
Dassault Systems
20.000 - 40.000 USD
Fiºã tehnicã
236 BAZELE CAD
baza unor tabele ce cuprind valorile aferente trãsãturilor.
2. Modulul “Surface Design”
Acest modul permite utilizatorului crearea ºi manipularea suprafeþelor uzuale
cuprinzând: suprafeþe de rotaþie, riglate, suprafeþe sintetice ºi COONS, diverse
suprafeþe de racordare cu razã constantã. Acest modul permite modelarea
suprafeþelor uzuale prin tehnici automatizate de conectare precum ºi definirea
automatã a solidelor prin frontiere (B-rep). Dupã definirea acestora este posibilã
evaluarea proprietãþilor masice.
3. Modulul “Advanced Surface Design”
Pentru modelarea suprafeþelor complexe, CATIA dispunde de modulul
“Advanced Surface Design” ce cuprinde facilitãþi speciale de monitorizare a formei
prin controlul tangentelor. Acest modul permite crearea de racordãri cilindrice,
conice sau cu razã variabilã. Acest lucru faciliteazã exploatarea modelului geometric
în aplicaþiile CAM (de exemplu, racordãrile cilindrice între suprafeþele riglate permit
realizarea piesei pe o maºinã unealtã cu control numeric, cu 5 axe, printr-un traseu
Fig. 12.2.
237 ARHITECTURA SOFTURILOR CAD
continuu al sculei la trecerea de la o suprafaþã la alta). De asemenea, sunt posibile
operaþii de racordare ºi teºire automatã între suprafeþe. Modificarea suprafeþelor
complexe se poate realiza atât prin schimbarea valorii parametrilor geometrici, cât
ºi prin accesul la “istoria” construcþiei modelului. În cazul în care existã solide
definite cu ajutorul suprafeþelor modificate, actualizarea solidelor în conformitate
cu noile date se realizeazã automat.
4. Modulul “3D Functional Dimensioning & Toleracing”
CATIA include un modul avansat pentru specificarea cotelor ºi toleranþelor
direct pe modelul geometric 3D, cu un înalt grad de automatizare ce include:
• Propunerea de toleranþe utilizatorului, în raport cu funcþionalitatea
ansamblului.
• Propunerea de toleranþe asociate cu trãsãturile, þinând cont de tehnologia
de prelucrare asociatã.
• Format compatibil cu standardele internaþionale de desen tehnic.
• Verificarea ajustajelor.
• Realizarea automatã a cotelor ºi toleranþelor pe documentaþia 2D, pornind
de la definirea toleranþelor în modelul 3D.
În afarã de cele patru module principale, modelorul geometric CATIA mai
include ºi altele:
• Modulul “Free Form Design”, care include instrumente precise pentru o
proiectare intuitivã a suprafeþelor cu forme nespecificate exact.
• Modulul “Geodesic”, care oferã facilitãþi de trasare a unor contururi direct
pe suprafeþe de formã complexã.
• Modulul “Generative Shape Modelling”, conceput pentru facilitarea
proiectãrii pieselor cu pereþi subþiri.
• Modulul “Global Shape Deformation”, care permite schimbãri oricât de
mari în forme realizate anterior sau preluate din proiecte mai vechi.
• Modulul “CATIA / ALIAS Interoperability”, care asigurã o interfaþare
geometricã ºi topologicã cu cel mai important soft CAD de proiectare
stilisticã ALIAS / Wavefront.
• Modulul “Cloud to Geometry”, care faciliteazã prelevarea prototipurilor
fizice în modele 3D CATIA.
• Modulul “Engraving / Embossing”, care permite proiectarea inscripþiilor în
relief pe diversele componente ale produselor.
238 BAZELE CAD
12.3.2. Unigraphics
Pachetul Unigraphics este unul dintre cele mai importante sisteme CAD-CAM-
CAE, fiind utilizat de companiile spaþiale americane ºi de automobile. Se poate
spune cã este într-o concurenþã directã cu CATIA, cel puþin pe piaþa industriei
aerospaþiale. Modelorul geometric cuprinde tot unsprezece module, prezentate pe
scurt în continuare.
1. Modulul “UG / Features Modelling”
Permite definirea pieselor cu ajutorul unui set de trãsãturi ce include gãuri,
decupãri, adâncituri, bosaje, cilindri, blocuri paralelipipedice, conuri, sfere, racordãri,
teºituri etc. Acelaºi modul cuprinde ºi facilitãþi de modelare a obiectelor cu pereþi
subþiri (shelling). Trãsãturile sunt definite parametric, atât cele standard, cât ºi cele
definite de utilizator.
2. Modulele “UG / Assembley Modelling” ºi “UG / Advanced Assembley”
Facilitãþile cuprinse în primul modul permit modelarea geometricã dupã metoda
“de sus în jos”, pornind de la definirea ansamblurilor ºi continuând cu modelarea
pieselor componente. Astfel, pot fi descrise relaþiile de montaj între diferitele
componente prin precizarea suprafeþelor conjugate (operaþia de “mating”). Modulul
“Advanced Assembley” cuprinde facilitãþi avansate privind analiza jocurilor,
interferenþelor între piese, vizualizãri realistice complexe ale ansamblului, cât ºi a
anumitor zone ºi subansamble ale produsului.
3. Modulul “UG / Freeform Modelling”
Acest modul încorporeazã tehnicile de modelare solidã ºi cu suprafeþe, cu
Nucleu geometric
Tehnici de modelare
Curbe ºi suprafeþe sintetice
Modelarea ansamblurilor
Piese cu pereþi subþiri (shelling)
Import-export modele geometrice
Modul de desenare
Modul CAD - CAM
Modul CAD - Roboticã
Cotare ºi toleranþe funcþionale
Compania producãtoare
Preþ
PARASOLID
WF, suprafeþe, solid, parametric, trãsãturi
B-Spline, NURBS
UG / Assembley Modelling ºi UG /
Advanced Assemblies
Da
IGES, STEP, VRML, STL
Unigraphics Drafting
UG / Toolpath, UG / FlowCut, UG / Lathe
Nu
Da
Linigraphics Solutions, USA
17.000 USD
Fiºã tehnicã
239 ARHITECTURA SOFTURILOR CAD
facilitãþi de sweeping liniar ºi curbiliniu, suprafeþe conice, suprafeþe de racordare
cu secþiune circularã sau conicã, precum ºi suprafeþe de conexiune netedã între
douã corpuri distincte.
De asemenea, este posibilã definirea unei suprafeþe pe baza unei reþele de
puncte de control sau plase (mesh) de curbe, precum ºi evaluarea modelelor definite
cu suprafeþe sau solide (dimensiuni, curburã, arii, volume etc.).
4. Modulul “UG / Geometric Tolerances”
Acest modul permite specificarea toleranþelor ºi abaterilor, în conformitate cu
standardele în vigoare, în mod asociativ cu geometria obiectelor. În acest fel, la
introducerea unor modificãri, toleranþele sunt actualizate automat, fiind, de
asemenea, moºtenite în documentaþia 2D realizatã pe baza modelelor 3D.
5. Modulul “UG / Drafting”
Pachetul Unigraphics este prevãzut cu un modul distinct pentru realizarea
automatã a documentaþiei de execuþie a produsului, pe baza modelului geometric
solid. Desenele de ansamblu sunt create în mod semiautomat, pe baza modelelor
geometrice a ansamblurilor realizate anterior.
6. Modulul “UG / Solid Modelling”
Acest modul include facilitãþi de modelare solidã cu tehnici parametrice bazate
pe asocierea de restricþii între diversele elemente ale solidului. Este posibilã
realizarea de modele solide utilizând tehnici sweep, operaþii logice etc.
Alte module:
• Modulul “User Defined Features” include mijloace interactive de definire
a unor trãsãturi noi, prin specificarea formei ºi geometriei, relaþii între
parametri, specificarea variabilelor etc. Dupã definirea noilor trãsãturi,
toate facilitãþile valabile pentru trãsãturile standard (editare, comportare),
sunt aplicabile ºi pentru noua trãsãturã.
• Modulul “UG / Render” cuprinde facilitãþi de prezentare realisticã a
modelelor geometrice (render, shade etc.), pentru realizarea unor prezentãri
de produs.
• Modulele “UG / Routing, Tubing, Conduit, Raceway, Steelwork” cuprind
facilitãþi de modelare geometricã a ansamblurilor ce cuprind conducte sau
fire (cabluri) pozate. În afarã de realizarea documentaþiei pentru aceste
ansamble, mai sunt facilitate producerea automatã a listelor de materiale,
analiza jocurilor etc.
240 BAZELE CAD
12.3.3. ProEngineer
ProEngineer este pachetul CAD care a dobândit o enormã popularitate în
ultimii 5 ani, în ciuda preþului ridicat, datoritã politicii de implementare a noilor
tehnologii CAD. Este printre primele softuri care a introdus tehnicile de modelare
parametricã ºi bazatã pe trãsãturi. Pachetul complet conþine numeroase modele
asociate din categoria CAE ºi CAD-CAM.
Modelorul geometric este conceput pe principiul modelãrii “de sus în jos” (top-
down design) în care se începe de la scheme principiale de funcþionare care sunt
dezvoltate pânã la nivelul de ansamblu ºi numai dupã aceea sunt modelate
subansamblele ºi piesele componente.
În acest scop, softul include facilitãþi complete de modelare parametricã ºi
bazatã pe trãsãturi, ierarhizare riguroasã a acestora cu posibilitãþi interactive de
modificare, gestionare a ansamblurilor ºi subansamblurilor etc.
Softul dispune atât de o bibliotecã extinsã de trãsãturi, precum ºi de posibilitatea
de a defini altele noi, în funcþie de necesitãþi, printr-o interfaþã graficã cuprinzãtoare
(fig. 12.3). De asemenea, se pot introduce restricþii între trãsãturi sau piese în
cadrul unui ansamblu / subansamblu, ceea ce permite concretizarea intenþiei de
proiectare care va fi astfel conservatã la efectuarea de modificãri. Dispune de un
sistem de gestionare a ansamblurilor ºi pieselor componente, posibilitatea de a
defini familii de piese, definire de trãsãturi în ansamblu, precum ºi de un modul de
realizare a documentaþiei 2D extrem de fiabil ºi prietenos. De asemenea, listele de
materiale sunt realizate automat.
Tehnica de lucru se bazeazã pe modulul de schiþare (sketcher) cu cotare
Nucleu geometric
Tehnici de modelare
Curbe ºi suprafeþe sintetice
Modelarea ansamblurilor
Piese cu pereþi subþiri (shelling)
Import-export modele geometrice
Modul de desenare
Modul CAD - CAM
Modul CAD - Roboticã
Cotare ºi toleranþe funcþionale
Compania producãtoare
Preþ
Nucleu propriu
Modelare parametricã, trãsãturi
Da
Da
Da, grosime unicã, variabilã, direcþie (+), (-)
IGES, SET, STL, DXF, STEP, VRML,
Integrat
Pro / NC POST
Nu
Da
Parametric Technology Inc.
26.000 USD (ProE + alte 13 modulex)
Fiºã tehnicã
241 ARHITECTURA SOFTURILOR CAD
Fig. 12.3.
automatã, care se transmite la documentaþia 2D, unde se mai fac doar mici ajustãri
privind modul ºi logica cotãrii, tot cu scopul de a conserva intenþia de proiectare.
Pentru modelarea suprafeþelor, sunt disponibile cele mai sofisticate tipuri de
entitãþi, cu facilitãþi deosebite de manipulare ºi editare (conexiune între petice,
retezare, extindere, transformarea suprafeþelor etc.).
Pachetul CAD-CAM-CAE ProEngineer mai include, de regulã, modulul
ProMecanica pentru analiza cu metoda elementului finit ºi modulul CAD-CAM
Pro / NC POST:
Toate acestea sunt centrate pe modelorul geometric ProEngineer, rezultând în
acest fel, un pachet compact cu toate funcþiile integrate.
242 BAZELE CAD
12.3.4. Euclid Quantum
Pachetul Euclid al companiei Matra Datavision este construit pe baza nucleului
grafic CAS.CADE, care este un mediu independent de programare orientatã pe
obiecte, dezvoltat de cãtre MATRA, special pentru realizarea aplicaþiilor CAD.
CAS.CADE cuprinde un set de peste 2.000 de clase de obiecte ºi 20.000 de metode
ºi facilitãþi de dezvoltare ce acoperã diverse aspecte ale modelãrii geometrice,
cum sunt:
• interfaþa graficã;
• baza de date;
• afiºarea ºi manipularea entitãþilor grafice;
• tehnici de tip wireframe, suprafeþe ºi solide;
• definirea de restricþii geometrice între entitãþi;
• formate neutre STEP;
• instrucþiuni matematice de uz curent;
• generator de cod C++.
Pachetul Euclid Quantum cuprinde ºase module, dupã cum urmeazã:
1. Modulul “Euclid Designer”
Constituie modelorul geometric al pachetului, cuprinzând facilitãþile uzuale din
aceastã categorie (în fig. 12.4 se prezintã interfaþa graficã Euclid Designer):
• tehnici 3D de tip wireframe, modelare cu suprafeþe solide, sweeping etc.;
• modelare parametricã ºi bazatã pe trãsãturi;
• suprafeþe complexe de tip sintetic, suprafeþe de racordare etc.;
• modelarea ansamblurilor, facilitãþi de definire a suprafeþelor conjugate din
Nucleu geometric
Tehnici de modelare
Curbe ºi suprafeþe sintetice
Modelarea ansamblurilor
Piese cu pereþi subþiri (shelling)
Import-export modele geometrice
Modul de desenare
Modul CAD - CAM
Modul CAD - Roboticã
Cotare ºi toleranþe funcþionale
Compania producãtoare
Preþ
CAS.CADE (nucleu propriu)
Explicit, variaþional, parametric, trãsãturi
Bezier, NURBS
Euclid Designer
Integrat
IGES, STEP, DXF, VDA, VRML
Euclid Drafter
Euclid Machinist
Nu
2D
Matra Datavision
10.000 USD
Fiºã tehnicã
243 ARHITECTURA SOFTURILOR CAD
ansambluri;
• modelarea pieselor cu pereþi subþiri.
2. Modulul “Euclid Styler”
Principalele facilitãþi incluse în acest modul se referã la modelarea suprafeþelor:
• definirea ºi manipularea suprafeþelor formate din multe petice;
• prelucrarea ºi ameliorarea suprafeþelor importate din alte medii CAD, atunci
când acestea au o definire sãracã în detalii;
• suprafeþe sintetice de tip Bezier, B-Spline, NURBS, COONS;
• instrumente de vizualizare a calitãþii suprafeþelor (normale ºi raze de curburã,
operaþii tip “cut-plane”, prezentãri fotorealistice);
• corectarea volumelor delimitate incomplet, prin facilitãþi de “tragere” a
marginilor suprafeþelor pânã la realizarea joncþiunii complete cu peticele
învecinate.
3. Modulul “Euclid Analyst”
Acest modul faciliteazã modelarea parametricã, permiþând formularea de
Fig. 12.4.
244 BAZELE CAD
restricþii geometrice între feþe, muchii ºi puncte ale modelului pe baza cãrora se pot
determina toate celelalte dimensiuni geometrice.
4. Modulul “Euclid Design Manager”
Este un sistem EDMS care oferã urmãtoarele facilitãþi:
• accesul la date ºi gestionarea documentelor;
• gestionarea informaþiilor referitoare la diferitele produse modelate;
• facilitãþi de clasificare, cãutare ºi accesare a informaþiilor;
• realizarea automatã a listelor de materiale;
• compatibilitate ºi adaptabilitate la diverse tipuri de reþele.
5. Modulul “Euclid Drafting”
“Euclid Drafter” oferã capabilitãþile obiºnuite de desenare asistatã de calculator
ce includ posibilitãþi de definire a unor machete (template), definire de stiluri de
cotare, formate standardizate, stiluri de text, facilitãþi de import / export date, modul
de schiþare etc.
6. Modulul “Euclid Machinist”
“Euclid Machinist” este un modul CAD-CAM care cuprinde facilitãþi de
realizare automatã a programelor pentru maºinile cu control numeric.
12.3.5. SolidWorks
SolidWorks este un pachet CAD ce cuprinde toate facilitãþile majore de
proiectare ale momentului, într-o arhitecturã extrem de simplã, fiabilã ºi prietenoasã.
Filosofia de utilizare a softului are la bazã conceptul de proiectare “de jos în sus”,
pornind de la modelarea pieselor bazatã pe trãsãturi, continuând cu modelarea
ansamblurilor, cotare funcþionalã ºi toleranþe la modelul 3D, pânã la realizarea
Nucleu geometric
Tehnici de modelare
Curbe ºi suprafeþe sintetice
Modelarea ansamblurilor
Piese cu pereþi subþiri (shelling)
Import-export modele geometrice
Modul de desenare
Modul CAD - CAM
Modul CAD - Roboticã
Cotare ºi toleranþe funcþionale
Compania producãtoare
Preþ
CAS.CADE (nucleu propriu)
Explicit, variaþional, parametric, trãsãturi
Bezier, NURBS
Da
Integrat
IGES, STEP, DXF, VRML, STL
Integrat
Nu
Nu
3D, integrat
SolidWork Corp. USA
4.000 USD
Fiºã tehnicã
245 ARHITECTURA SOFTURILOR CAD
aproape automatã a documentaþiei 2D de execuþie, liste de materiale etc., având o
interfaþã prietenoasã (fig. 12.5). Principalele caracteristici ale softului sunt:
• Abilitatea de captura, modifica ºi comunica intenþia de proiectare cu uºurinþã
de-a lungul întregului proces de proiectare. Acest lucru este posibil graþie
modului ierarhic de modelare, în care se porneºte de la o schiþã parametricã,
se modeleazã piesa bazatã pe trãsãturi, apoi ansamblul ºi cotele. Acest
proces de construcþie este înregistrat într-un mod transparent ºi accesibil
pentru utilizator, dându-i posibilitatea de a interveni oricând pentru
schimbarea dimensiunilor, relaþiilor ºi geometriei, precum ºi de a reordona
trãsãturile dupã dorinþã (proiectul este 100% editabil).
• Facilitãþi de modelare a ansamblurilor, cu stabilirea de suprafeþe de referinþã
pentru montaj, crearea de restricþii între piese, vizualizarea ansamblului în
miºcare, cu identificarea interferenþelor. Ansamblele pot fi reorganizate
uºor ºi intuitiv, pe diverse nivele de subansamblu prin utilizarea modului
“Feature Manager Tree”. De asemenea, sunt incluse facilitãþi de identificare
Fig. 12.5.
246 BAZELE CAD
ºi definire automatã a relaþiilor de asamblare ºi a suprafeþelor conjugate
într-un ansamblu, precum ºi analiza variantelor posibile de asamblare cu
modelul “Assembley Configurations”.
• Pentru proiectarea detaliilor, SolidWorks oferã instrumente specializate,
care faciliteazã generarea rapidã a documentaþiei inginereºti pentru lansarea
în execuþie a produsului. Documentaþia este într-o corespondenþã continuã
cu modelul geometric, astfel încât orice modificare în model se reflectã
automat în documentaþia 2D. De asemenea, sunt cuprinse o multitudine
de facilitãþi privind realizarea desenelor dintre care se amintesc:
- generarea automatã a desenelor din modelele 3D, inclusiv vederi,
secþiuni, cote, toleranþe ºi elemente de text;
- realizarea independentã a desenelor de execuþie ºi de ansamblu,
dar menþionând în acelaºi timp o asociativitate completã între acestea;
- lucrul cu formate, machete pentru cãrþi ºi tabel de componenþã.
• Pentru modelarea suprafeþelor, SolidWorks oferã facilitãþi pentru generarea
de forme complexe, prin tehnici sweeping sau metode avansate de ghidare,
cu ajutorul curbelor ºi tangente de control, facilitãþi de editare a suprafeþelor
(edit, trim, extend, fillet), precum ºi repararea suprafeþelor importate la o
calitate mai slabã.
12.3.6. MicroStation
Softul MicroStation, produs de firma Bentley, are o structurã ºi facilitãþi la
un nivel de dezvoltare comparabil cu SolidWorks prezentat anterior, fiind însã
Nucleu geometric
Tehnici de modelare
Curbe ºi suprafeþe sintetice
Modelarea ansamblurilor
Piese cu pereþi subþiri (shelling)
Import-export modele geometrice
Modul de desenare
Modul CAD - CAM
Modul CAD - Roboticã
Cotare ºi toleranþe funcþionale
Compania producãtoare
Preþ
PARASOLID
WF, suprafe’e, solid, boolean, parametric,
trãsãturi
B-Spline, NURBS
Da
Da
IGES, STEP, ACIS SAT, PARASOLID XT,
VRML, STL
Integrat
Nu
Nu
2D / 3D
Bentley Systems
5.235 USD
Fiºã tehnicã
247 ARHITECTURA SOFTURILOR CAD
mai puþin rãspândit. Primele versiuni au fost concepute cu nucleul ACIS, dar
versiunile recente au trecut deja la PARASOLID, soluþie ce permite realizarea
modelãrii, a documentaþiei de execuþie, a analizei, simulãrii ºi manufacturãrii pe
baza unui model unic.
Facilitãþile principale oferite includ:
• Realizarea facilã a schiþelor 2D parametrice sau neparametrice.
• Convertirea automatã a schiþelor 2D neparametrice în profile parametrice.
• Utilizarea de linii, arce de cerc ºi elipsã, curbe B-Spline, elicoidale, calculator
de curbe specifice (conice, evolvente etc.) pentru crearea profilelor.
• Posibilitatea salvãrii profilelor realizate (parametrice sau neparametrice)
în biblioteci proprii pentru utilizarea ulterioarã în cadrul modelãrii.
• Operaþii de racordare ºi teºire a schiþelor 2D precum ºi modificarea dinamicã
a acestora prin simpla manevrare a punctelor caracteristice.
• Modelarea solidã acceptã primitive 3D, operaþii booleene, extrudãri, bosaje,
teºituri, racordãri, tãieri cu profile, solide de rotaþie sau tubulare, toate
parametrice.
• Racordãri cu raze variabile, extragerea ºi înlocuirea profilului direct pe
modelul solid, realizarea solidelor prin “lipirea” mai multor suprafeþe.
• Modelarea suprafeþelor se bazeazã pe standardul NURBS suportând
suprafeþe obþinute prin extrudare, rotaþie, sweeping, suprafeþe elicoidale etc.
• Modificarea facilã a suprafeþelor prin manevrarea normalelor acestora.
• Structura graficã arborescentã a istoriei realizãrii modelului ºi posibilitatea
modificãrii uºoare a operaþiilor parametrice deja realizate.
• Posibilitatea reordonãrii operaþiilor din arborele de “istorie” prin tehnica
simplã “Drag and Drop”.
• Realizarea ºi manipularea cu uºurinþã a ansamblurilor mari, modificãrile
componentelor propagându-se automat la ansamblu.
• Facilitãþi de a creare a planºelor de desen ºi a chenarelor, introducerea
automatã a vederilor în planºã ºi generarea automatã a secþiunilor.
• Cotare asociativã a modelelor parametrice (suportând standardele ANSI,
ISO, DIN ºi JIS) într-o multitudine de stiluri personalizabile.
• Permite adãugarea de note, adnotãri, simboluri mecanice specifice (suduri,
rugozitãþi, abateri de formã ºi poziþie etc.).
• Afiºarea, translaþia, rotirea dinamicã a modelelor randate.
• Tehnici avansate de vizualizare, animaþie, mapare de texturi, umbre, surse
multiple de luminã, transparenþe, reflexii etc.
248 BAZELE CAD
12.3.7. Creaþie stilisticã asistatã de calculator
- Softul ALIAS / Wavefront
În epoca modernã, designul stilistic a devenit o componentã nelipsitã în ciclul de
dezvoltare al produsului, fiind realizat de arhitecþi ºi designeri. Aceºtia sunt cei ce
fac primele desene privind aspectele estetice ergonomice ºi funcþionale ale unui produs.
De cele mai multe ori, desenele stilistice sunt realizate manual, utilizând tehnicile
tradiþionale de graficã stilisticã. O problemã aparte în aceastã etapã o constituie
convertirea acestor desene ºi concepte în modele CAD, care sã poatã fi apoi dezvoltate,
analizate, optimizate ºi realizate fizic, în mod asistat de calculator. Principalele dificultãþi
se referã la conservarea caracteristicilor stilistice, la trecerea pe calculator ºi chiar
exploatarea intensivã a informaþiilor geometrice incluse în desenele iniþiale, la realizarea
modelului astfel încât sã se conserve intenþia de proiectare a designerului.
În principiu, aceste softuri pornesc de la copii de tip “bitmap” a desenelor stilistice
realizate prin scanare ºi dispuse într-un set de layere care constituie un ghid pe ecran, de-
a lungul întregului proces de realizare a modelului geometric. De obicei, modelul geometric
este generat pânã la nivelul definirii exacte a suprafeþelor, dupã care, modelarea întregului
produs, cu toate detaliile este realizat cu un sistem CAD obiºnuit (de exemplu, softul
CATIA cuprinde un modul specializat în interfaþarea cu ALIAS Wavefront).
Cel mai performant soft de proiectare stilisticã existent pe piaþã este ALIAS
Wavefront al companiei Studio Tools, a cãrui interfaþã graficã în faza iniþialã este
prezentatã în figura 12.6.
Fig. 12.6.
249 ARHITECTURA SOFTURILOR CAD
Fig. 12.8.
Pentru cazul desenului stilistic de mouse din figura 12.7, fazele de prelucrare
pânã la definirea modelului geometric final sunt ilustrate în figurile 12.8, 12.9 ºi
12.10. Astfel, se construiesc rând pe rând suprafeþe, pornind de la contururile
desenate în toate planele (fig. 12.7), care apoi sunt editate cu un set de facilitãþi
Fig. 12.7.
250 BAZELE CAD
Fig. 12.10.
foarte performante (retezare dupã contururi spaþiale de intersecþie cu alte suprafeþe,
extindere, racordãri etc.) pânã la obþinerea modelului geometric al carcasei (fig.
12.9). În etapa urmãtoare, se modeleazã butoanele urmându-se aceeaºi procedurã,
acestea fiind în final încorporate în model (fig. 12.10).
Fig. 12.9.