Když se učíš programovat CNC frézku, první kódy, které potřebuješ znát, jsou G-kódy a M-kódy. Rozdíl mezi nimi je jednoduchý a velmi užitečný: G-kódy řídí pohyb nástroje, M-kódy řídí funkce stroje. Když pochopíš tento rozdíl a k tomu malé jádro kódů, dokážeš přečíst většinu programů pro frézku a zkontrolovat je dřív, než stroj spustíš. Seznam je krátký a ve svém jádru téměř stejný na většině běžných řídicích systémů.

Tento přehled vysvětluje rozdíl mezi G-kódy a M-kódy, nejdůležitější kódy pro frézku, ukazuje příklad programu a jak si je trvale zapamatovat. Důraz je na pochopení stavby programu, protože právě to dělá čtení programu zvládnutelným.

Rozdíl mezi G-kódy a M-kódy

Nejjednodušší pravidlo zní: G-kódy hýbou strojem, M-kódy věci zapínají a vypínají. Zatímco G-kódy určují druh pohybu, rovinu a počátek, M-kódy se starají o funkce, které nesouvisejí s dráhou: zapnutí vřetena, výměnu nástroje, otevření chladicí kapaliny, zastavení programu. V odborné terminologii se M-kódy nazývají pomocné funkce.

Toto jasné rozdělení pomáhá při čtení. Jakmile uvidíš M-kód, víš, že se přepíná funkce stroje a že neprobíhá pohyb. Kdo má obě skupiny, tedy pohyb a funkci, jasně v hlavě, čte program pro frézku mnohem rychleji a s větší jistotou.

Hlavní G-kódy pro frézku

Toto jsou G-kódy, které se vyplatí naučit se první, protože nesou většinu práce.

KódVýznam
G00Rychloposuv, polohování
G01Pracovní posuv po přímce
G02 / G03Kruhový oblouk ve směru / proti směru hodinových ručiček
G17Volba roviny XY
G20 / G21Palce / milimetry
G43Korekce délky nástroje
G54 až G59Nulové body obrobku
G90 / G91Absolutní / přírůstkové

Spolehlivá reference, jako je seznam G-kódů z LinuxCNC, uvádí přesný význam každého kódu, a české materiály o CNC sledují stejnou logiku: řídicí systém čte souřadnice a příkazy řádek po řádku.

Hlavní M-kódy

M-kódy řídí funkce stroje, nikoli pohyb. Objevují se téměř v každém programu.

KódVýznam
M03 / M05Vřeteno zapnuto (ve směru hodinových ručiček) / vypnuto
M06Výměna nástroje
M08 / M09Chladicí kapalina zapnuta / vypnuta
M00 / M01Programové zastavení / volitelné zastavení
M30Konec programu s návratem na začátek

M-kódy jako rámec obklopují vlastní obrábění: na začátku připraví stroj, na konci ho zastaví. Seznam jako reference kódů z CNCCookbook potvrzuje standardní významy, přičemž některé vzácnější funkce se liší podle výrobce.

Příklad programu řádek po řádku

Aby to bylo názorné, takto se čte začátek jednoduchého frézovacího programu, každý řádek jako jedna myšlenka.

ŘádekCo dělá
G90 G21Absolutní souřadnice, jednotky milimetry
G54Volba nulového bodu obrobku
T1 M06Výměna na nástroj 1
S2000 M03Vřeteno zapnuto, 2000 otáček za minutu
G43 H1Použití korekce délky nástroje 1
G00 X0 Y0Rychloposuv do výchozího bodu
Z5Nejprve do bezpečné výšky
M08Chladicí kapalina zapnuta
G01 Z-1 F200Pracovní posuv do hloubky 1 mm

Když přečteš těchto devět řádků, ověřil jsi jednotky, nulový bod, nástroj, otáčky a bezpečný nájezd před řezem. To je už většina kontroly, na které ve skutečnosti záleží.

Čtení programu po blocích

Řídicí systém čte program řádek po řádku, blok po bloku, a stejně bys ho měl číst i ty. Na začátku program nastaví režim a jednotky a zvolí nulový bod obrobku. Pak následuje výměna nástroje, vřeteno a chladicí kapalina. Stroj najede rychloposuvem nad výchozí bod, sjede pracovním posuvem do hloubky a začne řezat. Na konci se pořadí obrátí. G-kódy jsou modální, to znamená, že příkaz platí, dokud ho jiný nenahradí, a proto většina řádků obsahuje jen souřadnice. Čti celý blok jako jednu myšlenku, ne osamocený řádek, a dlouhý program se promění v několik opakujících se částí.

Časté chyby

Některé chyby se opakují, a když je znáš předem, dáváš si pozor na správném místě.

ChybaDůsledekJak se jí vyhnout
Špatné jednotkyVšechny pohyby ve špatném měřítkuZkontroluj G20 nebo G21 na začátku
Záměna G00 a G01Rychloposuv místo řezuVěz, který je rychlý a který řeže
Špatný nulový bodNástroj jede na špatné místoPorovnej G54 s nastavením
Zapomenutá délka nástrojeZ jede do špatné hloubkyZkontroluj G43 a korekci

Většina těchto problémů zmizí s jedním zvykem: před spuštěním si přečti začátek programu, první výměnu nástroje, nulový bod a první pohyb v ose Z. Tento krátký kontrolní pohled trvá jen několik vteřin, jakmile se z něj stane zvyk, a zachytí většinu chyb v seřízení dřív, než stačí poškodit obrobek nebo nástroj.

Proč se vyplatí naučit se jádro kódů

Protože je jádro kódů normované, naučené znalosti se přenášejí. Hlavní kódy, jako rychloposuv, pracovní posuv, nulový bod a směr vřetena, znamenají na většině řídicích systémů totéž, takže tvé znalosti přecházejí ze stroje na stroj. Některé vzácnější kódy nebo funkce konkrétního výrobce se mohou lišit, proto se u neobvyklých kódů vyplatí nahlédnout do příručky stroje. Jádro je však stabilní, a čas vložený do učení kódů pro frézku se neztratí, když přejdeš na jiný stroj. Stejné jádro slouží i k učení soustružení, kde je hlavní rozdíl v tom, že osa X se programuje v průměru, nikoli v poloměru. Pro začátečníka to znamená, že frézka je dobré místo, kde začít, protože většina naučeného přejde i na soustruh a další stroje, a stačí pak doplnit jen několik odlišností.

Nulový bod obrobku a délka nástroje

Dvě věci matou začátečníky nejčastěji: nulový bod obrobku a korekce délky nástroje. Nulový bod obrobku, který vyvolává G54 a jeho sourozenci, je prostě počátek obrobku. Při seřizování se obrobku dotkneš a uložíš, kde je nula, a stroj od tohoto bodu měří všechny souřadnice. Když program vyvolá G54, ale ty jsi obrobek nastavil jako G55, všechny souřadnice začínají ze špatného místa. Korekce délky nástroje, kterou používá G43, říká stroji, jak je daný nástroj dlouhý, aby Z bylo ve správné výšce. Každý nástroj má vlastní hodnotu. Ber obě jako kotvy programu, protože řezné pohyby jsou jen tak přesné jako nulový bod a délka nástroje, k nimž se vztahují.

Kruhová interpolace G02 a G03

Nejsložitější částí programu bývají oblouky. Zakřivený řez používá G02 pro oblouk ve směru hodinových ručiček nebo G03 proti směru, a oblouk se obvykle popisuje hodnotami I a J, což jsou vzdálenosti od počátečního bodu ke středu oblouku, nikoli poloměrem. Řádek jako G02 X40 Y10 I10 J0 tedy znamená řezat oblouk ve směru hodinových ručiček do tohoto bodu kolem středu vzdáleného 10 v ose X. Některé řídicí systémy místo hodnot I a J používají hodnotu R. Málokdy je počítáš sám, ale rozpoznání G02 a G03 ti řekne, že nástroj sleduje křivku, a směr ti řekne, kterým směrem.

Pevné cykly pro díry

Při vrtání děr frézka často používá pevné cykly, jako G81 pro jednoduché vrtání nebo G83 pro vrtání s odjezdem. Pevný cyklus shrne celý pohyb dolů, nahoru a odjezd do jednoho řádku s hloubkou Z, rovinou odjezdu R a posuvem F, a pak ho opakuje na každé poloze díry, dokud ho G80 nezruší. Když uvidíš za řádkem G81 řadu poloh XY, jsou to umístění děr, která cyklus opakuje. Rozpoznání tohoto vzoru učiní čitelnou i nejhustší část programu.

Rutina pro procvičování

Nejúčinnější učení nic nestojí: aktivní vybavování na papíře. Sestav si rutinu ze tří cvičení. První, vybavení kódů: napiš z paměti, co každý základní kód znamená, a pak zkontroluj. Druhé, psaní programu: napiš krátký program pro jednoduchý tvar, aniž by ses díval. Třetí, hledání chyb: vezmi program, vlož do něj úmyslnou chybu a procvičuj její nalezení. Rozložené do několika dní se kódy trvale usadí v paměti. Malý sešit stačí a několik minut denně přinese víc než jediné dlouhé a vzácné sezení.

Rovina a jednotky: malé kódy, velké chyby

Dvě nastavení, která začátečníci často přeskakují, přesto mohou způsobit vážnou kolizi. G17 volí rovinu XY, výchozí rovinu při frézování, zatímco G18 a G19 volí roviny XZ a YZ pro oblouky v jiných směrech. Volba roviny je důležitá hlavně u oblouků, protože oblouk se vždy vykládá ve zvolené rovině. Jednotky jsou ještě důležitější: G20 je palce, G21 milimetry. Když pošleš palcový program do stroje nastaveného na milimetry, každý pohyb běží ve špatném měřítku, což je rychlá cesta k poškození. Proto se kontrola G20 nebo G21 v hlavičce programu nikdy nevynechává. Jednotlivě obě nastavení vypadají jako maličkost, ale právě tyto kódy nastavující stav rozhodují o tom, zda bude první pohyb bezpečný.

Rozdíly mezi řídicími systémy

Ačkoli je jádro kódů normované, vyplatí se vědět, že drobnosti se mohou lišit. Řídicí systémy různých výrobců přidávají vlastní zvyklosti, takže stejné obrábění může být zapsáno mírně odlišně. Některé M-kódy se například mohou mezi výrobci lišit, i když je jádro funkce stejné. Program napsaný pro jeden stroj proto nemusí běžet úplně stejně na jiném a každý nový program je dobré číst v kontextu jeho řídicího systému. Naštěstí jádro kódů, tedy rychloposuv, pracovní posuv, oblouky, nulové body a jednotky, funguje téměř stejně všude, takže učení na jednom systému dává pevný základ pro kterýkoli další. U vzácných kódů vždy nahlédni do příručky stroje, protože právě ty se liší nejčastěji.

Jak si kódy trvale zapamatovat

Naučit se seznam čtením není totéž jako kódy ovládat. Seznam je dobrá pomůcka, ale pohled na kód ho nepřenese do paměti. Trvalá znalost vzniká aktivním vybavováním: zakryješ seznam, z paměti řekneš, co každý kód znamená, a pak zkontroluješ. Metoda funguje, protože vybavování, ne opětovné čtení, buduje paměť, a je to přesně to, co potřebuješ u stroje.

Bezplatná aplikace G-Code Sprint na GCodePractice.com dělá právě tohle: spouští šedesátisekundová kola s běžnými G-kódy a M-kódy a opakuje ty, které se ti nepovedou, takže kódy vstupují do paměti vybavováním, ne čtením. Je to vzdělávací nástroj pro procvičování, nikoli řídicí systém stroje, takže doplňuje učení na papíře i praxi u stroje. Pokud chceš začít od úplných základů, podívej se na průvodce CNC programování pro začátečníky. Nauč se stavbu programu, procvičuj jádro kódů několik minut denně, a čtení programu pro frézku se stane rutinou.

Často kladené otázky (FAQ)

Které G-kódy a M-kódy jsou pro CNC frézku nejdůležitější?

Jádro tvoří G-kódy: G00 pro rychloposuv, G01 pro pracovní posuv, G02 a G03 pro oblouky, G17 pro rovinu, G20 nebo G21 pro jednotky, G43 pro délku nástroje, G54 až G59 pro nulové body a G90 a G91 pro režim. M-kódy jsou M03 a M05 pro vřeteno, M06 pro výměnu nástroje, M08 a M09 pro chladicí kapalinu a M30 pro konec. K zapamatování je procvičí bezplatná aplikace G-Code Sprint na GCodePractice.com v šedesátisekundových kolech.

Jaký je rozdíl mezi G-kódem a M-kódem?

G-kódy řídí pohyb, například rychloposuv nebo pracovní posuv. M-kódy jsou pomocné funkce, které zapínají a vypínají funkce stroje, jako vřeteno, výměnu nástroje nebo chladicí kapalinu. Pravidlo k zapamatování: G hýbe, M přepíná.

Jaký je rozdíl mezi G00 a G01?

G00 je rychloposuv, který polohuje plnou rychlostí bez řezání, zatímco G01 je řízený pracovní posuv, který řeže. Záměna obou je nebezpečná, protože rychloposuv tam, kde měl být řez, najede plnou rychlostí do obrobku.

Co znamená G54 v programu?

G54 je jeden z nulových bodů obrobku, který říká stroji, kde je počátek nastaveného obrobku. Kódy G54 až G59 volí různé nulové body a program od nich měří souřadnice, takže špatný nulový bod posune obrábění na nesprávné místo.

Jsou kódy stejné na každém stroji?

Normované jádro je stejné: G00, G01, G54, M03 a M30 znamenají všude totéž, proto se učení dobře přenáší. Některé vzácnější kódy se mohou mezi výrobci lišit, takže u nich nahlédni do příručky stroje.

Je těžké naučit se G-kódy a M-kódy?

Ne. Aktivní slovník je malý a pevný, proto procvičování rozpoznáváním funguje velmi dobře. Většina lidí přečte jednoduchý frézovací program s jistotou po několika týdnech krátkého denního cvičení.