CE ESTE CNC?
EXEMPLU DE PROCES DE
3.
PRELUCRARE PE MUCN
I. 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.
Func~ii
G §i Iv1
Semnale
comanda
de'~
~
...
Programul principal este programul care detine controlul tuturor actiunilor. este primul
citit si incarcat memorie cand este rulat tot programul Programul principal poate
apela un numar oarecare se mai numesc
subprograme, si sunt unui
de
ADRESE
N- indica numarul
Z Indica distanta care trebuie parcursa de capul masinii de-a lungul z·,
F - Indica de avans;
T - se la sculelor.
f
~EXemp'LJ de program piesa
Info rmati i despre Uv1ill CAtv1 Designer - star tvlCD]
pachetu I softwa re -' [02i03/0 1]
utilizat
1
[j\lovamill PC (metric)]
[Post fanucm 12024 lunie 1994]
Numarul de program -----'-~00050
. ~·I d
Unltatl ~ ~. ( . {\J010G21:
e . e masura metric [BILLET x240 y'170 z10
sau bntanr c) ;;1 dlmenslunlle [EDGE MOVE xO yO
selTllfabncaulul TOOLDEF T1 D2
N020 G91 G28 XO YO ZO;
( N030 M6 T1:
N040 H43 H'l:
M050 M3 S3000:
N060 G90 GO 0 X90 Y'120
N070 Z2:
N080 G01 z-05 F40;
N090 X 'l 05 Y160 F60:
~~1 00 X 120 Y'120:
ProgramLiI N1 '10 X '165:
principal N120 X13Q Y95;
N130 X 145 Y50:
I\J140 X105 Y80:
N150 X65 Y50:
N160 X 80 Y 85:
N'170 X45 Y '120:
N180 X 90:
N190 GOO Z2:
1\1200 M5:
,N210G91 G28 X OYOZO;
Sfar~itu 1programului -----'- N220 rv130:
STRUCTURASUBPROGRAMELOR
P1 M98
NO'1
~,J01'10
NO'120
I\J01
NO'130
r'~0140
30 0160 M99
Al doilea de
a buc1ei a
Observatia 1:
Observatia 2:
subprogramuluL
Observatia
Observatia 4:
Observatia
Codul M99 va retuma controlulla bloeul urmator eelui care s-a facut apelul din
programul apelant.
NOOIO G21;
vor fi interpretate:
DENUMIREA SI SALVAREA
PROGRAMELOR
Salvarea pe disc a programelor este posibila numai dupa ce acestora Ii s-a atribuit un
numar sau nume.
Observatia 1:
Programele care urmeaza sa fie rulate ulterior pe 0 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
02000
Un program este alcatuit din mai multe comenzi, fiecare comunicand masinii instructiuni
pentru rezolvarea unei anumite sarcini sau operatii.
Fiecare comanda este 0 linie separata in cadrul programului . Yom mai numi 0 astfel de
lime din program, bloc. Fiecare bloc este separat de urmatorul printr-un caracter special,
care indica sfarsitul linie. Sistemul de programare ,pnTA1'n utilizeaza ca marcator al
sfarsitului de bloc caracterul punct si virgula C
Observatia 1:
STRUCTURA BLOCURILOR
Ordinea adresele intr-un bloc este bine stabilita si trebuie respectata
intocmai.
\
Num;3r
bloc
l
Funqii
ordine este prezentata mai jos.
gatitoa Fe geom
Adrese
'~
Avans
'~ ,
Tura~ie
/'
Scula
'~
de
(Iinie) bloc
Observatie: Din orice bloc pot lipsi una sau mai multe adrese.
FUNCTII PREGATITOARE
Functiile pregatitoare, numite si functii sunt utilizate pentru a descrie sculei
sau pentru a activaldezactiva anumite functii Functiile sunt utilizate pentru
de pentru controlul operatiilor de
corectiilor
sculei
P4 P3
X A
I
lI
i Punctul ~Pl
, de nul ~ y
Fig , 5, Interpolarea liniara -~,- , -,--,-- , -,- , -,- , - , - , -,--,-,-,-,-,~
Acest tip de miscare se mai numeste si interpolare liniara. Interpolarea liniara este
activata cu functia GO 1. Formatul comenzii este:
Acest tip de miscare se nwneste 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.
FUNCTIAAVANS
Dupa cum la inceputul programului a fost invocata functia G20 sau G2I, marimea
avansului este exprimata in inch/min., respectiv in mmlmin.
FUNCTII DIVERSE
15.TURATIAARBORELUI
PRINCIPAL
de rotatie a sculei raport cu
Aceasta nu fi reglata in mod este influentata de doi parametri:
turatia sculei (arborelui princi pal) si diametrul sculei. Diametrul fiind 0
independent de ca viteza de poate fi reglata
al
care in
rotJmin. a putea fi aplicata turatia solicitata, aceasta trebuie sa se
domeniul de turatii al masinii.
GESTIONAREA SCULELOR
M06T3
Observatia 1:
M06 trebuie sa plasata functiei T care numarul
noii scule.
Observatia
Observatia 3:
CORECTIA DE SCULA
unul program care sa tina
a Iua in
se masoara diametrul si lungimea
sale) si se intr-un fisier
corectii. In esenta, aceasta ca programul traiectoriile
sa fie independente dimensiunile
sunt numite offset sau de scula.
Observatie: din
el din corectii si dimensiunile corespunzatoare noii scule.
comanda sculei, trebuie invocata in prealabil
G41 sau G42 (compensarea pe partea respectiv
partea dreapta).
P4 COORDONATE
ABSOLUTE SI RELATIVE
.6
A) coordonate absolute:
B) In coordonate relative:
G91; modului de
GOI Y60 FISO;
G03 X-40 eu raza de 40 mm
C MENTARII SI MESAJE IN
INTERI UL PR RAMEL R
in masinii unelte, un
in tJ1U,,,"".v comentarii si/sau seevente text
ignorate de
Comentariile sunt utile pentru a introduce anumite explicatii asupra programului. r1.')Li'-'l.
F CTII P E TITO EG
Functiile pregatitoare, G, se utilizeaza pentru traieetoriei sculei sau setarea
modurilor lueru ale Astfel de functii permit eontrolul al operatiilor
de unitatilor masura, etc.
GOO
Continutul
• Functii modale.
liniile urmatoare, atata timp cat nu sunt U'-'j;:,UL'-'
o data 0
fara a fi necesara repetarea apelului
dupa cum 0 modala ramane
pana fraza in care 0 functie din acelasi grup este apelata. Un exemplu de grup este
al functiilor si interpolare.
N20 1,.
N30 G90;
N50 G01
N60 XIOO;
N70 Y120;
Partea a II-a
G84 9 Filetare cu tarod I
G85 19 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
~.
1\
5
10 Reve: iii la nivelul initial al Utilizate la ciclurile
buzunarului de gaurire
! G99 10 Revel la nivelul R al
buzunarului
. Gi70 0 Prelucrarea buzunarului circular
. G171 0 Prelucrarea buzunarului circular
I G172 0 Prelucrarea buzunarului
t=nghiUlar
G173 0 relucrarea buzunarului
dreptunghiular
Functiile din grupul 0 sunt nemodale. trebuie apelate in toate frazele in care sunt
necesare, daca sunt consecutive in program. Toate celelalte
functii G sunt modale.
GOO X Y Z
Observatia 2:
Funetia GOO blocheaza compensarea sculei impusa prin una din functiile 1 sau
Daca in momentul apelului lui GOO este activ 1 sau G42, compensarea sculei este
numai cand este din nou 0 functie de interpolare (GO 1, sau G03).
Observatia 3:
Observatia 4:
Observatia 5:
x .~·
I Scula
In urma apelului functiei GOO miscarea dupa cele trei axe se efectueaza complet
independent, cu avansul rapid. In exemplul alaturat, GOO 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 0 atentie deosebita evitarii
eventualelor coliziuni dintre scula si piesa sau dispozitivul de fix are a semifabricatului.
Doar in cazurile particulare ale miscarilor programate in directie paralela cu a unei axe
sania se va deplasa chiar cu avansu1 programat.
PlJ(lC1lJl
progror-001 In cazul miscarilor care rezulta prin combinarea translatiilor dupa
r" diverse axe, toate saniile implicate trebuie sa opereze in acelasi
interval de timp. Pentru aceasta controleru1 va calcula avansul
ul ..
individual pentru fiecare sanie, astfel incat prin eombinarea
miscarilor sa rezulte pentru deplasarea programata, avansul solicitat.
uncilll
,j~. r"VI
'"-----'10 1-----'
_ _ _ _ _ _ _ _ _ _ _ _ _ _P unctul de destinatie poate fi programat in coordonate absolute sau
relative.
Fig. 8. Interpolmea Ii niara
Exemplu de programare a functiei GO I:
Observatia 1:
In exemp1ul de mai sus G90 GO 1 si FilS sunt modale, deci pot fi utilizate si in
urmatorul bloc, fara sa fie apelate din nou.
Observatia 2:
Observatia 3:
Observatia 4:
Functia G01 este modala, si prin urmare, incompatibila cu GOO, G02 sau G03 in
aceeasi fraza.
Observatia 5:
+Y
lsi J
(50.43) 05,18)
~
\
\.
\
-------------
----9~--l..,
G03 x50 v43 ]-90 J-19 F120 G02 x35 y18 ]B3 J56 FJ20
Fig. 10. Programarea interpolarii eire ulare e u i ndiearea coordonatelor centrului mi ;;carii
Pentru a programa un arc cand nu se cunoaste raza, ci doar centrul miscarii, se vor utiliza
adresele I si J. I reprezinta pozitia centrului pe axa X in coord onate 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:
lsi J pot fi afectate de semnul '-' pentru a indica pozitia centrului fata de punctul
de start.
Observatia 2:
chiar daca se
Fig ·11. u
GOI X95;
Cand se utilizeaza raza descrierea arcului trebuie avute in vedere doua situatii:
A) arc cu
--t-~~-------~?------- ------
In exemplul din Fig. 12 arcul trasat cu linie continua corespunde situatiei B, iar cel cu
linie intrerupta, variantei A.
respectiv
Observatia 1:
Cand se programeaza arce utilizand raza, valoarea lui R trebuie sa fie mai mare
sau cel putin egala cujumatate din deplasarea cea mai lunga de-a lungul axelor. Spre
exemplu, daca punctul curent (pozitia actual a 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
Observatia 2:
10 si JO pot fi omise din program. Daca centrul arcului se afla pe aceeasi vertical a
sau orizontala cu punctul de start, adresa I, respectiv J poate sa lipseasca din fraza,
1. x, Y si Z.
Deplasarile
3. A vansul programat cu
4. Valorile corectiilor
Observatia 1:
Observatia
Observatia
Observatie:
090 este activ in mod implicit la pomirea masinii, dupa resetarea la panoul
control al si opnrea cu butonul oprire urgenta.
se programa buzunarelor
Dimensiunile semifabricatului
y punctului de zero
relativ coltul din
al
[TOOLDEF TI D6 ZO;
acesteia
00005; Nr. program
N0040 G91 ZO; Coordonatele punctului de
avansului
N0080 70 PO Q3 XO YO JO
a
buzunarului circular
N0090 GI 000 R75 F250 J200;
CicIu de a
circular
NOlOO GOO Z25 M05;
Deplasare rapida a sculei la
mm
prelucrate si
NOIIO G91 G28 XO YO ZO;
Intoarcere la punctul
<.es,etalre program
U,
I"'-
pi eSE"i
L..-------9.1---------I...,
N0120 M30;
Z (- 6 suprafata
X75 Y90
[TOOLDEF Tl D6 ZO;
00003
N0050 M06 TO 1;
NOIlO G91 XO YO
N0120 M30;
buzunarului
Pentru functia G17l: N0090 G17l P75 S300 R75 F250 B3500 J200
P -adancimea de aschiere, ca procentaj din diametrul sculei (75% din diamettul sculei)
Diferenta dintre programul anterior si cel prezent mai jos consta in aceea ca in acest caz
scula aschietoare se deplaseaza pana la adancimea final a a buzunarului, realizand doar
operatia de finisare.
[TOOLDEF Tl D6 ZO;
00004;
NOllO G91 XO YO
NOl
y- coordonata in Y a buzunarului
I este daca
J este ignorat
R avansul insa
aceasta va fi
\
I
~------------qr-----------~
fraza pot fi ape late eel mult patru functii Acestea trebuie sa faca parte din
grupuri modale diferite; daca in se doua sau mai multe functii 0
din grup, efectiva va deveni doar ultima din grupul respectiv.
Lista functiilor G
Tabelul1
~
1 Interpolare circulara in sens orar
1 Interpolare circulara in sens
i trigonometric
: G04 a Oprire precisa
, G20 6 Sistemul de unitati britanic inch, inch/min
G21 6 Sistemul intemational de unitati mm, mmlmin
G28 a Revenire in punctul de referinta
G40 7 Anularea compensarii sculei
G41 7 Compensarea sculei pe stanga
G42 7 Compensarea sculei pecJretilPt§,1
G73 9 Gaurire rapida I
G74 9 Filetare cu cutit
G76 9 Alezare de finisare
G80* 9 Anularea ciclului de gaurire
G81 9 I Gaurire
~
9 Gaurire cu temporizare I
9 Gaurire adanca
prelucrat, setarea avansului
N00800172 J-50 KO PO Q3 RO X Ciclu de a buzunarului
dreptunghiular
N0090 01 10 Tl S300 R75 Cic1u prelucrare a buzunarului
B3500 J200 dreptunghi ular
NOIOO 000 M05; rapida a m
deasupra SI
turatiei
NOllO 1 028 YOZO; Intoarcere la punctul nul
N0120 M30; program
stabileste In programul de
pe Z se face doua ori cu cate 3 mm ",-,,-,eu,", data, astfel
6 mm a buzunarului;
de 6 mm a buzunarului)
finisare);
F
I_I
al buzunarului este
Programul 006
X-37.5 Y -45;
[TOOLDEF Tl
00006;
N0040 1 XO YO ZO;
N0050 M06 TO 1;
N0070 G01 ZO
N0080 PO Q3 RO
NOII0 G28 XO YO
N0120 M30;
pe Z prelucrarii buzunarului. In de
sus, incrementarea pe Z se face cu cate 3 mm, rezultand astfel
buzunarului;
Programul 007
X75 Y90
[EDGEMOVE X-3
[TOOLDEF Tl D6 ZO;
00007;
N00220 M06
N0090 M30;
avem doar un de
de 6 mm a buzunarului)
B arborelui rot/min);
J avansulla
FUNCTII DE TIP M
00
Lista functiilor M
M04
M05
! M06
• M08
• M09
I MIO
. MIl
IM13
• M14
Ml9
• M20 schimbare a sculelor) sub
M24
M25
M27
M30
M32
M33
M38
axaX)
axa Y)
programu]
Observatia 1:
Observatia 2:
Observatia 3:
Cand echipamentul CNC va citi aceasta functie in interiorul unui bloc va opri
derularea programului. Repornirea (continuarea) din punctul in care a
fast oprit se poate prin apasarea tastei [CYCLE
Functia M05, de oprire a turatiei, este la incheierea blocului din care face
parte exemplu dupa incheierea deplasarilor).
• oprirea turatiei;
• eliberarea sculei;
•
M08 - pornirea lichidului de racire-ungere
1ansamblu ("Product
~ 5h~et Metal Design
~ dispozitiv " Pdrt
''" Sheet Meta! Producoon
~desen cdse"Drawing
W!refrarne and Surface Design
iPiuhla,CATPart
~ iiEW Sheet ~1etaJ Design NEW
~ arc taler,CATPart
~~ F~nctKlnal ToIeranc ing & Annotation
~xit
Fig.I. Meniurile Start ~i Mechanical Design
Optiunea Pad
Crearea unui Pad presupune extrudarea unui profil desenat in contur
Inchis (denumit ~i schita) pe una sau pe doua directii.Utilizatorul alege
limitele ~i directia de extrudare in functie de dimensiunea de gabarit a piesei
pe care se dore~te sa 0 obtina. Etapele de lucru sunt urmatoarele: Start/
Mechanical Design/ Part
Design. First Limit
Din arborescenta se
Type: IDimension 3
selecteaza planul Length: Ir=-2-=-On-lm-----,~~
......,
de desenare
(exemplu: xy [ plane) ~i apoi
j N Co selection
se face click pe
unde se deseneaza
rLimit:
Profile I
iconul Sketcher
schita (Sketch.
1) pentru I~ election: 1 Sk etch. 1 ~ modelarea
profilului. Se D Mirrored extent selecteaza
elementul (liniile Reverse Direc tion sale capata
culoare ro~ie), More» click pe Exit
se
- In Pad Definition se introduc valorile dorite exemplu,
lungime de 20mm), daca se optiunea [Preview] se obtine 0
preliminara a corpului, ajutand utilizatorul in luarea decizii
a continua sau nu
- se (OK), extrudarea Iacandu-se perpendicular
planul
Dimension este eel mai simplu ~i u~or de inteles tip de extrudare ce
poate fi aplicat unui profil, in lista "Type" a ferestrei de dialog " Pad
Definition" exista ~i alte tipuri de extrudari ~i anume" Up to
next" ,corespunzator cazului in care extrudarea se face in planul in care se
afla profilul pana cand se intalne~te prima suprafata, "Up to last"
extrudarea se face in planul in care se afla profilul pana cand se intalnqte
ultima suprafata, " Up to plane" permite extrudarea unui profil (Sketch 1),
~i planul (XY) in care a fost desenat pana cand intalne~te un al doilea plan
(Plane!) indicat de utilizator ~i " Up to surface" presupune existenta unui
corp (Pad 1) cu suprafete oarecare ~i a unui profil (Sketch 2) aflat intr-un
plan (Plane. 1), la 0 anum ita distanta de acest corp, realizand extrudarea
profilului pana la contactul cu 0 anumita suprafata a corpului.Pentru a
extruda profilul in ambele directii (In oglinda cu aceea~i valoare) se bifeaza
optiunea
" Mirrored extent".
Modelul corpului creat este prezentat in fig.I.33, sistemul adaugand
automat
numele entitatii la arb ore de comenzi aflat in partea stanga a ecranului de
lucru.
FABRICATIA
, ASISTATA DE CALCULATOR UTILIZAND
Actiunea
, va determina initializarea unei executii , .nO! In cadrul
procesului de fabricatie lucru care consta 'in adaugarea la structura entitatii
Part Operation.
Accesul la parametrii operatiei se poate realiza prin dublu clic pe
entitatea Part Operational din structura sau doar prin utilizarea meniului.
Astfel poate aparea cas uta de dialog Part Operational.
2. Daca este necesar, se introduce numele noii operatii ~i comentariul
adecvat ei.
3. Se alege ma~ina-unealta necesara operatiei. In acest caz va apare
casuta de dialog Machine editor:
Name: l3-axis_Defautmachine
Comment:
~I
Home point X: IOmrn
,Post Processor words table:lpPT ableSamplepptable
I ~
INC data type: IAPT
~ Horne point '( 100101
EiJ
INC data format: IPoint [X,YZ) ~I Home point Z: 1100mm
til
--- Orientation I:
~ TOOIC_ 10 EIJ
Tools catalog: IToolsS ample01 ~ Orientation J: 0
IRadius compensation: 1 ~
0
~
Orientation K:
/1 -"
parametrii de rotatie;
Drilling (gaurire).
Pocketing (buzunare).
Roughing (degro~are).
·~fo
Spiral Milling (prelucrarea unei fete plane).
, r
I Reaming
! ~O\Jf1ter Bering
~ Counter SMng
"
:it Cha!!tering 2Sides
-R-6ackB
I'll _em).
~T:Slottin9
1~ Orwal' Ml ng
18- Tr.ead~~
m ~urve Fonowing
P~ofie Contour~g
~dow
--
tJelp
JJ" ,ilJ2'J
I,,·
~.
I
a,'
-----'---~ I ~L : .
.......~~"_"'_ _ _ _a.==:" _ _ .:-:-:.1
.:_-:1..
-:1---'-"----"'-1· "
~~::: .!. ~~\~ -:..~.IJ.
i!...!'0~~ ~.
~ '_". " "' h_ .....
_11!1~.!!l :01 0:' :;1 ..... '~ * ii1(,&'U. ~J · I(: 'eo:..;.,. "..,u-,- ,! ~'t.D.MiP' ..,j ,t" ~ ...
~
Tool animation
~ -4.. II •
,6,111001 path displayed
Feedrate =1 OOOmm_mn
X=30.616rnm Y=35rnrn Z=5rnm
I=OJ=O K=l
Machining time = 89.55s Total time = 89.55s
Feedrate =1000mm mn
X=30.616mm Y=35mm Z=5mm
1=0 J=O K=l
Machining time = 89.55s Total time = 89.55s
Errors 613
Filter Setting - - -
Faults - - -- - - - - - - -- -
Type : IGouge
Operation : l&=:p-oc-7ke
-='ti,.....ng--:.1:----:
Normal Deviation : 1.0.123328
Area: 10.180722
Close-up.
Aparitia casetei de dialog Error ofera detalii in legatura cu toate erorile existente.
Fig.13. Caseta de dialog Errors
fa
Se selecteaza iconul Video
Schimbarea sculei
Se selecteaza iconul dorit din toolbanLl Tool Change
foWM : I ztl!lYeI.2
ConmenI: : Ir"""",
.::':::=',_=·- - - -
U Bal-ef1d tool
~ - '"~'"
~- f
r ~
I
I
c/. ' .
-,
I •
~ I r;~
~ I'
~ Po..- I.. c... ~ I f3l
\
O; J~
o
;a "' X.
~ ~ ~: ! ~ ~ ~
'0_ - o' __ e£..!. .-.... ~ ~ __