G-kodeprogrammering
G-kode blei først etablert på 1960-talet av Electronics Industry Association (EIA). Kodespråket fekk då namnet RS-274D, men i daglegtale nyttar vi omgrepet G-kode. Bakgrunnen for dette namnet er at mange av kommandoane i dette maskinbaserte språket startar med bokstaven G.
Sjølv om G-kode er meint å vere ein universell standard, har mange CNC-maskinfirma utvikla sine eigne tilleggskodar. Derfor er det viktig at du kjenner til kodespråket for akkurat den maskina du skal jobbe på.
Kor avanserte kodar ei CNC-maskin kan jobbe etter, er også avhengig av utstyret ho har, og av talet på aksar ho kan jobbe rundt. Nøyaktigheita til maskina bestemmer også kor detaljert du kan programmere ho.
Er du i usikker på om maskina kan handtere koden og produsere den delen du ønsker, må du bruke instruksjonsmanualen og kontrollere eigenskapane til maskina.
Den gongen G-kodestandarden blei etablert, hadde maskiner framleis liten minnekapasitet. Dette måtte utviklarane ta omsyn til, og G-kode er derfor eit ekstremt kompakt og konsist språk som kan verke nesten gammaldags ved første augekast.
Døme på samansett kodelinje
G01 X1 Y1 F20 T01 M03 S500
I denne enkle linja gir vi maskina seks ulike instruksjonar:
G01: Utfør ein lineær matebevegelse.
X1/Y1: Flytt til desse X- og Y-koordinatane.
F20: Beveg deg med ei matehastigheit på 20 millimeter per minutt.
T01: Bruk verktøy nr. 1 for å få jobben gjort.
M03: Slå på spindelen.
S500: Still inn ein spindelfart på 500 omdreiingar i minuttet.
Du kan kombinere fleire slike linjer med G-kode slik at dei dannar eit komplett CNC-program. CNC-maskina di vil då lese ei kodelinje om gongen, frå venstre mot høgre og frå topp til botn, som du les ei bok. Kvart sett med instruksjonar er samla på ei linje (i ei blokk).
Målet med kvart G-kodeprogram er å produsere delar på ein så trygg og effektiv måte som mogleg. Derfor finn du vanlegvis G-kodeblokkar ordna i ei rekkefølge som dette:
Start CNC-programmet.
Last inn det nødvendige verktøyet.
Vel spindelturtal og matehastigheit.
Slå på spindelen.
Slå på kjølevæska.
Flytt til ein posisjon over eit arbeidsemne.
Start tilarbeidingsprosessen.
Flytt skjereverktøyet i arbeidsemnet som beskrive i programmet.
Slå av spindelen.
Slå av kjølevæska.
Flytt skjereverktøyet vekk frå arbeidsemnet til ein trygg stad.
Avslutt CNC-programmet.
Dette dømet på flyt er eit enkelt program som bruker eitt verktøy for éin operasjon. I praksis vil du ofte nytte fleire ulike verktøy, og då vil du gjenta trinn 2 til 10 til du har oppnådd den konturen eller det mønsteret du ønsker.
Som i andre programmeringsspråk finst det også i G-kode kommandoar som får maskina til å gjenta ei handling heilt til du stoppar ho. Slike kommandoar kallar vi for modale kodar. Ein modal kode fungerer til du slår han av, eller til du modifiserer han med ein annan modal kode. M03 til dømes er ein modal kode som vil køyre ein spindel på ubestemd tid, heilt til du bruker kode M05, som ber maskina stoppe spindelen.
M-kommandoane er maskinkodar, og dei slår på maskinfunksjonar som spindelrotasjon, bruk av kjølevæske og stramming av kjoksen. Men G-kode omfattar også mange andre bokstavkommandoar. Dei består som oftast av ein kombinasjon av ein bokstav og eit tal, til dømes X2. X2 er ein X-koordinat-adressekode som ber maskina flytte verktøyet til verdien 2 på X-aksen.
Bokstavkommandoar i G-kodespråket
Kommando | Forklaring |
---|---|
A | Rotasjon rundt X-aksen |
B | Rotasjon rundt Y-aksen |
C | Rotasjon rundt Z-aksen |
D | Kompensasjon for kuttdiameter (CDC) |
F | Matehastigheit (Feed Rate). Blir oppgitt i mm/min |
G | G-kommando. Blir kombinert med tal for riktig kommando |
H | Offsetverdi for verktøylengd. Viser til ein lagringsplass i maskinminnet, til dømes H2 |
I | Flytting av senter for ein sirkulær boge i X-aksen |
J | Flytting av senter for ein sirkulær boge i Y-aksen |
K | Flytting av senter for ein sirkulær boge i Z-aksen |
M | M-kommando. Blir kombinert med tal for riktig kommando |
N | Blokknummer. Linjenummer i programmet |
O | Programnummer for definisjon av sub-program |
P | Pause. Mellombels stopp |
Q | Blir brukt for bore-syklusar |
R | Radius for sirkulære bevegelsar. Blir også nytta ved boresyklusar |
S | Spindelturtal. Blir oppgitt i o/min |
T | Verktøynummer. Blir oppgitt saman med ein magasinposisjon, til dømes T02 |
X | Akse i koordinatsystemet. Blir oppgitt saman med ein talverdi |
Y | Akse i koordinatsystemet. Blir oppgitt saman med ein talverdi |
Z | Akse i koordinatsystemet. Blir oppgitt saman med ein talverdi |