SlideShare a Scribd company logo
1 of 58
Masina de frezat NovaMill CNC
Manual de programare
CUPRINS
1. NTRODUCERE_____________________________________________________________ 5
2. CE ESTE CNC?_____________________________________________________________ 6
3. EXEMPLU DE PROCES DE PRELUCRARE PE MUCN__________________________ 6
4. STRUCTURA PROGRAMULUI PRINCIPAL CNC_______________________________ 8
5. STRUCTURA SUBPROGRAMELOR__________________________________________ 10
6. COMENZI PENTRU OPERAREA CU SUBPROGRAME_________________________ 11
7. COMANDA PENTRU REPETAREA SUBROGRAMULUI APELAT________________ 11
8. DEFINIREA SEMIFABRICATULUI__________________________________________ 12
9. DENUMIREA SI SALVAREA PROGRAMELOR________________________________ 12
10. NUMEROTAREA BLOCURILOR (LINIILOR) DINTR-UN PROGRAM_____________ 13
11. STRUCTURA BLOCURILOR________________________________________________ 14
12. FUNCTII PREGATITOARE_________________________________________________ 14
13. FUNCTIA AVANS_________________________________________________________ 15
14. FUNCTII DIVERSE________________________________________________________ 15
15. TURATIA ARBORELUI PRINCIPAL_________________________________________ 15
16. GESTIONAREA SCULELOR________________________________________________ 16
17. CORECTIA DE SCULA_____________________________________________________ 17
18. COORDONATE ABSOLUTE SI RELATIVE___________________________________ 17
19. IGNORAREA OPTIONALA A BLOCURILOR__________________________________ 18
20. COMENTARII SI MESAJE IN INTERIORUL PROGRA MELOR__________________ 18
21. FUNCTII PREGATITOARE G_______________________________________________ 18
21.1. Functii G modale si nemodale______________________________________________ 19
22. FUNCTII G (FUNCTII PREGATITOARE). INTRODUCERE_____________________ 19
22.1. G00 - pozitionare rapida__________________________________________________ 21
22.2. G01 - interpolare liniara__________________________________________________ 22
22.3. G02 si G03 - interpolare circulara___________________________________________ 23
22.4. G04 - temporizare_______________________________________________________ 26
22.5. G20 si G21 - setarea sistemului de unitati de masura___________________________ 27
22.6. G28 - revenire in punctul de referinta_______________________________________ 27
22.7. G40, G41, G42 - compensarea sculei________________________________________ 28
22.7.1. Pozitia de lucru si comanda miscarilor____________________________________________________ 29
22.7.2. Initierea compensarii sculei___________________________________________________________ 30
22.7.3. Anularea compensarii sculei__________________________________________________________ 30
22.8. G73 .. G89 - cicluri de gaurire______________________________________________ 32
22.8.1. Programarea ciclurilor in coordonate absolute/relative_______________________________________ 33
22.8.2. Programarea pozitiei (nivelului) de revenire dupa prelucrarea gaurii______________________________ 33
22.8.3. G73 - gaurire rapida_________________________________________________________________ 35
22.8.4. G74 - filetare______________________________________________________________________ 35
22.8.5. G76 - alezare de finisare___________________________________________________________ 36
22.8.6. G80 - anularea ciclului de gaurire____________________________________________________ 37
22.8.7. G81 - gaurire___________________________________________________________________ 37
22.8.8. G82 - gaurire cu temporizare___________________________________________________________ 37
22.8.9. G83 - gaurire adanca_____________________________________________________________ 38
22.8.10. G84 - filetare cu tarodul_____________________________________________________________ 38
22.8.11. G85 - alezare______________________________________________________________________ 38
22.8.12. G86 - alezare______________________________________________________________________ 39
22.8.13. G87- alezare de jos in sus____________________________________________________________ 39
22.8.14. G89 - gaurire_____________________________________________________________________ 40
22.9. Exemplu de utilizare a ciclurilor de gaurire_____________________________________ 41
22.10. G90 - programare in coordonate absolute____________________________________ 41
22.11. G91- programare in coordonate relative_____________________________________ 42
22.12. G94 - avansul exprimat in mm/min__________________________________________ 42
22.13. G95 - avans exprimat in mm/rot____________________________________________ 42
22.14. G98 - revenire la nivelul initial_____________________________________________ 42
22.15. G99 - revenire la nivelul R________________________________________________ 42
22.16. G170-G173 - comenzi pentru frezarea buzunarelor circulare si dreptunghiulare______ 43
22.16.1. G170 si G171 - prelucrarea unui buzunar circular - degrosare__________________________________ 43
22.16.2. G170 si G171 - prelucrarea unui buzunar circular - degrosare si finisare__________________________ 45
22.16.3. G170 si G171 - prelucrarea unui buzunar circular - finisare printr-o singura trecere_________________ 46
22.16.4. G172 si G173 - prelucrarea unui buzunare dreptunghiular - degrosare___________________________ 48
22.16.5. G172 si G173 - prelucrarea unui buzunar dreptunghiular - degrosare si finisare____________________ 50
22.16.6. G172 si G173 - preluarea unui buzunar dreptunghiular - finisare printr-o singura trecere_____________ 51
23. FUNCTII DE TIP M________________________________________________________ 53
23.1. Functii de tip M recunoscute de echipamentul CNC Denford_____________________ 53
23.2. M00 - oprirea programului________________________________________________ 55
23.3. M01 - oprirea optionala a programului_______________________________________ 55
23.4. M02 - resetarea programului______________________________________________ 55
23.5. M03 - pornirea turatiei cu rotirea axului principal in sens orar____________________ 55
23.6. M04 - pornirea turatiei cu rotirea axului principal in sens trigonometric____________ 55
23.7. M05 - oprirea turatiei____________________________________________________ 56
23.8. M06 - schimbarea automata a sculelor_______________________________________ 56
23.9. M08 - pornirea lichidului de racire-ungere___________________________________ 56
23.10. M09 - oprirea lichidului de racire-ungere____________________________________ 56
23.11. M10 - deschiderea sistemului de fixare a semifabricatului_______________________ 56
23.12. M11 - inchiderea sistemului de fixare a semifabricatului_________________________ 56
23.13. M13 - pornirea a turatiei in sens orar si a lichidului de racire-ungere______________ 57
23.14. M14 - pornirea turatiei in sens trigonometric si a lichidului de racire-ungere________ 57
23.15. M19 - orientarea arborelui principal_________________________________________ 57
23.16. M20 - deplasarea MASS (Magazinul Automat de Schimbare a Sculelor) sub arborele principal 57
23.17. M21 - deplasarea MASS de sub arborele principal_____________________________ 57
23.18. M22 - deplasarea MASS in jos_____________________________________________ 57
23.19. M23 - deplasarea MASS in sus_____________________________________________ 57
23.20. M24 - deschiderea sistemului de fixare a sculei_______________________________ 57
23.21. M25 - inchiderea sistemului de fixare a sculei_________________________________ 58
23.22. M27 - resetarea pozitiei magazinului de scule_________________________________ 58
23.23. M30 - oprirea programului si pozitionare la inceputul lui________________________ 58
23.24. M32 - rotirea magazinului de scule in sens orar_______________________________ 58
23.25. M32 - rotirea magazinului de scule in sens antiorar____________________________ 58
23.26. M38 - deschiderea usii de protectie_________________________________________ 58
23.27. M39 - inchiderea usii de protectie__________________________________________ 59
23.28. M6267, M76, M77_____________________________________________________ 59
23.29. M70 - schimbarea semnului pe directia X - activat_____________________________ 59
23.30. M71 - schimbarea semnului pe directia Y - activat_____________________________ 59
23.31. M80 - schimbarea semnului pe directia X - dezactivat__________________________ 59
23.32. M81 - schimbarea semnului pe directia Y - dezactivat__________________________ 59
23.33. M98 - apelare subprogram________________________________________________ 59
23.34. M99 - incheierea subprogramului si revenirea in programul apelant_______________ 60
1. NTRODUCERE
Echipamentul CNC (Conducere Numerica cu Calculatorul) Denford cu care opereaza intreaga gama de masini unelte
Denford este un sistem compatibil FANUC care utilizeaza codul de programare ISO
Manualul acopera toate etapele implicate in elaborarea instructiunilor codificate, necesare echipamentului CNC pentru
prelucrarea unui reper. Secventa de instructiuni codificate necesara prelucrarii unui reper poarta numele de program piesa.
Fiecare segment al programului este alcatuit dintr-un numar oarecare de coduri, numite si functii, cele mai importante fiind
seturile de coduri G si M. Acestea sunt cele care alcatuiesc limbajul de baza utilizat pentru descrierea modului in care va fi
prelucrata o piesa: ce miscari trebuie efectuate, in ce ordine, cand trebuie inlocuita scula, etc.
Primele capitole ale acestui manual acopera aspectele principale ale programarii MUCN si ofera indicatii asupra utilizarii
comenzilor. Fiecare capitol se dezvolta progresiv, utilizand un limbaj comun, usor de urmarit, ghidand utilizatorul in
realizarea programelor de conducere numerica. Dupa parcurgerea primei parti, operatorul va fi avea cunostintele de baza
necesare abordarii programarii sub aspectele ei esentiale.
Fara indoiala, acest manual nu poate (nici nu isi propune) sa ofere toate cunostintele necesare programarii. Subiectul este
pur si simplu prea vast pentru ca asa ceva sa fie posibil. Totusi, acest manual formeaza baza necesara pe care sa se
cladeasca noi cunostinte prin consultarea unor documentatii mai pretentioase.
Capitolele dedicate codurilor G si M prezinta detaliat functiile utilizate in programarea CNC. Aceste capitole sunt concepute
mai degraba ca ghiduri de utilizare si se adreseaza celor care dispun de cunostintele de baza in domeniul programarii CNC.
Partea I
2. CE ESTE CNC?
CNC (Conducere Numerica cu Calculatorul) este sintagma generala
utilizata pentru un sistem care controleaza functionarea unei masini
unelte utilizand instructiuni codificate prelucrate de catre un
calculator.
3. EXEMPLU DE PROCES DE PRELUCRARE PE MUCN
Mentionam de la inceput, ca in acest exemplu sunt incluse toate etapele procesului, deci si pregatirea programului, nu
numai prelucrarea efectiva a piesei pe masina unealta (Fig. 1):
1. Scrierea programului CNC utilizand coduri G si M. Programul descrie secventa de operatii care se efectueaza pe
MUCN in scopul prelucrarii piesei. Programul poate fi scris off-line, adica fara implicarea masinii, fie manual, fie cu
asistenta unui calculator, utilizand un sistem CAD/CAM.
2. Programul este incarcat in calculatorul masinii, numit controler. In acest stadiu, programul inca mai poate fi modificat si
este posibila simularea functionarii sale utilizand facilitatile interactive ale calculatorului.
3. Controlerul proceseaza programul piesa si transmite semnale masinii unelte, semnale care dau informatii diverselor
componente ale acesteia asupra operatiilor necesare in vederea prelucrarii piesei.
Prin aplicarea conducerii numerice la o masina unealta clasica, lucrul cu aceasta poate fi complet automatizat.
4. STRUCTURA PROGRAMULUI PRINCIPAL CNC
Programul piesa poate sa contina un numar oarecare de programe individuale, care impreuna descriu toate operatiile care
trebuie efectuate pentru a prelucra o piesa.
Programul principal este programul care detine controlul tuturor actiunilor. El este primul citit si incarcat in memorie cand
este rulat tot programul piesa. Programul principal poate apela un numar oarecare de programe mai mici. Aceste programe
se mai numesc subprograme, si sunt utilizate pentru a realiza sarcini care se repeta. Dupa rularea unui astfel de
subprogram, controlul revine programului principal.
Bineinteles, controlerul (calculatorul masinii) functioneaza dupa un program, care in acest caz este chiar programul
principal.
Programele principale, ca si subprogramele de altfel, sunt scrise utilizand codurile ISO prezent 636i87g ate mai jos.
ADRESE
N- indica numarul frazei;
G - face trimitere la codurile G (functii pregatitoare);
X - Indica distanta care trebuie parcursa de sanie de-a lungul axei X;
Y - Indica distanta care trebuie parcursa de sanie de-a lungul axei Y;
Z - Indica distanta care trebuie parcursa de capul masinii de-a lungul axei Z;
F - Indica viteza de avans;
M - apeleaza functii diverse (care de obicei se adreseaza direct masinii unelte pentru a stabili conditiile de
prelucrare);
S - Indica turatia arborelui principal;
T - se refera la gestionarea sculelor.
Fiecare bloc, sau linie a programului, contine adrese care trebuie plasate in ordinea:
N, G, X, Y, Z, F, M, S, T;
Aceasta ordine trebuie respectata in orice fraza. Cu toate acestea, nu fiecare fraza va contine toate adresele mentionate
mai sus, adica dintr-o fraza pot sa lipseasca unele adrese, daca nu sunt necesare.
Organizarea blocurilor de date intr-un program respecta urmatorul sablon. Este esential ca structura de mai jos sa fie
respectata, pentru a asigura corectitudinea atat a prelucrarii, cat si a simularii (Fig. 2).
Lista de instructiuni de mai sus reprezinta un program scris in sistemul de programare Denford. Pentru ca un astfel de
program sa opereze corect si pe un echipament original FANUC, informatiile despre sistemul CAD/CAM utilizat si
dimensiunile semifabricatului trebuie eliminate din program.
5. STRUCTURA SUBPROGRAMELOR
Un program care contine secvente care se repeta poate fi memorat ca si subprogram pentru a simplifica programul
principal.
Un subprogram este introdus in memoria controlerului in modul Edit, ca si un program principal.
Diferentele dintre un subprogram si un program principal sunt urmatoarele:
1) Subprogramele nu contin informatiile despre marimea semifabricatului la inceputul programului.
2) Un subprogram se termina cu codul M99
Un subprogram poate fi apelat cand masina se afla in modul de lucru automat (Auto Mode). Subprogramele pot la randul lor
sa apeleze alte subprograme. Se spune despre un program principal care apeleaza un subprogram ca este un program cu o
bucla. Nivelul maxim admis pentru un program principal este cu patru bucle. Aceasta inseamna ca nivelul maxim de
imbricare al apelurilor de subprograme este patru. In Fig. 3 se prezinta un program principal cu doua bucle.
Programul principal Subprogramul 1 Subprogramul 2
Primul nivel de imbricare Al doilea nivel de imbricare
Fig. 3. Imbricarea apelurilor de subprograme
a buclei a buclei
6. COMENZI PENTRU OPERAREA CU SUBPROGRAME
OBSERVATII GENERALE
Observatia 1:
Subprogramele sunt memorate sub numere de program formate din patru cifre.
Observatia 2:
Daca pentru o scula sunt necesare corectii de raza/lungime si acea scula este utilizata in subprogram, corectiile
trebuie apelate si apoi anulate in interiorul subprogramului.
Observatia 3:
Pentru a apela un subprogram se utilizeaza codul M98 urmat de Pxxxx unde xxxx este numarul programului apelat
(spre exemplu, M98 P2000).
Aceasta comanda se citeste 'apelul programului numarul 2000'.
Observatia 4:
Un apel de subprogram (M98 P2000) poate fiplasat intr-o fraza in care se comanda si o miscare. Spre exemplu,
N1130 G01 X50 M98 P2000
Observatia 5:
Un subprogram se incheie cu codul M99. Acesta returneaza controlul programului principal (sau mai corect
programului apelant, deoarece acesta, la randul lui, poate fi un subprogram).
Codul M99 va returna controlul la blocul urmator celui in care s-a facut apelul din programul apelant.
In cazul in care codul M99 este urmat de Pxxxx, controlul va fi predat in programul apelant la linia (blocul) xxxx. Spre
exemplu, linia de program
N3450 M99 P160
va fi interpretata 'intoarcere la linia 160 in programul apelant'.
7. COMANDA PENTRU REPETAREA SUBROGRAMULUI APELAT
Este posibil apelul unui subprogram in care sa se specifice si numarul de repetari ale acestuia. Formatul unui astfel de apel
este urmatorul:
M98 P2000 xxxx
si va fi interpretat 'efectueaza programul 2000 de xxxx ori'. Daca numarul de repetari este omis, subprogramul va fi efectuat
o singura data.
8. DEFINIREA SEMIFABRICATULUI
Definirea/descrierea semifabricatului (BILLET DEFINITION) este o caracteristica a sistemului de programare Denford.
Ea indica dimensiunile semifabricatului care vor fi utilizate de catre modulul de simulare al pachetului softw are. Precizarea
dimensiunilor semifabricatului nu are nici un rezultat in (nu influenteaza in nici un fel) prelucrarea efectiva.
Descrierea semifabricatului se face la inceputul programului principal. De obicei, in blocul care precede descrierea se indica
unitatile de masura in care sunt exprimate dimensiunile semifabricatului: G21 pentru sistemul metric si G20 pentru unitati
britanice.
Spre exemplu, liniile de program
N0010 G21;
[BILLET X100 Y150 Z20
vor fi interpretate:
- toate dimensiunile sunt masurate in milimetri;
- semifabricatul este o prisma cu dimensiunile 100x150x20 mm.
Observatie: un program scris pentru o masina Denford, sau utilizand postprocesorul Denford nu va putea opera direct pe o
masina FANUC originala. Modulul de simulare al programului este incompatibil cu echipamentul FANUC. Pentru ca
programul sa ruleze cu succes pe o masina FANUC, orice referire la sistemul CAD/CAM Denford, precum si descrierea
semifabricatului trebuie inlaturate din program.
9. DENUMIREA SI SALVAREA PROGRAMELOR
Salvarea pe disc a programelor este posibila numai dupa ce acestora li s-a atribuit un numar sau nume.
Daca se salveaza un program editat cu consola Denford numarul programului poate fi cuprins intre 1 si 999999999 (in acest
context numarul programului joaca rolul de nume al acestuia).
Daca programul este editat in afara sistemului MUCN cu o tastatura QWERTY numele programului poate fi alcatuit din litere
si/sau cifre.
Observatia 1:
Subprogramele trebuie sa fie numerotate in domeniul 0001 .. 9999, deci utilizand patru cifre. De altfel, se recomanda
ca orice program sa fie numerotat in domeniul mai sus mentionat.
Observatia 2:
Inainte de a salva un program pe disc, verificati daca numele fisierului curent nu a fost deja folosit la salvarea altuia.
In acest caz, acel fisier de pe disc va fi inlocuit cu cel curent, deci va fi distrus.
Observatia 3:
Programele care urmeaza sa fie rulate ulterior pe o masina FANUC trebuie sa aiba inscris numarul de program pe
prima lor linie. Formatul pentru inscrierea numarului de program compatibil FANUC este Oxxxx, unde xxxx este numarul
programului, de exemplu
O20
10. NUMEROTAREA BLOCURILOR (LINIILOR) DINTR-UN
PROGRAM
Un program este alcatuit din mai multe comenzi, fiecare comunicand masinii instructiuni pentru rezolvarea unei anumite
sarcini sau operatii.
Fiecare comanda este o linie separata in cadrul programului. Vom mai numi o astfel de linie din program, bloc. Fiecare bloc
este separat de urmatorul printr-un caracter special, care indica sfarsitul de linie. Sistemul de programare Denford utilizeaza
ca marcator al sfarsitului de bloc caracterul punct si virgula (;).
La inceputul blocului poate fi specificata o valoare numerica (cuprinsa intre 0001 si 9999) ca si continut al adresei N. Pot fi
numerotate toate liniile unui program, sau doar cele care necesita asa ceva.
Observatia 1:
Atunci cand este utilizata, adresa Numar de bloc (linie) - N, trebuie sa fie plasata prima in blocul din care face parte.
Observatia 2:
Se recomanda numerotarea cu valori alcatuite din patru cifre, dar care sa nu fie consecutive, ci crescatoare din 10
in 10. In acest mod este posibila in orice moment inserarea de noi linii intr-un program.
Observatia 3:
Chiar daca numerotarea blocurilor nu este o prioritate in scrierea programelor este important sa se numeroteze cel
putin anumite linii ale programului; astfel de linii ar putea fi acelea in care se comanda schimbarea sculei. De altfel, unele
linii trebuie obligatoriu numerotate: este vorba de liniile la cere se doreste revenirea din subprograme, atunci cand revenir ea
nu urmeaza sa se faca in pozitia implicita (la linia consecutiva apelului de subprogram) - vezi observatia 5 de la COM ENZI
PENTRU OPERAREA CU SUBPROGRAM E.
11. STRUCTURA BLOCURILOR
Ordinea in care apar adresele intr-un bloc este bine stabilita si trebuie respectata intocmai. Aceasta ordine este prezentata
mai jos.
N0000 G00 X00 Y00 Z00 F0000 M00 S0000 T00;
Observatie: Din orice bloc pot lipsi una sau mai multe adrese.
12. FUNCTII PREGATITOARE
Functiile pregatitoare, numite si functii G sunt utilizate pentru a descrie traiectoria sculei sau pentru a activa/dezactiva
anumite functii ale masinii. Functiile G sunt utilizate pentru indicarea tipului de interpolare utilizat, pentru controlul operatiilor
de gaurire, specificarea unitatilor de masura, activarea corectiilor de scula, etc,
O functie G este invocata prin caracterul G care desemneaza adresa si o valoare numerica de doua cifre, continutul adresei.
Traiectoria sculei
Traiectoria sculei este determinata de miscari de-a lungul unor segmente de dreapta si sau arce de cerc care descriu profilul
piesei de prelucrat.
A) Deplasarea de-a lungul unui segmentde dreapta
Acest tip de miscare se mai numeste si interpolare liniara. Interpolarea liniara este activata cu functia G01. Formatul
comenzii este:
G01 Y.; (P1 - P2)
X. Y.; (P2 - P3)
X.; (P3 - P4)
B) Deplasarea de-a lungul unui arc de cerc
Acest tip de miscare se numeste interpolare circulara. Interpolarea circulara este activata cu functiile G02 (in sens orar) si cu
G03 (in sens trigonometric).
Formatul comenzii este: G03 X. Y. R.; X si Y sunt coordonatele punctului final al arcului, iar R raza arcului parcurs. Nu este
necesara specificarea coordonatelor centrului miscarii.
13. FUNCTIA AVANS
Deplasarea sculei cu o anumita viteza in vederea aschierii se numeste AVANS. Avansul se regleaza utilizand
adresa F urmata de o valoare numerica, aceasta reprezentand continutul adresei.
Dupa cum la inceputul programului a fost invocata functia G20 sau G21, marimea avansului este exprimata in inch/min.,
respectiv in mm/min.
14. FUNCTII DIVERSE
Functiile diverse, numite si Functii M, dupa adresa care le introduce, sunt utilizate in special pentru a actiona sau opri
diverse componente ale masinii (exemplu, M03 - pornirea axului principal, M05 - oprirea axului principal).
In general functiile invocate prin valori mici ale continutului au aceeasi semnificatie pe majoritatea echipamentelor de
conducere numerica. Functiile invocate prin valori mari ale continutului sunt in general specifice anumitor echipamente.
Functiile M sunt apelate prin adresa M cu un continut format din doua caractere numerice.
15. TURATIA ARBORELUI PRINCIPAL
Viteza de rotatie a sculei in raport cu piesa de prelucrat se numeste viteza de aschiere. Aceasta nu poate fi reglata in mod
direct, deoarece este influentata de doi parametri: turatia sculei (arborelui principal) si diametrul sculei. Diametrul fiind o
marime care se alege independent de masina, rezulta ca viteza de aschiere poate fi reglata (din punctul de vedere al
conducerii numerice) prin intermediul turatiei. Turatia este comandata prin intermediul adresei S. Continutul acesteia este o
valoare numerica care exprima turatia in rot/min. Pentru a putea fi aplicata turatia solicitata, aceasta trebuie sa se incadreze
in domeniul de turatii al masinii.
Observatia 1:
Cand in aceeasi fraza sunt apelate impreuna comenzi de miscare si de reglare a turatiei, acestea sunt executate
cvasisimultan. In orice caz, in momentul inceperii miscarii, turatia efectiva este cea reglata in fraza curenta.
Observatia 2:
Intr-o fraza este acceptat un singur apel al functiei S.
16. GESTIONAREA SCULELOR
Sculele pot fi inlocuite pe parcursul rularii unui program de prelucrare utilizand functia T. Fiecarei scule care va lucra intr-un
program ii este asociat un numar. Daca masina de frezat este echipata cu un dispozitiv automat de schimbare a sculelor,
numarul asociat unei scule coincide cu numarul locasului in care ea este stocata in dispozitiv. Numarul sculei este invocat
prin adresa T si continutul ei. Acesta desemneaza numarul asociat sculei vizate. Pentru a comanda schimbarea sculei,
trebuie invocata functia M6 inaintea mentionarii sculei care urmeaza sa o inlocuiasca pe cea in lucru.
Un exemplu de apel al schimbarii sculei este urmatorul:
M06 T3
Aceasta se va citi 'inlocuieste scula curenta cu scula numarul 3'.
Observatia 1:
Functia M06 trebuie sa fie plasata imediat inaintea functiei T care indica numarul noii scule.
Observatia 2:
Intr-o fraza este acceptat un singur apel al functiei T.
Observatia 3:
In momentul citirii secventei M06 T. masina va comanda deplasarea dupa cele trei axe in punctul de schimbare a
sculei, va opri turatia arborelui principal si se va efectua inlocuirea sculei. Aceasta secventa de actiuni are loc indiferent de
pozitia sculei in momentul citirii comenzii de schimbare a sculei din program. Din acest motiv se recomanda urmarirea cu
atentie a pozitiei sculei inaintea apelului inlocuirii, si daca e cazul, dirijarea retragerii ei pentru evitarea eventualelor coliziuni
cu piesa.
17. CORECTIA DE SCULA
In general, pentru a prelucra o piesa de o anumita complexitate sunt necesare mai multe tipuri de scule, unele din ele de
diametre diferite. Scrierea unui program care sa tina seama de dimensiunile sculei ar fi foarte dificila. Pentru a putea lua in
calcul dimensiunile sculei intr-un program generalizat, se masoara diametrul si lungimea fiecarei scule in afara programului
(inaintea rularii sale) si se salveaza intr-un fisier special, numit fisier de corectii. In esenta, aceasta face ca programul scris,
traiectoriile sculei pe care el le descrie, sa fie independente de dimensiunile sculei. Dimensiunile salvate sunt
numite offset sau corectii de scula.
Observatie: cand echipamentul de conducere numerica citeste din program o functie T, el preia din fisierul de corectii si
dimensiunile corespunzatoare noii scule. Pentru a lua in calcul diametrul frezei la comanda traiectoriei sculei, trebuie
invocata in prealabil functia G41 sau G42 (compensarea sculei pe partea stanga, respectiv pe partea dreapta).
18. COORDONATE ABSOLUTE SI RELATIVE
Cand este activa functia G90 coordonatele X, Y si Z dintr-un
program sunt masurate fata de un punct fix, raportat la piesa de
prelucrat, numit nulul piesei. Se spune in acest caz ca
programarea s-a facut in coordonate absolute. Dimpotriva, daca
activ este G91, coordonatele sunt raportate la ultimul punct
invocat (atins de scula), ceea ce corespunde programarii in
coordonate relative.
Pentru programarea traseului P1-P2-P3-P4 din Fig. 6 se poate
proceda in doua moduri:
A) In coordonate absolute:
G90; selectarea modului de lucru in coordonate
absolute
G01 Y60 F150; deplasare pe segmentul P1-P2 cu
avansul 150 mm/min.
G03 X60 Y100 R40; deplasare pe arcul P2-P3 cu raza
de 40 mm
G01 X0; deplasare pe segmentul P3-P4
B) In coordonate relative:
G91; selectarea modului de lucru in coordonate relative
G01 Y60 F150; deplasare pe segmentul P1-P2 cu avansul 150 mm/min.
G03 X-40 Y40 R40; deplasare pe arcul P2-P3 cu raza de 40 mm
G01 X-60; deplasare pe segmentul P3-P4
19. IGNORAREA OPTIONALA A BLOCURILOR
Liniile de program numerotate vor fi ignorate (sarite) la rularea programului daca sunt precedate de caracterul slash si daca
comutatorul Block skip de pe panoul de control al masinii este in pozitia On. Cand comutatorul Block skip este in
pozitia Off liniile marcate cu '/' sunt tratate ca orice alta linie din program.
Observatie: caracterul slash poate fi plasat oriunde intr-o fraza, nu numai la inceputul ei. In acest caz comenzile aflate
inaintea lui se vor comporta normal, vor fiexecutate, iar cele care ii urmeaza, vor fi ignorate.
20. COMENTARII SI MESAJE IN INTERIORUL PROGRAMELOR
Daca programul este scris off-line, adica in afara masinii unelte, de exemplu pe un calculator, in interiorul sau pot fi plasate
comentarii si/sau mesaje, adica secvente de text ignorate de echipamentul de conducere numerica.
Comentariile sunt utile pentru a introduce anumite explicatii asupra programului. Astfel, pot fi indicate dimensiunile si tip ul
sculelor atunci cand ele intra in lucru.
Mesajele au aceeasi utilitate ca si comentariile, dar sunt si afisate pe panoul de control al masinii. Spre exemplu, poate fi
inserat in program mesajul 'incepe prelucrarea buzunarului circular cu raza de 20 mm si adancimea de 3'. In momentul
parcurgerii liniei de program care contine mesajul, acesta va fiafisat si pe consola echipamentului (panoul de control).
21. FUNCTII PREGATITOARE G
Functiile pregatitoare, G, se utilizeaza pentru descrierea traiectoriei sculei sau setarea modurilor de lucru ale masinii. Astfel
de functii permit controlul miscarilor, al operatiilor de gaurire, alegerea unitatilor de masura, etc.
In mod normal, functiile G sunt plasate la inceputul frazelor, imediat dupa numarul de linie, daca acesta exista.
Este permisa prezenta mai multor functii G intr-o fraza, cu conditia sa nu se nege reciproc.
O functie G este alcatuita din caracterul G (adresa) si o valoare numerica de doua cifre (continutul).
G00
Adresa Continutul
21.1. Functii G modale si nemodale
Functiile G se clasifica, din punctul de vedere al ariei de influenta in:
 Functii modale. Acestea sunt efective in linia in care sunt invocate, dar si in liniile urmatoare, atata timp cat nu sunt
negate de functii din aceeasi categorie. Cu alte cuvinte, odata activata o functie modala, ea are efect si in urmatoarele linii
de program, fara a fi necesara repetarea apelului ei. Functiile modale, la randul lor, se clasifica in grupuri, dupa cum
vizeaza o anumita sarcina sau alta. O functie G modala ramane activa pana in fraza in care o functie din acelasi grup este
apelata. Un exemplu de grup este cel al functiilor de pozitionare si interpolare.
In exemplul de mai jos, echipamentul de conducere numerica asuma f aptul ca in frazele N60 .. N80 se efectueaza
interpolare liniara, desi acest lucru nu este programat in mod explicit in acele fraze. In frazele mentionate, este efectiva
functia G1 apelata in fraza N50.
N20 G21;
N30 G90;
N40 G00 X50 Y50;
N50 G01 Z-5;
N60 X100;
N70 Y120;
N80 X130 Y160;
N90 G03 X150 Y 180 R20;
In fraza N90 interpolarea liniara G01 este negata de functia G03, interpolare circulara. Functiile G01 si G03 fac parte din
acelasi grup de functii.
Partea a II-a
22. FUNCTII G (FUNCTII PREGATITOARE). INTRODUCERE
Retineti ca exista doua tipuri de functii G. O functie modala este memorata si este efectiva pana cand este apelata o alta
functie G din acelasi grup modal. Functiile nemodale (non-modale) sunt efective doar in frazele in care sunt apelate.
Nu este necesar apelul aceleiasi functii modale in fraze consecutive; totusi, apelarea repetata in fraze consecutive a unei
functii modale nu constituie eroare. Spre exemplu, in cazul prelucrarii unui contur alcatuit numai din segmente de dreapta,
este suficienta apelarea lui G1 doar in fraza in care incepe conturarea. G01 va ramane activ pana la apelul unui alt tip de
interpolare (G00, G02 sau G03).
Intr-o fraza pot fi apelate cel mult patru functii G. Acestea trebuie sa faca parte din grupuri modale diferite; daca in aceeasi
fraza se apeleaza doua sau mai multe functii G din acelasi grup, efectiva va deveni doar ultima din grupul respectiv.
Lista functiilor G
Tabelul 1
Functia Grupul Semnificatia Observatii
G00 1 Pozitionare punct cu punct Se efectueaza cu
avans rapid
G01 1 Interpolare liniara Se efectueaza cu
avans de lucru
G02 1 Interpolare circulara in sens orar
G03 1 Interpolare circulara in sens
trigonometric
G04 0 Oprire precisa
G20 6 Sistemul de unitati britanic inch, inch/min
G21 6 Sistemul international de unitati mm, mm/min
G28 0 Revenire in punctul de referinta
G40 7 Anularea compensarii sculei
G41 7 Compensarea sculei pe stanga
G42 7 Compensarea sculei pe dreapta
G73 9 Gaurire rapida
G74 9 Filetare cu cutit
G76 9 Alezare de finisare
G80* 9 Anularea ciclului de gaurire
G81 9 Gaurire
G82 9 Gaurire cu temporizare
G83 9 Gaurire adanca
G84 9 Filetare cu tarod
G85 9 Alezare
G86 9 Alezare
G87 9 Alezare de jos in sus
G89 9 Gaurire
G90* 3 Programare in coordonate absolute
G91 3 Programare in coordonate relative
G94* 5 Avans pe minut
G95 5 Avans pe rotatie
G98* 10 Revenire la nivelul initial al buzunarului Utilizate la ciclurile de
G99 10 Revenire la nivelul R al buzunarului gaurire
G170 0 Prelucrarea buzunarului circular
G171 0 Prelucrarea buzunarului circular
G172 0 Prelucrarea buzunarului dreptunghiular
G173 0 Prelucrarea buzunarului dreptunghiular
* Stari implicite, cele active la pornirea masinii sau la resetarea masinii dupa oprirea ei cu butonul de urgenta.
Functiile din grupul 0 sunt nemodale. Ele trebuie apelate in toate frazele in care sunt necesare, chiar daca frazele respective
sunt consecutive in program. Toate celelalte functii G sunt modale.
22.1. G00 - pozitionare rapida
Functia G00 provoaca o miscare de pozitionare cu avans rapid (fara aschiere) pana in pozitia indicata prin adresele
geometrice X, Y, Z. Formatul comenzii este urmatorul:
G00 X Y Z
Punctul de pozitionare introdus prin adresele geometrice X, Y si Z poate fi exprimat in coordonate absolute (reportat la un
reper fix - nulul piesei) sau in coordonate relative (raportat la ultima pozitie pro gramata). Operarea in coordonate absolute
este invocata prin functia G90, iar cea in coordonate relative prin functia G91.
Observatia 1:
Valoarea avansului rapid este setata de producatorul echipamentului. Aceasta valoare poate fi redusa de la 100% la
0% dar numai in trepte de 10% utilizand facilitatile de suprascriere a avansului, facilitati specifice masinii unelte. (pentr u
aceasta consultati manualul de operare al masinii).
Observatia 2:
Functia G00 blocheaza compensarea sculei impusa prin una din functiile G41 sau G42. Daca in momentul apelului
lui G00 este activ G41 sau G42, compensarea sculei este reactivata numai cand este apelata din nou o functie de
interpolare (G01, G02 sau G03).
Observatia 3:
Functia G00 este modala si deci, incompatibila cu celelalte functii de interpolare in aceeasi fraza.
Observatia 4:
Functia G00 poate fi invocata in doua moduri: G00 sau G0.
Observatia 5:
In urma apelului functiei G00 miscarea dupa cele trei axe se efectueaza complet independent, cu avansul rapid. In
exemplul alaturat, G00 comanda deplasarea saniilor simultan dupa axele X si Y cu acelasi avans. Aceasta face ca scula sa
para ca se deplaseaza diagonal (Fig. 7).
Cand dupa una din axe s-a atins coordonata programata, deplasarea va continua numai dupa cealalta axa pana la
atingerea punctului programat. Consecinta este ca scula isi modifica directia relativa de deplasare in raport cu piesa.
Deoarece traiectoria efectiva este greu de estimat de catre programator, trebuie acordata o atentie deosebita evitarii
eventualelor coliziuni dintre scula si piesa sau dispozitivul de fixare a semifabricatului.
22.2. G01 - interpolare liniara
Functia G01 - interpolare liniara provoaca o miscare de aschiere de-a lungul unui segment de dreapta cu o viteza de avans
prestabilita.
Formatul comenzii este urmatorul:
G01 X. Y. Z.
Avansul programat va fi efectiv de-a lungul traiectoriei, deci cel rezultat din combinarea miscarilor dupa axele de coordonate
ale celor doua sanii. Valoarea programata a avansului nu se refera la miscarile descompuse de-a lungul axelor (nu se aplica
fiecarei sanii).
Doar in cazurile particulare ale miscarilor programate in directie paralela cu a unei axe sania se va deplasa chiar cu avansul
programat.
In cazul miscarilor care rezulta prin combinarea translatiilor dupa diverse axe, toate saniile implicate trebuie sa opereze in
acelasi interval de timp. Pentru aceasta controlerul va calcula avansul individual pentru fiecare sanie, astfel incat prin
combinarea miscarilor sa rezulte pentru deplasarea programata, avansul solicitat.
Punctul de destinatie poate fi programat in coordonate absolute sau
relative.
Exemplu de programare a functiei G01:
N130 G90 G01 X100 Y50 F115;
Observatia 1:
In exemplul de mai sus G90 G01 si F115 sunt modale, deci pot fi
utilizate si in urmatorul bloc, fara sa fie apelate din nou.
Observatia 2:
Avansul F115 poate fi modificat in Modul Automat de la 0 la 150% utilizand functiile de suprascriere a avansului (vezi
manualul masinii). 100% este chiar avansul programat.
Observatia 3:
Daca nu se programeaza avansul in fraza cu miscare sau in una care sa o preceada, echipamentul de conducere
numerica va lua in considerare un avans de 10 mm/min. pentru programare in unitati internationale (G21), sau 0.4 in/min.
pentru programare in unitati britanice (G20).
Observatia 4:
Functia G01 este modala, si prin urmare, incompatibila cu G00, G02 sau G03 in aceeasi fraza.
Observatia 5:
Functia de interpolare liniara poate fiapelata in doua moduri: G01 sau G1.
22.3. G02 si G03 - interpolare circulara
G02 si G03 provoaca miscari de aschiere (cu avansul de lucru programat) de-
a lungul unui arc de cerc in sens orar, respectiv trigonometric (Fig. 9), intr-un
sistem de coordonate cartezian drept, asa cum sunt cel al masinii si al piesei
la echipamentul Denford.
Sensul orar si cel trigonometric sunt definite conform figurii alaturate.
Cand se programeaza in coordonate absolute, punctul programat este
raportat la punctul curent de nul si desemneaza pozitia finala (in urma miscarii
descrise) a sculei. Capatul arcului descris, sau pozitia finala, mai este numit si
punctul tinta al miscarii.
Cand se programeaza in coordonate relative, X si Y sunt raportate la punctul
de inceput al miscarii (pozitia actuala a sculei). Semnul coordonatelor X si Y
este dat de sensul in care se face deplasarea (pozitia relativa a punctului final
fata de cel initial).
I si J
Pentru a programa un arc cand nu se cunoaste raza, ci doar centrul miscarii, se vor utiliza adresele I si J. I reprezinta poz itia
centrului pe axa X in coordonate relative fata de punctul de start. J reprezinta pozitia centrului pe axa Y in coordonate
relative fata de punctul de start, conform (Fig. 10):
Observatia 1:
I si J pot fi afectate de semnul '-' pentru a indica pozitia centrului fata de punctul de start.
Observatia 2:
I si J nu pot fi programate in coordonate absolute, chiar daca se incearca fortarea acestui lucru prin apelarea lui G90.
Pot fi utilizate cate patru moduri de a apela functiile de interpolare circulara.
Pentru interpolare in sens orar:
G90 G02 X. Y. R. F.;
G90 G02 X. Y. I. J. F.;
G91 G02 X. Y. R. F.;
G91 G02 X. Y. I. J. F.;
si pentru sens trigonometric:
G90 G03 X. Y. R. F.;
G90 G03 X. Y. I. J. F.;
G91 G03 X. Y. R. F.;
G91 G03 X. Y. I. J. F.;
unde:
G02 si G03 sunt apelurile functiilor de interpolare circulara.
G90 si G91 indica tipul de coordonate utilizate. Atentie G90 nu influenteaza pe I si J! acestea vor fi interpretate
intotdeauna in coordonate relative.
X, Y sunt coordonatele punctului final al miscarii.
I, J sunt coordonatele centrului miscarii, relativ la punctul de inceput al miscarii.
R indica marimea razei arcului.
F - avansul cu care se efectueaza miscarea.
Pentru exemplul din Fig. 11, traiectoria sculei poate fi programata dupa cum urmeaza:
Coord. absolute si I,J Coord absolute si R Coord. relative si I,J Coord relative si R
G01 X175 Y40 F125;
G03 X135 Y80 I-40;
G01 X95;
G02 X55 Y40 I-40;
G01 X175 Y40 F125;
G03 X135 Y80 R40;
G01 X95;
G02 X55 Y40 R40;
G01 X175 Y40 F125;
G03 X-40 Y40 I-40;
G01 X-40;
G02 X-40 Y-20 I-40;
G01 X175 Y40 F125;
G03 X-40 Y40 R40;
G01 X-40;
G02 X-40 Y-40 R40;
Cand se utilizeaza raza pentru descrierea arcului trebuie avute in vedere doua situatii:
A) arc cu deschiderea mai mica de 180o
B) arc cu deschiderea mai mare de 180o
. In acest caz, conventional, raza va fi indicata ca avand valoare negativa.
In exemplul din Fig. 12 arcul trasat cu linie continua corespunde situatiei B, iar cel cu linie intrerupta, variantei A.
Programarea celor doua arce se face in modul urmator:
G02 X80 Y40 R39 F125; /cercul A
respectiv
G02 X80 Y40 R-39 F125; /cercul B
Observatia 1:
Cand se programeaza arce utilizand raza, valoarea lui R trebuie sa fie mai mare sau cel putin egala cu jumatate din
deplasarea cea mai lunga de-a lungul axelor. Spre exemplu, daca punctul curent (pozitia actuala a sculei) este (50,50), iar
capatul programat al arcului este in (120,90), deplasarile sunt X=70 si Y=40; raza minima va fi 35, sau
R>max (X/2, Y/2)
Observatia 2:
I0 si J0 pot fi omise din program. Daca centrul arcului se afla pe aceeasi verticala sau orizontala cu punctul de start,
adresa I, respectiv J poate sa lipseasca din fraza.
Observatia 3:
Daca una din adresele X sau Y este omisa, se considera ca punctul final al arcului coincide cu cel de start. In acest
caz, Pot fi luate in considerare doua situatii:
A) centrul este impus prin adresele I si/sau J; se va genera un arc de 360o
, adica un cerc intreg.
B) raza este impusa prin adresa R; se va genera un arc de 0o
, deci scula nu va executa nici o miscare.
Observatia 4:
Daca in aceeasi fraza vor fi specificate atat adresele I si/sau J cat si R, va fi luata in considerare doar R, celelalte
fiind ignorate.
Observatia 5:
Functiile de interpolare circulara pot fi invocate in program in cate doua moduri: G02 sau G2, respectiv G03 sau G3.
22.4. G04 - temporizare
Functia G04 provoaca o oprire, o intrerupere a rularii programului. Durata intreruperii este indicata de catre programator pr in
intermediul adreselor X sau P. Dupa cum se utilizeaza adresa X sau P, durata intreruperii este exprimata in secunde,
respectiv in miimi de secunda. Functia poate fi folosita in formatul:
G04 X. durata temporizarii in secunde
sau
G04 P. durata temporizarii in 1/1000 s
Exemple de utilizare a functiei G04:
G04 X1.5 produce o temporizare de 1,5 sec
G04 P2500 produce o temporizare de 2,5 sec
Observatia 1:
In temporizarea de tip P nu este permisa utilizarea punctului zecimal.
Observatia 2:
Functia G04 se utilizeaza la inceputul frazei.
Observatia 3:
Temporizarea se produce atunci cand avansul F, din fraza anterioara devine zero.
Observatia 4:
Valoarea maxima a temporizarii 999 sec.
Observatia 5:
G04 este activa doar in fraza curenta (este functie nemodala).
Observatia 6:
Functia de temporizare poate fiinvocata in programe in doua moduri: G04 sau G4
22.5. G20 si G21 - setarea sistemului de unitati de masura
G20 selecteaza sistemul britanic de unitati de masura (inch), iar G21 pe cel international, sau metric (mm).
Deplasarile minime care pot fi programate sunt 0,0001 inch,sau 0,001mm.
De sistemul de unitati de masura selectat sunt afectate urmatoarele categorii:
1. Adresele geometrice X, Y si Z.
2. Deplasarile programate in coordonate relative.
3. Avansul programat cu adresa F.
4. Valorile corectiilor de scula.
Observatia 1:
In cadrul unui program nu se va comuta intre G20 si G21.
Observatia 2:
La comutarea de la un sistem de unitati la altul (bineinteles in programe diferite) trebuie refacute fisierele de corectii
de scula.
Observatia 3:
Functiile G20 si G21 fac parte din acelasi grup si sunt modale.
22.6. G28 - revenire in punctul de referinta
Punctul de referinta (Home position, sau punctul de nul al masinii) este un punct fix al masinii unde poate fi deplasata
automat scula. Pe echipamentele Denford nulul masinii este reperul fata de care sunt masurate deplasarile si este plasat la
extremitatile curselor elementelor mobile. Altfel spus, nulul masinii este originea sistemului de coordonate al masinii. Functia
G28 comanda deplasarea sculei in punctul de nul (referinta). Sintaxa functiei este:
G90 G28 X. Y. Z.
sau
G91 G28 X. Y. Z.
unde X, Y si Z pot fi folosite pentru a indica un punct intermediar, prin care va trece scula, inainte de a ajunge in punctul de
referinta.
Acest punct intermediar permite deplasarea sculei pe o cale impusa, pentru a evita coliziunea sculei cu piesa sau
cu dispozitivul de fixare a piesei.
Exemple de invocare a punctului intermediar:
G90 G28 X60 Z60 sau G91 G28 X0 Z40
22.7. G40, G41,G42 - compensarea sculei
Setul de functii G40, G41 si G42 permite generarea foarte precisa a arcelor si unghiurilor utilizand compensarea sculei.
Piesele complexe sunt generate aproape exclusiv, in cazul frezarilor de conturare, exploatand compensarile de scula.
Raza sculei (corectia de raza) este masurata si apoi memorata in fisierul de corectii. Odata descris conturul de prelucrat,
echipamentul de conducere numerica poate genera orice echidistanta la acesta (traseul pe care trebuie sa il parcurga
centrul sculei) tinand seama de raza sculei, fara alte interventii speciale in program.
Pentru a intelege mai bine compensarea sculei in cazul frezarii de conturare trebuie avute in vedere urmatoarele:
1. In mod implicit, traiectoria programata este parcursa de centrul frezei.
2. Cu datele preluate din desenul de executie se poate descrie in mod direct doar conturul piesei, nu si traiectoria sculei.
3. Profilul de prelucrat este independent de diametrul frezei.
Tinand seama de cele de mai sus, se poate trage concluzia ca traiectoria centrului sculei, trebuie determinata luand in calcul
datele profilului de prelucrat si raza frezei. Acest lucru poate fi efectuat prin prelucrarea externa a informatiilor, deci in afara
masinii, sau intern: de catre controler sau de catre echipamentul de conducere numerica. Prima varianta este anevoioasa,
sau impune utilizarea unui sistem CAM. A doua este cea mai convenabila, cu atat mai mult, cu cat limbajul conducerii
numerice dispune de mijloacele necesare efectuarii calculelor si gestionarii comenzilor pentru controlul deplasarii sculei in
raport cu piesa.
In contextul conducerii numerice vom intelege prin compensarea sculei, determinarea de catre echipamentul de conducere
numerica a echidistantei la profilul de prelucrat, echidistanta pe care urmeaza sa se deplaseze centrul frezei in vederea
prelucrarii profilului respectiv. Conturul programat, va fi in acest caz, chiar conturul de frezat.
Prin corectie de scula vom intelege raza frezei. Aceasta valoare este cea luata in calcul pentru determinarea echidistantei;
corectia de scula trebuie sa fi fost inregistrata inaintea rularii programului pentru fiecare scula implicata in prelucrare s i
salvata in fisierul de corectii (offset file).
22.7.1. Pozitia de lucru si comanda miscarilor
Cand intr-un program CNC trebuie luata in considerare raza frezei, trebuie specificata pozitia sculei fata de semifabricat
utilizand functiile prezentate in tabelul urmator:
Functia Partea pe care lucreaza freza Miscarea sculei
G40 Anularea compensarii sculei De-a lungul traiectoriei programate
G41 Stanga Pe partea stanga a traiectoriei programate, privind
in sensul avansului
G42 Dreapta Pe partea dreapta a traiectoriei programate,
privind in sensul avansului
In Fig. 14 este ilustrat modul de deplasare a sculei sub efectul functiilor G41 si G42.
22.7.2. Initierea compensarii sculei
Fraza prin care se comanda echipamentului de conducere numerica comutarea in modul de lucru cu compensare a sculei
se numeste initiere a compensarii sculei.
Initierea compensarii sculei este necesara pe de o parte specificarii partii pe care se va deplasa scula in raport cu traiectoria
programata, iar pe de alta parte pentru a asigura timpul necesar comutarii la noul mod de lucru.
Pentru ca o fraza sa poata fi considerata initiere a compensarii sculei, trebuie sa indeplineasca urmatoarele conditii:
1) Sa contina apelul uneia din functiile G41 sau G42, sau sa urmeze unei fraze cu G41/G42;
2) Sa contina o comanda de miscare G01 in planul XOY, iar deplasarea comandata sa fie mai mare decat raza sculei;
3) Raza sculei, R, deci corectia corespunzatoare sculei care lucreaza, trebuie sa fie strict pozitiva.
Observatia 1:
Nu poate fi apelata interpolarea circulara in fraza de initiere a compensarii sculei.
Observatia 2:
In timpul lucrului cu compensare a sculei sunt citite si memorate intotdeauna cate doua fraze din program; in acest
mod, la un moment dat, in memorie sunt prezente fraza curenta si urmatoarele doua. Aceasta, deoarece pentru a putea
determina echidistanta la traiectoria programata, echipamentul trebuie sa 'stie' tipul si orientarea miscarii care urmeaza dupa
cea curenta. Numai avand la dispozitie aceste date poate fi calculat punctul in care se termina miscarea curenta si incepe
urmatoarea (se intelege ca aceste doua puncte trebuie sa coincida).
Observatia 3:
Functiile G40, G41 si G42 sunt modale si apartin aceluiasi grup, prin urmare nu pot coexista in aceeasi fraza.
22.7.3. Anularea compensarii sculei
Pentru anularea compensarii sculei se utilizeaza functia G40.
Functia G40 poate fi apelata numai in fraze in care sunt comandate deplasari liniare (G00, G01, G28).
Observatia 1:
Dupa prelucrarea unui buzunar interior se recomanda retragerea sculei dupa axa Z pana intr-o pozitie sigura (care
sa excluda orice coliziune cu piesa) inainte de anularea compensarii sculei cu G40.
Observatia 2:
Controlerul efectueaza automat anularea compensarii sculei in urmatoarele situatii:
1. Imediat dupa pornirea masinii.
2. La apasarea butonului CRT/MDI de pe panoul de control al masinii.
3. La terminarea (fortata) a programului prin apelul direct al functiei M02 sau M30.
Exemplu de utilizare a compensarii sculei (initierea si anularea compensarii):
Pentru prelucrarea conturului din Fig. 15 se va utiliza secventa de program prezentata mai jos.
O0010
N0010 G00 X-15 Z-15;
N0020 G41 G01 X0 Y0 F100; /(Initierea compensarii)
N0030 Y40;
N0040 X30 Y80;
N0050 X60;
N0060 G02 X100 Y40 R40;
N0070 G01 Y30;
N0080 G03 X70 Y0 R30;
N0090 G01 X0;
N0100 G40 X-15 Y-15; (Anularea compensarii sculei)
22.8. G73 .. G89 - cicluri de gaurire
Un ciclu de gaurire simplifica programul de conducere numerica prin inlocuirea unei secvente de blocuri cu unul, sau cel
mult doua blocuri.
In general, un ciclu de gaurire este alcatuit din sase operatii, conform Fig. 16:
Operatia 1 Pozitionarea sculei deasupra gaurii pe X si Y
Operatia 2 Apropierea rapida a sculei de punctul in care incepe miscarea de prelucrare (nivelul R)
Operatia 3 Executarea gauririi (avans de lucru)
Operatia 4 Prelucrarea fundului gaurii
Operatia 5 Retragerea sculei pana la nivelul R
Operatia 6 Retragerea rapida a sculei pana in punctul initial
Pozitionarea sculei se face in planul XOY, iar prelucrarea efectiva a gaurii, dupa axa Z.
Exista trei categorii de comenzi pentru descrierea unui ciclu de gaurire:
1. Comenzi pentru programare in coordonate absolute/relative (G90 / G91)
2. Comenzi pentru retragerea sculei G98 (retragerea sculei la nivelul initial) si G99 (retragere scula la nivelul R)
3. G73 .. G89 pentru indicarea tipului de ciclu vizat.
22.8.1.
Programarea ciclurilor in coordonate absolute/relative
22.8.2. Programarea pozitiei (nivelului) de revenire dupa prelucrarea gaurii
Programarea pozitiei in care sa revina scula in urma gauririi se face cu functiile G98 - revenire in punctul initial, sau cu G99 -
revenire in punctul (la nivelul) R, asa cum este exemplificat in figura urmatoare.
Sintaxa frazei care contine apelul unui ciclu de gaurire este urmatoarea
G90 G98
sau sau G. X. Y. Z. R. P. Q. K. F.;
G91 G99
unde:
G. invoca un anumit ciclu de gaurire (G73 .. G89).
X. Y. pozitia gaurii, punctul in care trebuie pozitionata scula in vederea gauririi.
Z. distanta de la fundul gaurii la nivelul R (pentru G91 - coordonate relative) sau pozitia fundului gaurii (pentru G90
coordonate absolute).
R. distanta dintre nivelul initial si punctul R (pentru G91 - coordonate relative) sau cota punctului r fata de nul (pentru G90
coordonate absolute).
P. temporizare pentru schimbarea sensului avansului la fundul gaurii (vezi G04 temporizare).
Q. adancimea patrunderilor succesive la gaurire. Atentie!Aceasta valoare este indicata intotdeauna in coordonate relative.
K. numarul de repetari ale ciclului de gaurire. Daca nu este prezent in fraza, se considera a avea valoarea 1.
F. avansul de lucru.
Observatia 1:
Adresele P si Q nu sunt utilizate la unele cicluri de gaurire.
Observatia 2:
Odata introduse, datele necesare gauririi sunt retinute de controlerul masinii pana in momentul in care sunt
modificate sau ciclul de gaurire este oprit. La parcurgerea repetata a unui ciclu, nu trebuie introduse de fiecare data toate
informatiile, ci doar cele care se modifica de la o gaura la alta.
Exemplul 1: ciclu de gaurire pentru 4 gauri, cea de a treia gaura fiind cu 10 mm mai adanca.
G90 G99 G81 X10 Y10 Z-15 R2 F100;
X20;
X30 Z-25;
X40 Z-15;
G80;
Exemplul 2: ciclu de gaurire care se repeta de 4 ori.
G91 G99 G81 X10 Y6 Z-10 R-8 K4 F100
22.8.3. G73 - gaurire rapida
Sintaxa frazei care contine G73 este urmatoarea:
G90 G98
sau sau G73 X. Y. Z. Q. F.;
G91 G99
Burghiul se pozitioneaza deasupra primei gauri, la nivelul initial, apoi comanda G73 este citita de controler si incepe ciclul.
Burghiul se apropie rapid pana in punctul R, de unde incepe sa se deplaseze cu avans de lucru pana cand va fi ajuns la
adancimea Q fata de acest punct. Urmeaza o retragere pe o anumita distanta. Aceasta distanta, mica, nu poate fi controlata
de programator, ea fiind o constanta a masinii. Urmeaza o noua faza de gaurire pe adancimea Q si o scurta retragere.
Aceasta secventa se repeta pana la atingerea fundului gaurii (planul Z). Retragerea burghiului dupa prelucrarea gaurii se
face pana in punctul initial daca a fost programata functia G98, sau pana in punctul R daca activ este G99. Se citeste un
nou bloc si daca acesta contine adresele X si/sau Y se pozitioneaza burghiul in punctul indicat si se reia ciclul de gaurire
rapida.
22.8.4. G74 - filetare
Sintaxa frazei care contine G74 este urmatoarea:
G90 G98
sau sau G74 X. Y. Z. P. R. F.;
G91 G99
Secventa de miscari este urmatoarea:
Op.1 Pozitionare rapida in X, Y si Z (nivelul initial).
Op. 2 Apropiere rapida pana in punctul R.
Op. 3 Prelucrare pana la adancimea Z.
Op. 4 Temporizare si schimbarea sensului de rotatie a brosei port-scula.
Op. 5 Retragere cu avans de lucru pana in punctul R.
Op.6 Temporizare si revenirea la sensul normal de rotatie a brosei port-scula.
Dupa cum in fraza care a declansat filetarea a fost programat G98 sau G99 se va face retragere rapida pana la nivelul initial
sau scula va ramane in punctul R pana la urmatoarea miscare.
Observatie: trebuie respectata relatia F=S*P unde F=avansul, S=turatia, P= pasul filetului.
22.8.5. G76 - alezare de finisare
Sintaxa frazei care contine G74 este urmatoarea:
G90 G98
sau sau G76 X. Y. Z. R. P. Q. F.;
G91 G99
Secventa de miscari este urmatoarea:
Op.1 Pozitionare rapida in X, Y si Z (nivelul initial).
Op. 2 Apropiere rapida pana in punctul R.
Op. 3 Prelucrare pana la adancimea Z.
Op. 4 Temporizare, oprirea turatiei arborelui principal si retragerea sculei catre centrul gaurii cu distanta Q.
Op. 5 Retragere cu avans de lucru pana la nivelul R.
Op.6 Revenirea sculei in punctul R (deplasare pe distanta -Q).
Miscarea urmatoare depinde de functia care a fost apelata in fraza alezare: G98 sau G99.
Observatie: Acest ciclu poate fi utilizat doar pe masinile la care este posibila orientarea brosei
port-scula, adica oprirea ei precisa astfel incat varful sculei de alezat sa fie plasat pe o anumita
generatoare a gaurii (planul median vertical al sculei trebuie sa fie paralel cu planul XOZ al
masinii, pentru ca retragerea Q a sculei sa se efectueze intr-adevar catre centrul gaurii).
22.8.6. G80 - anularea ciclului de gaurire
Unele din adresele utilizate la programarea ciclurilor de gaurire sunt modale (Z, P, Q si R),
astfel incat raman memorate si dupa efectuarea ciclului pentru care au fost programate. Ciclul
trebuie anulat, astfel eliminandu-se automat din memorie valorile adreselor Z, P, Q si R, inainte
de a programa un alt ciclu. Anularea unui ciclu se face cu functia G80. Aceasta trebuie plasata
in fraza consecutiva programarii ciclului.
Observatie:
G80 este activat automat la:
1) pornirea masinii;
2) actionarea butonului Reset de pe panoul de control;
3) la apasarea butonului Oprire de urgenta.
22.8.7. G81 - gaurire
Sintaxa frazei pentru programarea ciclului de gaurire G81 este urmatoarea:
G90 G98
sau sau G81 X. Y. Z. R. F.;
G91 G99
Secventa de miscari este urmatoarea:
Op.1 Pozitionare rapida in X, Y si Z (nivelul initial).
Op. 2 Apropiere rapida pana in punctul R.
Op. 3 Prelucrare pana la adancimea Z.
Op. 4 Retragere rapida pana la nivelul initial (G98) sau pana in punctul R (G99).
22.8.8. G82 - gaurire cu temporizare
Sintaxa frazei pentru programarea ciclului de gaurire G81 este urmatoarea:
G90 G98
sau sau G82 X. Y. Z. P. R. F.;
G91 G99
Secventa de miscari este urmatoarea:
Op.1 Pozitionare rapida in X, Y si Z (nivelul initial).
Op. 2 Apropiere rapida pana in punctul R.
Op. 3 Prelucrare pana la adancimea Z.
Op. 4 Temporizare.
Op. 5 Retragere rapida pana la nivelul initial (G98) sau pana in punctul R (G99).
22.8.9. G83 - gaurire adanca
Sintaxa frazei pentru programarea ciclului de gaurire adanca G83 este urmatoarea:
G90 G98
sau sau G83 X. Y. Z. Q. R. F.;
G91 G99
Secventa de miscari este urmatoarea:
Op.1 Pozitionare rapida in X, Y si Z (nivelul initial).
Op. 2 Apropiere rapida pana in punctul R.
Op. 3 Prelucrare pana la adancimea Q.
Op. 4 retragere rapida pana in punctul R. Apropiere rapida pana la 1 mm de fundul tronsonului de gaura prelucrat la
operatia precedenta. Miscarile 3 si 4 sunt repetate pana la atingerea adancimii Z a gaurii.
Op. 5 Retragere rapida pana la nivelul initial (G98) sau pana in punctul R (G99).
Acest ciclu se deosebeste de gaurirea rapida doar prin faptul ca retragerile intermediare se fac pana in punctul R si nu doar
pe o mica distanta.
22.8.10. G84 - filetare cu tarodul
Sintaxa frazei pentru programarea ciclului de filetare cu tarodul G84 este urmatoarea:
G90 G98
sau sau G84 X. Y. Z. R. P. F.;
G91 G99
Acest ciclu nu se deosebeste de cel de filetare cu cutitul, G74, decat prin ordinea adreselor in fraza: Z, P, R la G74 si Z, R,
P la G84.
22.8.11. G85 - alezare
Sintaxa frazei pentru programarea ciclului de alezare G85 este urmatoarea:
G90 G98
sau sau G85 X. Y. Z. R. F.;
G91 G99
Secventa de miscari este urmatoarea:
Op.1 Pozitionare rapida in X, Y si Z (nivelul initial).
Op. 2 Apropiere rapida pana in punctul R.
Op. 3 Prelucrare pana la adancimea Z.
Op. 4 Retragere cu avans de lucru pana la nivelul initial (G98) sau pana in punctul R (G99).
Fata de ciclul G76, alezare de finisare, exista o serie de diferente, dupa cum urmeaza: revenirea in planul initial sau cel de
referinta nu se mai face cu retragerea sculei catre centrul gaurii si nu se mai opereaza temporizare la atingerea fundului
gaurii. Aceasta implica omiterea din fraza cu G85 a parametrilor P si Q. In plus, deoarece scula se deplaseaza la revenire
pe aceeasi traiectorie ca si in faza de prelucrare, ciclul G85 poate f i efectuat pe orice masina de frezat, fara restrictia impusa
de oprirea precisa, ca in cazul alezarii de finisare.
22.8.12. G86 - alezare
Sintaxa frazei pentru programarea ciclului de alezare G86 este urmatoarea:
G90 G98
sau sau G86 X. Y. Z. R. F.;
G91 G99
Secventa de miscari este urmatoarea:
Op.1 Pozitionare rapida in X, Y si Z (nivelul initial).
Op. 2 Apropiere rapida pana in punctul R.
Op. 3 Prelucrare pana la adancimea Z.
Op. 4 Retragere rapida pana la nivelul initial (G98) sau pana in punctul R (G99).
Fata de ciclul G85, diferenta consta in faptul ca retragerea din gaura a sculei se face cu avans rapid
22.8.13. G87- alezare de jos in sus
Sintaxa frazei pentru programarea ciclului de alezare de jos in sus, G87, este urmatoarea:
G90 G98
sau sau G87 X. Y. Z. P. Q. R. F.;
G91 G99
Secventa de miscari este urmatoarea:
Op.1 Pozitionare rapida in X, Y si Z (nivelul initial).
Op. 2 Oprirea axului principal si orientarea sa. Deplasare in planul XOY catre centrul gaurii cu distanta Q.
Op. 3 Apropiere rapida pana in punctul R.
Op. 4 Pornirea rotatiei axului principal in sens orar, si efectuarea deplasarii -Q
Op. 5 Prelucrare pana la nivelul Z (cu deplasare Z pozitiv) si temporizare.
Op. 6 Oprirea axului principal si orientarea sa.
Op. 7 Deplasare Q.
Op. 8 Retragere rapida pana la nivelul initial.
Op. 9 Deplasare -Q si pornirea rotatiei axului principal in sens orar.
22.8.14. G89 - gaurire
Sintaxa frazei pentru programarea ciclului de Gaurire, G89, este urmatoarea:
G90 G98
sau sau G89 X. Y. Z. P. R. F.;
G91 G99
Secventa de miscari este urmatoarea:
Op.1 Pozitionare rapida in X, Y si Z (nivelul initial).
Op. 2 Apropiere rapida pana in punctul R.
Op. 3 Prelucrare pana la nivelul Zsi temporizare.
Op. 4 Retragere rapida pana la nivelul initial (G98) sau la nivelul R (G99).
22.9.
Exemplu de utilizare a ciclurilor de gaurire
Pentru prelucrarea gaurilor in reperul din Fig. 21 se utilizeaza secventa de program prezentata in continuare.
N0040 M06 T01; Schimbarea sculei
N0050 G90 G00 X10 Y30 Z12 S1000 M03; Pozitionarea sculei la nivelul initial
N0060 G99 G81 X10 Z30 -17 R2 F75; Gaura 1, retragere la nivelul R
N0070 Y10; Gaura 2 , retragere la nivelul R
N0080 X30; Gaura 3 , retragere la nivelul R
N0090 G98 Z30; Gaura 4 , retragere la nivelul initial
N0100 G99 X90; Gaura 5 , retragere la nivelul R
N0110 Y10; Gaura 6 , retragere la nivelul R
N0120 X110; Gaura 7 , retragere la nivelul R
N0130 G98 Y30; Gaura 8 , retragere la nivelul initial
N0140 G91 G80 G28 X0 Y0 Z0 M05; Masina acasa, oprirea axului principal
N0150 M06 T02; Schimbarea sculei
N0160 G90 G00 X60 Y28 Z12 S 750 M03; Pozitionarea sculei la nivelul initial
N170 G99 G83 Y28 Z-17 Q6 R2 F60; Gaura 9 , retragere la nivelul R
N180 G98 Y12; Gaura 10 , retragere la nivelul initial
N190 G91 G80 G28 X0 Y0 Z0 M05; Masina acasa, oprirea axului principal
N0200 M30; Terminarea programului
22.10. G90 - programare in coordonate absolute
Functia G90 activeaza modul de lucru cu programarea punctelor in coordonate absolute (raportate la nulul piesei).
Programarea in coordonate absolute este modul implicit de lucru; daca intr-un program nu este apelata nici una din functiile
din grupul 3 (vezi tabelul 1), deci nu este precizat tipul de coordonate utilizat pentru programarea punctelor, se c onsidera ca
toate coordonatele utilizate sunt absolute (tinand seama de exceptiile prezentate deja, exemplu, adresele I si J).
Observatie:
G90 este activ in mod implicit la pornirea masinii, dupa resetarea de la panoul de control al masini si dupa oprirea
masinii cu butonul oprire de urgenta.
22.11. G91- programare in coordonate relative
Functia G91 activeaza modul de lucru cu programarea punctelor in coordonate relative. Din momentul apelarii ei
coordonatele utilizate pentru programarea punctelor sunt masurate fata de pozitia curenta a sculei.
Functiile G90 si G91 apartin aceluiasi grup, deci nu pot coexista in aceeasi fraza.
22.12. G94 - avansul exprimat in mm/min
Cand este activ G94 avansul programat este exprimat in ul/min, unde ul este unitatea de masura pentru lungime: inch sau
mm dupa cum este activ G20, respectiv G21.
22.13. G95 - avans exprimat in mm/rot
Cand este activ G95 avansul programat este exprimat in ul/rot, unde ul este unitatea de masura pentru lungime: inch sau
mm dupa cum este activ G20, respectiv G21.
22.14. G98 - revenire la nivelul initial
Functia G98 este utilizata conjugat cu functiile pentru programarea ciclurilor de gaurire. Daca este activ G98, retragerea
sculei dupa prelucrarea gaurii se face pana la nivelul initial (planul orizontal in care s-a facut pozitionarea sculei).
22.15. G99 - revenire la nivelul R
Functia G99 este utilizata conjugat cu functiile pentru programarea ciclurilor de gaurire. Daca este activ G99, retragerea
sculei dupa prelucrarea gaurii se face pana la nivelul R (planul orizontal pana la care s-a efectuat apropierea rapida a
sculei). Reamintim ca nivelul (cota Z) a planului respectiv se programeaza cu adresa R in cadrul ciclurilor de gaurire.
22.16. G170-G173 - comenzi pentru frezarea buzunarelor circulare si
dreptunghiulare
Prin utilizarea functiilor G170 .. G173 se poate programa prelucrarea buzunarelor circulare sau dreptunghiulare (Fig. 22).
Observatie: Trebuie acordata o atentie deosebita programarii ciclurilor pentru prelucrarea buzunarelor, deoarece fiecare
ciclu poate fi descris in trei moduri. Diferentierea modurilor de descriere se face prin valorile care urmeaza adreselor P, I si J
in cazul buzunarelor circulare (G170, G171) sau adreselor P, I si K in cazul buzunarelor dreptunghiulare (G172, G173). Desi
rezultatul final (forma si dimensiunile buzunarului) este acelasi, de modul in care sunt utilizate adresele mai sus mentionate
depinde traiectoria pe care o parcurge scula in timpul prelucrarii.
In continuare se prezinta sase exemple de programe in care se utilizeaza functiile pentru prelucrarea buzunarelor
interioare, cate trei pentru fiecare tip de buzunar. Pentru fiecare tip de buzunar sunt prezentate toate variantele de
programare a ciclului de prelucrare.
22.16.1. G170 si G171 - prelucrarea unui buzunar circular - degrosare
Observatie: punctul de 0 absolut este memorat in fisierul de corectii
Programul nr. 2 - Program de degrosare pentru prelucrarea unui buzunar circular folosind functiile G170 si G171
[BILLET X75 Y90 Z30; Dimensiunile semifabricatului
[EDDGEMOVE X - 37,5 Y- 45; Pozitia punctului de zero relativ la
coltul din stanga jos al
semifabricatului
[TOOLDEF T1 D6 Z0; Nr. sculei, diametrul si pozitia
acesteia
O0005; Nr. de program
N0040 G91 G21 G28 X0 Z0; Coordonatele punctului de referinta
N0050 M06 T01; Nr. sculei
N0060 G90 G00 X0 Y0 Z10 S3000 M03; Coordonate absolute, deplasare rapida
a sculei de 10 mm deasupra suprafetei
de prelucrat, pornire turatie arbore
principal
N0070 G01 Z0 F300; Aproprierea sculei de suprafata piesei
si setarea avansului
N0080 G170 R0 P0 Q3 X0 Y0 Z-6 I0 J0 K-24; Ciclu de prelucrare a buzunarului
circular
N0090 G171 P75 S3000 R75 F250 B3500 J200; Ciclu de prelucrare a buzunarului
circular
N0100 G00 Z25 M05; Deplasare rapida a sculei la 25 mm
deasupra suprafetei prelucrate si
oprirea turatiei
N0110 G91 G28 X0 Y0 Z0; Intoarcere la punctul de nul
N0120 M30;
Resetare program
Explicarea pe larg a liniilor de program in care sunt implicate functiile G170 si G171
Pentru functia G170: N0080 G170 R0 P0 Q0 X0 Y0 Z6 I0 J0 K-24
R- defineste pozitia sculei pe axa Z la inceputul ciclului
P- cand P este 0 ciclul este destinat degrosarii
Q - defineste incrementarea pe Z in vederea prelucrarii buzunarului. In programul de mai sus patrunderea sculei in
adancimea piesei se face in pasi de cate 3 mm.
X - defineste coordonata in X a centrului buzunarului
Y - defineste coordonata in Y a centrului buzunarului
Z - defineste baza buzunarului (- 6 mm) fata de suprafata piesei.
I - defineste adaosul de prelucrare pe suprafata laterala (0 doar la degrosare)
J - defineste adaosul de prelucrare la baza buzunarului (0 doar la degrosare)
K - raza buzunarului (-24 deoarece prelucrarea se va face in sens trigonometric)
Pentru functia G171: N0090 G171 P75 S300 R75 F250 B3500 J200
P -adancimea de aschiere, ca procentaj din diametrul sculei (75% din diametrul sculei)
S - turatia la degrosare (S3000) 3000 rot/min
R - avansul la degrosare de-a lungul axei Z (75 mm/min)
F - avansul la degrosare in planul XY (250) (250 mm/min)
B - turatia la finisare (3500 rot/min); neaplicabila in cazul degrosarii
J - avansul la finisare (200 mm/rot); neaplicabila in cazul degrosarii
La stabilirea corectiilor de scula trebuie specificata raza frezei cu care se va prelucra buzunarul. Sensul parcurgerii traseului
de prelucrare este controlat de K. K<0 (K-24) sugereaza o parcurgere in sens trigonometric iar K>0 in sens orar; valoarea lui
Q este totdeauna pozitiva (Q+3).
Cand s-a incheiat prelucrarea, scula aschietoare se retrage 1 mm de-a lungul axei Z, se deplaseaza apoi rapid pana in
centrul buzunarului iar apoi continua sa se retraga de-a lungul axei Z. Programul de mai sus este conceput pentru o
prelucrare de degrosare in doua treceri.
22.16.2. G170 si G171 - prelucrarea unui buzunar circular - degrosare si finisare
Diferenta dintre programul anterior (0002) si acesta (0003) este aceea ca acest program lasa un adaos si pentru finisare pe
peretii buzunarului si la baza acestuia.
[BILLET X75 Y90 Z30;
[EDDGEMOVE X - 37,5 Y- 45;
[TOOLDEF T1 D6 Z0;
O0003
N0040 G91 G21 G28 X0 Z0;
N0050 M06 T01;
N0060 G90 G00 X0 Y0 Z10 S3000 M03;
N0070 G01 Z0 F300;
N0080 G170 R0 P0 Q3 X0 Y0 Z-6 I0 J0 K-24;
N0090 G171 P75 S3000 R75 F250 B3500 J200;
N0100 G00 Z25 M05;
N0110 G91 G28 X0 Y0 Z0;
N0120 M30;
Explicarea pe larg a liniilor de program in care sunt implicate functiile G170 si G171
Pentru functia G170: N0080 G170 R0 P0 Q3 X0 Y0 Z-6 I0.5 J0.1 K-24
R- se defineste pozitia sculei pe axa Z la inceputul ciclului
P- cand P este 0 ciclul este destinat degrosarii
Q - defineste incrementarea pe Z in vederea prelucrarii buzunarului. In programul de mai sus incrementarea se face de
doua ori, cu cate 3 mm de fiecare data, rezultand astfel adancimea buzunarului de 6 mm.
X - defineste coordonata in X a centrului buzunarului
Y - defineste coordonata in Y a centrului buzunarului
Z - defineste baza buzunarului (- 6 mm) fata de suprafata piesei
I - indica marimea adaosului de prelucrare lasat pe peretele buzunarului pentru finisare
J - indica marimea adaosului de prelucrare lasat pe fundul buzunarului pentru finisare
K - raza buzunarului (-24 deoarece prelucrarea se va face in sens trigonometric)
Pentru functia G171: N0090 G171 P75 S300 R75 F250 B3500 J200
P -adancimea de aschiere, ca procentaj din diametrul sculei (75% din diametrul sculei)
S - turatia la degrosare (S3000) 3000 rot / min
R - avansul la degrosare de-a lungul axei Z (75 mm/min)
F - avansul la degrosare in planul XY (250) (250 mm/min)
B - turatia la finisare (3500 rot/min)
J - avansul la finisare (200 mm/rot)
22.16.3. G170 si G171 - prelucrarea unui buzunar circular - finisare printr-o singura
trecere
Diferenta dintre programul anterior si cel prezent mai jos consta in aceea ca in acest caz scula aschietoare se deplaseaza
pana la adancimea finala a buzunarului, realizand doar operatia de finisare.
[BILLET X75 Y90 Z30;
[EDDGEMOVE X - 37,5 Y- 45;
[TOOLDEF T1 D6 Z0;
O0004;
N0040 G91 G21 G28 X0 Z0;
N0050 M06 T01;
N0060 G90 G00 X0 Y0 Z10 S3000 M03;
N0070 G01 Z0 F300;
N0080 G170 R0 P1 Q3 X0 Y0 Z-6 I0.5 J0.1 K-24;
N0090 G171 P75 S3000 R75 F250 B3500 J200 ;
N0100 G00 Z25 M05;
N0110 G91 G28 X0 Y0 Z0;
N0120 M30;
Explicarea pe larg a liniilor de program in care sunt implicate functiile G170 si G171
Pentru functia G170: N0040 G170 R0 P1 Q3 X0 Y0 Z6 I0.5 J0.1 K-24
R- se defineste pozitia sculei pe axa Z la inceputul ciclului
P- cand P=1 este programat un ciclu exclusiv de finisare
Q - este ignorat daca P=1
X - defineste coordonata in X a centrului buzunarului
Y - defineste coordonata in Y a centrului buzunarului
Z - defineste baza buzunarului (- 6 mm) fata de suprafata piesei.
I - este ignorat daca P=0
J - este ignorat daca P=0
K - raza buzunarului (-24 deoarece prelucrarea se va face in sens trigonometric)
Pentru functia 171: N0040 G171 P75 S300 R75 F250 B3500 J200
P - adancimea de aschiere, ca procentaj din diametrul sculei (75% din diametrul sculei)
S - turatia la degrosare (S3000). Trebuie introdusa o valoare pentru S, insa aceasta va fi ignorata in cazul unei prelucrari
exclusiv de finisare
R - avansul la degrosare de-a lungul axei Z (75). Trebuie introdusa o valoare, insa aceasta va fi ignorata in cazul unei
prelucrari exclusiv de finisare
F - avansul la degrosare in planul XY (250). Trebuie introdusa o valoare, insa aceasta va fi ignorata in cazul unei prelucrari
exclusiv de finisare
B - turatia la operatia de finisare (3500 rot/min)
J - avansul operatia de finisare (200 mm/rot)
Observatie: desi o serie de adrese sunt ignorate in timpul rularii programului, acestea trebuie sa existe (inclusiv valoarea lor
numerica) pentru ca fraza sa fie interpretata corect si in acest mod evitate eventualele erori.
22.16.4. G172 si G173 - prelucrarea unui buzunar dreptunghiular - degrosare
Observatie: punctul de 0 absolut este memorat in fisierul de corectii
Programul nr. 5. Program pentru degrosarea unui buzunar dreptunghiular
[BILLET X75 Y90 Z30; Dimensiunile semifabricatului
[EDDGEMOVE X - 37.5 Y- 45; Pozitia punctului de 0 relativ la coltul din stanga - jos
a semifabricatului
[TOOLDEF T1 D6 Z0; Nr. sculei,diametrul si pozitia acesteia
00005; Nr. de program
N0040 G91 G21 G28 X0 Z0; Coordonatele punctului de referinta
N0050 M06 T01; Nr. sculei
N0060 G00 X0 Y0 Z0 S3000 M03; Coordonate absolute, deplasare rapida a sculei la 10
mm deasupra suprafetei de prelucrat, pornire turatie
arbore principal
N0070 G01 Z0 F300; Deplasarea sculei pana la suprafata de prelucrat,
setarea avansului
N0080 G172 I-50 J-50 K0 P0 Q3 R0 X -25 Z-
6;
Ciclu de prelucrare a buzunarului dreptunghiular
N0090 G173 I0 K0 P75 T1 S300 R75 F250
B3500 J200 Z5;
Ciclu de prelucrare a buzunarului dreptunghiular
N0100 G00 Z25 M05; Deplasare rapida a sculei la 25 m deasupra
suprafetei prelucrate si oprirea turatiei
N0110 G91 G28 X0 Y0 Z0; Intoarcere la punctul de nul
N0120 M30; Resetare program
Explicarea in amanunt a liniilor de program in care sunt implicate functiile G172 si G173
Pentru functia G172: N0080 G172 I-50 J-50 K0 P0 Q3 R0 X-25 Y-25 Z-6;
I - lungimea de-a lungul axei X a buzunarului de prelucrat (-50);
J - lungimea de-a lungul axei Y a buzunarului de prelucrat (-50);
K - raza la colturile dreptunghiului (inactiva la acest softw are);
P - stabileste tipul prelucrarii 0 = degrosare
Q - stabileste incrementarea pe Z in vederea prelucrarii buzunarului. In programul de mai sus, incrementarea pe Z se face
de doua ori cu cate 3 mm de fiecare data, rezultand astfel adancimea de 6 mm a buzunarului;
R - punctul (planul) "R" fata de Z absolut
X - defineste coltul "X" al buzunarului in coordonate absolute fata de nulul piesei
Y - defineste coltul "Y" al buzunarului in coordonate absolute fata de nulul piesei
Z - defineste cota Z a fundului buzunarului (-6 fata de suprafata piesei, deci adancimea de 6 mm a buzunarului)
Pentru functia G173 : N0090 G173 I0 K0 P75 T1 S300 R75 F250 B3500 J200 Z5
I -adaosul de finisare pe peretii buzunarului (in acest caz este 0, nefiind implicata si o finisare);
K - adaosul de finisare la baza buzunarului (in acest caz este 0);
P -adancimea de aschiere ca procentaj din diametrul sculei (75% din diametrul sculei);
T - codificarea sculei destinate realizarii buzunarului (scula nr. 1);
S - turatia arborelui principal la degrosare (3000 rot/min);
R- avansul la degrosare de-a lungul axei Z (75 mm/min);
F - avansul la degrosare in planul XY (250 mm/min);
B - turatia arborelui principal la finisare (3500 rot/min), nu e utilizata in acest caz;
J - avansul la finisare (200 mm/min), nu este utilizat in acest caz;
Z -planul de retragere a sculei dupa prelucrare (5 mm deasupra planului "R");
Programul de mai sus este realizat pentru degrosare din doua treceri.
Observatii pentru functia G172:
 Semnul lui I si J impun sensul de parcurgere al traseului frezei ('+' pentru parcurgerea in sens orar si '-' pentru
parcurgerea in sens trigonometric);
 K - trebuie programat la valoarea 0 deoarece la sotfw are-ul curent (DENFORD) raza colturilor este raza sculei
aschietoare (frezei);
 X si Y - coordonate relative fata de punctul de zero (nulul) al piesei (fig. 24), in exemplu, centrul buzunarului.
Distanta de la punctul de nul pana la coltul din stanga jos al buzunarului este X-25 Y-25.
Observatii pentru functia GI173:
 daca I si K sunt setate la valoarea 0, programul va realiza doar ciclurile de degrosare (in exemplu 2 cicluri), la fel ca
si in cazul prelucrarii buzunarelor circulare;
 T - numarul sculei (T1) trebuie programat.
22.16.5. G172 si G173 - prelucrarea unui buzunar dreptunghiular - degrosare si finisare
Programul 006
[BILLET X75 Y90 Z30;
[EDGEMOVE X-37.5 Y-45;
[TOOLDEF T1 D6 Z0;
00006;
N0040 G91 G21 G28 X0 Y0 Z0;
N0050 M06 T01;
N0060 G90 G00 X0 Z10 S3000 03;
N0070 G01 Z0 F300;
N0080 G172 1-50 J-50 K0 P0 Q3 R0 X-25 Z-25 Z-6;
N0090 G173 I0.5 K0.1 P75 T1 S3000 R75 F250 B3500 J200 Z5;
N0100 G00 Z25 0M5;
N0110 G91 G28 X0 Y0 Z0;
N0120 M30;
Explicarea in amanunt a liniilor de program in care sunt implicate functiile G172 si G173
Pentru functia G172: N0080 G172 I-50 J-50 K0 P0 Q3 R0 X-25 Z-6
I - lungimea de-a lungul axei X a buzunarului de prelucrat (-50);
J - lungimea de-a lungul axei Y a buzunarului de prelucrat (-50);
K - raza de curbura de la colturile dreptunghiului (inactiva la acest softw are);
P - stabileste tipul prelucrarii 0 = degrosare
Q - stabileste incrementarea pe Z in vederea prelucrarii buzunarului. In programul de mai sus, incrementarea pe Z se face
cu cate 3 mm, rezultand astfel adancimea de 6 mm a buzunarului;
R - punctul (planul) "R" fata de Z absolut
X - defineste coltul "X" al buzunarului in coordonate absolute fata de nulul piesei
Y - defineste coltul "Y" al buzunarului in coordonate absolute fata de nulul piesei
Z - defineste cota Z a fundului buzunarului (-6 fata de suprafata piesei, deci adancimea de 6 mm a buzunarului)
Pentru functia G173 : N0090 G173 I0.5 K0.1 P75 T1 S300 R75 F250 B3500 J200 Z5
I - adaosul de finisare pe peretii buzunarului (0,5 mm);
K - adaosul de finisare la fundul buzunarului (0,1 mm)
P - adancimea de aschiere ca procentaj din diametrul sculei (75% din diametrul sculei);
T - codificarea sculei destinate realizarii buzunarului (scula nr. 1);
S - turatia arborelui principal la degrosare (3000 rot/min);
R- avansul la degrosare de-a lungul axei z (75 mm/min);
F - avansul la degrosare in planul XY (250 mm/min);
B - turatia arborelui principal la finisare (3500 rot/min);
J - avansul la finisare (200 mm/min);
Z -planul de retragere a sculei dupa prelucrare (5 mm deasupra planului "R");
Observatie: cand I si K sunt urmate de valori nenule programul va realiza ciclul de finisare dupa incheierea completa a
ciclurilor de degrosare.
22.16.6. G172 si G173 - preluarea unui buzunar dreptunghiular - finisare printr-o singura
trecere
Programul 007
[BILLET X75 Y90 Z30;
[EDGEMOVE X-37.5 Y-45;
[TOOLDEF T1 D6 Z0;
00007;
N0010 G91 G21 G28 X0 Y0 Z0;
N00220 M06 T01;
N0043 G90 G00 X0 Y0 Z10 S3000 M03;
N0040 G01 Z0 F300;
M0050 G172 I-50 K0 P1 Q3 R0 X-25 Y-25 Z-6;
N0060 G173 IO.5 K0.1 P75 T1 S3000 R75 F250 B3500 J200 Z5;
N0070 G00 Z25 M05;
N0080 G91 G28 X0 Y0 Z0;
N0090 M30;
Explicarea in amanunt a liniilor de program in care sunt implicate functiile G172 si G173
Pentru functia G172: N0040 G172 I-50 J-50 K0 P1 Q3 R0 X-25 Y-25 Z-6;
I - lungimea de-a lungul axei X a buzunarului de prelucrat (-50);
J - lungimea de-a lungul axei Y a buzunarului de prelucrat (-50);
K - raza de curbura de la colturile dreptunghiului (inactiva la acest softw are);
P -stabileste tipul prelucrarii: finisare dintr-o singura trecere (P1);
Q - defineste incrementarea pe Z in vederea prelucrarii buzunarului. In acest caz este ignorat deoarece avem doar un singur
ciclu de finisare.
R - punctul (planul) "R" fata de Z absolut
X - defineste coltul "X" al buzunarului in coordonate absolute fata de nulul piesei
Y - defineste coltul "Y" al buzunarului in coordonate absolute fata de nulul piesei
Z - defineste cota Z a fundului buzunarului (-6 fata de suprafata piesei, deci adancimea de 6 mm a buzunarului)
Pentru functia G173 : N0040 G173 I0.5 K0.1 P75 T1 S3000 R75 F250 B3500 J200 Z5
I - adaosul de prelucrare la finisare pentru suprafata laterala - se ignora pentru finisare;
K - adaosul de prelucrare pentru baza buzunarului - se ignora pentru finisare
P -adancimea de aschiere ca procentaj din diametrul sculei (75% din diametrul sculei);
T - codificarea sculei destinate realizarii buzunarului (scula nr. 1);
S - turatia arborelui principal la degrosare. Se va introduce o valoare care va fi ignorata in acest caz. (un ciclu de finisare);
R- avansul de-a lungul axei Z la degrosare. Se va introduce o valoare care va fi ignorata in acest caz. (un ciclu de finisare);
F - avansul la degrosare in planul XY la degrosare. Se va introduce o valoare care va fi ignorata in acest caz. (un ciclu de
finisare);
B - turatia arborelui principal la finisare (3500 rot/min);
J - avansul la finisare (200 mm/min);
Z -planul de retragere a sculei dupa prelucrare (5 mm deasupra planului "R");
Observatie: Toate datele specifice degrosarii vor fi ignorate de program in timpul rularii. Este insa necesara introducerea
unor valori si pentru aceste date deoarece, in caz contrar, la compilarea secventiala a programului s-ar semnala erori.
23. FUNCTII DE TIP M
Introducere
Functiile de tip M sunt functii auxiliare pentru transmiterea unor comenzi de tipul "pornit - oprit" unor componente ale masinii
unelte (pornirea turatiei M05, etc). Functiile al caror continut este reprezentat prin valori mici sunt in general comune unui
numar mare de echipamente de conducere numerica, in timp ce valorile mari ale functiilor se adreseaza unor trasaturi
specifice cate unui echipament.
O functie de tip M poate fi definita folosind o adresa de tip M si un numar format din doua cifre ca in figura de mai
jos:
M 00
Adresa nr. din doua cifre
23.1. Functii de tip M recunoscute de echipamentul CNC Denford
Lista functiilor M
Tabelul 2
Functia
M
Descriere
M00* Oprirea programului
M01* Oprirea optionala a programului
M02* Resetarea programului
M03 Pornirea turatiei cu rotirea axului principal in sens orar
M04 Pornirea turatiei cu rotirea axului principal in sens trigonometric
M05 Oprirea turatiei
M06 Schimbarea automata a sculelor
M08 Pornirea lichidului de racire - ungere
M09 Oprirea lichidului de racire - ungere
M10 Deschiderea sistemului de fixare a semifabricatului
M11 Inchiderea sistemului de fixare a semifabricatului
M13 Pornirea turatiei in sens orar si a lichidului de racire-ungere
M14 Pornirea turatiei in sens trigonometric si a lichidului de racire-ungere
M19 Orientarea arborelui principal
M20 Deplasarea MASS (magazinul automat de schimbare a sculelor) sub arborele
principal
M21 Deplasarea MASS de sub arborele principal
M22 Deplasarea MASS in jos
M23 Deplasarea MASS in sus
M24 Deschiderea sistemului de fixare a portsculei in arborele masinii
M25 Inchiderea sistemului de fixare a portsculei in arborele masinii
M27 Resetarea pozitiei magazinului de scule
M30 Oprirea programului si pozitionare la inceputul lui
M32 Rotirea magazinului de scule in sens orar
M33 Rotirea magazinului de scule in sens trigonometric
M38 Deschiderea usii de protectie
M39 Inchiderea usii de protectie
M62 Iesire auxiliara 1 - activa
M63 Iesire auxiliara 2 - activa
M64 Iesire auxiliara 1 - dezactivata
M65 Iesire auxiliara 2 - dezactivata
M66 Asteptare pentru iesirea auxiliara 1 - activata
M67 Asteptare pentru iesirea auxiliara 2 - activata
M70 Schimbarea semnului pe directia X - activat (oglindire pe axa X)
M71 Schimbarea semnului pe directia Y - activat (oglindire pe axa Y)
M76 Asteptare pentru iesirea auxiliara 1 - dezactivata
M77 Asteptare pentru iesirea auxiliara 2 - dezactivata
M80 Schimbarea semnului pe directia X - dezactivat
M81 Schimbarea semnului pe directia Y - dezactivat
M98 Apelare subprogram (subrutina)
M99 Incheierea subprogramului si revenire in programul apelant
Observatia 1:
Functiile M marcate cu * vor fi executate la incheierea unui bloc (ex.: dupa efectuarea miscarilor).
Observatia 2:
Intr-un bloc nu poate exista decat o singura functie de tip M. In cazul cand exista mai multe astfel de functii
echipamentul CNC va executa doar ultima functie de tip M din cadrul blocului.
Observatia 3:
Functiile de tip M de la M19 pana la M27 inclusiv, precum si functiile M32 si M33 sunt folosite doar in cazul
executarii unor operatii de intretinere. Aceste functii pot fi introduse panoului de control al masinii si nu vor aparea in cadrul
programelor.
23.2. M00 - oprirea programului
Cand echipamentul CNC va citi aceasta functie in interiorul unui bloc va opri derularea programului. Repornirea
(continuarea) acestuia din punctul in care a fost oprit se poate face prin apasarea tastei [CYCLE START].
23.3. M01 - oprirea optionala a programului
Are acelasi efect ca si functia anterioara M00, cu diferenta ca in acest caz echipamentul CNC nu va opri programul decat
daca este actionata tasta optionala [STOP].
23.4. M02 - resetarea programului
Aceasta functie sesizeaza sfarsitul programului si realizeaza o resetare generala a MUCN, iar echipamentul CNC va aduce
toate setarile masinii la starea lor initiala. Functia se aseamana cu M05.
23.5. M03 - pornirea turatiei cu rotirea axului principal in sens orar
Rotirea arborelui principal in sens orar este determinata de vizualizarea arborelui principal de sus in jos, privind din spatele
acestuia catre scula aschietoare de-a lungul axei Z. Pornirea turatiei este activata la inceputul blocului de program in care
este prezenta functia M03, inaintea realizarii celorlalte miscari ale elementelor mobile.
23.6. M04 - pornirea turatiei cu rotirea axului principal in sens trigonometric
Functia este asemanatoare cu functia precedenta (M03) cu deosebirea ca rotirea arborelui principal se face in sens
trigonometric.
23.7. M05 - oprirea turatiei
Functia M05, de oprire a turatiei, este activata la incheierea blocului din care face parte (de exemplu dupa incheierea
deplasarilor).
23.8. M06 - schimbarea automata a sculelor
Activeaza deplasarea magazinului de scule in pozitia arborelui principal in vederea schimbarii sculei. Ex: M06 T03: Aceasta
linie de comanda va realiza schimbarea sculei curente (fixate pe masina) cu scula numarul 3. De fapt, M06 apeleaza un
subprogram care presupune efectuarea mai multor actiuni:
 oprirea turatiei;
 deplasarea organelor mobile la capatul de cursa care asigura spatiul necesar manevrelor de schimbare a sculei;
 aducerea magazinului de scule sub arborele principal;
 coborarea axului principal pana la nivelul corespunzator eliberarii sculei;
 eliberarea sculei;
 ridicarea la capat de cursa a axului principal;
 indexarea magazinului de scule;
 coborarea axului principal pana la nivelul corespunzator preluarii sculei;
 preluarea ti fixarea sculei;
 ridicarea la capat de cursa a axului principal;
 aducerea magazinului de scule in pozitia 'retras'
 pornirea turatiei.
23.9. M08 - pornirea lichidului de racire-ungere
Porneste pompa circuitului de racire-ungere.
23.10. M09 - oprirea lichidului de racire-ungere
Opreste pompa circuitului de racire - ungere.
23.11. M10 - deschiderea sistemului de fixare a semifabricatului
Deschide sistemul de fixare in vederea eliberarii semifabricatului.
23.12. M11 - inchiderea sistemului de fixare a semifabricatului
Inchide sistemul de fixare in vederea prinderii semifabricatului.
23.13. M13 - pornirea a turatiei in sens orar si a lichidului de racire-ungere
Aceasta functie combina functiile M03 si M08 prezentate anterior. Functia M05 va opri simultan turatia si lichidul de racire-
ungere .
23.14. M14 - pornirea turatiei in sens trigonometric si a lichidului de racire-
ungere
Realizeaza pornirea concomitenta a turatiei (in sens invers fata de M13) si a lichidului de racire-ungere.
23.15. M19 - orientarea arborelui principal
Aceasta functie va realiza o orientare a arborelui principal
23.16. M20 - deplasarea MASS (Magazinul Automat de Schimbare a Sculelor)
sub arborele principal
Aceasta functie realizeaza deplasarea magazinului de scule din pozitia sa initiala sub arborele principal al MUCN.
23.17. M21 - deplasarea MASS de sub arborele principal
Realizeaza deplasarea MASS in pozitia sa initiala (langa arborele principal)
23.18. M22 - deplasarea MASS in jos
Realizeaza deplasarea MASS de-a lungul axei Z in jos.
23.19. M23 - deplasarea MASS in sus
Realizeaza deplasarea MASS de-a lungul axei Z in sus.
23.20. M24 - deschiderea sistemului de fixare a sculei
Deschide mecanismul de prindere al sculelor in axul masinii.
23.21. M25 - inchiderea sistemului de fixare a sculei
Inchide mecanismul de prindere al sculelor in axul masinii.
23.22. M27 - resetarea pozitiei magazinului de scule
Restabileste pozitia initiala a magazinului de scule. Este mai de graba o actiune logica, in urma acesteia locasul din fata al
magazinului de scule va fi interpretat ca fiind primul locas. Aceasta functie nu produce rotirea magazinului de scule; de
regula functia M27 se utilizeaza conjugat cu M32 sau M33.
23.23. M30 - oprirea programului si pozitionare la inceputul lui
Aceasta functie opreste rularea programului in momentul cand s-a ajuns la sfarsitul lui. Dupa aceasta ECN realizeaza si un
"reset" revenind la prima linie a programului. Daca functia M30 este urmata de un numar de bloc, programul se va intoarce
la inceputul acelui bloc de program. Ex: M30 P0140 - Programul este oprit si revine la blocul cu numarul 140.
23.24. M32 - rotirea magazinului de scule in sens orar
Realizeaza indexarea in sens orar a magazinului de scule (sensul orar se stabileste privind magazinul de scule de sus in
jos).
23.25. M32 - rotirea magazinului de scule in sens antiorar
Realizeaza indexarea in sens antiorar a magazinului de scule (sensul orar se stabileste privind magazinul de scule de sus in
jos).
23.26. M38 - deschiderea usii de protectie
Deschide ecranul protector al masinii. Concomitent cu aceasta se opreste turatia daca este pornita. Cata vreme capacul de
protectie este deschis nu pot fi lansate comenzi masinii nici in mod direct, nici din program.
23.27. M39 - inchiderea usii de protectie
Inchide ecranul protector al masinii. Aceasta nu presupune si repornirea automata a turatiei oprite cu M38.
23.28. M6267,M76, M77
Aceste functii sunt destinate transmiterii de informatii de la MUCN catre un echipament auxiliar al acesteia (spre exemplu,
robotul). Aceste functii transmit informatia catre echipamentul auxiliar si asteapta un raspuns de la acesta, care confirma
realizarea operatiei. In afara de semnificatia acestor functii, prezentata in tabelul de la paragraful 23.1, nu sunt necesare
alte explicatii.
23.29. M70 - schimbarea semnului pe directia X - activat
In timpul rularii programului, aparitia functiei M70 va avea ca efect schimbarea semnului coordonatei pe directia X..
Ex.: G0 X25,5
M70
G01 X 25.5 - scula se va deplasa catre coordonata X - 25.5
23.30. M71 - schimbarea semnului pe directia Y - activat
Are acelasi efect ca si M70, insa pe directia Y
23.31. M80 - schimbarea semnului pe directia X - dezactivat
Anuleaza schimbarea semnului pentru urmatoarele coordonate in X
23.32. M81 - schimbarea semnului pe directia Y - dezactivat
Anuleaza schimbarea semnului pentru urmatoarele coordonate in Y
23.33. M98 - apelare subprogram
Va genera realizarea unui salt din programul principal la un subprogram existent in memorie. Acesta este identificat prin
intermediul numarului sau. Numarul subprogramului apelat se introduce prin adresa P, ca in exemplul urmator, care se
traduce prin 'Apelul subprogramul numarul 1003'
N0560 M98 P1003
23.34. M99 - incheierea subprogramului si revenirea in programul apelant
Pe ultima linie a unui subprogram functia M99 incheie rularea subprogramului predand controlul programului apelant. Daca
M99 este prezenta pe ultima linie a programului principal, aceasta va genera un ciclu infinit in care programul principal este
mereu reluat.
Daca functia M99 este urmata de adresa P care indica un numar de bloc, revenirea in programul apelant se va face la blocul
respectiv, si nu la cel consecutiv apelului de subprogram.

More Related Content

What's hot

Calculul adaosurilor de prelucrare
Calculul adaosurilor de prelucrareCalculul adaosurilor de prelucrare
Calculul adaosurilor de prelucrareBilcu Ion
 
Auxiliar curricular masini cnc (2)tradus in romana
Auxiliar curricular masini cnc (2)tradus in romanaAuxiliar curricular masini cnc (2)tradus in romana
Auxiliar curricular masini cnc (2)tradus in romanabudur eleonora
 
Bazele aschierii-aranjata
Bazele aschierii-aranjataBazele aschierii-aranjata
Bazele aschierii-aranjatailie ureche
 
Prelucrarea pieselor prin frezare
Prelucrarea  pieselor prin frezarePrelucrarea  pieselor prin frezare
Prelucrarea pieselor prin frezareNicoleta Olcott
 
Intretinerea si repararea masinilor si utilajelor
Intretinerea si repararea masinilor si utilajelorIntretinerea si repararea masinilor si utilajelor
Intretinerea si repararea masinilor si utilajelorAnatolie Romanciuc
 
Desen tehnic-si-geometrie-descriptiva2
Desen tehnic-si-geometrie-descriptiva2Desen tehnic-si-geometrie-descriptiva2
Desen tehnic-si-geometrie-descriptiva2Arkhangel Nimicithum
 
Bazele proceselor de prelucrare prin aschiere curs
Bazele proceselor de prelucrare prin aschiere cursBazele proceselor de prelucrare prin aschiere curs
Bazele proceselor de prelucrare prin aschiere cursClimenteAlin
 
Carte desen tehnic & geometrie descriptiva
Carte desen tehnic & geometrie descriptivaCarte desen tehnic & geometrie descriptiva
Carte desen tehnic & geometrie descriptivaAdrian Ionescu
 
Masini si utilaje industriale
Masini si utilaje industrialeMasini si utilaje industriale
Masini si utilaje industrialeilie ureche
 
V definirea si clasificarea fluidelor de prelucrare prin aschiere
V definirea si clasificarea fluidelor de prelucrare prin aschiereV definirea si clasificarea fluidelor de prelucrare prin aschiere
V definirea si clasificarea fluidelor de prelucrare prin aschiereAdrian Palusan
 
Soft educational tehnic tehnologie mecanica, asamblari mecanice, lacatuserie
Soft educational tehnic   tehnologie mecanica, asamblari mecanice, lacatuserieSoft educational tehnic   tehnologie mecanica, asamblari mecanice, lacatuserie
Soft educational tehnic tehnologie mecanica, asamblari mecanice, lacatuserieTipa Marius-George
 
Tolerante si control dimensional curs - pater
Tolerante si control dimensional   curs - paterTolerante si control dimensional   curs - pater
Tolerante si control dimensional curs - paterClimenteAlin
 
Trunchiul de piramida patrulatera regulata
Trunchiul de piramida patrulatera regulataTrunchiul de piramida patrulatera regulata
Trunchiul de piramida patrulatera regulatadiadia2
 
Tehnologia materialelor m. banica 3
Tehnologia materialelor m. banica 3Tehnologia materialelor m. banica 3
Tehnologia materialelor m. banica 3Barbu Dan
 
Apostilatcncfanuc21i
Apostilatcncfanuc21i Apostilatcncfanuc21i
Apostilatcncfanuc21i Lucas Lira
 
Aspecte privind-proiectarea-si-calculul-infrastructurii
Aspecte privind-proiectarea-si-calculul-infrastructuriiAspecte privind-proiectarea-si-calculul-infrastructurii
Aspecte privind-proiectarea-si-calculul-infrastructuriiIvancu Aurel
 

What's hot (20)

Calculul adaosurilor de prelucrare
Calculul adaosurilor de prelucrareCalculul adaosurilor de prelucrare
Calculul adaosurilor de prelucrare
 
Auxiliar curricular masini cnc (2)tradus in romana
Auxiliar curricular masini cnc (2)tradus in romanaAuxiliar curricular masini cnc (2)tradus in romana
Auxiliar curricular masini cnc (2)tradus in romana
 
Curs desen tehnic
Curs desen tehnicCurs desen tehnic
Curs desen tehnic
 
Bazele aschierii-aranjata
Bazele aschierii-aranjataBazele aschierii-aranjata
Bazele aschierii-aranjata
 
Prelucrarea pieselor prin frezare
Prelucrarea  pieselor prin frezarePrelucrarea  pieselor prin frezare
Prelucrarea pieselor prin frezare
 
Intretinerea si repararea masinilor si utilajelor
Intretinerea si repararea masinilor si utilajelorIntretinerea si repararea masinilor si utilajelor
Intretinerea si repararea masinilor si utilajelor
 
Desen tehnic-si-geometrie-descriptiva2
Desen tehnic-si-geometrie-descriptiva2Desen tehnic-si-geometrie-descriptiva2
Desen tehnic-si-geometrie-descriptiva2
 
Bazele proceselor de prelucrare prin aschiere curs
Bazele proceselor de prelucrare prin aschiere cursBazele proceselor de prelucrare prin aschiere curs
Bazele proceselor de prelucrare prin aschiere curs
 
Carte desen tehnic & geometrie descriptiva
Carte desen tehnic & geometrie descriptivaCarte desen tehnic & geometrie descriptiva
Carte desen tehnic & geometrie descriptiva
 
Masini si utilaje industriale
Masini si utilaje industrialeMasini si utilaje industriale
Masini si utilaje industriale
 
V definirea si clasificarea fluidelor de prelucrare prin aschiere
V definirea si clasificarea fluidelor de prelucrare prin aschiereV definirea si clasificarea fluidelor de prelucrare prin aschiere
V definirea si clasificarea fluidelor de prelucrare prin aschiere
 
Soft educational tehnic tehnologie mecanica, asamblari mecanice, lacatuserie
Soft educational tehnic   tehnologie mecanica, asamblari mecanice, lacatuserieSoft educational tehnic   tehnologie mecanica, asamblari mecanice, lacatuserie
Soft educational tehnic tehnologie mecanica, asamblari mecanice, lacatuserie
 
1 kinematika-rezanja-2013-14
1 kinematika-rezanja-2013-141 kinematika-rezanja-2013-14
1 kinematika-rezanja-2013-14
 
Tolerante si control dimensional curs - pater
Tolerante si control dimensional   curs - paterTolerante si control dimensional   curs - pater
Tolerante si control dimensional curs - pater
 
1.teste si intrebari
1.teste si intrebari1.teste si intrebari
1.teste si intrebari
 
Trunchiul de piramida patrulatera regulata
Trunchiul de piramida patrulatera regulataTrunchiul de piramida patrulatera regulata
Trunchiul de piramida patrulatera regulata
 
Tehnologia materialelor m. banica 3
Tehnologia materialelor m. banica 3Tehnologia materialelor m. banica 3
Tehnologia materialelor m. banica 3
 
Caiet de practica
Caiet de practicaCaiet de practica
Caiet de practica
 
Apostilatcncfanuc21i
Apostilatcncfanuc21i Apostilatcncfanuc21i
Apostilatcncfanuc21i
 
Aspecte privind-proiectarea-si-calculul-infrastructurii
Aspecte privind-proiectarea-si-calculul-infrastructuriiAspecte privind-proiectarea-si-calculul-infrastructurii
Aspecte privind-proiectarea-si-calculul-infrastructurii
 

Viewers also liked

Cap.v cilcluri fixe
Cap.v cilcluri fixeCap.v cilcluri fixe
Cap.v cilcluri fixeClimenteAlin
 
Cap iv programarea centrelor de frezare
Cap iv   programarea centrelor de frezareCap iv   programarea centrelor de frezare
Cap iv programarea centrelor de frezareClimenteAlin
 
Cap.ii sistemul de prelucrare cnc
Cap.ii sistemul de prelucrare cncCap.ii sistemul de prelucrare cnc
Cap.ii sistemul de prelucrare cncClimenteAlin
 
Haas centre prelucrare scolarizare romana
Haas centre prelucrare scolarizare romanaHaas centre prelucrare scolarizare romana
Haas centre prelucrare scolarizare romanaClimenteAlin
 
G and m codes
G and m codesG and m codes
G and m codessnakeaye
 
Fanuc Ot Cnc Training Manual
Fanuc Ot Cnc Training ManualFanuc Ot Cnc Training Manual
Fanuc Ot Cnc Training Manualout2thow
 
41066064 proiect-cmsb-isb-anul-iii
41066064 proiect-cmsb-isb-anul-iii41066064 proiect-cmsb-isb-anul-iii
41066064 proiect-cmsb-isb-anul-iiiNikko Jade
 
Curs Operator Masini CNC masini cu comanda numerica
Curs Operator Masini CNC  masini cu comanda numericaCurs Operator Masini CNC  masini cu comanda numerica
Curs Operator Masini CNC masini cu comanda numericaProfesional New Consult
 
Cncpresentation CNC lathe machine
Cncpresentation CNC lathe machineCncpresentation CNC lathe machine
Cncpresentation CNC lathe machineHaseeb Butt
 

Viewers also liked (10)

Cap.v cilcluri fixe
Cap.v cilcluri fixeCap.v cilcluri fixe
Cap.v cilcluri fixe
 
Cap iv programarea centrelor de frezare
Cap iv   programarea centrelor de frezareCap iv   programarea centrelor de frezare
Cap iv programarea centrelor de frezare
 
Cap.ii sistemul de prelucrare cnc
Cap.ii sistemul de prelucrare cncCap.ii sistemul de prelucrare cnc
Cap.ii sistemul de prelucrare cnc
 
Haas centre prelucrare scolarizare romana
Haas centre prelucrare scolarizare romanaHaas centre prelucrare scolarizare romana
Haas centre prelucrare scolarizare romana
 
Prezentare
Prezentare Prezentare
Prezentare
 
G and m codes
G and m codesG and m codes
G and m codes
 
Fanuc Ot Cnc Training Manual
Fanuc Ot Cnc Training ManualFanuc Ot Cnc Training Manual
Fanuc Ot Cnc Training Manual
 
41066064 proiect-cmsb-isb-anul-iii
41066064 proiect-cmsb-isb-anul-iii41066064 proiect-cmsb-isb-anul-iii
41066064 proiect-cmsb-isb-anul-iii
 
Curs Operator Masini CNC masini cu comanda numerica
Curs Operator Masini CNC  masini cu comanda numericaCurs Operator Masini CNC  masini cu comanda numerica
Curs Operator Masini CNC masini cu comanda numerica
 
Cncpresentation CNC lathe machine
Cncpresentation CNC lathe machineCncpresentation CNC lathe machine
Cncpresentation CNC lathe machine
 

More from ClimenteAlin

5S - Seiri, Seiton, Seiso, Seiketsu, Shitsuke
5S - Seiri, Seiton, Seiso, Seiketsu, Shitsuke5S - Seiri, Seiton, Seiso, Seiketsu, Shitsuke
5S - Seiri, Seiton, Seiso, Seiketsu, ShitsukeClimenteAlin
 
sinteza formule trigonometrie
sinteza formule trigonometriesinteza formule trigonometrie
sinteza formule trigonometrieClimenteAlin
 
tabel derivate si integrale
tabel derivate si integraletabel derivate si integrale
tabel derivate si integraleClimenteAlin
 
Elemente de trigonometrie
Elemente de trigonometrieElemente de trigonometrie
Elemente de trigonometrieClimenteAlin
 
Formule matematice
Formule matematiceFormule matematice
Formule matematiceClimenteAlin
 
Sinteza geometriei
Sinteza geometrieiSinteza geometriei
Sinteza geometrieiClimenteAlin
 
Trigonometrie formule de baza
Trigonometrie formule de bazaTrigonometrie formule de baza
Trigonometrie formule de bazaClimenteAlin
 
Desent tehnic util
Desent tehnic utilDesent tehnic util
Desent tehnic utilClimenteAlin
 
Functii m doosan hm 630
Functii  m  doosan  hm 630Functii  m  doosan  hm 630
Functii m doosan hm 630ClimenteAlin
 
Functii g hm630-doosan
Functii g hm630-doosanFunctii g hm630-doosan
Functii g hm630-doosanClimenteAlin
 
Filete basic dimensions - iso-r 724-1968
Filete   basic dimensions - iso-r 724-1968Filete   basic dimensions - iso-r 724-1968
Filete basic dimensions - iso-r 724-1968ClimenteAlin
 
Dictionar tehnic-englez-roman
Dictionar tehnic-englez-romanDictionar tehnic-englez-roman
Dictionar tehnic-englez-romanClimenteAlin
 
Geometrie descriptiva desen tehnic
Geometrie descriptiva desen tehnicGeometrie descriptiva desen tehnic
Geometrie descriptiva desen tehnicClimenteAlin
 
Sistemul iso de toleranţe şi ajustaje
Sistemul iso de toleranţe şi ajustajeSistemul iso de toleranţe şi ajustaje
Sistemul iso de toleranţe şi ajustajeClimenteAlin
 
Tolerante asamblari
Tolerante   asamblariTolerante   asamblari
Tolerante asamblariClimenteAlin
 
Tolerante si control dimensional laborator - pater
Tolerante si control dimensional   laborator - paterTolerante si control dimensional   laborator - pater
Tolerante si control dimensional laborator - paterClimenteAlin
 
Tolerante si control dimensional curs alexandru potorac
Tolerante si control dimensional curs alexandru potoracTolerante si control dimensional curs alexandru potorac
Tolerante si control dimensional curs alexandru potoracClimenteAlin
 

More from ClimenteAlin (20)

5S - Seiri, Seiton, Seiso, Seiketsu, Shitsuke
5S - Seiri, Seiton, Seiso, Seiketsu, Shitsuke5S - Seiri, Seiton, Seiso, Seiketsu, Shitsuke
5S - Seiri, Seiton, Seiso, Seiketsu, Shitsuke
 
Curs mecanica
Curs mecanicaCurs mecanica
Curs mecanica
 
sinteza formule trigonometrie
sinteza formule trigonometriesinteza formule trigonometrie
sinteza formule trigonometrie
 
tabel derivate si integrale
tabel derivate si integraletabel derivate si integrale
tabel derivate si integrale
 
Elemente de trigonometrie
Elemente de trigonometrieElemente de trigonometrie
Elemente de trigonometrie
 
Formule geometrie
Formule geometrieFormule geometrie
Formule geometrie
 
Formule corpuri
Formule corpuriFormule corpuri
Formule corpuri
 
Formule matematice
Formule matematiceFormule matematice
Formule matematice
 
Sinteza geometriei
Sinteza geometrieiSinteza geometriei
Sinteza geometriei
 
Trigonometrie formule de baza
Trigonometrie formule de bazaTrigonometrie formule de baza
Trigonometrie formule de baza
 
Desent tehnic util
Desent tehnic utilDesent tehnic util
Desent tehnic util
 
Functii m doosan hm 630
Functii  m  doosan  hm 630Functii  m  doosan  hm 630
Functii m doosan hm 630
 
Functii g hm630-doosan
Functii g hm630-doosanFunctii g hm630-doosan
Functii g hm630-doosan
 
Filete basic dimensions - iso-r 724-1968
Filete   basic dimensions - iso-r 724-1968Filete   basic dimensions - iso-r 724-1968
Filete basic dimensions - iso-r 724-1968
 
Dictionar tehnic-englez-roman
Dictionar tehnic-englez-romanDictionar tehnic-englez-roman
Dictionar tehnic-englez-roman
 
Geometrie descriptiva desen tehnic
Geometrie descriptiva desen tehnicGeometrie descriptiva desen tehnic
Geometrie descriptiva desen tehnic
 
Sistemul iso de toleranţe şi ajustaje
Sistemul iso de toleranţe şi ajustajeSistemul iso de toleranţe şi ajustaje
Sistemul iso de toleranţe şi ajustaje
 
Tolerante asamblari
Tolerante   asamblariTolerante   asamblari
Tolerante asamblari
 
Tolerante si control dimensional laborator - pater
Tolerante si control dimensional   laborator - paterTolerante si control dimensional   laborator - pater
Tolerante si control dimensional laborator - pater
 
Tolerante si control dimensional curs alexandru potorac
Tolerante si control dimensional curs alexandru potoracTolerante si control dimensional curs alexandru potorac
Tolerante si control dimensional curs alexandru potorac
 

Programare cnc

  • 1. Masina de frezat NovaMill CNC Manual de programare CUPRINS 1. NTRODUCERE_____________________________________________________________ 5 2. CE ESTE CNC?_____________________________________________________________ 6 3. EXEMPLU DE PROCES DE PRELUCRARE PE MUCN__________________________ 6 4. STRUCTURA PROGRAMULUI PRINCIPAL CNC_______________________________ 8 5. STRUCTURA SUBPROGRAMELOR__________________________________________ 10 6. COMENZI PENTRU OPERAREA CU SUBPROGRAME_________________________ 11 7. COMANDA PENTRU REPETAREA SUBROGRAMULUI APELAT________________ 11
  • 2. 8. DEFINIREA SEMIFABRICATULUI__________________________________________ 12 9. DENUMIREA SI SALVAREA PROGRAMELOR________________________________ 12 10. NUMEROTAREA BLOCURILOR (LINIILOR) DINTR-UN PROGRAM_____________ 13 11. STRUCTURA BLOCURILOR________________________________________________ 14 12. FUNCTII PREGATITOARE_________________________________________________ 14 13. FUNCTIA AVANS_________________________________________________________ 15 14. FUNCTII DIVERSE________________________________________________________ 15 15. TURATIA ARBORELUI PRINCIPAL_________________________________________ 15 16. GESTIONAREA SCULELOR________________________________________________ 16 17. CORECTIA DE SCULA_____________________________________________________ 17 18. COORDONATE ABSOLUTE SI RELATIVE___________________________________ 17 19. IGNORAREA OPTIONALA A BLOCURILOR__________________________________ 18 20. COMENTARII SI MESAJE IN INTERIORUL PROGRA MELOR__________________ 18 21. FUNCTII PREGATITOARE G_______________________________________________ 18 21.1. Functii G modale si nemodale______________________________________________ 19 22. FUNCTII G (FUNCTII PREGATITOARE). INTRODUCERE_____________________ 19 22.1. G00 - pozitionare rapida__________________________________________________ 21 22.2. G01 - interpolare liniara__________________________________________________ 22 22.3. G02 si G03 - interpolare circulara___________________________________________ 23 22.4. G04 - temporizare_______________________________________________________ 26 22.5. G20 si G21 - setarea sistemului de unitati de masura___________________________ 27 22.6. G28 - revenire in punctul de referinta_______________________________________ 27 22.7. G40, G41, G42 - compensarea sculei________________________________________ 28 22.7.1. Pozitia de lucru si comanda miscarilor____________________________________________________ 29 22.7.2. Initierea compensarii sculei___________________________________________________________ 30 22.7.3. Anularea compensarii sculei__________________________________________________________ 30 22.8. G73 .. G89 - cicluri de gaurire______________________________________________ 32
  • 3. 22.8.1. Programarea ciclurilor in coordonate absolute/relative_______________________________________ 33 22.8.2. Programarea pozitiei (nivelului) de revenire dupa prelucrarea gaurii______________________________ 33 22.8.3. G73 - gaurire rapida_________________________________________________________________ 35 22.8.4. G74 - filetare______________________________________________________________________ 35 22.8.5. G76 - alezare de finisare___________________________________________________________ 36 22.8.6. G80 - anularea ciclului de gaurire____________________________________________________ 37 22.8.7. G81 - gaurire___________________________________________________________________ 37 22.8.8. G82 - gaurire cu temporizare___________________________________________________________ 37 22.8.9. G83 - gaurire adanca_____________________________________________________________ 38 22.8.10. G84 - filetare cu tarodul_____________________________________________________________ 38 22.8.11. G85 - alezare______________________________________________________________________ 38 22.8.12. G86 - alezare______________________________________________________________________ 39 22.8.13. G87- alezare de jos in sus____________________________________________________________ 39 22.8.14. G89 - gaurire_____________________________________________________________________ 40 22.9. Exemplu de utilizare a ciclurilor de gaurire_____________________________________ 41 22.10. G90 - programare in coordonate absolute____________________________________ 41 22.11. G91- programare in coordonate relative_____________________________________ 42 22.12. G94 - avansul exprimat in mm/min__________________________________________ 42 22.13. G95 - avans exprimat in mm/rot____________________________________________ 42 22.14. G98 - revenire la nivelul initial_____________________________________________ 42 22.15. G99 - revenire la nivelul R________________________________________________ 42 22.16. G170-G173 - comenzi pentru frezarea buzunarelor circulare si dreptunghiulare______ 43 22.16.1. G170 si G171 - prelucrarea unui buzunar circular - degrosare__________________________________ 43 22.16.2. G170 si G171 - prelucrarea unui buzunar circular - degrosare si finisare__________________________ 45 22.16.3. G170 si G171 - prelucrarea unui buzunar circular - finisare printr-o singura trecere_________________ 46 22.16.4. G172 si G173 - prelucrarea unui buzunare dreptunghiular - degrosare___________________________ 48 22.16.5. G172 si G173 - prelucrarea unui buzunar dreptunghiular - degrosare si finisare____________________ 50
  • 4. 22.16.6. G172 si G173 - preluarea unui buzunar dreptunghiular - finisare printr-o singura trecere_____________ 51 23. FUNCTII DE TIP M________________________________________________________ 53 23.1. Functii de tip M recunoscute de echipamentul CNC Denford_____________________ 53 23.2. M00 - oprirea programului________________________________________________ 55 23.3. M01 - oprirea optionala a programului_______________________________________ 55 23.4. M02 - resetarea programului______________________________________________ 55 23.5. M03 - pornirea turatiei cu rotirea axului principal in sens orar____________________ 55 23.6. M04 - pornirea turatiei cu rotirea axului principal in sens trigonometric____________ 55 23.7. M05 - oprirea turatiei____________________________________________________ 56 23.8. M06 - schimbarea automata a sculelor_______________________________________ 56 23.9. M08 - pornirea lichidului de racire-ungere___________________________________ 56 23.10. M09 - oprirea lichidului de racire-ungere____________________________________ 56 23.11. M10 - deschiderea sistemului de fixare a semifabricatului_______________________ 56 23.12. M11 - inchiderea sistemului de fixare a semifabricatului_________________________ 56 23.13. M13 - pornirea a turatiei in sens orar si a lichidului de racire-ungere______________ 57 23.14. M14 - pornirea turatiei in sens trigonometric si a lichidului de racire-ungere________ 57 23.15. M19 - orientarea arborelui principal_________________________________________ 57 23.16. M20 - deplasarea MASS (Magazinul Automat de Schimbare a Sculelor) sub arborele principal 57 23.17. M21 - deplasarea MASS de sub arborele principal_____________________________ 57 23.18. M22 - deplasarea MASS in jos_____________________________________________ 57 23.19. M23 - deplasarea MASS in sus_____________________________________________ 57 23.20. M24 - deschiderea sistemului de fixare a sculei_______________________________ 57 23.21. M25 - inchiderea sistemului de fixare a sculei_________________________________ 58 23.22. M27 - resetarea pozitiei magazinului de scule_________________________________ 58 23.23. M30 - oprirea programului si pozitionare la inceputul lui________________________ 58 23.24. M32 - rotirea magazinului de scule in sens orar_______________________________ 58 23.25. M32 - rotirea magazinului de scule in sens antiorar____________________________ 58
  • 5. 23.26. M38 - deschiderea usii de protectie_________________________________________ 58 23.27. M39 - inchiderea usii de protectie__________________________________________ 59 23.28. M6267, M76, M77_____________________________________________________ 59 23.29. M70 - schimbarea semnului pe directia X - activat_____________________________ 59 23.30. M71 - schimbarea semnului pe directia Y - activat_____________________________ 59 23.31. M80 - schimbarea semnului pe directia X - dezactivat__________________________ 59 23.32. M81 - schimbarea semnului pe directia Y - dezactivat__________________________ 59 23.33. M98 - apelare subprogram________________________________________________ 59 23.34. M99 - incheierea subprogramului si revenirea in programul apelant_______________ 60 1. NTRODUCERE Echipamentul CNC (Conducere Numerica cu Calculatorul) Denford cu care opereaza intreaga gama de masini unelte Denford este un sistem compatibil FANUC care utilizeaza codul de programare ISO Manualul acopera toate etapele implicate in elaborarea instructiunilor codificate, necesare echipamentului CNC pentru prelucrarea unui reper. Secventa de instructiuni codificate necesara prelucrarii unui reper poarta numele de program piesa. Fiecare segment al programului este alcatuit dintr-un numar oarecare de coduri, numite si functii, cele mai importante fiind seturile de coduri G si M. Acestea sunt cele care alcatuiesc limbajul de baza utilizat pentru descrierea modului in care va fi prelucrata o piesa: ce miscari trebuie efectuate, in ce ordine, cand trebuie inlocuita scula, etc. Primele capitole ale acestui manual acopera aspectele principale ale programarii MUCN si ofera indicatii asupra utilizarii comenzilor. Fiecare capitol se dezvolta progresiv, utilizand un limbaj comun, usor de urmarit, ghidand utilizatorul in realizarea programelor de conducere numerica. Dupa parcurgerea primei parti, operatorul va fi avea cunostintele de baza necesare abordarii programarii sub aspectele ei esentiale. Fara indoiala, acest manual nu poate (nici nu isi propune) sa ofere toate cunostintele necesare programarii. Subiectul este pur si simplu prea vast pentru ca asa ceva sa fie posibil. Totusi, acest manual formeaza baza necesara pe care sa se cladeasca noi cunostinte prin consultarea unor documentatii mai pretentioase. Capitolele dedicate codurilor G si M prezinta detaliat functiile utilizate in programarea CNC. Aceste capitole sunt concepute mai degraba ca ghiduri de utilizare si se adreseaza celor care dispun de cunostintele de baza in domeniul programarii CNC. Partea I 2. CE ESTE CNC? CNC (Conducere Numerica cu Calculatorul) este sintagma generala utilizata pentru un sistem care controleaza functionarea unei masini unelte utilizand instructiuni codificate prelucrate de catre un calculator. 3. EXEMPLU DE PROCES DE PRELUCRARE PE MUCN
  • 6. Mentionam de la inceput, ca in acest exemplu sunt incluse toate etapele procesului, deci si pregatirea programului, nu numai prelucrarea efectiva a piesei pe masina unealta (Fig. 1): 1. Scrierea programului CNC utilizand coduri G si M. Programul descrie secventa de operatii care se efectueaza pe MUCN in scopul prelucrarii piesei. Programul poate fi scris off-line, adica fara implicarea masinii, fie manual, fie cu asistenta unui calculator, utilizand un sistem CAD/CAM. 2. Programul este incarcat in calculatorul masinii, numit controler. In acest stadiu, programul inca mai poate fi modificat si este posibila simularea functionarii sale utilizand facilitatile interactive ale calculatorului. 3. Controlerul proceseaza programul piesa si transmite semnale masinii unelte, semnale care dau informatii diverselor componente ale acesteia asupra operatiilor necesare in vederea prelucrarii piesei. Prin aplicarea conducerii numerice la o masina unealta clasica, lucrul cu aceasta poate fi complet automatizat.
  • 7.
  • 8. 4. STRUCTURA PROGRAMULUI PRINCIPAL CNC Programul piesa poate sa contina un numar oarecare de programe individuale, care impreuna descriu toate operatiile care trebuie efectuate pentru a prelucra o piesa. Programul principal este programul care detine controlul tuturor actiunilor. El este primul citit si incarcat in memorie cand este rulat tot programul piesa. Programul principal poate apela un numar oarecare de programe mai mici. Aceste programe se mai numesc subprograme, si sunt utilizate pentru a realiza sarcini care se repeta. Dupa rularea unui astfel de subprogram, controlul revine programului principal. Bineinteles, controlerul (calculatorul masinii) functioneaza dupa un program, care in acest caz este chiar programul principal. Programele principale, ca si subprogramele de altfel, sunt scrise utilizand codurile ISO prezent 636i87g ate mai jos. ADRESE N- indica numarul frazei; G - face trimitere la codurile G (functii pregatitoare); X - Indica distanta care trebuie parcursa de sanie de-a lungul axei X; Y - Indica distanta care trebuie parcursa de sanie de-a lungul axei Y; Z - Indica distanta care trebuie parcursa de capul masinii de-a lungul axei Z; F - Indica viteza de avans; M - apeleaza functii diverse (care de obicei se adreseaza direct masinii unelte pentru a stabili conditiile de prelucrare); S - Indica turatia arborelui principal; T - se refera la gestionarea sculelor. Fiecare bloc, sau linie a programului, contine adrese care trebuie plasate in ordinea: N, G, X, Y, Z, F, M, S, T; Aceasta ordine trebuie respectata in orice fraza. Cu toate acestea, nu fiecare fraza va contine toate adresele mentionate mai sus, adica dintr-o fraza pot sa lipseasca unele adrese, daca nu sunt necesare. Organizarea blocurilor de date intr-un program respecta urmatorul sablon. Este esential ca structura de mai jos sa fie respectata, pentru a asigura corectitudinea atat a prelucrarii, cat si a simularii (Fig. 2).
  • 9. Lista de instructiuni de mai sus reprezinta un program scris in sistemul de programare Denford. Pentru ca un astfel de program sa opereze corect si pe un echipament original FANUC, informatiile despre sistemul CAD/CAM utilizat si dimensiunile semifabricatului trebuie eliminate din program. 5. STRUCTURA SUBPROGRAMELOR Un program care contine secvente care se repeta poate fi memorat ca si subprogram pentru a simplifica programul principal. Un subprogram este introdus in memoria controlerului in modul Edit, ca si un program principal. Diferentele dintre un subprogram si un program principal sunt urmatoarele:
  • 10. 1) Subprogramele nu contin informatiile despre marimea semifabricatului la inceputul programului. 2) Un subprogram se termina cu codul M99 Un subprogram poate fi apelat cand masina se afla in modul de lucru automat (Auto Mode). Subprogramele pot la randul lor sa apeleze alte subprograme. Se spune despre un program principal care apeleaza un subprogram ca este un program cu o bucla. Nivelul maxim admis pentru un program principal este cu patru bucle. Aceasta inseamna ca nivelul maxim de imbricare al apelurilor de subprograme este patru. In Fig. 3 se prezinta un program principal cu doua bucle. Programul principal Subprogramul 1 Subprogramul 2 Primul nivel de imbricare Al doilea nivel de imbricare Fig. 3. Imbricarea apelurilor de subprograme a buclei a buclei 6. COMENZI PENTRU OPERAREA CU SUBPROGRAME OBSERVATII GENERALE Observatia 1: Subprogramele sunt memorate sub numere de program formate din patru cifre. Observatia 2: Daca pentru o scula sunt necesare corectii de raza/lungime si acea scula este utilizata in subprogram, corectiile trebuie apelate si apoi anulate in interiorul subprogramului.
  • 11. Observatia 3: Pentru a apela un subprogram se utilizeaza codul M98 urmat de Pxxxx unde xxxx este numarul programului apelat (spre exemplu, M98 P2000). Aceasta comanda se citeste 'apelul programului numarul 2000'. Observatia 4: Un apel de subprogram (M98 P2000) poate fiplasat intr-o fraza in care se comanda si o miscare. Spre exemplu, N1130 G01 X50 M98 P2000 Observatia 5: Un subprogram se incheie cu codul M99. Acesta returneaza controlul programului principal (sau mai corect programului apelant, deoarece acesta, la randul lui, poate fi un subprogram). Codul M99 va returna controlul la blocul urmator celui in care s-a facut apelul din programul apelant. In cazul in care codul M99 este urmat de Pxxxx, controlul va fi predat in programul apelant la linia (blocul) xxxx. Spre exemplu, linia de program N3450 M99 P160 va fi interpretata 'intoarcere la linia 160 in programul apelant'. 7. COMANDA PENTRU REPETAREA SUBROGRAMULUI APELAT Este posibil apelul unui subprogram in care sa se specifice si numarul de repetari ale acestuia. Formatul unui astfel de apel este urmatorul: M98 P2000 xxxx si va fi interpretat 'efectueaza programul 2000 de xxxx ori'. Daca numarul de repetari este omis, subprogramul va fi efectuat o singura data. 8. DEFINIREA SEMIFABRICATULUI Definirea/descrierea semifabricatului (BILLET DEFINITION) este o caracteristica a sistemului de programare Denford. Ea indica dimensiunile semifabricatului care vor fi utilizate de catre modulul de simulare al pachetului softw are. Precizarea dimensiunilor semifabricatului nu are nici un rezultat in (nu influenteaza in nici un fel) prelucrarea efectiva. Descrierea semifabricatului se face la inceputul programului principal. De obicei, in blocul care precede descrierea se indica unitatile de masura in care sunt exprimate dimensiunile semifabricatului: G21 pentru sistemul metric si G20 pentru unitati britanice. Spre exemplu, liniile de program N0010 G21; [BILLET X100 Y150 Z20
  • 12. vor fi interpretate: - toate dimensiunile sunt masurate in milimetri; - semifabricatul este o prisma cu dimensiunile 100x150x20 mm. Observatie: un program scris pentru o masina Denford, sau utilizand postprocesorul Denford nu va putea opera direct pe o masina FANUC originala. Modulul de simulare al programului este incompatibil cu echipamentul FANUC. Pentru ca programul sa ruleze cu succes pe o masina FANUC, orice referire la sistemul CAD/CAM Denford, precum si descrierea semifabricatului trebuie inlaturate din program. 9. DENUMIREA SI SALVAREA PROGRAMELOR Salvarea pe disc a programelor este posibila numai dupa ce acestora li s-a atribuit un numar sau nume. Daca se salveaza un program editat cu consola Denford numarul programului poate fi cuprins intre 1 si 999999999 (in acest context numarul programului joaca rolul de nume al acestuia). Daca programul este editat in afara sistemului MUCN cu o tastatura QWERTY numele programului poate fi alcatuit din litere si/sau cifre. Observatia 1: Subprogramele trebuie sa fie numerotate in domeniul 0001 .. 9999, deci utilizand patru cifre. De altfel, se recomanda ca orice program sa fie numerotat in domeniul mai sus mentionat. Observatia 2: Inainte de a salva un program pe disc, verificati daca numele fisierului curent nu a fost deja folosit la salvarea altuia. In acest caz, acel fisier de pe disc va fi inlocuit cu cel curent, deci va fi distrus. Observatia 3: Programele care urmeaza sa fie rulate ulterior pe o masina FANUC trebuie sa aiba inscris numarul de program pe prima lor linie. Formatul pentru inscrierea numarului de program compatibil FANUC este Oxxxx, unde xxxx este numarul programului, de exemplu O20 10. NUMEROTAREA BLOCURILOR (LINIILOR) DINTR-UN PROGRAM Un program este alcatuit din mai multe comenzi, fiecare comunicand masinii instructiuni pentru rezolvarea unei anumite sarcini sau operatii. Fiecare comanda este o linie separata in cadrul programului. Vom mai numi o astfel de linie din program, bloc. Fiecare bloc este separat de urmatorul printr-un caracter special, care indica sfarsitul de linie. Sistemul de programare Denford utilizeaza ca marcator al sfarsitului de bloc caracterul punct si virgula (;). La inceputul blocului poate fi specificata o valoare numerica (cuprinsa intre 0001 si 9999) ca si continut al adresei N. Pot fi numerotate toate liniile unui program, sau doar cele care necesita asa ceva. Observatia 1: Atunci cand este utilizata, adresa Numar de bloc (linie) - N, trebuie sa fie plasata prima in blocul din care face parte.
  • 13. Observatia 2: Se recomanda numerotarea cu valori alcatuite din patru cifre, dar care sa nu fie consecutive, ci crescatoare din 10 in 10. In acest mod este posibila in orice moment inserarea de noi linii intr-un program. Observatia 3: Chiar daca numerotarea blocurilor nu este o prioritate in scrierea programelor este important sa se numeroteze cel putin anumite linii ale programului; astfel de linii ar putea fi acelea in care se comanda schimbarea sculei. De altfel, unele linii trebuie obligatoriu numerotate: este vorba de liniile la cere se doreste revenirea din subprograme, atunci cand revenir ea nu urmeaza sa se faca in pozitia implicita (la linia consecutiva apelului de subprogram) - vezi observatia 5 de la COM ENZI PENTRU OPERAREA CU SUBPROGRAM E. 11. STRUCTURA BLOCURILOR Ordinea in care apar adresele intr-un bloc este bine stabilita si trebuie respectata intocmai. Aceasta ordine este prezentata mai jos. N0000 G00 X00 Y00 Z00 F0000 M00 S0000 T00; Observatie: Din orice bloc pot lipsi una sau mai multe adrese. 12. FUNCTII PREGATITOARE Functiile pregatitoare, numite si functii G sunt utilizate pentru a descrie traiectoria sculei sau pentru a activa/dezactiva anumite functii ale masinii. Functiile G sunt utilizate pentru indicarea tipului de interpolare utilizat, pentru controlul operatiilor de gaurire, specificarea unitatilor de masura, activarea corectiilor de scula, etc, O functie G este invocata prin caracterul G care desemneaza adresa si o valoare numerica de doua cifre, continutul adresei. Traiectoria sculei Traiectoria sculei este determinata de miscari de-a lungul unor segmente de dreapta si sau arce de cerc care descriu profilul piesei de prelucrat. A) Deplasarea de-a lungul unui segmentde dreapta
  • 14. Acest tip de miscare se mai numeste si interpolare liniara. Interpolarea liniara este activata cu functia G01. Formatul comenzii este: G01 Y.; (P1 - P2) X. Y.; (P2 - P3) X.; (P3 - P4) B) Deplasarea de-a lungul unui arc de cerc Acest tip de miscare se numeste interpolare circulara. Interpolarea circulara este activata cu functiile G02 (in sens orar) si cu G03 (in sens trigonometric). Formatul comenzii este: G03 X. Y. R.; X si Y sunt coordonatele punctului final al arcului, iar R raza arcului parcurs. Nu este necesara specificarea coordonatelor centrului miscarii. 13. FUNCTIA AVANS Deplasarea sculei cu o anumita viteza in vederea aschierii se numeste AVANS. Avansul se regleaza utilizand adresa F urmata de o valoare numerica, aceasta reprezentand continutul adresei. Dupa cum la inceputul programului a fost invocata functia G20 sau G21, marimea avansului este exprimata in inch/min., respectiv in mm/min. 14. FUNCTII DIVERSE Functiile diverse, numite si Functii M, dupa adresa care le introduce, sunt utilizate in special pentru a actiona sau opri diverse componente ale masinii (exemplu, M03 - pornirea axului principal, M05 - oprirea axului principal). In general functiile invocate prin valori mici ale continutului au aceeasi semnificatie pe majoritatea echipamentelor de conducere numerica. Functiile invocate prin valori mari ale continutului sunt in general specifice anumitor echipamente. Functiile M sunt apelate prin adresa M cu un continut format din doua caractere numerice. 15. TURATIA ARBORELUI PRINCIPAL
  • 15. Viteza de rotatie a sculei in raport cu piesa de prelucrat se numeste viteza de aschiere. Aceasta nu poate fi reglata in mod direct, deoarece este influentata de doi parametri: turatia sculei (arborelui principal) si diametrul sculei. Diametrul fiind o marime care se alege independent de masina, rezulta ca viteza de aschiere poate fi reglata (din punctul de vedere al conducerii numerice) prin intermediul turatiei. Turatia este comandata prin intermediul adresei S. Continutul acesteia este o valoare numerica care exprima turatia in rot/min. Pentru a putea fi aplicata turatia solicitata, aceasta trebuie sa se incadreze in domeniul de turatii al masinii. Observatia 1: Cand in aceeasi fraza sunt apelate impreuna comenzi de miscare si de reglare a turatiei, acestea sunt executate cvasisimultan. In orice caz, in momentul inceperii miscarii, turatia efectiva este cea reglata in fraza curenta. Observatia 2: Intr-o fraza este acceptat un singur apel al functiei S. 16. GESTIONAREA SCULELOR Sculele pot fi inlocuite pe parcursul rularii unui program de prelucrare utilizand functia T. Fiecarei scule care va lucra intr-un program ii este asociat un numar. Daca masina de frezat este echipata cu un dispozitiv automat de schimbare a sculelor, numarul asociat unei scule coincide cu numarul locasului in care ea este stocata in dispozitiv. Numarul sculei este invocat prin adresa T si continutul ei. Acesta desemneaza numarul asociat sculei vizate. Pentru a comanda schimbarea sculei, trebuie invocata functia M6 inaintea mentionarii sculei care urmeaza sa o inlocuiasca pe cea in lucru. Un exemplu de apel al schimbarii sculei este urmatorul: M06 T3 Aceasta se va citi 'inlocuieste scula curenta cu scula numarul 3'. Observatia 1: Functia M06 trebuie sa fie plasata imediat inaintea functiei T care indica numarul noii scule. Observatia 2: Intr-o fraza este acceptat un singur apel al functiei T. Observatia 3: In momentul citirii secventei M06 T. masina va comanda deplasarea dupa cele trei axe in punctul de schimbare a sculei, va opri turatia arborelui principal si se va efectua inlocuirea sculei. Aceasta secventa de actiuni are loc indiferent de pozitia sculei in momentul citirii comenzii de schimbare a sculei din program. Din acest motiv se recomanda urmarirea cu atentie a pozitiei sculei inaintea apelului inlocuirii, si daca e cazul, dirijarea retragerii ei pentru evitarea eventualelor coliziuni cu piesa. 17. CORECTIA DE SCULA In general, pentru a prelucra o piesa de o anumita complexitate sunt necesare mai multe tipuri de scule, unele din ele de diametre diferite. Scrierea unui program care sa tina seama de dimensiunile sculei ar fi foarte dificila. Pentru a putea lua in calcul dimensiunile sculei intr-un program generalizat, se masoara diametrul si lungimea fiecarei scule in afara programului (inaintea rularii sale) si se salveaza intr-un fisier special, numit fisier de corectii. In esenta, aceasta face ca programul scris, traiectoriile sculei pe care el le descrie, sa fie independente de dimensiunile sculei. Dimensiunile salvate sunt numite offset sau corectii de scula.
  • 16. Observatie: cand echipamentul de conducere numerica citeste din program o functie T, el preia din fisierul de corectii si dimensiunile corespunzatoare noii scule. Pentru a lua in calcul diametrul frezei la comanda traiectoriei sculei, trebuie invocata in prealabil functia G41 sau G42 (compensarea sculei pe partea stanga, respectiv pe partea dreapta). 18. COORDONATE ABSOLUTE SI RELATIVE Cand este activa functia G90 coordonatele X, Y si Z dintr-un program sunt masurate fata de un punct fix, raportat la piesa de prelucrat, numit nulul piesei. Se spune in acest caz ca programarea s-a facut in coordonate absolute. Dimpotriva, daca activ este G91, coordonatele sunt raportate la ultimul punct invocat (atins de scula), ceea ce corespunde programarii in coordonate relative. Pentru programarea traseului P1-P2-P3-P4 din Fig. 6 se poate proceda in doua moduri: A) In coordonate absolute: G90; selectarea modului de lucru in coordonate absolute G01 Y60 F150; deplasare pe segmentul P1-P2 cu avansul 150 mm/min. G03 X60 Y100 R40; deplasare pe arcul P2-P3 cu raza de 40 mm G01 X0; deplasare pe segmentul P3-P4 B) In coordonate relative: G91; selectarea modului de lucru in coordonate relative G01 Y60 F150; deplasare pe segmentul P1-P2 cu avansul 150 mm/min. G03 X-40 Y40 R40; deplasare pe arcul P2-P3 cu raza de 40 mm G01 X-60; deplasare pe segmentul P3-P4 19. IGNORAREA OPTIONALA A BLOCURILOR Liniile de program numerotate vor fi ignorate (sarite) la rularea programului daca sunt precedate de caracterul slash si daca comutatorul Block skip de pe panoul de control al masinii este in pozitia On. Cand comutatorul Block skip este in pozitia Off liniile marcate cu '/' sunt tratate ca orice alta linie din program. Observatie: caracterul slash poate fi plasat oriunde intr-o fraza, nu numai la inceputul ei. In acest caz comenzile aflate inaintea lui se vor comporta normal, vor fiexecutate, iar cele care ii urmeaza, vor fi ignorate. 20. COMENTARII SI MESAJE IN INTERIORUL PROGRAMELOR Daca programul este scris off-line, adica in afara masinii unelte, de exemplu pe un calculator, in interiorul sau pot fi plasate comentarii si/sau mesaje, adica secvente de text ignorate de echipamentul de conducere numerica. Comentariile sunt utile pentru a introduce anumite explicatii asupra programului. Astfel, pot fi indicate dimensiunile si tip ul sculelor atunci cand ele intra in lucru. Mesajele au aceeasi utilitate ca si comentariile, dar sunt si afisate pe panoul de control al masinii. Spre exemplu, poate fi inserat in program mesajul 'incepe prelucrarea buzunarului circular cu raza de 20 mm si adancimea de 3'. In momentul parcurgerii liniei de program care contine mesajul, acesta va fiafisat si pe consola echipamentului (panoul de control).
  • 17. 21. FUNCTII PREGATITOARE G Functiile pregatitoare, G, se utilizeaza pentru descrierea traiectoriei sculei sau setarea modurilor de lucru ale masinii. Astfel de functii permit controlul miscarilor, al operatiilor de gaurire, alegerea unitatilor de masura, etc. In mod normal, functiile G sunt plasate la inceputul frazelor, imediat dupa numarul de linie, daca acesta exista. Este permisa prezenta mai multor functii G intr-o fraza, cu conditia sa nu se nege reciproc. O functie G este alcatuita din caracterul G (adresa) si o valoare numerica de doua cifre (continutul). G00 Adresa Continutul 21.1. Functii G modale si nemodale Functiile G se clasifica, din punctul de vedere al ariei de influenta in:  Functii modale. Acestea sunt efective in linia in care sunt invocate, dar si in liniile urmatoare, atata timp cat nu sunt negate de functii din aceeasi categorie. Cu alte cuvinte, odata activata o functie modala, ea are efect si in urmatoarele linii de program, fara a fi necesara repetarea apelului ei. Functiile modale, la randul lor, se clasifica in grupuri, dupa cum vizeaza o anumita sarcina sau alta. O functie G modala ramane activa pana in fraza in care o functie din acelasi grup este apelata. Un exemplu de grup este cel al functiilor de pozitionare si interpolare. In exemplul de mai jos, echipamentul de conducere numerica asuma f aptul ca in frazele N60 .. N80 se efectueaza interpolare liniara, desi acest lucru nu este programat in mod explicit in acele fraze. In frazele mentionate, este efectiva functia G1 apelata in fraza N50. N20 G21; N30 G90; N40 G00 X50 Y50; N50 G01 Z-5; N60 X100; N70 Y120; N80 X130 Y160; N90 G03 X150 Y 180 R20; In fraza N90 interpolarea liniara G01 este negata de functia G03, interpolare circulara. Functiile G01 si G03 fac parte din acelasi grup de functii. Partea a II-a 22. FUNCTII G (FUNCTII PREGATITOARE). INTRODUCERE
  • 18. Retineti ca exista doua tipuri de functii G. O functie modala este memorata si este efectiva pana cand este apelata o alta functie G din acelasi grup modal. Functiile nemodale (non-modale) sunt efective doar in frazele in care sunt apelate. Nu este necesar apelul aceleiasi functii modale in fraze consecutive; totusi, apelarea repetata in fraze consecutive a unei functii modale nu constituie eroare. Spre exemplu, in cazul prelucrarii unui contur alcatuit numai din segmente de dreapta, este suficienta apelarea lui G1 doar in fraza in care incepe conturarea. G01 va ramane activ pana la apelul unui alt tip de interpolare (G00, G02 sau G03). Intr-o fraza pot fi apelate cel mult patru functii G. Acestea trebuie sa faca parte din grupuri modale diferite; daca in aceeasi fraza se apeleaza doua sau mai multe functii G din acelasi grup, efectiva va deveni doar ultima din grupul respectiv. Lista functiilor G Tabelul 1 Functia Grupul Semnificatia Observatii G00 1 Pozitionare punct cu punct Se efectueaza cu avans rapid G01 1 Interpolare liniara Se efectueaza cu avans de lucru G02 1 Interpolare circulara in sens orar G03 1 Interpolare circulara in sens trigonometric G04 0 Oprire precisa G20 6 Sistemul de unitati britanic inch, inch/min G21 6 Sistemul international de unitati mm, mm/min G28 0 Revenire in punctul de referinta G40 7 Anularea compensarii sculei G41 7 Compensarea sculei pe stanga G42 7 Compensarea sculei pe dreapta G73 9 Gaurire rapida G74 9 Filetare cu cutit G76 9 Alezare de finisare G80* 9 Anularea ciclului de gaurire G81 9 Gaurire G82 9 Gaurire cu temporizare G83 9 Gaurire adanca G84 9 Filetare cu tarod G85 9 Alezare G86 9 Alezare G87 9 Alezare de jos in sus G89 9 Gaurire G90* 3 Programare in coordonate absolute G91 3 Programare in coordonate relative G94* 5 Avans pe minut G95 5 Avans pe rotatie G98* 10 Revenire la nivelul initial al buzunarului Utilizate la ciclurile de
  • 19. G99 10 Revenire la nivelul R al buzunarului gaurire G170 0 Prelucrarea buzunarului circular G171 0 Prelucrarea buzunarului circular G172 0 Prelucrarea buzunarului dreptunghiular G173 0 Prelucrarea buzunarului dreptunghiular * Stari implicite, cele active la pornirea masinii sau la resetarea masinii dupa oprirea ei cu butonul de urgenta. Functiile din grupul 0 sunt nemodale. Ele trebuie apelate in toate frazele in care sunt necesare, chiar daca frazele respective sunt consecutive in program. Toate celelalte functii G sunt modale. 22.1. G00 - pozitionare rapida Functia G00 provoaca o miscare de pozitionare cu avans rapid (fara aschiere) pana in pozitia indicata prin adresele geometrice X, Y, Z. Formatul comenzii este urmatorul: G00 X Y Z Punctul de pozitionare introdus prin adresele geometrice X, Y si Z poate fi exprimat in coordonate absolute (reportat la un reper fix - nulul piesei) sau in coordonate relative (raportat la ultima pozitie pro gramata). Operarea in coordonate absolute este invocata prin functia G90, iar cea in coordonate relative prin functia G91. Observatia 1: Valoarea avansului rapid este setata de producatorul echipamentului. Aceasta valoare poate fi redusa de la 100% la 0% dar numai in trepte de 10% utilizand facilitatile de suprascriere a avansului, facilitati specifice masinii unelte. (pentr u aceasta consultati manualul de operare al masinii). Observatia 2: Functia G00 blocheaza compensarea sculei impusa prin una din functiile G41 sau G42. Daca in momentul apelului lui G00 este activ G41 sau G42, compensarea sculei este reactivata numai cand este apelata din nou o functie de interpolare (G01, G02 sau G03). Observatia 3: Functia G00 este modala si deci, incompatibila cu celelalte functii de interpolare in aceeasi fraza. Observatia 4: Functia G00 poate fi invocata in doua moduri: G00 sau G0. Observatia 5:
  • 20. In urma apelului functiei G00 miscarea dupa cele trei axe se efectueaza complet independent, cu avansul rapid. In exemplul alaturat, G00 comanda deplasarea saniilor simultan dupa axele X si Y cu acelasi avans. Aceasta face ca scula sa para ca se deplaseaza diagonal (Fig. 7). Cand dupa una din axe s-a atins coordonata programata, deplasarea va continua numai dupa cealalta axa pana la atingerea punctului programat. Consecinta este ca scula isi modifica directia relativa de deplasare in raport cu piesa. Deoarece traiectoria efectiva este greu de estimat de catre programator, trebuie acordata o atentie deosebita evitarii eventualelor coliziuni dintre scula si piesa sau dispozitivul de fixare a semifabricatului. 22.2. G01 - interpolare liniara Functia G01 - interpolare liniara provoaca o miscare de aschiere de-a lungul unui segment de dreapta cu o viteza de avans prestabilita. Formatul comenzii este urmatorul: G01 X. Y. Z. Avansul programat va fi efectiv de-a lungul traiectoriei, deci cel rezultat din combinarea miscarilor dupa axele de coordonate ale celor doua sanii. Valoarea programata a avansului nu se refera la miscarile descompuse de-a lungul axelor (nu se aplica fiecarei sanii). Doar in cazurile particulare ale miscarilor programate in directie paralela cu a unei axe sania se va deplasa chiar cu avansul programat. In cazul miscarilor care rezulta prin combinarea translatiilor dupa diverse axe, toate saniile implicate trebuie sa opereze in acelasi interval de timp. Pentru aceasta controlerul va calcula avansul individual pentru fiecare sanie, astfel incat prin combinarea miscarilor sa rezulte pentru deplasarea programata, avansul solicitat. Punctul de destinatie poate fi programat in coordonate absolute sau relative. Exemplu de programare a functiei G01: N130 G90 G01 X100 Y50 F115; Observatia 1: In exemplul de mai sus G90 G01 si F115 sunt modale, deci pot fi utilizate si in urmatorul bloc, fara sa fie apelate din nou. Observatia 2:
  • 21. Avansul F115 poate fi modificat in Modul Automat de la 0 la 150% utilizand functiile de suprascriere a avansului (vezi manualul masinii). 100% este chiar avansul programat. Observatia 3: Daca nu se programeaza avansul in fraza cu miscare sau in una care sa o preceada, echipamentul de conducere numerica va lua in considerare un avans de 10 mm/min. pentru programare in unitati internationale (G21), sau 0.4 in/min. pentru programare in unitati britanice (G20). Observatia 4: Functia G01 este modala, si prin urmare, incompatibila cu G00, G02 sau G03 in aceeasi fraza. Observatia 5: Functia de interpolare liniara poate fiapelata in doua moduri: G01 sau G1. 22.3. G02 si G03 - interpolare circulara G02 si G03 provoaca miscari de aschiere (cu avansul de lucru programat) de- a lungul unui arc de cerc in sens orar, respectiv trigonometric (Fig. 9), intr-un sistem de coordonate cartezian drept, asa cum sunt cel al masinii si al piesei la echipamentul Denford. Sensul orar si cel trigonometric sunt definite conform figurii alaturate. Cand se programeaza in coordonate absolute, punctul programat este raportat la punctul curent de nul si desemneaza pozitia finala (in urma miscarii descrise) a sculei. Capatul arcului descris, sau pozitia finala, mai este numit si punctul tinta al miscarii. Cand se programeaza in coordonate relative, X si Y sunt raportate la punctul de inceput al miscarii (pozitia actuala a sculei). Semnul coordonatelor X si Y este dat de sensul in care se face deplasarea (pozitia relativa a punctului final fata de cel initial). I si J Pentru a programa un arc cand nu se cunoaste raza, ci doar centrul miscarii, se vor utiliza adresele I si J. I reprezinta poz itia
  • 22. centrului pe axa X in coordonate relative fata de punctul de start. J reprezinta pozitia centrului pe axa Y in coordonate relative fata de punctul de start, conform (Fig. 10): Observatia 1: I si J pot fi afectate de semnul '-' pentru a indica pozitia centrului fata de punctul de start. Observatia 2: I si J nu pot fi programate in coordonate absolute, chiar daca se incearca fortarea acestui lucru prin apelarea lui G90. Pot fi utilizate cate patru moduri de a apela functiile de interpolare circulara. Pentru interpolare in sens orar: G90 G02 X. Y. R. F.; G90 G02 X. Y. I. J. F.; G91 G02 X. Y. R. F.; G91 G02 X. Y. I. J. F.; si pentru sens trigonometric: G90 G03 X. Y. R. F.; G90 G03 X. Y. I. J. F.; G91 G03 X. Y. R. F.; G91 G03 X. Y. I. J. F.; unde: G02 si G03 sunt apelurile functiilor de interpolare circulara. G90 si G91 indica tipul de coordonate utilizate. Atentie G90 nu influenteaza pe I si J! acestea vor fi interpretate intotdeauna in coordonate relative. X, Y sunt coordonatele punctului final al miscarii. I, J sunt coordonatele centrului miscarii, relativ la punctul de inceput al miscarii. R indica marimea razei arcului. F - avansul cu care se efectueaza miscarea.
  • 23. Pentru exemplul din Fig. 11, traiectoria sculei poate fi programata dupa cum urmeaza: Coord. absolute si I,J Coord absolute si R Coord. relative si I,J Coord relative si R G01 X175 Y40 F125; G03 X135 Y80 I-40; G01 X95; G02 X55 Y40 I-40; G01 X175 Y40 F125; G03 X135 Y80 R40; G01 X95; G02 X55 Y40 R40; G01 X175 Y40 F125; G03 X-40 Y40 I-40; G01 X-40; G02 X-40 Y-20 I-40; G01 X175 Y40 F125; G03 X-40 Y40 R40; G01 X-40; G02 X-40 Y-40 R40; Cand se utilizeaza raza pentru descrierea arcului trebuie avute in vedere doua situatii: A) arc cu deschiderea mai mica de 180o B) arc cu deschiderea mai mare de 180o . In acest caz, conventional, raza va fi indicata ca avand valoare negativa.
  • 24. In exemplul din Fig. 12 arcul trasat cu linie continua corespunde situatiei B, iar cel cu linie intrerupta, variantei A. Programarea celor doua arce se face in modul urmator: G02 X80 Y40 R39 F125; /cercul A respectiv G02 X80 Y40 R-39 F125; /cercul B Observatia 1: Cand se programeaza arce utilizand raza, valoarea lui R trebuie sa fie mai mare sau cel putin egala cu jumatate din deplasarea cea mai lunga de-a lungul axelor. Spre exemplu, daca punctul curent (pozitia actuala a sculei) este (50,50), iar capatul programat al arcului este in (120,90), deplasarile sunt X=70 si Y=40; raza minima va fi 35, sau R>max (X/2, Y/2) Observatia 2: I0 si J0 pot fi omise din program. Daca centrul arcului se afla pe aceeasi verticala sau orizontala cu punctul de start, adresa I, respectiv J poate sa lipseasca din fraza. Observatia 3: Daca una din adresele X sau Y este omisa, se considera ca punctul final al arcului coincide cu cel de start. In acest caz, Pot fi luate in considerare doua situatii: A) centrul este impus prin adresele I si/sau J; se va genera un arc de 360o , adica un cerc intreg. B) raza este impusa prin adresa R; se va genera un arc de 0o , deci scula nu va executa nici o miscare. Observatia 4: Daca in aceeasi fraza vor fi specificate atat adresele I si/sau J cat si R, va fi luata in considerare doar R, celelalte fiind ignorate. Observatia 5: Functiile de interpolare circulara pot fi invocate in program in cate doua moduri: G02 sau G2, respectiv G03 sau G3. 22.4. G04 - temporizare Functia G04 provoaca o oprire, o intrerupere a rularii programului. Durata intreruperii este indicata de catre programator pr in intermediul adreselor X sau P. Dupa cum se utilizeaza adresa X sau P, durata intreruperii este exprimata in secunde, respectiv in miimi de secunda. Functia poate fi folosita in formatul: G04 X. durata temporizarii in secunde sau G04 P. durata temporizarii in 1/1000 s Exemple de utilizare a functiei G04:
  • 25. G04 X1.5 produce o temporizare de 1,5 sec G04 P2500 produce o temporizare de 2,5 sec Observatia 1: In temporizarea de tip P nu este permisa utilizarea punctului zecimal. Observatia 2: Functia G04 se utilizeaza la inceputul frazei. Observatia 3: Temporizarea se produce atunci cand avansul F, din fraza anterioara devine zero. Observatia 4: Valoarea maxima a temporizarii 999 sec. Observatia 5: G04 este activa doar in fraza curenta (este functie nemodala). Observatia 6: Functia de temporizare poate fiinvocata in programe in doua moduri: G04 sau G4 22.5. G20 si G21 - setarea sistemului de unitati de masura G20 selecteaza sistemul britanic de unitati de masura (inch), iar G21 pe cel international, sau metric (mm). Deplasarile minime care pot fi programate sunt 0,0001 inch,sau 0,001mm. De sistemul de unitati de masura selectat sunt afectate urmatoarele categorii: 1. Adresele geometrice X, Y si Z. 2. Deplasarile programate in coordonate relative. 3. Avansul programat cu adresa F. 4. Valorile corectiilor de scula. Observatia 1: In cadrul unui program nu se va comuta intre G20 si G21. Observatia 2: La comutarea de la un sistem de unitati la altul (bineinteles in programe diferite) trebuie refacute fisierele de corectii de scula. Observatia 3:
  • 26. Functiile G20 si G21 fac parte din acelasi grup si sunt modale. 22.6. G28 - revenire in punctul de referinta Punctul de referinta (Home position, sau punctul de nul al masinii) este un punct fix al masinii unde poate fi deplasata automat scula. Pe echipamentele Denford nulul masinii este reperul fata de care sunt masurate deplasarile si este plasat la extremitatile curselor elementelor mobile. Altfel spus, nulul masinii este originea sistemului de coordonate al masinii. Functia G28 comanda deplasarea sculei in punctul de nul (referinta). Sintaxa functiei este: G90 G28 X. Y. Z. sau G91 G28 X. Y. Z. unde X, Y si Z pot fi folosite pentru a indica un punct intermediar, prin care va trece scula, inainte de a ajunge in punctul de referinta. Acest punct intermediar permite deplasarea sculei pe o cale impusa, pentru a evita coliziunea sculei cu piesa sau cu dispozitivul de fixare a piesei. Exemple de invocare a punctului intermediar: G90 G28 X60 Z60 sau G91 G28 X0 Z40 22.7. G40, G41,G42 - compensarea sculei Setul de functii G40, G41 si G42 permite generarea foarte precisa a arcelor si unghiurilor utilizand compensarea sculei. Piesele complexe sunt generate aproape exclusiv, in cazul frezarilor de conturare, exploatand compensarile de scula. Raza sculei (corectia de raza) este masurata si apoi memorata in fisierul de corectii. Odata descris conturul de prelucrat, echipamentul de conducere numerica poate genera orice echidistanta la acesta (traseul pe care trebuie sa il parcurga centrul sculei) tinand seama de raza sculei, fara alte interventii speciale in program. Pentru a intelege mai bine compensarea sculei in cazul frezarii de conturare trebuie avute in vedere urmatoarele:
  • 27. 1. In mod implicit, traiectoria programata este parcursa de centrul frezei. 2. Cu datele preluate din desenul de executie se poate descrie in mod direct doar conturul piesei, nu si traiectoria sculei. 3. Profilul de prelucrat este independent de diametrul frezei. Tinand seama de cele de mai sus, se poate trage concluzia ca traiectoria centrului sculei, trebuie determinata luand in calcul datele profilului de prelucrat si raza frezei. Acest lucru poate fi efectuat prin prelucrarea externa a informatiilor, deci in afara masinii, sau intern: de catre controler sau de catre echipamentul de conducere numerica. Prima varianta este anevoioasa, sau impune utilizarea unui sistem CAM. A doua este cea mai convenabila, cu atat mai mult, cu cat limbajul conducerii numerice dispune de mijloacele necesare efectuarii calculelor si gestionarii comenzilor pentru controlul deplasarii sculei in raport cu piesa. In contextul conducerii numerice vom intelege prin compensarea sculei, determinarea de catre echipamentul de conducere numerica a echidistantei la profilul de prelucrat, echidistanta pe care urmeaza sa se deplaseze centrul frezei in vederea prelucrarii profilului respectiv. Conturul programat, va fi in acest caz, chiar conturul de frezat. Prin corectie de scula vom intelege raza frezei. Aceasta valoare este cea luata in calcul pentru determinarea echidistantei; corectia de scula trebuie sa fi fost inregistrata inaintea rularii programului pentru fiecare scula implicata in prelucrare s i salvata in fisierul de corectii (offset file). 22.7.1. Pozitia de lucru si comanda miscarilor Cand intr-un program CNC trebuie luata in considerare raza frezei, trebuie specificata pozitia sculei fata de semifabricat utilizand functiile prezentate in tabelul urmator: Functia Partea pe care lucreaza freza Miscarea sculei G40 Anularea compensarii sculei De-a lungul traiectoriei programate G41 Stanga Pe partea stanga a traiectoriei programate, privind in sensul avansului G42 Dreapta Pe partea dreapta a traiectoriei programate, privind in sensul avansului In Fig. 14 este ilustrat modul de deplasare a sculei sub efectul functiilor G41 si G42. 22.7.2. Initierea compensarii sculei Fraza prin care se comanda echipamentului de conducere numerica comutarea in modul de lucru cu compensare a sculei se numeste initiere a compensarii sculei. Initierea compensarii sculei este necesara pe de o parte specificarii partii pe care se va deplasa scula in raport cu traiectoria programata, iar pe de alta parte pentru a asigura timpul necesar comutarii la noul mod de lucru. Pentru ca o fraza sa poata fi considerata initiere a compensarii sculei, trebuie sa indeplineasca urmatoarele conditii:
  • 28. 1) Sa contina apelul uneia din functiile G41 sau G42, sau sa urmeze unei fraze cu G41/G42; 2) Sa contina o comanda de miscare G01 in planul XOY, iar deplasarea comandata sa fie mai mare decat raza sculei; 3) Raza sculei, R, deci corectia corespunzatoare sculei care lucreaza, trebuie sa fie strict pozitiva. Observatia 1: Nu poate fi apelata interpolarea circulara in fraza de initiere a compensarii sculei. Observatia 2: In timpul lucrului cu compensare a sculei sunt citite si memorate intotdeauna cate doua fraze din program; in acest mod, la un moment dat, in memorie sunt prezente fraza curenta si urmatoarele doua. Aceasta, deoarece pentru a putea determina echidistanta la traiectoria programata, echipamentul trebuie sa 'stie' tipul si orientarea miscarii care urmeaza dupa cea curenta. Numai avand la dispozitie aceste date poate fi calculat punctul in care se termina miscarea curenta si incepe urmatoarea (se intelege ca aceste doua puncte trebuie sa coincida). Observatia 3: Functiile G40, G41 si G42 sunt modale si apartin aceluiasi grup, prin urmare nu pot coexista in aceeasi fraza. 22.7.3. Anularea compensarii sculei Pentru anularea compensarii sculei se utilizeaza functia G40. Functia G40 poate fi apelata numai in fraze in care sunt comandate deplasari liniare (G00, G01, G28). Observatia 1: Dupa prelucrarea unui buzunar interior se recomanda retragerea sculei dupa axa Z pana intr-o pozitie sigura (care sa excluda orice coliziune cu piesa) inainte de anularea compensarii sculei cu G40. Observatia 2: Controlerul efectueaza automat anularea compensarii sculei in urmatoarele situatii: 1. Imediat dupa pornirea masinii. 2. La apasarea butonului CRT/MDI de pe panoul de control al masinii. 3. La terminarea (fortata) a programului prin apelul direct al functiei M02 sau M30. Exemplu de utilizare a compensarii sculei (initierea si anularea compensarii):
  • 29. Pentru prelucrarea conturului din Fig. 15 se va utiliza secventa de program prezentata mai jos. O0010 N0010 G00 X-15 Z-15; N0020 G41 G01 X0 Y0 F100; /(Initierea compensarii) N0030 Y40; N0040 X30 Y80; N0050 X60; N0060 G02 X100 Y40 R40; N0070 G01 Y30; N0080 G03 X70 Y0 R30; N0090 G01 X0; N0100 G40 X-15 Y-15; (Anularea compensarii sculei) 22.8. G73 .. G89 - cicluri de gaurire Un ciclu de gaurire simplifica programul de conducere numerica prin inlocuirea unei secvente de blocuri cu unul, sau cel mult doua blocuri.
  • 30. In general, un ciclu de gaurire este alcatuit din sase operatii, conform Fig. 16: Operatia 1 Pozitionarea sculei deasupra gaurii pe X si Y Operatia 2 Apropierea rapida a sculei de punctul in care incepe miscarea de prelucrare (nivelul R) Operatia 3 Executarea gauririi (avans de lucru) Operatia 4 Prelucrarea fundului gaurii Operatia 5 Retragerea sculei pana la nivelul R Operatia 6 Retragerea rapida a sculei pana in punctul initial Pozitionarea sculei se face in planul XOY, iar prelucrarea efectiva a gaurii, dupa axa Z. Exista trei categorii de comenzi pentru descrierea unui ciclu de gaurire: 1. Comenzi pentru programare in coordonate absolute/relative (G90 / G91) 2. Comenzi pentru retragerea sculei G98 (retragerea sculei la nivelul initial) si G99 (retragere scula la nivelul R) 3. G73 .. G89 pentru indicarea tipului de ciclu vizat. 22.8.1.
  • 31. Programarea ciclurilor in coordonate absolute/relative 22.8.2. Programarea pozitiei (nivelului) de revenire dupa prelucrarea gaurii Programarea pozitiei in care sa revina scula in urma gauririi se face cu functiile G98 - revenire in punctul initial, sau cu G99 - revenire in punctul (la nivelul) R, asa cum este exemplificat in figura urmatoare. Sintaxa frazei care contine apelul unui ciclu de gaurire este urmatoarea
  • 32. G90 G98 sau sau G. X. Y. Z. R. P. Q. K. F.; G91 G99 unde: G. invoca un anumit ciclu de gaurire (G73 .. G89). X. Y. pozitia gaurii, punctul in care trebuie pozitionata scula in vederea gauririi. Z. distanta de la fundul gaurii la nivelul R (pentru G91 - coordonate relative) sau pozitia fundului gaurii (pentru G90 coordonate absolute). R. distanta dintre nivelul initial si punctul R (pentru G91 - coordonate relative) sau cota punctului r fata de nul (pentru G90 coordonate absolute). P. temporizare pentru schimbarea sensului avansului la fundul gaurii (vezi G04 temporizare). Q. adancimea patrunderilor succesive la gaurire. Atentie!Aceasta valoare este indicata intotdeauna in coordonate relative. K. numarul de repetari ale ciclului de gaurire. Daca nu este prezent in fraza, se considera a avea valoarea 1. F. avansul de lucru. Observatia 1: Adresele P si Q nu sunt utilizate la unele cicluri de gaurire. Observatia 2: Odata introduse, datele necesare gauririi sunt retinute de controlerul masinii pana in momentul in care sunt modificate sau ciclul de gaurire este oprit. La parcurgerea repetata a unui ciclu, nu trebuie introduse de fiecare data toate informatiile, ci doar cele care se modifica de la o gaura la alta. Exemplul 1: ciclu de gaurire pentru 4 gauri, cea de a treia gaura fiind cu 10 mm mai adanca. G90 G99 G81 X10 Y10 Z-15 R2 F100; X20; X30 Z-25; X40 Z-15; G80; Exemplul 2: ciclu de gaurire care se repeta de 4 ori. G91 G99 G81 X10 Y6 Z-10 R-8 K4 F100 22.8.3. G73 - gaurire rapida
  • 33. Sintaxa frazei care contine G73 este urmatoarea: G90 G98 sau sau G73 X. Y. Z. Q. F.; G91 G99 Burghiul se pozitioneaza deasupra primei gauri, la nivelul initial, apoi comanda G73 este citita de controler si incepe ciclul. Burghiul se apropie rapid pana in punctul R, de unde incepe sa se deplaseze cu avans de lucru pana cand va fi ajuns la adancimea Q fata de acest punct. Urmeaza o retragere pe o anumita distanta. Aceasta distanta, mica, nu poate fi controlata de programator, ea fiind o constanta a masinii. Urmeaza o noua faza de gaurire pe adancimea Q si o scurta retragere. Aceasta secventa se repeta pana la atingerea fundului gaurii (planul Z). Retragerea burghiului dupa prelucrarea gaurii se face pana in punctul initial daca a fost programata functia G98, sau pana in punctul R daca activ este G99. Se citeste un nou bloc si daca acesta contine adresele X si/sau Y se pozitioneaza burghiul in punctul indicat si se reia ciclul de gaurire rapida. 22.8.4. G74 - filetare Sintaxa frazei care contine G74 este urmatoarea: G90 G98 sau sau G74 X. Y. Z. P. R. F.; G91 G99 Secventa de miscari este urmatoarea: Op.1 Pozitionare rapida in X, Y si Z (nivelul initial). Op. 2 Apropiere rapida pana in punctul R. Op. 3 Prelucrare pana la adancimea Z.
  • 34. Op. 4 Temporizare si schimbarea sensului de rotatie a brosei port-scula. Op. 5 Retragere cu avans de lucru pana in punctul R. Op.6 Temporizare si revenirea la sensul normal de rotatie a brosei port-scula. Dupa cum in fraza care a declansat filetarea a fost programat G98 sau G99 se va face retragere rapida pana la nivelul initial sau scula va ramane in punctul R pana la urmatoarea miscare. Observatie: trebuie respectata relatia F=S*P unde F=avansul, S=turatia, P= pasul filetului. 22.8.5. G76 - alezare de finisare Sintaxa frazei care contine G74 este urmatoarea: G90 G98 sau sau G76 X. Y. Z. R. P. Q. F.; G91 G99 Secventa de miscari este urmatoarea: Op.1 Pozitionare rapida in X, Y si Z (nivelul initial). Op. 2 Apropiere rapida pana in punctul R. Op. 3 Prelucrare pana la adancimea Z. Op. 4 Temporizare, oprirea turatiei arborelui principal si retragerea sculei catre centrul gaurii cu distanta Q. Op. 5 Retragere cu avans de lucru pana la nivelul R. Op.6 Revenirea sculei in punctul R (deplasare pe distanta -Q). Miscarea urmatoare depinde de functia care a fost apelata in fraza alezare: G98 sau G99.
  • 35. Observatie: Acest ciclu poate fi utilizat doar pe masinile la care este posibila orientarea brosei port-scula, adica oprirea ei precisa astfel incat varful sculei de alezat sa fie plasat pe o anumita generatoare a gaurii (planul median vertical al sculei trebuie sa fie paralel cu planul XOZ al masinii, pentru ca retragerea Q a sculei sa se efectueze intr-adevar catre centrul gaurii). 22.8.6. G80 - anularea ciclului de gaurire Unele din adresele utilizate la programarea ciclurilor de gaurire sunt modale (Z, P, Q si R), astfel incat raman memorate si dupa efectuarea ciclului pentru care au fost programate. Ciclul trebuie anulat, astfel eliminandu-se automat din memorie valorile adreselor Z, P, Q si R, inainte de a programa un alt ciclu. Anularea unui ciclu se face cu functia G80. Aceasta trebuie plasata in fraza consecutiva programarii ciclului. Observatie: G80 este activat automat la: 1) pornirea masinii; 2) actionarea butonului Reset de pe panoul de control; 3) la apasarea butonului Oprire de urgenta. 22.8.7. G81 - gaurire Sintaxa frazei pentru programarea ciclului de gaurire G81 este urmatoarea: G90 G98 sau sau G81 X. Y. Z. R. F.; G91 G99 Secventa de miscari este urmatoarea: Op.1 Pozitionare rapida in X, Y si Z (nivelul initial). Op. 2 Apropiere rapida pana in punctul R. Op. 3 Prelucrare pana la adancimea Z. Op. 4 Retragere rapida pana la nivelul initial (G98) sau pana in punctul R (G99). 22.8.8. G82 - gaurire cu temporizare Sintaxa frazei pentru programarea ciclului de gaurire G81 este urmatoarea: G90 G98 sau sau G82 X. Y. Z. P. R. F.; G91 G99 Secventa de miscari este urmatoarea:
  • 36. Op.1 Pozitionare rapida in X, Y si Z (nivelul initial). Op. 2 Apropiere rapida pana in punctul R. Op. 3 Prelucrare pana la adancimea Z. Op. 4 Temporizare. Op. 5 Retragere rapida pana la nivelul initial (G98) sau pana in punctul R (G99). 22.8.9. G83 - gaurire adanca Sintaxa frazei pentru programarea ciclului de gaurire adanca G83 este urmatoarea: G90 G98 sau sau G83 X. Y. Z. Q. R. F.; G91 G99 Secventa de miscari este urmatoarea: Op.1 Pozitionare rapida in X, Y si Z (nivelul initial). Op. 2 Apropiere rapida pana in punctul R. Op. 3 Prelucrare pana la adancimea Q. Op. 4 retragere rapida pana in punctul R. Apropiere rapida pana la 1 mm de fundul tronsonului de gaura prelucrat la operatia precedenta. Miscarile 3 si 4 sunt repetate pana la atingerea adancimii Z a gaurii. Op. 5 Retragere rapida pana la nivelul initial (G98) sau pana in punctul R (G99). Acest ciclu se deosebeste de gaurirea rapida doar prin faptul ca retragerile intermediare se fac pana in punctul R si nu doar pe o mica distanta. 22.8.10. G84 - filetare cu tarodul Sintaxa frazei pentru programarea ciclului de filetare cu tarodul G84 este urmatoarea: G90 G98 sau sau G84 X. Y. Z. R. P. F.; G91 G99 Acest ciclu nu se deosebeste de cel de filetare cu cutitul, G74, decat prin ordinea adreselor in fraza: Z, P, R la G74 si Z, R, P la G84. 22.8.11. G85 - alezare Sintaxa frazei pentru programarea ciclului de alezare G85 este urmatoarea: G90 G98
  • 37. sau sau G85 X. Y. Z. R. F.; G91 G99 Secventa de miscari este urmatoarea: Op.1 Pozitionare rapida in X, Y si Z (nivelul initial). Op. 2 Apropiere rapida pana in punctul R. Op. 3 Prelucrare pana la adancimea Z. Op. 4 Retragere cu avans de lucru pana la nivelul initial (G98) sau pana in punctul R (G99). Fata de ciclul G76, alezare de finisare, exista o serie de diferente, dupa cum urmeaza: revenirea in planul initial sau cel de referinta nu se mai face cu retragerea sculei catre centrul gaurii si nu se mai opereaza temporizare la atingerea fundului gaurii. Aceasta implica omiterea din fraza cu G85 a parametrilor P si Q. In plus, deoarece scula se deplaseaza la revenire pe aceeasi traiectorie ca si in faza de prelucrare, ciclul G85 poate f i efectuat pe orice masina de frezat, fara restrictia impusa de oprirea precisa, ca in cazul alezarii de finisare. 22.8.12. G86 - alezare Sintaxa frazei pentru programarea ciclului de alezare G86 este urmatoarea: G90 G98 sau sau G86 X. Y. Z. R. F.; G91 G99 Secventa de miscari este urmatoarea: Op.1 Pozitionare rapida in X, Y si Z (nivelul initial). Op. 2 Apropiere rapida pana in punctul R. Op. 3 Prelucrare pana la adancimea Z. Op. 4 Retragere rapida pana la nivelul initial (G98) sau pana in punctul R (G99). Fata de ciclul G85, diferenta consta in faptul ca retragerea din gaura a sculei se face cu avans rapid 22.8.13. G87- alezare de jos in sus Sintaxa frazei pentru programarea ciclului de alezare de jos in sus, G87, este urmatoarea: G90 G98 sau sau G87 X. Y. Z. P. Q. R. F.; G91 G99 Secventa de miscari este urmatoarea:
  • 38. Op.1 Pozitionare rapida in X, Y si Z (nivelul initial). Op. 2 Oprirea axului principal si orientarea sa. Deplasare in planul XOY catre centrul gaurii cu distanta Q. Op. 3 Apropiere rapida pana in punctul R. Op. 4 Pornirea rotatiei axului principal in sens orar, si efectuarea deplasarii -Q Op. 5 Prelucrare pana la nivelul Z (cu deplasare Z pozitiv) si temporizare. Op. 6 Oprirea axului principal si orientarea sa. Op. 7 Deplasare Q. Op. 8 Retragere rapida pana la nivelul initial. Op. 9 Deplasare -Q si pornirea rotatiei axului principal in sens orar. 22.8.14. G89 - gaurire Sintaxa frazei pentru programarea ciclului de Gaurire, G89, este urmatoarea: G90 G98 sau sau G89 X. Y. Z. P. R. F.; G91 G99
  • 39. Secventa de miscari este urmatoarea: Op.1 Pozitionare rapida in X, Y si Z (nivelul initial). Op. 2 Apropiere rapida pana in punctul R. Op. 3 Prelucrare pana la nivelul Zsi temporizare. Op. 4 Retragere rapida pana la nivelul initial (G98) sau la nivelul R (G99). 22.9. Exemplu de utilizare a ciclurilor de gaurire Pentru prelucrarea gaurilor in reperul din Fig. 21 se utilizeaza secventa de program prezentata in continuare. N0040 M06 T01; Schimbarea sculei N0050 G90 G00 X10 Y30 Z12 S1000 M03; Pozitionarea sculei la nivelul initial N0060 G99 G81 X10 Z30 -17 R2 F75; Gaura 1, retragere la nivelul R N0070 Y10; Gaura 2 , retragere la nivelul R N0080 X30; Gaura 3 , retragere la nivelul R N0090 G98 Z30; Gaura 4 , retragere la nivelul initial N0100 G99 X90; Gaura 5 , retragere la nivelul R N0110 Y10; Gaura 6 , retragere la nivelul R N0120 X110; Gaura 7 , retragere la nivelul R N0130 G98 Y30; Gaura 8 , retragere la nivelul initial N0140 G91 G80 G28 X0 Y0 Z0 M05; Masina acasa, oprirea axului principal
  • 40. N0150 M06 T02; Schimbarea sculei N0160 G90 G00 X60 Y28 Z12 S 750 M03; Pozitionarea sculei la nivelul initial N170 G99 G83 Y28 Z-17 Q6 R2 F60; Gaura 9 , retragere la nivelul R N180 G98 Y12; Gaura 10 , retragere la nivelul initial N190 G91 G80 G28 X0 Y0 Z0 M05; Masina acasa, oprirea axului principal N0200 M30; Terminarea programului 22.10. G90 - programare in coordonate absolute Functia G90 activeaza modul de lucru cu programarea punctelor in coordonate absolute (raportate la nulul piesei). Programarea in coordonate absolute este modul implicit de lucru; daca intr-un program nu este apelata nici una din functiile din grupul 3 (vezi tabelul 1), deci nu este precizat tipul de coordonate utilizat pentru programarea punctelor, se c onsidera ca toate coordonatele utilizate sunt absolute (tinand seama de exceptiile prezentate deja, exemplu, adresele I si J). Observatie: G90 este activ in mod implicit la pornirea masinii, dupa resetarea de la panoul de control al masini si dupa oprirea masinii cu butonul oprire de urgenta. 22.11. G91- programare in coordonate relative Functia G91 activeaza modul de lucru cu programarea punctelor in coordonate relative. Din momentul apelarii ei coordonatele utilizate pentru programarea punctelor sunt masurate fata de pozitia curenta a sculei. Functiile G90 si G91 apartin aceluiasi grup, deci nu pot coexista in aceeasi fraza. 22.12. G94 - avansul exprimat in mm/min Cand este activ G94 avansul programat este exprimat in ul/min, unde ul este unitatea de masura pentru lungime: inch sau mm dupa cum este activ G20, respectiv G21. 22.13. G95 - avans exprimat in mm/rot Cand este activ G95 avansul programat este exprimat in ul/rot, unde ul este unitatea de masura pentru lungime: inch sau mm dupa cum este activ G20, respectiv G21. 22.14. G98 - revenire la nivelul initial Functia G98 este utilizata conjugat cu functiile pentru programarea ciclurilor de gaurire. Daca este activ G98, retragerea sculei dupa prelucrarea gaurii se face pana la nivelul initial (planul orizontal in care s-a facut pozitionarea sculei). 22.15. G99 - revenire la nivelul R Functia G99 este utilizata conjugat cu functiile pentru programarea ciclurilor de gaurire. Daca este activ G99, retragerea sculei dupa prelucrarea gaurii se face pana la nivelul R (planul orizontal pana la care s-a efectuat apropierea rapida a sculei). Reamintim ca nivelul (cota Z) a planului respectiv se programeaza cu adresa R in cadrul ciclurilor de gaurire.
  • 41. 22.16. G170-G173 - comenzi pentru frezarea buzunarelor circulare si dreptunghiulare Prin utilizarea functiilor G170 .. G173 se poate programa prelucrarea buzunarelor circulare sau dreptunghiulare (Fig. 22). Observatie: Trebuie acordata o atentie deosebita programarii ciclurilor pentru prelucrarea buzunarelor, deoarece fiecare ciclu poate fi descris in trei moduri. Diferentierea modurilor de descriere se face prin valorile care urmeaza adreselor P, I si J in cazul buzunarelor circulare (G170, G171) sau adreselor P, I si K in cazul buzunarelor dreptunghiulare (G172, G173). Desi rezultatul final (forma si dimensiunile buzunarului) este acelasi, de modul in care sunt utilizate adresele mai sus mentionate depinde traiectoria pe care o parcurge scula in timpul prelucrarii. In continuare se prezinta sase exemple de programe in care se utilizeaza functiile pentru prelucrarea buzunarelor interioare, cate trei pentru fiecare tip de buzunar. Pentru fiecare tip de buzunar sunt prezentate toate variantele de programare a ciclului de prelucrare. 22.16.1. G170 si G171 - prelucrarea unui buzunar circular - degrosare Observatie: punctul de 0 absolut este memorat in fisierul de corectii Programul nr. 2 - Program de degrosare pentru prelucrarea unui buzunar circular folosind functiile G170 si G171 [BILLET X75 Y90 Z30; Dimensiunile semifabricatului [EDDGEMOVE X - 37,5 Y- 45; Pozitia punctului de zero relativ la coltul din stanga jos al semifabricatului [TOOLDEF T1 D6 Z0; Nr. sculei, diametrul si pozitia acesteia O0005; Nr. de program N0040 G91 G21 G28 X0 Z0; Coordonatele punctului de referinta N0050 M06 T01; Nr. sculei N0060 G90 G00 X0 Y0 Z10 S3000 M03; Coordonate absolute, deplasare rapida a sculei de 10 mm deasupra suprafetei de prelucrat, pornire turatie arbore principal
  • 42. N0070 G01 Z0 F300; Aproprierea sculei de suprafata piesei si setarea avansului N0080 G170 R0 P0 Q3 X0 Y0 Z-6 I0 J0 K-24; Ciclu de prelucrare a buzunarului circular N0090 G171 P75 S3000 R75 F250 B3500 J200; Ciclu de prelucrare a buzunarului circular N0100 G00 Z25 M05; Deplasare rapida a sculei la 25 mm deasupra suprafetei prelucrate si oprirea turatiei N0110 G91 G28 X0 Y0 Z0; Intoarcere la punctul de nul N0120 M30; Resetare program Explicarea pe larg a liniilor de program in care sunt implicate functiile G170 si G171 Pentru functia G170: N0080 G170 R0 P0 Q0 X0 Y0 Z6 I0 J0 K-24 R- defineste pozitia sculei pe axa Z la inceputul ciclului P- cand P este 0 ciclul este destinat degrosarii Q - defineste incrementarea pe Z in vederea prelucrarii buzunarului. In programul de mai sus patrunderea sculei in adancimea piesei se face in pasi de cate 3 mm. X - defineste coordonata in X a centrului buzunarului Y - defineste coordonata in Y a centrului buzunarului Z - defineste baza buzunarului (- 6 mm) fata de suprafata piesei.
  • 43. I - defineste adaosul de prelucrare pe suprafata laterala (0 doar la degrosare) J - defineste adaosul de prelucrare la baza buzunarului (0 doar la degrosare) K - raza buzunarului (-24 deoarece prelucrarea se va face in sens trigonometric) Pentru functia G171: N0090 G171 P75 S300 R75 F250 B3500 J200 P -adancimea de aschiere, ca procentaj din diametrul sculei (75% din diametrul sculei) S - turatia la degrosare (S3000) 3000 rot/min R - avansul la degrosare de-a lungul axei Z (75 mm/min) F - avansul la degrosare in planul XY (250) (250 mm/min) B - turatia la finisare (3500 rot/min); neaplicabila in cazul degrosarii J - avansul la finisare (200 mm/rot); neaplicabila in cazul degrosarii La stabilirea corectiilor de scula trebuie specificata raza frezei cu care se va prelucra buzunarul. Sensul parcurgerii traseului de prelucrare este controlat de K. K<0 (K-24) sugereaza o parcurgere in sens trigonometric iar K>0 in sens orar; valoarea lui Q este totdeauna pozitiva (Q+3). Cand s-a incheiat prelucrarea, scula aschietoare se retrage 1 mm de-a lungul axei Z, se deplaseaza apoi rapid pana in centrul buzunarului iar apoi continua sa se retraga de-a lungul axei Z. Programul de mai sus este conceput pentru o prelucrare de degrosare in doua treceri. 22.16.2. G170 si G171 - prelucrarea unui buzunar circular - degrosare si finisare Diferenta dintre programul anterior (0002) si acesta (0003) este aceea ca acest program lasa un adaos si pentru finisare pe peretii buzunarului si la baza acestuia. [BILLET X75 Y90 Z30; [EDDGEMOVE X - 37,5 Y- 45; [TOOLDEF T1 D6 Z0; O0003 N0040 G91 G21 G28 X0 Z0; N0050 M06 T01; N0060 G90 G00 X0 Y0 Z10 S3000 M03; N0070 G01 Z0 F300; N0080 G170 R0 P0 Q3 X0 Y0 Z-6 I0 J0 K-24; N0090 G171 P75 S3000 R75 F250 B3500 J200;
  • 44. N0100 G00 Z25 M05; N0110 G91 G28 X0 Y0 Z0; N0120 M30; Explicarea pe larg a liniilor de program in care sunt implicate functiile G170 si G171 Pentru functia G170: N0080 G170 R0 P0 Q3 X0 Y0 Z-6 I0.5 J0.1 K-24 R- se defineste pozitia sculei pe axa Z la inceputul ciclului P- cand P este 0 ciclul este destinat degrosarii Q - defineste incrementarea pe Z in vederea prelucrarii buzunarului. In programul de mai sus incrementarea se face de doua ori, cu cate 3 mm de fiecare data, rezultand astfel adancimea buzunarului de 6 mm. X - defineste coordonata in X a centrului buzunarului Y - defineste coordonata in Y a centrului buzunarului Z - defineste baza buzunarului (- 6 mm) fata de suprafata piesei I - indica marimea adaosului de prelucrare lasat pe peretele buzunarului pentru finisare J - indica marimea adaosului de prelucrare lasat pe fundul buzunarului pentru finisare K - raza buzunarului (-24 deoarece prelucrarea se va face in sens trigonometric) Pentru functia G171: N0090 G171 P75 S300 R75 F250 B3500 J200 P -adancimea de aschiere, ca procentaj din diametrul sculei (75% din diametrul sculei) S - turatia la degrosare (S3000) 3000 rot / min R - avansul la degrosare de-a lungul axei Z (75 mm/min) F - avansul la degrosare in planul XY (250) (250 mm/min) B - turatia la finisare (3500 rot/min) J - avansul la finisare (200 mm/rot) 22.16.3. G170 si G171 - prelucrarea unui buzunar circular - finisare printr-o singura trecere Diferenta dintre programul anterior si cel prezent mai jos consta in aceea ca in acest caz scula aschietoare se deplaseaza pana la adancimea finala a buzunarului, realizand doar operatia de finisare. [BILLET X75 Y90 Z30; [EDDGEMOVE X - 37,5 Y- 45;
  • 45. [TOOLDEF T1 D6 Z0; O0004; N0040 G91 G21 G28 X0 Z0; N0050 M06 T01; N0060 G90 G00 X0 Y0 Z10 S3000 M03; N0070 G01 Z0 F300; N0080 G170 R0 P1 Q3 X0 Y0 Z-6 I0.5 J0.1 K-24; N0090 G171 P75 S3000 R75 F250 B3500 J200 ; N0100 G00 Z25 M05; N0110 G91 G28 X0 Y0 Z0; N0120 M30; Explicarea pe larg a liniilor de program in care sunt implicate functiile G170 si G171 Pentru functia G170: N0040 G170 R0 P1 Q3 X0 Y0 Z6 I0.5 J0.1 K-24 R- se defineste pozitia sculei pe axa Z la inceputul ciclului P- cand P=1 este programat un ciclu exclusiv de finisare Q - este ignorat daca P=1 X - defineste coordonata in X a centrului buzunarului Y - defineste coordonata in Y a centrului buzunarului Z - defineste baza buzunarului (- 6 mm) fata de suprafata piesei. I - este ignorat daca P=0 J - este ignorat daca P=0 K - raza buzunarului (-24 deoarece prelucrarea se va face in sens trigonometric) Pentru functia 171: N0040 G171 P75 S300 R75 F250 B3500 J200 P - adancimea de aschiere, ca procentaj din diametrul sculei (75% din diametrul sculei) S - turatia la degrosare (S3000). Trebuie introdusa o valoare pentru S, insa aceasta va fi ignorata in cazul unei prelucrari exclusiv de finisare R - avansul la degrosare de-a lungul axei Z (75). Trebuie introdusa o valoare, insa aceasta va fi ignorata in cazul unei prelucrari exclusiv de finisare
  • 46. F - avansul la degrosare in planul XY (250). Trebuie introdusa o valoare, insa aceasta va fi ignorata in cazul unei prelucrari exclusiv de finisare B - turatia la operatia de finisare (3500 rot/min) J - avansul operatia de finisare (200 mm/rot) Observatie: desi o serie de adrese sunt ignorate in timpul rularii programului, acestea trebuie sa existe (inclusiv valoarea lor numerica) pentru ca fraza sa fie interpretata corect si in acest mod evitate eventualele erori. 22.16.4. G172 si G173 - prelucrarea unui buzunar dreptunghiular - degrosare Observatie: punctul de 0 absolut este memorat in fisierul de corectii Programul nr. 5. Program pentru degrosarea unui buzunar dreptunghiular [BILLET X75 Y90 Z30; Dimensiunile semifabricatului [EDDGEMOVE X - 37.5 Y- 45; Pozitia punctului de 0 relativ la coltul din stanga - jos a semifabricatului [TOOLDEF T1 D6 Z0; Nr. sculei,diametrul si pozitia acesteia 00005; Nr. de program N0040 G91 G21 G28 X0 Z0; Coordonatele punctului de referinta
  • 47. N0050 M06 T01; Nr. sculei N0060 G00 X0 Y0 Z0 S3000 M03; Coordonate absolute, deplasare rapida a sculei la 10 mm deasupra suprafetei de prelucrat, pornire turatie arbore principal N0070 G01 Z0 F300; Deplasarea sculei pana la suprafata de prelucrat, setarea avansului N0080 G172 I-50 J-50 K0 P0 Q3 R0 X -25 Z- 6; Ciclu de prelucrare a buzunarului dreptunghiular N0090 G173 I0 K0 P75 T1 S300 R75 F250 B3500 J200 Z5; Ciclu de prelucrare a buzunarului dreptunghiular N0100 G00 Z25 M05; Deplasare rapida a sculei la 25 m deasupra suprafetei prelucrate si oprirea turatiei N0110 G91 G28 X0 Y0 Z0; Intoarcere la punctul de nul N0120 M30; Resetare program Explicarea in amanunt a liniilor de program in care sunt implicate functiile G172 si G173 Pentru functia G172: N0080 G172 I-50 J-50 K0 P0 Q3 R0 X-25 Y-25 Z-6; I - lungimea de-a lungul axei X a buzunarului de prelucrat (-50); J - lungimea de-a lungul axei Y a buzunarului de prelucrat (-50); K - raza la colturile dreptunghiului (inactiva la acest softw are); P - stabileste tipul prelucrarii 0 = degrosare Q - stabileste incrementarea pe Z in vederea prelucrarii buzunarului. In programul de mai sus, incrementarea pe Z se face de doua ori cu cate 3 mm de fiecare data, rezultand astfel adancimea de 6 mm a buzunarului; R - punctul (planul) "R" fata de Z absolut X - defineste coltul "X" al buzunarului in coordonate absolute fata de nulul piesei Y - defineste coltul "Y" al buzunarului in coordonate absolute fata de nulul piesei Z - defineste cota Z a fundului buzunarului (-6 fata de suprafata piesei, deci adancimea de 6 mm a buzunarului) Pentru functia G173 : N0090 G173 I0 K0 P75 T1 S300 R75 F250 B3500 J200 Z5 I -adaosul de finisare pe peretii buzunarului (in acest caz este 0, nefiind implicata si o finisare); K - adaosul de finisare la baza buzunarului (in acest caz este 0); P -adancimea de aschiere ca procentaj din diametrul sculei (75% din diametrul sculei); T - codificarea sculei destinate realizarii buzunarului (scula nr. 1); S - turatia arborelui principal la degrosare (3000 rot/min); R- avansul la degrosare de-a lungul axei Z (75 mm/min); F - avansul la degrosare in planul XY (250 mm/min);
  • 48. B - turatia arborelui principal la finisare (3500 rot/min), nu e utilizata in acest caz; J - avansul la finisare (200 mm/min), nu este utilizat in acest caz; Z -planul de retragere a sculei dupa prelucrare (5 mm deasupra planului "R"); Programul de mai sus este realizat pentru degrosare din doua treceri. Observatii pentru functia G172:  Semnul lui I si J impun sensul de parcurgere al traseului frezei ('+' pentru parcurgerea in sens orar si '-' pentru parcurgerea in sens trigonometric);  K - trebuie programat la valoarea 0 deoarece la sotfw are-ul curent (DENFORD) raza colturilor este raza sculei aschietoare (frezei);  X si Y - coordonate relative fata de punctul de zero (nulul) al piesei (fig. 24), in exemplu, centrul buzunarului. Distanta de la punctul de nul pana la coltul din stanga jos al buzunarului este X-25 Y-25. Observatii pentru functia GI173:  daca I si K sunt setate la valoarea 0, programul va realiza doar ciclurile de degrosare (in exemplu 2 cicluri), la fel ca si in cazul prelucrarii buzunarelor circulare;  T - numarul sculei (T1) trebuie programat. 22.16.5. G172 si G173 - prelucrarea unui buzunar dreptunghiular - degrosare si finisare Programul 006 [BILLET X75 Y90 Z30; [EDGEMOVE X-37.5 Y-45; [TOOLDEF T1 D6 Z0; 00006; N0040 G91 G21 G28 X0 Y0 Z0; N0050 M06 T01; N0060 G90 G00 X0 Z10 S3000 03; N0070 G01 Z0 F300; N0080 G172 1-50 J-50 K0 P0 Q3 R0 X-25 Z-25 Z-6; N0090 G173 I0.5 K0.1 P75 T1 S3000 R75 F250 B3500 J200 Z5; N0100 G00 Z25 0M5; N0110 G91 G28 X0 Y0 Z0;
  • 49. N0120 M30; Explicarea in amanunt a liniilor de program in care sunt implicate functiile G172 si G173 Pentru functia G172: N0080 G172 I-50 J-50 K0 P0 Q3 R0 X-25 Z-6 I - lungimea de-a lungul axei X a buzunarului de prelucrat (-50); J - lungimea de-a lungul axei Y a buzunarului de prelucrat (-50); K - raza de curbura de la colturile dreptunghiului (inactiva la acest softw are); P - stabileste tipul prelucrarii 0 = degrosare Q - stabileste incrementarea pe Z in vederea prelucrarii buzunarului. In programul de mai sus, incrementarea pe Z se face cu cate 3 mm, rezultand astfel adancimea de 6 mm a buzunarului; R - punctul (planul) "R" fata de Z absolut X - defineste coltul "X" al buzunarului in coordonate absolute fata de nulul piesei Y - defineste coltul "Y" al buzunarului in coordonate absolute fata de nulul piesei Z - defineste cota Z a fundului buzunarului (-6 fata de suprafata piesei, deci adancimea de 6 mm a buzunarului) Pentru functia G173 : N0090 G173 I0.5 K0.1 P75 T1 S300 R75 F250 B3500 J200 Z5 I - adaosul de finisare pe peretii buzunarului (0,5 mm); K - adaosul de finisare la fundul buzunarului (0,1 mm) P - adancimea de aschiere ca procentaj din diametrul sculei (75% din diametrul sculei); T - codificarea sculei destinate realizarii buzunarului (scula nr. 1); S - turatia arborelui principal la degrosare (3000 rot/min); R- avansul la degrosare de-a lungul axei z (75 mm/min); F - avansul la degrosare in planul XY (250 mm/min); B - turatia arborelui principal la finisare (3500 rot/min); J - avansul la finisare (200 mm/min); Z -planul de retragere a sculei dupa prelucrare (5 mm deasupra planului "R"); Observatie: cand I si K sunt urmate de valori nenule programul va realiza ciclul de finisare dupa incheierea completa a ciclurilor de degrosare. 22.16.6. G172 si G173 - preluarea unui buzunar dreptunghiular - finisare printr-o singura trecere Programul 007
  • 50. [BILLET X75 Y90 Z30; [EDGEMOVE X-37.5 Y-45; [TOOLDEF T1 D6 Z0; 00007; N0010 G91 G21 G28 X0 Y0 Z0; N00220 M06 T01; N0043 G90 G00 X0 Y0 Z10 S3000 M03; N0040 G01 Z0 F300; M0050 G172 I-50 K0 P1 Q3 R0 X-25 Y-25 Z-6; N0060 G173 IO.5 K0.1 P75 T1 S3000 R75 F250 B3500 J200 Z5; N0070 G00 Z25 M05; N0080 G91 G28 X0 Y0 Z0; N0090 M30; Explicarea in amanunt a liniilor de program in care sunt implicate functiile G172 si G173 Pentru functia G172: N0040 G172 I-50 J-50 K0 P1 Q3 R0 X-25 Y-25 Z-6; I - lungimea de-a lungul axei X a buzunarului de prelucrat (-50); J - lungimea de-a lungul axei Y a buzunarului de prelucrat (-50); K - raza de curbura de la colturile dreptunghiului (inactiva la acest softw are); P -stabileste tipul prelucrarii: finisare dintr-o singura trecere (P1); Q - defineste incrementarea pe Z in vederea prelucrarii buzunarului. In acest caz este ignorat deoarece avem doar un singur ciclu de finisare. R - punctul (planul) "R" fata de Z absolut X - defineste coltul "X" al buzunarului in coordonate absolute fata de nulul piesei Y - defineste coltul "Y" al buzunarului in coordonate absolute fata de nulul piesei Z - defineste cota Z a fundului buzunarului (-6 fata de suprafata piesei, deci adancimea de 6 mm a buzunarului) Pentru functia G173 : N0040 G173 I0.5 K0.1 P75 T1 S3000 R75 F250 B3500 J200 Z5 I - adaosul de prelucrare la finisare pentru suprafata laterala - se ignora pentru finisare; K - adaosul de prelucrare pentru baza buzunarului - se ignora pentru finisare
  • 51. P -adancimea de aschiere ca procentaj din diametrul sculei (75% din diametrul sculei); T - codificarea sculei destinate realizarii buzunarului (scula nr. 1); S - turatia arborelui principal la degrosare. Se va introduce o valoare care va fi ignorata in acest caz. (un ciclu de finisare); R- avansul de-a lungul axei Z la degrosare. Se va introduce o valoare care va fi ignorata in acest caz. (un ciclu de finisare); F - avansul la degrosare in planul XY la degrosare. Se va introduce o valoare care va fi ignorata in acest caz. (un ciclu de finisare); B - turatia arborelui principal la finisare (3500 rot/min); J - avansul la finisare (200 mm/min); Z -planul de retragere a sculei dupa prelucrare (5 mm deasupra planului "R"); Observatie: Toate datele specifice degrosarii vor fi ignorate de program in timpul rularii. Este insa necesara introducerea unor valori si pentru aceste date deoarece, in caz contrar, la compilarea secventiala a programului s-ar semnala erori. 23. FUNCTII DE TIP M Introducere Functiile de tip M sunt functii auxiliare pentru transmiterea unor comenzi de tipul "pornit - oprit" unor componente ale masinii unelte (pornirea turatiei M05, etc). Functiile al caror continut este reprezentat prin valori mici sunt in general comune unui numar mare de echipamente de conducere numerica, in timp ce valorile mari ale functiilor se adreseaza unor trasaturi specifice cate unui echipament. O functie de tip M poate fi definita folosind o adresa de tip M si un numar format din doua cifre ca in figura de mai jos: M 00 Adresa nr. din doua cifre 23.1. Functii de tip M recunoscute de echipamentul CNC Denford Lista functiilor M Tabelul 2 Functia M Descriere M00* Oprirea programului M01* Oprirea optionala a programului M02* Resetarea programului M03 Pornirea turatiei cu rotirea axului principal in sens orar
  • 52. M04 Pornirea turatiei cu rotirea axului principal in sens trigonometric M05 Oprirea turatiei M06 Schimbarea automata a sculelor M08 Pornirea lichidului de racire - ungere M09 Oprirea lichidului de racire - ungere M10 Deschiderea sistemului de fixare a semifabricatului M11 Inchiderea sistemului de fixare a semifabricatului M13 Pornirea turatiei in sens orar si a lichidului de racire-ungere M14 Pornirea turatiei in sens trigonometric si a lichidului de racire-ungere M19 Orientarea arborelui principal M20 Deplasarea MASS (magazinul automat de schimbare a sculelor) sub arborele principal M21 Deplasarea MASS de sub arborele principal M22 Deplasarea MASS in jos M23 Deplasarea MASS in sus M24 Deschiderea sistemului de fixare a portsculei in arborele masinii M25 Inchiderea sistemului de fixare a portsculei in arborele masinii M27 Resetarea pozitiei magazinului de scule M30 Oprirea programului si pozitionare la inceputul lui M32 Rotirea magazinului de scule in sens orar M33 Rotirea magazinului de scule in sens trigonometric M38 Deschiderea usii de protectie M39 Inchiderea usii de protectie M62 Iesire auxiliara 1 - activa M63 Iesire auxiliara 2 - activa M64 Iesire auxiliara 1 - dezactivata M65 Iesire auxiliara 2 - dezactivata M66 Asteptare pentru iesirea auxiliara 1 - activata M67 Asteptare pentru iesirea auxiliara 2 - activata M70 Schimbarea semnului pe directia X - activat (oglindire pe axa X) M71 Schimbarea semnului pe directia Y - activat (oglindire pe axa Y) M76 Asteptare pentru iesirea auxiliara 1 - dezactivata M77 Asteptare pentru iesirea auxiliara 2 - dezactivata M80 Schimbarea semnului pe directia X - dezactivat M81 Schimbarea semnului pe directia Y - dezactivat M98 Apelare subprogram (subrutina) M99 Incheierea subprogramului si revenire in programul apelant Observatia 1: Functiile M marcate cu * vor fi executate la incheierea unui bloc (ex.: dupa efectuarea miscarilor). Observatia 2:
  • 53. Intr-un bloc nu poate exista decat o singura functie de tip M. In cazul cand exista mai multe astfel de functii echipamentul CNC va executa doar ultima functie de tip M din cadrul blocului. Observatia 3: Functiile de tip M de la M19 pana la M27 inclusiv, precum si functiile M32 si M33 sunt folosite doar in cazul executarii unor operatii de intretinere. Aceste functii pot fi introduse panoului de control al masinii si nu vor aparea in cadrul programelor. 23.2. M00 - oprirea programului Cand echipamentul CNC va citi aceasta functie in interiorul unui bloc va opri derularea programului. Repornirea (continuarea) acestuia din punctul in care a fost oprit se poate face prin apasarea tastei [CYCLE START]. 23.3. M01 - oprirea optionala a programului Are acelasi efect ca si functia anterioara M00, cu diferenta ca in acest caz echipamentul CNC nu va opri programul decat daca este actionata tasta optionala [STOP]. 23.4. M02 - resetarea programului Aceasta functie sesizeaza sfarsitul programului si realizeaza o resetare generala a MUCN, iar echipamentul CNC va aduce toate setarile masinii la starea lor initiala. Functia se aseamana cu M05. 23.5. M03 - pornirea turatiei cu rotirea axului principal in sens orar Rotirea arborelui principal in sens orar este determinata de vizualizarea arborelui principal de sus in jos, privind din spatele acestuia catre scula aschietoare de-a lungul axei Z. Pornirea turatiei este activata la inceputul blocului de program in care este prezenta functia M03, inaintea realizarii celorlalte miscari ale elementelor mobile. 23.6. M04 - pornirea turatiei cu rotirea axului principal in sens trigonometric Functia este asemanatoare cu functia precedenta (M03) cu deosebirea ca rotirea arborelui principal se face in sens trigonometric. 23.7. M05 - oprirea turatiei Functia M05, de oprire a turatiei, este activata la incheierea blocului din care face parte (de exemplu dupa incheierea deplasarilor). 23.8. M06 - schimbarea automata a sculelor
  • 54. Activeaza deplasarea magazinului de scule in pozitia arborelui principal in vederea schimbarii sculei. Ex: M06 T03: Aceasta linie de comanda va realiza schimbarea sculei curente (fixate pe masina) cu scula numarul 3. De fapt, M06 apeleaza un subprogram care presupune efectuarea mai multor actiuni:  oprirea turatiei;  deplasarea organelor mobile la capatul de cursa care asigura spatiul necesar manevrelor de schimbare a sculei;  aducerea magazinului de scule sub arborele principal;  coborarea axului principal pana la nivelul corespunzator eliberarii sculei;  eliberarea sculei;  ridicarea la capat de cursa a axului principal;  indexarea magazinului de scule;  coborarea axului principal pana la nivelul corespunzator preluarii sculei;  preluarea ti fixarea sculei;  ridicarea la capat de cursa a axului principal;  aducerea magazinului de scule in pozitia 'retras'  pornirea turatiei. 23.9. M08 - pornirea lichidului de racire-ungere Porneste pompa circuitului de racire-ungere. 23.10. M09 - oprirea lichidului de racire-ungere Opreste pompa circuitului de racire - ungere. 23.11. M10 - deschiderea sistemului de fixare a semifabricatului Deschide sistemul de fixare in vederea eliberarii semifabricatului.
  • 55. 23.12. M11 - inchiderea sistemului de fixare a semifabricatului Inchide sistemul de fixare in vederea prinderii semifabricatului. 23.13. M13 - pornirea a turatiei in sens orar si a lichidului de racire-ungere Aceasta functie combina functiile M03 si M08 prezentate anterior. Functia M05 va opri simultan turatia si lichidul de racire- ungere . 23.14. M14 - pornirea turatiei in sens trigonometric si a lichidului de racire- ungere Realizeaza pornirea concomitenta a turatiei (in sens invers fata de M13) si a lichidului de racire-ungere. 23.15. M19 - orientarea arborelui principal Aceasta functie va realiza o orientare a arborelui principal 23.16. M20 - deplasarea MASS (Magazinul Automat de Schimbare a Sculelor) sub arborele principal Aceasta functie realizeaza deplasarea magazinului de scule din pozitia sa initiala sub arborele principal al MUCN. 23.17. M21 - deplasarea MASS de sub arborele principal Realizeaza deplasarea MASS in pozitia sa initiala (langa arborele principal) 23.18. M22 - deplasarea MASS in jos Realizeaza deplasarea MASS de-a lungul axei Z in jos. 23.19. M23 - deplasarea MASS in sus Realizeaza deplasarea MASS de-a lungul axei Z in sus.
  • 56. 23.20. M24 - deschiderea sistemului de fixare a sculei Deschide mecanismul de prindere al sculelor in axul masinii. 23.21. M25 - inchiderea sistemului de fixare a sculei Inchide mecanismul de prindere al sculelor in axul masinii. 23.22. M27 - resetarea pozitiei magazinului de scule Restabileste pozitia initiala a magazinului de scule. Este mai de graba o actiune logica, in urma acesteia locasul din fata al magazinului de scule va fi interpretat ca fiind primul locas. Aceasta functie nu produce rotirea magazinului de scule; de regula functia M27 se utilizeaza conjugat cu M32 sau M33. 23.23. M30 - oprirea programului si pozitionare la inceputul lui Aceasta functie opreste rularea programului in momentul cand s-a ajuns la sfarsitul lui. Dupa aceasta ECN realizeaza si un "reset" revenind la prima linie a programului. Daca functia M30 este urmata de un numar de bloc, programul se va intoarce la inceputul acelui bloc de program. Ex: M30 P0140 - Programul este oprit si revine la blocul cu numarul 140. 23.24. M32 - rotirea magazinului de scule in sens orar Realizeaza indexarea in sens orar a magazinului de scule (sensul orar se stabileste privind magazinul de scule de sus in jos). 23.25. M32 - rotirea magazinului de scule in sens antiorar Realizeaza indexarea in sens antiorar a magazinului de scule (sensul orar se stabileste privind magazinul de scule de sus in jos). 23.26. M38 - deschiderea usii de protectie Deschide ecranul protector al masinii. Concomitent cu aceasta se opreste turatia daca este pornita. Cata vreme capacul de protectie este deschis nu pot fi lansate comenzi masinii nici in mod direct, nici din program. 23.27. M39 - inchiderea usii de protectie
  • 57. Inchide ecranul protector al masinii. Aceasta nu presupune si repornirea automata a turatiei oprite cu M38. 23.28. M6267,M76, M77 Aceste functii sunt destinate transmiterii de informatii de la MUCN catre un echipament auxiliar al acesteia (spre exemplu, robotul). Aceste functii transmit informatia catre echipamentul auxiliar si asteapta un raspuns de la acesta, care confirma realizarea operatiei. In afara de semnificatia acestor functii, prezentata in tabelul de la paragraful 23.1, nu sunt necesare alte explicatii. 23.29. M70 - schimbarea semnului pe directia X - activat In timpul rularii programului, aparitia functiei M70 va avea ca efect schimbarea semnului coordonatei pe directia X.. Ex.: G0 X25,5 M70 G01 X 25.5 - scula se va deplasa catre coordonata X - 25.5 23.30. M71 - schimbarea semnului pe directia Y - activat Are acelasi efect ca si M70, insa pe directia Y 23.31. M80 - schimbarea semnului pe directia X - dezactivat Anuleaza schimbarea semnului pentru urmatoarele coordonate in X 23.32. M81 - schimbarea semnului pe directia Y - dezactivat Anuleaza schimbarea semnului pentru urmatoarele coordonate in Y 23.33. M98 - apelare subprogram Va genera realizarea unui salt din programul principal la un subprogram existent in memorie. Acesta este identificat prin intermediul numarului sau. Numarul subprogramului apelat se introduce prin adresa P, ca in exemplul urmator, care se traduce prin 'Apelul subprogramul numarul 1003' N0560 M98 P1003
  • 58. 23.34. M99 - incheierea subprogramului si revenirea in programul apelant Pe ultima linie a unui subprogram functia M99 incheie rularea subprogramului predand controlul programului apelant. Daca M99 este prezenta pe ultima linie a programului principal, aceasta va genera un ciclu infinit in care programul principal este mereu reluat. Daca functia M99 este urmata de adresa P care indica un numar de bloc, revenirea in programul apelant se va face la blocul respectiv, si nu la cel consecutiv apelului de subprogram.