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ód | Význam |
|---|---|
| G00 | Rychloposuv, polohování |
| G01 | Pracovní posuv po přímce |
| G02 / G03 | Kruhový oblouk ve směru / proti směru hodinových ručiček |
| G17 | Volba roviny XY |
| G20 / G21 | Palce / milimetry |
| G43 | Korekce délky nástroje |
| G54 až G59 | Nulové body obrobku |
| G90 / G91 | Absolutní / 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ód | Význam |
|---|---|
| M03 / M05 | Vřeteno zapnuto (ve směru hodinových ručiček) / vypnuto |
| M06 | Výměna nástroje |
| M08 / M09 | Chladicí kapalina zapnuta / vypnuta |
| M00 / M01 | Programové zastavení / volitelné zastavení |
| M30 | Konec 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.
| Řádek | Co dělá |
|---|---|
| G90 G21 | Absolutní souřadnice, jednotky milimetry |
| G54 | Volba nulového bodu obrobku |
| T1 M06 | Výměna na nástroj 1 |
| S2000 M03 | Vřeteno zapnuto, 2000 otáček za minutu |
| G43 H1 | Použití korekce délky nástroje 1 |
| G00 X0 Y0 | Rychloposuv do výchozího bodu |
| Z5 | Nejprve do bezpečné výšky |
| M08 | Chladicí kapalina zapnuta |
| G01 Z-1 F200 | Pracovní 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ě.
| Chyba | Důsledek | Jak se jí vyhnout |
|---|---|---|
| Špatné jednotky | Všechny pohyby ve špatném měřítku | Zkontroluj G20 nebo G21 na začátku |
| Záměna G00 a G01 | Rychloposuv místo řezu | Věz, který je rychlý a který řeže |
| Špatný nulový bod | Nástroj jede na špatné místo | Porovnej G54 s nastavením |
| Zapomenutá délka nástroje | Z jede do špatné hloubky | Zkontroluj 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í.