Zadbaj o płynne działanie swojej drukarki 3D – dzięki automatycznemu wysuwaniu, kolejkom wydruku i nieskończonym pętlom!

Zadbaj o płynne działanie swojej drukarki 3D – dzięki automatycznemu wysuwaniu, kolejkom wydruku i nieskończonym pętlom!

Jeśli masz drukarkę Klipper, cała sprawa jest bardzo łatwa – ponieważ te funkcje są zintegrowane bezpośrednio z oprogramowaniem układowym drukarki Klipper. Często jednak są one pomijane.

W tym samouczku używamy programu Orca Slicer, ale będzie on działał z dowolnym wybranym przez Ciebie programem.


‼️ WARNUNG ‼️ WARNUNG ‼️ WARNUNG ‼️ WARNUNG ‼️ WARNUNG ‼️

Poniższe instrukcje dotyczą edycji kodu G i oprogramowania sprzętowego. Jeśli popełnisz tutaj błąd, możesz uszkodzić drukarkę. Od tej chwili działasz na własne ryzyko!

‼️ WARNUNG ‼️ WARNUNG ‼️ WARNUNG ‼️ WARNUNG ‼️ WARNUNG ‼️


Konfigurowanie kolejki wydruku

Otwórz Orca Slicer i przejdź do ustawień urządzenia. Następnie przejdź do opcji maszyny (w przypadku Mainsail) lub konfiguracji (w przypadku Fluidd) na pasku narzędzi po lewej stronie. Otwórz plik moonraker.conf i dodaj następujące polecenie:

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

Upewnij się również, że uwzględniono następujące elementy:

[file_manager]
queue_gcode_uploads: True
enable_object_processing: False

Zapisz plik i uruchom ponownie system.

Spowoduje to utworzenie kolejki – po jednym zadaniu drukowania automatycznie następuje następne. Dokładnie to samo robią pierwsze dwa wersy. Opóźnienie przejścia zapewnia 10-sekundową przerwę między zadaniami drukowania – oczywiście możesz dostosować tę wartość według potrzeb. Tak zwany kod G przejściowy to kod G wykonywany pomiędzy dwoma zadaniami drukowania. Tutaj musisz określić, czy drukarka ma automatycznie wysunąć gotowy wydruk przed rozpoczęciem kolejnego.

Teraz wróć do komputera i otwórz plik gcode_macro.cfg. Tam dodajesz następujące elementy:

[gcode_macro CLEAR_BED]

Kod G:

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

Ta makroinstrukcja czyści podłoże drukujące pomiędzy dwoma zadaniami drukowania. Pierwsze polecenie powoduje oczekiwanie, aż temperatura łóżka spadnie do 30 °C. Temperatura 30 °C sprawdziła się u nas dobrze – użyliśmy teksturowanej płyty PEI od 3DJake. Jeśli używasz innej płytki lub filamentu, może być konieczne przeprowadzenie kilku eksperymentów. Do testów używaliśmy wyłącznie naszego 3DJake ecoPLA.

G91 aktywuje pozycjonowanie względne – oznacza to, że wszystkie kolejne polecenia ruchu odnoszą się do aktualnej pozycji głowicy drukującej. W przypadku G1 głowica drukująca przesuwa się nieznacznie w górę i od drukowanej części. Następnie G90 powraca do pozycjonowania bezwzględnego – głowica drukująca przesuwa się teraz do ustalonych współrzędnych XY w obszarze drukowania, niezależnie od jej aktualnego położenia. Następne polecenie G1 przesuwa głowicę drukującą dokładnie do środka osi X i z powrotem do krawędzi stołu roboczego z prędkością 3000 mm/min. Następnie głowica drukująca przesuwa się w dół o 1 mm nad łożem za pomocą polecenia G1, a za pomocą ostatniego polecenia G90 przesuwa gotowy model do przodu.

To w zasadzie tyle! Teraz wystarczy przygotować i wydrukować jeden plik – a zaraz potem wysłać kolejny. Na stronie urządzenia zobaczysz, że kolejka została uruchomiona. Po zakończeniu pierwszego wydruku automatycznie uruchamiane jest makro CLEAR_BED. Następnie drukarka czeka, aż temperatura stołu spadnie do 30°C, po czym wyjmuje model. Bez żadnego wysiłku z Twojej strony!


Powtarzaj wydruk w pętli nieskończonej

Okej, mamy problem kolejek. A co jeśli chcesz drukować ten sam plik wielokrotnie? Właśnie do tego służy polecenie SD_LOOP.

Aby to zrobić, po prostu przejdź do pliku printer.cfg i wstaw gdzieś sekcję [sdcard_loop] – dokładna lokalizacja nie ma większego znaczenia. Dzięki temu można wykonywać wydruki w pętli. Teraz wystarczy tylko odpowiednie polecenie G-code, aby rozpocząć cały proces. Najlepiej zrobić to bezpośrednio w slicerze – zalecam utworzenie w tym celu własnego profilu drukowania. Dzięki temu można łatwo przełączać się między „ciśnieniem normalnym” a „ciśnieniem pętli”.

W profilu drukarki przejdź do kodów G urządzenia i wprowadź następującą wartość w polu kodu G początkowego: SDCARD_LOOP_BEGIN COUNT=5. W tym przypadku wydruk powtarzany jest 5 razy. Oczywiście możesz dostosować tę wartość – a jeśli chcesz, aby wydruk był powtarzany w nieskończoność, po prostu ustaw COUNT=0.

Chociaż nie korzystamy z kolejki wydruku, nadal można użyć tego samego makra G-code do wyczyszczenia stołu roboczego. Masz tutaj dwie opcje: albo skopiujesz zawartość makra, które utworzyliśmy wcześniej, bezpośrednio do końcowego kodu G swojego slicera, albo po prostu wpiszesz polecenie CLEAR_BED do końcowego kodu G, zakładając, że utworzyłeś już makro w pliku macro.cfg.

Bardzo ważne: SDCARD_LOOP_END musi znajdować się na końcu kodu G. Jest to sygnał dla drukarki, że pętla kończy się w tym miejscu. Wszystko pomiędzy SDCARD_LOOP_BEGIN COUNT=5 I Dlatego też SDCARD_LOOP_END jest powtarzane odpowiednio często.

Teraz wystarczy zapisać i rozpocząć drukowanie. Twoja pętla będzie teraz działać automatycznie!

Po zakończeniu drukowania pasek postępu po prostu zatrzymuje się na poziomie 99%, aż temperatura platformy drukującej spadnie do 30°C. Dopiero wtedy model zostaje automatycznie usunięty – i rozpoczyna się kolejny przebieg.

Jeśli chcesz zatrzymać pętlę po zakończeniu bieżącego przebiegu drukowania, możesz po prostu wpisać w konsoli polecenie SDCARD_LOOP_DESIST. Następnie kolejne drukowanie nie zostanie rozpoczęte.


Drukarka Marlin

A co jeśli nie masz drukarki Klipper? Nie ma problemu – możesz zrobić coś bardzo podobnego do tego, co właśnie pokazaliśmy. Wystarczy, że dostosujesz końcowy kod G, a drukarka automatycznie wysunie gotowy wydruk. Podstawowa idea jest taka sama, ale wartości mogą się różnić w zależności od modelu drukarki.

Przyjrzyjmy się temu bliżej:

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

Zasadniczo możesz używać poleceń pokazanych tutaj dla dowolnej drukarki – ale zachowaj ostrożność: polecenia G1 dla X i Y (wiersze 5 i 8) nadają się tylko do drukarki K1 lub podobnych drukarek CoreXY o identycznej objętości roboczej.

Musisz wiedzieć, jaka jest wielkość Twojej przestrzeni roboczej. Jeśli Twoje podłoże do drukowania np. Na przykład, jeżeli etykieta ma szerokość 250 mm, wiersz 5 powinien wyglądać następująco:

G1 X125 Y248 F3000 #Move printhead to middle and back

Spowoduje to przesunięcie głowicy drukującej do środka osi X (125 mm od krawędzi) i do tyłu osi Y, zaledwie 2 mm od tylnej krawędzi.

W takim razie linia 8 powinna wyglądać następująco:

G1 X125 Y1 Z1 F2400 #Push Print off

Dzięki temu głowica drukująca pozostaje w centrum osi X, ale przesuwa się całkowicie do przodu, zaledwie 1 mm od przedniej krawędzi, aby odsunąć wydruk od podłoża.

Pamiętaj: Ta metoda jest przeznaczona do pchania głowicą drukującą. Nie jest jednak konieczne używanie w tym celu głowicy drukującej — często lepszym rozwiązaniem jest wykorzystanie do pchania całej ramy portalu.

W przypadku K1 jest to jednak problematyczne, ponieważ paski przeszkadzają. Dlatego należy wywierać jak najmniejszą siłę na portal – dlatego zalecamy dociskanie K1 głowicą drukującą.

Jeśli chcesz przesunąć bramę, wystarczy zmienić położenie głowicy drukującej na osi X. Wystarczy przesunąć go na bok. W przypadku stołu roboczego o szerokości 250 mm linie 5 i 8 mogą wyglądać następująco:

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

A co z pętlą wokół Marlina? Jeśli masz drukarkę Marlin, możesz zrobić zasadniczo to samo, co w przypadku programu Klipper – używając tylko polecenia M808. Zasada pozostaje ta sama: pętlę tworzy się za pomocą kodu G początkowego i końcowego w programie do dzielenia. Bardziej szczegółowe informacje i przykłady znajdziesz również na stronie internetowej Marlin – warto tam zajrzeć, jeśli chcesz dowiedzieć się więcej.


Pętla dla drukarek innych niż Klipper

Jeśli nie posiadasz drukarki Klipper, nadal możesz utworzyć pętlę, po prostu łącząc kilka plików G-code i drukując je z karty SD. Alternatywnie możesz wyeksportować całość jako plik .3mf – który w zasadzie jest po prostu skompresowanym folderem.

Oto jak to działa w programie Orca Slicer:

Pokrój wydruk w zwykły sposób, a następnie wyeksportuj go jako „Plate Sliced File“”. Możesz otworzyć ten plik za pomocą, np. WinRAR – kod G znajdziesz w folderze metadata. Otwórz plik w edytorze tekstu. Teraz możesz skopiować całą zawartość. Jeśli chcesz wydrukować ten sam plik wielokrotnie, po prostu wklej skopiowany kod kilka razy z rzędu. Jeśli chcesz utworzyć kolejkę wydruku zawierającą różne modele, musisz podzielić pozostałe modele, wyeksportować ich kod G, a następnie wstawić je za pierwszym kodem G.

Teraz wystarczy zapisać edytowany plik tekstowy i zamknąć go. WINRAR zapyta Cię, czy chcesz zaktualizować archiwum o zmiany – kliknij „Tak”, a zmiany zostaną zastosowane. Następnie otwórz plik .3mf ponownie w programie Orca Slicer. W podglądzie widać teraz, że modele nachodzą na siebie, a czas drukowania również uległ zmianie – dokładnie o to nam chodziło!

Teraz wystarczy wysłać plik do drukarki, a ona wydrukuje i automatycznie wysunie model tyle razy, ile razy wprowadzisz kod G.

► Jeśli wykonasz całość na drukarce Bambu Lab – tzn. modelu z serii A, P lub X – to w zasadzie działa to tak samo. Ale: gorąco polecamy obejrzenie filmów od Factorian Design. We wszystko wchodzi z wielką szczegółowością i włożył mnóstwo pracy, aby wprowadzić niezbędne zmiany w kodzie G, idealne dla drukarek Bambu. Zdecydowanie warto, jeśli chcesz zrobić to dobrze!



Kilka rzeczy, o których należy pamiętać:

Edytuj ostateczny kod G

Może zostać wyświetlony komunikat o błędzie informujący, że drukarka musi ustawić wszystkie osie w położeniu początkowym, aby możliwe było uruchomienie makra CLEAR_BED. W naszym przypadku było to spowodowane tym, że makro END_PRINT zawierało polecenie M84 w końcowym kodzie G. To samo może przydarzyć się i Tobie – wiele drukarek używa makr w końcowym kodzie G zamiast pisać każdą linię kodu G osobno.

Co robić? Poszukaj w pliku macro.cfg odpowiadającego mu makra (np. END_PRINT) i edytuj je bezpośrednio tam. Jeśli cały kod G znajduje się w polu Końcowy kod G, możesz go po prostu tam dostosować.

► Całkowicie zamień ostateczny kod G

W przypadku niektórych drukarek, zwłaszcza tych, w których nie ma dostępu do plików makr, konieczna może być całkowita wymiana końcowego kodu G. W takich przypadkach często wystarczy bardzo prosty kod, na przykład:

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

Jeśli Twoja drukarka jest wyposażona w wycieraczkę dyszy, możesz łatwo wprowadzić kilka poleceń G1, aby przesunąć dyszę nad nią i wyczyścić ją po drukowaniu.

► Weź pod uwagę wymagania dotyczące przestrzeni

Aby głowica drukująca mogła zepchnąć model z platformy, musi najpierw przyjąć odpowiednią pozycję – tzn. musi mieć wystarczającą swobodę ruchu, aby zbliżyć się do platformy na tyle, by móc przesunąć się do przodu i zepchnąć model z platformy.

W naszym teście umieściliśmy głowicę drukującą z tyłu stołu. W przypadku K1 oznacza to konkretnie: Tylne 55 mm przestrzeni roboczej nie może być wykorzystane ze względu na rozmiar głowicy drukującej. Przed wypróbowaniem tej funkcji należy zmierzyć odstęp od głowicy drukującej i upewnić się, że model, który drukujesz, nie znajduje się w strefie zagrożenia.

Równie ważny jest sam rozmiar modelu. Bardzo małe lub płaskie modele o dużej powierzchni styku często przylegają zbyt mocno – co sprawia, że ​​ich wypchnięcie staje się prawie niemożliwe. Bardzo duże modele trzymają się wyjątkowo mocno i trudno je usunąć. W takich przypadkach zazwyczaj lepiej jest wykorzystać do pchania całą ramę pomostu – zapewnia to znacznie większą moc i jest bardziej efektywne w przypadku dużych modeli niż sama głowica drukująca.

► Przyczepność do podłoża drukującego

Zarówno słaba, jak i zbyt dobra przyczepność mogą stanowić problem: jeśli przyczepność jest zbyt słaba, trudno będzie wykonać kilka wydruków z rzędu w dokładnie tym samym miejscu — model może się poluzować lub ześlizgnąć przy drugim wydruku. Jeśli przyczepność będzie zbyt silna, głowica drukująca nie będzie w stanie usunąć części, a w najgorszym przypadku może to nawet spowodować uszkodzenie drukarki.

Rozwiązanie? Dobra platforma robocza (np. wysokiej jakości płyta PEI) i idealnie wyregulowane przesunięcie osi Z są absolutnie niezbędne, aby niezawodnie korzystać z tej metody automatycznego wysuwania.

► Odpowiednie filamenty

Filamenty wymagające zamkniętej obudowy nie nadają się do tej metody, ponieważ drzwiczki drukarki muszą pozostać otwarte, aby można było wysunąć model. Oznacza to, że ABS, nylon, ASA i podobne materiały są wyłączone z zakresu stosowania. Nawet PETG może być problematyczny, ponieważ często bardzo dobrze przylega i trudno go usunąć z podłoża.

► Purge Lines

Jeśli drukarka rysuje linię czyszczenia przed każdym drukowaniem, należy ją zastąpić czymś innym. Na przykład mieliśmy nasz K1. B. aktywowana jest linia oczyszczania KAMP. Jeżeli jest to powtarzane przy każdej pętli bez usuwania, może to powodować problemy.

Jednakże: Drukarka MUSI przesunąć materiał przed każdym drukowaniem, aby przygotować dyszę. Dlatego nasza rada: Wymień przewód odpowietrzający na przewód o małym rant (np. 2 mm) – zostanie on wówczas wysunięty razem z modelem.

► Gorący hotend = wyciekające ryzyko

Upewnij się, że hotend jest wyłączany po ostygnięciu podgrzewanego stołu – w przeciwnym razie materiał może dalej wyciekać (wyciekać) i zniszczyć pierwszą warstwę. Może się tak zdarzyć, jeśli całkowicie usuniesz makro END_PRINT. W takim przypadku polecenie wyłączenia hotendu nie zostanie uruchomione automatycznie.

Dodaj polecenie M104 S0 do końcowego kodu G – to polecenie wyłącza blok grzewczy. Ważne: Upewnij się, że umieściłeś go przed SDCARD_LOOP_END, w przeciwnym razie nie zostanie on wykonany prawidłowo.

► Wykorzystaj grawitację!

Jeśli Twój model nie spadnie całkowicie z łóżka po wyrzuceniu, możesz po prostu wykorzystać grawitację na swoją korzyść! Niewielki kąt ustawienia drukarki – jak pokazano na filmie Factorian Design – może znacznie zwiększyć niezawodność automatycznego wysuwania.

Ale zachowaj ostrożność: jeśli przechylasz drukarkę, rób to stabilnie i bezpiecznie – i pamiętaj, aby po przechyleniu wykonać nową kalibrację kształtowania wejścia, aby uzyskać czyste wydruki!

► Zjedź w dół – ale zrób to dobrze!

Jeśli masz podajnik papieru, wyrzucona część może utknąć między łóżkiem a obudową drukarki. Wystarczy umieścić kawałek papieru lub tektury pod platformą drukującą – dzięki temu model będzie się płynnie rozwijał, nie zacinając się nigdzie.

► Płytka dociskowa – wzmacniacz wyrzutu

Jeśli zależy Ci na jeszcze większej niezawodności podczas wyrzucania, możesz wydrukować małą płytkę dociskową – przykręcaną płytkę do głowicy drukującej, która może skuteczniej wypychać wydruk z powierzchni stołu. Ale: koniecznie zwróć uwagę na maksymalny zakres ruchu drukarki! Płyta nie może nigdzie uderzyć ani zderzyć się – w przeciwnym razie szybko dojdzie do zderzenia.