G-koodi on käskykieli, joka kertoo CNC-koneelle, minne ja miten sen tulee liikkua. Se ohjaa työkalujen sijainteja, leikkausratoja, syöttönopeuksia, koordinaattitiloja ja muita toimintoja, joita tarvitaan digitaalisen suunnittelun muuttamiseksi fyysiseksi osaksi. Vaikka useimmat tuotanto-ohjelmat luodaan CAM-ohjelmistolla, peruskomentojen ymmärtäminen auttaa insinöörejä ja käyttäjiä näkemään, miten ohjelmointivalinnat vaikuttavat tarkkuuteen, sykliaikaan ja työstöriskiin.
Tämä opas selittää, mitä G-koodi on, miten ohjelmat siirtyvät CAD- ja CAM-ohjelmista koneenohjaukseen ja miten yleisiä komentoja luetaan. Se käsittelee myös todentamista, yleisiä virheitä ja käytännön optimointimenetelmiä, jotka parantavat tehokkuutta tinkimättä työkalun käyttöiästä tai osan laadusta.
Saada 20% pois päältä
Ensimmäinen tilauksesi
Mikä on G-koodi ja miten se toimii?
CNC-kone ei pysty tulkitsemaan suoraan 3D-mallia tai teknistä piirustusta. Se tarvitsee jäsennellyn ohjelman, joka muuntaa geometrian asemoiksi, nopeuksiksi ja koneen toiminnoiksi. G-koodi tarjoaa tämän koneellisesti luettavan linkin suunnitellun työstöradan ja laitteen fyysisen liikkeen välille.

Mitä G-koodi ohjaa
G-koodia käytetään yleisesti geometrisiin ja valmistelukäskyihin. Se voi pyytää pikaliikettä, hallittua suoraa leikkausta, ympyränmuotoista rataa, poraussykliä, koordinaatistoa tai kompensaatiotilaa. Osoitesanat, kuten X, Y ja Z, määrittelevät lineaarisia asemia, kun taas A, B ja C voivat ohjata kiertoakseleita.
Toisin sanoen lisätään prosessitietoja. F yleensä asettaa syöttönopeuden, S asettaa karan nopeuden ja T tunnistaa työkalun. G-koodi toimii M-koodien ja ohjainkohtaisten ohjeiden kanssa, jotka käsittelevät karan toimintaa, jäähdytysnestettä, työkalunvaihtoja, taukoja ja ohjelman suorittamista.
Kuinka CNC-ohjaimet lukevat G-koodia
CNC-ohjain lukee ohjelman lohkoissa, yleensä rivi kerrallaan. Jokainen lohko sisältää sanoja, jotka muodostuvat kirjaimesta ja arvosta. Esimerkiksi G01 X40.0 Y15.0 F300 pyytää ohjattua lineaarista liikettä ohjelmoituun asemaan annetulla syöttönopeudella.
Monet komennot ovat modaalisia, eli ne pysyvät aktiivisina, kunnes ne korvataan toisella saman ryhmän komennolla. Ohjelma voi läpäistä ohjaimen syntaksitarkistuksen ja silti olla vaarallinen, jos siirtymät, työkalut, koordinaatit tai syötöt ovat väärin. Simulointi ja asetuksen varmennus ovat siksi olennaisia ennen leikkausta.
CAD-mallista juoksevaan G-koodiin
Nykyaikaiset CNC-ohjelmat alkavat yleensä CAD-mallilla ja teknisellä piirustuksella. Malli määrittelee geometrian, kun taas piirustus ilmoittaa toleranssit, pintakäsittelyt, kierteet, kriittiset mitat ja muut vaatimukset, jotka vaikuttavat työstöstrategiaan.
Työstöratojen luominen CAD- ja CAM-ohjelmilla
Ohjelmoija tuo mallin CAM-ohjelmistoon, määrittelee aihion ja työkoordinaatistojärjestelmän ja valitsee koneen suunnan. Työkalut, pitimet, syötöt, nopeudet, sivuttaisaskeleet, lastuamissyvyydet ja lähestymistavat määritetään sitten rouhintaan, viimeistelyyn, poraukseen, kierteitykseen ja muihin operaatioihin.
CAM laskee työstöradat ja voi näyttää jäljellä olevan aihion tai ilmeiset häiriöt. Ohjelmoijan on kuitenkin otettava huomioon jäykkyys, lastunpoisto, muodonmuutos, työkappaleen kiinnitys ja työkalun käyttö. Matemaattisesti oikea rata voi olla tehoton tai epävakaa, jos näitä valmistustekijöitä ei oteta huomioon.
Postprosessorin käyttö CNC-koneessa
CAM-työstörata ei ole vielä konevalmis. Postprosessori muuntaa sen NC-koodiksi, joka vastaa tiettyä konetta ja ohjainta. Se määrittelee syntaksin, ohjelmamuodon, työkalunvaihtologiikan, työkoordinaattisiirrot, kiertoakselin toiminnan ja tuetut työkierrot.
Kaikki CNC-koneet eivät tulkitse koodia samalla tavalla. Komento voi toimia eri tavalla jyrsinkoneella ja sorvilla, ja eri ohjainmerkeillä voi olla käytössään eri asetuksia. Postprosessorin on vastattava koneen todellista kokoonpanoa, ja tärkeät tulosteet on tarkistettava koneen käyttöohjetta vasten.
Ohjelman lataaminen, simulointi ja suorittaminen
Jälkikäsittelyn jälkeen NC-tiedosto siirretään CNC-ohjaukseen. Ennen tiedoston suorittamista käyttäjä vahvistaa työkalut, siirtymät, aihion sijainnin, kiinnittimen, työkappaleen kiinnitysvälin, materiaalin ja ohjelmaversion. Näiden tietojen on vastattava CAM-ohjelmoinnissa käytettyjä oletuksia.
Simulointi, grafiikkatila, yksittäislauseinen suoritus, alennettu pikaliikenopeus, syötön ohitus ja koeajot auttavat varmistamaan järjestyksen turvallisesti. Asiakkaat toimittavat yleensä CAD-tiedostoja, piirustuksia, materiaali-, määrä- ja viimeistelyvaatimuksia G-koodin sijaan, koska lopullisen ohjelman on vastattava toimittajan koneita, työkaluja ja kiinnittimiä.
AG-koodin lukeminen ohjelmassa
AG-kooditiedosto saattaa näyttää monimutkaiselta, mutta sen rakenne helpottuu, kun jokainen lohko jaetaan liiketilaan, koordinaatteihin, prosessiarvoihin ja aputoimintoihin.

Ohjelmalauseet, koordinaatit, syöttö ja karan nopeus
Lause voi alkaa valinnaisella järjestysnumerolla, kuten N10. X, Y ja Z määrittävät yleensä lineaariakselien asemat, kun taas A, B tai C edustavat kiertoakseleita. F asettaa syöttönopeuden, S määrittää karan nopeuden, T kutsuu työkalua ja M-koodit ohjaavat koneen tukitoimintoja.
Tarkastellaan tätä yksinkertaistettua jyrsintäesimerkkiä:
G21 G17 G90
T1 M06
G54
S3000 M03
G00 X0 Y0
G43 H01 Z20.0
G01 Z-2.0 F150
G01 X40.0 F400
G00 Z20.0
M30
Se valitsee metriset yksiköt, XY-tason ja absoluuttisen paikoituksen; lataa työkalun; aktivoi työkoordinaatiston siirron; käynnistää karan; lähestyy kappaletta; soveltaa työkalun pituuskompensaatiota; suorittaa lineaarisen lastuamisen; vetäytyy; ja lopettaa ohjelman. Se on opetusesimerkki ja sitä on mukautettava ennen käyttöä oikealla koneella.
Absoluuttinen ja inkrementaalinen paikannus
G90 valitsee normaalisti absoluuttisen paikoituksen. Koordinaatit mitataan aktiivisesta ohjelman nollasta, joten X40.0 tarkoittaa siirtoa X40.0:aan nykyisessä työkoordinaatistossa. Tätä tilaa on helppo tarkastella, koska jokainen komento osoittaa määriteltyyn sijaintiin.
G91 valitsee normaalisti inkrementaalisen paikoituksen, jossa jokainen koordinaatti kuvaa liikettä nykyisestä sijainnista. Molemmat tilat ovat hyödyllisiä, mutta tahaton kytkin voi siirtyä jokaisella myöhemmällä liikkeellä. Turvalliset ohjelmat asettavat vaaditun tilan selkeästi ja palauttavat sen paikallisten inkrementaalisten operaatioiden jälkeen.
G-koodi vs. M-koodi
G-koodit määrittelevät pääasiassa liikkeen, koordinaatiston, yksiköt, kompensaation ja työstökierrot. M-koodit ohjaavat tukitoimintoja, kuten karan käynnistystä ja pysäytystä, jäähdytysnestettä, työkalunvaihtoja, taukoja ja ohjelman loppua.
Ero on hyödyllinen, mutta ei täysin yleinen, koska ohjaimet saattavat tukea mukautettuja toimintoja. Lauseessa, kuten S3000 M03, S-sana pyytää karan nopeutta ja M03 käynnistää karan pyörimisen. Myöhempi G01-komento ohjaa sitten leikkausliikettä.
Yleisiä G-koodikomentoja
Yleisimmät komennot kattavat liikkeen, tasot, yksiköt, paikannuksen, siirtymät, kompensaation ja toistuvat syklit. Tarkka syntaksi vaihtelee ohjainten välillä, joten koneen käyttöohje on lopullinen viittaus.
| Komento | Toiminto | Tyypillinen käyttö | Ohjelmointihuomautus |
| G00 | Nopea paikannus | Lähestyminen tai vetäytyminen | Varmista, että reitti on vapaa |
| G01 | Lineaarinen interpolaatio | Suorat leikkausliikkeet | Käyttää aktiivista syöttönopeutta |
| G02 / G03 | Myötäpäivään / vastapäivään kaari | Pyöreät profiilit ja säteet | Vaatii oikean taso |
| G17 / G18 / G19 | Valitse XY- / XZ- / YZ-taso | Kaaret ja kiinteät työkierrot | Muuttaa kaaritietojen lukutapaa |
| G20 / G21 | Tuuma-/metriyksiköt | Asettaa ohjelmayksiköt | Varmista ennen liikettä |
| G90 / G91 | Absoluuttinen / inkrementaalinen paikannus | Ohjauskoordinaattien merkitys | Odottamattomat muutokset siirtyvät myöhempään siirtoon |
| G54-G59 | Työkoordinaatistot | Paikantaa kappaleen nollakohdan | Täytyy vastata asetuksia |
| G40 / G41 / G42 | Peruuta / vasen / oikea leikkurin kompensaatio | Säätää työkalun säteen mukaan | Tarvitsee sopivat johtoliikkeet |
| G43 | Työkalun pituuden kompensointi | Korjaa työkalun pituuden | Kutsu oikea H-offset |
| G81-G89 | Yleisiä säilytysjaksoja | Reiän teko | Tiedot vaihtelevat ohjaimen mukaan |
G00-, G01-, G02- ja G03-liikekomennot
G00-koodi siirtää akselit nopeasti, kun työkalu ei leikkaa. Se säästää sykliaikaa, mutta radan on oltava vapaa, koska useita akseleita voi liikkua yhdessä. G01 luo suoran lastuamisen aktiivisella syöttönopeudella ja sitä käytetään monissa jyrsintä- ja sorvausliikkeissä.
G02 ja G03 luovat myötä- ja vastapäivään ympyränmuotoisen interpoloinnin. Ohjelmoija määrittää päätepisteen ja joko kaaren keskipisteen tai säteen. Valittu taso – G17, G18 tai G19 – määrittää, mitkä akselit muodostavat ympyrän.
G17, G18, G19, G20, G21, G90 ja G91
G17 valitsee normaalisti XY-tason, G18 XZ-tason ja G19 YZ-tason. Tason valinta vaikuttaa kaariin ja joihinkin kiinteisiin työkiertoihin. Väärä taso voi aiheuttaa hälytyksen tai siirtää työkalun väärään suuntaan.
G20 ja G21 valitsevat tuuma- ja metriset yksiköt, kun taas G90 ja G91 valitsevat absoluuttisen ja inkrementaalisen paikoituksen. Nämä tilat pysyvät aktiivisina, kunnes niitä muutetaan, joten luotettavat ohjelmat ilmoittavat ne selkeästi lähellä alkua ja ennen kriittisiä operaatioita.
Työkoordinaatiston siirrot, työkalun kompensaatio ja kiinteät työkierrot
Työkoordinaatiston siirrot, kuten G54 - G59, yhdistävät ohjelmoidun nollapisteen kappaleen todelliseen sijaintiin. Työkalun pituuden kompensointi korjaa asennetun työkalun pituuden, kun taas terän kompensointi mahdollistaa hallitut muodon säädöt työkalun säteen perusteella.
Kiinteät työkierrot yhdistävät toistuvat reiän koneistustoiminnot tiiviiksi käskyiksi. Ne voivat ohjata lähestymistä, syöttösyvyyttä, vetäytymistasoa ja toistuvia asentoja. Ne lyhentävät ohjelman pituutta, mutta ohjelmoijan on ymmärrettävä ohjaimen työkiertoparametrit ja vetäytymiskäyttäytyminen.
Yleisiä G-koodivirheitä ja ohjelman varmennus
Useimmat viat johtuvat ohjelman ja fyysisten asetusten välisestä yhteensopimattomuudesta pikemminkin kuin yhdestä tuntemattomasta komennosta. Väärät siirtymät, työkalut, varastopaikat tai koneoletukset voivat muuttaa kelvollisen koodin törmäykseksi tai hylätyksi osaksi.

Koordinaatti-, siirtymä-, syöttö- ja karan virheet
Väärät etumerkit, desimaalipisteet, yksiköt tai paikoitustilat voivat lähettää työkalun väärään paikkaan. Työkappaleen ja työkalun siirtymän virheet ovat erityisen vaarallisia, koska graafinen työstörata voi näyttää oikealta, kun taas todellinen koneen nollapiste on väärä.
Syöttö- ja karan arvojen on sovittava työkaluun, materiaaliin, toimintaan ja koneeseen. Aggressiiviset arvot voivat rikkoa työkaluja tai vääristää osia, kun taas liian varovaiset asetukset voivat aiheuttaa hankausta, kuumenemista, huonoa viimeistelyä ja pitkiä sykliaikoja. Ohjelmien tulisi asettaa turvallisuuskriittiset tilat eksplisiittisesti sen sijaan, että ne luottaisivat koneen aiempiin tiloihin.
Työkalujen, kiinnittimien ja koneiden törmäykset
Mahdollisia törmäyksiä ovat esimerkiksi jyrsimen ajautuminen puristimeen, pitimen kosketus seinään, karan lähestyminen kiinnitintä tai pyöröpöydän osan siirtäminen koneen rakenteeseen. Moniakseliohjelmat vaativat erityistä huomiota, koska useampi komponentti liikkuu työalueella.
Tarkastus on tehokkaampi, kun se sisältää todellisen työkalun kokoonpanon, aihion, kiinnittimen, koneen liikkeet ja kiertorajoitukset. Asetusarkin on myös vastattava ohjelmaa; oikea työstörata voi silti epäonnistua, jos käyttäjä asentaa väärän pitimen, työkalun pituuden, leukojen asennon tai kiinnittimen suunnan.
Simulointi, testiajot ja ensimmäisen osan tarkastus
Tarkastuksen tulisi alkaa CAM-ohjelmassa ja jatkua koneella. Takaisinpiirto tarkistaa radan, kun taas konesimulointi voi sisältää akselirajoja, pyörimisliikkeen, kiinnittimet ja törmäysgeometrian. Aina kun mahdollista, lähetetty NC-tiedosto tulisi tarkistaa pelkän alkuperäisen CAM-radan sijaan.
Koneella yksittäisten lauseiden ja jäljellä olevan matkan näytöt, alennetut pikaliikenopeudet ja syöttöasetusten ohitukset auttavat ohjelman testaamisessa. Ensimmäistä valmista osaa tulisi sitten tarkastaa piirustusta vasten mittojen, reikien sijaintien, pinnanlaadun, työkalun kulumisen, työkappaleen kiinnityksen ja peruspisteiden välisten suhteiden varmistamiseksi.
Kuinka optimoida G-koodia?
Optimointi ei ole pelkästään tiedoston lyhentämistä. Tavoitteena on vähentää leikkaamatta jäävää aikaa ja parantaa yhdenmukaisuutta vaikeuttamatta prosessin todentamista tai vähentämättä sen vakautta.
Tarpeettomien siirtojen ja työkalujen vaihtojen vähentäminen
Tehokkaat ohjelmat rajoittavat liiallista sisäänvetoa, toistuvaa paikoitusta ja vältettävissä olevia nopeita liikkeitä. Vapaan korkeuden tulisi suojata työkalua ja kiinnitintä pakottamatta jokaista toimintoa käyttämään tarpeetonta aikaa liikkumiseen ilmassa.
Työvaiheet voidaan ryhmitellä työkaluittain työkalunvaihtojen vähentämiseksi, mutta työjärjestyksen on silti hallittava vääristymiä, suojattava peruspisteitä ja säilytettävä jäykkyys. Lyhin reitti ei ole aina turvallisin, joten optimoinnin tulisi säilyttää selkeät vetäytymiset ja käytännölliset turvamarginaalit.
Tasapainotusjakson aika, työkalun käyttöikä ja pinnanlaatu
Suuremmat syöttöarvot eivät automaattisesti johda alhaisempiin kustannuksiin. Lastuamisolosuhteiden on oltava linjassa lastukuorman, työkalun kiinnityskohdan, karan tehon, materiaalin käyttäytymisen ja jäähdytysnesteen syötön kanssa. Liian suuret parametrit voivat lisätä työkalun vaihtoa ja hylkyä.
Työstöradat, joissa on vakaa kosketus ja hallittu nurkkakonvektio, voivat parantaa sekä sykliaikaa että työkalun käyttöikää. Viimeistelylastuissa tulisi käyttää sopivia sivuttaisaskeleita ja työkalun kosketusta vetovaatimusten saavuttamiseksi sen sijaan, että tavoiteltaisiin tarpeetonta pinnanlaatua ei-kriittisillä alueilla.
Kiinteiden työkiertojen ja aliohjelmien käyttö
Kiinteät työkierrot vähentävät toistuvaa koodia porauksessa, avarruksessa ja kierteityksessä. Aliohjelmat ja silmukat ovat hyödyllisiä, kun piirrekuvio toistuu, jolloin pääohjelma voi kutsua varmennettua sekvenssiä eri kohdissa.
Tiivis koodi on arvokasta vain silloin, kun se pysyy ymmärrettävänä. Makrojen ja aliohjelmien tulisi käyttää selkeitä kommentteja, ohjattuja muuttujia ja määriteltyjä rajoituksia, jotta myöhemmät muokkaukset eivät aiheuta odottamatonta liikettä.
G-koodin sovellukset CNC-koneistuksessa
G-koodi tukee monia CNC-prosesseja, mutta koordinaatisto, työkalun liike ja käytettävissä olevat toiminnot muuttuvat konetyypin mukaan. Samat perusperiaatteet – sijainnit, syötöt, nopeudet, siirtymät ja turvallinen liike – pätevät kaikissa näissä sovelluksissa.
| CNC-prosessi | Tyypillinen G-koodin käyttö |
| CNC-jyrsintä | Ohjaa taskuja, muotoja, uria, porauksia ja pintoja |
| CNC-sorvaus | Ohjaa tasosorvausta, halkaisijan leikkausta, uransorvausta, avarrusta ja kierteitystä |
| Poraus ja kierteitys | Reikien asemoiminen ja kiinteiden työkiertojen suorittaminen |
| Moniakselinen työstö | Koordinoi lineaarisia ja pyöriviä akseleita monimutkaisille ominaisuuksille |
| CNC-reititys | Ohjaa leikkausreittejä muovissa, puussa ja komposiiteissa |
Ohjelma on aina luotava ja tarkistettava täsmälleen kyseiselle ohjaimelle, koneen kokoonpanolle, työkaluille ja työkappaleen kiinnitysmenetelmälle.
UKK
Kuinka muuntaa STL G-koodiksi?
Tuo STL-tiedosto CAM- tai leikkausohjelmistoon, aseta kone, materiaali, työkalut ja työstöparametrit, luo sitten työstörata ja vie se oikealla postprosessorilla.
Mitä on G-koodiohjelmointi?
G-koodiohjelmointi on prosessi, jossa luodaan ohjeita, jotka ohjaavat CNC-koneen liikettä, koordinaatteja, syöttönopeutta, karan nopeutta ja työstötoimintoja.
Mitä ovat G- ja M-koodit?
G-koodit ohjaavat pääasiassa työkalun liikettä ja työstötiloja, kun taas M-koodit ohjaavat koneen aputoimintoja, kuten karan käynnistystä, jäähdytysnestettä, työkalunvaihtoa ja ohjelman pysäytyksiä.
Yhteenveto
G-koodi muuntaa työstöaikeen hallituksi CNC-liikkeeksi, mutta luotettavat tulokset riippuvat muustakin kuin komentojen nimistä. Ohjelman on vastattava ohjaimen, työkalujen, siirtojen, kiinnittimien, materiaalin ja piirustusten vaatimuksia. Oikea jälkikäsittely, koneen tunteva simulointi, huolellinen koeajo ja ensimmäisen kappaleen tarkastus toimivat yhdessä vähentäen törmäyksiä, romua ja tarpeetonta sykliaikaa.
TiRapidilla tarjoamme tarkkuus-CNC-koneistusta ja valmistuspalveluita prototyypeille ja pienimuotoisille osille. Tiimimme yhdistää CAD/CAM-ohjelmoinnin, prosessisuunnittelun, työstöradan varmennuksen, hallitut asetukset ja mittatarkastuksen tuottaakseen tarkkoja komponentteja monenlaisille metalleille ja teknisille muoveille.
