AKADEMIA TECHNICZNO-HUMANISTYCZNA
W BIELSKU-BIAŁEJ
WBMiI
Studia stacjonarne
Mechanika i Budowa Maszyn
Semestr 5, rok ak. 2012/2013
Grupa 2a
Laboratorium
Obrabiarek Sterowanych Numerycznie
Ćwiczenie nr 5
Programowanie 2
Przebieg ćwiczenia.
Podczas ćwiczenia naszym zadaniem było napisanie programów potrzebnych do wykonania zadanego detalu na Sinumeriku . Poprawność kodu (poleceń) programu sprawdzaliśmy podczas symulacji . Poniżej zostały przedstawione programy wraz z opisem poleceń w nich użytych.
2.Program nr 1 – frezowanie z wykorzystaniem podprogramów
a)podprogram na KOLO
PROC KOLO SAVE
G91 G0 X-10 : przyrostowo ruchem szybkim o 10 jednostek przeciwnie do zwrotu osi x
G3 I-10 : ruch po okręgu przeciwnie do ruchu wskazówek zegara , promień 10
G0 X10 :ruch szybki o 10 jednostek zgodnie z osią x
M17 :koniec podprogramu
b)podprogram na KWADRAT
PROC KWADRAT SAVE
G91 G0 X-10 : przyrostowo ruchem szybkim o 10 jednostek przeciwnie do zwrotu osi x
G1 Z-10 :ruch roboczy po prostej o -10 wzdłuż osi z
X-20 :ruch po prostej o –20 wzdłuż osi x
Z20 :ruch po prostej wzdłuż osi z o +20
X20 : ruch po prostej wzdłuż osi x o +20
Z-10 :ruch po prostej o –10 wzdłuż osi z
G0 X10 :ruch szybki o 10 jednostek zgodnie z osią x
M17 :koniec podprogramu
c)program główny
G18 G54 G94 F500 S1500 DIAMOF :płaszczyzna robocza xz , włączenia pierwszego podstawowego przesunięcia punktu zerowego , posuw liniowy , wielkośc posuwu 500 mm/min , prędkośc obrotowa wrzeciona 1500 ,wyłączenie podawania wymiarów na średnicy
G90 G0 X180 Z260 :wprowadzanie wymiarów absolutnych,ruch szybki na współrzędne punktu wymiany narzędzia
X140 Z220 :najazd na pkt o podanych współrzędnych ruchem szybkim
Z200 :najazd na pkt o współrzędnej z=200
KOLO :przywołanie podprogramu KOLO
Z=IC(-30) :ruch przyrostowy o 30 jednostek przeciwnie do zwrotu osi z
KOLO :przywołanie podprogramu KOLO
Z140 :najazd na pkt o współrzędnej z=140
KWADRAT :przywołanie podprogramu KWADRAT
Z100 :najazd na pkt o współrzędnej z=100
KOLO :przywołanie podprogramu KOLO
Z=IC(-40) :ruch przyrostowy o 40 jednostek przeciwnie do zwrotu osi z
KWADRAT :przywołanie podprogramu KWADRAT
Z20 :najazd na pkt o współrzędnej z=20
X60 :najazd na pkt o współrzędnej x=60
Z40 :najazd na pkt o współrzędnej z=40
KOLO :przywołanie podprogramu KOLO
Z=IC(40) :ruch przyrostowy o 40 jednostek zgodnie ze zwrotem osi z
KWADRAT :przywołanie podprogramu KWADRAT
Z160 :najazd na pkt o współrzędnej z=160
KOLO :przywołanie podprogramu KOLO
Z=IC(30) :ruch przyrostowy o 30 jednostek zgodnie ze zwrotem osi z
KOLO :przywołanie podprogramu KOLO
Z220 :najazd na pkt o współrzędnej z=220
X140 :najazd na pkt o współrzędnej x=140
X180 Z260 :ruch do punktu wymiany narzędzia
M5 :wyłączenie obrotów wrzeciona
M30 :koniec programu
3.Program nr 2 – frezowanie z wykorzystaniem programowania parametrycznego
a)podprogram KOLO
PROC KOLO(REAL DIST, REAL DIAM) SAVE :zmienne typu REAL DIST-odległość środka elementu od linii przerywanej ,DIAM -średnica elementu
G91 G0 X=-(DIST-DIAM/2) :programowanie przyrostowe , ruch szybki wzdłuż osi x przeciwnie do jej zwrotu o określoną wartość
G3 I=-DIAM/2 :ruch po okręgu o określonym promieniu przeciwnie do ruchu wskazówek zegara
G0 X=DIST-DIAM/2 :ruch szybki do pkt wyjściowego
M17 :koniec podprogramu
b)podprogram KWADRAT
PROC KWADRAT(REAL DIST, REAL DIAM) SAVE : zmienne typu REAL DIST-odległość środka elementu od linii przerywanej ,DIAM –długość boku
G91 G0 X=-(DIST-DIAM/2) :programowanie przyrostowe , ruch szybki wzdłuż osi x przeciwnie do jej zwrotu o określoną wartość
G1 Z=-DIAM/2 :ruch po prostej wzdłuż osi z przeciwnie do jej zwrotu
X=-DIAM :ruch po prostej wzdłuż osi x przeciwnie do jej zwrotu
Z=DIAM :ruch po prostej wzdłuż osi z zgodnie z jej zwrotem
X=DIAM: :ruch po prostej wzdłuż osi x zgodnie z jej zwrotem
Z=-DIAM/2 :ruch po prostej wzdłuż osi z przeciwnie do jej zwrotu
G0 X=DIST-DIAM/2 :ruch szybki do pkt wyjściowego
M17 :koniec podprogramu
c)program główny
EXTERN KOLO(REAL,REAL) :zadeklarowanie podprogramu ze zmiennymi REAL
EXTERN KWADRAT(REAL,REAL) :zadeklarowanie podprogramu ze zmiennymi REAL
G18 G54 G94 F500 S1500 DIAMOF :płaszczyzna robocza xz , włączenia pierwszego podstawowego przesunięcia punktu zerowego , posuw liniowy , wielkośc posuwu 500 mm/min , prędkośc obrotowa wrzeciona 1500 ,wyłączenie podawania wymiarów na średnicy
G90 G0 X180 Z260 :wprowadzanie wymiarów absolutnych,ruch szybki na współrzędne punktu wymiany narzędzia
X140 Z220 :najazd na pkt o podanych współrzędnych ruchem szybkim
Z200 :najazd na pkt o współrzędnej z=200
KOLO(20,10) :przywołanie podprogramu KOLO o odległości jego środka od linii przerywanej równej 20 i promieniu 10
Z=IC(-30) :ruch przyrostowy o 30 jednostek przeciwnie do zwrotu osi z
KOLO(20,30) :przywołanie podprogramu KOLO o odległości jego środka od linii przerywanej równej 20 i promieniu 30
Z140 :najazd na pkt o współrzędnej z=140
KWADRAT(20,10) :przywołanie podprogramu KWADRAT o odległości jego środka od linii przerywanej równej 20 i długości boku 10
Z100 :najazd na pkt o współrzędnej z=100
KOLO(20,20) :przywołanie podprogramu KOLO o odległości jego środka od linii przerywanej równej 20 i promieniu 20
Z=IC(-40) :ruch przyrostowy o 40 jednostek przeciwnie do zwrotu osi z
KWADRAT(20,30) :przywołanie podprogramu KWADRAT o odległości jego środka od linii przerywanej równej 20 i długości boku 30
Z20 :najazd na pkt o współrzędnej z=20
X60 :najazd na pkt o współrzędnej x=60
Z40 :najazd na pkt o współrzędnej z=40
KOLO(20,10) :przywołanie podprogramu KOLO o odległości jego środka od linii przerywanej równej 20 i promieniu 10
Z=IC(40) :ruch przyrostowy o 40 jednostek zgodnie ze zwrotem osi z
KWADRAT(20,10) :przywołanie podprogramu KWADRAT o odległości jego środka od linii przerywanej równej 20 i długości boku 10
Z120 :najazd na pkt o współrzędnej z=120
KWADRAT(20,30) :przywołanie podprogramu KWADRAT o odległości jego środka od linii przerywanej równej 20 i długości boku 30
Z160 :najazd na pkt o współrzędnej z=160
KOLO(20,20) :przywołanie podprogramu KOLO o odległości jego środka od linii przerywanej równej 20 i promieniu 20
Z=IC(30) :ruch przyrostowy o 30 jednostek zgodnie ze zwrotem osi z
KOLO(20,30) :przywołanie podprogramu KOLO o odległości jego środka od linii przerywanej równej 20 i promieniu 30
Z220 :najazd na pkt o współrzędnej z=220
X140 :najazd na pkt o współrzędnej x=140
X180 Z260 :ruch do punktu wymiany narzędzia
M5 :wyłączenie obrotów wrzeciona
M30 :koniec programu
4.Frezowanie –program z wejściówki.
R1=50 :deklarujemy wartość współrzędnej R1
R2=50 :deklarujemy wartość współrzędnej R2
R3=60 :deklarujemy długość R3
R4=25 :deklarujemy długość R4
R11=100 :deklarujemy długość R11
R12=25 :deklarujemy długość R12
G18 G54 G94 S1000 F100 DIAMOF : płaszczyzna robocza xz , włączenia pierwszego podstawowego przesunięcia punktu zerowego , posuw liniowy , wielkośc posuwu 100 mm/min , prędkośc obrotowa wrzeciona 1000 ,wyłączenie podawania wymiarów na średnicy
T="FREZ" D1 :wybieramy narzędzie ‘FREZ’ , korekcja narzędzia
M6 :wymiana narzędzia
M3 :włączamy prawe obroty wrzeciona
G0 G90 X0 Z0 :ruch szubki po prostej , programowanie absolutne , na współrzędne punktu początku układu współrzędnych
X=R2 Z=R1 :ruch szybki na pkt. o podanych współrzędnych
G91 G1 Z=R11-R12 :programowanie przyrostowe , ruch roboczy po prostej wzdłuż osi z o daną długość
G2 X=R12 Z=R12 CR=R12 :ruch po okręgu o zadanym promieniu zgodnie z ruchem wskazówek zegara , współrzędne x i z rosną przyrostowo o podane wartości
G1 X=R3-R12-R12 :ruch roboczy po prostej wzdłuż osi x o podaną wartość
G2 Z=-R12 X=R12 CR=R12 :ruch po okręgu o zadanym promieniu zgodnie z ruchem wskazówek zegara , współrzędna x rośnie o wartość promienia , współrzędna z maleje o wartość promienia
G1 Z=AC(R1) :ruch roboczy po prostej wzdłuż osi z , programowanie absolutne (funkcja blokowa)
X=-R3/2 Z=-R4 :ruch po skosie przyrostowo o podane wartości
G90 X=R2 Z=R1 :programowanie absolutne , ruch na podane współrzędne
G0 X0 Z0 :ruch szybki na współrzędne początku układu współrzędnych
M5 :wyłączenie obrotów wrzeciona
M30 :koniec programu
5.Wnioski.
Programowanie z wykorzystaniem podprogramów pozwala zaoszczędzić dużo czasu , należy jednak pamiętać że jeżeli w podprogramie wykorzystujemy wartości zmienne np. typu REAL musimy je zadeklarować w programie głównym .