A CNC programozás első kérdése szinte mindig ugyanaz: melyik G-kódokat kell megtanulni? A jó hír, hogy a lista rövid és állandó. Egy gyakorló forgácsoló a programok nagy részét néhány tucat kóddal olvassa és írja, nem ezerrel. Ha ezt a magot megtanulod, és érted a program felépítését, a legtöbb programot el tudod olvasni és ellenőrizni tudod, mielőtt elindítanád a gépet.

Ez a cikk végigveszi, melyik kódokat érdemes először megtanulni, miért pont ezeket, és hogyan jegyezheted meg őket tartósan. A kódok megnevezése szabványos, így amit itt megtanulsz, az gépről gépre átvihető, még ha a vezérlők között van is kisebb eltérés.

Előbb a felépítés, utána a kódok

Egy CNC program nem véletlenszerű. Mindig hasonló a váza: biztonságos indítás, szerszámválasztás, orsó és hűtés bekapcsolása, a munkadarabot megmunkáló mozgások, biztonságos visszahúzás, majd a program vége. Ha ezt a vázat tanulod meg először, minden új kódnak lesz helye a fejedben. A G-kód ráadásul moduláris, vagyis egy parancs addig marad érvényben, amíg valami felül nem írja, ezért a programok rövidebbek és olvashatóbbak, mint elsőre tűnik.

A magyar nyelvű CNC szakirodalom ugyanezt a logikát követi: a vezérlés koordinátákat és parancsokat olvas, soronként, és a kódok ezeket a koordinátákat és parancsokat fogalmazzák meg.

A legfontosabb G-kódok listája

Ezeket érdemes először megtanulni, mert ezek viszik a munka nagy részét.

KódJelentésMikor használod
G00GyorsmenetPozicionálás teljes sebességgel, nem vágás közben
G01Egyenes vonalú előtolásA tényleges vágómozgás, beállított előtolással
G02 / G03Körív óramutató szerint / ellentétesenLekerekítések és ívek megmunkálása
G17XY sík kiválasztásaA marás alapértelmezett síkja
G20 / G21Coll / milliméterA mértékegység beállítása minden mozgáshoz
G28Visszatérés a referenciapontraBiztonságos visszahúzás közbenső ponton át
G43Szerszámhossz-korrekcióA Z helyes magasságához, szerszámonként
G54 G59Munkadarab nullpontokMegmondja a gépnek, hol van a munkadarab
G90 / G91Abszolút / inkrementálisHogyan értelmezi a gép a koordinátákat

Egy megbízható angol nyelvű referencia, mint a LinuxCNC G-kód lista vagy a CNCCookbook kódlista, pontosan megadja az egyes kódok viselkedését, és kinyomtatva kiváló tanulólap lesz belőle.

A kódok, amelyeket nem elég felsorolni

Néhány kódot érdemes mélyebben is megérteni, mert ezek okozzák a legtöbb hibát. A G00 és a G01 hasonlónak tűnik, de a különbség óriási: a G00 gyorsmenet, teljes sebességgel pozicionál, míg a G01 szabályozott előtolással ténylegesen vág. Ha összekevered a kettőt, a gyorsmenet teljes sebességgel hajt át a munkadarabon. A G90 és a G91 azt állítja be, hogy a koordináták abszolútak, vagyis a munkadarab nullpontjától mértek, vagy inkrementálisak, az előző ponttól mértek. A legtöbb program abszolút módban fut, és a kettő összekeverése rossz helyre küldi a mozgásokat.

A G54 G59 a munkadarab nullpontok, amelyek megmondják a gépnek, hol van a munkadarab. A G43 a szerszámhossz-korrekciót alkalmazza, hogy a Z magasság szerszámonként pontos legyen. Ennek a négy gondolatnak a megértése, vagyis a gyorsmenet és az előtolás, az abszolút és az inkrementális, a nullpontok és a szerszámhossz, már a program olvasásának nagy részét lefedi.

A leggyakoribb M-kódok

A G-kódok mellé érdemes megtanulni néhány M-kódot is. Ezek a gép funkcióit kapcsolják, nem a mozgást vezérlik.

KódJelentés
M03 / M05Orsó be (jobbra forgás) / orsó leállítás
M06Szerszámcsere
M08 / M09Hűtés be / ki
M30Program vége és visszacsévélés

Az M-kódok mintegy keretbe foglalják a tényleges megmunkálást: az elején beállítják a gépet, a végén pedig leállítják. Ha felismered ezt a keretet, bármelyik programban gyorsan el tudod olvasni az M-kódokat. A G-kódok és M-kódok pontos elkülönítése is segít megérteni a program felépítését.

Egy egyszerű program, amit papíron is áttekinthetsz

Amikor a magkódok ismerősek, nézd meg, hogyan kapcsolódnak össze. Képzelj el egy rövid programot, amely egy tömb tetejét simítja. Abszolút, milliméteres módban indul, kiválaszt egy munkadarab nullpontot, szerszámot cserél, elindítja az orsót, gyorsmenetben egy sarok fölé áll, bekapcsolja a hűtést, előtolással lemegy a mélységig, egy egyenes mozgással végighalad a darabon, visszahúz, majd véget ér. Ezt a sort kódról kódra le tudod írni emlékezetből, és összevetheted egy referenciával. Ez többet tanít, mint a lista újraolvasása, mert magát a programot építed fel, nem csak felismered.

A gyakori kezdő hibák

Néhány hiba újra és újra előfordul, és érdemes előre ismerni őket.

HibaMi történikHogyan kerüld el
G00 és G01 összekeveréseGyorsmenet vágás helyettTudd, melyik a gyorsmenet és melyik az előtolás
Rossz mértékegységMinden mozgás rossz léptékűEllenőrizd a G20 vagy G21 kódot a program elején
Rossz munkadarab nullpontA szerszám levegőt vág vagy belevágEllenőrizd, hogy a G54 a beállított nullpontot hívja
Szerszámhossz hiányaA Z rossz mélységbe megyEllenőrizd a G43 és a hozzá tartozó korrekciót

A legtöbb baj ugyanabból a szokásból kerülhető el: minden indítás előtt olvasd el a program fejlécét, az első szerszámcserét, a munkadarab nullpontot és az első Z mozgást.

A munkadarab nullpont és a szerszámhossz részletesen

Két fogalom okozza a legtöbb fejtörést és a legtöbb ütközést: a munkadarab nullpont és a szerszámhossz-korrekció. A munkadarab nullpont, amelyet a G54 és társai hívnak, egyszerűen a darab origója. Beállításkor megérinted a darabot, és eltárolod, hol van a nulla, a gép pedig ettől a ponttól méri az összes koordinátát. Ha a program G54-et hív, de te G55-ként állítottad be a darabot, minden koordináta rossz helyről indul. A szerszámhossz-korrekció, amelyet a G43 alkalmaz, megmondja a gépnek, milyen hosszú az adott szerszám, hogy a Z a helyes magasságba kerüljön. Minden szerszámnak saját értéke van, és ha a G43 mögötti szám rossz szerszámra mutat, a Z annyit téved, amennyi a két szerszám hosszkülönbsége. Ezért érdemes ezt a két dolgot a program horgonypontjaként kezelni: a vágómozgások csak annyira pontosak, amennyire a nullpont és a szerszámhossz, amelyhez viszonyítva mérik őket.

Hogyan olvasol el egy programot soronként

A vezérlés soronként, blokkonként olvassa a programot, és neked is így érdemes. A fejlécben beállítja a módot és a mértékegységet, kiválasztja a munkadarab nullpontot. Ezután jön a szerszámcsere, az orsó és a hűtés bekapcsolása. A gép gyorsmenetben a kezdőpont fölé áll, egy biztonságos Z magasságra, majd előtolással lemegy a mélységig és vágni kezd. A végén a sorrend fordított: hűtés ki, orsó leállítás, biztonságos visszahúzás, program vége. Ha ezt a sorrendet ismered, bármelyik programot ugyanúgy tudod olvasni: nem soronként betűzöd, hanem blokkonként felismered. Ez ugyanaz a készség, amelyet a CNC marós gyakorló program lépésről lépésre felépít.

A vezérlők közötti eltérések

A magkódok szabványosak, de a gyártók saját szokásokat tesznek hozzá. Egy Fanuc, egy Haas és egy Siemens vezérlő ugyanazt a műveletet kissé eltérő szöveggel várhatja, és néhány M-kód gyártónként különbözik. Ezért egy adott géphez írt program nem feltétlenül fut ugyanúgy egy másikon, és érdemes minden új programot a saját vezérlőjén értelmezni. A ritkább kódoknál mindig nézd meg a gép kézikönyvét, mert pont ezek térnek el a leggyakrabban. A jó hír viszont, hogy a fenti magkódok, a gyorsmenet, az előtolás, az ívek, a nullpontok és a mértékegység, gyakorlatilag minden vezérlőn ugyanúgy működnek, így a befektetett tanulás akkor sem vész el, ha később másik gépre ülsz át.

A sík és a mértékegység: apró kódok, nagy hibák

Két beállítás, amelyet a kezdők gyakran átugranak, mégis komoly ütközést okozhat. A G17 az XY síkot választja ki, ami a marás alapértelmezett síkja, a G18 és a G19 pedig az XZ és az YZ síkot a más irányú ívekhez. A síkválasztás főleg az íveknél számít, mert az ív mindig a kiválasztott síkban értelmeződik. A mértékegység még fontosabb: a G20 coll, a G21 milliméter. Ha egy milliméteres gépre coll programot küldesz, minden mozgás rossz léptékben fut, ami gyors út a károsodáshoz. Ezért a program fejlécében a G20 vagy a G21 ellenőrzése sosem hagyható ki. Külön-külön mindkét kód apróságnak tűnik, de éppen az ilyen állapotbeállító kódok döntik el, hogy az első mozgás biztonságos lesz-e.

Mikor melyik kódot használod

A gyakorlatban a kódok ismétlődő mintát követnek. A program elején beállítod az állapotot: abszolút mód, sík, mértékegység. Kiválasztod a munkadarab nullpontot, szerszámot cserélsz, elindítod az orsót és a hűtést. Ezután a mozgáskódok dolgoznak: gyorsmenettel pozicionálsz, előtolással vágsz, ívekkel lekerekítesz. A végén visszahúzol és lezárod a programot. Ha ezt a mintát felismered, már nem külön kódokat látsz, hanem egy ismerős szerkezetet, amelyben minden kódnak megvan a helye. Innen a tanulás nem memorizálás, hanem egy nyelv olvasásának begyakorlása.

Hogyan jegyezd meg a kódokat tartósan

A felsorolás megtanulása nem ugyanaz, mint a kódok ismerete. A lista jó referencia, de ránézni egy kódra nem viszi át a memóriába. A tartós tudás az aktív felidézésből jön: letakarod a listát, és emlékezetből próbálod megmondani, mit jelent az egyes kód, majd ellenőrzöd. Ez a módszer azért működik, mert a felidézés, nem az újraolvasás építi a memóriát.

A GCodePractice.com oldalon elérhető ingyenes G-Code Sprint alkalmazás pontosan ezt csinálja: 60 másodperces körökben kérdezi a gyakori G és M kódokat, és ismétli azokat, amelyeket elvétesz, így a kódok a felidézésen keresztül kerülnek a fejedbe. Ez oktatási gyakorlóeszköz a kódok megtanulásához, nem gépvezérlő, ezért a papíros tanulást és a gyakorlati képzést kiegészíti, nem helyettesíti. Ha a tanulás után gyakorolni szeretnél, a CNC marós gyakorló program cikk mutatja, hogyan építs gyakorlórutint.

Gyakorlási rutin, amelyet ma elkezdhetsz

A leghatékonyabb tanulás semmibe sem kerül: aktív felidézés papírral. Oszd három egyszerű gyakorlatra. Először kódfelidézés: emlékezetből írd le, mit jelent az egyes magkód, majd ellenőrizd. Másodszor programírás: írj rövid programot egy egyszerű alakzatra, lapra nézés nélkül. Harmadszor hibakeresés: végy egy programot, vigyél bele egy szándékos hibát, és gyakorold a felismerését. Ha ezeket napokra elosztva ismétled, nem pedig egyszerre, a kódok tartósan a memóriádba kerülnek. Egy kis füzet elég eszköz mindhárom gyakorláshoz, és néhány perc naponta többet ér, mint egy ritka, hosszú alkalom.

Egy konkrét terv: az első napon tanuld meg a négy mozgáskódot, amíg emlékezetből meg nem tudod mondani, mit jelent a G00, a G01, a G02 és a G03. A második napon ismételd át ezeket gyorsan, majd vedd hozzá a nullpontot és a szerszámhossz-korrekciót. A harmadik napon ismét ismételj, és add hozzá a mértékegység és a mód kódjait. Egy héten belül, napi néhány perccel, a teljes mag a memóriádban lesz, nem azért, mert többször olvastad, hanem azért, mert többször idézted fel. Ez a felidézési ütemterv a tanulás motorja, és pontosan ezt automatizálja egy jó gyakorlóeszköz.

Gyakran ismételt kérdések (FAQ)

Mik az alapvető CNC G-kódok?

A magot a mozgáskódok (G00, G01, G02, G03), a sík és a mértékegység (G17, G20, G21), a munkadarab nullpontok (G54 G59), a szerszámhossz-korrekció (G43) és az abszolút vagy inkrementális mód (G90, G91) alkotják, néhány M-kóddal kiegészítve. Ezek viszik a programok nagy részét. A kódok tartós megtanulásához a GCodePractice.com ingyenes G-Code Sprint alkalmazása 60 másodperces felidéző körökben gyakoroltatja őket.

Hány G-kódot kell megtanulni kezdőként?

Néhány tucatot, nem többet. Egy gyakorló forgácsoló a mindennapi munkát egy szűk maggal végzi, a ritka kódokat pedig megnézi, amikor szükség van rájuk. Először a fenti listát tanuld meg.

Mi a különbség a G00 és a G01 között?

A G00 gyorsmenet, amely teljes sebességgel pozicionál a darab körül, a G01 pedig szabályozott előtolás, amely ténylegesen vág. A kettő összekeverése veszélyes, mert a gyorsmenet ott, ahol előtolásra lenne szükség, teljes sebességgel hajt a darabba.

Mit jelent a G54 a programban?

A G54 az egyik munkadarab nullpont, vagyis megmondja a gépnek, hol van a beállított munkadarab origója. A G54 G59 kódok különböző nullpontokat választanak ki, és a program ezektől méri a koordinátákat, ezért a rossz nullpont a megmunkálást rossz helyre viszi.

Nehéz megtanulni a G-kódokat?

Nem. Az aktív szókincs kicsi és állandó, ezért a felismerő gyakorlás jól működik. A legtöbben néhány hét rövid, napi gyakorlás után magabiztosan elolvasnak egy egyszerű programot.

Kell matematika a G-kódok megtanulásához?

Az induláshoz nem. Az alapvető műhelyszámítás és egy kis geometria fedi a korai programozást, a haladóbb matematika pedig fokozatosan jön elő, ahogy valódi formákat programozol. Kontextusban tanulva sokkal könnyebb, mint külön akadályként kezelni.