sobota, 16 sierpnia 2014

Eksperymenty z czujnikiem zegarowym


Kilka dni temu na Centrum Druku 3D pisałem na temat różnych metod kalibracji stołu w drukarce 3D. Ponieważ zauważyłem, że kalibracja z kartką papieru różnie wychodzi przy zimnej drukarce a inaczej po rozgrzaniu dyszy i stołu, zastanawiało mnie jaki dokładnie wpływ ma zmiana temperatury na te elementy drukarki. Po skonstruowaniu uchwytu do czujnika zegarowego wpadłem na pomysł jak można by to zmierzyć w moim urządzeniu.

O konstrukcji stołu


Na początku warto wspomnieć o konstrukcji stołu w drukarce Monkeyfab Prime XT. Stół porusza się w osi Y na 2 metalowych prowadnicach (wałkach). Napędza go poprzez zębaty pasek silnik krokowy widoczny z przodu urządzenia. Wózek stołu ślizga się po prowadnicach z wykorzystaniem metalowych tulejek (łożyska liniowe użyte są w drukarce tylko w osi Z). Konstrukcja wózka oparta jest na powycinanej aluminiowej płycie w czarnym kolorze o grubości 4 mm. Nad rogami tej płyty na sprężynach zawieszona jest poliwęglanowa tacka, na której na białej izolacji termicznej spoczywa płyta grzewcza MK2b. Całość przykryta jest borokrzemową szybą i spięta nieśmiertelnymi spinaczami - buldogami. W ten sposób płyta grzewcza jest zamknięta w płaskiej poliwęglanowej skrzynce ograniczonej od góry szkłem. Biała izolacja dociska ją delikatnie do szyby. Konstrukcja sprawia bardzo porządne wrażenie, choć całość jest stosunkowo ciężka.

W komentarzu jednego z czytelników do w/w artykułu na CD3D przeczytałem, że pod wpływem temperatury sama płyta grzewcza potrafi się odkształcić (wygiąć) podnosząc stół minimalnie do góry. Jednak przy takiej konstrukcji jaka została zastosowana w Primie, odkształcająca się płyta co najwyżej wgniecie znajdującą się pod nią izolację. Sama szyba jest na tyle mocno trzymana buldogami, że nie ma opcji żeby w tym przypadku podniosła się do góry. Jedyny problem jaki może wystąpić, to że odkształcona płyta będzie gorzej przylegać do spodniej powierzchni szkła i będzie słabiej przekazywać jej ciepło.



Projektowanie uchwytu do czujnika zegarowego


Do eksperymentów opisanych w dalszej części tekstu wykorzystałem kupiony na allegro czujnik zegarowy. Pierwotnym jego zastosowaniem był pomiar odległości między dyszą a stołem w trakcie jego poziomowania. Uchwyt do czujnika, mocowany między pod kołem zębatym ekstrudera a radiatorem hotendu zaprojektowałem w Autodesk Inventorze. Po kilku próbach wyszedł w następującej postaci:



Miałem pewne obawy, czy mocowanie będzie wystarczająco sztywne i czy czujnik nie będzie się minimalnie poruszał względem dyszy. Na szczęście okazało się że konstrukcja jest bardzo mocna, i po wsunięciu mocowania na aluminiowy element łączący hotend z ekstruderem obie części bardzo stabilnie do siebie przylegają.

Model uchwytu do czujnika do pobrania z Thingiverse.

Testy rozgrzanego stolu


Pierwszy test jaki przyszedł mi do głowy to sprawdzenie, jak bardzo pod wpływem temperatury rozszerzy się przymocowana do stołu szyba. Przy zimnym stole (w powodu panujących upałów było to ok. 30°C) ustawiłem trzpień czujnika zegarowego nad jego środkiem. Sama dysza znajdowała się z tyłu, kilka mm nad powierzchnią stołu. Przy przekręceniu skali czujnika tak, aby w momencie początkowym wskazówka pokazywała 0, przestawiłem temperaturę stołu najpierw na 60°C, a - po jej osiągnięciu - na 90°C. Jak się po paru minutach okazało - wskazówka czujnika przesunęła się o 0.08 mm.


Już chciałem opisywać swoje okrycie, gdy zorientowałem się że przecież trzpień czujnika zegarowego dotykając gorącej szyby sam zmienił temperaturę. Jako że aluminium (z którego trzpień jest wykonany) rozszerza się dużo bardziej niż szkło, zapewne było to głównym powodem przesunięcia wskazówki. Raczej nie osiągnął docelowej temperatury 90°C, jednak ze względu na większe wymiary początkowe (długość rozgrzanego trzpienia) wartość pokazywana na mierniku mogła być związana głównie z jego odkształceniem.

Postanowiłem powtórzyć eksperyment z kawałkiem drewna, który miałby odizolować czujnik od gorącej powierzchni stołu. Efekt był bardzo ciekawy - wskazówka najpierw obróciła się o 0.09 mm a po kilkunastu minutach (przy zachowaniu temperatury 90°C) wróciła do początkowego położenia. Prawdopodobnie użycie drewnianego klocka nie było najlepszym pomysłem. Odpuściłem sobie dalsze testy z nagrzewaniem szyby i zamiast tego wyliczyłem ile w teorii szkło borokrzemowe o grubości 3 mm powinno się rozszerzyć. Przy współczynniku rozszerzalności cieplnej 3,25∙10‐6 K‐1 i zmianie temperatury o 60°C jest to jakieś 0.0006 mm - dużo mniej niż dałoby się zmierzyć w warunkach domowych.

 

Do sterowania temperaturą i jej monitorowania bardzo fajnie sprawdził się Repetier Host - po podłączeniu drukarki można w nim zobaczyć wykresy zmiany temperatur (i aktywności poszczególnych grzałek):


Testy rozgrzanej dyszy


W podobny sposób chciałem sprawdzić jak bardzo pod wpływem ciepła rozszerza się dysza. Tym razem opuściłem głowicę niżej tak, żeby w momencie początkowym dotykała stołu. W założeniu jej rozszerzenie miałoby popchnąć szybę w dół, co wykryłby znajdujący się obok czujnik zegarowy.

Tu na szczęście nie występował efekt nagrzewania się trzpienia czujnika zegarowego. Przy rozgrzaniu dyszy od 30 do 190°C wskazówka czujnika przesunęła się o 0.17 mm. Oczywiście taki pomiar też ma ograniczoną dokładność - czujnik oddalony jest od dyszy prawie o 40 mm, poza tym oprócz rozszerzającej się dyszy w takim układzie występują też inne siły (chociażby sam stół pchany jest do góry przez znajdujące się przy jego rogach sprężyny). Tak czy owak, myślę że taki eksperyment wystarczy żeby stwierdzić, że występuje tu rozszerzalność cieplna o skali mającej wpływ na wydruk pierwszej warstwy.

 

Test płaskości stołu


Ostatnim testem jaki wykonałem z czujnikiem zegarowym było sprawdzenie powierzchni stołu pod kątem występowania nierówności, oraz różnych zaburzeń w prowadzeniu ekstrudera nad stołem. Żeby to zrobić napisałem w G-codzie program prowadzący czujnik po zygzakowatej ścieżce pokrywającej całą powierzchnię roboczą drukarki. Na szczęście nie wykryłem tu żadnych istotnych odchyleń.

Obserwowanie pierwszej warstwy


Bez względu na wykorzystaną metodę kalibracji, w ostatecznym rozrachunku jej efekt będzie widoczny podczas drukowania pierwszej warstwy modelu. Poza kalibracją znaczenie mają tu też parametry slicera - głównie zadeklarowana grubość filamentu, wartości temperatur, ilość filamentu podawanego na pierwszej warstwie i prędkość drukowania. Na poniższym zdjęciu pierwsza warstwa wygląda dosyć dobrze:


W przypadku zbyt małej ilości podawanego filamentu, zbyt dużej jego zadeklarowanej średnicy lub zbyt dużej odległości dyszy od stołu będzie widać braki w postaci niewypełnionych kropek lub linii. W skrajnym wypadku filament może mieć w ogóle kłopot z przyklejaniem się do stołu:


Z kolei gdy drukarka będzie podawała zbyt dużo filamentu lub gdy stół będzie za blisko dyszy, można się spodziewać takich efektów:


Nierówna powierzchnia zostanie oczywiście przykryta kolejną warstwą, jednak po zakończeniu drukowania dolna powierzchnia przedmiotu może wyjść zniekształcona:


W moim przypadku był to najczęstszy problem przy drukowaniu dużych obiektów, przy których zależało mi na gładkiej dolnej powierzchni. Zazwyczaj dopiero przy kolejnym podejściu, po doregulowaniu stołu "w locie" pierwsza warstwa wychodziła w całości gładka. Dokładna kalibracja stołu przed drukowaniem powinna tu sporo pomóc.

2 komentarze:

  1. Jakoś nie wydaje mi się, że "użycie drewnianego klocka nie było najlepszym pomysłem". Może było właśnie bardzo dobrym? Efekt jest bardzo ciekawy. Czy nie jest tak, że płyta rozgrzewając się "puchnie" o 0,09 mm, a następnie rozgrzewają się jakieś elementy konstrukcyjne drukarki unosząc mechanizm, co powoduje kompensację rozszerzenia termicznego płyty? Może konstrukcja jest mądrzejsza, niż wygląda? Albo konstruktorom przypadkiem tak wyszło... ;))) W każdym razie, wyniku tego eksperymentu nie należy lekceważyć. Pozdrówki.
    RM

    OdpowiedzUsuń
  2. Niestety moim zdaniem wynik eksperymentu z drewnianym klockiem na tyle trudno jest zinterpretować, że nie da się wysunąć tu żadnych wiarygodnych wniosków co puchnie i o ile :)

    OdpowiedzUsuń