G code

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

G code – znormalizowany język zapisu poleceń dla urządzeń CNC. Definiuje podstawowe operacje, które należy wykonać, aby obrobić detal na obrabiarce sterowanej numerycznie.

Charakterystyka[edytuj | edytuj kod]

G code opisuje standard ISO 6983 [1], DIN 66025, w Polsce normy: PN-73M-55256, PN-93/M-55251[2].

G code można utworzyć 3 metodami:

  • pisać samodzielnie w edytorach tekstu (np. notatnik) i przenieść go do pamięci obrabiarki,
  • wprowadzać na pulpicie sterującym obrabiarki (nowsze sterowania podpowiadają opcje, które należy zdefiniować do poprawnego działania danej funkcji),
  • wygenerować programem typu CAM po przetworzeniu przez postprocesor dedykowany konkretnej maszynie.

Funkcje, oraz parametry nie opisane w normie różnią się w zależności od producenta. Niektórzy producenci (np. Heidenhain, Mazak) wykorzystują własne języki programowania odmienne od kodów ISO, jednak programy w tych językach są często błędnie nazywane G-kodami.[potrzebne źródło]

Podstawowe komendy G code zawarte są w Polskiej Normie będącej tłumaczeniem normy ISO. Pozostałe polecenia G code oraz M funkcje są dowolnie definiowane przez różnych producentów obrabiarek, gdzie głównym kryterium definiowania jest przeznaczenie maszyny.

Przykładowe funkcje przygotowawcze G[edytuj | edytuj kod]

Kody, które opisują sposób wykonania bądź interpretowania poleceń wydawanych przez programistę.

G00 - instrukcja która opisuje ruch szybki narzędzia bez możliwości obróbki (szybki dojazd)
G01 - ruch narzędzia według interpolacji liniowej
G02 - ruch narzędzia według interpolacji kołowej zgodnie z ruchami wskazówek zegara
G03 - ruch narzędzia według interpolacji kołowej przeciwnie do ruchu wskazówek zegara
G04 - postój czasowy
G05 - interpolacja kołowa współrzędne kartezjańskie,bez określania kierunku obrotu
G06 - interpolacja kołowa,współrzędne kartezjańskie,przejście styczne z poprzedniego konturu
G07 - blok pozycjonowania wzdłużnego
G09 - dokładne zatrzymanie
G20 - wymiarowanie w calach
G21 - wymiarowanie w milimetrach
G40 - koniec korekcji
G41 - korekcja toru narzędzia lewostronna (kompensacja promienia płytki, freza)
G42 - korekcja toru narzędzia prawostronna (kompensacja promienia płytki, freza)
G43 - włączenie kompensacji długości narzędzia (frezarka)
G33 - toczenie gwintu
G53 - współrzędne absolutne maszynowe
G54 - G59 - przesunięcie układu współrzędnych
G76 - cykl planowania zgrubnego
G79 - cykl podcięć
G80 - koniec cyklu wielokrotnego
G81 - cykl nawiercania
G82 - cykl wiercenia z przerwą czasową
G83 - cykl wiercenia z wyciąganiem (usuwaniem) wióra
G84 - cykl gwintowania synchronicznego
G87 - cykl frezowania kieszeni prostokątnej
G90 - pozycjonowanie absolutne
G91 - pozycjonowanie przyrostowe
G94 - programowanie prędkości posuwu w [mm/min]
G95 - programowanie prędkości posuwu w [mm/obr]
G96 - włączenie trybu stałej prędkości skrawania [m/min] (tokarka)
G97 - włączenie trybu stałej prędkości obrotowej wrzeciona [obr/min] (tokarka)

Przykładowe funkcje pomocnicze M[edytuj | edytuj kod]

Za konkretne działania "mechaniczne, fizyczne" odpowiadają funkcje maszynowe, potocznie nazywane funkcjami M.

M00 - stop programu bezwarunkowy
M01 - stop programu warunkowy (zależnie od trybu pracy)
M02 - koniec programu
M03 - włączenie prawych obrotów wrzeciona
M04 - włączenie lewych obrotów wrzeciona
M05 - wyłączenie obrotów wrzeciona
M06 - zmiana narzędzia (polecenie "zmień")
M07 - włączenie chłodziwa przez narzędzie
M08 - włączenie chłodziwa wylewki zewnętrzne
M09 - wyłączenie chłodziwa
M10 (M36) - otwarcie szczęk (zależnie od producenta)
M11 (M37) - zamknięcie szczęk (zależnie od producenta)
M30 - koniec programu i "przewinięcie" do początku.

Inne[edytuj | edytuj kod]

Ponadto można wyróżnić grupę adresową parametrów i osi.

T - kompensacja wymiarów narzędzia (wybór narzędzia)
S - wybór prędkości obrotowej wrzeciona (symbol "S" oraz podana wartość, np. S1500)
F - wybór posuwu (analogicznie do "S")
X - położenie w osi "X" (po adresie występuje wartość bezwzględna lub względna, np. X200)
Y - położenie w osi "Y" (po adresie występuje wartość bezwzględna lub względna, np. Y200)
Z - położenie w osi "Z" (po adresie występuje wartość bezwzględna lub względna, np. Z200)
A - położenie w osi "A" (po adresie występuje wartość bezwzględna lub względna, np. A10)
B - położenie w osi "B" (po adresie występuje wartość bezwzględna lub względna, np. B10)
C - położenie w osi "C" (po adresie występuje wartość bezwzględna lub względna, np. C10)

Przykład programowania[edytuj | edytuj kod]

Blok danych Opis
N10 G90 G21 deklaracja sposobu pozycjonowania (absolutne), deklaracja systemu metrycznego (mm),
N20 T2 M6 deklaracja numeru narzędzia i wymiana narzędzia
N30 G54 D200 S1500 M3 przesunięcie układu współrzędnych do miejsca określonego w rejestrze D200, deklaracja prędkości obrotowej wrzeciona (1500[obr/min]), włączenie obrotów wrzeciona w kierunku CW (zgodnie z ruchem wskazówek zegara)
N40 G01 X10 Y0 Z10 F1200 M8 ruch roboczy do punktu o współrzędnych (10,0,10) z zaprogramowaną prędkością posuwową 1200[mm/min], włączenie chłodziwa
N50 G81 wywołanie cyklu nawiercania (z zadeklarowanym szeregiem parametrów charakteryzujących cykl)
N60 X20 Y20 ponowne wykonanie cyklu G81 w miejscu początkowych współrzędnych (20,20,10)
N70 Y80 ponowne wykonanie cyklu G81 w miejscu początkowych współrzędnych (20,80,10)
N80 G80 odwołanie wykonywania cyklu
N90 G00 X10 Y0 Z100 M5 M9 ruch szybki do punktu o współrzędnych (10,0,100), wyłączenie obrotów wrzeciona, wyłączenie chłodziwa
N90 M30 koniec programu i "przewinięcie" go do początku

Przypisy

  1. Normy ISO 6983
  2. PN-73/M-55256 Obrabiarki do metali. Kodowanie funkcji przygotowawczych G i funkcji pomocniczych M dla obrabiarek sterowanych numerycznie