GRBL 1.1 – rychlá příručka

Při používání frézky ovládané GRBL se vám bude jistě hodit popis různých stavů, hlášení a příkazů se kterými se můžete setkat. V případě hodnocení překladu buďte prosím shovívaví, někdy je těžké přesně a srozumitelně popisy přeložit. Nebylo cílem ani dávat vyčerpávající popis. Berte následující jako úplný základ, který se hodí mít po ruce. Pro detailnější vysvětlení budete muset hledat, např. na Wikipedii, kde má GRBL samostatnou sekci.

Grbl – chybové kódy

KódPopis chyby
1GCode Command letter was not found Písmeno příkazu GCode nebylo nalezeno
2GCode Command value invalid or missingHodnota příkazu GCode je neplatná nebo chybí
3Grbl ‘$’ not recognized or supportedParametr Grbl ‘$’ není rozpoznán nebo podporován
4Negative value for an expected positive valueZáporná hodnota pro očekávanou kladnou hodnotu
5Homing fail. Homing not enabled in settingsChyba při “houmování”; “houmování” není povoleno v nastavení
6Min step pulse must be greater than 3usecMinimální puls STEP musí být větší než 3usec
7EEPROM read failed. Default values usedČtení EEPROM se nezdařilo. Použity výchozí hodnoty
8Grbl ‘$’ command Only valid when IdlePříkaz Grbl ‘$’ platí pouze při nečinnosti
9GCode commands invalid in alarm or jog stateNeplatné příkazy GCode ve stavu Alarmu nebo pohybu
10Soft limits require homing to be enabledSoft limity vyžadují povolení “houmování”
11Max characters per line exceeded. IgnoredPřekročení maximálního počtu znaků na řádek. Ignorováno
12Grbl ‘$’ setting exceeds the maximum step rateNastavení Grbl ‘$’ překračuje maximální hodnotu STEP
13Safety door opened and door state initiatedBezpečnostní kryt otevřen a status otevření iniciován
14Build info or start-up line > EEPROM line lengthInformace o sestavení nebo úvodní řádek > délka řádku v EEPROM
15Jog target exceeds machine travel, ignoredCílová pozice překračuje možnosti stroje, ignorováno
16Jog Cmd missing ‘=’ or has prohibited GCodeJog Cmd chybí ‘=’ nebo obsahuje nepovolený GCode
17Laser mode requires PWM outputV režimu laseru je požadován výstup PWM
20Unsupported or invalid GCode commandNepodporovaný nebo neplatný příkaz GCode
21> 1 GCode command in a modal group in block> 1 příkaz GCode v modální skupině v bloku
22Feed rate has not yet been set or is undefinedRychlost posuvu ještě nebyla nastavena nebo není definována
23GCode command requires an integer valuePříkaz GCode vyžaduje celé číslo
24> 1 GCode command using axis words found> Nalezen 1 příkaz GCode používající písmeno označení osy
25Repeated GCode word found in blockOpakovaný příkaz GCode nalezený v bloku
26No axis words found in command blockV bloku příkazů nebylo nalezeno žádné označení osy
27Line number value is invalidNeplatná hodnota čísla řádku
28GCode Cmd missing a required value wordV příkazu GCode chybí hodnota příkazu
29G59.x WCS are not supportedWCS G59.x nejsou podporovány
30G53 only valid with G0 and G1 motion modesG53 platí pouze pro režimy pohybu G0 a G1
31Unneeded Axis words found in blockNepotřebná označení os nalezená v bloku
32G2/G3 arcs need >= 1 in-plane axis wordOblouky G2/G3 potřebují >= 1 označení osy v rovině
33Motion command target is invalidCíl příkazu pohybu je chybný
34Arc radius value is invalidHodnota poloměru oblouku je chybná
35G2/G3 arcs need >= 1 in-plane offset wordOblouky G2/G3 potřebují >= 1 písmeno odsazení v rovině
36Unused value words found in blockNepoužité hodnoty příkazů nalezené v bloku
37G43.1 offset not assigned to tool length axisOdsazení G43.1 není přiřazeno délce nástroje
38Tool number greater than max valueČíslo nástroje větší než maximální hodnota

Grbl – kódy alarmů

KódPopis alarmu
1Hard limit triggered. Position Lost.Spuštěn Hard limit. Poloha ztracena.
2Soft limit alarm, position kept. Unlock is Safe.Soft limit alarm, poloha udržena. Odemknutí je bezpečné.
3Reset while in motion. Position lost.Resetování za pohybu. Poloha ztracena.
4Probe fail. Probe not in expected initial state.Selhání nájezdu na sondu. Sonda není v očekávaném výchozím stavu.
5Probe fail. Probe did not contact the work.Selhání nájezdu na sondu. Sonda se nedotkla podložky.
6Homing fail. The active homing cycle was reset.Neúspěšný “houming”. Aktivní cyklus “houmování” byl resetován.
7Homing fail. Door opened during homing cycle.Neúspěšný “houming”. Dveře se otevřely během cyklu “houmování”.
8Homing fail. Pull off failed to clear limit switch.Neúspěšný “houming”. Chyba Pull off při čištění koncového spínače.
9Homing fail. Could not find limit switch.Neúspěšný “houming”. Nepodařilo se najít koncový spínač.

Grbl příkazy (příkazy, které nejsou definovány v G-kódu)

KódPopis příkazu
$$Display Grbl Settings.Zobrazit nastavení GRBL
$x=valChange Grbl Setting x to val.Změnit hodnotu pro měnné GRBL
$#View GCode Parameters.Vypíše hodnoty všech offsetů (G54, G55, atd.)
$GView GCode parser state.Vypíše aktuální hodnoty nastavení GRBL
$CToggle Check Gcode ModePřepnutí režimu kontroly G-kódu. Zapnutím se spustí program, ale bez pohybu osami a spuštění vřetene a zkontroluje se na možné chyby.
$HRun Homing CycleSpuštění “houmovacího” cyklu
$J=gcodeRun Jogging Motion.Spuštění pohybů Jogging.
$XKill Alarm Lock state.Vypnutí alarmu zamčení stroje.
$IView Build InfoZobrazí informaci o verzi a datu kompilace
$NView saved start up codeZobrazí spouštěcí bloky G-kódu
$Nx=lineSave Start-up GCode line (x=0 or 1) There are executed on a reset.Nastaví spouštěcí bloky G-kódu. Tyto bloky mohou být dva, N0 a N1
$RST=$Restores the Grbl settings to defaults.Resetuje GRBL do základního nastavení.
$RST=#Erases G54-G59 WCS offsets and G28/30 positions stored in EEPROM.Vymaže hodnoty offsetů uložené v EEPROM
$RST=*Clear and Load all data from EEPROM.Vymazání a obnova všech dat v EEPROM používaných GRBL
$SLPEnable Sleep mode.Přepnutí do režimu spánku
Ctrl-xSoft ResetMěkký reset
?Status report query.Dotaz na stav.
~Cycle Start/Resume from Feed Hold, Door or Program pause.Přepnutí stavu na pokračování
!Feed Hold – Stop all motion.Zastavení pohybu stroje (Hold), nevypne vřeteno ani chlazení.

POZNÁMKA: Existuje řada dalších příkazů v reálném čase, které používají nezadatelné znaky. Jsou určeny pro vývojáře a mimo konzoli se běžně nepoužívají. Ovládají například přepisování rychlosti (feed). A nejsou zde popsány.

GRBL nastavení

ProměnnáPopis
$0Step pulse, microseconds
$1Step idle delay, milliseconds
$2Step port invert, XYZmask*
$3Direction port invert, XYZmask*
The direction each axis moves.
$4Step enable invert, (0=Disable, 1=Invert)
$5Limit pins invert, (0=N-Open. 1=N-Close)
$6Probe pin invert, (0=N-Open. 1=N-Close)
$10Status report, ‘?’ status. 0=WCS position, 1=Machine position, 2= plan/buffer and WCS position, 3=plan/buffer and Machine position.
$11Junction deviation, mm
$12Arc tolerance, mm
$13Report in inches, (0=mm. 1=Inches)**
$20Soft limits, (0=Disable. 1=Enable, Homing must be enabled)
$21Hard limits, (0=Disable. 1=Enable)
$22Homing cycle, (0=Disable. 1=Enable)
$23Homing direction invert, XYZmask* Sets which corner it homes to.
$24Homing feed, mm/min
$25Homing seek, mm/min
$26Homing debounce, milliseconds
$27Homing pull-off, mm
$30Max spindle speed, RPM
$31Min spindle speed, RPM
$32Laser mode, (0=Off, 1=On)
$100Number of X steps to move 1mm
$101Number of Y steps to move 1mm
$102Number of Z steps to move 1mm
$110X Max rate, mm/min
$111Y Max rate, mm/min
$112Z Max rate, mm/min
$120X Acceleration, mm/sec^2
$121Y Acceleration, mm/sec^2
$122Z Acceleration, mm/sec^2
$130X Max travel, mm Only for Homing and Soft Limits.
$131Y Max travel, mm Only for Homing and Soft Limits.
$132Z Max travel, mm Only for Homing and Soft Limits.

Poznámka: * XYZmask je nastavení hodnot pro osy X Y a Z. Změní se, pokud se osa pohybuje v nesprávném směru. Hodnota bude 0-7. ** Hlášené jednotky (mm nebo inch) jsou nezávislé na jednotkách nastavených v G-kódu! Pro podrobnější popis jednotlivých proměnných doporučuji např. stránky Sakul.cz

GRBL – podporované příkazy G-kódu

PříkazPopis
FNastavení rychlosti pohybu v jednotkách/min (viz G20/G21)
G0Rychlý pohyb (rychlostí Rapid Feed Rate)
G1Lineární pohyb (frézování rychlostí F)
G2Kruhový pohyb ve směru hodinových ručiček
G3Kruhový pohyb v protisměru hodinových ručiček
G4Pauza (až 6 sekund)
G10L2Nastaví odsazení pro uložený počátek vůči absolutním souřadnicím stroje.
G10L20Stejně jako G10 L2, ale odsazení XYZ je vůči aktuální poloze.
G17Vykreslí oblouk v rovině XY (výchozí nastavení).
G18Vykreslí oblouk v rovině ZX.
G19Vykreslí oblouk v rovině YZ.
G20Nastavení jednotek souřadného systému na palce (inch).
G21Nastavení jednotek souřadného systému na milimetry.
G28Nájezd do “bezpečné” polohy. POZNÁMKA: Pokud se neprovede “houmovací” cyklus a nastavení bezpečné polohy, je použití této funkce velmi “nebezpečné”.
G28.1Nastavení “bezpečné” polohy v absolutních souřadnicích stroje.
G30Nájezd do uložené polohy.
G30.1Nastavení předdefinované polohy v absolutních souřadnicích stroje, před uložením souřadnic se provede rychlý pohyb G0 do této polohy.
G38.2Nájezd sondou na dotyk. Když k dotyku nedojde vyhlásí se chyba.
G38.3Jako G38.2, ale bez vyhlášení chyby pokud nedojde k dotyku.
G38.4Jako G38.2, ale sonda se vzdaluje a zastaví se při ztrátě kontaktu.
G38.5Jako G38.4, ale bez vyhlášení chyby při selhání.
G40Vypnutí kompenzace nástroje. GRBL tuto funkci nepodporuje.
G43.1Dynamické odsazení pro délku nástroje, posunuje konec nástroje v ose Z pro následné pohyby.
G49Vypne odsazení pro délku nástroje
G53Použije souřadnice stroje pro příkazy
G54Aktivuje příslušný uložený počátek pracovních souřadnic.
G55-59Jako u G54 aktivuje další uložené počátky pracovních souřadnic.
G61Režim přesné cesty. GRBL nepodporuje žádné jiné režimy.
G80Konzervační cyklus Zrušit. Grbl nepodporuje žádný z režimů konzervovaných cyklů, které se tímto zruší, takže se při použití nic nestane.
G90Všechny vzdálenosti a pozice jsou absolutní hodnoty od aktuálního pracovního počátku.
G91Všechny vzdálenosti a pozice jsou relativní k aktuální pozici.
G91.1Nastaví režim přírůstkového pozicování oblouku.
G92Nastaví aktuální souřadnice bodu jako výchozí pracovní počátek.
G92.1Vynulování všech platných odsazení G92 a vynulování všech uložených hodnot.
G93Pohyb v jednotkách času.
G94Režim pohybu v jednotkách/min při aktuální rychlosti F.
M0Pauza programu.
M1Stejně jako M0, ale pozastaví se pouze v případě, že je zapnutý volitelný stop spínač.
M2Konec programu, vypne vřeteno/laser a zastaví stroj.
M3Spustí vřeteno ve směru hodinových ručiček. V režimu Laser nastaví konstantní výkon.
M4Jako M3, v režimu Laser nastaví dynamický výkon.
M5Zastaví vřeteno.
M8Zapne chlazení (stejné jako M7)
M9Vypne chlazení.
M30Stejné jako M2
SNastaví otáčky vřetene ot./min, nebo výkon laseru.

POZNÁMKA: Kódy mohou obsahovat počáteční nuly, G0 a G00 jsou stejné. Existuje spousta dalších příkazů G-kódu, tyto podporuje GRBL. Mnoho příkazů je modálních, což znamená, že jsou od zadání platné pro další průběh programu. Například G0 X1 následovaný příkazem Z5 si pamatuje režim G0 a použije jej na Z5. S je také modální, platí od posledního zadání. Dva příkazy ve stejné modální skupině nemohou být na stejném řádku.

Parametry G-kódu pro GRBL

ZnakyPopis
X Y ZVzdálenosti nebo pozice na osách X Y Z.
I J KVzdálenosti nebo pozice pro oblouky G2 a G3. Odpovídají ose Z Y X. Jedná se vždy o přírůstkové souřadnice bez ohledu na G90/G91.
LPočet cyklů smyčky, podporováno, ale nepoužívá se.
NČíslo řádku, podporováno, ale nepoužívá se.
RPoloměr oblouku pro G2 a G3.
PVíceúčelový parametr závisí na příkazu, ve kterém je použit.
TVýběr nástroje, nepoužívá se.

POZNÁMKA: Za všemi parametry musí následovat číslo.

GRBL – stavy

StavPopis
Alarm“Houmování” je povoleno, ale cyklus “houmování” neproběhl nebo byla zjištěna chyba, např. aktivovaný koncový spínač. Je třeba znovu provést “houmování” nebo příkaz Unlock (odemknutí stroje).
IdleČekání na jakýkoliv příkaz.
JogProvádění pohybu Jog, žádné nové příkazy až do dokončení, kromě příkazů Jog. Poznámka: Jog jsou manuální pohyby stroje po osách.
HomingProvádí se cyklus “houmování”, nepřijímá nové příkazy do dokončení.
CheckJe povolen kontrolní režim (Check); všechny příkazy jsou přijímány, ale budou pouze analyzovány, nikoli provedeny (stroj se nebude pohybovat).
CycleSpuštěné příkazy G-kódu, všechny příkazy přijaty, po dokončení příkazů přejde stroj do režimu nečinnosti (Idle).
HoldProbíhá pozastavení, pro pokračování spustit Resume.
Safety DoorBezpečnostní spínač dveří byl aktivován, podobně jako při Hold, ale k pokračování (Resume) dojde při zavření dveří. Na svém stroji pravděpodobně bezpečnostní dvířka nemáte!
SleepPříkaz Sleep byl přijat a proveden, někdy se používá na konci úlohy. Pro pokračování proveďte reset nebo nové zapnutí stroje.

Zdroj: https://www.sainsmart.com/blogs/news/grbl-v1-1-quick-reference