Program Formatinin Önemi
Temel kavramlar#1 kisminda belirtildigi gibi, CNC programi hangi sirada yazilmissa, CNC tezgah da
programi programlanan sirada isler. Bu sebeple makinaya gerekli olan operasyonlari yaptirmak için, tüm
programlama komutlarinin belirli bir sira ile icra edilecek sekilde programlanmasi gerekir.
CNC programlarinin çok kati bir sekilde, belirli bir forma(format) sokularak yazilmasinin ana sebeplerinden
bir tanesi; acemi programcilarin ilk programlarini kolay bir sekilde yazabilmesini saglamaktir. Ilk programi
(acemi programcilar) yazma sirasinda, programin yazilmasi ile ilgili olan kodlarin hafizada tutulmasina
gereksinim duyulmaz. Referans olmasi amaciyla kullanabilecek iyi bir örnek program formati elimizde
varsa; ilk yazilacak olan programlar daha kolay bir sekilde yazilabilir.
Bu is araba kullanmaya benzer. Yollarda kullanilan tüm trafik isaretlerinin tümünü sürücünün hafizasinda
tutabilmesi mümkün degildir. Buna mukabil sürücü yolda bir trafik isareti gördügünde, bunun anlamini
rahatlikla tasavvur edebilecektir. Benzer sekilde iyi bir CNC programcisi da olsa, programcinin CNC
programlamada kullanilan tüm kodlari hafizasinda tutmasi mümkün degildir. Buna ragmen CNC
programlamasini yeni ögrenen bir kisi herhangi bir CNC kodunu gördügü zaman, bunun anlamini çikarma
ihtimali oldukça yüksektir. Programlarda belirli bir yazim sirasini (format) takip etmenin ana sebeplerinden
bir tanesi, programlamada kullanilan kodlarin tamamini hatirlama gereksinimini ortadan kaldirmaktir.
Programlarin belirli bir yazim sirasi takip edilmek suretiyle düzenlenmesinin ikinci sebebi ise,
uyumluluktur. Programlama islemini daha önceden ögrenmis kisilerin kendilerine özgü bir program
formatlari vardir, ve bu formatlari program yazarken devamli kullanirlar. Eger firmada birden fazla
programci varsa; ve her programcinin kendi kullandigi formati kullanarak program yazma egiliminde
oldugu düsünülürse, bu yazilan programlarda karisiklik yaratacak ve iletisim kopukluguna sebep olacaktir.
Firmada bulunan tüm CNC tezgah programcilari, belirli bir CNC tezgah tipi için ayni formati
kullandiklarinda, her bir programci baska biri tarafindan yazilan programda rahatca çalisabilme kabiliyetine
sahip olacaktir.
Programlarin siki bir sekilde belirli bir yazim sirasi takip edilerek yazilmasi gereksiniminin üçüncü ve en
önemli sebebi de, programda çok sayida takim kullanilmasi ile isleme operasyonlarinin yapildigi
programlar ile ilgilidir. Asagi yukari CNC isleme merkezleri programlarinin çogu program içinde birden
fazla takim kullanmak suretiyle olusturulmaktadir.
On tane takimin kullanildigi bir isleme merkezi programi ile çalistigimizi farzedelim. Programi
çalistirdiktan sonra, programda kullanilan besinci takimin gerekli derinlik mesafesinde isleme yapmadigini
tesbit ettigimizi farzedelim. Bu tür bir problemi, programda gerekli degisikligin yapilmasi veya takim boyu
telafisi ile bu takima ait takim boyu telafisinin degistirilmesi suretiyle düzelttikten sonra, besinci takima ait
isleme operasyonunun yeniden yaptirilmasi gereklidir. Bununla birlikte, programin, basindan baslayarak,
besinci takima kadar olan operasyonlarin tekrarlanip yeniden islenmesi de istenmez. Programin bastan
baslanmak suretiyle tekrar çalistirilmasi, bosa zaman harcamanin yani sira is parçasi hassasiyeti ve finis
ölçülerinde istenmeyen problemler meydana getirebilir. Bunun yerine sadece besinci takima ait
operasyonun tekrar islenmesi daha uygundur.
Bu tür bir islem, besinci takima ait operasyon kodlarinin, sanki tek bir takim için yazilmis bir isleme
programiymis gibi, uygun olarak kodlanmasi ile yapilabilir. Eger programci bir önceki takima ait modal
bilgiler ile ilgili olarak belirli kabuller yaparsa( bir önceki takimda kullanilan modal kodlarin bu yeni
takimda da geçerli olacagi ve herhangi bir modal kodun tekrar yazilmasina gerek duyulmadigi), programda
düzenleme yapmaksizin besinci takimi kendi basina çalistirabilme kabiliyetine sahip olamaz.
Operatörün programi bastan çalistirmak yerine, takima ait olan program bölgesinden baslayarak programi
çalistirabilmesi için; programcinin takima ait kisimda bir takim ek CNC kodlarini vermeye gereksinimi
vardir. Verdigimiz on takimlik operasyon örneginde oldugu gibi, besinci takimin operasyonunu
tekrarlattirmak istedigimizi farzedelim. Dördüncü ve besinci takimin her ikisinin de 500 dev/dak’da
döndügünü ve bu devir devri ile isleme yaptigini kabul edelim. Programda kullanilan son takiminsa (onuncu
takim), 1500 dev/dak da islem yapacak sekilde programlandigini farzedelim. Is mili devri modal (bir defa
belirtildiginde ileriki kisimlarda baska bir devir degeri belirtilinceye kadar devir ayni kalir) bir bilgidir.
Programi yazarken, programcinin dördüncü takimda 500 dev/dak olan devri, besinci takimda da kullanmak
istedigini varsayalim ve devir dördüncü takim devri ile ayni oldugundan dolayi besinci takima ait kisimda
devir konusunda herhangi bir sey belirtilmemis olsun.
Eger program program bastan sona kadar islemi bitirecek sekilde çalistirilirsa, her sey düzgün çalisacaktir.
Fakat operatör, islemi besinci takima ait olan kisimdan baslatacak sekilde devam ettirmek ister(yaridan
baslatma-restart), ve besinci takima ait kod kisminda sadece is mili dönme yönü verilmis ve devir degeri
kodlanmamissa, program komple islendikten sonra hafizasinda kalan devir degeri onuncu takim için
kullanilmis olan 1500 dev/dak devir degeri oldugundan dolayi; besinci takimda 500 dev/dak yerine
programda, son takimda verilen en son devir olan S1500 dev/dak ile, tezgah çalisir.
Bu problemi düzeltmenin yolu, her ne kadar bazi gereksiz kodlarin tekrarlanmasi seklinde olacaksa da,
programcinin takimi ooperasyona sokabilmek için gerekli olan tüm bilgilerin programda takima ait olan
operasyon kisminda belirtmesi seklindedir. Esasen programin her bir takim için, programin diger
kisimlarindan bagimsiz olarak çalistirilabilmesi için, programcinin her bir takima ait olan operasyon kismini
mini bir program gibi görerek yazilmasi gereklidir.
Bu sekilde hareket edildiginde, çok sayida takimdan olusan bir is parçasi programinin her bir takimdan
olusan küçük küçük program parçaciklarina bölünecek sekilde organize edilmesi gerçekten de programlama
islemini basitlestirecektir.
Dört Farkli Tip Program Formati
Çok sayida takima ait operasyonu yerine getirebilme kabiliyetine sahip olan takim tezgahlari için(Magazinli
Tezgahlar), programlar dört farkli program formatindan olusmaktadir: Program baslangiç formati, takimbitis
formati, takim baslatma formati ve program bitis formati. Programci her tür programa programbaslatma
formati ile baslar. Sonra ilk takim ile kesme islemlerini yerine getiren program kismini yazar.
Kesme islemi tamamlandiginda programci takim islemini bitirmek için gerekli olan formati (takim-bitis
formati) takip edecek, sonra bir sinraki takimi isleme dahil edebilmek için takim baslatma formatini takip
edecektir. Programci takimlara ait islemlerin tamami bitinceye kadar takim-baslatma, isleme operasyonu,
takim-bitis formatlari arasinda mekik dokuyarak takimlara ait olan isleme operasyonlarinin tamamini
bitirecektir. Kullanilan son takima ait olan takim-bitis formatini takiben, programci programi sona erdirmek
amaciyla program-bitis formati kismini kodlayacaktir.
Program formatina örnek olarak takim boyu kompanzasyonu ile ilgili bahis konusunda geçen (temel
kavramlar#4) iki takim ile islemlerin yapildigi program örnegi göz gezdirilebilir. Bu program iki adet takim
kullanmaktadir ve burada bahsi geçen dört adet program formatina tami-tamina bagli kalinmaktadir.
O21 Program numarasi
N005 T01 M6 1 nolu takimi çagirma ve degistirme
N010 G54 G90 S400 M3 Koordinat sistemi seçimi, mutlak mod, is miline devir verme ve
döndürme
N015 G00 X 20. Y20. Ilk delik pozisyonuna takimi pozisyonlama
N020 G43 H01 Z3. M08 1 nolu takim boyu telafisi verme ve takimi 3 mm mesafede
pozisyonlandirma
N023 G01 Z-20. F80 Suyu açma ve delik delme
N025 G00 Z3. M09 Takimi geri çikarma
N030 G91 G28 Z0 M05 Takimi sifira gönderme (takim degistirme pozisyonu), is milini
durdurma
N035 T2 M6 2 nolu takim çagirma
N040 G54 G90 S400 M3 Koordinat sistemi seçimi, mutlak mod, is miline devir verme ve
döndürme
N050 G00 X50. Y50. Ikinci delik pozisyonuna takimi pozisyonlama
N055 G43 Z3. H02 M08 2 nolu takim boyu telafisi verme ve takimi 3 mm mesafede
pozisyonlandirma
N060 G01 Z-20. F100. Suyu açma ve delik delme
N065 G00 Z3. M09 Takimi geri çikarma
N070 G28 G91 Z0. M5 Takimi sifira gönderme (takim degistirme pozisyonu), is milini
durdurma
N075M30 Program sonu
Program numarasi dahil ilk bes satir, program-baslatma formatini olustururlar. N020 satirinda belirtilen
operasyonun tamamlanmasindan sonra, takim isleme operasyonuna hazirdir. N023 ve N025 satirlarindaki
kodlar ilk takima ait kesme islemini yerine getiren kodlardir. N23 satirinda F ile verilen ilerleme degeri
program-baslatma formatina ait olarak göz önüne alinabilir. N30 ise takim-bitis formatini olusturur. N035
ila N055 arasinda belirtilen kodlar takim-baslatma formati olarak tasavur edilebilir. N060 ve N065
satirlarinda belirtilen kodlar ikinci takima ait kesme operasyonunun yapildigi kodlardir. N070 ve N075
satirlarinda belirtilen kodlar ise program bitis formati seklinde algilanabilir.
Bu programda kesme islemi yapan sadece dört adet kod olduguna dikkat ediniz. Programin geri kalan
kismini ise sadece format olusturmaktadir.
Programin bu sekilde parçalara ayrilmasi suretiyle programin hangi kisimlarinin diger programlarda da
benzer sekilde belirtilecegi görülebilir. Dolayisi ile bu kisimlar bir programdan diger bir programa eger
program ayni format ile yazilacak ise rahatlikla kopyalanabilir. Kuskusuz is mili devirleri, ilerlemeler,
eksen koordinatlari, takim numaralari, takim kompanzasyon telafi numaralari gibi bazi bazi kelime
degerleri programdan programa degisiklik arzedecektir.
Makinada Kullanilan Program Format Bilgisi Nasil Tesbit Edilir
En iyi yol makinada problemsiz olarak çalisan örnek bir program bulup bunu yukarida gösterildigi sekilde
parçalara ayirmak olacaktir. Bu yaparken, degisik formatlari tesbit edebilmek için sadece her bir takimin ne
yaptigi incelenir. Her bir takimin bagimsiz olarak çalismasi için gerekli olan tüm bilgilerin takimin
operasyonunun kodlandigi program kisminda verilip verilmedigi tesbit edilir.
Yeni bir makina ile çalisilmakta ve herhangi bir sekilde program örnegi mevcut degilse, programlarin CNC
tezgahta nasil bir format güdülmek suretiyle yazilmasi gerektigini ögrenmek için tezgah temsilcisi ile
temasa geçilmesi faydali olacaktir. Ayni sekilde tezgah kullanim kilavuzlarinda örnek programlar bulma
ihtimali oldukca yüksektir.
Asagida iki adet isleme merkezi programindan alinti yapilmistir; programin belirli bir formatta verildine
dikkat ediniz.
Program Örnegi 1
%
G28 G91 Z0.
G0 G54 G90 S1200 M3
G00 X-25.469 Y88.046
G43 Z20.H1
G00 Z20.
X-25.469 Y88.046
N8104 G01 Z-11.6 F800
Y70.2548Z-1.5724
...
...
Y75.1323Z-13.6644
Z-7.9094
...
Y70.2815Z-22.4014
Y70.224Z-23.5423
...
Y104.4084
G00Z9.8415
Z9.8415
X-3.1249
G00Z100.00
G00X0Y0
M09
M05
M30
%
Program Örnegi 2
%
O0001(DENEME PROGRAMIDIR)
G17G80G49G40
G28G91Z0.
T1M6
G0G54G90X10.49Y2.90S1500M3
G43Z50.H1
G0Z3.
G1Z-6.F150.
G42X2.90D24
Y10.10
G2X11.49Y19.10R9.
…
…
…
G1X-4.71Y-3.
G1Y-2.63
G3X-2.9Y2.90R8.
G40G1X-10.49Y2.9
G0Z50.
G28Z50.M5
M30
%
Hiç yorum yok:
Yorum Gönder