Výměna barvy filamentu uprostřed tisku na jednoextruderu
Napsal: 27.07.2017 22:03
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).
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
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