Tegye 3D nyomtatóját önműködővé - Auto-Ejection, nyomtatási várólisták és végtelen ciklusok

Tegye 3D nyomtatóját önműködővé - Auto-Ejection, nyomtatási várólisták és végtelen ciklusok

Kezdjük is azonnal! Ha Klipper nyomtatóval rendelkezik, az egész dolog rendkívül egyszerű – mivel ezek a funkciók közvetlenül a Klipper firmware-be vannak integrálva. Mindazonáltal gyakran figyelmen kívül hagyják őket.

Ebben az oktatóanyagban az Orca Slicer szofvert használjuk, de ez bármilyen Slicer használatával működni fog.


‼️ FIGYELEM ‼️ FIGYELEM ‼️ FIGYELEM ‼️ FIGYELEM ‼️ FIGYELEM ‼️

A következő utasítások a G-kód és a firmware szerkesztésére vonatkoznak. Ha itt hibázik, károsíthatja a nyomtatóját. Mostantól CSAK saját felelősségére cselekszik!

‼️ FIGYELEM ‼️ FIGYELEM ‼️ FIGYELEM ‼️ FIGYELEM ‼️ FIGYELEM ‼️


Nyomtatási várólista beállítása

Nyissa meg az Orca Slicer alkalmazást, és lépjen az eszköz beállításokhoz. Ezután menjen a gépbeállításokhoz (Mainsail esetén) vagy a konfigurációhoz (Fluidd esetén) a bal oldali eszköztáron. Nyissa meg a moonraker.conf fájlt, és adja hozzá a következőket:

[job_queue]
load_on_startup: True
automatic_transition: True
job_transition_delay: 10
job_transition_gcode: CLEAR_BED

Győződjön meg arról is, hogy a következők benne vannak:

[file_manager]
queue_gcode_uploads: True
enable_object_processing: False

Mentse el a fájlt, és indítsa újra a rendszert.

Ez beállítja a várólistát – az egyik nyomtatási feladat automatikusan követi a másikat. Pontosan ezt teszi az első két sor. Az átmeneti késleltetés biztosítja, hogy a nyomtatási feladatok között 10 másodperces szünet legyen – ezt az értéket természetesen tetszés szerint módosíthatja. Az úgynevezett Transition-G-kód az a G-kód, amelyet két nyomtatási feladat között hajtanak végre. Itt kell megadni, hogy a nyomtató automatikusan kiadja a kész nyomatot a következő nyomtatás megkezdése előtt.

Most menjen vissza a géphez, és nyissa meg a gcode_macro.cfg fájlt. Ott a következőket adja hozzá:

[gcode_macro CLEAR_BED]

G-Code:

M190 S30 #wait for bed temp to be 30
G91 #relative positioning
G1 Z10 #Raise Z10
G90 #absolute positioning
G1 X110 Y218 F3000 #Move printhead to middle and back
G1 Z1 #Move printhead down
G90 #absolute positioning
G1 X110 Y1 Z1 F2400 #Push Print off

Ez a makró két nyomtatási feladat között kiüríti a nyomtatóágyat. Az első parancs addig vár, amíg az ágy lehűl 30 °C-ra. A 30 °C jól működött nálunk – egy 3DJake texturált PEI lapot használtunk. Ha más lapot vagy Filamentet használ, akkor lehet, hogy egy kicsit kísérleteznie kell. Tesztjeinkhez kizárólag a 3DJake ecoPLA terméket használtuk.

A G91 aktiválja a relatív pozicionálást – azaz minden további mozgásparancs a nyomtatófej aktuális pozíciójára vonatkozik. G1 esetén a nyomtatófej kissé felfelé és a nyomtatott résztől elmozdul. Ezután a G90 visszatér abszolút pozicionálásra – a nyomtatófej mostantól rögzített XY koordinátákra mozog a nyomtatási területen, függetlenül attól, hogy hol jelenleg hol helyezkedik el. A következő G1 parancs a nyomtatófejet pontosan az X tengely közepére mozgatja, majd 3000 mm/perc sebességgel egészen a nyomtatóágy széléig mozgatja. A nyomtatófej ezután a G1 paranccsal 1 mm-rel lejjebb mozdul az ágy felett, majd az utolsó G90 paranccsal előretolja a kész modellt.

Ez alapvetően minden! Most már csak elő kell készítenie és ki kell nyomtatnia egy fájlt – majd közvetlenül utána küldeni a következőt. Az eszköz oldalán látni fogja, hogy elindult egy sor. Amint az első nyomtatás befejeződött, a CLEAR_BED makró automatikusan elindul. A nyomtató ezután megvárja, amíg az ágy lehűl 30 °C-ra, majd eltávolítja a modellt. Mindenféle erőfeszítés nélkül!


Nyomtatás ismétlése végtelen ciklusban

Oké, megvan a dolog a várólistákkal. De mi van akkor, ha ugyanazt a fájlt újra és újra ki szeretné nyomtatni? Erre való az SD_LOOP parancs.

Ehhez egyszerűen menjen a printer.cfg fájlba, és illessze be valahova az [sdcard_loop] szakaszt – a pontos hely nem játszik nagy szerepet. Ez alapvetően lehetővé teszi a nyomtatások cikluson belüli futtatását. Most már csak egy megfelelő G-kód parancsra van szüksége az egész elindításához. Ennek a legjobb módja közvetlenül a Slicer programban van – azt javaslom, hogy ehhez hozzon létre egy saját nyomtatási profilt. Ez lehetővé teszi a könnyű váltást a „normál nyomtatás” és a „Loop nyomtatás” között.

A nyomtatóprofilban lépjen a gép G-kódjaihoz, és a Start-G-kódba írja be a következőt: SDCARD_LOOP_BEGIN COUNT=5. Ebben az esetben a nyomtatás öt alkalommal ismétlődik meg. Természetesen beállíthatja az értéket – és ha végtelenszer szeretné ismételni a nyomtatást, egyszerűen állítsa be a COUNT=0 értéket.

Bár nem használunk nyomtatási várólistát, ugyanazt a G-kód makrót továbbra is használhatja a nyomtatóágy tisztításához. Két lehetősége van: Vagy közvetlenül a Slicer End-G-kódjába másolja a korábban létrehozott makró tartalmát, vagy egyszerűen beírja a CLEAR_BED parancsot a End-G-kódjában, feltételezve, hogy már létrehozta a makrót a macro.cfg fájlban.

Nagyon fontos: az SDCARD_LOOP_END paraméternek az End-G-kód végén kell lennie. Ez a jel a nyomtatónak, hogy a ciklus itt véget ér. Minden az SDCARD_LOOP_BEGIN COUNT=5 és az SDCARD_LOOP_END között ennek megfelelő gyakorisággal ismétlődik.

Most mentse el – és máris kezdheti a nyomtatást. A Loop mostantól automatikusan fog futni!

Amikor a nyomtatás befejeződött, a folyamatjelző sáv egyszerűen 99%-on marad, amíg a nyomtatóágy hőmérséklete 30°C-ra nem csökken. Csak ezután távolítja el automatikusan a modellt – és ekkor kezdődik a következő futtatás.

Ha az aktuális nyomtatási futtatás után le szeretné állítani a ciklust, egyszerűen beírhatja az SDCARD_LOOP_DESIST parancsot a konzolba. Ekkor a következő nyomtatás nem indul el.


Marlin nyomtató

És mi van, ha nincs Klipper nyomtatója? Semmi gond – csinálhat valami nagyon hasonlót ahhoz, amit az előbb mutattunk. Csupán az End-G-kódot kell módosítania, hogy a nyomtatója automatikusan kiadja a kész nyomatot. Az alapötlet ugyanaz, de az értékek a nyomtató modelljétől függően változhatnak.

Nézzük meg közelebbről:

M190 S30 #wait for bed temp to be 30
G91 #relative positioning
G1 Z10 #Raise Z10
G90 #absolute positioning
G1 X110 Y218 F3000 #Move printhead to middle and back
G1 Z1 #Move printhead down
G90 #absolute positioning
G1 X110 Y1 Z1 F2400 #Push Print off

Alapvetően bármelyik nyomtatóhoz használhatja az itt látható parancsokat – de legyen óvatos: Az X és Y koordinátákhoz tartozó G1 parancsok (5. és 8. sor) csak a K1 nyomtatóhoz vagy hasonló, azonos nyomtatási volumenű CoreXY nyomtatókhoz alkalmasak.

Tudnia kell, mekkora az építési volumen. Ha a nyomtatóágy pl. 250 mm széles, az 5. sornak így kell kinéznie:

G1 X125 Y248 F3000 #Move printhead to middle and back

Ezáltal a nyomtatófej az X tengely közepére kerül (azaz 125 mm-re a peremtől), az Y tengelyen pedig egészen hátra kerül, mindössze 2 mm-re a hátsó peremtől.

Akkor a 8. sornak így kell kinéznie:

G1 X125 Y1 Z1 F2400 #Push Print off

Ezáltal a nyomtatófej az X tengely közepén marad, de teljesen előre mozog, mindössze 1 mm-re az elülső peremről, hogy a nyomatot letolja az ágyról.

Ne feledje: Ez a módszer a nyomtatófejjel történő letolásra szolgál. Azonban nem feltétlenül kell ehhez a nyomtatófejet használni – gyakran még jobb, ha a teljes portálkeretet használjuk a letoláshoz.

Ez azonban problémás a K1 esetében, mert a szíjak útban vannak. Ezért a lehető legkisebb erőt kell kifejteni a portálra – ezért javasoljuk, hogy a K1 esetében a nyomtatófejjel tolja le a nyomatot.

Ha a Gantry használatával akarja letolni, csak meg kell változtatnia a nyomtatófej pozícióját az X tengelyen. Szóval csak tegye oldalra. Egy 250 mm széles nyomtatóágy esetén az 5. és 8. sor így nézhet ki:

5. sor: G1 X1 Y248 F3000 #Move printhead to middle and back
8. sor: G1 X1 Y1 Z1 F2400 #Push Print off

És hogy néz ki a Looping a Marlin esetében? Ha Marlin nyomtatója van, alapvetően ugyanazt teheti, mint a Klipper esetében a Loopolással – csak az M808 paranccsal. Az elv ugyanaz marad: a Loop-ot a Slicer szoftverben a Start- és End-G-kóddal állítja be. Részletesebb információkat és példákat a Marlin weboldalán is találhat – érdemes megnézni, ha mélyebbre szeretne ásni.


Looping nem-Klipper nyomtatókhoz

Ha nincs Klipper nyomtatója, akkor is beállíthat egy Loop-ot egyszerűen több G-kód fájl összefűzésével és az SD-kártyáról történő kinyomtatásával. Alternatív megoldásként az egészet .3mf fájlként exportálhatja – ami alapvetően csak egy tömörített mappa.

Így működik az Orca Slicer használatával:

Szeletelje fel a nyomatot a szokásos módon, majd exportálja „Plate Sliced ​​​​File”-ként. Ezt a fájlt egy kicsomagolóval, például a WinRAR-ral nyithatja meg – a G-kódot ezután a metadata mappában találja. Nyissa meg a fájlt egy szövegszerkesztőben. Most már átmásolhatja a teljes tartalmat. Ha ugyanazt a fájlt többször szeretné kinyomtatni, egyszerűen illessze be a másolt kódot többször egymás után. Ha különböző modellekkel rendelkező nyomtatási várólistát szeretne létrehozni, akkor a többi modellt is szeletelnie kell, exportálnia kell a G-kódjukat, majd az első G-kód után be kell illesztenie őket.

Most egyszerűen mentse el a szerkesztett szövegfájlt, és zárja be. A WINRAR megkérdezi, hogy frissíteni szeretné-e az archívumot a módosításokkal – kattintson az „Igen” gombra, és a módosítások érvénybe lépnek. Ezután nyissa meg újra a .3mf fájlt az Orca Slicer programban. Az előnézetben most már látható, hogy a modellek átfedésben vannak, és a nyomtatási idő is megváltozott – pontosan ezt szerettük volna!

Most már csak el kell küldeni a fájlt a nyomtatóra – és az kinyomtatja és automatikusan kiadja a modellt annyiszor, ahányszor beillesztette a G-kódot.

► Ha az egészet egy Bambu Lab nyomtatóval – azaz egy A, P vagy X sorozatú modellel – végzi, akkor alapvetően ugyanúgy működik. De: Nagyon ajánljuk, hogy nézze meg a Factorian Design videóit. Mindenbe részletesen belemegy, és rengeteg munkát fektetett abba, hogy a Bambu nyomtatókhoz szükséges G-kód módosításokat tökéletesen elvégezze. Mindenképpen megéri megnézni, ha jól akarja csinálni!



Néhány dolog, amit érdemes szem előtt tartani:

End-G-kód szerkesztése

Előfordulhat, hogy egy hibaüzenet jelenik meg, amely arról tájékoztat, hogy a nyomtatónak minden tengelyt alaphelyzetbe kell állítania a CLEAR_BED makró futtatása előtt. Esetünkben ez azért történt, mert az END_PRINT makró egy M84 parancsot tartalmazott az End-G-kódban. És ez Önnel is megtörténhet – sok nyomtató makrókat használ az End-G-kódban ahelyett, hogy minden G-kód sort külön írna.

Mit tegyen? Keresse meg a megfelelő makrót (pl. END_PRINT) a macro.cfg fájlban, és szerkessze ott közvetlenül. Ha a teljes G-kód az End-G-kód mezőben található, akkor egyszerűen ott módosíthatja.

► End-G-kód teljes cseréje

Néhány nyomtató esetében, különösen azoknál, amelyeknél nincs hozzáférés a makrófájlokhoz, szükségessé válhat az End-G-kód teljes cseréje. Ilyen esetekben egy nagyon egyszerű kód gyakran elegendő, például:

M104 S0 ; extruder heater off
M140 S0 ; heated bed heater off (if you have it)
G91 ; relative positioning
G1 E-1 F300 ; retract the filament a bit before lifting the nozzle, to release some of the pressure
G1 Z+0.5 E-5 X-20 Y-20 F9000 ; move Z up a bit and retract filament even more
G28 X0 Y0 ; move X/Y to min endstops, so the head is out of the way
M84 ; steppers off
G90 ; absolute positioning

Ha a nyomtatóban található Nozzle-Wiper, könnyedén beilleszthet néhány G1 parancsot, hogy a fúvókát fölé mozdítsa és megtisztítsa nyomtatás után.

► Vegye figyelembe a helyigényeket

Ahhoz, hogy a nyomtatófej le tudja tolni a modellt az ágyról, először helyesen kell pozicionálnia magát – vagyis elegendő mozgásszabadsággal kell rendelkeznie ahhoz, hogy elég közel kerüljön az ágyhoz, mielőtt előremozdulna és lelökné a modellt.

A tesztünk során a nyomtatófejet az ágy hátuljához helyeztük. A K1 esetében ez konkrétan azt jelenti, hogy az építőtér hátsó 55 mm-e a nyomtatófej mérete miatt nem használható. Tehát mielőtt kipróbálná, mindenképpen mérje meg a nyomtatófej távolságát – és győződjön meg róla, hogy a modell nincs ebben a veszélyes zónában.

Szintén fontos: maga a modell mérete. A nagyon kicsi vagy lapos, nagy érintkezési felületű modellek gyakran túl erősen tapadnak – így szinte lehetetlen kinyomni őket. A nagyon nagy modellek rendkívül erősen tapadnak, és nehezen távolíthatók el. Ilyen esetekben általában jobb a teljes portálkeretet használni a letoláshoz – ez jelentősen nagyobb teljesítményt biztosít, és nagyobb modelleknél hatékonyabb, mint a nyomtatófej önmagában.

► Tapadás a nyomtatóágyhoz

A gyenge és a túl jó tapadás egyaránt problémát jelenthet: Ha a tapadás túl gyenge, nehéz lesz több egymást követő nyomatot készíteni pontosan ugyanarra a helyre - a modell a második menetben meglazulhat vagy elcsúszhat. Ha a tapadás túl erős, a nyomtatófej nem lesz képes leválasztani az alkatrészt - és ez legrosszabb esetben akár a nyomtatót is károsíthatja.

Mi a megoldás? Egy jó minőségű nyomtatóágy (pl. egy kiváló minőségű PEI lap) és egy tökéletesen beállított Z-Offset elengedhetetlen, ha megbízhatóan szeretné használni ezt az Auto-Ejection módszert.

► Megfelelő Filamentek

A zárt házat igénylő Filamentek nem alkalmasak ehhez a módszerhez – mivel a nyomtató ajtajának nyitva kell maradnia, hogy a modell kioldható legyen. Ez azt jelenti, hogy az ABS, nejlon, ASA és hasonló anyagok ki vannak zárva. Még a PETG is problémás lehet, mivel gyakran rendkívül jól tapad, és nehéz eltávolítani az ágyról.

► Purge Lines

Ha a nyomtató minden nyomtatás előtt húz egy Purge Line-t, akkor azt valami mással kell helyettesíteni. Például aktiváltuk a KAMP Purge Line-t a K1 esetében. Ha ez minden Loop esetében újra kiíródik anélkül, hogy eltávolítanánk, az problémákhoz vezethet.

De: A nyomtatónak minden nyomtatás előtt anyagot KELL előrevinnie a fúvóka előkészítéséhez. Ezért a tippünk: Cserélje ki a Purge Line-t egy keskeny peremre (pl. 2 mm) – ez a modellel együtt kilökődik.

► Forró hotend = Oozing-veszély

Ügyeljen arra, hogy a hotend kikapcsoljon, amikor a fűtőágy lehűl – különben az anyag tovább szivároghat (Oozing), és tönkreteheti az első réteget. Ez akkor fordulhat elő, ha teljesen eltávolítja az END_PRINT makrót. Ebben az esetben a hotend kikapcsolására szolgáló parancs már nem fut le automatikusan.

Adjon hozzá egy M104 S0 parancsot az End-G-kódhoz – ez a parancs kikapcsolja a fűtőblokkot. Fontos: Ügyeljen arra, hogy az SDCARD_LOOP_END elé helyezze, különben nem fog helyesen végrehajtódni.

► Használja a gravitációt!

Ha a modell nem esik le teljesen az ágyról a kiadáskor, egyszerűen használhatja a gravitációt! A nyomtató enyhe dőlésszöge – ahogy a Factorian Design videójában is látható – jelentősen növelheti az Auto-Ejection megbízhatóságát.

De legyen óvatos: Ha megdönti a nyomtatót, tegye azt egyenletesen és biztonságosan – és utána mindenképpen végezzen új Input-Shaping kalibrációt a tiszta nyomtatási eredmények biztosítása érdekében!

► Gurítsa le – de megfelelő módon!

Bedslinger esetén a kiadott alkatrész beszorulhat az ágy és a nyomtatóház közé. Egyszerűen helyezzen egy darab papírt vagy kartont határozottan a nyomtatóágy alá – ez lehetővé teszi, hogy a modell simán leguruljon anélkül, hogy bárhol is elakadna.

► Pusher Plate – a kiadást gyorsító eszköz

Ha még nagyobb megbízhatóságra vágyik a kiadás során, nyomtathat egy kis Pusher Plate-et – egy csavarozható lapot a nyomtatófejhez, amely hatékonyabban tudja letolni a nyomatot az ágyról. De: Ügyeljen a nyomtató maximális mozgástartományára! A lapnak sehol sem szabad ütköznie, különben gyorsan összetörik.