Relevantní pro
Toto je seznam současně implementovaných G-codů u firmwaru Prusa k 7. květnu 2021. Popis je určen pouze pro specifické G-cody Prusa Research. Zbytek najdete na RepRap Wiki. S výjimkou M117 jsou všechny G-cody uvedeny v pořadí jejich vyskytnutí se v kódu. Existují důvody, proč nejsou některé G-cody v číselném pořadí.
Tyto příkazy jsou využívány interními funkcemi ke zpracování některých akcí ve správném pořadí. Některé z nich mohou využít také samotní uživatelé. Jde o komplexní příkazy (řetězce) zpracovávané co nejdříve. Jsou dostupné pouze na MK3(S), protože vyžadují drivery TMC2130:
M0 [P<ms<] [S<sec>] [string] M1 [P<ms>] [S<sec>] [string]
Sada interních příkazů PRUSA
PRUSA [ Ping | PRN | FAN | fn | thx | uvlo | MMURES | RESET | fv | M28 | SN | Fir | Rev | Lang | Lz | Beat | FR ]
Ve firmwaru Prusa jsou G0 a G1 to samé.
G0 [ X | Y | Z | E | F | S ] G1 [ X | Y | Z | E | F | S ]
Tyto příkazy nefungují správně, pokud je povolen MBL. Ke kompenzaci dochází až na konci pohybu, takže se vyhněte dlouhým obloukům.
G2 [ X | Y | I | E | F ] (oblouk po směru hodinových ručiček)
G3 [ X | Y | I | E | F ] (oblouk proti směru hodinových ručiček)
Přístroj se na určitou dobu pozastaví
G4 [ P | S ]
Zatáhne filament podle nastavení
Odvíjí/obnovuje filament podle nastavení funkce
Jednotky jsou v milimetrech. Prusa nepodporuje jednotky palce.
Použití bez jakýchkoliv parametrů provede homing všech os A TAKÉ mesh bed leveling, zatímco provede jen homing všech os (BEZ mesh bed levelingu).
G28 [ X | Y | Z | W | C ]
Ve firmwaru Prusa je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu.
Viz
Ve firmwaru Prusa je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu.
Ve firmwaru Prusa je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu.
Ve firmwaru Prusa je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu.
Senzor musí být nad podložkou. Maximální vzdálenost pohybu před vyvoláním chyby je 10 mm.
Ukázat/zobrazit teplotní interpolaci PINDA.
Tento G-code se používá ke kalibraci teplotního posunu PINDA (indukčního snímače).
Senzor PINDAv2 má vestavěný termistor, který má tu výhodu, že kalibraci lze provést jednou pro všechny materiály.
Tiskárna Original i3 Prusa MK2/s využívá senzor PINDAv1 a tato kalibrace zlepšuje teplotní drift, ale není tak dobrý jako PINDAv2.
Senzor SuperPINDA má vnitřní teplotní kompenzaci a nemá termistorový výstup. V takovém případě nemá smysl provádět teplotní kalibraci. Pokud je při kompilaci definován PINDA_THERMISTOR a SUPERPINDA_SUPPORT, kalibrace se přeskočí se sériovým hlášením "No PINDA thermistor". To může být způsobeno také v případě, že je přerušeno připojení termistoru PINDA nebo je teplota senzoru PINDA nižší než PINDA_MINTEMP.
Výchozí grid 3x3 může být změněn u MK2.5/s a MK3/s na grid 7x7.
G80 [ N | R | V | L | R | F | B ]
Použití následujících parametrů umožňuje dodatečnou „manuální“ korekci vyrovnání podložky. Platné hodnoty jsou -100 mikronů až 100 mikronů.
Po aktivaci zobrazí status mesh bed levelingu a profil vyhřívané podložky.
VAROVÁNÍ! POUŽÍVEJTE S OBEZŘETNOSTÍ! Pokud se pokusíte sondovat tam, kde není podložka, mohou se stát ošklivé věci! Ve firmwaru Prusa je tento G-CODE ve výchozím nastavení deaktivován, musí být zapnutý ve zdrojovém kódu.
Ve firmwaru Prusa je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu.
Ve firmwaru Prusa je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu.
Ve firmwaru Prusa je tento G-code ve výchozím nastavení deaktivován, musí být zapnutý ve zdrojovém kódu.
Tento G-code bude proveden na začátku kalibračního skriptu. (specifický pro Prusa3D)
Tento G-code se provede na konci kalibračního skriptu. (specifické pro Prusa3D)
Momentálně nemá žádný efekt
Všechny souřadnice od nynějška jsou absolutní vzhledem k počátku tiskárny. Osa E se také přepne do absolutního režimu.
Všechny souřadnice jsou od této chvíle relativní vůči poslední pozici. Osa E je také přepnuta do relativního režimu.
Slouží k nastavení aktuální polohy každé osy. Parametry jsou vždy absolutní vůči počátku. Pokud je některý parametr vynechán, nebude tato osa ovlivněna. Pokud jsou zadány osy , nebo , může se následný pohyb zadrhnout kvůli Mesh Bed Levelingu. osa není ovlivněna, pokud je cílová pozice 0 (). G92 bez souřadnic vynuluje u některých firmwarů všechny osy. To však není případ softwaru Prusa-Firmware!
G92 [ X | Y | Z | E ]
Povolí Prusa-specifické funkce farmy a G-cody. Viz interní sada příkazů Prusa.
Vypne Prusa-specifické funkce farmy a G-cody.
M20 [ L | T ]
M23 [filename]
Nastavte pozici v souboru SD karty na indexování v bajtech. Očekává se, že tento příkaz bude vyvolán po M23 a před M24. Jinak je účinek tohoto příkazu nedefinovaný.
M26 [ S ]
M27 [ P ]
Ukončí zápis do souboru SD, když signalizuje konec nahraného souboru. Je zpracován velmi brzy a na kartu se nezapisuje.
M30 [filename]
M928 [filename]
M42 [ P | S ]
M45 [ V ]
Tato funkce předpokládá, že podložka byla zavedena domů (homing). Konkrétně, že před vyvoláním funkce měření opakovatelnosti M48 Z-Probe byl vydán příkaz G28. Veškeré informace vygenerované předchozím příkazem G29 pro vyrovnání podložky se ztratí a je třeba je obnovit.
Pokud není počet vzorků zadán, je výchozí hodnota 10. Můžete použít velká nebo malá písmena pro kteroukoli z možností, kromě n. n musí být napsáno malými písmeny, protože Marlin používá pro svůj komunikační protokol velké N a bude strašně zmatený, pokud mu pošlete velké N.
Použití
M48 [ n | X | Y | V | L ]
M73 [ P | R | Q | S | C | D ]
M104 [ S ]
Zpracovává se mnohem dříve, aby se obešel cmdqueue.
M140 [ S ]
Zobrazení teplot:
Příklad:
ok T:20.2 /0.0 B:19.1 /0.0 T0:20.2 /0.0 @:0 B@:0 P:19.8 A:26.4
M155 [ S ] [ C ]
bit 0 = Automatické hlášení teploty bit 1 = Automatické hlášení ventilátorů bit 2 = Automatické hlášení pozice bit 3 = free bit 4 = free bit 5 = free bit 6 = free bit 7 = free
M104 [ B | R | S ]
S parametry S a R se zachází stejně. Příkaz vždy čeká na ochlazení i zahřátí. Pokud nejsou dodány žádné parametry, čeká na dříve nastavenou teplotu extruderu.
M190 [ R | S ]
Pokud není zadán žádný parametr, čeká na zahřátí nebo ochlazení na předem nastavenou teplotu.
M106 [ S ]
Funguje pouze v případě, že je firmware zkompilován s definovaným PS_ON_PIN.
Funguje pouze v případě, že je firmware zkompilován s definovaným PS_ON_PIN.
Přiměje extruder interpretovat vytlačování jako absolutní pozice.
Přiměje extruder interpretovat hodnoty vytlačování (extruze) jako relativní polohy.
Tento příkaz lze použít k nastavení časového limitu nečinnosti krokového motoru () nebo k vypnutí krokových motorů. (,,,). Tento příkaz lze použít bez dalších parametrů. V takovém případě jsou všechny krokové motory vypnuty.
Kontrola úplnosti souboru používá tento parametr k detekci neúplného souboru. Musí být přítomen na konci souboru bez parametrů.
M84 [ S | X | Y | Z | E ]
Shodné s M84 (kompatibilita)
M85 [ S ]
Po uplynutí bezpečnostního časovače se cílové teploty vyhřívané podložky a trysky nastaví na nulu.
M86 [ S ]
Umožňuje programování kroků na jednotku (obvykle mm) pro krokové motory. Tyto hodnoty se při zapnutí resetují na výchozí hodnoty firmwaru, pokud nejsou uloženy v paměti EEPROM, je-li k dispozici (M500 v Marlinu).
M92 [ X | Y | Z | E ]
Nastaví číslo řádku v G-codu
M110 [ N ]
Během některých zdlouhavých procesů, jako je G29, se může hostiteli zdát, že Marlin "zmizel". Funkce "host keepalive" bude hostiteli posílat zprávy, když je Marlin zaneprázdněn nebo čeká na odpověď uživatele, takže se hostitel nebude pokoušet o opětovné připojení (nebo odpojení).
M113 [ S ]
Vypíše informace o firmwaru a možnostech. Bez jakýchkoli argumentů vypíše číslo verze firmwaru Prusa, typ stroje, počet extrudérů a UUID. Zkontroluje zadanou verzi firmwaru. Pokud je verze firmwaru poskytnutá kódem U vyšší, než aktuálně spuštěný firmware, pozastaví tisk na 30 s a požádá uživatele o aktualizaci firmwaru.
Příklady:
výsledky:
výsledky:
výsledky na LCD displeji po dobu 30 s nebo interakce uživatele:
M115 [ V | U ]
Způsobí, že se daná zpráva zobrazí ve stavovém řádku na připojeném LCD displeji. Zpracovává se dříve, aby bylo možné tisknout zprávy, které obsahují G, M, N nebo T.
Vrací aktuální stav nakonfigurovaných koncových spínačů os X, Y, Z. Bere v úvahu všechna nastavení "invertovaných koncových zarážek", takže lze ověřit, zda stroj interpretuje koncové spínače správně.
Tento příkaz je používán k hlášení otáček ventilátoru a hodnot pwm ventilátoru.
M123
Příklad:
E0:3240 RPM PRN1:4560 RPM E0@:255 PRN1@:255
V Prusa Firmware je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu definováním BLINKM a jeho závislostmi.
M150 [ R | U | B ]
M200 [ D | T ]
Pro každou osu jednotlivě.
Pro každou osu jednotlivě.
M204 [ S | T ]
M204 [ P | R | T ]
Nastaví některá pokročilá nastavení týkající se pohybu.
M205 [ S | T | B | X | Y | Z | E ]
M206 [ X | Y | Z ]
M207 [ S | F | Z ]
M208 [ S | F ]
Tato logická hodnota S 1=true nebo 0=false umožňuje automatickou detekci retrakce, pokud slicer nepodporoval G10/G11: každý normální pohyb pouze po extruderu bude klasifikován jako retrakce v závislosti na směru.
M209 [ S ]
Ve firmwaru Prusa je tento G-code aktivní pouze tehdy, pokud je ve zdrojovém kódu vyšší než 1. Na Original i3 Prusa MK2/s MK2.5/s MK3/s je neaktivní.
M218 [ X | Y ]
M220 [ B | S | R ]
M221 [ S | T ]
Počkejte, dokud zadaný pin nedosáhne požadovaného stavu.
M226 [ P | S ]
V Prusa Firmware je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu.
M280 [ P | S ]
Ve firmwaru Prusa jsou výchozí hodnoty a , takže bez parametrů bude pípat po dobu jedné sekundy.
M300 [ S | P ]
Nastaví hodnoty proporcionální (P), integrální (I) a derivační (D) pro hotend. Viz také PID Tuning.
M301 [ P | I | D | C ]
Nastaví hodnoty proporcionální (P), integrální (I) a derivační (D) pro podložku. Viz také PID Tuning.
M304 [ P | I | D ]
V Prusa Firmware je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu.
Abyste mohli funkci používat, musíte (znovu) definovat a přiřadit PHOTOGRAPH_PIN správné číslo pinu.
Tato funkce říká tiskárně, aby povolila pohyb motoru extruderu nad určitou teplotu, nebo pokud je zakázána, aby povolila pohyb extruderu, když je teplota hotendu nižší než bezpečná teplota tisku.
M302 [ S ]
PID Tuning označuje řídicí algoritmus používaný v některých reprapech k vyladění chování ohřevu hotendů a vyhřívaných podložek. Tento příkaz generuje proporcionální (Kp), integrální (Ki) a derivační (Kd) hodnoty pro hotend nebo podložku. Odešlete příslušný kód a počkejte, až výstup aktualizuje hodnoty firmwaru.
M303 [ E | S | C ]
Dokončí všechny aktuální pohyby a tím vymaže vyrovnávací paměť. Ekvivalentní k bez parametrů.
V současné době jsou zapotřebí tři různé materiály (standardní, flex a PVA).
A ukládání těchto informací pro různé profily zavedení/vysunutí atd. v budoucím firmwaru nemusí čekat na "ok" od MMU.
M403 [ E | F ]
Uložit aktuální parametry do EEPROM.
Nastavte aktivní parametry na parametry uložené v paměti EEPROM. To je užitečné pro navrácení parametrů po experimentování s nimi.
Tento příkaz resetuje všechny laditelné parametry na výchozí hodnoty nastavené v konfiguračních souborech firmwaru. Tímto příkazem se neresetují žádné parametry uložené v paměti EEPROM, takže po něm musí následovat M500, aby zapsal výchozí nastavení.
Tento příkaz požádá firmware o odpověď s aktuálním nastavením tisku, jak je nastaveno v paměti. Nastavení se bude lišit od obsahu EEPROM, pokud se od posledního načtení/uložení změnilo. Výstup odpovědi obsahuje příkazy G-Code pro vytvoření každého nastavení. Například hodnoty Steps-Per-Unit se zobrazí jako příkaz M92.
Resetuje jazyk na angličtinu. Pouze u Original Prusa i3 MK2.5/s a MK3/s s několika jazyky.
V Prusa Firmware je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu. Musíte definovat .
M540 [ S ]
Nastaví posunutí Z u sondy Z (Z-probe). Tento posun se používá k určení skutečné polohy trysky na ose Z při použití sondy pro nastavení polohy Z pomocí G28. Tato hodnota může být také použita pomocí G81 (Prusa) / G29 (Marlin) k použití korekce polohy Z. Tato hodnota představuje vzdálenost trysky od povrchu podložky v místě spuštění sondy. Tato hodnota bude záporná pro typické spínací sondy, indukční sondy a nastavení, kde tryska vytváří obvod se zdviženým kovovým kontaktem. Toto nastavení bude větší než nula u strojů, kde se jako sonda používá samotná tryska, která tlakem na podložku stiskne spínač. (Toto je běžné nastavení u strojů delta.)
M851 [ Z ]
Nastaví IP adresu tiskárny, která se zobrazí v nabídce podpory. Určeno pro použití s pomocí hostitelského softwaru. Pokud není P zadáno, nic se nestane. Pokud je struktura IP adresy neplatná, předpokládá se 0.0.0.0 a na obrazovce v nabídce podpory se nic nezobrazí.
M552 [ P<IP_address> ]
Inicializuje výměnu filamentu, používá se také během procesu Senzor doběhu vlákna. Pokud je spuštěn pod 25 mm, provede zvednutí osy Z o 25 mm, aby se zabránilo vzniku blobu.
M600 [ X | Y | Z | E | L | AUTO ]
Počkat, až termistor PINDA dosáhne cílové teploty.
M860 [ S ]
Nastavení hodnoty kompenzačního kroku pro index kompenzační tabulky .
M861 [ ? | ! | Z | S | I ]
Zkontroluje parametry tiskárny a G-codu a provede kontrolu kompatibility.
Při spuštění s příznakem P<> se kontrola provede proti vstupní hodnotě. Při spuštění s příznak Q se zobrazí aktuální hodnota.
M862.3 akceptuje také textové identifikátory typů tiskáren. Syntaxe M862.3 je následující (všimněte si uvozovek kolem typu):
M862.3 P "MK3S"
Akceptované identifikátory typu tiskárny a jejich číselné protějšky:
Nastavuje faktory vytlačování pro funkci Lineární předsunutí. Pokud je některý z parametrů R, W, H nebo D nastaven na nulu, poměr se vypočítá dynamicky během tisku.
M900 [ K | R | W | H | D]
Nastavit proud digitálního trimpot motoru v mA s pomocí kódů os (X, Y, Z, E, B, S). M907 nemá žádný vliv, pokud je aktivní experimentální režim škálování proudu motoru extruderu (to platí i pro tisk z farmy).
M907 [ X | Y | Z | E | B | S ]
V Prusa Firmware je tento G-code ve výchozím nastavení deaktivován, musí být zapnut ve zdrojovém kódu. Nepoužitelné u tiskáren Prusa.
M908 [ P | S ]
neaktivní ve výchozím stavu, pouze pokud je definován ve zdrojovém kódu.
neaktivní ve výchozím stavu, pouze pokud je definován ve zdrojovém kódu.
M911 [ X | Y | Z | E ]
neaktivní ve výchozím stavu, pouze pokud je definován ve zdrojovém kódu.
M912 [ X | Y | Z | E ]
neaktivní ve výchozím stavu, pouze pokud je definován ve zdrojovém kódu. Ukáže proudy TMC2130.
neaktivní ve výchozím stavu, pouze pokud je definován ve zdrojovém kódu.
neaktivní ve výchozím stavu, pouze pokud je definován ve zdrojovém kódu.
neaktivní ve výchozím stavu, pouze pokud je definován ve zdrojovém kódu.
M916 [ X | Y | Z | E ]
neaktivní ve výchozím stavu, pouze pokud je definován ve zdrojovém kódu.
M917 [ X | Y | Z | E ]
neaktivní ve výchozím stavu, pouze pokud je definován ve zdrojovém kódu.
M918 [ X | Y | Z | E ]
Tiskárny s krokovými motory TMC2130 mají , , a jako možnosti. Hodnota kroků na jednotku se odpovídajícím způsobem aktualizuje. Ne všechna rozlišení jsou platná! Tiskárny bez ovladačů TMC2130 mají také možnosti a . V tomto případě se hodnota kroků na jednotku nemění!
M350 [ X | Y | Z | E | B | S ]
Platné pouze pro MK2.5(S) nebo tiskárny bez krokových motorů TMC2130
Přepne piny MS1 MS2 přímo.
M351 [B<0|1>] [E<0|1>] S<1|2> [X<0|1>] [Y<0|1>] [Z<0|1>]
M702 [ U | C ]
.
pokud "U", zruší zavedení všech filamentů, které byly použity při aktuálním tisku
pokud "C" vysune pouze aktuální filament
v opačném případě vysunout všechny filamenty
pokud "C" vysune aktuální filament; pokud MMU není přítomen, neprovede se žádná akce
vysunout aktuální filament
Konec příkazů
T
T
T? G-code to extude shouldn't have to follow, load to extruder wheels is done Automaticky
Tx Stejné jako T?, jen tryska nemusí být předehřátá. Tc musí být umístěno po předehřátí trysky extruderu, aby se dokončilo zavádění filamentu.
Tc Zavedení do trysky poté, co byl filament připraven pomocí Tc a tryska extruderu je již zahřátá.
D0 [ B ]
D1
Tento příkaz lze použít bez dalších parametrů. Přečte celou paměť RAM.
D2 [ A | C | X ]
Tento příkaz lze použít bez dalších parametrů. Přečte celý eeprom.
D3 [ A | C | X ]
Pro čtení digitální hodnoty pinu stačí definovat číslo pinu.
D4 [ P | F | V ]
Tento příkaz lze použít bez dalších parametrů. Přečte 1kb FLASH.
D5 [ A | C | X | E ]
Rezervováno
Rezervováno
D8 [ ? | ! | P | Z ]
D9 [ I | V ]
Zapíše skutečný čas do souboru log soubor (protokolu).
Tento příkaz zaznamená data do souboru "mesh.txt" na SD kartě.
D80 [ E | F | G | H | I | J ]
Tento příkaz zaznamená data do souboru "wldsd.txt" na SD kartě.
D81 [ E | F | G | H | I | J ]
D2130 [ Axis | Command | Subcommand | Value ]
Příklady:
D2130E?wave
Zobrazit křivku kompenzace linearity mikrokroku extruderu
D2130E!wave0
Zakázat křivku kompenzace linearity extruderu (používá se sinusová křivka).
D2130E!wave220
(sin(x))^1.1 použitá kompenzační křivka mikrokroku extruderu
Poznámky: Pro více informací si přečtěte https://www.trinamic.com/fileadmin/assets/Products/ICs_Documents/TMC2130_datasheet.pdf
D9125 [ ? | ! | R | X | Y | L ]
Konec D-kódů