Jdi na navigaci předmětu

Slicing

3D tiskárna je ve výsledku celkem jednoduché zařízení. Nefunguje jako krabička, na kterou pošleme 3D model v libovolném formátu a z tiskárny začne vytékat plast ve tvaru zadaného 3D modelu. Pro tisk potřebujeme na tiskárnu odeslat přesná tisková data.

Funguje to podobně jako u 2D tiskáren, na tiskárnu také neodesíláme přímo .pdf nebo .tex dokumenty, ale musejí být převedeny do PostScriptu. 2D tiskárny jsou ale o něco chytřejší než 3D tiskárny, jelikož jim stačí pouze ta postscriptová data, nikoliv přímé instrukce kdy a kde má tiskárna pohnout tiskovou hlavou nebo posunout válec.

Tiskovými daty pro 3D tiskárny jsou tak přesné instrukce kdy, odkud, kam a jak rychle se má tryska tiskárny pohnout a v jaký moment a kolik se vytlačí plastu. Tyto příkazy tiskárna poslouchá a „hloupě“ je provádí (až na výjimky – některé firmwary provádějí optimalizaci) bez ohledu na to, aby měla tiskárna ponětí o tom, co vlastně ve výsledku tiskne. Takové informace dodáváme ve formátu GCode.

Tisková data musíme tiskárně připravit a jedná se o netriviální úkol. Úspěšná příprava dat totiž definuje jak úspěšný výsledek tisku bude. Ve hře je mnoho faktorů, které je nutné nastavit – rychlosti, teploty, správné pohyby, tisk struktur, které nejsou součásti 3D modelu apod.

Záznam z online cvičení z roku 2020.
Vrstvy naslicovaného modelu
Obrázek 1. Naslicovaný model chobotničky

GCode

GCode je textový soubor, člověkem relativně čitelný (popisuje však body v prostoru, které se z čísel dají představit těžce), primárně však určen pro strojové zpracování.

GCode existoval dříve než 3D tiskárny (první implementace se objevila v 50. letech) a byl používán pro CNC stroje (3D tiskárna je ovšem podle definice také CNC stroj). Pro účely 3D tisku jsou do GCodu přidány specifické kódy (začínající na M), které definují ovládání funkcí, které jsou určeny pro 3D tisk (teplota trysky, vytlačování plastu).

Každý řádek představuje instrukci. Ta je popsána kódem, který je uveden jako první (např. G1) a za ním následují písmenem pojmenované argumenty (některé instrukce argumenty nemají, některé argumenty jsou volitelné) oddělené mezerou (např. E4.00000 F3000.00000).

Ukázka 1. Útržek z ukázkového souboru GCode
...
M900 K200
G21
G90
M83
G1 Z0.200 F10800.000
G1 E-4.00000 F4800.00000
G1 Z0.800 F10800.000
G1 X83.160 Y86.215
G1 Z0.200
G1 E4.00000 F3000.00000
M204 S1000
G1 F1800
G1 X83.537 Y85.576 E0.03743
G1 X83.991 Y85.070 E0.03433
G1 X107.449 Y63.321 E1.61475
G1 X108.199 Y62.760 E0.04729
G1 X108.903 Y62.398 E0.03996
G1 X109.644 Y62.175 E0.03905
G1 X110.427 Y62.102 E0.03971
G1 X142.209 Y63.237 E1.60533
G1 X143.311 Y63.369 E0.05600
...

Nástroje pro tvorbu GCode

Generovat výše popsaný GCode ručně by bylo nejen nepraktické, ale u složitějších modelů pro běžného smrtelníka až nemožné. K tvorbě tiskových dat nám pomáhají programy označované jako slicery. Jejich název je odvozen ze slova „slice“ (v překladu „plátek“). Protože se tisk provádí po vrstvách, je vstupem těchto programů nějaký 3D model a výstupem (naplátkovaný) 3D model určený pro tisk. Proto se tento proces nazývá „slicing“ („naplátkování“).

Slicerů existuje řada, některé jsou lepší, jiné horší, některé mají dobré UI ale neodvádějí tak dobrou práci, jiné jsou zase výbornými slicery ale mají příšerné UI. Najdou se i ty, které disponují obojím. Slicer může být software samostatný, nebo integrovaný v nějakém větším celku (např. v ovládacím softwaru pro 3D tiskárnu).

V předmětu BI-3DT budeme používat program Slic3r. Řadí se mezi nejpoužívanější, je to open-source software a kvalita výstupu je dostatečně dobrá.

Slic3r

Slic3r je od roku 2011 vyvíjen komunitou okolo projektu RepRap. Je dostupný pro všechny populární operační systémy.

Do tohoto programu budeme importovat STL model, který chceme tisknout, dále nastavíme správnou konfiguraci tiskárny (její rozměry a jakými funkcemi disponuje) a nastavíme parametry tisku (teploty, rychlosti, atd.). Výstupem je GCode soubor – tisková data, která mohou být odeslána na tiskárnu.

Na cvičení budeme používat poslední verzi Slic3ru ≥ 1.3.0. V této verzi lze jednotlivé karty otevřít v nabídce Settings.

Okno Slic3ru
Obrázek 2. Výchozí okno programu Slic3r (verze 1.3.0)

Konfigurační soubor pro tiskárny

Nabídka file
Obrázek 3. Položka Load Config Bundle

Stáhněte si konfigurační bundle pro tiskárny Hybrix, které používáme na tomto cvičení.

slic3r_config_bundle.ini

Tento soubor načtěte pomocí File → Load Config Bundle. Po načtení config bundlu je často nutné program restartovat. Úspěšné načtení config bundle poznáte podle nových položek vpravo nahoře (ve filamentu se objeví na výběr PET a v tiskárnách Hybrix).

Upozornění:

Nastavit správný konfigurační soubor je důležité. Nevhodně zvolená konfigurace může způsobit, že se v GCode objeví instrukce nevhodné pro danou tiskárnu (např. se může začít tisknout mimo tisknutelnou oblast) a takové instrukce mohou zapříčinit neúspěšný tisk, nebo v horším případě poškodit tiskárnu.

Podpůrné struktury

Kromě samotného 3D modelu, který sliceru dodáte, může slicer přidat další struktury, které nejsou v 3D modelu. Jde o struktury, které pomáhají při tisku – pro lepší přilnavost, pro tisk převisů apod.

Vnitřek modelu

Vnitřek modelu
Obrázek 4. Vnitřek naslicovaného modelu chobotničky

V minulých cvičeních jste se dozvěděli, že meshí popisujeme pouze plášť objektu, nikoliv jeho vnitřek. Fyzicky na tiskárně však nelze vytisknout pouze tento plášť. Slicer se postará o vytvoření správné výplně objektu. Tato výplň se označuje slovem „infill“ (výplň).

Předměty se běžně netisknou duté (vršek objektu by se neměl na co tisknout), ani plné (plýtvání filamentem a vzniká v předmětu pnutí, které narušuje integritu výtisku). Vyšší hustota infillu dělá předmět odolnější, těžší, ale také dražší a déle se tiskne. Nízká hustota naopak může zapříčinit nevzhledný výtisk (plášť objektu se může na některých místech propadat). V praxi se infill u obecného objektu nenastavuje na nižší hodnotu než 10 % ani na hodnotu vyšší než 50 %. Existují ale tvary, které se dají tisknout duté nebo s velmi malým infillem.

Podpory (supports)

Supporty
Obrázek 5. Naslicovaný držák s podporami (zelená barva)

Často se stává, že potřebujeme vytisknout model s převisy. Ze zřejmých fyzikálních důvodů takový tisk u FDM tiskáren není možný (tiskárna by tiskla do vzduchu).

Často lze tyto problémy řešit otočením modelu, nebo jeho rozdělením na více částí a následným ručním slepením po dokončení tisku. Někdy takové úpravy však nejsou možné nebo žádoucí a tak může slicer přidat k našemu modelu podpůrné struktury, které se po dokončení tisku odlomí, odřežou či jinak odstraní.

Rafts, skirts, brims

Určité typy výtisků mají problém s přilnavostí k povrchu tiskové plochy. V průběhu tisku se pak mohou odlepit a v tu chvíli se tisk stává neúspěšným.

failed print
Obrázek 6. Odlepený základ výtisku uprostřed nehlídaného tisku může skončit katastrofou (nebo moderním uměním, záleží na úhlu pohledu)

Problémové jsou především takové modely, které mají příliš malou styčnou plochu s tiskovou deskou a plocha, která předmět drží, je příliš malá (představte si např. model stolu který začínáme tisknout od nohou – celý předmět drží pouze na čtyřech malých čtverečcích).

Raft
Struktura umístěná pod výtiskem vylepšující přilnavost k tiskové ploše. Rafty jsou určeny především pro ABS materiály, kterým se kraje výtisku při tisku zkroutí. Jsou užitečné i pro modely, které mají příliš malou styčnou plochu s tiskovou deskou. Vytvoří pro ně mnohem větší přilnavý základ. Raft vzniká posunutím objektu o několik málo vrstev vzhůru (do vzduchu) a podložením objektu podporou (supportem).
Skirt
Obrysová struktura zajišťující stabilní průtok plastu při prvních vrstvách tisku. Tiskne se dříve, než první vrstva předmětu a díky tomu jsou vytlačeny všechny vzduchové bubliny v trysce a stabilizuje se průtok plastu. Některé slicery k těmto účelům využívají jiných struktur (např. Prusa Slic3r dělá linku o šířce tiskové plochy na úplném kraji desky). Skirtu lze nastavit i vyšší počet vrstev a dá se tak využít i pro ochranu tisku před průvanem a následným popraskáním, ale v praxi se tento způsob příliš nepoužívá, neboť se tím zbytečně zvyšuje spotřeba materiálu a doba tisku, navíc jde o velmi nespolehlivou ochranu (lepší je dát tiskárnu do skříně).
Brim
Další ze struktur vylepšující přilnavost k tiskové ploše a redukující zkroucení krajů. Technicky jde o skirt s nulovou vzdáleností od modelu a s výškou jedné vrstvy. Nenachází se pod výtiskem, ale pouze rozšiřuje první vrstvu o zadanou velikost. Brim nenabídne takové vylepšení přilnavosti jako Raft, nicméně je mnohem rychlejší, jednodušší, narozdíl od Raftu nenechává na spodku modelu nerovnosti a pro většinu případů je dostačující.
raft
Obrázek 7. Raft
skirt brim
Obrázek 8. Skirt a brim

Konfigurace tisku v programu Slic3r

Nyní přejdeme k tomu, co lze nastavit v programu Slic3r a k čemu je to dobré.

Karta Plater

Na kartě Plater pracujete s objekty, které chcete tisknout. Tlačítkem Add můžete přidat STL soubor. V 3D náhledu můžete objekty rozložit po tiskové ploše. Dalšími tlačítky ve vrchním panelu můžete vybraný objekt manipulovat (otáčet tlačítky Rotate, či měnit jeho velikost tlačítkem Scale).

Vpravo dole se zobrazují informace o vybraném objektu. Lze vidět jeho velikost v milimetrech (pro kontrolu) a další vlastnosti.

Dole lze vybírat z několik pohledů, pro nás jsou především důležité pohledy 3D a Preview. V 3D pohledu lze pracovat s rozpoložením objektů, pohled Preview vám ukáže, jak bude výsledný tisk vypadat, jaké struktury se vytisknou a lze vidět i náznak jednotlivých vrstev.

Karta Print Settings

Print Settings
Obrázek 9. Karta Print Settings

Kartě Print Settings věnujte největší pozornost. Zatímco většinu důležitých hodnot v ostatních kartách za vás nastavil konfigurační soubor, který jste si stáhli výše, nastavení tisku bude vaši hlavní úlohou při práci na cvičeních.

Níže uvedeme všechny důležité parametry, které budete při tisku na cvičeních používat. Pokud se chcete něco dozvědět o parametrech, které neuvádíme, doporučujeme pro samostudium vybrat jeden klidný večer nad Slic3r manuálem.

Stránka Layers and perimeters

Layer height
Ovlivňuje výšku vrstvy – přímo ovlivňuje kvalitu a dobu trvání tisku. Rozsah smysluplných hodnot ovlivňuje průměr trysky, která je nainstalována na tiskárně.
First layer height
Ovlivní výšku první vrstvy. Nastavuje se na menší hodnotu než zbytek modelu pro lepší přilnutí k tiskové ploše.
layer height frogs
Obrázek 10. Porovnání kvality tisku podle výšky vrstvy (Creative Tools, CC BY 2.0)
Perimeters
Počet perimetrů na krajích tisku (neovlivňuje rovné plochy na spodku a vršku předmětu).
Solid layers
Počet vrstev s plnou výplní na spodku a vršku. Čím více vrstev zvolíme, tím pevnější bude vrchní a spodní povrch a tím lépe se podaří zakrýt nastavený infill. Vysoká čísla však zvýší dobu tisku a spotřebu materiálu.
perimeters
Obrázek 11. Jak ovlivňuje tisk nastavení perimetrů

Stránka Infill

Na této stránce lze nastavit vlastnosti infillu, o kterém víme z kapitoly Vnitřek modelu.

Fill density
Určuje hustotu vnitřní výplně.
Fill pattern
Určuje vzorek výplně.
External infill pattern
Určuje vzorek výplně na vrchních a spodních plochách zvenčí.
Solid infill every
Zesílí odolnost předmětu vytisknutím plné výplně (100 %) každých n vrstev.
Fill angle
Úhel vzorku výplně.
Solid infill threshold area
V malých částech předmětu (např. nějaké tenké trubičky či spojovník) slicer vyplňuje plnou výplní (100 %). Tato hodnota určuje práh plochy, při které se část předmětu považuje za malou.
infill
Obrázek 12. Různé hustoty infillu

Stránka Skirt

Na této stránce lze nastavit Skirt či Brim.

Loops
Počet obrysů skirtu. Pro běžné použití k vyčištění trysky před tiskem první vrstvy stačí ve většině případů jeden až dva.
Distance from object
Vzdálenost skirtu od objektu.
Skirt height
Kolik vrstev bude skirt vysoký. Pro vyčištění trysky se většinou používá pouze jeden.
Exterior brim width
Nenulová hodnota vygeneruje brim kolem předmětu o zadané velikosti.

Stránka Support material

Na této stránce lze nastavit supporty, nebo raft.

Generate support material
Zapne generování podpor.
Overhang threshold
Určuje hranici, do jak příkrých převisů chcete podpory generovat. Dá se nastavit v procentech: o kolik procent perimetru ještě smí další vrstva přesahovat vrstvu pod ní (čím vyšší číslo, tím méně podpor); případně ve stupních (náklon od podložky, čím vyšší úhel, tím více podpor).
Raft layers
Určuje kolik vrstev raftu chcete pod model vytisknout.

Ostatní karty

Karta Filament Settings, jak název napovídá, skrývá nastavení vztahující se k filamentu. Ze jsou nejdůležitějšími položkami Diameter (určující průměr struny) a nastavení teplot, které se liší podle materiálu (jak se dozvíte v prvním cvičení věnující se tisku). Na stránce Cooling pak lze definovat chování ventilátoru k dodatečnému chlazení výtisku (některé materiály jej potřebují, ale naše tiskárny jím nedisponují).

Karta Printer Settings slouží k nastavení parametrů tiskárny (velikost a tvar tiskové plochy, počet extruderů atd.). Zatímco položky na kartách Print Settings a Filament Settings měníte prakticky při každém tisku, položky na tomto panelu zůstávají povětšinou netknuté, dokud nezměníte konfiguraci tiskárny.

Většinu těchto parametrů nastavuje náš konfigurační soubor. I přesto však doporučujeme zběžně tyto parametry projít, zájemce, kteří chtějí parametry podrobně zkoumat opět odkážeme na Slic3r manuál.

Slicing krok za krokem

V této kapitole si ukážeme celý proces slicingu na jednom jednoduchém ukázkovém modelu. Pro slicing použijeme velmi zjednodušený model Eiffelovy věže, který půjde bezpečně škálovat.

Model chceme vytisknout čtyřikrát: jednou v dvojnásobné velikosti, jednou v plné velikosti a dvakrát s poloviční velikosti (1× 200 %, 1× 100 %, 2× 50 %). U plné velikosti se však obáváme, že bude věž vyšší, než kam dosáhne tiskárna, takže tuto variantu rozdělíme na dvě části a po dotištění ji slepíme. Tisk budeme považovat jako pokusný a tak nastavíme parametry tak, aby byl tisk co nejrychlejší, ale zároveň se podařil a výsledek byl alespoň minimálně estetický (nemělo by to být škaredé). Obáváme se, že převisy na spodku Eiffelovy věže tiskárna nezvládne, proto přidáme podpůrné struktury. Dále máme obavy, že se při tisku mohou nožičky odlepit od tiskové podložky, takže přidáme struktury pro vylepšení přilnavosti.

Důležité:

Před samotnou přípravou tiskových dat se ujistíme, že máme ve Slic3ru naimportovaný správný config bundle. Ten lze stáhnout na této stránce. Do Slic3ru jej importujeme pomocí položky Load Config Bundle, nikoliv pomocí Load config.

Načtení modelu a jednoduché úpravy

slicing sbs 01
Obrázek 13. Po první fázi by to mohlo vypadat nějak takto
  1. Na kartě Plater pomocí tlačítka Add ve vrchní nástrojové liště přidáme STL soubor na tiskovou desku.
  2. Tlačítkem More v nástrojové liště zduplikujeme model do dvou kopií.
  3. Tlačítkem Scale v nástrojové liště nastavíme velikost objektu na 25 %. Jde o velikost objektu relativní k originální velikosti. Číslo je tedy udává danou velikost, pokud dvakrát nastavíme velikost na 50 %, výsledná velikost nebude 25 %, ale stále 50 %.
  4. Levým tlačítkem v okénku s 3D náhledem rozložíme objekty podle potřeby. Tlačítkem Arrange si můžeme nechat rozložit objekty automaticky.
  5. Škálování objektu ovlivňuje vždy všechny kopie vytvořené pomocí tlačítka More (to platí obecně pro všechny úpravy objektu). Abychom mohli vložit dvě různé velikosti stejného objektu, musíme tlačítkem Add nahrát STL soubor znovu a tím vytvořit nový objekt, který už bude mít samostatné nastavení velikosti. Tomu nastavíme velikost 50 %.
  6. Jako poslední vložíme znovu další stejný objekt tlačítkem Add a provedeme rozpůlení. K tomu slouží tlačítko Cut v nástrojové liště. Otevře se dialog, ve kterém nastavíme požadovanou výšku, ve které se řez provede. Zaškrtneme obě zaškrtávátka Upper part a Lower part, jelikož si po řezu chceme ponechat obě části.
  7. Výsledek by měl vypadat podobně jako na ukázkovém screenshotu. Pokud jsme s rozložením tisku spokojeni, můžeme přejít k nastavení parametrům tisku.

Nastavení vlastností tisku

slicing sbs 02
Obrázek 14. Výsledek slicingu
  1. Ve spodní části karty Plater se nacházejí tlačítka pro výběr pohledu. Při nastavování parametrů tisku je užitečný pohled Preview, který nejen dává náhled, jak bude výsledný tisk vypadat, ale také zobrazí všechny přídavné struktury, které v parametrech tisku nastavíme. Sliderem umístěným napravo od náhledového okénka můžeme náhled blíže prozkoumat. Posouváním slideru zespoda nahoru simulujeme průběh tisku. Každou změnu v nastavení tisku tak můžeme na této kartě kontrolovat.
  2. Otevřeme kartu Print settings v nabídce Settings → Print Settings.
  3. Na stránce Layers and perimeters nastavíme počet perimetrů na 2 (položka Perimeters), plné vrstvy na spodku a vršku také na 2 (položka Solid layers).
  4. Na stránce Infill nastavíme výplň na 15 %.
  5. Na stránce Skirt and brim zařídíme, aby se tiskla struktura pro lepší přilnavost. Nastavíme Exterior brim width na 2 mm.
  6. Na stránce Support material necháme tisknout podpory na místech, kde je velký převis. Zaškrtneme možnost Generate support material. Tiskárně víceméně důvěřujeme, a věříme, že zvládne převisy od 10° a více. Nastavíme položku Overhand threshold na 10°.
  7. Na stránce Speed zrychlíme tisk na úkor kvality. Rychlost tisku perimetrů zvýšíme o 5 mm/s a rychlost tisku infillu zvýšíme o 10 mm/s. Nastavíme Perimeters na 40 mm/s a Infill na 55 mm/s.
  8. Výsledek vyexportujeme pomocí tlačítka Export G-code…​ na pravé straně rozhraní.

Credits

Na obrázcích se objevovaly modely: