Stránka 1 z 1

Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 27.07.2017 22:03
od mig01
Zdravím. Potřebuji vyměnit v průběhu tisku filament za jinou barvu (myslím že běžná věc). Např. tisknu panýlek na krabičku a nápisy (tedy posledních x vrstev) chci jinou barvou...

Trochu jsem prohledal zdejší fórum a internet a dal dohromady následující sled g-kódu, který jsem umístil do vygenerovaného souboru. Tiskárnu mám Rebel II, firmware Repetier (teď nevím jakou verzi, ale asi tak rok starou v té době nejnovější), 4 řádkový displej a tisknu z SD karty (pro úplnost).

Kód: Vybrat vše
// nějaký kód výrobku...
...
G1 X86.828 Y106.036 E37.24947
G1 X86.319 Y105.527 E37.27367
M106 S127.5
G1 E35.27367 F1800.00000
G92 E0

// zde končí vrstva před začátkem další začíná mnou vložený kód

85 S0 ;disable timeout
G91 ;use relative coordinates
M400 ;wait buffer
G1 E-50.000000 F20000 ;vysun filament
G1 Z5 ;extruder nahoru 5 mm
G90 ;absolute
G1 X20 Y20
G91 ;relative
M300 s1000 p400 ; Beep
M400 ;wait buffer
M25 ;pause
M117 Vymen filament
G1 E50.000000 F150 ;zaved filament a vycisti barvu
M300 s1000 p400 ; Beep
M400 ;wait buffer
M25 ;pause
M117 Odstran zbytky
G1 Z-5 ;extruder dolu 5 mm
G90 ;use absolute coordinates

// konec mého kódu a zde začíná nová vrstva a pokračuje kód výrobku
G1 Z1.000 F6000.000
G1 X89.006 Y97.949 F6000.000
G1 E2.00000 F1800.00000
G1 F525.067
G1 X92.850 Y97.949 E2.13837
G1 X91.110 Y103.282 E2.34032
G1 X90.747 Y103.282 E2.35337
.....


Takže to funguje následovně:
- jede tisk výrobku a až se dojde na požadovanou vrstvu tak se provede následující
- vysune se kus filamentu z extruderu a extruder popojede o 5mm nahoru
- zajede to mimo výrobek na souřadnice 20,20 a pauza
- vyměním filament a zasunu to extruderu jiný
- přes LCD menu SD karta zvolím pokračovat v tisku
- projede kousek nového filamentu skrz extruder, aby se vyčistila barva od té předchozí pak následuje další pauza
- odstraním ten zbytek co vyteče na sklo a přes LCD menu (SD karta) zvolím pokračovat v tisku
- zajede to zpět na místo kde to přerušilo tisk

Takže až sem parádička, funguje to dle představ.

ALE tady dojde k jednomu zádrhelu. Ono to z nějakého mě neznámého důvodu ZDE když už je to na pozici kde by to mělo pokračovat v tisku vysune filament asi o 2cm, možná více a teprve pak to pokračuje v tisku (takže to tiskne nějakou dobu na prázdno...). Proč ho to před pokračováním v tisku vysune? V kódu který pokračuje snad nic takového není nebo ano?

A jinak když pod kód M25 nevložím "M117 text" tak to po kódu M25 provede ještě jeden řádek než se tisk pozastaví takže když např. v prvním výskytu M25 pod něj nevložím M117 tak to rovnou (bez toho aniž bych samozřejmě stihl filament vyměnit) natahovalo ihned filament. Nejspíš to má nějakou spojitost s bufferem do kterého se předčítají příkazy, ale to by mě teď tak netrápilo i když by mě také zajímalo proč se tak děje.

Děkuji, MG

Re: Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 27.07.2017 22:38
od Rebel
No nevim, jestli to neni zbytecne komplikovane, kdyz jak marlin, tak repetier fw umi M600, coz je prave gcod pro vymenu filamentu a udela to to, co mas nakonfigurovane ve FW, tedy vice mene to co popisujes.

Re: Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 27.07.2017 22:57
od mig01
A funguje M600 i na repetieru fw 0.91?

Re: Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 27.07.2017 23:15
od Rebel
to nevim, ale zda se mi jednodussi upgradovat na novejsi a pouzit nasi, nebo prusovu utilitu pro upravu gcode (vlozeni M600), nez to delat po tvem.

Re: Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 27.07.2017 23:35
od zemciko
To co ti to dělá je logické. Máš zaplou abs. poozici osy E a vytlačíš kus materiálu kvůli vyčištění trysky. V programu je pak příkaz najet na +- pozici kde to bylo před tím vytlačením filamentu v pauze.
Obejdeš to tak, že buď pojedeš osu E přírůstkové, nebo před pokračováním tisku (po tom vytlačení nového filemantu) nastavíš natvrdo pozici osy E na hodnotu jakou měl poslední příkaz před přerušením.

Re: Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 28.07.2017 00:06
od mig01
Paráda dekuji za odpoved. Vyzkouším to. Takže jakou presne pozici bych mel na E nastavit po tom vytlačeni v tomto konkrétním pripade? Ja uz se v tom trochu ztrácím... Díky.

Co se tyce upgradu fw, da se naimportovat eeprom ze starého fw na novy?

Re: Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 28.07.2017 07:03
od Rebel
eeprom implementovat jde, ale nevidim zase takovy problem tech par cisel prepsat i ruco. Kazdopadne jsem koukal, ze by verze 91 prikaz M600 mela umet.

Re: Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 28.07.2017 10:30
od BlackRather
Taky se tady připojím, o jakou ulitku se jedná a kde bych ji stáhl? Já dávám prostě pozastavení tisku a pak jenom ručně vytlačím nový filament abych měl čistou barvu a dám pokračovat. Musím u toho ale sedět a hlídat výšku kdy to stopnout.

Re: Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 28.07.2017 10:47
od Rebel
No treba tady na foru viewtopic.php?f=47&t=1874 :D

Re: Výměna barvy filamentu uprostřed tisku na jednoextruderu

PříspěvekNapsal: 28.07.2017 11:42
od mig01
Tak už mi to maká dle představ. Stačilo pouze na konec mého kódu ještě přidat řádek G92 E0. Funguje to parádně.

Kód: Vybrat vše
M85 S0 ;disable timeout
G91 ;use relative coordinates
M400 ;wait buffer
G1 E-50.000000 F20000 ;filament up
G1 Z5 ;extruder up 5 mm
G90 ;absolute
G1 X20 Y20
G91 ;relative
M300 s1000 p400 ; Beep
M400 ;wait buffer
M25 ;pause
M117 !Vymen filament!
G1 E50.000000 F150 ;filament down (clean color)
M300 s1000 p400 ; Beep
M400 ;wait buffer
M25 ;pause
M117 !Odstran zbytek!
G1 Z-5 ;extruder down 5 mm
G90 ;use absolute coordinates
G92 E0 ;reset extruder position