3D-printterien tunkkausta, tuplana

Labin Prusa 3D-tulostimessa on kiinni Raspberry Pi Zero, jonka kautta tulostinta voi ohjata ja kameran kautta katsoa etänä. Mutta siitä puuttui vielä mahdollisuus sammuttaa tulostinkaapista sähköt etänä kun printtaus on valmis tai jos tulee ongelmia.

Laajensin aiempaa jatkojohtoviritystä siten, että Raspberry pystyy komentamaan jatkojohdon pois päältä. Mutta miten sähköt kytketään takaisin päälle? Keep-it-simple tapa olisi ollut vain kytkeä jatkojohdon omasta kytkimestä sähköt pois ja takaisin.

Päädyimme kuitenkin siihen että kaapin seinälle laitettiin erillinen painonappi, joka toimii on/off kytkimenä. Jos sähköt ovat pois, nappi kytkee ne päälle. Ja jos sähköt ovat päällä, nappi lähettää Raspberrylle käskyn ajaa itsensä hallitusti alas, minkä jälkeen sähköt sammuvat.

Kommunikointi jatkojohdon kanssa tapahtuu optoerottimien kautta. Pieni ongelma oli, mistä saadaan optoerottimelle sähköä kun sähköt ovat pois päältä? Aluksi mietittiin jonkinlaista pientä virtalähdettä, mutta yksinkertaisin ratkaisu oli laittaa painonapin koteloon kaksi AAA-paristoa. Koska niistä otetaan virtaa vain ledille n. 20 mA parin sekunnin ajan käynnistettäessä, kestävät paristot varsin pitkään.

Tässä siis halutaan, että tulostimeen liitetty Raspberry Pi suorittaa normaalin alasajon, kuten tavallinen PC kun virtanäppäintä painetaan. Näin muistikortin sisältö ei korruptoidu niin helposti, kun siitä ei katkaista virtoja kesken kirjoitusoperaatioiden. Tarvitsemme siis aktivoida GPIO-pinnin sekä alasajon käynnismistä varten että sitä varten, että jatkoroikan suuntaan indikoidaan, että alasajo on valmis ja sähköt voi katkaista. Nämä onnistuvat lisäämällä pari riviä tiedostoon /boot/config.txt. Näitä kutsutaan nmiellä device tree overlay. Niitä voi tehdä myös itse, mutta Raspille on olemassa monia hyödyllisiä palikoita valmiina. Ne on lueteltu käyttiksen dokumentaatiossa. Tässä tapauksessa sammutus aloitetaan vetämällä GPIO 26 alas ja alasajopainike olisi oletuksena pinnissä 3, mutta sitä voi muuttaa, kuten alla olevassa esimerkissä se vaihdetaan pinniin 16:

# Sammutuskomento ja virtanappula 
dtoverlay=gpio-poweroff
dtoverlay=gpio-shutdown,gpio_pin=16

Testatessa alkoi tuntua siltä, että viive sammutuksessa painalluksen ja Raspberryn sammumisen välillä on liian pitkä, noin 15 sekuntia. Välittömämpää palautetta antamaan laitettiin vielä pieni piipperi, joka piippaa aina kun nappia painaa. Ilmaiseepahan se ainakin että jotain tapahtuu 🙂


Labille on saatu lainaan Felix Printers Pro1-mallin tulostin. Siinä on kaksi tulostinpäätä, joten sillä voi tulostaa kaksivärisiä kappaleita tai liukenevaa tukimateriaalia. Saapuessaan tulostimessa oli kuitenkin jotain vikaa.

Ensimmäinen vika löytyi Z-akselin kuulamutterin pidikkeestä. Kuulamutteri pysyy paikallaan pienellä lukitusruuvilla, joka puolestaan on kiinni muoviin upotetussa kierreinsertissä. Tämä kierreinsertti oli lähtenyt irti, jolloin lukitusruuvia ei saanut kireälle ja kuulamutteri pääsi pyörimään. Kun vika oli löydetty, se oli melko helppo korjata sulattamalla kierreinsertti kolvin kärjellä uudelleen paikalleen. Kiinnitys varmistettiin vielä pikaliimalla, koska vanha reikä ei ollut muuten kovin tiivis.

Tämän jälkeenkin Z:n kotiutus toimi epäluotettavasti. Tässä tulostimessa Z-akselin rajakytkimet ovat hotendeissä, eli anturi tunnistaa kun tulostuskärki painuu vasten alustaa. Valikoista selvisi että nämä anturit antoivat ajoittain kosketussignaalia vaikkei kosketusta ollut. Manuaalissa puhuttiin kosketuspintojen puhdistuksesta, mutta aluksi luulimme että jos ne olisivat likaiset, jäisi anturi Off- eikä On-tilaan. Mutta tarkemmin katsomalla ilmeni, että anturin metallipinnat ottavat yhteen nimenomaan silloin, kun kosketusta ei ole, ja erkaantuvat kun hotend siirtyy kosketuksen seurauksena. Kosketuspintojen puhdistus ratkaisikin siis tämän ongelman.

Nyt tulostin tulostaa sd-kortilta löytynyttä ”samulin_kilke.gcode”-tiedostoa. Jännityksellä odotamme, mihin tätä puolikuun muotoista kilkettä voi hyödyntää.

Jätä kommentti