GRBL Candle 1.1.7

Co je Candle?

Candle GRBL je jednoduchý software pro řízení CNC strojů ideální pro začátečníky a navíc je zdarma. Jazykem programu je angličtina, ale ani ti z vás, kdo angličtinou nevládnou, by neměli mít s pochopením a používáním programu problémy.

Úvodem důležitá informace. Návod je sepsán pro verzi 1.1.7 takže spoustu věcí ve starších verzích nenajdete a stejně tak těžko předvídat, co bude případně v nějaké novější.

Uživatelské rozhraní Candle

Candle umí zobrazit G-kód a obsahuje pouze základní funkce, které jsou potřeba pro spuštění programů v G-kódu. I když nenabízí tolik funkcí jako složitější programy stále je to zcela dostatečné pro „začátečnickou“ práci s CNC strojem. Výhodou je celková přehlednost prostředí, a že v základu obsahuje vlastně vše, co může nejen začátečník běžně potřebovat.

Pro jaké typy CNC strojů lze Candle použít?

Candle využívá zdrojový kód GRBL, který může běžet na Arduinu. Takže pomocí Candle lze ovládat každý CNC stroj, který je řízen Arduinem a nemá více než 3 osy (X, Y, Z). Tento typ programu je určen pro hobby použití, proto se používá hlavně na domácí a malé frézky.

Hobby frézka LUPA v.1

Candle – návod k použití

Pojďme postupně k uživatelskému rozhraní a k použití jednotlivých funkcí.


State (poloha)
Tato část zobrazuje polohu vřetena ve vztahu k pracovním souřadnicím “Work coordinates” a souřadnicím stroje “Machine coordinates“. Zcela zásadní je uvědomit si co které souřadnice znamenají. Zatímco souřadnice stroje udávají polohu vřetene vůči stroji, pracovní souřadnice jsou důležité při samotném obrábění. Velice jednoduše řečeno souřadnice stroje by vás nemusely ani zajímat pokud by vám stačilo, že někam do pracovního prostoru stroje upevníte materiál a dle počátečního bodu obrábění na materiál najedete nástrojem. Nyní by stačilo vynulovat pracovní souřadnice (protože program v G-kódu musí mít dán počátek a ten se udává vůči “nule”) a spustit program. Jenže! Průšvih nastane když se něco při obrábění pokazí. Např. stroj se zasekne / ztratí kroky, nebo se zlomí nástroj apod. Můžete samozřejmě pro pokračování obrábění zkusit najet vřetenem přesně do stejné “nulové” pozice a program spustit znovu, ale s největší pravděpodobností se úplně přesně netrefíte.
Od toho jsou souřadnice stroje. Pokud máte stroj vybavený koncovými spínači, nebo přesněji řečeno spínači pro tzv. houmování, dokážete naprosto přesně a opakovaně nastavit polohu vřetene do této HOME pozice – říkejme tomu třeba základní výchozí pozice, kde jsou souřadnice stroje X,Y,Z=0. Od tohoto místa si můžete odjet třeba do středu pracovního prostoru, souřadnice stroje budou třeba X=305.2, Y=134.7, Z=21.4mm. Čísla jsou to sice nezapamatovatelná, ale to vůbec ničemu nevadí. Vy si jen v tomto místě vynulujete pracovní souřadnice, takže obrábět začnete z pozice X,Y,Z=0. Pokud se cokoliv pokazí a budete se potřebovat dostat na počátek obrábění, stačí opět odjet na HOME a následně se přesunout na výše uvedené nezapamatovatelné souřadnice. Abyste si nemuseli taková čísla pořád pamatovat má Candle různá tlačítka. A o tom už dále v textu.

State – souřadnice

Poznámka: Pokud není váš stroj vybavený koncovými spínači na jednotlivých osách (spínači které slouží pro nájezd vřetene do pozice „HOME“) lze doporučit, abyste při ukončení práce před vypnutím stroje odjeli vřetenem na konec každé osy. Tato poloha pro vás bude počátkem při dalším zapnutí stroje. Mějte ale prosím na paměti, že když stroj vypnete a znovu zapnete nikdy nebudete mít jistotu, že vřeteno bude přesně ve stejné pozici. Mohli jste stroj vypnout v mezikroku motoru a po zapnutí se malinko pootočí. Proto je mnohem vhodnější mít na stroji “houmovací” spínače. Pomocí nich přesunete vřeteno do vždy stejné pozice. Použití spínačů je vždy přesnější než nájezd na konce os tzn. na mechanické dotazy!

Control (ovládání)
První tlačítko je „Home“. Tuto funkci lze použít pouze, pokud máte stroj vybaven koncovými spínači (viz. výše) a stroj je správně nastaven (na úrovni řízení Arduinem). Po spuštění funkce najede vřeteno do pozice dané koncovými spínači. Pokud váš stroj koncové spínače nemá, tuto funkci nepoužívejte. V základním nastavení GRBL jako první najíždí na koncový spínač osa Z a “vynuluje se”. Po ní najíždí současně osy X a Y. Osa, která najede na koncový spínač, se zastaví a “čeká” až na koncový spínač najede i druhá osa. Až potom dojde k “vynulování” obou os. Způsob nájezdu na koncové spínače, např. pořadí, nebo nenajíždění některé osy lze definovat v konfiguračním souboru config.h – define HOMING_CYCLE_0 (1<<Z_AXIS) … Pokud nevíte, co děláte, tak se v config.h nehrabte.

Home

Dalším ovládacím tlačítkem je „Z-probe“ (Z-sonda). K řídící desce s Arduinem lze připojit Z-sondu, která slouží k přesnému výškovému nastavení nástroje. Pokud máte sondu připojenu a správně nastavenu, tak stiskem tohoto tlačítka se vřeteno začne pohybovat dolů, dokud se nástroj nedotkne základny sondy. Co se bude dít dále lze definovat zapsáním G-kódu do kolonky „Probe commands“, která je přístupná na panelu Service>Settings>Connection>Control>Probe commands. Obvyklé nastavení je takové, že se po dotyku „vynuluje“ pracovní souřadnice osy Z, případně ještě vřeteno vyjede nahoru o předem nastavenou vzdálenost.

Z-probe

Další dvě tlačítka jsou „Zero XY“ a „Zero Z“, jejich stisknutím vynulujete pracovní souřadnice v místě, kde se aktuálně nachází vřeteno.

Zero XY, Zero Z

Prvním tlačítkem ve spodní řadě je “Restore origin“ (obnovení počátku). Tohle tlačítko si brzy oblíbíte. Bude to vaše “záchrana” ve spoustě situací. Stisknutím tohoto tlačítka obnovíte předchozí pracovní souřadnice pomocí příkazu G92 (co je G92 vás celkem nemusí zajímat – ale kdyby snad ano … G92 zaznamená aktuální polohu na všech osách). Předchozími pracovními souřadnicemi se rozumí souřadnice, které jste nastavili stiskem tlačítek „Zero XY“ a „Zero Z“ viz. výše.

Restore origin

Tlačítko “Restore origin” se hodí, když při frézování dojde k problému – např. na některé z os motor ztratí kroky, nebo frézování ukončíte stiskem RESET (tím se smažou pozice pracovních souřadnic). Pokud dojde ke ztrátě kroků, stačí stroj znovu “nahoumovat” a opět stisknout “Restore origin“. Stiskem „Restore origin“ pošlete vřeteno do pozice 0, 0, 0 původních pracovních souřadnic – pro vynulování musíte znovu stisknout „Zero XY“ a nastavit nulovou pozici nástroje následovanou stiskem „Zero Z“.
Tyto souřadnice (poslední pracovní) si stroj pamatuje dokud nenastavíte nové. Pamatuje si je jak při vypnutí stroje, tak počítače. Snadno tak můžete večer vše vypnout a druhý den pokračovat přesně od stejného místa.

Tlačítko „Safe position“ (bezpečná pozice) přesune vřeteno dle příkazů v dialogovém okně Service>Settings>Connection>Control>Safe positions commands. Co je pro vás bezpečná pozice si musíte určit sami. Obyčejně se používá pro vyjetí nástroje v ose Z nahoru o danou vzdálenost.

Safe position

Pokud váš stroj nemá koncové spínače lze tuto funkci použít také jako tlačítko „Home“. Stačí v nastavení „Safe positions commands“ vložit kód „G53G00G90Z0; G53G90X0Y0“. Po stisku tlačítka pak vřeteno přejde do výchozí polohy. Funkci těchto tlačítek (Restore origin, Safe position) si řádně otestujte, abyste ji pochopili. Nedoporučuji ale jako souřadnici Z zadávat 0. Pokud máte upnutý nějaký obrobek nebo cokoli na pracovní ploše snadno do těchto předmětů vřeteno a nástroj narazí a dost možná to odnese nástroj.

Tlačítko “Reset” = emergency stop (nouzové zastavení). Po stisknutí se stroj zastaví a vřeteno se vypne. Důležité tlačítko. Pokud je při frézování jakýkoliv problém je tohle poslední záchrana. Doporučuji mít na stroji osazené také mechanické tlačítko ESTOP, které bude suplovat právě tuto funkci.

Pozor! Pokud ve vaší ovládací elektronice používáte Arduino UNO s CNC Shieldem, tak na něm je ESTOP špatně zapojen. Na Shieldu funguje ESTOP jako reset Arduina. Doporučuji ESTOP připojit na pozici RESET/ABORT – to supluje funkci tlačítka “Reset” na obrazovce.

Reset

Tlačítko “Unlock” (odemknutí) slouží k opětovnému zapnutí zařízení po stisknutí tlačítka “Reset“.

Reset

Poznámka: Pochopení způsobu ovládání pozice vřetene, co znamenají souřadnice stroje a co pracovní souřadnice, pochopení výše popsaných funkcí tlačítek a zkrátka zvládnutí základních operací souvisejících s pohybem vřetene a nastavením jeho polohy jsou základní úkony, bez kterých se při obsluze vašeho CNC stroje neobejdete.

User commands (uživatelské příkazy)
Candle umožňuje vytvoření čtyř uživatelsky definovaných funkcí, které jsou přiřazeny tlačítkům 1-4.

User commands

Definice spočívá v zapsání G-kódu do kolonek pro jednotlivá tlačítka v dialogovém okně Settings (nastavení). Na obrázku níže vidíte, že pro tlačítko 1 je nastaveno, aby po jeho stisknutí najelo vřeteno na souřadnice x=0, y=0, z=0 a to rychloposuvem (G0). Stejně jako v textu výše doporučuji v tomto případě důkladně zvážit, zda je nájezd na Z=0 rychloposuvem vhodný. Na obrázku je také vidět zápis G-kódu pro “Z-sondu” (Probe commands) a pro “bezpečnou pozici” (Safe position commands). Až si osvojíte základy programování v G-kódu, tak zjistíte, že s tlačítky se dají dělat divy. Pokud chcete zadat více příkazů G-kódu oddělují se jednotlivé příkazy středníkem.

Panel Settings

Heightmap (výšková mapa)
Panel pro práci s výškovou mapou. Pro její vytvoření a pro její použití. Jen stručně k čemu ji lze použít. Výšková mapa se hodí, když potřebujete, aby nástroj v celé ploše opracovávaného materiálu zajel do přesné hloubky vůči povrchu materiálu. Typicky např. při gravírování nápisů do nerovného podkladu – křivé prkno, vypouklá miska apod. Takřka nezbytné je použití výškové mapy při vytváření DPS (desky plošných spojů) gravírováním. Cuprextit (laminátová deska s měděnou vrstvou) rozhodně není zcela rovný a i upnutím ke stroji se může zdeformovat. Jistě si dokážete představit, jak by vypadala třeba obyčejná drážka frézovaná gravírovací frézou s tvarem břitu V, kdyby někde zajela do hloubky 0,5mm a jinde 0,2mm … byla by různě široká.
Výškovou mapu vytvoříte tlačítkem “Create”, případně můžete použít mapu, kterou jste si vytvořili dříve. Použití je snadné a není třeba podrobnějšího popisu.
Hotovou mapu jednoduše “promítnete” (zaškrtnete políčko “Use heightmap“) na vaše frézovací data a Candle přepočítá souřadnice tak, aby frézování proběhlo přesně s ohledem na křivost povrchu. Tlačítka “Create” a “Open” jsou jasná (vytvořit / otevřít). Tlačítko “Edit mode” slouží k přepínání mezi režimem vytváření mapy a standardním režimem programu.

Heightmap

Možnost vytvořit výškovou mapu je aktivní pouze pokud máte nahraný nějaký program. Stiskem tlačítka “Auto” se nastaví generování mapy v rozsahu, na kterém je program (tam, kde se podle programu má pohybovat nástroj). V sekci “Border” v “W” a “H” lze zadat rozměr mapy manuálně a v “X” a “Y” se nastavuje umístění nastavené plochy mapy. V sekci “Probe grid” v “X” a “Y” se nastavuje počet měřících bodů a v “Zt” a “Zb” se nastavuje rozsah pohybu osy Z.

Heightmap

Spindle (vřeteno)
V této sekci jsou prvky ovládání vřetene. Tlačítkem vřeteno vypnete / zapnete a pomocí posuvníku nastavujete otáčky. Když je spuštěn program (G-kód), tak nelze vřeteno vypnout, ale je možné měnit otáčky.
Kam až vás posuvník pustí nastavíte Service>Settings>Machine information – kolonka Spindle speed min / max. Pozor, nastavené hodnoty určují jen rozsah regulace posuvníkem v Candle a nesouvisí zcela s reálnými otáčkami vřetene. Navíc je potřeba mít správně nastavené max. otáčky i v Arduinu (parametry $30 pro max, $31 pro min.). Toto nastavení souvisí s podrobným a přesným nastavením stroje a přesahuje rámec tohoto článku.

Spindle

Overriding (přenastavení)
V této sekci lze manipulovat s rychlostmi posuvu (Feed rate), rychloposuvu (Rapid speed) a otáčkami vřetene (Spindle speed) když je spuštěn program (G-kód). Toto jsou velmi užitečné funkce. Když je program (G-kód) spuštěn, tak můžete optimalizovat zejména rychlost posuvu nástroje při obrábění (Feed rate), můžete také měnit rychlost přejezdů (Rapid speed) a v neposlední řadě upravovat otáčky vřetene. Rychlost posuvu a otáčky vřetene mají, při vhodně zvoleném nástroji, zásadní vliv na kvalitu obrábění a na životnost nástroje! Pokud chcete přenastavit jednotlivé položky, zaškrtněte políčko a posuvníkem nastavte požadované hodnoty.

Overriding

Jog (ovládání pohybu po osách)
Sekce Jog umožňuje manuálně ovládat 3 osy vašeho stroje. Čtyři směrová tlačítka umístěná vlevo ovládají osy X a Y a dvě šipky vpravo slouží pro ovládání osy Z.

Jog

V rozbalovací nabídce „Step“ (krok) lze nastavit, jak se bude vřeteno po osách pohybovat. Při výběru „Continuously“ (průběžně) bude pohyb probíhat po dobu stisknutí tlačítka. Ostatní volby nabízejí velikost kroku – o jakou vzdálenost se vřeteno ve vybraném směru posune. Vyberte vzdálenost a stiskem směrového tlačítka se vřeteno o tuto vzdálenost posune. Ve středu směrových tlačítek X Y je tlačítko „Stop“ (zastavení). Tímto tlačítkem zastavíte pohyb, pokud jste například předtím spustili posuv vřetene o krok 10mm. Pokud vám přednastavené kroky nevyhovují, můžete do kolonky vepsat vlastní. Pozor, při zadávání desetinného čísla musíte použít tečku, kterou ale nelze z klávesnice napsat. Řešením je vybrat krok, který desetinou tečku obsahuje a změnit jen čísla.
Další rozbalovací nabídka je „Feed“ (rychlost posuvu v mm/min). Vyberte si posuv, který vám vyhovuje. Pomalejší je vhodný pro jemné ruční ovládání. Rychlejší pak použijete při dlouhých přejezdech. Při zadávání vysokých hodnot pozor na mechanické možnosti stroje.
Poslední volbou je zaškrtávací políčko pro zapnutí ovládání pomocí klávesnice. Políčko lze zaškrtnout buď myší nebo klávesou “Scroll/Lock” … tuto klávesovou zkratku si zapamatujte, opravdu se hodí pro rychlé přepínání mezi oběma druhy ovládání. Ještě pozor – pokud je aktivní ovládání klávesnicí, tak nejsou dostupné některé další ovládací prvky. Ovládací prvky pro pohyb osami viz. obrázek:

Numerická klávesnice – ovládání

Ovládání z numerické klávesnice přináší zajímavé možnosti. Pokud posíláte program G-kód z počítače, tzn. máte počítač připojený ke stroji (a k Arduinu), tak můžete např. využít externí USB numerickou klávesnici, tzv. NumPad a dálkově stroj ovládat. Také je možnost použít obyčejný USB GamePad a přes definici klávesových zkratek využívat jeho tlačítek pro ovládání stroje. I když je lákavé použít bezdrátové řešení s Bluetooth doporučuji pro spolehlivý provoz raději spojení kabelem. Pro zajímavost – Gamepad na obrázku dole má celkem 14 tlačítek, takže lze využít opravdu pestrou škálu příkazů. Candle samotný ovládání Gamepadem neumí. Je potřeba použít externí program přes který se klávesové zkratky používané v Candle přiřadí jednotlivým tlačítkům.

NumPad a GamePad

Console (konzole)
V této části jednak vidíte co se děje při stisku ovládacích tlačítek a také tady lze manuálně zadávat příkazy G-kódu (MDI – manual data input). G-kód můžete vkládat jako jednotlivé příkazy, ale klidně i jako soubor příkazů. Příkazy prováděné z konzoly jsou nezávislé na načteném programu.
V případě chyby na stroji se v okně zobrazí její číslo a dá se tak podle seznamu chyb zjistit, co se stalo.

Console

Nahrání a spuštění programu (G-kódu)
Program musíte mít už vytvořený. Candle není určen pro tvorbu programů G-kódu. Program (soubor) otevřete buď pomocí tlačítka Open ve spodní části okna, nebo přes horní lištu „File>Open“. Po otevření programu se několik prvních řádků zobrazí ve spodní části obrazovky.

Zobrazení řádků programu

Pozor na formát dat. Candle pracuje s milimetry. Program může být i v palcích, pak je ale třeba, aby byl v programu uveden kód G20 (palce).

Před spuštěním programu najeďte nástrojem tam, kam potřebujete. Pro spolehlivé určení výšky nástroje se hodí použití dotykové sondy (Z-probe). V nastavené poloze stiskněte tlačítka „Zero XY“ a „Zero Z“ pro vynulování pracovních souřadnic. Po nastavení počátku obrábění stiskněte také tlačítko „Safe position“ a pokud ji nastavíte, viz. popis výše, vřeteno se vrátí zpět do výchozí polohy.

Po načtení program spustíte jednoduše kliknutím na tlačítko „Send“ (odeslat) ve spodní části obrazovky. Candle začne posílat data do řídící jednotky Arduino a vřeteno se začne pohybovat dle programu G-kódu.
Stisknutím „Pause“ (pauza) se zastaví pohyb vřetene, ale vřeteno se nevypne. Pokud potřebujete program úplně zastavit, jednoduše klikněte na „Abort“ (zrušit) a vše se vypne, vč. vřetene. Program znovu (od začátku) spustíte dalším kliknutím na „Send“. Kliknutím na „Reset“ se v zobrazení jednotlivých řádek přesunete na začátek. Vedle tlačítek jsou ještě dvě zaškrtávací políčka. Zaškrtnutím “Check mode” si můžete nechat virtuálně zobrazit, jak bude frézování probíhat. Nelekejte se, pohyb nástroje bude velmi zrychlený. Zaškrtnutím “Autoscroll” nastavíte, že se při frézování bude automaticky listovat programem, takže uvidíte na jakém řádku se právě program nachází (Processed – vyřízeno, In queue – na řadě).

Start od vybraného řádku

Candle má jednu šikovnou vychytávku a sice spuštění programu od libovolného řádku. Vyberte myší řádek (řádek se zvýrazní viz. obrázek výše), od kterého chcete program spustit, najeďte na tlačítko „Send“, klikněte, ale tlačítko myši nepouštějte a objeví se nabídka „Send from current line“ (spustit od aktuálního řádku), přejeďte na nabídku a tlačítko myši pusťte. Objeví se okno s informací jaké příkazy G-kódu Candle před spuštěním provede.

Start od vybraného řádku

Doporučuji věnovat se zejména Z pozici nástroje, aby nedošlo k jeho poškození, pokud nebude mimo obráběný materiál. Někdy se může stát, že se Candle při tomto spuštění zcela zhroutí, zřejmě se to děje jen pokud se pokusíte spustit program od některého z prvních řádků, kde ještě nejsou použity žádné souřadnice X, Y, Z.

Vizualizace G-kódu
Výhoda programu Candle je v zobrazení G-kódu přehlednou formou vč. zobrazení nástroje. S náhledem lze snadno manipulovat myší. Vyzkoušejte si co jednotlivá tlačítka a kolečko na myši dělají. Pro natočení pohledu lze také použít ikonky krychle v pravém horním rohu.

Vizualizace G-kódu

Po spuštění programu se nástroj v Candle začne virtuálně pohybovat. Všimněte si fialové a šedé dráhy na obrázku. Šedá barva vyznačuje dráhu, kterou má nástroj už za sebou. Fialová barva ukazuje část dráhy pro níž byla data již odeslána do řídící elektroniky (do Arduina). Pokud je vzdálenost mezi fialovou tečkou a virtuálním nástrojem příliš malá ukazuje to na nějaký problém v komunikaci mezi počítačem a strojem (Arduinem). Znamená to, že počítač dodává řídící elektronice data pomalu. V extrému může docházet k tomu, že vřeteno nejede, ale poskakuje protože Arduino čeká na další data. Pokud vše bez problému funguje, tak OK, ale pokud ne může být na vině třeba pomalá komunikace.

Vizualizace – dráhy nástroje

Nastavení stroje
Nastavení stroje proveďte dle doporučení výrobce nebo komunity sdružené kolem vašeho CNC stroje.

Nové verze programu Candle
Autor programu neustále něco vylepšuje. Často nějaké drobnosti přidá, ale občas také něco ubere. Aktuální verzi Candle najdete na GitHub.

Článek je samozřejmě volně k dispozici všem zájemcům. Pokud z něj ale budete některé části textu kopírovat pro svou potřebu, budu rád když nám dáte vědět, případně když uvedete zdroj :-).

Článek vznikl s využitím informací z webu CNC Philosophy.

Dotyková sonda pro osu Z

Při nájezdu nástrojem na obráběný materiál se hodí dotyková sonda (tzv. Touch Probe), která umožní rychle a efektivně měřit vzdálenost nástroje od materiálu. Sonda může vypadat třeba jako na fotce. Dotyková destička s kabeláží pro připojení k ovládání frézky.

Dotyková sonda pro osu Z (té díry v desce si nevšímejte, pro výrobu desky byl použit zbytek cuprextitu s dírou 🙂 )

Pokud budete pro obsluhu frézky používat GRBL s Arduinem a CNC shieldem (níže shield pro Arduino UNO), tak můžete sondu zapojit vč. signalizace LED diodou. Pozor! Dioda není vřazena přímo do okruhu sondy, ale je zapojena samostatně. Na diodě dochází k úbytku napětí a při vřazení přímo do obvodu sondy by Arduino nemuselo dotyk správně vyhodnotit. Praktické provedení se signalizací by pak mohlo vypadat třeba tak, že LEDka a konektor pro připojení sondy budou někde na portálu v samostatné krabičce a sonda s krokodýlkem se připojí v případě potřeby.

Zapojení sondy k CNC shieldu (GRBL) se signalizací LED diodou

Na videu ukázka funkce sondy. Tady je signalizace přímo na desce sondy. Při použití červené diody (má nejnižší úbytek napětí) sonda ve spojení s LinuxCNC bez problémů funguje.

Co je GRBL?

Program Grbl je volně dostupný interpret G-kódů a ovladač krokových motorů pro CNC stroje, určený pro platformu Arduino.

Je určen především těm, kteří chtějí s minimálními náklady ovládat vlastní CNC stroj poháněný krokovými motory, ale také těm, kteří Grbl chtějí použít jako základ pro jiný projekt a tak ocení, že program je napsán modulárně.

Grbl jako interpret G-kódů pracuje s podmnožinou standardu RS274 a autoři tvrdí, že při vývoji byl testován s výstupními soubory mnoha CAM programů, aniž by se vyskytla jediná chyba.

S programem Grbl je možno bez problémů komunikovat USB portem a nevyžaduje od nadřízeného počítače žádné zvláštní vlastnosti ani výkon. Nadřízeným počítačem nemusí být jen PC.

Díky využití všech vlastností mikrokontrolérů AT168/328 program umožňuje přesné časování výstupních signálů i při krokovací frekvenci vyšší než 30 kHz. V programu je zapracován i inteligentní způsob akcelerace a decelerace rychlosti pohybu jednotlivých os, takže je možno u stroje dosáhnout vyšší pracovní rychlosti, aniž by docházelo ke ztrátám pozice při náhlých změnách směru pohybu. Program plně podporuje lineární a kruhovou interpolaci.

Většinu parametrů programu je možno nastavovat i za běhu, konfigurační soubor je uložen v paměti EEPROM a je přenositelný mezi různými verzemi Grbl.

Technická omezení

Grbl umožňuje jen pohyb ve třech osách souřadného systému X, Y, a Z. Práce s rotačními osami není podporována.
Množina zpracovávaných G-kódů je záměrně omezena jen na základní příkazy; rozšířené příkazy G-kódu, u kterých se nedá předpokládat, že budou moci být použity pro jednoduché CNC obráběcí stroje, jsou vypuštěny.

Program Grbl v současnosti pracuje s těmito G a M kódy:

G00 – Rychlé polohování
G01 – Lineární interpolace
G02 – Kruhová interpolace ve směru hodinových ručiček
G03 – Kruhová interpolace proti směru hodinových ručiček
G04 – Pauza (až 6 sekund)
G10 – Programovatelný zápis parametrů
G17 – Volba pracovní roviny X-Y
G18 – Volba pracovní roviny X-Z
G19 – Volba pracovní roviny Y-Z
G20 – Nastavení jednotek souřadného systému na palce (inch)
G21 – Nastavení jednotek souřadného systému na milimetry
G28 – Nájezd do referenční polohy
G28.1 – Nastavení souřadnic referenční polohy
G30 – Nájezd do další referenční polohy
G30.1 – Nastavení souřadnic další referenční polohy
G53 – Nastavení souřadného systému stroje
G54 až G59 – Volba souřadného systému obrobku
G80 – Ukončení cyklu
G90 – Absolutní programování
G91 – Inkrementální (přírůstkové) programování
G92 – Nastavení lokálního počátku souřadného systému (od aktuální pozice nástroje)
G92.1 – Zrušení lokálního počátku souřadného systému
G93 – Posuv v jednotkách času
G94 – Posuv v délkových jednotkách

M0 – stop programu
M2 – konec programu
M3 – spuštění vřetene – otáčky ve směru pohybu hodinových ručiček (CW)
M4 – spuštění vřetene – otáčky proti směru pohybu hodinových ručiček (CCW)
M5 – zastavení vřetene
M8 – spuštění chlazení
M9 – zastavení chlazení
M30 – konec programu (reset)

Jak to začalo

Že je člověk tvor v zásadě líný, není nic nového. Že vás při stavbě modýlků dříve nebo později přestane bavit neustálé pižlání překližky lupínkovou pilkou a broušení balzových žeber také nepřekvapí. Ale co s tím? Někdo má štěstí a má kamaráda, který mu takové díly dokáže vyrobit na nějakém stroji. Co vám říká zkratka CNC? Původ je v anglickém textu „computer numerical control“, neboli v češtině ekvivalent “počítačem řízený obráběcí stroj”. Principiálně je to jednoduchá věc. „Něco“ (nůž, laser, fréza, …) se na základě dat z počítače pohybuje v prostoru a odebírá přebytečný materiál. Od principu k reálnému a použitelnému stroji je dlouhá cesta. Takže mnozí vystačí s tím kamarádem.

A ti co si nevystačí, začnou přemýšlet, jak se k takovému pomocníkovi dostat. Najednou se objeví spousta otázek, na které si i jako laik musíte odpovědět. Na co to potřebuji? Jak velký stroj? Jak budu tvořit data? Kde budu shánět nástroje? …. Kolik peněz do toho chci dát?

Vynechme profesionální velké a drahé stroje. Věnujme se jen levelu „hobík – modelář“. V dnešní době takřka neomezených možností se může zdát, že postavit si „malé cé-en-céčko“ doma nemůže být pro zručnějšího kutila velký problém. Na YouTube je spousta videí ze staveb a provozu různých CNC strojů. Najdete i videa, kde je CNC postaveno z překližky, dřevěných trámků, s využitím dílů z 3D tisku a dalších běžných materiálů. No není to bezva? Často se ale na tyto konstrukce dá použít přísloví, že „zoufalí lidé dělají zoufalé činy“. Bohužel ani pořízení „profi“ řešení na hobby úrovni nemusí být zrovna výhra.

Konec filozofování. Takže ještě jednou, co s tím? To jsme takhle jednou s kamarádem při modelářské debatě sklouzli právě i k tématu CNC. A protože kamarád je strojařsky zdatný samouk začal mi vyprávět o různých nástrahách, koncepcích, chybách atd. Já nějakou zkušenost s CNC frézováním mám z firmy, se kterou dlouhodobě spolupracuji. Vyzkoušel jsem si jeden menší stroj od StepFour (kdysi celkem pojem a známá značka, dnes už neexistující) a větší amatérskou frézku postavenou z hliníkových profilů a pohonem os trapézovými šrouby. Pro člověka, který si o takových zařízeních zatím jen četl, to bylo jako zjevení. Ale po krátkém čase přišlo zjištění, že zas takový zázrak to není. Je to pomalé, ne úplně spolehlivé … no zkrátka dělat se na tom dá, ale nic moc. A tak jsme si povídali a povídali, o těch frézkách z YouTube, o těch děsivých koncepcích, o těch precizních komponentech použitých naprosto nevhodným způsobem … až z toho vzešla výzva postavit hobby CNC. Co to znamená hobby CNC? Musí to být spolehlivé, přesné, rozumně rychlé, snadné na údržbu a veliké „tak akorát“, a nemělo by to stát ranec. Asi nic objevného. S takovými požadavky ke svým výtvorům přistupuje většina tvůrců, že?

Zadání jsme postupně upřesnili na velikost pracovní plochy cca 500x800mm, zdvih osy Z 100-120mm. Frézka by si měla poradit s překližkou, plastem, sklotextitem a při zavření obou očí by nouzově měla být schopná opracovat třeba i hliník. Rozměry i koncepce řešení vycházela zejména z mého požadavku na frézování pěnového polystyrénu při výrobě vnitřních výplní křídel. Kvůli ceně a rychlosti pohybu jsme pro pohyb os X a Y navrhli použít řemínky, pro pohyb osy Z šroub a jako pohon krokové motory ve velikosti NEMA17. Řemínky jsou sice obvyklé spíše pro použití v 3D tiskárnách nebo u CNC laserů, ale i u CNC frézky by jejich použití mělo být možné. Snaha byla zbytečně neutrácet a z použitých komponent získat maximum užitku. Je třeba lepší oželet pár centimetrů pracovní plochy a umístit ložiska pojezdů dál od sebe, než mít větší plochu, ale s viklajícím se portálem.

Zcela zásadní je pro CNC stroj tuhost celé konstrukce. Nikdy nedosáhnete uspokojivého výsledku, pokud se vám bude vřeteno „kinklat“ sem-tam několik desetin milimetru. A že na YouTube někteří neváhají prezentovat i horší situace. Jednoduchá úloha: Zkuste vzít do ruky vrtačku, upnout třeba vrták 4-5mm a do kusu dřeva nebo překližky „vyfrézovat“ drážku. Ani náhodou, co? Takže už si umíte přibližně představit, jaké síly na nástroj mohou působit při opracování nejen dřeva, ale třeba i plastů a kovů. Tuhost, tuhost, tuhost, opakujte si stále dokola. Na tuhost stroje má vliv spousta věcí. Jednak tuhost vlastní konstrukce rámu a portálu, dále tuhost pojezdů (nepodepřená tyč umí na větších rozponech hodně pozlobit), tuhost uchycení vřetene a v neposlední řadě také přesnost pohonu na všech osách (např. od trapézových šroubů bez možnosti vymezení vůlí zázraky skutečně nečekejte).

Tak to je v kostce vše, co nás k návrhu a stavbě stroje vedlo. A když už jsme se do toho pustili, napadlo nás zkusit další podobné konstrukce, ale třeba s využitím jiných / dražších komponent – kuličkových šroubů, lineárních vedení, také s jinými velikostmi pracovního prostoru atd. Každá koncepce je vhodná pro jiné využití. Není potřeba tvořit univerzální stroj „na všechno“. Tyto stroje chceme nabídnout případným zájemcům v různém stádiu dokončení. Od funkční mechanické části s motory až po kompletní stroje vybavené i řídící elektronikou. Každý si pak může vybrat, zda vezme jen základ a svůj stroj si dokončí k obrazu svému, nebo raději ušetří trochu vlastního času a půjde do hotového řešení.

Celou tuto aktivitu jsme obalili schránkou s názvem

LUPA-CNC focused on utility