3D tiskárna

Základní technické údaje
  • Typ: FDM tiskárna (Fused Deposition Modeling)
  • Rozměr: 185 x 185 x 195 mm
  • Počet extrudérů: 2 (vedení pomocí bowdenu)
  • Displej: LCD 12864 (128x64)
  • Motory: Microcon SX-17, 17HS4404 (celkem 6ks))
  • Firmware: upravený Marlin 1.1.RC8

Další výzva

3D tiskárna byla další výzva pro postavení stroje do domácí dílny. Dá se samozřejmě komerčně koupit. Jenomže v tom okamžiku je majitel omezen na konkrétní řešení a na vůli prodejce uvolnit vychytanější firmware. Stačí když je menu nevhodně navržené a člověku pak stěžuje první začátky. Nidky jsem se nedozvěděl o 3D tisku tolik, jako při stavbě vlastní tiskárny.

Hardware

Hlavní kostra tiskárny vznikla metodou, co dům dal, co kde zbylo, zbytek z Číny. Duralový rám je ze zbytků profilů Ulmer 20x40, 4ks broušené ocelové tyče 8mm s kuličkovými domečky, stolek je z 4mm duralu obrobeného na mé CNC fréze, 4mm duralová vyhřívaná deska a duální extruderová hlava napájená teflonovým bowdenem. Elektronika je klasické Arduino Mega2560-16AU s deskou Ramps 1.4 s pěti drivery krokového motoru DRV8825 doplněný 2x FAN extenderem. To celé napájí spínaný zdroj 12V 30A (360W). Kdo si stavěl 3D tiskárnu, tak ví, že je to klasika. Lze dnes samozřejmě koupit speciální desku na které je všechno. Jedinou výhodu této desky ale vidím jen v zámkových konektorech u kterých méně zkušení konstruktéři nemusí příliš přemýšlet. Jakmile odejde driver, musíme buď pájet nebo desku vyměnit. Vedení osy Z (tedy svislé vedení na kterém je umístěno vedení X osy s extruderovou hlavou) jsem řešil bez pomoci broušených tyčí, ale použil jsem od kamaráda přesné broušené závitové tyče o průměru 15mm, které zaručují dostatečnou tuhost a slouží jak pro přesné vedení (uložení v kuličkových ložiscích), tak pro pohyb.

Z senzor
Bez senzoru vzdálenosti Z osy se prakticky nelze obejít. Mechanicky kontakt nikdy nezajistí opakovanou vzdálenost s potřebnou přesností. Proto se používají elektronické senzory. Prakticky vždy jsou napájeny z 12V. Pracovní rozsah bývá minimálně od 6V. Nelze ale podléhat nadšení, že senzor funguje i při 5V a ponechat spokojit se s tímto napájením. Opakovaná přesnost pak není zaručena a citlivost také.
Senzory se vyrábí dvojího druhu Senzory se vyrábí dvojího zapojení
Zapojit senzor napájený 12V do neošetřené desky např. RAMP1.4 vede celkem k okamžitému zničení řídícího procesoru desky Arduino. RAPM1.4 pin Z senzoruvede přímo na vstup procesoru. Na tento vstup lze připojit pouze napětí maximálně +5V. Proto je potřeba výstupní napětí senzoru upravit odporovým děličem aby hodnota vedená na desku elektroniky nebyla větší než +5V. Použijeme k tomu dvojici odporů 47K a 33k zapojenou mezi černý výstup senzoru a modrou zem. Větší odpor dáme na černý drát výstupu senzoru. Společný bod obou odporů R1 a R2 vyvedeme na desku elektroniky. Oba odpory se dají úspěšně zapojit přímo do dvoupinového černého konektoru. Stačí je pak přetáhnout smršťovací bužírkou. Napětí logické 1 je kolem 4.8V.
V konfiguračním souboru Configuration.h nastavíme Z_MIN_ENDSTOP_INVERTING na true a podle verze firmware i hodnotu Z_MIN_PROBE_ENDSTOP_INVERTING.

Ještě malá poznámka k volbě odporů. Je třeba vždy počítat s vnitřním odporem senzoru, který bývá 10k. Dále je třeba dodržet minimální proud pro aktivaci hradla procesoru ATmega2560. Pokud bude proud příliš malý (velké odpory) procesor nesprávně detekuje hraniční stavy. Píši to proto, že jze nalézt jinou kombinaco odprů např. 150k a 100k, která přes desku RAMS 1.4 negunguje ačkoli je dělící napětí správné.

Firmware

Open source Marlin FW (v aktuální verzi 1.1.RC8) jsem pozměnil pro své potřeby. Značně jsem překopal menu abych měl nejpotřebnější položky pohromadě, uložení babystepingu do EEPROM paměti. Kdo se jednou hlouběji podívá do zdrojového kódu zjistí kolik možností nastavení firmware umožňuje. Tam jsem teprve pochopil, proč mnozí stavitelé hledají návody, jak ten který svůj problém vyřešit. Běžné návody jsou skutečně velice povrchní. Bez znalosti architektury procesorů ATmega může být nastavení pomocných ventilátorů sázka do loterie. Vrátím se trochu k tzv. babystepingu. Jedná se o dodatečnou změnu Z souřadnice vstaženou k Z senzoru vzdálenosti. Jen ty nejstarší tiskárny dnes používají klasický mikrospínač pro nastavení nulové Ztové vzdálenosti. K tomuto účelu se dnes používají bezkontaktní detektory vzdálenosti (proximity senzory). Poloha senzoru se nastavuje zkusmo až se docílí skutečně doteku trysky s deskou stolku. To se ale nepodaří vždy dostatečně přesně a je proto nutné pro první tištěnou vrstvu (která býva většinou ve výšce 0.15mm) doladit při základní kalibraci tiskárny nikoli na vzdálenost, ale nanejideálnější vzhled této první vrstvy. Je to samozřejmě kombinace Z výšky, rychlosti pohybu hlavy a rychlosti vytlačování filamentu. Tohle doladit stojí docela dost času. Právě jemné doladění Z výšky je asi nejúčinější cestou k dobrému výsledku. Bohužel základní verze FW Marlin tento údaj po vypnutí tiskárny zapomene. Abych nastavení neřešil po každém zapnutí, upravil jsem kód tak, že je uložen do EEPROM procesoru a aplikován po každém povelu G29.

Malá poznámka k zapojení motorů.
Stalo se mi, že jsem dostal dva na pohled stejné motory s konektory k zapojení přívodních kabelů. V tomto malém provedení mají piny rozteč 2mm na rozdíl od běžných 2.54mm. Takže kdo si je chce nakrimpovat sám, musí sehnat příslušné dutinky. Problém obou motorů byl v tom, že oba konektory byly jinak zapojeny a tím pádem propojovací kabel nemohu prohodit. Nebo jiný příklad s neznámým motorem a nějak barevnými dráty, jak je tedy zapojit? Zde používané motory mají dvojí oddělená vinutí. Desky Ramps mají na konektoru piny stejných vinutí vedle sebe. Jsou označeny 2B-2A-1A-1B kde čislo označuje vinutí. Proto stačí za pomoci ohmmetru spárovat vodiče od motoru. Pokud je odpor mezi vodici hodně velký, pak jsou vodiče od různých vinutí, pokud je několik málo ohmů, pak patří k jednomu vinutí. Pak je v podstatě v libovolném pořadí v rámci dvojice napojíme na piny 2B/2A jedno vinutí a na druhé dva piny vinutí druhé. Jediné, co je pak potřeba zkontrolovat je smysl rotace. Ta se dá buď upravit prímo ve firmware, ale jednodušší je vybrat si jedno libovolné vinutí a prohodit mu vodiče A za B a naopak.

Zkušenosti

Zatím jsou dobré. Chvíli jsem řešil jak tisknout na skleněnou podložku aby se mi materiál dobře přichytil. Nakonec jsem koupil 200mm širokou kaptonovou fólii. Tu lepím za pomoci vody s kapkou JARu nebo tekutého mýdla. Zprvu se mu první vrstva nechtěla lepit (PLA filament), problém se vyřešil okamžitě, když jsem snížil teplotu stolku na méně než 40 stupňů.

Co dál?

No přeci 3D scenner.

Foto

Už mi stojí na stole a je připravena do běžného provozu.

3Dprinter celkový pohled 3Dprinter celkový pohled uchycení Z osy
celkový pohled celkový pohled uchycení Z osy
X pojezd X pojezd zezadu dual head
X pojezd X pojezd zezadu dual head
dvojice extruderu dvojice extruderu
dvojice extruderu dvojice extruderu
stolek zdola napájecí zdroj 30A
stolek zdola napájecí zdroj 30A

BuildTak

To musíte mít. Je to drahé, ale je to konec problémů s přilnavostí první vrstvy k podložce. Žádné lepidlo, žádný "juice", jen dokonale vyčištěný povrch. Tato podložka se prodává ve dvou provedeních a více rozměrech. Buď jako samolepící kus umělé černé hmoty, který nalepíme na libovolnou rovnou plochu, třeba sklo. Pak se ale může stát, že budeme mít problém s oddělením předmětu od podložky, protože na něm opravdu drží a hrozí, že se povrch poškrábeme nějakou špachtlí. Nebo. Nebo si koupíme set, který obsahuje magnetickou podložku a rovný ocelový plech a vlastní plastovou fólii. Magnetická podložka není nic jiného než kus plastu, který má v sobě zapracované neodymové magnety a je samolepící. Tuto podložku nalepíme nejlépe na rovné, dokonale očištěné sklo, na plech nalepíme BuildTak fólii a ten pak pricvakneme na magnetickou desku. Vše je naprosto rovné. Výhody kovové nosné vrstvy jsou dvě.

  • Postačí nám levnější indukční sonda vzdálenosti
  • Po dokončení tisku, necháme předmět vychladnout, podložku sejmeme a opatrně prohneme. Tištěný předmět se pustí sám.

  • Znovu podložku vyčistíme a můžeme dále tisknout.

    MKS TFT32 displej

    Skoro všude se dočtete, že tento displej není možné provozovat s deskou Ramps 1.4. To ale není pravda. Samozřejmě, že to jde. Chce to ale malou úpravu.
    Že to jít musí si může odvodit každý sám. Řešení je relativně snadné. TFT32 napojíme na samostatný, dobře vyfiltrovaný zdroj 5V. Bohatě stačí LM7805, který poskytne až 1A proudu. Displeji ale stačí kolem 150mA. Tx signál z Ramps 1.4 (AUX D2 pin) lze propojit rovnou. A celý problém je zakopaný ve výstupním signálu Tx displeje, směrovaného na pin D1 AUX1, který nemá dostatečný výkon a úroveň aby signál dostal do stavu logické nuly. 74HCT07, 2x invertující hradlo 74HCT00 nebo nějaký budič sběrnice, třeba 74LS244 nebo 74HC125, prostě co se dá vyhrabat ze šuplíku. Na vstup přivést signál z displeje a výstup napojit na krajní pin D1 AUX1.
    A je to.
    Zkusím spáchat nějakou malou destičku a opublikovat ji.

    3Dprinter celkový pohled
    21.IV.2018