Sunteți pe pagina 1din 38

10.

Programarea asistată de calculator a SPCN

10. PROGRAMAREA ASISTATĂ DE CALCULATOR A SPCN

10.1. Programul-sursă şi limbaje de programare


Elaborarea tehnologiilor de prelucrare prin programare manuală a
SPCN implică cheltuieli mari de timp şi de muncă în cazul pieselor la care
volumul de calcule geometrice este foarte mare. Aceste calcule pot fi însă
realizate într-un timp mult mai scurt, dacă în activitatea de programare sunt
utilizate calculatoare numerice (programarea asistată de calculator).
În cadrul programării asistate de calculator, primul document specific
care se elaborează este programul-sursă. Acesta este compus din instrucţiuni,
exprimate într-un limbaj de programare automată a SPCN, şi reprezintă codul
de intrare în calculator. Pentru a fi accesibil omului, limbajul de programare
asistată este alcătuit din mnemonice (cuvinte din limbajul curent).
Informaţiile conţinute în programul-sursă sunt prelucrate de
calculator cu ajutorul a două programe utilitare, cu specific tehnologic,
denumite procesor şi, respectiv, postprocesor. Procesorul îndeplineşte două
funcţii: a) funcţia de traducere, aceasta constând în convertirea informaţiilor
din programul-sursă în limbajul calculatorului; b) funcţia de calcul, prin
care se asigură determinarea tuturor elementelor privind geometria
prelucrării. Procesoarele evoluate pot realiza şi un anumit nivel de tratare
tehnologică a programului-sursă.
Informaţiile prelucrate de procesor, ca şi datele tehnologice pe care
acesta nu le poate trata, sunt transferate postprocesorului, care realizează a
doua etapă de prelucrare a informaţiilor din programul-sursă. În principal,
postprocesorul asigură traducerea rezultatelor calculelor matematice,
efectuate de procesor, în codul recunoscut de ECN, completând aceste
rezultate cu datele tehnologice prescrise.
În general, procesoarele sunt realizate cu destinaţie generală, astfel
încât să poată fi utilizate pentru programarea oricărui tip de SPCN. În
schimb, postprocesoarele, având o structură mult mai complexă, sunt
specializate pe tipuri de SPCN.
Prelucrarea automată a informaţiilor din programul-sursă, cu ajutorul
calculatorului, se încheie cu furnizarea programului-piesă, care este înscris
codificat pe bandă perforată sau bandă magnetică. Odată cu emiterea benzii,
calculatorul poate lista şi programul-sursă, precum şi programul-piesă
codificat pe bandă.

343
Ingineria şi managementul producţiei

Limbajele utilizate pentru programarea asistată a SPCN s-au dezvoltat


în mai multe direcţii, fiind în strânsă legătură cu evoluţia sistemelor de
prelucrare automată a datelor. Cea mai mare dezvoltare au căpătat-o limbajele
din familia APT (Automatically Programmed Tools): ADAPT, IFAPT,
EXAPT etc. Caracteristic acestor limbaje este faptul că sunt generale, oferind
posibilităţi foarte largi de utilizare pentru cele mai variate prelucrări de piese.
De fapt, aceste limbaje sunt integrate unor sisteme de programare a SPCN, care
cuprind limbajul propriu-zis, procesorul şi postprocesorul. Implementarea
acestor sisteme se poate realiza pe calculatoare de putere mare.

10.2. Elemente de structură a limbajelor din familia APT

Cea mai largă utilizare la programarea asistată de calculator a SPCN


au căpătat-o limbajele din familia APT. Acestea se compun dintr-un vocabular
de cuvinte de origine engleză, din cifre şi diferite semne. Cuvintele vocabularului
sunt formate din maximum şase litere şi sunt destinate următoarelor scopuri:
definirea elementelor geometrice (POINT, LINE, CIRCLE etc.); definirea
operatorilor de calcul şi a funcţiilor reale (IF, SINF, ATANF etc.); identificarea
unor instrucţiuni postprocesor (STOP, END, SPINDL etc.); modificatori pentru
selectarea unei situaţii din mai multe posibile (XLARGE, POSY, LEFT
etc.); comenzi de mişcare (GOTO, GODLTA etc.); precizarea modului de
operare (NOPOST, CLPRNT, PTONLY etc.).
Cifrele utilizate de limbaj sunt cele arabe, de la 0 la 9.
Semnele utilizate în limbaj sunt în număr de zece şi au următoarele
reprezentări şi semnificaţii.
a) /, linia de fracţie (slash), utilizată ca separator între cuvintele
majore ale limbajului şi celelalte cuvinte din frază, ca în exemplul următor:
C2 = CIRCLE / CENTER, PT2, RADIUS, 100
De asemenea, linia de fracţie are şi rolul semnului de împărţire în operaţii
aritmetice, ca în exemplul următor:
BETA = ATANF (V1 / V2)
b) , (virgula) este utilizată ca separator universal între cuvintele din
frază.
c) . (punctul) este utilizat numai în locul virgulei zecimale.
d) ( ) (parantezele rotunde) au utilizări multiple: pot marca
ordinea în care trebuie să fie efectuate calculele matematice, ca în exemplul
următor:

344
10. Programarea asistată de calculator a SPCN

BETA = ATANF ((A+B) / (C+D)) ,


sau pot folosi pentru a marca conţinutul unei instrucţiuni:
PT2 = POINT (40,60,80) ,
adică punctul de coordonate (40,60,80).
e) = (semnul egal) se scrie în coloana nr. 8 a formularului utilizat
pentru programul-sursă, alocând, identificatorului din stânga, conţinutul
instrucţiunii din dreapta sa; de asemenea, se utilizează în calculele
matematice, ca semn de egalitate.
f) $ (dolarul) echivalează cu cratima, la continuarea unei
instrucţiuni pe rândul următor, ca de exemplu:
C2 = CIRCLE / CENTER, PT2 $
RADIUS, 100
(după acest semn nu se pune virgulă şi nu poate fi utilizat, în formularul de
programare, decât până în coloana nr. 72 inclusiv).
g) $$, dublul semn al dolarului, este utilizat pentru a scrie
observaţii în limbaj curent, ca în exemplul următor:
$$ PORNIRE POMPĂ LICHID DE RĂCIRE
(simbolul $$ este echivalent cuvântului REMARK).
h) + (semnul plus) se atribuie unei mărimi (deplasări) pozitive
sau este utilizat ca operator de adunare, în calculele aritmetice.
i) - (semnul minus) se atribuie unei mărimi (deplasări) negative
sau este utilizat ca operator de scădere, în calculele aritmetice.
j) * (asteriscul) se foloseşte numai ca operator de înmulţire, în
operaţii aritmetice.
Programul-sursă este scris, de către programator, într-un formular
asemănător celor utilizate pentru scrierea programelor în limbaj FORTRAN, cu
deosebirea că, în locul marcării coloanei 6, sunt marcate coloanele 7, 8, 9. În
coloanele 1÷6 se scriu identificatorii, care sunt simboluri utilizate pentru a
prelua, prin semnul de atribuire (=), conţinutul unei instrucţiuni. În exemplul:
C2 = CIRCLE / CENTER, PT2, RADIUS, 100
identificatorul C2 va prelua informaţia care urmează după semnul egal. Dacă
în program se va face referire, în continuare, la C2, se va înţelege că este vorba
despre un cerc, cu centrul în punctul PT2 şi cu raza de 100.
Identificatorii pot fi reprezentaţi prin litere sau prin litere şi cifre. Aceştia
nu fac parte din limbajul de programare, putând fi aleşi după dorinţă.
Coloanele 7 şi 9 nu sunt utilizate. În coloana 8 se scrie, când este
cazul, semnul de atribuire, care transferă conţinutul unei instrucţiuni
identificatorului din stânga.
345
Ingineria şi managementul producţiei

La alcătuirea programelor-sursă, instrucţiunile sunt grupate, în funcţie


de caracterul comenzilor pe care le generează, în următoarea succesiune.
a) Identificator piesă, pentru care se utilizează cuvântul major
PARTNO. De exemplu:
PARTNO / ARBORE, 113.502
Orice program-sursă debutează cu PARTNO, deoarece acesta este şi
identificatorul programului.
b) Observaţii, pentru care în limbaj este rezervat cuvântul major
REMARK. După acest cuvânt, programatorul poate să scrie comentarii în
limba vorbită. De exemplu:
REMARK / PORNIRE POMPĂ LICHID DE RĂCIRE
Cuvântul REMARK are acelaşi efect ca şi dublul semn al dolarului
($$).
c) Identificatorul maşină-unealtă, pentru care, în limbaj, se rezervă
cuvântul major MACHIN. De exemplu:
MACHIN / FRV 500 NCC, UPB
d) Toleranţele de
interpolare. Acestea reprezintă erorile
INTOL/t1 admisibile de aproximare a curbelor, de
(a) către calculator, prin segmente de dreaptă.
Instrucţiunile privind toleranţele de
OUTTOL/t2 interpolare (fig. 10.1) pot avea următoarele
forme:

(b)

TOLER/t

(c)

Fig. 10.1
INTOL/t1; OUTTOL/t2; TOLER/t.
Dacă în program nu există nici una din cele trei instrucţiuni, calculatorul
va lua implicit TOLER/0.0005.
e) Calcule matematice, Acestea sunt efectuate după regulile
FORTRAN, dar folosind cuvinte APT.

346
10. Programarea asistată de calculator a SPCN

f) Programarea formelor geometrice, care ocupă ponderea cea mai


importantă în cadrul programării asistate a SPCN (vezi şi § 10.3). Cele mai
importante elemente geometrice tratate în APT şi cuvintele rezervate pentru
acestea sunt următoarele: punct - POINT; dreaptă - LINE; cerc - CIRCLE;
plan - PLANE; vector - VECTOR; elipsă - ELLIPS; hiperbolă -
HYPERB; conică generalizată - GCONIC; cilindru tabelar - TABCYL;
matrice de transformare - MATRIX; structură de puncte - PATERN.
g) Instrucţiuni de deplasare. Acestea se formează cu ajutorul
cuvântului major GO, urmat de cuvintele minore TO (spre, la), ON (pe) sau
PAST (peste). În plus, mai sunt utilizate o serie de cuvinte majore, formate
cu prefixul GO (GOTO, GOLFT, GORGT, GOBACK, GODLTA etc.).
h) Instrucţiunile tehnologice, care formează trei grupe distincte:
instrucţiuni privind caracteristicile prelucrării, instrucţiuni privind
caracteristicile sculei, instrucţiuni privind regimul de aşchiere.
Diferitele tipuri de prelucrări sunt identificate prin anumite cuvinte
rezervate în limbaj: DRILL (Drilling) = găurire cu burghiul, BORE (Boring)
= alezare, MILL (Milling) = frezare etc. Acestea sunt cuvinte modale şi apar,
de obicei, într-o instrucţiune, după cuvântul major CYCLE, ca de exemplu:
CYCLE / BORE
În instrucţiunile privind caracteristicile sculei apar, de obicei,
cuvintele majore CUTTER şi TOOLNO. Primul dintre acestea este
rezervat pentru identificarea sculei, iar cel de al doilea pentru identificarea
numărului (codului) sculei. De exemplu, o freză cilindro-frontală, cu diametrul
de 40 mm şi raza la vârf a tăişurilor de 0,5 mm, care ocupă poziţia nr. 2 în
capul revolver sau în magazinul de scule, se programează în felul următor:
CUTTER / 40, 0.5
TOOLNO / 02
Instrucţiunile cu privire la regimul de aşchiere utilizează, cu precădere,
următoarele cuvinte majore: SPINDL, pentru turaţia arborelui principal; FEDRAT,
pentru viteza de avans; COOLNT, pentru comanda lichidului de răcire.

10.3. Programarea formelor geometrice

10.3.1. Instrucţiuni de definire a punctului


Z
PT4 (-10,-4,7) PT2 (4,9,7)

347
PT3 (-10,-4,0) PT1 (4,9,0)

O
X

Fig. 10.2
Ingineria şi managementul producţiei

Se menţionează că, în toate formatele de scriere a instrucţiunilor de


definire a punctului, se va utiliza identificatorul IDTP.
a) Punct definit cu ajutorul coordonatelor carteziene. Format
general:
IDTP = POINT / abscisă, ordonată, cotă
Ca exemplu, se consideră punctele PT1, PT2, PT3 şi PT4 din fig. 10.2,
care se programează în felul următor:
Y PT1 = POINT / 4, 9, 0

PT1

LIN2 LIN1

O X
LIN3 PT3
PT2

Fig. 10.3
PT2 = POINT / 4, 9, 7
PT3 = POINT / -10, -4, 0
PT4 = POINT / -10, -4, 7
b) Punct definit de intersecţia a două drepte. Format general:
IDTP = POINT / INTOF, dreaptă 1, dreaptă 2
În cadrul instrucţiunii, apare cuvântul modal INTOF, rezervat în
limbaj pentru precizarea intersecţiei (Intersection of). Dacă cele două drepte
sunt paralele, calculatorul va emite un mesaj de eroare.
În fig. 10.3 sunt prezentate exemple de definire a punctului, ca
intersecţie de drepte. Punctele notate în figură se definesc în felul următor:
PT1 = POINT / INTOF, LIN1, LIN2
PT2 = POINT / INTOF, LIN2, LIN3
PT3 = POINT / INTOF, LIN1, LIN3
Dreptele LIN1, LIN2 şi LIN3 trebuie definite anterior.
c) Punct definit de intersecţia unei drepte cu un cerc. Format
general:

348
10. Programarea asistată de calculator a SPCN

Cuvintele modificatoare XLARGE, YLARGE, XSMALL, YSMALL


permit selectarea unuia dintre cele două puncte de intersecţie ale dreptei cu
cercul. Alegerea acestor cuvinte modificatoare trebuie făcută astfel încât să nu
conducă la ambiguităţi. De exemplu, în cazul unei drepte paralele cu axa Y,
modificatorii XLARGE şi XSMALL provoacă ambiguităţi, deoarece ambele
puncte de intersecţie ale dreptei cu cercul au aceeaşi abscisă. În această situaţie,
selectarea unuia dintre puncte poate fi făcută numai prin utilizarea celorlalţi doi
modificatori: YLARGE, pentru punctul cu ordonata mai mare, sau
YSMALL, pentru punctul cu ordonata mai mică. Utilizarea necorespunzătoare
a cuvintelor modificatoare determină calculatorul să emită un mesaj de eroare.
În fig. 10.4 sunt
Y
prezentate opt puncte, obţinute ca PT5
intersecţie a două drepte cu trei PT6
LIN2 LIN1
cercuri. Punctele PT1, PT4 şi C2
C3 PT4
PT8 pot fi definite după cum
PT7
urmează:
PT8 PT3
O X
C1 Y
PT2
PT1

Fig. 10.4

PT1 = POINT / XSMALL, INTOF, LIN1, C1


PT4 = POINT / XLARGE, INTOF, LIN1, C2
PT8 = POINT / YSMALL, INTOF, LIN2, C3
d) Punct definit de intersecţia a două cercuri. Format
general:

349
Ingineria şi managementul producţiei

Modificatorii plasaţi
între acolade au acelaşi rol ca Y
şi în cazul intersecţiei unei
PT4 C2
drepte cu un cerc. Dacă
C4 C3
cercurile nu se intersectează PT2 PT1
sau dacă modificatorii sunt PT3 C1
aleşi incorect, calculatorul
emite mesaj de eroare. În fig. O X
10.5 sunt indicate patru Y
Fig. 10.5
puncte, care se obţin prin
intersecţia a câte două cercuri. Programarea acestor puncte se va face în
felul următor:
PT1 = POINT / XLARGE, INTOF, C1, C2
PT2 = POINT / XSMALL, INTOF, C1, C2
PT3 = POINT / YSMALL, INTOF, C3, C4
PT4 = POINT / YLARGE, INTOF, C3, C4

e) Punct definit ca centrul unui cerc. Format general:


Y IDTP = POINT / CENTER, cerc

PT1 C1

O X
Fig. 10.6
Pentru a se preciza că este vorba despre centrul unui cerc, în
instrucţiune apare cuvântul modal CENTER. Un exemplu de definire a
punctului, ca centru al unui cerc, este redat în fig. 10.6. Instrucţiunea de
definire este următoarea:
PT1 = POINT / CENTER, C1
f) Punct definit pe circumferinţa unui cerc, la un unghi dat
faţă de axa X. Format general:

350
10. Programarea asistată de calculator a SPCN

Y IDTP = POINT / cerc, ATANGL, unghi

140,50
P2 P1
45 0

-1600
P3 C1
O X
Fig. 10.7

Unghiul este exprimat în grade şi în fracţiuni de grad, sensul de


măsurare fiind cel trigonometric. Punctele P1, P2 şi P3, situate pe cercul C1
din fig. 10.7, pot fi programate în felul următor:
P1 = POINT / C1, ATANGL, 45
P2 = POINT / C1, ATANGL, 140.5
P3 = POINT / C1, ATANGL, 200

10.3.2. Instrucţiuni de definire a dreptei


Pentru scrierea formatelor generale de definire a dreptei, se va utiliza
identificatorul IDTL.
a) Dreaptă definită prin două puncte. Format general:
IDTL = LINE / punct 1, punct 2
Cele două puncte sunt definite anterior
Y sau pot fi definite chiar în cadrul formatului,
prin coordonatele proprii. De exemplu,
P4(3,4,0)
dreapta L1, din fig. 10.8, trece prin punctele
P1
P1 şi P2, care au fost definite anterior:
L1
P2 L2
O X
P3(1,-1,0)

Fig. 10.8
L1 = LINE / P1, P2
În schimb, dreapta L2 (fig. 10.8) trece prin punctele P3 şi P4, care n-
au fost definite anterior:
L2 = LINE / 1,-1,0, 3,4,0

351
Ingineria şi managementul producţiei

b) Dreaptă care trece printr-un punct şi este tangentă la


un cerc. Format general:

Modificatorul LEFT
arată că, pornind de la punct Y RIGHT
LEFT L3
spre cerc, punctul de L1
P2
tangenţă este în stânga P1 C1
LEFT
centrului cercului. Dacă L4
RIGHT L2
punctul se află în interiorul
cercului, calculatorul va
emite un mesaj de eroare. O X
Fig. 10.9

Programarea dreptelor L1, L2, L3 şi L4, din fig. 10.9, se va face în


felul următor:
L1 = LINE / P1, LEFT, TANTO, C1
L2 = LINE / P1, RIGHT, TANTO, C1
L3 = LINE / P2, RIGHT, TANTO, C1
L4 = LINE / P2, LEFT, TANTO, C1
c) Dreaptă tangentă la două cercuri date. Formatul general:

Primul grup de modificatori


Y
arată că punctul de tangenţă cu
primul cerc se află la stânga sau, L4
respectiv, la dreapta liniei centrelor L2
celor două cercuri, privind de la C1
cercul 1 către cercul 2. Al doilea
C2
grup de modificatori precizează,
L1 L3
după aceleaşi criterii, punctul de
tangenţă cu al doilea cerc. Dacă
cercurile sunt secante, utilizarea,
în cadrul aceleiaşi instrucţiuni, a O X
modificatorilor grupaţi LEFT - Fig. 10.10
RIGHT sau RIGHT - LEFT va

352
10. Programarea asistată de calculator a SPCN

determina calculatorul să afişeze un mesaj de eroare. De asemenea, calculatorul


va emite un mesaj de eroare, dacă unul dintre cercuri este interior celuilalt.
Se consideră, ca exemplu, dreptele L1, L2, L3 şi L4 din fig. 10.10, care
sunt programate în felul următor:
L1 = LINE / LEFT, TANTO, C1, LEFT, TANTO, C2
L2 = LINE / RIGHT, TANTO, C1, RIGHT, TANTO, C2
L3 = LINE / LEFT, TANTO, C1, RIGHT, TANTO, C2
L4 = LINE / RIGHT, TANTO, C1, LEFT, TANTO, C2
d) Dreaptă paralelă cu o altă dreaptă, la o distanţă dată. Format
general:

Modificatorii dintre acolade au următoarele semnificaţii. XLARGE


arată că dreapta se defineşte printr-o translaţie a dreptei de referinţă, în sensul
crescător al abscisei. XSMALL corespunde unui sens descrescător al abscisei.
Pe de altă parte, YLARGE şi YSMALL precizează că dreapta definită se
obţine printr-o translaţie a dreptei de referinţă, în sensul crescător sau, respectiv,
descrescător al ordonatei. Sunt indicate ca erori utilizarea modificatorilor XLARGE
şi XSMALL atunci când dreapta de referinţă este orizontală sau a
modificatorilor YLARGE şi YSMALL când dreapta de referinţă este
verticală.
Dreptele L1 şi L2 (fig. 10.11) se programează în felul următor:
L1 = LINE / PARLEL, LX, YSMALL, 2
L2 = LINE / PARLEL, LX, YLARGE, 3
Y

L1 3
2 L2
LX
O X
Fig. 10.11

353
Ingineria şi managementul producţiei

e) Dreaptă care trece printr-un punct şi este paralelă cu o


dreaptă dată. Format general:
IDTL = LINE / punct, PARLEL, dreaptă
Ca exemplu, se consideră dreapta L2 din fig. 10.12, care se
programează astfel:
L2 = LINE / PT1, PARLEL, LX

f) Dreaptă care trece printr- Y L1


un punct şi este perpendiculară pe o
PT1
dreaptă dată. Format general:
L2

LX
O X
Fig. 10.12
IDTL = LINE / punct, PERPTO, dreaptă
Ca exemplu, se consideră dreapta L1 din fig. 10.12, care se va
programa astfel:
L1 = LINE / PT1, PERPTO, LX
g) Dreaptă care trece printr-
un punct şi face un unghi cunoscut cu o Y
dreaptă dată. Format general: L2 1400
L1
50
LX

PT1

O PT2 X

Fig. 10.13

IDTL = LINE / punct, ATANGL, unghi, dreaptă


În fig. 10.13, dreptele L1 şi L2 trec prin punctele PT1 şi PT2,
făcând cu dreapta de referinţă LX unghiuri de 50 şi, respectiv, de 1400.
Programarea acestor drepte se va face după cum urmează:
L1 = LINE / PT1, ATANGL, 5, LX
L2 =LINE / PT2, ATANGL, 140, LX
354
10. Programarea asistată de calculator a SPCN

h) Dreaptă care face un unghi cunoscut cu axa X şi are un


punct de intersecţie cu axa Y. Format general:
IDTL = LINE / ATANGL, unghi, INTERC, YAXIS, ordonată
Dreptele L1 şi L2 din fig. 10.14 se programează astfel:
L1 = LINE / ATANGL, -30, INTERC, YAXIS, 2
L2 = LINE / ATANGL, 45, INTERC, YAXIS, 2
Y L1
L2
TAB
Y
(16,15)
L2 PT1 (10,10)
L1 (15,10)
(0,2)
(9,6)
450 X
-300 X
O O
Fig. 10.14 Fig. 10.15

i) Dreaptă tangentă într-un punct al unui cilindru tabelar.


Format general:
IDTL = LINE / punct, TANTO, cilindru tabelar
Ca exemplu, se consideră dreapta L1, din fig. 10.15:
L1 = LINE / PT1, TANTO, TAB
j) Dreaptă perpendiculară într-un punct al unui cilindru
tabelar. Format general:
IDTL = LINE / punct, PERPTO, cilindru tabelar
Ca exemplu, se prezintă dreapta L2, din fig. 10.15:
L2 = LINE / PT1, PERPTO, TAB

10.3.3. Instrucţiuni de definire a cercului


Pentru scrierea formatelor generale de definire a cercului, se va utiliza
identificatorul IDTC.

355
Ingineria şi managementul producţiei

a) Cerc definit prin coordonatele centrului şi rază. Format


Y general:

C1
R6
PT1 (8,4,0)
O X

Fig. 10.16

IDTC = CIRCLE / CENTER, punct, RADIUS, rază


Punctul poate fi definit anterior sau poate fi definit chiar în cadrul
formatului, prin coordonatele sale. De exemplu, cercul din fig. 10.16 se poate
defini în două moduri, după cum urmează:
C1 = CIRCLE / CENTER, PT1, RADIUS, 6
C1 = CIRCLE / 8, 4, 0, 6
b) Cerc cu centrul într-un punct dat
Y
LIN1 şi tangent la o dreaptă dată. Format general:

PT1
C1

O X
Fig. 10.17
IDTC = CIRCLE / CENTER, punct, TANTO, dreaptă
Spre exemplu, cercul C1 din fig. 10.17, cu centrul în PT1 şi tangent la
dreapta LIN1, poate fi programat astfel:
C1 = CIRCLE / CENTER, PT1, TANTO, LIN1
c) Cerc definit prin centrul său şi un punct de pe circumferinţă.
Format general:
IDTC = CIRCLE / CENTER, centru, punct

356
10. Programarea asistată de calculator a SPCN

De exemplu, cercul C1 din fig. 10.18, cu


centrul în PT1 şi trecând prin PT2, se Y
programează astfel:

C1 PT1

PT2

O X
Fig. 10.18
C1 = CIRCLE / CENTER, PT1, PT2
d) Cerc definit prin trei puncte de pe circumferinţa sa.
Format general:
IDTC = CIRCLE / punct1, punct2, punct3
Spre exemplu, cercul C2 din fig. 10.19, care trece prin punctele PT1,
PT2 şi PT3, poate fi programat astfel:
Y
PT1
C2

PT2
PT3

O X
Fig. 10.19
C2 = CIRCLE / PT1, PT2, PT3

e) cerc de rază dată, care trece prin două puncte. Format


general:

357
Ingineria şi managementul producţiei

Întrucât există două cercuri de Y


aceeaşi rază care pot trece prin două C2
R5
puncte date, modificatorii dintre acolade
permit selectarea unuia dintre cele două
PT1 PT2
cercuri. Modificatorii se referă la poziţia R5
reciprocă a centrelor celor două cercuri.
Spre exemplu, cercurile C1 şi C2, din fig. C1
10.20, pot fi programate în felul următor:
O X
Fig. 10.20

C1 = CIRCLE / YSMALL, PT1, PT2, RADIUS, 5


C2 = CIRCLE / YLARGE, PT1, PT2, RADIUS, 5
f) Cerc de rază dată, care trece printr-un punct şi este
tangent la o dreaptă cunoscută. Formatul general:

Y Deoarece există două cercuri cu


L1
proprietatea menţionată, modificatorii
R10 dintre acolade servesc la selectarea
R10 unuia dintre cele două cercuri.
Modificatorii se referă la poziţia
C2 C1 reciprocă a centrelor celor două cercuri.
PT1
O X
Fig. 10.21
De exemplu, cercurile C1 şi C2, din fig. 10.21, sunt programate
după cum urmează:
C1 = CIRCLE / PT1, YSMALL, TANTO, L1, RADIUS, 10
C2 = CIRCLE / PT1, YLARGE, TANTO, L1, RADIUS, 10

g) Cerc de rază dată, care trece printr-un punct şi este tangent


interior la un cerc cunoscut. Format general:

358
10. Programarea asistată de calculator a SPCN

Y Ca şi în cazul precedent, există


C3
două cercuri care respectă proprietatea
menţionată. Un exemplu în acest sens
PT1 este prezentat în fig. 10.22. Cele două
R3
C1 R3 cercuri din această figură se
programează în felul următor:
C2

O X
Fig. 10.22

C1 = CIRCLE / PT1, XSMALL, TANTO, C3, RADIUS, 3


C2 = CIRCLE / PT1, XLARGE, TANTO, C3, RADIUS, 3

h) Cerc cu centrul cunoscut şi tangent la un cerc dat. Format


general:

C3
PT1
C2
C1

O X
Fig. 10.23
Există două cercuri având acelaşi centru şi fiind tangente la cercul de
referinţă. Selectarea unuia dintre cele două cercuri se poate face cu ajutorul

359
Ingineria şi managementul producţiei

modificatorilor LARGE şi SMALL. Astfel, dacă centrul cercului de definit


este interior cercului de referinţă, se utilizează modificatorul SMALL
pentru cercul inclus în cercul de referinţă şi modificatorul LARGE pentru
cercul care include cercul de referinţă. Spre exemplu, cercurile C1 şi C2 din
fig. 10.23 pot fi definite în felul următor:
C1 = CIRCLE / CENTER, PT1, LARGE, TANTO, C3
C2 = CIRCLE / CENTER, PT1, SMALL, TANTO, C3
Y

C3
PT1
C2
C1

O X
Fig. 10.24
În cazul în care centrul cercului de definit este în exteriorul cercului
de referinţă, se utilizează modificatorul SMALL pentru cercul tangent
exterior cercului de referinţă, iar modificatorul LARGE pentru cercul care
include cercul de referinţă. Spre exemplu, cercurile C1 şi C2 din fig. 10.24 se
definesc în felul următor:
C1 = CIRCLE / CENTER, PT1, LARGE, TANTO, C3
C2 = CIRCLE / CENTER, PT1, SMALL, TANTO, C3
i) Cerc de rază cunoscută, tangent la două drepte date (cerc
de racordare a două drepte). Format general:

Cele două grupuri de modificatori sunt utilizate pentru identificarea


univocă a fiecăruia dintre cele patru cercuri, care respectă proprietatea
amintită. Primul grup de modificatori localizează poziţia centrului cercului
faţă de punctul de tangenţă la prima dreaptă, iar al doilea grup de
modificatori localizează poziţia centrului cercului faţă de punctul de

360
10. Programarea asistată de calculator a SPCN

tangenţă la a doua dreaptă. Spre exemplu, cercurile C1, C2, C3 şi C4, din
fig. 10.25, pot fi definite după cum urmează:
C1 = CIRCLE / YSMALL, LIN1, YSMALL, LIN2, RADIUS, 5
C2 = CIRCLE / YLARGE, LIN1, YSMALL, LIN2, RADIUS, 5
C3 = CIRCLE / YLARGE, LIN1, YLARGE, LIN2, RADIUS, 5
C4 = CIRCLE / YSMALL, LIN1, YLARGE, LIN2, RADIUS, 5
Y LIN2 Y C7 C9
C3 R5
C6 C3 C2 R3
R5
R5
R5 C2 L1
C4 C8 C5 C4
C1 LIN1 C1
O X O X

Fig. 10.25 Fig. 10.26

j) Cerc de rază cunoscută, tangent la un cerc dat şi la o


dreaptă dată (cerc de racordare a unui cerc cu o dreaptă). Formatul general:

Primul şi al doilea grup de modificatori indică poziţia centrului


cercului definit, în raport cu punctele de tangenţă la dreapta de referinţă şi,
respectiv, la cercul de referinţă. Al treilea grup de modificatori indică dacă
cercul de definit este interior (IN) sau exterior (OUT) cercului de referinţă.
Spre exemplu, cele opt cercuri din fig. 10.26, tangente la dreapta L1
şi la cercul C9, se definesc după cum urmează:
C1 = CIRCLE / YSMALL, L1, XLARGE, OUT, C9, RADIUS, 3
C2 = CIRCLE / YLARGE, L1, XLARGE, OUT, C9, RADIUS, 3
C3 = CIRCLE / YLARGE, L1, XSMALL, IN, C9, RADIUS, 3
C4 = CIRCLE / YSMALL, L1, XSMALL, IN, C9, RADIUS, 3
C5 = CIRCLE / YSMALL, L1, XLARGE, IN, C9, RADIUS, 3
C6 = CIRCLE / YLARGE, L1, XLARGE, IN, C9, RADIUS, 3
C7 = CIRCLE / YLARGE, L1, XSMALL, OUT, C9, RADIUS, 3
C8 = CIRCLE / YSMALL, L1, XSMALL, OUT, C9, RADIUS, 3
361
Ingineria şi managementul producţiei

10.3.4. Instrucţiuni de definire a planului


Pentru scrierea formatelor generale de definire a planului, se va utiliza
identificatorul IDTPL.
a) Plan definit prin coeficienţii ecuaţiei sale. Format general:
IDTPL = PLANE / a, b, c, d
în care a, b, c şi d sunt coeficienţii ecuaţiei:
aX + bY + cZ + d = 0 (10.1)
b) Plan definit prin trei puncte ale sale. Format general:
IDTPL = PLANE / punct 1, punct 2, punct 3
De exemplu, planul PL, care include trei puncte cunoscute, PT1, PT2
şi PT3, se defineşte astfel:
PL = PLANE / PT1, PT2, PT3 Z PL2
PT2
PL1
PT1 Y
PL3

O
X
Fig. 10.27

c) Plan care trece printr-un punct şi este paralel cu un plan


dat. Format general:
IDTPL = PLANE / punct, PARLEL, plan
De exemplu, planele PL1 şi PL2, din fig. 10.27, sunt definite după
cum urmează:
PL1 = PLANE / PT1, PARLEL, PL3
PL2 = PLANE / PT2, PARLEL, PL3
d) Plan paralel cu un plan dat, la o anumită distanţă. Format
general:

362
10. Programarea asistată de calculator a SPCN

Modificatorii dintre acolade indică sensul în care trebuie efectuată


translaţia planului de referinţă, pentru obţinerea planului căutat. De
exemplu, planul PL2, din fig. 10.28, se defineşte în felul următor:
PL2 = PLANE / PARLEL, PL1, ZLARGE, 5

Z
e) Instrucţiunea ZSURF face
posibilă localizarea unui plan, care este paralel
cu planul XY. Formatul general al
PL2 Y
instrucţiunii este:

5 PL1

O
X

Fig. 10.28
ZSURF / cotă
De exemplu, un plan paralel cu XY, la distanţa de 50 mm, se va
programa astfel:
ZSURF / 50
ZSURF este o instrucţiune modală. Efectul său este valabil până la
apariţia unei alte instrucţiuni ZSURF.
f) Definirea planelor de coordonate. Pentru a fi precizate
planele de coordonate, sunt folosite următoarele cuvinte modale: XYPLAN,
pentru planul XY; YZPLAN, pentru planul YZ şi ZXPLAN, pentru planul
XZ.

10.3.5. Instrucţiuni de definire a vectorilor


În formatele generale de definire a vectorilor, se va utiliza identificatorul
IDTV.

363
Ingineria şi managementul producţiei

Z Y
P1(2,5,4)
V1x
V1
V1y V1z P3(8,4,2)
V2

O P2(4,0,1)
X

Fig. 10.29
a) Vector definit prin compo-nentele sale scalare. Formatul general:
IDTV = VECTOR / componentă X, componentă Y, componentă Z
Ca exemplu, se consideră vectorii V1 şi V2 din fig. 10.29, care sunt
definiţi după cum urmează:
V1 = VECTOR / 2, -5, -3
V2 = VECTOR / 4, 4, 1
b) Vector definit prin punctele sale de origine şi extremitate.
Format general:
IDTV = VECTOR / punct origine, punct extremitate
De exemplu, vectorii V1 şi V2, din fig. 10.29, se pot defini în felul
următor:
V1 = VECTOR / P1, P2
V2 = VECTOR / P2, P3
Dacă punctele P1, P2 şi P3 nu au fost definite anterior, coordonatele
lor se scriu chiar în formatul de definire a vectorului:
V1 = VECTOR / 2, 5, 4, 4, 0, 1
V2 = VECTOR / 4, 0, 1, 8, 4, 2
c) Vector definit ca sumă sau ca diferenţă a doi vectori. Format
general:

364
10. Programarea asistată de calculator a SPCN

IDTV = VECTOR / vector 1, , vector 2

Astfel, vectorii VP şi VM, din fig. 10.30, se definesc după cum urmează:
VP = VECTOR / V1, PLUS, V2
VM = VECTOR / V1, MINUS, V2

Z Z
Y Y Z
V1 V1 V1 Y
V2
VP
PL1
VM
V2

O O O
X
X X

Fig. 10.30 Fig. 10.31

d) Vector perpendicular pe un plan dat. Format general:

Modificatorii POS axă precizează sensul pozitiv al unei axe, iar


NEG axă indică sensul negativ al unei axe. Vectorul definit astfel este un
vector unitar. De exemplu, vectorul unitar V1, din fig. 10.31, se defineşte în
felul următor:
V1 = VECTOR / PERPTO, PL1, POSZ
e) Definirea vectorului unitar al unui vector. Format general:
IDTV = VECTOR / UNIT, vector
Vectorul definit astfel posedă aceeaşi direcţie şi acelaşi sens ca şi
vectorul de referinţă, dar are lungimea egală cu unitatea. Componentele
scalare ale unui vector unitar sunt cosinusurile directoare ale vectorului de
referinţă.
f) Vector definit ca multiplu al unui alt vector. Format
general:
365
Ingineria şi managementul producţiei

IDTV = VECTOR / scalar,


TIMES, vector

Z Y
V2
VR
V1
O
X

Fig. 10.32
Scalar reprezintă valoarea numerică utilizată la multiplicarea
vectorului cunoscut, pentru obţinerea vectorului programat. Astfel, vectorii
V1 şi V2 din fig. 10.32, exprimaţi ca multipli ai vectorului de referinţă VR,
se programează astfel:
V1 = VECTOR / 3, TIMES , VR
V2 = VECTOR / -2, TIMES, VR

10.3.6. Instrucţiuni de definire a şirurilor de puncte


Existenţa unei structuri de puncte este semnalată prin cuvântul major
PATERN. În toate formatele generale de scriere a structurilor de puncte va
fi utilizat identificatorul PATJ. Modul de dispunere a punctelor în şiruri
este indicat prin utilizarea a două cuvinte modale: LINEAR, dacă punctele
sunt dispuse în linie, şi ARC, dacă punctele sunt dispuse pe un cerc.
a) Şir de puncte în linie, definit Y
prin punctele extreme şi numărul total de 1
P1 2
puncte echidistante. Formatul general: 3
4
5
PAT1 P2
O X
Fig. 10.33

PATJ = PATERN / LINEAR, origine, extremitate, număr


Un exemplu este cel din fig. 10.33:
PAT1 = PATERN / LINEAR, P1, P2, 5

366
10. Programarea asistată de calculator a SPCN

g) Şir de puncte în linie, definit prin origine, vector de


direcţie şi număr total de puncte echidistante. Format general:
PATJ = PATERN / LINEAR, origine, vector, număr
Ca exemplu, se consideră şirul de puncte reprezentat în fig. 10.34,
care se defineşte în felul următor:
PAT1 = PATERN / LINEAR, P1, V1, 5

Y V1 Y V
1 5 5
P1 2 8 8
3 P1 8
4 1 2 3
5 4 5
PAT1 PAT1 6
O X O X
Fig. 10.34 Fig. 10.35

h) Şir de puncte în linie, definit prin origine, vector de


direcţie şi număr de incremente egale, succesive. Format general:
PATJ = PATERN / LINEAR, origine, vector, INCR [, număr, AT,
distanţă]
În cadrul instrucţiunii apare cuvântul modal INCR, care arată că
grupul ,,număr, AT, distanţă” se repetă de atâtea ori câte serii incrementale
egale are şirul. Un exemplu de şir definit în acest mod este prezentat în fig.
10.35. Programarea şirului se va face în felul următor:
PAT1 = PATERN / LINEAR, P1, V, INCR, 2, AT, 5, 3, AT, 8
i) Şir de puncte în linie, definit prin origine, vector de
direcţie şi o succesiune de incremente. Format general:
PATJ = PATERN / LINEAR, origine, vector, INCR, distanţă
Spre exemplu, şirul indicat în fig. 10.35 poate fi programat astfel:
PAT1 = PATERN / LINEAR, P1, V, INCR, 5, 5, 8, 8, 8
Pe de altă parte, şirul din figura 10.36 se programează în felul următor:
PAT2 = PATERN / LINEAR, P2, V, INCR, 6, 7, 8, 2, 11
Y V Y PAT1
2 3
6 7 1 4
8 2 11 1300
P2 PAT2 400
1 2 3 4 5
6 3
PAT2
C1
O X 2
O X367
Fig. 10.36 Fig. 10.37
Ingineria şi managementul producţiei

j) Şir de puncte definit prin circumferinţă, unghi de origine,


unghi de extremitate, sens de parcurgere şi număr de puncte
echidistante. Format general:

Unghiurile de origine şi de extremitate sunt notate cu  şi, respectiv,


cu . Cele două unghiuri sunt măsurate în grade şi în fracţiuni de grad, în
sens trigonometric. Sensul de generare a şirului de puncte este indicat de
modificatorii dintre acolade: CLW, pentru sensul orar, şi CCLW, pentru
sensul trigonometric. Şirurile PAT1 şi PAT2, din fig. 10.37, se
programează în felul următor:
PAT1 = PATERN / ARC, C1, 130, 40, CLW, 4
PAT2 = PATERN / ARC, C1, 130, 0, CCLW, 3
k) Şir de puncte definit prin circumferinţă, unghi de origine,
sens de parcurgere şi incremente circulare succesive. Format general:

i indică unghiul dintre două Y 300 600


puncte succesive (în grade şi fracţiuni PAT1
de grad), sensul de parcurgere fiind 500 4 3 400
2
precizat prin modificatorii plasaţi între 5
acolade. De exemplu, şirul PAT1, din 1
fig. 10.38, se programează astfel: 65 0 6
C1
O X
Fig. 10.38

PAT1 = PATERN / ARC, C1, 0, CCLW, INCR, 40, 60, 30, 50, 65

10.3.7. Instrucţiuni de definire a reţelelor de puncte


O reţea este alcătuită dintr-o mulţime de puncte, generată prin
deplasarea, pe o anumită direcţie, a unui şir de puncte, denumit coloană.
Cele mai importante moduri de definire a reţelelor de puncte sunt prezentate
în continuare.

368
10. Programarea asistată de calculator a SPCN

a) Reţea definită prin şir de origine, vector Y


PAT1
de direcţie şi număr de coloane echidistante. 4 5 12
Format general: 13
3 6
PAT 11 14
2 7 10 15
1 8 9 16
V
O X
Fig. 10.39
PATJ = PATERN / GRID, şir, vector, număr
De exemplu, reţeaua de puncte din fig. 10.39 se defineşte în felul
următor:
PAT1 = PATERN / GRID, PAT, V, 4
l) Reţea definită prin şir de origine, vector de direcţie şi
distanţe succesive între coloane. Formatul general al instrucţiunii este
următorul:
PATJ = PATERN / PARLEL, şir, vector, INCR [, distanţe]
De exemplu, reţeaua din fig. 10.40 se defineşte în felul următor:
PAT1 = PATERN / PARLEL, PAT, V, INCR, 5, 7, 8
Y PAT1 Y
4 5 PAT1
12 4
13 5
3 12 13
PAT 6 11 14 3 6
2 PAT 11 14
7 10
15 2 7
1 10 15
8 9
5 16 1 8
7 9 16
8 5
V 5 5
V
O X O X
Fig. 10.40 Fig. 10.41

m) Reţea definită prin şir de origine, vector de direcţie şi serii


de coloane echidistante. Formatul general al instrucţiunii este următorul:

369
Ingineria şi managementul producţiei

PATJ = PATERN / PARLEL, şir, vector, INCR [, număr, AT,


distanţă]
Reţeaua de puncte din fig. 10.41, generată în modul arătat, poate să
fie programată astfel:
PAT1 = PATERN / PARLEL, PAT, V, INCR, 3, AT, 5

10.3.8. Matrice de transformare a sistemelor de axe de coordonate


Procesorul permite trecerea dintr-un sistem de coordonate al piesei
în alt sistem de coordonate al acesteia, cu ajutorul unor matrice de
transformare. Necesitatea de a utiliza mai multe sisteme de coordonate ale
piesei decurge din modul de cotare funcţională a acesteia. La alcătuirea
programului, se alege sistemul de coordonate cel mai convenabil, care va
permite utilizarea cotării funcţionale. Acest sistem de coordonate poate fi
apoi transformat, pentru a se uşura poziţionarea piesei pe maşina-unealtă.
Matricea de transformare este constituită din trei linii şi patru
coloane, formate din coeficienţii celor trei ecuaţii care definesc noul sistem
de axe. Dacă se notează cu O’X’Y’Z’ sistemul iniţial de coordonate şi cu
OXYZ sistemul de coordonate transformat, ecuaţiile de transformare au
următoarea formă:

(10.2)
În cele ce urmează, se prezintă diferite moduri de definire a matricelor
de transformare. Pentru aceasta, se va utiliza identificatorul IDTM.
a) Matrice de transformare definită prin forma canonică.
Formatul general:
IDTM = MATRIX / a1, b1, c1, d1, a2, b2, c2, d2, a3, b3, c3, d3

370
10. Programarea asistată de calculator a SPCN

n) Matrice de transformare definită prin componente de


translaţie. Format general:
Z

Z’

O
O’(1,2,1) Y’ Y

X’
X
Fig. 10.42
IDTM = MATRIX / TRANSL, d1, d2, d3
în care d1, d2 şi d3 reprezintă coordonatele originii sistemului O’X’Y’Z’ în
sistemul OXYZ.
De exemplu, matricea de transformare din sistemul O’X’Y’Z’ în
sistemul OXYZ (fig. 10.42) se programează astfel:
MAT = MATRIX / TRANSL, 1, 2, 1
o) Matrice de transformare definită prin componente de
rotaţie. Format general:
Y’ Y
150

X’

O’ 150
O X

Fig. 10.43

IDTM = MATRIX / , unghi

Modificatorii dintre acolade sunt utilizaţi pentru a preciza planul în


care se face rotaţia. De exemplu, matricea de transformare din sistemul X’Y’ în
sistemul XY (fig. 10.43) se programează astfel:
MAT = MATRIX / XYROT, 15
371
Ingineria şi managementul producţiei

p) Matrice de transformare definită prin componente de


translaţie şi de rotaţie. Formatul general al instrucţiunii este următorul:

După cum se observă, acest mod de definire este o combinaţie a celor


două precedente. O astfel de instrucţiune se foloseşte atunci când transformarea
necesită atât translaţii, cât şi rotaţii, pentru a aduce elementele geometrice din
sistemul de coordonate iniţial, în sistemul de coordonate final.
q) Instrucţiunea REFSYS. Această instrucţiune permite
activarea unui sistem de axe, în conformitate cu o matrice de transformare
definită anterior. Formatul general al instrucţiunii este următorul:
REFSYS / matrice
Ca exemplu, se consideră definirea matricei următoare:
MAT = MATRIX / TRANSL, 1, 2, 1, XYROT, 15
Activarea transformării definite prin matricea MAT se realizează prin
programarea instrucţiunii:
REFSYS / MAT
Instrucţiunea REFSYS / NOMORE asigură revenirea la sistemul de
axe precedent instrucţiunii REFSYS / matrice.

10.4. Funcţii pregătitoare cu parametri

Aceste funcţii sunt destinate selectării diferitelor plane paralele cu planele


de coordonate. Formatul general al instrucţiunii este următorul:

CLEARP / , distanţă

Modificatorii dintre acolade indică planul de coordonate, iar


distanţa, prevăzută cu semn algebric (+, opţional, sau -), determină univoc
planul paralel care se programează.
Această instrucţiune acoperă domeniile funcţiilor pregătitoare G17, G18
şi G19, de la programarea convenţională.

372
10. Programarea asistată de calculator a SPCN

Ca exemplu, se consideră selectarea unui plan paralel cu planul ZX,


la distanţa de -20 mm: CLEARP / ZXPLAN, -20
10.5. Instrucţiuni de mişcare

Acestea sunt destinate să comande poziţiile succesive ale sculei faţă de


piesă (sau invers), în vederea efectuării diferitelor prelucrări. Instrucţiunile care
pot fi utilizate pentru comanda mişcărilor sunt următoarele:
FROM, pentru iniţializarea mişcării;
GOTO, pentru comanda mişcării absolute;
GODLTA, pentru comanda mişcării incrementale.
Instrucţiunea FROM este utilizată pentru a se defini poziţia din care
va începe mişcarea. De aceea, FROM trebuie să apară, în program, înainte de
instrucţiunile de mişcare propriu-zise (GOTO şi GODLTA). În funcţie de
tipul postprocesorului, instrucţiunea FROM poate să apară, în program, o
singură dată sau de mai multe ori. Formatul general al instrucţiunii este
următorul:

FROM / , viteză de avans

Un exemplu de utilizare a instrucţiunii FROM este următorul:


P1 = POINT / 20, 50, 70
FROM / P1, 100
Instrucţiunea de mişcare absolută GOTO se utilizează pentru a
comanda deplasarea între două sau mai multe poziţii succesive. Formatul
general al acestei instrucţiuni este următorul:
GOTO / ,
modificatori
Modificatorii pot avea diferite forme. Spre exemplu, pentru
parcurgerea unui şir în sens invers numerotării punctelor sale (fig. 10.44), se
1 4

2 3
PAT
PAT 3 2
4 1
a) b)

Fig. 10.44

373
Ingineria şi managementul producţiei

utilizează modificatorul INVERS. Programarea deplasării în şirul PAT, în


sens direct şi, respectiv, invers, se va face cu instrucţiunile următoare:
GOTO / PAT
GOTO / PAT, INVERS
Pentru parcurgerea în zigzag a
Fig unei structuri de tip reţea, modificatorul
7 8 9 7 8 9 utilizat este ZIGZAG. Astfel, dacă la
PAT parcurgerea normală a structurii de
6 5 4 4 5 6 puncte din fig. 10.45 se programează:
PAT
1 2 3 1 2 3

a) b)
. 10.45
GOTO / PAT ,
la parcurgerea în zigzag se va programa:
GOTO / PAT, ZIGZAG
Pentru a se indica omiterea unor puncte din structură, se foloseşte
modificatorul OMIT. Dacă omiterea se
referă la o secvenţă de puncte,
1
PAT1 modificatorul OMIT trebuie să fie însoţit
4 de modificatorul THRU. De exemplu, în
1 structura PAT1, din fig. 10.46, se omit
PAT2 2 6
punctele 2, 3 şi 5. Programarea deplasării
se va face în felul următor:
6

Fig. 10.46

GOTO / PAT1, OMIT, 2, 3, 5


Dacă în structura PAT2 sunt omise toate punctele de la 3 până la 5,
programarea se va face astfel:
GOTO / PAT2, OMIT, 3, THRU, 5
În cazul unei cotări incrementale (în lanţ) a pieselor, este mai comod
ca definirea unui punct oarecare să fie făcută în raport cu un alt punct şi nu
în raport cu originea axelor de coordonate. Când mai multe puncte sunt
definite astfel, în succesiunea lor, instrucţiunea de mişcare este GODLTA.
Formatul general al acestei instrucţiuni este următorul:

374
10. Programarea asistată de calculator a SPCN

GODLTA / , viteză
avans
Dacă valoarea vitezei de avans nu este trecută, deplasarea se va face
cu avans rapid.
În fig. 10.47 sunt prezentate punctele P1, P2 şi P3, cotate
incremental. Programarea deplasării în aceste puncte se va face în felul
următor:
GOTO / 4, 3, 0
GODLTA / 4, 8, 0
GODLTA / 6, -5, 0
La prelucrările pe SPCN apare, de multe ori, necesitatea de a indica
poziţia sculei faţă de o dreaptă sau de un plan. Instrucţiunea utilizată în acest
caz este următoarea:
OFFSET /
Modificatorii TO, ON şi PAST indică poziţia finală a sculei, faţă de
dreaptă sau faţă de urma planului (fig. 10.48).
Y
P2
LINE LINE LINE
5

P3
8

VEC VEC VEC


P1(4,3,0)
4 6 PT PT PT

O X a) TO b) ON c) PAST
Fig. 10.47 Fig. 10.48

10.6. Instrucţiuni tehnologice

Pentru programarea turaţiei arborelui principal şi a vitezei de avans


în limbajele din familia APT, sunt rezervate instrucţiunile SPINDL şi
FEDRAT. Formatele generale ale acestor instrucţiuni sunt următoarele:

FEDRAT / viteză de avans


Modificatorii ON şi OFF sunt utilizaţi pentru a comanda pornirea şi,
respectiv, oprirea arborelui principal. Al doilea grup de modificatori
375
Ingineria şi managementul producţiei

precizează sensul rotaţiei arborelui principal: CLW, pentru sensul orar, şi


CCLW, pentru sensul antiorar.
Programarea ciclurilor de prelucrare se face cu ajutorul cuvântului
major CYCLE. Formatul unei instrucţiuni de ciclu este următorul:
,
în care modificator este un cuvânt rezervat, care precizează tipul
prelucrării. Prin instrucţiunea CYCLE se acoperă, printre altele, domeniul
funcţiilor G80 ... G89, de la programarea convenţională.
Tipul prelucrării poate să fie codificat cu un număr. În acest caz, se
va programa codul prelucrării, fără a mai fi necesar să se scrie explicit
cuvântul rezervat în limbaj pentru prelucrarea respectivă.
La programarea filetării, se utilizează cuvântul major THREAD.
Formatul instrucţiunii este următorul:

Prin parametri se pot exprima explicit mărimile care definesc


filetarea (pas, turaţie, diametru etc.). Codul face posibilă o definire simbolică
a filetării, prin intermediul unui număr acceptat de ECN al maşinii.
Pornirea sau oprirea lichidului de aşchiere se programează cu
cuvântul major COOLNT. Formatul instrucţiunii este următorul:

Tipul lichidului este, de obicei, descris printr-un cod acceptat de


ECN. Modificatorii ON şi OFF sunt utilizaţi pentru a comanda pornirea şi,
respectiv, oprirea lichidului de aşchiere.

10.7. Exemplu de programare asistată

Se consideră operaţia de prelucrare a alezajelor piesei din fig. 10.49,


la care toate suprafeţele exterioare, precum şi alezajul central, de diametru Ø
40, au fost prelucrate anterior. Conţinutul programului-sursă al operaţiei este
prezentat în cele ce urmează.
01 PARTNO / CAPAC, 113.574
02 REMARK / PROGRAM GĂURIRE-ALEZARE-FILETARE
03 MACHIN / FRV 500 NCC, UPB
04 $$ PROGRAMARE GEOMETRIE PIESĂ
05 P1 = POINT / 10, 10, 0

376
10. Programarea asistată de calculator a SPCN

06 P2 = POINT / 110, 10, 0


07 P3 = POINT / 60, 60, 0
08 C1 = CIRCLE / CENTER, P3, RADIUS, 50
09 PAT1 = PATERN / LINEAR, P1, P2, 3
10 PAT2 = PATERN / ARC, C1, 0, 180, CCLW, 5
11 MAT = MATRIX / TRANSL, 60, 60, 0
12 REFSYS / MAT
13 $$ PROGRAMARE FAZE DE PRELUCRARE
14 FROM / 0, 0, 100
15 CLEARP / XYPLAN, 22
16 TOOLNO / 01
17 COOLNT / ON
18 SPINDL / 1200, CLW
19 FEDRAT / 120
20 CYCLE / DRILL
21 GOTO / PAT1
22 GOTO / PAT2
23 SPINDL / OFF

377
Ingineria şi managementul producţiei

Fig. 10.49

24 COOLNT / OFF
25 TOOLNO / 02
26 COOLNT / ON
27 SPINDL / 300, CLW
28 FEDRAT / 100

378
10. Programarea asistată de calculator a SPCN

29 CYCLE / BORE
30 GOTO / PAT1, OMIT, 1, 3
31 GOTO / PAT2, OMIT, 1, 2, 4, 5
32 SPINDL / OFF
33 COOLNT / OFF
34 TOOLNO / 03
35 COOLNT / ON
36 SPINDL / 20, CLW
37 FEDRAT / 20
38 THREAD / 33
39 GOTO / PAT1, OMIT, 2
40 GOTO / PAT2, OMIT, 3
41 SPINDL / OFF
42 COOLNT / OFF
43 STOP
44 END
45 FINI

Cu privire la programul prezentat, se fac următoarele precizări.


PARTNO reprezintă identificatorul piesei şi, totodată,
identificatorul de program. După REMARK, se precizează faptul că se
prezintă un program, întocmit pentru o operaţie de găurire, alezare şi
filetare. În continuare, apare identificatorul de maşină-unealtă (MACHIN),
după care se scrie tipul maşinii utilizate la prelucrare.
Dublul semn al dolarului ($$), utilizat în fraza a patra, permite
scrierea unor explicaţii în limbajul curent. În frazele 05 … 10 sunt programate
elementele geometrice ale piesei (trei puncte, un cerc şi două structuri de
puncte).
În fraza nr. 11 apare o instrucţiune de translaţie a originii sistemului
de axe, din punctul O în punctul O’ (P3). Această schimbare de origine se
impune datorită uşurinţei de a centra piesa, pe maşina-unealtă, în raport cu
alezajul de diametru  40. Activarea translatării sistemului de axe se face în
fraza nr. 12, cu instrucţiunea REFSYS.
În fraza nr. 13 se precizează că urmează programarea instrucţiunilor
aferente fazelor de prelucrare. Punctul din care porneşte scula are
coordonatele (0, 0, 100) precizate după cuvântul FROM, acestea fiind
definite în raport cu sistemul de referinţă O’X’Y’Z’.

379
Ingineria şi managementul producţiei

Prin instrucţiunea CLEARP din fraza nr. 15, se programează


selectarea unui plan paralel cu planul X’Y’, la distanţa de 22 mm. Acesta
constituie planul de referinţă, de unde sculele vor începe prelucrarea.
În continuare, este selecţionată scula codificată cu 01 (în fraza 16),
se comandă pornirea pompei lichidului de aşchiere (fraza 17), o turaţie a
arborelui principal, în sens orar, de 1200 rot/min (fraza 18), precum şi o
viteză de avans de 120 mm/min (fraza 19).
În fraza 20 este programat ciclul de găurire (CYCLE / DRILL),
care se va executa în structurile de puncte indicate în frazele 21 şi 22.
După executarea acestui ciclu de găurire, arborele principal, ca şi
pompa lichidului de aşchiere sunt oprite (frazele 23 şi 24). Urmează
selectarea sculei, de tip alezor, cu numărul 02 (în fraza 25), care, în condiţiile
precizate în frazele 26 … 28, va executa un ciclu de alezare (CYCLE /
BORE din fraza 29), în două puncte din cadrul şirurilor de puncte PAT1 şi
PAT2 (frazele 30 şi 31).
La terminarea ciclului de alezare, arborele principal şi pompa
lichidului de aşchiere sunt oprite (frazele 32 şi 33), aducându-se, apoi, în
poziţia de lucru tarodul M8, cu codul 03 (în fraza 34). Cu această sculă se
execută, în condiţiile precizate în frazele 35 … 37, ciclul de filetare
THREAD / 33 (fraza 38), în şase puncte din şirurile PAT1 şi PAT2 (frazele
39 şi 40).
După aceea, se comandă oprirea arborelui principal şi a pompei
lichidului de aşchiere, în frazele 41 şi 42.
Ultimele trei instrucţiuni din program sunt utilizate pentru a marca
oprirea maşinii-unelte (STOP) şi sfârşitul programului (END şi FINI).

380

S-ar putea să vă placă și