İçeriğe geç
GMacros
Menü

Rehber

CNC programlama dilleri: G-kodu, M-kodları ve tezgâh lehçeleri

CNC programlama dilleri nelerdir? G-kodu (ISO 6983), M-kodları, Fanuc, Siemens, Heidenhain lehçeleri, woodWOP, Xilog, CAM ve post-processor.

Yayın: 8 dk okuma

Bir CNC tezgâhı çizim okumaz; satır satır verilen komutları okur. Bu komutların yazıldığı dile genel olarak CNC programlama dili denir. Pratikte tek bir dil yoktur: ortak bir çekirdek (G-kodu) ve üstüne her kontrol ünitesi üreticisinin eklediği lehçeler vardır. Mobilya ve ahşap router dünyasında ise bazı tezgâh üreticileri G-kodu yerine kendi program biçimlerini kullanır. Bu yazı, tezgâhın başındaki operatörün ve CAM ile çalışan teknik ressamın bilmesi gereken çerçeveyi çizer: G-kodu ne, M-kodu ne, lehçeler nerede ayrılır ve bugün kodu neden çoğunlukla bir yazılım yazar.

G-kodu: ortak dil (ISO 6983 / RS-274)

G-kodu, sayısal denetimli tezgâhlar için geliştirilen ve bugün hâlâ temel olan programlama dilidir. ABD'de EIA RS-274 (yaygın sürümü RS-274-D), uluslararası alanda ISO 6983 standardı olarak tanımlanmıştır; Avrupa'da bu yüzden "ISO kodu" da denir. Program bloklardan (satırlardan) oluşur; her blok bir ya da birkaç adres + sayı çiftinden kurulur:

  • N: blok (satır) numarası — isteğe bağlıdır.
  • G: hazırlık komutu — hareket türü, düzlem, birim, koordinat sistemi.
  • X, Y, Z (A, B, C): hedef koordinatlar ve döner eksenler.
  • I, J, K / R: yay merkezi ya da yarıçapı.
  • F: ilerleme hızı (genellikle mm/dk), S: iş mili devri (dev/dk).
  • T: takım numarası, D / H: takım yarıçapı ve boy telafisi kayıtları.
  • M: yardımcı (makine) komutu — iş mili, soğutma, takım değişimi, program sonu.

G-kodlarının çoğu kalıcıdır (modal): bir kez G01 yazıldıktan sonra sonraki satırlarda başka bir hareket kodu gelene kadar geçerli kalır. Bu yüzden bir programı ortasından okumak yanıltıcı olabilir; o satırda hangi modların etkin olduğunu bilmek için yukarıya bakmak gerekir.

Temel G kodları ve M kodları tablosu

Aşağıdaki kodlar freze ve router kontrol ünitelerinin büyük çoğunluğunda aynı anlamı taşır. Yine de anlamı üreticiye ve tezgâh tipine göre değişen kodlar vardır (örneğin birim seçimi Fanuc'ta G20/G21, Siemens'te G70/G71); son söz her zaman tezgâhın kendi programlama kılavuzundadır.

KodAnlamıNot
G00Hızlı konumlamaKesim yapmadan en yüksek hızla gider; talaş kaldırmaz
G01Doğrusal kesme hareketiF ile verilen ilerleme hızında düz çizgi
G02 / G03Dairesel hareket (saat yönü / tersi)Merkez I/J/K ya da R ile verilir
G04Bekleme (dwell)Süre adresi kontrol ünitesine göre değişir
G17 / G18 / G19Çalışma düzlemi XY / XZ / YZYay ve telafi bu düzlemde hesaplanır; router'da çoğunlukla G17
G20 / G21İnç / milimetre (Fanuc tarzı)Siemens'te G70/G71
G28Referans noktasına dönüşFanuc tarzı
G40 / G41 / G42Takım yarıçapı telafisi: iptal / sol / sağTelafi CAM'de mi kontrolde mi yapılacak, tek yerde seçilir
G43 / G49Takım boyu telafisi aç / iptalH kaydıyla
G54G59İş parçası sıfır noktalarıMasadaki farklı istasyonlar için ayrı sıfır
G80 / G81 / G83Çevrim iptali / delik delme / kademeli delmeDelik çevrimleri
G90 / G91Mutlak / artımsal koordinatKarıştırılması en tehlikeli ikili
M03 / M04 / M05İş mili saat yönü / ters / durS devriyle birlikte
M06Takım değişimiRouter'larda magazin davranışı üreticiye özgü
M08 / M09Soğutma aç / kapatAhşap router'da çoğunlukla toz emme ya da kullanılmaz
M00 / M01Program durdurma / isteğe bağlı durdurmaOperatör onayı için
M30Program sonu ve başa dönüşBazı ünitelerde M02

Küçük bir örnek: 100 × 60 mm dikdörtgen kontur

Aşağıdaki Fanuc tarzı program, 100 × 60 mm'lik bir dikdörtgenin dış konturunu 6 mm derinlikte, takım yarıçapı telafisiyle keser. Her satırın yanında ne yaptığı yazılıdır:

  • O1000 (DIKDORTGEN 100X60) — program numarası ve açıklama
  • G21 G17 G90 G40 G80 — milimetre, XY düzlemi, mutlak koordinat; telafi ve çevrimler iptal (güvenli başlangıç)
  • T1 M06 — 1 numaralı takımı tak
  • G54 G00 X-10. Y-10. S18000 M03 — 1. sıfır noktası, parçanın dışındaki giriş noktasına hızlı git, iş milini 18.000 dev/dk çalıştır
  • G43 H1 Z20. — takım boyu telafisiyle güvenli yüksekliğe in
  • G00 Z5. — yaklaşma yüksekliği
  • G01 Z-6. F2000 — parçanın dışında 6 mm derinliğe dal
  • G41 D1 X0. Y0. F6000 — sol telafiyi açarak köşeye gir (dış kontur, tırmanma yönü)
  • X100.Y60.X0.Y0. — dört kenar
  • G40 G01 X-10. Y-10. — telafiyi kapatarak parçadan uzaklaş
  • G00 Z20. — güvenli yüksekliğe çık
  • M05 — iş milini durdur
  • M30 — program sonu

Kontrol ünitesi lehçeleri: Fanuc, Siemens, Heidenhain, Osai

Çekirdek komutlar ortak olsa da her kontrol ünitesi üreticisi dile kendi eklerini yapmıştır. Bir tezgâh için yazılmış program başka bir kontrolde genellikle olduğu gibi çalışmaz; farklar çoğunlukla program başlığında, takım çağrısında, çevrimlerde ve değişken kullanımındadır.

  • Fanuc: dünyada en yaygın kontrol ailelerinden biri; birçok üretici "Fanuc uyumlu" sözdizimi kullanır. Yukarıdaki örnek bu tarzdadır.
  • Siemens Sinumerik: ISO komutlarının yanında kendi yüksek seviyeli dil öğelerine (değişkenler, CYCLE81 gibi adlandırılmış çevrimler) sahiptir; ShopMill/ShopTurn gibi atölye tipi (diyalog) programlama arayüzleri sunar.
  • Heidenhain: kendi Klartext (düz metin, diyalog) diliyle bilinir: L X+100 Y+0 RL F6000 gibi satırlar G kodlarından farklı bir yapıdadır. Çoğu Heidenhain kontrol ISO programı da çalıştırabilir.
  • Osai, Fagor, Mitsubishi, Haas ve diğerleri: ISO temelli, üreticiye özgü çevrim ve M kodlarıyla. Yerli ahşap router'larda Osai ve Asya menşeli kontrol üniteleri (LNC, Syntec gibi) sık görülür.

Mobilya router tarafı: woodWOP, Biesse ve Xilog

Levha işleyen büyük marka tezgâhlarda operatör çoğu zaman G-kodu görmez. Tezgâh üreticisinin yazılımı, işlemleri makro bloklar halinde tutan kendi program biçimini kullanır:

Tezgâh / yazılımProgram biçimiYapı
Homag / Weeke — woodWOP.mprParça ölçüsü, değişkenler ve işlem blokları (kontur, delik, kanal)
Biesse — BiesseWorks / bSolid.bpp, .cixÜreticinin kendi işlem ve değişken yapısı
SCM — Xilog / Maestro.xxl, .pgmXilog dili; delik ve freze makroları
Yerli ve genel router'lar.nc, .iso, .tap vb.Doğrudan G-kodu

Bu biçimlerin ortak özelliği parametrik olmalarıdır: parça boyu ve eni değişken olarak tutulur, delikler bu değişkenlere göre konumlanır. Uzantılar ve sözdizimi tezgâh yazılımının sürümüne göre değişir.

Elle programlama mı, CAM ile üretim mi?

Basit bir dikdörtgen ya da birkaç delik tezgâhın başında elle yazılabilir. Ancak iş karmaşıklaştıkça elle programlama hızla sınırına ulaşır:

Elle programlamaCAM ile üretim
Uygun işBasit kontur, delik dizisi, tekrar eden tek parçaSerbest eğriler, desenli kapak, nesting, 3D yüzey
HızKısa programda hızlı, uzunda çok yavaşÇizim hazırsa dakikalar
Hata riskiYazım hatası doğrudan tezgâha giderSimülasyonla önceden görülür
DeğişiklikSatır satır düzeltilirÇizim değişir, kod yeniden üretilir
Bilgi gereksinimiKontrol ünitesini iyi bilmekCAM yazılımı + doğru post

Mobilya atölyesinde gerçekçi durum şudur: operatör G-kodunu okuyabilmeli (bir hatayı teşhis etmek, sıfır noktasını kontrol etmek için), ama kodu yazan CAM yazılımıdır. CAM yazılımlarının sınıflandırması için CAM yazılımı türleri: işleme, eksen ve sektöre göre rehber; Alphacam'in bu zincirdeki yeri için Alphacam nedir? Mobilya ve ahşap CNC için CAD/CAM rehberi yazısına bakın.

Post-processor: CAM ile dil arasındaki çevirmen

CAM yazılımı takım yolunu tezgâhtan bağımsız bir iç biçimde hesaplar. Bu yolu Fanuc tarzı G-koduna mı, Heidenhain Klartext'e mi, woodWOP .mpr dosyasına mı çevireceğine post-processor karar verir. Yani "hangi dili konuşuyoruz" sorusunun yanıtı CAM tarafında post'tadır: aynı çizim, farklı post seçilerek farklı tezgâhlar için çıktı verebilir.

  • Program başlığını ve sonunu (birim, düzlem, güvenli yükseklik) yazar.
  • Takım değişimini kontrolün beklediği komutla verir.
  • Delikleri G81/G83 çevrimine ya da üreticinin delik bloğuna çevirir.
  • Telafinin CAM'de mi kontrolde mi yapılacağını belirler — ikisi birden açıksa takım iki kez kaydırılır.

Post seçimi, test sırası ve sık yapılan hatalar ayrı bir yazıda: Alphacam post-processor nedir? Tezgâha uygun NC kodu nasıl üretilir.

Parametrik ve makro programlama

G-kodunun düz hali sabit sayılarla çalışır. Kontrol üniteleri buna değişken, aritmetik, koşul ve döngü ekleyerek parametrik programlamaya izin verir. En bilinen örneği Fanuc'un Custom Macro B özelliğidir: #100 gibi numaralı değişkenler, IF [...] GOTO koşulları, WHILE [...] DO döngüleri ve G65 ile alt program çağırma. Siemens'te R parametreleri ve kullanıcı değişkenleri, Heidenhain'de Q parametreleri aynı işi görür. woodWOP ve Xilog gibi mobilya tezgâhı biçimleri de parça ölçülerini değişken olarak tutar.

Parametrik program, "en ve boy verilince kapağı kesen" tek bir program yazmayı sağlar; ama mantık tezgâhın içinde, o kontrolün diline bağlı kalır. CAM tarafındaki karşılığı ise parametrik çizim makrolarıdır: ölçüyü alıp geometriyi CAM programında üretir, NC kodunu yine post yazar. Böylece aynı makro her tezgâhta kullanılabilir. Alphacam'de bu makroların nasıl çalıştığı: Alphacam tabanlı parametrik kapı ve kapak makroları nasıl çalışır?.

Alphacam Router ile CNC programlama

Alphacam Router kullanan bir mobilya atölyesinde akış şöyledir: kapak ya da dolap parçası çizilir ya da DXF olarak alınır, işlemler atanır (elle veya Auto Style ile), simülasyonda kontrol edilir ve seçilen post tezgâhın diline uygun dosyayı yazar. Operatörün görevi dili ezberlemek değil; çıktının başlığını, sıfır noktasını ve takım çağrısını okuyup doğrulayabilmektir. İşin asıl zamanı ise çizimde geçer. GMacros makroları bu adımı Alphacam Router içinde hızlandırır: kapak, kapı ve dolap parçalarını ölçüden çizer, kodu yine sizin post'unuz üretir. Paketler için ürünler sayfasına bakın.

Sık sorulanlar

CNC programlamak için hangi dili öğrenmeliyim?

Önce ISO G-kodunun çekirdeğini (G00–G03, G17, G40–G42, G54, G90/G91 ve temel M kodları) öğrenin; bu tüm lehçelerin temelidir. Sonra tezgâhınızın kontrol ünitesinin kılavuzundaki farklara bakın.

G-kodu ile M-kodu arasındaki fark nedir?

G kodları hareketi ve geometriyi tanımlar (doğrusal, dairesel, düzlem, koordinat sistemi); M kodları makinenin yardımcı işlevlerini yönetir (iş mili, soğutma, takım değişimi, program sonu).

Homag ya da Biesse tezgâhı G-kodu kullanır mı?

Operatör genellikle üreticinin kendi biçimiyle (woodWOP .mpr, Biesse .bpp/.cix) çalışır. CAM yazılımı uygun post ile bu biçimi doğrudan üretebilir.

CAM kullanıyorsam G-kodu bilmem gerekir mi?

Yazmanız gerekmez ama okuyabilmeniz gerekir: birim, mutlak/artımsal mod, sıfır noktası ve takım çağrısını kontrol edebilmek, hatalı bir programı tezgâha göndermeden yakalamanızı sağlar.

İlgili ürünler

Yazıda anlatılan işleri Alphacam içinde tek tıkla yapan araçlar: GMacros eklentisi ve makro paketleri. Nasıl satın alındığı ve lisansın nasıl çalıştığı Nasıl çalışır sayfasında.

GMacros ekibi tarafından yazıldı. Alphacam, Hexagon AB'nin tescilli markasıdır; bu rehber bağımsızdır.

WhatsApp