Octoprint – zdalne sterowanie drukarką 3D

Share on facebook
Share on twitter
Share on linkedin

Uruchomienie wydruku na drukarce 3D wiąże się zwykle z koniecznością wgrania pliku G-CODE na kartę pamięci, włożeniem jej do slotu i uruchomieniem druku na urządzeniu. Możemy też podłączyć drukarkę do komputera przez przewód USB i przesyłać polecenia przy pomocy interfejsu USB, jednak komputer musi być cały czas włączony, a każde wstrzymanie jego pracy może skutkować uszkodzeniem modelu. Obydwa rozwiązania nie dają nam możliwości uruchomienia, wstrzymania lub podejrzenia wydruku, gdy nie znajdujemy się w pobliżu drukarki lub komputera. 

A co powiecie na wykorzystanie minikomputera Raspberry Pi i stworzenie systemu, który będzie umożliwiał podgląd druku w czasie rzeczywistym z dowolnego miejsca na świecie (oczywiście z dostępem do Internetu) oraz możliwość uruchomienia druku i zatrzymania go, gdy nie mamy dostępu do drukarki 3D?

Elementy niezbędne do stworzenia projektu

Jak wcześniej wspomnieliśmy, mózgiem naszego systemu będzie Raspberry Pi. Wykorzystamy wersję 4B wyposażoną w 2GB pamięci RAM. Oprócz samej maliny niezbędna będzie kamera, która pozwoli nam na podgląd wydruku w czasie rzeczywistym. Do prawidłowego działania minikomputera przyda się również zasilacz oraz karta pamięci. Niezbędny będzie również przewód USB łączący Raspberry Pi z drukarką 3D (pamiętajmy, że projekt możemy wykonać jedynie gdy posiadamy drukarkę 3D wyposażoną w funkcje druku przez USB). Pełna lista elementów dostępna jest poniżej:

Jeśli mamy już dobrane komponenty, to wówczas możemy przejść do zainstalowania systemu na Raspberry Pi.

Instalacja systemu OctoPi na malinie

Gdy mamy przygotowane wszystkie elementy systemu możemy zająć się wgraniem oprogramowania na kartę microSD. Obraz systemu możemy pobrać z tego linka, wybieramy najnowszą wersję. Do wgrania obrazu systemu na kartę wybierzemy program balenaEtcher, po zainstalowaniu go wybieramy obraz naszego systemu i nośnik na którym ma zostać zainstalowany i klikamy Flash!

Ekran programu Etcher

Gdy proces wgrywania zakończy się sukcesem powinniśmy zobaczyć obraz podobny do tego poniżej:

Poprawne zakończenie wgrywania obrazu systemu.

Teraz możemy odłączyć kartę pamięci od komputera i podłączyć jeszcze raz, aby zobaczyć jej zawartość. Jeśli będziemy korzystać z połączenia bezprzewodowego, to musimy wejść do pliku “octopi-wpa-supplicant.txt” mieszczącego się na karcieSD i wykonać kilka zmian. Jeśli jednak malina podłączona jest do sieci przez przewód Ethernet, to możemy pominąć te kroki i przejść dalej. Plik z konfiguracjami sieciowymi możemy otworzyć przy pomocy notatnika systemowego, ja jednak skorzystałem z darmowego Notepad++. W wymienionym wcześniej pliku musimy znaleźć akapit “WPA/WPA2 secured” i zmienić kilka wierszy.

Domyślna wartość pliku.
Wartość pliku po wprowadzeniu danych.

Gdy wprowadziliśmy zmiany do pliku, zapisujemy go i zamykamy. Oczywiście w miejscu “ssid” musimy wpisać nazwę naszej sieci, a w miejscu “psk” hasło do niej – przedstawione wartości są przykładowe i stanowią tylko wizualizację wprowadzonych danych.

Teraz możemy włożyć kartę pamięci do naszej maliny, podłączyć do niej kamerę i podłączyć minikomputer do zasilania. Czas na zabieg aktualizacji zasobów systemowych. Aby to zrobić, łączymy się z Raspberry Pi przez program Putty. Do połączenia się niezbędny będzie adres lokalny naszego minikomputera, który znajdziemy na przykład w panelu konfiguracyjnym routera.

Lokalny adres Raspberry Pi w panelu routera.

Teraz wpisujemy uzyskany adres w Putty i łączymy się z minikomputerem.

Ekran konfiguracyjny programu Putty.

Po połączeniu się malina poprosi nas o podanie loginu i hasła. Jako login podajemy “pi”, a jako hasło “raspberry” po zalogowaniu się powinniśmy zobaczyć ekran jak poniżej.

Ekran widoczny po zalogowaniu do systemu.

Aby zaktualizować zasoby systemowe, musimy wprowadzić do terminala dwa polecenia:
sudo apt-get update
sudo apt-get dist-upgrade

Tutaj operacja może trwać nawet kilkanaście minut. Wszystko zależne jest od tego, jak szybkie mamy łącze oraz ile musimy pobrać. Po zaktualizowaniu systemu możemy wyłączyć program Putty i przejść do podłączenia drukarki 3D do maliny przy pomocy przewodu USB A – B.

Konfiguracja OctoPrint

Aby przejść do ekranu konfiguracyjnego, wpisujemy w pasku przeglądarki http://octopi.local/. Teraz powinniśmy zobaczyć ekran jak poniżej.

Panel konfiguracyjny systemu.

Po uzyskaniu dostępu do panelu konfiguracyjnego klikamy “Next”, teraz system poprosi nas o stworzenie danych do logowania, musimy wprowadzić login i hasło, tutaj jest absolutna dowolność.

Tworzenie loginu i hasła do systemu.

Gdy wpiszemy swój login i hasło klikamy “Keep Access Control Enabled”, nie zalecamy korzystania z Octoprinta bez loginu i hasła, umożliwia to uzyskanie dostępu przez niepożądaną osobę. Po zapisaniu się danych użytkownika klikamy “Next”, teraz na ekranie pokaże nam się zapytanie o uruchomienie anonimowych zapytań zużycia, służy to głównie do raportowania o aktywności systemu oraz jego działaniu, nie musimy włączać tej funkcji, wybór należy do was.

Konfiguracja anonimowych raportów zużycia.

Po podjęciu decyzji zaznaczamy ją i klikamy “Next”. Teraz system spyta nas o aktywowanie testowania łącza, jest to opcja o tyle przydatna, że system na wypadek aktualizacji czy też innego działania wymagającego długotrwałego dostępu do internetu sprawdzi status połączenia z siecią. Moim zdaniem warto aktywować tą funkcję, ale tu również decyzja należy do was. Po podjęciu decyzji klikamy “Next”.

Konfiguracja testowania łącza.

Kolejnym krokiem jest możliwość włączenia lub wyłączenia czarnej listy wtyczek które mogą niepotrzebnie obciążać system. Tutaj podobnie jak w poprzednich punktach mamy dowolność, ja włączyłem czarną listę aby mieć większą pewność, że nic nie zakłóci pracy urządzenia. Tradycyjnie po zaznaczeniu odpowiedzi klikamy “Next”.

Konfiguracja czarnej listy wtyczek.

Po przejściu do kolejnej karty ukaże nam się okno konfiguracyjne drukarki podłączonej do maliny, zaczynamy od nadania jej nazwy.

Ustawienie nazwy drukarki.

Po kliknięciu “Print bed & build volume” zobaczymy pola konfiguracyjne służące do wprowadzenia parametrów naszej drukarki, na samej górze jest kształt stołu roboczego, jeśli nasza drukarka jest wyposażona w stół prostokątny, to zaznaczamy “Rectangular”, jeśli ma kształt elipsy to wybieramy “Circular”. Niżej mamy pole “Origin”, jest to określenie punktu zerowego naszej drukarki, zazwyczaj jest to lewy dolny róg, jeśli nasza drukarka również jako punkt zerowy ma wyznaczony to miejsce to zaznaczamy “Lower Left”, gdy miejsce zerowe jest na środku stołu zaznaczamy “Center”. Pod polem “Origin” widoczne są dwa checkboxy, jeden o nazwie “Heated Bed”, czyli grzany stół i drugi o nazwie “Heated Chamber”, czyli grzana komora. Jeśli nasze urządzenie posiada grzany stół roboczy to zaznaczamy tego checkboxa, podobnie przy podgrzewanej komorze. Pod checkboxami widoczne są trzy pola do wprowadzenia rozmiaru pola roboczego, tutaj wpisujemy rzeczywiste rozmiary w milimetrach. Ostatnim polem jest checkbox o nazwie “Custom bounding box”, gdy zaznaczymy tego checkboxa to program pozwoli nam określić bezpieczny zakres pola roboczego, jednak w 99% drukarek nie będzie to koniecznie.

Okno konfiguracji pola roboczego drukarki.

Okno “Axes” służy do zmiany parametrów prędkości (jeśli nie jesteśmy zaawansowanymi użytkownikami to nie warto zmieniać tych ustawień), a okno “Hotend & extruder” do zmiany parametrów ekstrudera. O ile nasza drukarka posiada dyszę o rozmiarze 0,4 mm i jeden ekstruder to nie musimy nic zmieniać, w innym przypadku możemy dokonać korekty. Po ustawieniu możemy kliknąć “Next”, a następnie “Finish”.

Operowanie drukarką przy pomocy Octoprint

Po skonfigurowaniu całego systemu powinniśmy widzieć ekran startowy systemu OctoPrint. Aby połączyć się z drukarką musimy kliknąć “Connect” w polu “Connection”, po chwili drukarka powinna się połączyć z systemem, a przycisk “Connect” powinien zamienić się w “Disconnected”, dodatkowo w tabeli w prawym dolnym rogu zobaczymy aktualne temperatury stołu roboczego i dyszy, aby je zmienić wystarczy, że w polu “Target” wprowadzimy żądane temperatury i zatwierdzamy je.

Główny ekran systemu Octoprint.

Jeśli zjedziemy przy pomocy kółka myszy na dół strony powinniśmy po lewej stronie zobaczyć listę plików znajdujących się na karcie pamięci włożonej do drukarki, aby dodać swój plik G-CODE wystarczy, że klikniemy “Upload” i wybierzemy lokalizacje pliku na naszym komputerze. Aby rozpocząć druk wystarczy kliknąć przy pliku znak drukarki.

Pole plików.

W oknie “Control” możemy sterować naszą drukarką, jeśli do Raspberry Pi podłączyliśmy wcześniej kamerę, to będziemy widzieli obraz z tej kamery.

Okno “Control”.

W oknie “Terminal” widoczne są polecenia wysyłane z Raspberry Pi do drukarki. Ostatnim oknem jest okno “Timelapse”, spodoba się ono wszystkim fanom nagrywania pracy swojej drukarki. Zakres ustawień jest dosyć spory więc warto samodzielnie testować możliwości systemu.

Okno “Timelapses”

Celowo pominąłem okno “GCode Viewer” ponieważ jeśli nic nie drukujemy to okno jest zbędne, możemy więc uruchomić przykładowy wydruk i sprawdzić co pokaże się w trakcie druku. Po rozpoczęciu procedury druku powinniśmy w oknie “Temperature” zobaczyć, że wykres się zmienił, a temperatury zostały ustawione na te, które wyznaczyliśmy w naszym pliku G-CODE.

Wykres temperatur po uruchomieniu wydruku.
Podgląd wydruku w oknie “GCode Viewer”

Gdy wydruk został uruchomiony możemy go podglądać i sterować wszystkimi parametrami druku. Dla maksymalnej wygody zaprojektowaliśmy dla was uniwersalne mocowanie dla kamery i Raspberry Pi, model do pobrania dostępny jest tutaj, a drukarka z zamocowaną kamerą i maliną wygląda tak:

Mam nadzieję, że przybliżyłem Wam w zrozumiały sposób korzystanie z systemu OctoPrint. System ma naprawdę sporo zalet i warto wprowadzić to rozwiązanie w swoich drukarkach 3D.  W razie pytań zapraszamy oczywiście do sekcji komentarzy.

Podziel się:

Share on facebook
Share on linkedin
Share on twitter
Marcin Lesiński

Marcin Lesiński

Miłośnik elektroniki, druku 3D i nauk stosowanych, swoją wiedzę gromadzi od 14-tego roku życia. W Botlandzie tworzy projekty i poradniki dla klientów, a w wolnym czasie zajmuje się automatycznymi uprawami i prototypowaniem. Fan muzyki rockowej i brytyjskiego kina.

Zobacz więcej:

Dodaj komentarz

Twój adres email nie zostanie opublikowany.