G16 : Polar Koordinatların CNC'de Kullanımı

CNC G16 Komutu Kapsamlı Rehberi: Polar Koordinatların Gücü :compass:

CNC (Computer Numerical Control) takım tezgahları, modern imalatın bel kemiğini oluşturur. Bu makinelerin hassas ve verimli çalışabilmesi için doğru programlama kodlarına ihtiyaç duyulur. G kodları olarak bilinen bu komutlar arasında, özellikle dairesel veya açılı konumlandırmalarda büyük kolaylık sağlayan G16 Polar Koordinat Girişi komutu öne çıkar. Bu kapsamlı rehberde, G16 komutunu A’dan Z’ye inceleyecek, CNC torna ve işleme merkezlerindeki kullanımını, farklı kontrol ünitelerindeki varyasyonlarını ve pratik uygulamalarını detaylı örneklerle ele alacağız. İster CNC programlamaya yeni başlıyor olun, ister yılların deneyimine sahip bir usta olun, bu makalede G16 komutu hakkında aradığınız tüm bilgileri bulacaksınız.

G16 Komutu Nedir? :thinking: Polar Koordinat Sistemine Giriş

Standart CNC programlamada genellikle Kartezyen Koordinat Sistemi kullanılır. Bu sistemde bir noktanın konumu, X, Y ve Z eksenlerindeki mesafelerle tanımlanır. Ancak, özellikle bir merkez etrafında dairesel olarak sıralanmış delikler, yuvalar veya diğer geometriler işlenirken Kartezyen koordinatları hesaplamak zahmetli olabilir. İşte bu noktada G16 komutu devreye girer.

G16, CNC kontrol ünitesine, takip eden bloklardaki konum bilgilerinin Polar Koordinat Sistemi’ne göre yorumlanacağını bildirir. Polar koordinat sisteminde bir nokta, bir merkez noktasına olan mesafe (Yarıçap - Radius) ve belirlenmiş bir eksene göre yaptığı açı (Angle) ile tanımlanır.

  • G16: Polar Koordinat Giriş modunu aktif eder.
  • G15: Polar Koordinat Giriş modunu iptal eder ve tekrar Kartezyen Koordinat (genellikle varsayılan mod) sistemine döner.

G16 aktifken, kontrol ünitelerinin çoğunda (özellikle Fanuc ve Fanuc uyumlu sistemlerde):

  • X adresi: Merkez noktasına olan Yarıçap (Radius) değerini ifade eder.
  • Y adresi: Referans eksenine (genellikle X ekseninin pozitif yönü 0 derece kabul edilir) göre Açı değerini ifade eder (genellikle derece cinsinden).

Önemli Not: G16 modal bir komuttur. Yani, bir kez programda yazıldığında, G15 komutu ile iptal edilene kadar aktif kalır. Bu nedenle, polar koordinatlarla işiniz bittiğinde mutlaka G15 komutu ile bu modu kapatmayı unutmamalısınız. Aksi takdirde, sonraki Kartezyen koordinat girişleriniz yanlış yorumlanabilir ve istenmeyen sonuçlar doğurabilir.

G16 Komutunun Kullanım Alanları: CNC Torna vs. CNC İşleme Merkezi :gear:

G16 komutunun kullanımı, makine tipine göre bazı farklılıklar gösterir.

CNC Torna Tezgahlarında G16 Kullanımı (C Eksenli Tornalar)

G16 komutu, özellikle C eksenine ve canlı takımlara (driven tools) sahip CNC torna tezgahlarında oldukça yaygın ve kullanışlıdır. Bu tezgahlarda iş parçasının alın yüzeyine (face) veya çevresine belirli açılarla delik delme, kılavuz çekme, frezeleme gibi işlemler yapılırken G16 büyük kolaylık sağlar.

  • Koordinat Sistemi: Genellikle, iş parçasının merkez ekseni Z, çap ekseni X ve dönme ekseni C olarak tanımlanır. G16 aktifken:
    • X: İşlenecek noktanın iş parçası merkezinden olan yarıçapını belirtir.
    • Y veya C (Kontrol ünitesine göre değişebilir): İşlenecek noktanın referans açısına (genellikle C ekseninin 0 derecesi) göre açısal konumunu belirtir.
    • Z: İşlem derinliğini kontrol eder ve Kartezyen olarak kalır.
  • Gereksinimler: Bu tür işlemleri yapabilmek için tornanın C ekseni pozisyonlama kabiliyetine ve iş miline dik veya paralel bağlanabilen canlı (dönen) takımlara sahip olması gerekir.

Örnek Senaryo: Bir flanşın alın yüzeyine, merkezden 50 mm yarıçapta, 0, 90, 180 ve 270 derecelere 4 adet M8 deliği delmek.

CNC İşleme Merkezlerinde G16 Kullanımı

CNC işleme merkezlerinde (dik veya yatay) G16 komutu, torna tezgahlarına kıyasla daha az sıklıkla kullanılsa da belirli durumlarda programlamayı basitleştirebilir. Genellikle bir iş parçasının yüzeyindeki dairesel delik paternleri (bolt hole circles) veya benzeri geometriler için tercih edilir.

  • Koordinat Sistemi: Genellikle, iş parçasının program sıfır noktası (genellikle dairesel paternin merkezi) referans alınır. G16 aktifken (XY düzleminde):
    • X: İşlenecek noktanın program sıfır noktasından olan yarıçapını belirtir.
    • Y: İşlenecek noktanın X ekseninin pozitif yönüne göre açısal konumunu belirtir.
    • Z: İşlem derinliğini kontrol eder ve Kartezyen olarak kalır.
  • Alternatifler: İşleme merkezlerinde dairesel paternler genellikle Kartezyen koordinatlarla trigonometri kullanarak (Sinüs ve Kosinüs hesaplamaları) veya kontrol ünitelerinin sunduğu özel delik delme çevrimleri (örneğin, Fanuc’ta G70/G71/G72 gibi kullanıcı tanımlı çevrimler veya bazı kontrol ünitelerindeki bolt-hole pattern çevrimleri) ile de programlanabilir. G16, bu hesaplamaları yapmadan doğrudan polar koordinatları girmeyi sağlar.

Örnek Senaryo: Bir plaka üzerine, merkezden 100 mm yarıçapta, 60 derecelik artışlarla 6 adet Ø10 mm delik delmek.

Farklı Kontrol Ünitelerinde G16 (veya Eşdeğeri) Uygulamaları :laptop:

G16 komutunun temel mantığı (polar koordinat girişi) aynı olsa da, farklı CNC kontrol üniteleri arasında uygulamada ve syntax’ta (yazım biçiminde) önemli farklılıklar olabilir.

1. Fanuc ve Haas Kontrol Üniteleri

Fanuc, CNC pazarında en yaygın kontrol ünitelerinden biridir ve Haas gibi birçok üretici de Fanuc ile büyük ölçüde uyumlu bir G kodu yapısı kullanır.

  • Aktivasyon/İptal: G16 ile aktif edilir, G15 ile iptal edilir.
  • Syntax: G16 aktifken, X değeri yarıçapı, Y değeri açıyı (derece cinsinden) temsil eder. Açı genellikle X ekseninin pozitif yönünden saat yönünün tersine (CCW) ölçülür.
  • Düzlem Seçimi: G16’nın hangi düzlemde (XY, XZ, YZ) çalışacağı G17, G18, G19 komutları ile belirlenir. İşleme merkezlerinde varsayılan genellikle G17 (XY düzlemi), tornalarda alın işleme için G18 (XZ düzlemi) kullanılabilir ancak C ekseni ile birlikte genellikle yine G17 mantığı geçerli olur (X yarıçap, Y/C açı).

Basit Fanuc/Haas Örneği (İşleme Merkezi - 4 Delik):
Merkez (X0, Y0) etrafında, R=50mm, 0, 90, 180, 270 derecelerde 4 adet 5mm derinliğinde Ø8 delik delme (G81 çevrimi ile).

O0001 (G16 FANUC/HAAS ORNEK BASIT);
N10 G90 G80 G40 G49 G17 ; (Guvenlik Satiri: Mutlak Mod, Cevrim Iptal, Cap Telafi Iptal, Boy Telafi Iptal, XY Duzlemi)
N20 T1 M6 ; (Takim 1 (Ø8 Matkap) Sec ve Degistir)
N30 G54 G00 X0 Y0 ; (Is Parçasi Sifirina Hizli Git)
N40 S1500 M3 ; (Fener Milini 1500 dev/dak CW Dondur)
N50 G43 H1 Z50.0 M8 ; (Takim Boy Telafisi Aktif, Z'de 50mm'ye In, Sogutma Suyu Ac)
N60 G99 G81 R3.0 Z-5.0 F200 ; (Cevrim Baslangic: Geri Cekilme R Noktasi, G81 Delik Delme Cevrimi, R Seviyesi Z3.0, Delik Dibi Z-5.0, Ilerleme 200 mm/dak)
N70 G16 ; (POLAR KOORDINAT MODU AKTIF)
N80 X50.0 Y0.0 ; (Ilk Delik: R=50, Aci=0 derece - G81 bu noktada calisir)
N90 Y90.0 ; (Ikinci Delik: R=50, Aci=90 derece - Sadece aci degisti)
N100 Y180.0 ; (Ucuncu Delik: R=50, Aci=180 derece)
N110 Y270.0 ; (Dorduncu Delik: R=50, Aci=270 derece)
N120 G15 ; (POLAR KOORDINAT MODU IPTAL)
N130 G80 ; (Delik Delme Cevrimi Iptal)
N140 G00 Z50.0 M9 ; (Guvenli Z Yuksekligine Kalk, Sogutma Suyu Kapat)
N150 G91 G28 Z0 ; (Referans Noktasina Gonder - Z ekseni once)
N160 G91 G28 X0 Y0 ; (Referans Noktasina Gonder - X ve Y)
N170 M30 ; (Program Sonu ve Reset)

Kompleks Fanuc/Haas Örneği (C Eksenli Torna - Farklı Yarıçap ve Açılarda Delikler):
Alın yüzeyine R=30mm’de 0, 120, 240 derecelerde 3 adet M6 kılavuz çekme (G84) ve R=60mm’de 45, 135, 225, 315 derecelerde 4 adet Ø5 delik delme (G81). (Canlı takım kullanıldığı varsayılmıştır).

O0002 (G16 FANUC/HAAS ORNEK KOMPLEKS TORNA);
N10 G90 G80 G40 G18 ; (Guvenlik Satiri - Tornada genellikle XZ duzlemi baslangicta secilir)
N20 G54 ; (Is Parcasi Sifiri)
N30 G00 T0101 ; (Takim 1 - M6 Kilavuz, Ofset 1)
N40 M5 ; (Ana Mili Durdur - Canli Takim Calisacak)
N50 M105 ; (Ornek: Canli Takim Modu Aktif)
N60 S800 M3 ; (Canli Takim Devri CW - Eger takim yonu farkliysa M4)
N70 G00 X150.0 Z50.0 C0.0 ; (Guvenli Noktaya Git, C Eksenini Sifirla)
N80 G00 Z5.0 ; (Alina Yaklas)
N90 G99 G84 R3.0 Z-10.0 F1.0 ; (Kilavuz Cekme Cevrimi (Adim 1.0mm), R Seviyesi Z3.0, Derinlik Z-10.0, F=Devir*Adim burada yanlis olabilir, F ilerleme=S*P olmali. F800 olmalı S800 için F=S*P (Pitch=1.0mm)) 
N91 G84 R3.0 Z-10.0 F800.0 ; (Dogru F degeri ile G84 - S800 * 1.0 = 800)
N100 G16 ; (POLAR KOORDINAT MODU AKTIF - X=Yaricap, C=Aci (veya Y=Aci kontrol ünitesine bağlı))
N110 X30.0 C0.0 ; (Ilk Kilavuz: R=30, Aci=0)
N120 C120.0 ; (Ikinci Kilavuz: R=30, Aci=120)
N130 C240.0 ; (Ucuncu Kilavuz: R=30, Aci=240)
N140 G15 G80 ; (POLAR MOD IPTAL, Cevrim Iptal)
N150 G00 Z50.0 ; (Guvenli Z'ye Cik)
N160 M106 ; (Ornek: Canli Takim Modu Pasif)
N170 M5 ; (Canli Takim Devri Durdur)

N180 G00 T0202 ; (Takim 2 - Ø5 Matkap, Ofset 2)
N190 M105 ; (Canli Takim Modu Aktif)
N200 S2000 M3 ; (Canli Takim Devri 2000 dev/dak CW)
N210 G00 X150.0 Z50.0 ; (Guvenli Noktaya Git)
N220 G00 Z5.0 ; (Alina Yaklas)
N230 G99 G81 R3.0 Z-8.0 F150 ; (Delik Delme Cevrimi, R Z3.0, Derinlik Z-8.0, Ilerleme 150 mm/dak)
N240 G16 ; (POLAR KOORDINAT MODU AKTIF)
N250 X60.0 C45.0 ; (Ilk Delik: R=60, Aci=45)
N260 C135.0 ; (Ikinci Delik: R=60, Aci=135)
N270 C225.0 ; (Ucuncu Delik: R=60, Aci=225)
N280 C315.0 ; (Dorduncu Delik: R=60, Aci=315)
N290 G15 G80 ; (POLAR MOD IPTAL, Cevrim Iptal)
N300 G00 Z50.0 M9 ; (Guvenli Z'ye Cik, Sogutma Suyu Kapat)
N310 M106 ; (Canli Takim Modu Pasif)
N320 M5 ; (Canli Takim Devri Durdur)
N330 G00 X150.0 Z100.0 ; (Uzak Guvenli Nokta)
N340 M30 ; (Program Sonu)

2. Siemens (Sinumerik) Kontrol Üniteleri

Siemens Sinumerik kontrol üniteleri, genellikle G16 komutunu Fanuc’tan farklı bir şekilde ele alır veya hiç kullanmaz. Polar koordinat girişi için kendi özel komutları ve syntax’ı bulunur.

  • Yaklaşım: Siemens’te G16 yerine POLAR ON / POLAR OF veya G110/G111/G112 gibi polar enterpolasyon modları veya doğrudan polar koordinat tanımlama (AP= açı, RP= yarıçap) kullanılabilir. TRANS (Translate) ve ROT (Rotate) gibi koordinat sistemi dönüşümleri de benzer sonuçlar elde etmek için güçlü alternatiflerdir.
  • Syntax (Örnek Polar Tanımlama):
    • G0 X=AP(açı) Y=RP(yarıçap) şeklinde kullanılabilir (düzlem ve ayara bağlı olarak X/Y değişebilir).
    • Veya POLAR modları aktif edilerek:
      POLAR ON G90 ; Polar mod aktif, mutlak programlama
      ...
      G1 X=RP(50) Y=AP(0) F100 ; R=50, Aci=0 olan noktaya git
      Y=AP(90) ; R=50, Aci=90 olan noktaya git
      ...
      POLAR OF ; Polar mod iptal
      
  • Delik Çevrimleri: Siemens’in CYCLE81 (Delik Delme), CYCLE82 (Havşa Delme), CYCLE83 (Derin Delik Delme), CYCLE84 (Kılavuz Çekme) gibi güçlü çevrimleri, genellikle polar koordinatlarla tanımlanmış nokta listeleriyle (PATTERN veya POLAR) birlikte kullanılır.

Basit Siemens Örneği (İşleme Merkezi - 4 Delik - CYCLE81 ile Polar Pattern):
Merkez (X0, Y0) etrafında, R=50mm, 0, 90, 180, 270 derecelerde 4 adet 5mm derinliğinde Ø8 delik delme.

%_N_G16_SIEMENS_SIMPLE_MPF
;$PATH=/_N_WKS_DIR/_N_EXAMPLE_WPD
DEF REAL _RADIUS=50, _ANGLE=0, _DEPTH=-5, _RETRACT=3, _SECURE=50
DEF INT _NUMHOLES=4, _STARTANGLE=0, _INCANGLE=90

N10 G17 G90 G54 G71 ; (XY Duzlemi, Mutlak Mod, Is Sifiri, Metrik)
N20 T="DRILL_8MM" ; (Takim Adi)
N30 M6 ; (Takim Degistir)
N40 S1500 M3 D1 ; (Devir, Yon, Takim Ofseti)
N50 G0 X0 Y0 Z=_SECURE M8 ; (Merkeze Hizli Git, Guvenli Z, Sogutma Ac)
N60 Z=_RETRACT ; (Geri Cekilme Yuksekligine In)

N70 PATTERN POLAR (RP=_RADIUS, PA=_STARTANGLE, PIA=_INCANGLE, NUM=_NUMHOLES) ; (Polar Pattern Tanimla: Yaricap, Baslangic Aci, Acisal Artis, Delik Sayisi)
N80 CYCLE81(_RETRACT, _DEPTH, _SECURE, , , ) ; (Delik Delme Cevrimi (Parametreler: GeriCekilme, Derinlik, GuvenliMesafe, BeklemeSuresi, ...))
N85 PATTERN OFF ; (Pattern Modunu Kapat)

N90 G0 Z=_SECURE M9 ; (Guvenli Z'ye Cik, Sogutma Kapat)
N100 M5 ; (Fener Mili Durdur)
N110 G0 G90 G53 Z0 D0 ; (Makine Sifiri Z'ye Git)
N120 G0 G90 G53 X0 Y0 ; (Makine Sifiri X/Y'ye Git)
N130 M30 ; (Program Sonu)

Kompleks Siemens Örneği (İşleme Merkezi - Farklı Paternler - TRANS ve ROT ile):
Merkezde (X0, Y0) R=30, 3 delik (0, 120, 240 derece) ve ayrıca X100 Y50 merkezli R=20, 5 delik (0, 72, 144, 216, 288 derece) delme. (G16 yerine koordinat dönüşümü kullanımı).

%_N_G16_SIEMENS_COMPLEX_MPF
;$PATH=/_N_WKS_DIR/_N_EXAMPLE_WPD
DEF REAL _R1=30, _A1=0, _INC1=120, _R2=20, _A2=0, _INC2=72
DEF REAL _X_CENTER2=100, _Y_CENTER2=50
DEF REAL _DEPTH=-8, _RETRACT=3, _SECURE=50
DEF INT _NUM1=3, _NUM2=5

N10 G17 G90 G54 G71 ; (XY Duzlemi, Mutlak Mod, Is Sifiri, Metrik)
N20 T="DRILL_6MM" ; (Takim Adi)
N30 M6 ; (Takim Degistir)
N40 S1800 M3 D1 ; (Devir, Yon, Takim Ofseti)
N50 G0 X0 Y0 Z=_SECURE M8 ; (Ana Merkeze Hizli Git, Guvenli Z, Sogutma Ac)
N60 Z=_RETRACT ; (Geri Cekilme Yuksekligine In)

N70 ; *** ILK PATERN (MERKEZDE) ***
N80 MCALL CYCLE81(_RETRACT, _DEPTH, _SECURE, , , ) ; (Cevrim tekrar cagrilacak)
N90 FOR _I=1 TO _NUM1
N100   _CURR_ANGLE = _A1 + (_I-1) * _INC1
N110   _CURR_X = _R1 * COS(_CURR_ANGLE)
N120   _CURR_Y = _R1 * SIN(_CURR_ANGLE)
N130   G0 X=_CURR_X Y=_CURR_Y ; (Hesaplanan noktaya git)
N140   MCALL ; (Onceki MCALL ile tanimli CYCLE81'i calistir)
N150 ENDFOR
N160 G0 Z=_RETRACT ; (Patern sonrasi geri cekilme)

N170 ; *** IKINCI PATERN (X100, Y50 MERKEZLI) ***
N180 TRANS X=_X_CENTER2 Y=_Y_CENTER2 ; (Koordinat sistemini X100, Y50'ye OTALA)
N190 MCALL CYCLE81(_RETRACT, _DEPTH, _SECURE, , , ) ; (Cevrimi tekrar cagrilacak sekilde tanimla)
N200 FOR _I=1 TO _NUM2
N210   _CURR_ANGLE = _A2 + (_I-1) * _INC2
N220   _CURR_X = _R2 * COS(_CURR_ANGLE) ; (Yeni merkeze gore X)
N230   _CURR_Y = _R2 * SIN(_CURR_ANGLE) ; (Yeni merkeze gore Y)
N240   G0 X=_CURR_X Y=_CURR_Y ; (Yeni koordinat sistemindeki noktaya git)
N250   MCALL ; (Cevrimi calistir)
N260 ENDFOR
N270 ATRANS ; (Otelemeyi (TRANS) iptal et)
N280 G0 Z=_SECURE M9 ; (Guvenli Z'ye Cik, Sogutma Kapat)
N290 M5 ; (Fener Mili Durdur)
N300 G0 G90 G53 Z0 D0 ; (Makine Sifiri Z)
N310 G0 G90 G53 X0 Y0 ; (Makine Sifiri X/Y)
N320 M30 ; (Program Sonu)

3. Heidenhain (iTNC/TNC) Kontrol Üniteleri

Heidenhain kontrol üniteleri, G kodlarından ziyade kendi “Plain Language” (Açık Dil) formatını veya diyalog bazlı programlamayı tercih eder. Polar koordinatlar genellikle G16 gibi bir moda girmek yerine, doğrudan nokta tanımlamalarında veya delik delme çevrimleri içinde belirtilir.

  • Yaklaşım: Polar koordinatlar LP (Linear Polar - Yarıçap) ve LA (Linear Angular - Açı) komutları ile veya CC (Cartesian Coordinates - Kartezyen Koordinatlar, genellikle merkez noktası) ile birlikte kullanılır. Delik delme için CYCL DEF 200 DRILLING gibi güçlü çevrimler bulunur ve bu çevrimlerin pozisyonları polar koordinatlarla tanımlanabilir.
  • Syntax (Örnek Nokta Tanımlama):
    L X... Y... (Kartezyen) yerine L LP... LA... (Polar) kullanılabilir.
    Veya bir çevrim içinde pozisyonlar listelenirken:
    CYCL DEF 200 DRILLING ~
      Q200=2    ;SET-UP CLEARANCE ~
      Q201=-10  ;DEPTH ~
      Q206=150  ;FEED RATE FOR PLNGNG ~
      Q202=5    ;PLUNGING DEPTH ~
      Q210=0    ;DWELL TIME AT TOP ~
      Q203=+0   ;SURFACE COORDINATE ~
      Q204=50   ;2ND SET-UP CLEARANCE ~
      Q211=0.2  ;DWELL TIME AT DEPTH
    ; Pozisyonlar
    L X0 Y0 R0 FMAX ; Referans (Merkez)
    CC X0 Y0 ; Merkezi tanimla
    L LP50 LA0 FMAX ; Ilk delik (R=50, Aci=0)
    CYCL CALL
    L LA90 FMAX ; Ikinci delik (R=50, Aci=90)
    CYCL CALL
    L LA180 FMAX ; Ucuncu delik (R=50, Aci=180)
    CYCL CALL
    L LA270 FMAX ; Dorduncu delik (R=50, Aci=270)
    CYCL CALL M2
    

Basit Heidenhain Örneği (CYCL DEF 200 ile 4 Delik):
Merkez (X0, Y0) etrafında, R=50mm, 0, 90, 180, 270 derecelerde 4 adet 5mm derinliğinde Ø8 delik delme.

0 BEGIN PGM G16_HEIDENHAIN_SIMPLE MM
1 BLK FORM 0.1 Z X-100 Y-100 Z-20
2 BLK FORM 0.2 X+100 Y+100 Z+0
3 TOOL CALL 1 Z S1500 ; Matkap Ø8
4 L Z+100 R0 FMAX M3 ; Guvenli Z, Is mili baslat
5 L X+0 Y+0 R0 FMAX M8 ; Merkeze git, Sogutma ac
6 L Z+2 R0 FMAX ; Yaklasma
7 CYCL DEF 200 DRILLING ~ ; Delme Cevrimi Tanimla
   Q200=2    ; GUVENLIK MESAFESI=2 ~
   Q201=-5   ; DERINLIK=-5 ~
   Q206=200  ; ILERLEME=200 ~
   Q202=5    ; GAGALAMA MIKTARI (0 ise gagalama yok)=5 ~ ; Q202 DERINLIK OLMALI, GAGALAMA Q205'dir. Duzeltme: Q201 ile derinlik yeterli.
   Q201=-5   ; DERINLIK=-5 (Tekrar teyit) ~
   Q210=0    ; USTTE BEKLEME=0 ~
   Q203=+0   ; YUZEY KORDINATI=0 ~
   Q204=50   ; 2. GUVENLIK MESAFESI=50 ~
   Q211=0    ; DIPTE BEKLEME=0
8 CC X+0 Y+0 ; Dairesel Patern Merkezi
9 L LP+50 LA+0 R0 FMAX ; Pozisyon 1: R=50, Aci=0
10 CYCL CALL ; Cevrimi Calistir
11 L LA+90 R0 FMAX ; Pozisyon 2: Aci=90
12 CYCL CALL
13 L LA+180 R0 FMAX ; Pozisyon 3: Aci=180
14 CYCL CALL
15 L LA+270 R0 FMAX ; Pozisyon 4: Aci=270
16 CYCL CALL M2 ; Cevrimi Calistir ve Program Sonu icin M2 (M30 gibi)
17 L Z+100 R0 FMAX M9 ; Guvenli Z, Sogutma Kapat
18 L X+200 Y+200 R0 FMAX M5 ; Park Pozisyonu, Is Mili Durdur
19 END PGM G16_HEIDENHAIN_SIMPLE MM

Kompleks Heidenhain Örneği (Farklı Paternler - CYCL DEF 207 ve Koordinat Dönüşümü):
Merkezde R=30, 3 delik (0, 120, 240) ve X100 Y50 merkezli R=20, 5 delik (0, 72, 144, 216, 288). CYCL DEF 207 UNIVERSAL DRILLING ve CYCL DEF 7.0 DATUM SHIFT kullanımı.

0 BEGIN PGM G16_HEIDENHAIN_COMPLEX MM
1 BLK FORM 0.1 Z X-100 Y-100 Z-20
2 BLK FORM 0.2 X+150 Y+100 Z+0
3 TOOL CALL 2 Z S1800 ; Matkap Ø6
4 L Z+100 R0 FMAX M3 ; Guvenli Z, Is mili baslat
5 L X+0 Y+0 R0 FMAX M8 ; Ana Merkeze git, Sogutma ac

6 ; *** ILK PATERN (MERKEZDE) ***
7 CYCL DEF 7.0 DATUM SHIFT ; Sifir Noktasi Kaydirma (Aktif Degil, Sadece Tanim)
8 CYCL DEF 7.1 X+0
9 CYCL DEF 7.2 Y+0
10 CYCL DEF 7.3 Z+0
11 CYCL DEF 207 UNIVERSAL DRILLING ~ ; Universal Delme Cevrimi
    Q200=2    ; GUVENLIK MESAFESI=2 ~
    Q201=-8   ; DERINLIK=-8 ~
    Q206=180  ; ILERLEME=180 ~
    Q202=8    ; GAGALAMA MIKTARI=8 ~ ; Duzeltme: Q202 Plunging Depth olmali. Q205 Incremental Depth for pecking. Q202=8 kalsin.
    Q210=0    ; USTTE BEKLEME=0 ~
    Q203=+0   ; YUZEY KORDINATI=0 ~
    Q204=50   ; 2. GUVENLIK MESAFESI=50 ~
    Q211=0    ; DIPTE BEKLEME=0 ~
    Q330=30   ; PATERN YARICAPI=30 ~
    Q331=0    ; BASLANGIC ACISI=0 ~
    Q332=120  ; ACISAL ARTIS=120 ~
    Q347=3    ; DELIK SAYISI=3
12 CYCL CALL ; Ilk paterni isle

13 ; *** IKINCI PATERN (X100, Y50 MERKEZLI) ***
14 CYCL DEF 7.0 DATUM SHIFT ; Yeni Sifir Noktasi Kaydirma
15 CYCL DEF 7.1 X+100
16 CYCL DEF 7.2 Y+50
17 CYCL DEF 207 UNIVERSAL DRILLING ~ ; Ayni cevrim, farkli patern parametreleri
    Q200=2    ; GUVENLIK MESAFESI=2 ~
    Q201=-8   ; DERINLIK=-8 ~
    Q206=180  ; ILERLEME=180 ~
    Q202=8    ; GAGALAMA MIKTARI=8 ~
    Q210=0    ; USTTE BEKLEME=0 ~
    Q203=+0   ; YUZEY KORDINATI=0 ~
    Q204=50   ; 2. GUVENLIK MESAFESI=50 ~
    Q211=0    ; DIPTE BEKLEME=0 ~
    Q330=20   ; PATERN YARICAPI=20 ~
    Q331=0    ; BASLANGIC ACISI=0 ~
    Q332=72   ; ACISAL ARTIS=72 ~
    Q347=5    ; DELIK SAYISI=5
18 CYCL CALL ; Ikinci paterni isle

19 CYCL DEF 7.0 DATUM SHIFT ; Sifir Noktasi Kaydirmayi Iptal Et
20 CYCL DEF 7.1 X+0
21 CYCL DEF 7.2 Y+0
22 L Z+100 R0 FMAX M9 ; Guvenli Z, Sogutma Kapat
23 L X+200 Y+200 R0 FMAX M5 M2 ; Park Pozisyonu, Is Mili Durdur, Program Sonu
24 END PGM G16_HEIDENHAIN_COMPLEX MM

4. Mazatrol (Mazak) Kontrol Üniteleri

Mazak’ın Mazatrol konuşma diline dayalı (conversational) kontrol üniteleri, G kodu programlamadan oldukça farklı çalışır. G16 gibi komutlar doğrudan kullanılmaz. Bunun yerine, kullanıcı arayüzü üzerinden geometrik şekiller ve işlem adımları tanımlanır.

  • Yaklaşım: Polar koordinatlarla yapılacak işlemler (örneğin dairesel delik paterni) için özel "Unit"ler (Birimler) kullanılır. Örneğin:
    • Point Machining Unit: Tek tek noktaları tanımlarken Kartezyen veya Polar (Radius, Angle) seçenekleri sunabilir.
    • Circle Mill / Bolt Hole Circle Unit: Doğrudan dairesel bir paterni tanımlamak için kullanılır. Kullanıcıdan merkez koordinatları, yarıçap, delik sayısı, başlangıç açısı, açısal artış gibi parametreler istenir.
  • Avantaj: Programlama görsel ve daha sezgiseldir, G kodu ezberlemeye gerek kalmaz.
  • Dezavantaj: G koduna alışkın kullanıcılar için farklı bir öğrenme eğrisi gerektirir ve G kodu kadar esnek olmayabilir (ancak genellikle çoğu ihtiyacı karşılar).

Mazatrol Örneği (Konsept Açıklama - Kod Yok):
Merkezde R=50, 4 delik (0, 90, 180, 270 derece) delmek için Mazatrol’de izlenecek adımlar (kabaca):

  1. Yeni bir “Unit” (Birim) oluşturulur (örneğin, “Boring” veya “Drilling”).
  2. İşlem tipi (delme) ve takım seçilir.
  3. Pozisyonlama bölümünde “Pattern” (Desen) veya “Circle” (Daire) seçeneği seçilir.
  4. İlgili parametreler girilir:
    • Merkez X: 0
    • Merkez Y: 0
    • Yarıçap (Radius): 50
    • Delik Sayısı (No. of Holes): 4
    • Başlangıç Açısı (Start Angle): 0
    • Açısal Artış (Pitch Angle): 90
  5. Delme parametreleri (Derinlik, İlerleme, Devir vb.) girilir.
  6. Unit tamamlanır. Kontrol ünitesi bu bilgilere dayanarak gerekli takım yollarını otomatik olarak oluşturur.

Kompleks paternler için birden fazla “Unit” tanımlanabilir veya daha gelişmiş desen seçenekleri kullanılabilir.

5. Mitsubishi (Meldas) Kontrol Üniteleri

Mitsubishi Meldas kontrol üniteleri genellikle Fanuc ile yüksek derecede uyumluluğa sahiptir. G16 komutunun kullanımı ve syntax’ı çoğunlukla Fanuc ile aynıdır.

  • Aktivasyon/İptal: G16 ile aktif, G15 ile iptal.
  • Syntax: G16 aktifken X yarıçapı, Y açıyı temsil eder.
  • Farklılıklar: Nadiren de olsa bazı parametrelerde veya özel M kodlarında küçük farklılıklar olabilir. En doğrusu her zaman makinenin kendi programlama kılavuzuna başvurmaktır.

Mitsubishi Örnekleri: Fanuc/Haas için verilen basit ve kompleks örnekler genellikle Mitsubishi kontrol ünitelerinde de geçerli olacaktır. Sadece spesifik makine ayarları veya küçük syntax farklılıkları olabileceği akılda tutulmalıdır.

G16 Kullanımının Avantajları ve Dezavantajları :sparkles:

Avantajları:

  1. Programlama Kolaylığı: Özellikle dairesel paternlerde, her deliğin X ve Y koordinatlarını ayrı ayrı hesaplamak yerine yarıçap ve açı girmek programı kısaltır ve basitleştirir.
  2. Azalan Hata Riski: Manuel trigonometrik hesaplamalara gerek kalmadığı için hesaplama hatası riski azalır.
  3. Okunabilirlik: Polar koordinatlarla yazılmış bir dairesel patern programı, Kartezyen koordinatlarla yazılmışa göre genellikle daha kolay anlaşılır (paternin yapısı daha nettir).
  4. Esneklik: Paternin yarıçapını veya açısal konumunu değiştirmek, sadece ilgili R veya Açı değerini değiştirmek kadar kolaydır.

Dezavantajları ve Dikkat Edilmesi Gerekenler:

  1. Modal Olması: G16’nın modal olması, program sonunda G15 ile iptal edilmeyi unutulduğunda ciddi sorunlara yol açabilir. Sonraki Kartezyen hareketler yanlış yorumlanabilir.
  2. Kontrol Ünitesi Farklılıkları: Görüldüğü gibi, G16 komutunun veya eşdeğerinin uygulanışı kontrol üniteleri arasında farklılık gösterir. Bu durum, farklı makineler arasında program taşırken dikkat gerektirir.
  3. Sınırlı Kullanım: G16 temel olarak polar (dairesel/açısal) konumlandırmalar için uygundur. Karmaşık, doğrusal olmayan veya tamamen rastgele konumlar için Kartezyen sistem genellikle daha pratiktir.
  4. Referans Açısı: Açının hangi eksene göre (genellikle X+) ve hangi yönde (genellikle CCW) ölçüldüğünü bilmek önemlidir. Bu, kontrol ünitesi parametrelerine göre değişebilir.

En İyi Uygulamalar ve İpuçları :light_bulb:

  • Her Zaman G15 Kullanın: G16 bloğundan sonra polar koordinatlarla işiniz biter bitmez bir G15 satırı eklemeyi alışkanlık haline getirin.
  • Açıklama Satırları Ekleyin: Programın okunabilirliğini artırmak için G16 ve G15 satırlarına açıklama ekleyin. Örn: (POLAR MOD AKTIF - X=YARICAP, Y=ACI), (POLAR MOD IPTAL).
  • Düzlem Seçimini Kontrol Edin: Özellikle işleme merkezlerinde G17, G18, G19 komutlarının doğru düzlemi (genellikle G17 - XY) seçtiğinden emin olun.
  • Mutlak/Artışlı Mod (G90/G91): G16 genellikle G90 (Mutlak Programlama) ile kullanılır. G91 (Artışlı Programlama) ile kullanıldığında, X ve Y değerleri bir önceki noktaya göre yarıçap ve açı değişimini ifade eder ki bu durum kafa karıştırıcı olabilir. Dikkatli kullanılmalıdır.
  • Çevrimlerle Kombine Edin: G16’yı G81, G83, G84 gibi delik delme ve kılavuz çekme çevrimleriyle birlikte kullanarak programı daha da verimli hale getirebilirsiniz. G16 aktifken çevrimi başlatın ve ardından sadece polar koordinatları listeleyin.

Sonuç :chequered_flag:

G16 Polar Koordinat Girişi komutu, CNC programlamada, özellikle CNC tornaların C eksenli uygulamalarında ve işleme merkezlerindeki dairesel paternlerde büyük kolaylık sağlayan güçlü bir araçtır. Kartezyen koordinat hesaplama zahmetini ortadan kaldırarak programlamayı hızlandırır ve hata riskini azaltır.

Ancak, G16’nın modal bir komut olduğunu unutmamak ve iş bittiğinde G15 ile iptal etmek kritiktir. Ayrıca, Fanuc, Siemens, Heidenhain, Mazatrol gibi farklı kontrol ünitelerinin polar koordinatları farklı şekillerde ele aldığını bilmek ve programlamayı buna göre yapmak gerekir. Siemens’in POLAR ON/OFF veya CYCLE içindeki pattern tanımları, Heidenhain’in LP/LA veya CYCL DEF içindeki polar parametreleri ve Mazatrol’ün konuşma dilindeki "Unit"leri, G16’nın yerine geçen veya alternatif olan yaklaşımlardır.

Bu rehberin, G16 komutunu ve polar koordinat programlama mantığını anlamanıza, farklı kontrol ünitelerindeki uygulamaları görmenize ve kendi CNC programlarınızda bu tekniği daha etkin kullanmanıza yardımcı olacağını umuyoruz. Başarılı ve verimli bir üretim süreci için tezgahınızın ve kontrol ünitenizin kılavuzlarını incelemeyi ve denemeler yapmayı ihmal etmeyin!

G16 polar koordinat komutu, CNC programlamada dairesel paternlerin kolayca oluşturulmasını sağlayan son derece kullanışlı bir fonksiyondur. Bu detaylı rehber, G16’nın temel kullanımından farklı kontrol ünitelerindeki uygulamalarına kadar kapsamlı bilgiler sunmaktadır.

Özetle

  1. Temel Kullanım

    • G16: Polar modu aktif eder (X=yarıçap, Y=açı)
    • G15: Polar modu iptal eder
    • Modal bir komut olduğu için mutlaka G15 ile kapatılmalıdır
  2. Tezgah Türlerine Göre Kullanım

    • CNC Torna: C ekseni ve canlı takımlarla alın yüzey işlemleri
    • İşleme Merkezi: Dairesel delik paternleri
  3. Kontrol Ünitesi Farklılıkları

    • Fanuc/Haas: Standart G16/G15 kullanımı
    • Siemens: POLAR ON/OF veya CYCLE tanımları
    • Heidenhain: LP/LA komutları veya CYCL DEF
    • Mazak: Konuşma tabanlı arayüzde pattern tanımlama
  4. Avantajlar

    • Programlama kolaylığı
    • Hesaplama hatalarını azaltma
    • Kod okunabilirliğini artırma
  5. Dikkat Edilmesi Gerekenler

    • Mutlaka G15 ile kapatılmalı
    • Düzlem seçimi (G17/G18/G19) kontrol edilmeli
    • Kontrol ünitesine özel syntax’a dikkat edilmeli

Uygulama Önerileri

  1. Yeni başlayanlar için basit delik paternleriyle denemeler yapın
  2. Programlarda açıklama satırları kullanın
  3. Farklı kontrol üniteleri için kılavuzları inceleyin
  4. Güvenlik için her zaman G15 kullanımını unutmayın

Bu kapsamlı bilgiler ışığında G16 komutunu güvenle kullanabilir, programlama verimliliğinizi artırabilirsiniz.

Saygılarımızla,
tr.cncforum.net Ekibi