3D nyomtatás: mese a retractionről

Amikor az embergyerek 3D nyomtatót vesz és nekiáll azt kalibrálgatni, az egyik rákfene, amibe belefut, az a slicer szoftverekben "retraction" (=visszahúzás) néven emlegetett jószág.

Mi az a "retraction"?

A retraction arra jó, hogy amikor a nyomtató a nyomtatás során a hotendet a printerünk A-ból B-be úgy mozgatja, hogy közben nem kell a fejnek műanyagot lepakolnia, akkor az olvasztófejünkből valóban ne jöjjön az olvadt műanyag. Ha jön, akkor találkozunk szembe az oozing (=szivárgás) vagy stringing (~=szálasodás) buzzwordökkel - mindkettő ugyanazt jelenti. Én magyarul azt mondanám a jelenségre, hogy "szőrös modell" - ebből rögtön érteni fogod, miről beszélek:

Szóval stringing/oozing alatt azt értjük, amikor a fejből akkor is jön az olvadt nyersanyag, amikor a fejet A-ból B-be mozgatjuk anélkül, hogy anyagot tennénk le. Ha nem használunk retractiont, akkor "A" pontban az extuder megáll, a hotend elindul és elmegy "B" pontba, ahol az extuder újra elkezd anyagot nyomni a hotendbe. Amikor a hotend "A" pontban elindul, a nozzle végében levő olvadt anyag odaragadva az "A" ponthoz egy egyre vékonyodó "szőrt" húz a modellünkön.

A retraction minden hiedelemmel ellentétben nem fogja kirántani az olvadt nyersanyagot a nozzle belsejéből, hanem csak megszünteti az olvadékra ható nyomást, amit a felette levő még merev műanyagszál gyakorol rá.
A slicer szoftverekben a retraction három paraméterét tuningolhatjuk általában:

  • távolság (distance): hány mm-t húzódjon vissza a szilárd nyersanyag. Ez 1-5 mm közötti érték szokott lenni, bár nálam a Prusa i3 MK2 direkt extrudere már 0.8 mm-rel jól érzi magát.
  • sebesség (speed) : hány mm/s sebességgel történjen a visszarántás. Nem szabad se túl lassan, se túl gyorsan csinálni - én 35 mm/s értékre lőttem be.
  • emelési távolság (lift): retraction előtt mennyire emelkedjen el a fej a nyomtatási síktól. Ezt sem kell az egekbe tornászni, 1-2 layernyi emelés bőven elég. Nálam 0.5 mm-re van beállítva, ez 0.2 mm-es rétegeknél is kicsit több, mint 2 rétegnyi.

Kalibráljon filamentet temp towerrel Ön is!

Mielőtt a retraction beállításokat piszkálgatod, az adott nyersanyaghoz optimális hőmérsékletet érdemes belőni. Ehhez vagy azt játszuk, hogy egy viszonylag apró modellt különböző hőmérsékleteken kinyomtatunk egymás után, vagy megoldjuk az egészet egyben úgy, hogy nyomtatunk egy "temp towert". A temp tower egy olyan modell, ami Z blokkonként más hőmérséklettel készül, az adott célhőmérsékleteket a kinyomtatott modellen egy felirat jelzi és így szemmel könnyen megállapítható a nyersanyaghoz való optimális nyomtatási hőmérséklet:

Egy bárki által gyártott temp towert pusztán STL modellként letöltve persze nem vagy még kész, hiszen azt, hogy melyik réteg milyen hőmérsékleten készül el a slicer szoftvered fogja definiálni a nyomtatónak gyártott GCODE fileban. Miután a legszimpatikusabb temp tower modellt betöltöd a slicerbe, rá kell venni azt, hogy X rétegenként váltson hotend hőmérsékletet. Ezt persze megtehetjük kézzel is, de tegye fel a kezét az, aki látott már scriptet közelről és nem bízná ezt inkább valami automatára! Persze most megírhatnánk magunk is a GCODE-ba hőváltásokat injektáló scriptet - de minek, ha helyettünk megcsinálta ezt már más.

Szedjük le fablabnbg github oldaláról a tempinjector.py scriptet, töltsünk le vagy fabrikáljunk egy temp tower modellt, gyártassunk a kedvenc slicerünkkel GCODE-ot a temp tower STL fileunkból, majd injektáltassuk bele a hőváltásokat imígyen (ez egy Python script, úgyhogy egy Python interpreter persze nem árt alá :)):

tempinjector.py sourcefile.gcode targetfile.gcode STARTTEMP TEMP_INCREMENTS TEMP_STEPS_HEIGHT_MM BASE_HEIGHT_MM

A fenti paraméterek jelentése:

  • sourcefile.gcode: a forrás GCODE fileunk
  • targetfile.gcode: a cél GCODE fileunk
  • STARTTEMP: hány ℃-tól induljon a temp tornyunk gyártása
  • TEMP_INCREMENTS: hány ℃ értékkel változtassunk minden egyes lépésnél a hotend hőmérsékletén
  • TEMP_STEPS_HEIGHT_MM: hány mm magas egy elem a temp toronyban
  • BASE_HEIGHT_MM: hány mm magas a torony talpa

A tempinjector.py ezután legyártja az új GCODE-ot, amit már csak ki kell küldenünk a printernek.
A temp tower nyomtatása után azonnal látszani fog az adott anyaghoz való optimális hőmérséklet - szánSájn, tibiCsoki, wörldPísz!

2 thoughts on “3D nyomtatás: mese a retractionről

  1. Pingback: 3D nyomtatás: gyártsunk temp towert! | eFi.blog

Leave a Reply

Your email address will not be published. Required fields are marked *