Kategorie-Archiv: 3D Druck

Ladestation für das neue Telefon

Nachdem mein Smartphone, der Palm Pre langsam immer mehr Obselet wird (sei es die fehlende Rechenleistung des Single-Core ARM Prozessor beim Ausführen der überbordernden Javascripte auf den Internetseiten, oder die in die Jahre gekommene Software), musste schweren Herzens doch mal was neues her.

Es wurde ein Chinese, Jiayu S3 advanced.

Das Ding kann alles was zur Zeit so üblich ist. Naja. Fast alles. Zum Beispiel kabelloses Aufladen, das kann es nicht. Und wenn man das vom Palm seit einer Ewigkeit gewöhnt ist, fühlt es sich wie ein technischer Rückschritt an.

Deshalb habe ich zumindest erstmal eine Halblösung umgesetzt. Eine Ladestation. Ein normales MikroUSB-Kabel in eine Halterung eingeklebt. Beim einstecken des Telefons in die Halterung wird automatisch der Stecker ins Telefon gesteckt und das Teil lädt.

Diesen Standlader habe ich im CAD konstuiert und mit dem CTC Drucker in ABS ausgedruckt. ABS weil es weicher ist und somit weniger Spuren am Telefon bei häufigen Steckvorgängen hinterlasst.

Der stecker ist einfach mit Heißkleber eingeklebt.

Jiayu S3 Ladestation

Durch die Eigenkonstruktion konnte gleich die Dicke der Schutzhülle berücksichtigt werden, so das diese nicht stört.

Arduino Mega und die Hitze

Zur Zeit ist es sehr warm hier.
Und diese hohen Umgebungstemperaturen verschlechtern natürlich auch die Wärmeabfuhr aus unseren elektrischen und elektronischen Geräten. Davon bleibt auch der 3D Drucker nicht verschont.

Als Elektronik für meinen selbstgebauten Drucker habe ich auf RAMPS 1.4 gesetzt. Dabei kommt eine fertige Mikrocontrollerplatine mit einem ATMEGA 2560 zum Einsatz, die im Arduino-Projekt als offene Hardware entwickelt wurde. Es ist also alles nötige „drumherum“ fertig auf einer Leiterplatte, so daß man sich ganz auf die Projektbezogene Elektronik konzentrieren kann, wenn man ein Embedded-Projekt umsetzen möchte.
Über standartisierte Steckkontakte kann dann die weitere Elektronik angeschlossen werden.
An der Stelle kommt dann RAMPS ins Spiel, eine Erweiterungsplatine die alles enthält um die elektrische Peripherie eines 3D Druckers anzuschließen. Auf der RAMPS Platine befinden sich die Leistungsschalter für die Heizungen vom Druckbett und Heizdüse, und auch weitere Sockel für Motortreiber. Außerdem Anschlüsse für die Temperaturfühler und Endschalter.
Auch kann man ein Display anschließen. Und hier wird es interessant.

Die Arduino-Platine besitzt einen Linearregler um die 5V Spannung für die Elektronik zu erzeugen, und der setzt die Spannungsdifferenz zu den üblichen 12V in Wärme um. (Bei mir von einem Schaltregler aus der höhren Spannung von Heizbett und Motoren von ca. 30V erzeugt)
Da die Arduino-Leiterplatte mit SMD-Bauteilen bestückt ist, hat der Regler also nur die Kupferbahnen der Leiterplatte selbst zur verfügung, um seine Wärme loszuwerden. Das funktionierte ganz gut, so lange die Temperaturen angenehm waren.
Jetzt sitzt der da natürlich ziemlich eingeklemmt. Die RAMPS Erweiterung selbst wird ziemlich warm durch die Leistungstransistoren, und die Motortreiber heizen von oben und natürlich auch per Wärmeleitung über die Pfostenstecker zusätzlich ein. Dazu habe ich ein LC-Display angeschlossen welches für die Beleuchtung noch zusätzlich den Strombedarf auf der 5V Schiene erhöht.
Das war dann alles zu viel, der Spannungsregler erreichte seine Maximaltemperatur und der integrierte Übertemperaturschutz reduzierte den bereitgestellten Strom. Daher sank die Spannung. Sichtbar wurde das an der LCD Beleuchtung. Und natürlich stimmen dann auch die eingelesenen Werte der Temperaturfuhler nicht mehr.

Daher musste nun die Situation verbessert werden.
Bisher war nur ein kleiner 24V Lüfter mit 12V versorgt (wegen dem Lärm, da der immer mitläuft) auf der Rückseite mit einer Papierklammer „Foldback Clip“ so hingetüddelt. Das ist natürlich nicht so optimal, weil in dem Leiterplattenstapel die unterste Platine mit dem Spannungsregler so fast gar nichts davon hat.

Das sah so aus:
kleiner 24V Lüfter kühlt RAMPS Elektronik

Nun muss das also besser werden:
Dazu habe ich zwei Dinge verändert. Die auftretende Abwärme beim linearen Spannungsregler ist direkt abhängig von der zu überwindenden Spannungsdifferenz. Also ist es günstig, diese zu reduzieren. Das könnte man mit einem Widerstand tuen, der aber jedes mal geändert werden muss, wenn man etwas umbaut und der Strombedarf auf der 5V Schiene sich ändert. Zu wenig Spannung vor dem Regler ist auch schlecht, weil diese Regler je nach Typ etwa 2V höhere Spannung am Eingang brauchen, um die Ausgangsspannung ordentlich einzuhalten.
Besser gehts mit Halbleiterdioden. In Durchlassrichtung hat man über jeder Silizium-Diode etwa 0,7V Spannungsabfall. Ein paar davon in Reihe reduziert die Spannung ein Stück, und nimmt damit ein Teil der entstehenden Wärme vom Spannungsregler und verschiebt sie dafür in die Dioden. Die Dioden halten höhere Temperaturen aus und brauchen keine speziellen Maßnahmem zur Kühlung.
Also 4 Dioden zusammengelötet und in die Zuleitung zum Arduino Mega eingeschliffen. So werden aus 12V dann 9V, und der Linearregler hat statt 7V nur noch 4V zu verbraten. So wird seine Verlustleistung fast halbiert.

Da ich damit keinen Schönheitspreis gewinnen muss, hab ich das einfach mal so hingetüddelt.
Dioden am Prusa I3

Und nun zur zweiten Maßnahme:
Die Verbesserung der Luftkühlung.
Um den Luftstrom besser an der Elektronik zu halten, habe ich eine Plexiglasscheibe zugeschnitten und über die Elektronik geschraubt. Zusätzlich gibts einen leisen 12V Lüfter mit 60×60 mm, der einen deutlich höheren Luftstrom erzeugt als der kleine Lüfter vorher. Der wird nun auch noch mit einem kleinen gedruckten Haltewinkel so montiert, das er auch die untere Leiterplatte im Stapel mit anbläst.

Mini-Luefterhalter
Der Drucker fertigt also seine eigenen Teile zur Verbesserung der Konstruktion. 🙂

Fertig zusammengeschraubt sieht das dann so aus:

Mini-Luefterhalter

Die Instabilitäten der 5V Spannungsversorgung sind damit hachhaltig beseitigt.

Drucken mit Rasentrimmerfaden aus Nylon

Achja: das Nylon für den Rasenkantentrimmer von Amazon. Ich hab das mal in den Drucker eingespannt.
Es ist Rasentrimmerfaden in der 210m Großpackung mit 1,6mm Durchmesser zu 12,43 Euro (im Februar 2014).
Amazon-link
Die Spule wiegt 500 gramm.

Drucken mit Rasentrimmer-Faden

Aaalso: Das geht.
Das Zeug hat recht geknistert im Extruder, die Teile waren nachher dennoch sehr stabil.
Düse war bei 240 grad. Ich hab das in meinem I3 probiert der ein Bowden Extruder hat.
Bei meinen 60 cm Schlauch war die Elastizität des Materials schon etwas hinderlich, so dass es recht nachtropft, man könnte dem vielleicht mit etwas mehr Retrakt gegensteuern.

Brauchbar war 35mm/s Druckgeschwindigkeit in meinem Aufbau.
Das Material ist so zäh, das man es kaum ohne Werkzeuge schafft den dünnen faden abzureißen, der sich bildet wenn alles fertig ist und die Düse hoch fährt.

Sturm gegen die Hitze

Vom Auto habe ich einen kleinen Schneckenhauslüfter da, der mit 300 Watt Leistung schon einigen Wind machen kann.

Der Lüfter hat leider ein einfaches eisernes Lager auf der Rückseite, welches Trocken lief und dann bei niedrigen Drehzahlen quietscht. Daher bekam das Auto einen Anderen.

Mit etwas neuer Schmiere und in waagerechter Lage läuft der Lüfter noch gut. Nur fehlt ihm das halbe Gehäuse. Die fehlende Gehäuseseite ist ein Teil der Lüftungsanlage im Fahrzeug.

Nachdem vor einiger Zeit ein provisorisches Funktionsmodell der fehlenden Gehäuseseite aus Pappe und Paketklebeband entstand, hatte sich nun der Klebstoff komplett ausgehärtet und alles fiel wieder auseinander.
Wegen der Hitze kam ich auf die Idee das mal in ein Dauerprovisorium zu verwandeln:

Mit dem 3D Drucker einen Rotationskörper als Lufteinlassdüse hergestellt. Die Geometrie ist nicht aufwändig berechnet, sondern besteht einfach aus kreissegmenten mit verschiedenen Radien. Dabei habe ich zum Lufteinlass hin kleinere Radien verwendet.
Die genaue Dimensionierung dann einfach aus dem Bauch heraus gemacht.

Das Teil konnte ich dann auf meinem selbstgebauten 3D Drucker drucken, da der Andere keinen ausreichend großen Bauraum hat.
Die komplette Platte für die Oberseite hat aber leider auch nicht auf die 25x25cm gepasst.

Deshalb wurde es ein Ring mit einem Flansch, der mit einer Platte verklebt wird.

Als Platte konnte ich ein altes Schild wiederverwerten. Mit der Stichsäge also grob das Loch hineingesägt und das Formteil angeklebt, dann die äußere Form in etwa ausgesagt.
Eine alte Blisterverpackung musste dann in Streifen geschnitten die Seitenwand aus PET liefern, zusammengehalten wird alles mit Heißkleber.
schneckenhauslüfter

Ich denke die 80% Altteile-Plakette kann hier vergeben werden.
80% Altteile Pakette

Provisorien halten schließlich am längsten!

Wasserkocher Severin Wako 3374 – Deckelreparatur

Mir ist heute ein kleiner Wasserkocher zugelaufen, dessen Deckel sich nicht mehr schließen ließ.
Also einmal auf den Seziertisch mit dem Patienten und den Deckel aufgeschraubt. Im Inneren klapperte es.

Severin Wako 3374 Deckel

Wie man sieht, ist der Verriegelungsmechanismus gebrochen. Es gehört natürlich links noch ein zweiter hinein, der hat sich aber zum Zeitpunkt des Fotos bereits irgendwohin verkrümelt, nach dem er Modell stand für das Ersatzeil. Aufgrund seiner Tarnfarbe ist er schwer aufzufinden.

Die gebrochenen Teile habe ich im CAD nachkonstruiert und mit dem 3D Drucker aus ABS nachgefertigt.
Einmal normal, und einmal natürlich gespiegelt. So muss man nur eine Konstruktion machen.

Severin Wako 3374 Deckel

Nach ein klein wenig Nachbearbeitung mit der Feile (um die oberfläche zu Glätten) und Aufbohren der Löcher konnten die neuen Riegel eingebaut werden.

Severin Wako 3374 Deckel

Hier noch einmal der Wasserkocher in seiner natürlichen Umgebung mit einem Artgenossen.

Severin Wako 3374

Linearlager und Edelstahlrundstäbe

Ich hatte ja angekündigt über Erfahrungen mit Edelstahl-rundstäben statt Silberstahlwellen am 3d Drucker zu berichten.
Die ersten Erkenntnisse hatte ich hier zusammengefasst: Blogeintrag:Erste Erkenntnisse…

Ich hatte dann nach dem die Führung immer mal wieder geklemmt hatte und somit Schrittverluste auftraten auf lm12uu Kugelumlauf-Lagerbuchsen gewechselt, womit die gleichen Probleme auftraten.

Um Gewicht auf der y-Achse einzusparen habe ich außerdem die 12mm Sperrholzplatten gegen 3mm Dibond gewechselt. Die Holzplatte wog ca. 500 gr, die neue Plante beste aus zwei Lagen 0,3mm Aluminium mit einer Füllung aus PE. Das wiegt nur etwa 150 gr.
Eine massive 3mm Aluplatte wiegt dagegen auch etwa 500 Gramm.

Die deutlich dünnere Platte gab natürlich Platz frei um neue Lagerhalter einzusetzen. Ich griff dazu die Idee mit der Zentralschaube auf und bohrte auf einer Seite der Platte (in Längsrichtung der Bewegung) kleine Löcher mit Schraubendurchmesser, auf der anderen Seite Länglicher quer zur Bewegungsrichtung. Die Schrauben wurden mit Stoppmuttern auf dieser Seite nur soweit fest gedreht, dass sich die Lager noch seitlich verschieben könnten.
Das hat die Probleme vollständig gelöst und seither läuft alles sehr gut. Die Kugelumlauflager sind bei der Gelegenheit wieder raus geflogen, da die harten Kugeln bereits nach kurzer Betriebszeit Laufstraßen in den weicheren Edelstahlstäben hinterlassen.

Seit dem habe ich bereits wieder ein paar Teile gedruckt und bin nun zufrieden mit dieser Lösung. Die Pla- Gleitlager laufen zudem auch deutlich leiser als die Kugellager.
Umbau Lagerung Y-Achse
Auf der Welle sind auch die Einlaufspuren der Kugellager zu sehen.

Eine weitere Verbesserung in der Geräuschkulisse hatte ich mir vom Wechsel der Motortreiber auf DRV8825 Treiber erhofft, durch den Wechsel von 1/16 auf 1/32 Mikroschrittbetrieb. Leider laufen die Motoren gerade bei langsamen Geschwindigkeiten nicht ruhiger als in der alten Konfiguration, ich habe sie aber wegen der höheren Positioniergenauigkeit dann drin gelassen.

Geiger zählen

Jetzt, etwa 3 Jahre nach der Nuklearkatastrophe von Fukushima, nach der Geigerzähler und Zählrohre faktisch kaum noch zu bekommen waren, ist das Zeug wieder billig.

Da ich radioaktivität mit nichts was ich hier habe messen könnte, ist es also an der Zeit diesem Zustand mal abzuhelfen.
Geigerzähler selbst zu bauen ist kein Hexenwerk, aus Zeitgründen habe ich jedoch gleich eine fertige Elektronik passend zum Zählrohr bestellt. Praktischerweise ist die Kennlinie des Zählrohrs dann in der Zählersoftware entsprechend berücksichtigt, es werkelt ein Arduino-kompatibler Atmega328 im Inneren.
Was daran fehlt ist freilich nur noch das Gehäuse.

Daher nach erfolgreicher Funktionskontrolle mit Glühstrümpfen, die auch heute noch deutlich radioaktiv sind, ein Gehäuse zum 3D-Druck konstruiert.

Geigerzähler Gehäuse

Die Aufteilung im Gehäuse ist selbsterklärend, wenn man die eingebaute Elektronik sieht:
Geigerzähler Gehäuse

Nach dem Einschalten zeigen sich die ersten erkannten Zerfälle:
Geigerzähler Gehäuse

Nach kurzer Zeit zeigt es dann die normale Hintergrundaktivität von etwa 0,1 uSv/h an.

Filament-Spulenhalter mit 608 Kugellagern

Auf Ausschau nach einem geeigneten Spulenabroller habe ich auf Thingiverse ein Modell gefunden, das meiner Vorstellung entsprach:
http://www.thingiverse.com/thing:46016

Leider war das STL-Modell kaputt, so das es beim slicen zu Fehlern kommt.
Daher habe ich notgedrungenerweise am Ende nach zwei verkorksten Drucken nochmal neu konstruiert:

Spulenhalter Korpus
Dieser Halter wird zwei mal benötigt.

Dazu jeweils die 4 Scheiben vom originalteil:
Zubehöerteile zum Spulenhalter

Neu hinzugefügt habe ich noch ausdruckbare Achsen, die man statt M8 Schrauben und Muttern verwenden kann.
(Im Foto die weißen Pinnöckels), alternativ M8x30 Maschinenschrauben.
Die 608 Kugellager haben 8mm Innendurchmesser.

Fertig zusammengesteckt dann so:
Spulenhalter im Einsatz

Der Layerversatz kommt von Tests mit dem neuen selbstgebauten 3D-Drucker, schadet aber der Funktion nicht 🙂
Wer will kann hinten noch (wie im Foto) Unterlegscheiben drann stecken, ich hab die Pins aber noch etwas kürzer gemacht, so kann man sie auch weglassen.

Wer das Teil nachdrucken möchte, kann die Dateien, wie immer mit den Freecad-Konstruktionen, hier herunterladen:
Spulenhalter.rar [210 kByte]

Erste Erfahrungen mit den PLA-Gleitlagerbuchsen

Nach dem meine Y-Achse nicht ganz die gewünschte Leichtgängigkeit erreichte, und vor allem auch Slip-Stick Effekte auftraten, habe ich auf LM12UU-Kugelumlauflager gewechselt. So ganz klar ist die Sache aber noch nicht:
Die Kugellager klemmten nämlich auch. Ich habe festgestellt, das beim Anschrauben der Lagerhalter die Lager immer ein wenig verdreht und verspannt werden, und dann Probleme machen.

PLA-Gleitlagerbuchsen

Eine Lösung wäre, andere Lagerhalter zu konstruieren, die im Idealfall nur mit einer Schraube in der Mitte befestigt sind und sich auf den Wellen zurechtdrehen können. Das baut aber zusätzlich in der Bauhöhe auf, und nimmt mir Bauraum.
Im Moment habe ichs folgendermaßen: die in Längsrichtung der Lager, zur Druckbettaußenkante gelegenen Schraubenpaare sind fest angezogen, die Inneren locker. So gehts soweit erstmal. Schön ist aber anders.

An der Z-Achse: Die Gleitlager weisen ebenfalls erhöhte Reibwerte auf, so dass die leichte Z-Achse (ohne Motor am Druckkopf) allein durch die Schwerkraft die X-Achse nicht nach unten rutschten lässt. Dadurch kommt es zu Umkehrspiel auf den Gewindestabantrieben.
Ich habe deshalb eine Vorrichtung gegen das Umkehrspiel eingebaut, die einfach mit einer zweiten Mutter über der X-Achse synchron mitfährt und durch eine Feder die tragene Mutter auf dem Gewindestab etwas vorspannt. Somit liegt die Mutter immer auf dem jeweils unterem Gewindegang auf und das Umkehrspiel nach Anfahren des Nullpunktes tritt nicht mehr auf.
(Der Schlitten der X-Achse, ohne LM8UU Lager, mit China-Allmetal-Hotend und Hotend-Lüfter ohne den Zusatzlüfter für das Werkstück wiegt knapp 150 Gramm, die 4 LM8UU Lager wiegen 50 gramm.)

Prusa I3 Umkehrspiel Anti-Backlash

Das schwarze Teil hat eine 6-eckige Aussparung für die Mutter und ist im Bild rechts Gabelförmig. Die Gabel steckt auf der glatten Führungswelle und verhindert das mitdrehen der Mutter. So fährt sie schön parallel zur X-Achse jede Bewegung mit.

Selbstbau 3D Drucker Teil 12- Hallo Welt!

Nachdem nun in den vorhergehenden Teilen so langsam klar wird, das sich das Monstrum der Fertigstellung nähert, und auch auf manchem Foto so Stöpselketten zu sehen sind (Die Fotos sind teilweise erst nach dem Bau entstanden), hier noch ein wenig Aufklärung dazu:

Ich habe, um die Kosten gering zu halten, einige Teile aus China bestellt.
Leider war ja gerade (Vor-)Weihnachtszeit, und da haben sich wohl beim Zoll die Pakete „etwas“ aufgestapelt.

Kurzum: Am 17.11. bestellte Zahnriemen kamen erst heute, am 05. Januar an.
Damit ich also weiterbauen konnte, und auch schon ein wenig ausprobieren, habe ich 4 Meter Kugelkette im Baumarkt gekauft und Kugelkettenantriebsräder mit meinem CTC 3D-Drucker gedruckt, und die Riemen durch Kugelketten ersetzt.

Dabei folgende Erfahrung: Die Kugelketten (2.5mm Kugeldurchmesser, aus Messing) längen sich mit der Zeit, sind mit Kabelbindern aufgrund der kleinen Zwischenräume schwer zu befestigen. Die kleinen Zwischenräume sind ebenso das Problem beim drucken der Antriebsräder sowie bei deren mechanischer Beständigkeit.
Die Antriebsrädchen nutzten sich schnell ab, besonders wenn am Anfang schon mal in die falsche Richtung zum Endstop gefahren wurde, und was eben sonst noch so schief geht. War die Kette bereits paar mal Übergesprungen, traten dann auch beim Drucken Schrittverluste durch Überspringen der Kette auf, weil die dünnen Stege der Antriebsrädchen abgenutzt waren.
Es geht ganz gut wenn man langsam druckt, so bis 50mm/s auf der Y-Achse und 100mm/s auf der viel leichteren X-Achse waren problemlos und zuverlässig möglich.

Doch zurück zum Thema: Hallo Welt!
Ich habe mit dem 3D-Drucker das erste Teil gedruckt, es sollte was nützliches sein: Also wurde es ein Filamentspulen-Abroller mit 608 Kugellagern.
Der erste Druck

Ich habe davon mehrere gedruckt, und da zeigten sich auch gleich mehrere Probleme:
*Das Modell ist mist. Die STL-Datei fehlerhaft (äußert sich im Versatz des „Aufbaus“ nach Rechts, die Laschen für die Kugellager haben die Symmetrieachse sind außermittig). Ich habs dann später selbst nochmal neu konstruiert.
*Der Materialfluss aus dem Hotend kommt überhaupt nicht in gang, größere Druckgeschwindigkeiten unmöglich
*Es zieht viele Fäden und macht haufenweise „blobs“.

Aber es druckt! 😀

Weiterlesen

Selbstbau 3D-Drucker Teil 11- Firmware und Hostsoftware

Firmware aufspielen
Die Reprap-3D-Drucker benutzen einen Arduino Mega 2560 (Stand 2014) und Ramps 1.4. Diese Hardware ist offen, dass heißt die Schaltpläne und Platinenlayout stehen jedermann kostenfrei zur Verfügung. Es gibt auch Elektroniken, auf denen der Mikrocontroller, die Motortreiber und was man sonst noch so braucht, zusammen auf einer einzigen Platine sind, das bringt aber nicht unbedingt Vorteile beim Nachbau, so können die Motortreiber z.B. bei defekt nicht ausgetauscht werden.

Typischerweise läuft darauf eine Firmware wie z.B. Marlin oder Repetier. Repetier bietet auf der Internetseite ein Onlinetool zum erstellen der Firmwarekonfiguration an, welches die Sache stark erleichert.
Zum Eingeben der korrekten Werte in das config-tool kann ich den Rechner von Josef Prusa wärmstens empfehlen. Dort etwas herunterscrollen und man findet die Javascript-Rechner für die Schrittmotor-Steps u.s.w. Korrekturen können natürlich auch noch später vorgenommen werden.
Es gibt noch andere, ich habe mich jedoch ohne größere Umschweife für Repetier als Firmware entschieden, da ich für diesen Drucker Repetier-Host auf dem Computer verwenden möchte.

Die Arduino-IDE muss zum installieren der Firmware auf dem Computer installiert werden, danach Repetier in einen Ordner entpacken und die Config da hineinkopieren, dann repetier.ino mit der Arduino-IDE öffnen.
Den Arduino Mega anstecken per USB (ggf. USB-Seriell Treiber noch installieren, die sind sowohl bei Arduino als auch bei Repetier-Host mit dabei) und in der Arduino-IDE „upload“ ausführen. Dabei wird die Firmware kompiliert und aufgespielt. Das wars schon erstmal.

Hostsoftware konfigurieren
In Repetier muss neben der virtuellen Usb-seriell-schnittstelle auch die Art und Maße des Druckers und Hotend eingegeben werden.
Das ist nicht weiter schwer und weitgehend selbsterklärend. Hier erstmal grob die Maße vom Druckbett u.s.w. eingeben.
Dann mit dem Arduino verbinden und rechts die Registerkarte für Manuelle Kontrolle auswählen.
Die manuelle Steuerung hilft sehr beim Funktionstest zur Inbetriebnahme. (Die Elektronik sollte in der zwischenzeit komplett zusammengesteckt und verkabelt sein)

Richtungen und Endschalter.
Hier hatte ich gewisse Probleme, da nirgendwo so richtig klar wurde, wo denn im Koordinatensystem des Druckers nun der Nullpunkt sein sollte. Bei meinem CTC mit Sailfish-Firmware ist der Nullpunkt in der Mitte des Druckbettes. In Repetier-Host soll jedoch die Koordinate der vorderen linken Ecke des Druckbetts mit positiven Werten eingegeben werden. Hä??

Naja, das wirds eben anders gemacht. Wenn man aber keine Ahnung hat wie es gewünscht ist, tut man sich schwer festzulegen welcher Endschalter den Maximum- und welcher den Minimum-Wert einer Achse abbildet und wie herum nun die Motoren richtig drehen. Die Drehrichtung kann durch umdrehen der 4poligen Pfostenstecker auf der RAMPS-Platine leicht umgekehrt werden.

Also deshalb hier einmal im Bild:
Von durch auf das Portal gesehen, ist der Urpsrung des Koordninatensystems hinten links.
Koordinatenursprung

Nochmal für Leute mit Brille: 🙂
Koordinatenursprung

Um in Repetier-Host den maximalen Fahrweg einzustellen, muss man also das Druckbett ganz nach hinten schieben, ein Maßband, Meterstab, oder was man eben zum Abmessen so zur Hand hat bereithalten, sich den Nullpunkt irgendwie markieren, und dann das Bett ganz zum anderen Ende schieben und den Fahrweg messen. In Millimeter.
Ein paar Millimeter kann man zur Sicherheit noch abziehen, damit es nicht immer gegen das mechanische Ende poltert.

Jetzt wo klar ist, wo NULL ist, ergibt sich auch, ob die installierten Endschalter den Minimum-Wert oder den Maximum-Wert einer Achse representieren.

In meinem Aufbau ist z.B, die X-Achse gegenüber dem Prusa-Entwurf verdreht montiert, weil das günstiger war mit den mechanischen Platzverhältnissen den X-Motor vor dem Aufbau zu haben, statt zwischen den Z-Achsen und dem Portal. Wenn aber der Motor mit seiner Kabelzuführung auf der rechten Seite ist, ists auch irgendwie doof links noch einen weiteren zusätzlichen Drahtverhau anzufangen wegen dem Endschalter.
Deshalb ist bei mir der X-Endschalter ein Maximum-Endschalter, die anderen beiden Minimum-Endschalter am Nullpunkt.

Bei der Z-Achse ist ein Maximum-Endschalter auch nicht sooo schlecht, kann man doch ohne mechanische Einstellarbeiten leicht durch parametrieren der Software und/oder Firmware den Z-Nullpunkt verschieben. Da ich für die spätere Bohrfunktion aber den Nullpunkt ohnehin manuell einstellen möchte, kann der Nullpunkt zum Bett einstellen ruhig fest sein.

Stellt man fest, das die Endschalter entgegen der eingegebenen Konfiguration in der Firmware doch woanders liegen, lässt sich das in der config.h einstellen und die Firmware neu in den Arduino einspielen. Wichtig: Neben dem vorhandensein der Endschalter per True/False Flag und dem Aktivieren/Deaktivieren der dazugehörigen Pull-Up Widerstände der Arduino/Atmega Portpins muss zusätzlich in der Firmware noch die Richtung eingegeben werden, die beim „Homing“ gefahren werden muss, um zum Endschalter zu fahren. Das Umkonfigurieren der Endschalter allein reicht nicht.
Software-Endstops für die gegenüberliegende Seite die nicht durch einen Endschalter gesichert ist, ist ebenfalls zu empfehlen. (Muss dann auch geändert werden, wenn man einmal dabei ist daran herumzufummeln)

Noch ein weiterer Hinweis: Änderungen von Parametern in der Firmware, die zusätzlich im EEProm ableget sind, werden auf dem Drucker nicht automatisch wirksam. Entweder muss man das EEprom löschen (da gibts einen Gcode Befehl), die Firmware ohne und dann nochmal neu mit EEProm-funktion hochladen und starten oder besser gleich mit Repetier die entsprechenden Werte im EEProm ändern. Da Betrifft hauptsächlich die maximalen Fahrwege, die Extruder- und Achsen „Steps per Millimeter“ und die Regelung der Heizfunktionen.

Einstellen des PID-Reglers für den Druckkopf:
Es gibt eine Autotune-Funktion in der Firmware, die die Werte für P, I und D ermitteln soll.
Leider hat sich dabei in meinem Fall (mit 24V 40W Heizelement an 30V) trotz mehrfachen Ausführen der Funktion und Eintragen der ausgegeben Werte (aus dem Log) keine gute Heizungsregelung eingestellt.
Ich habe dann in „Trial & Error“ händisch ein wenig daran herumgespielt während der Drucker etwas druckte, und bin erstmal bei niedrigen Werten hängen geblieben: P:2, I:2, D:2,5
Die Schwankungen sind etwa genauso klein wie die Meßfehler im kalten Zustand.

Selbstbau 3D-Drucker Teil 10- Hinweise zum Aufbau

Hier noch eine Sammlung von Hinweisen zum Aufbau der Konstruktion.
Ich werde das noch weiter ergänzen, wenn mir noch Dinge dazu einfallen.

*Rechtwinkligkeit der Achsen zueinander
Damit später alles Maßhaltig werden kann, ist auf jeden fall mit einem Anschlagwinkel zu Prüfen, ob die Achsen wirklich korrekt rechtwinklich zueinander ausgerichtet sind.
Ich habe die Holzteile auf einer großen Zuschnittsäge herstellen lassen, so daß diese auch sehr genau rechtwinklig waren.
Trotzdem beim Verkleben und zusammenschrauben immer den Winkel mit angehalten, man drückt das ja leicht etwas schief am anfang.

*Abstützung des Portals nach hinten oder Verschrauben auf Bodenplatte
Das Sperrholzportal hat nach hinten zu wenih Fläche um sich nennenswert abzustützen, und die bei mir fast 80 cm langen M10 Gewindestangen der Y-Achse sind definitiv viel zu wobbelig um das Portal wirklich senkrecht zu halten.
Mein Plan ist es, das Holzportal zusätzlich auf einer Tischlerplatte anzuschrauben, damit alles fest steht. Man könnte aber auch eine Strebe zum hinteren Ende des Fahrgestells der Y-Achse anbringen.

*Einschlaggewindemuttern im Boden als Vorschlag
Damit die Y-Achse leicht demontierbar ist, und das Portal zum Tansport von der Y-Achse getrennt werden kann, habe ich nicht nur die Kabel der Y-Achse (Motor, Endschalter und Heizbett mit Temperaturfühler) über Stecker geführt, sondern auch die Y-Achse abschraubbar gemacht. Dazu hat das untere Holzbrett von unten her Einschlagmuttern mit M4 Gewinde bekommen, in die die Halteschellen für die 10er Gewindestäbe der Y-Achse eingeschraubt sind. Die Verbindung vom Portal zur großen Holzplatte als Bodenplatte werde ich dann genauso Herstellen.

*Vorschlag Zugluftschutz mit außenliegenden Motoren
Etwas schwierig ist es mit dem ABS-Druck.
Meine Erfahrung mit dem CTC-Drucker (den ich komplett geschlossen habe) ist es, das 40-45 grad Lufttemperatur im Drucker schon gute Resultate bringen können. Zumindest bei kleineren Teilen wie den Komponenten des Prusa I3.
Im Grunde ist eigentlich nur Zugluft so gut als möglich zu vermeiden.
Ich hatte die idee, um den Fahrweg der Y-Achse Plexiglaswände zu stellen und dabei einen Spalt für die Führungen der X-Achse zu lassen.
Ob das wirklich ausreicht wird wohl ein Test mit Wellpappewänden zu späterem Zeitpunkt noch zeigen müssen.

*Maßhaltigkeit: Ausrichten des Drucktisches.
Ich habe zur ersten Ausrichtung des Drucktisches ne Wasserwaage genommen. Vorher muss natürlich der Tisch auch „im Wasser“ sein.
Auch gut funktioniert es, einen Universalmeßschieber mit Tiefenmaß auf den Tisch zu halten und mit dem Tiefenmaß an den Verstellschrauben nach unten zum Boden einen gleichmäßigen Abstand herzustellen.
Ist der Drucktisch erstmal gerade, durch verdrehen der zwei Z-Gewindestangen die X-Achse in Waage bringen.
Ein guter Tipp ist es (wenn vorhanden) eine Meßuhr zu verwenden und sich einen Halter herzustellen, um die Meßuhr auf die Führungswellen der X-Achse einzuhängen und diese exakt parallel zum bereits einjustierten Tisch auszurichten. Danach dann den Koppeltrieb anschrauben (oder in der Originalbauweise die Wellenkupplungen festschrauben)

*Maßhaltigkeit: Kalibrieren der Fahrwege
Mit dem Hostprogramm/Manuelle Fahrbefehle die Wagen über möglichst große Strecken fahren lassen und genau den zurückgelegten Weg abmessen, und dann im Dreisatz die Steps/mm ausrechnen im EEProm des Druckers anpassen.
Man kann auch z.B. den Drucktisch gegen das Tiefenmaß des Meßschiebers fahren lassen und den zurückgelegten Weg somit genau messen.

Gehäuse für Geetech „Reprapdiscount“ Smartcontroller (128×64 fullgraphic LCD)

Für den Smartcontroller von Geetech habe ich ein Gehäuse entworfen.
Gehäuse für Geetech Smartcontroler

Bestehend aus Oberteil, Unterteil, Knopf und Haltewinkel für Schrägmontage.

CAD Geetech Smartcontroller Gehäuse

Die beiden Taster sind geschlossen im Gehäuse. Es ist ein Taster für die Beleuchtung.
Man kann das Teil so einstellen, das die Displaybeleuchtung nach ein paar Sekunden ausgeht, dann ist das blaue Display aber sehr schlecht ablesbar. Längere Zeiten als ca. 10 sekunden lassen sich nicht einstellen. Mit dem rechten Taster wird das Licht für die nächsten Sekunden aktiviert. Ich habe es auf der Rückseite auf „dauerhafte Beleuchtung“ Umgesteckt, so dass ich die Taste nicht brauche.

Die zweite Taste ist Reset! Die liegt so nah neben dem Bedienknopf den man zudem auch noch drücken muss, dass man die versehentlich mit erwischen kann. Der Ärger ist groß wenn bei einem 8 Stunden Druck man nach 7 Stunden versehentlich auf den Taster kommt. Deshalb auch hier: Kein Loch. Wer möchte kann ja ein Loch reinmachen wo man mit einem langen spitzen Gegenstand… Aber man kann auch einfach kurz den Strom ausschalten oder den Taster am RAMPS drücken.

Die zwei kleinen Stege im Kartenschacht mit einem Messer heraustrennen. Drucken ohne Supports.
Die Haltewinkel je nach persönlicher Vorliebe festschrauben (müssten dann Löcher in die Rückwand gebohrt werden) oder einfach mit Heißkleber ankleben.
In das Unterteil könnten M3 Muttern eingepresst/eingeschmolzen werden, und das Gehäuse dann seitlich verschraubt werden.
Für die Flachbandkabel ist ein Schlitz im Gehäuseboden.

Wie immer gibts die Freecad Konstruktion und die STLs.
RRdisc-geetech-smartctrl-geh.rar [1.5 MB, RAR]

Selbstbau 3D-Drucker Teil 9- Elektronik

Das wird ein umfassenderer Artikel. Der Artikel wird noch weiter vervollständigt.

Ich habe folgende Themen auf dem Programm:
Arduino Mega 2560-16
Ramps 1.4
Geetech Fullgraphic Smart Controller
Optische Endschalter
Pololu A4988 Schrittmotortreiber
Kabelwege

Arduino Mega 2560-16
Da gibts nicht viel dazu zu sagen, der wird einfach gekauft und dann hat man ihn.
Ach doch noch was: Der eingebaute Spannungsregler zum Erzeugen der 5V Betriebsspannung ist ein Linearregler, und der hat bei 12V schon arg zu kämpfen seine Verlustleistung loszuwerden. Der kann nicht aus dem 24V Netzteil versorgt werden. Bei meinem sainsmart Arduino Clone ist 12V für den Energiebedarf (da hängt ja auch noch der Smartcontroller und dessen Displaybeleuchtung mit auf der 5V Schiene) schon zu viel, da steigt er durch Strombegrenzung und Spannungsfall auf der 5V schiene langsam aus. Soll der Drucker ohne USB-Anschluß zum Hostcomputer von der SD-Karte drucken können, ist hier also ein externer Spannungsregler für 5V, oder die versorgung des Arduino-Board über die Hohlsteckerbuchse mit 7-10V notwendig, damit der Spannungsregler auf dem Arduino nicht überhitzt.
Wichtig: Bei Betrieb der Motortreiber/RAMPS mit 24V muss unbedingt die Diode unter dem Motortreiber ausgelötet werden, die die Spannung vom Ramps auf den Spannungsreglereingang des Arduino einspeist. Näheres findet sich im Reprap-Wiki zum Ramps 1.4.

Ramps 1.4
Ramps 1.4 ist ein Motortreiber-Aufsatz „Shield“ für den Arduino Mega. (Reprap Arduino Mega Pololu Shield).
Es können 5 Motortreiber aufgesteckt werden und zudem befinden sich hier noch die elektrischen Anschlüsse für Temperaturfühler, Heizbett, Extruderheizung, Kühl-Lüfter für das Druckstück und der Anschluß für das Heizbett und die Endschalter.
Die Pololu Motortreiber (bei Verwendung des A4988!) müssen mit dem Poti von den dicken Stromanschlüssen wegzeigen.

Opo-endstop an Ramps

Auf der RAMPS-Platine muss bei Verwendung von 24V eine Diode ausgelötet werden. Der Heizbettanschluß kann nur 11A Schalten, die große Polyfuse ist nur für 16V geeignet und muss gegen ein 35V-Typ getauscht werden, oder durch etwas anderes (z.B. KFZ-Flachsicherung) ersetzt werden. Die FET sind nicht die allertollsten und können durch welche mit niedrigerem RDSon-Widerstand getauscht werden um höhere Ströme schalten zu können. Im Fall des Heizbett müssen dazu aber zusätzlich die Leiterbahnen verstärkt werden.

Damit alles korrekt funktioniert, müssen alle in der Firmware konfigurierten Temperaturfühler auch angeschlossen sein!

Anschluß der Motoren:
Der Anschluß der Schrittmotoren ist unklar, auf der Platine steht jedoch 1A, 1B, 2A, 2B an den Stiftleisten. Bei den Motoren entsprechend das Datenblatt hernehmen und die Anschlüsse 1A/1B jeweils einer Spule, und 2A/2B der anderen zuweisen, oder die zugehörigkeit der Leitungen zu den beiden Wicklungen einfach mit einem Widerstandsmeßgerät ermitteln. Durch drehen des Steckers kann nachher die Drehrichtung des Motores noch korrigiert werden.

Anschluß der Endschalter: Bei optischen Endschaltern sind die Schaltzustände leider nicht so wohldefiniert wie bei mechanischen Endschaltern (kurzschluß nach masse oder pullup direkt am Arduino-Port).
Hier muss die fehlende Entstörung der Eingänge mit einem Tiefpass noch ergänzt werden. Ich habe mir dazu eine kleine Lochrasterplatine zum zwischenstecken zusammengelötet.
Erfolgreich war ein Serienwiderstand von 1,8 Kiloohm und ein Keramikvielschichtkondensator zu 100nF nach Masse. Ohne den Tiefpassfilter wurden die Endschalter bei laufenden Motoren häufig willkürlich als ausgelöst erkannt, obwohl gar keine Auslösung bestand und die Lichtschranke nicht unterbrochen wurde. Offenbar ist in der Repetier-Firmware auch keine Software-Entprellung „eingebaut“ und jeder kleine eingestreute Transient lässt den Eingang kippen.

Opo-endstop an Ramps

Beim Verlängern der Leitungen habe ich ja Flachbandkabel eingesetzt. Um Störungen zwischen den Motorleitungen zu den Endschalterleitungen zu vermeiden habe ich eine Ader dazwischen freigelassen, was jedoch ohne den Tiefpass am Ramps nicht ausreicht, um einen ordentlichen Betrieb zu erreichen :/

Pololu A4988 Schrittmotortreiber
Stepstick-Platinen
Die Motortreiber kamen bis auf die Stiftleisten vollständig aufgebaut bei mir an, ich musste also nur die Leisten noch anlöten.
Am Poti kann man den Motorstrom einstellen. Mit dem Uhrzeigersinn wird der Strom größer.
Die Referenzspannung kann man mit einem Spannungsmesser direkt am beweglichen Teil des Potis erfassen und gegen Masse messen.
Die Referenzspannung muss entsprechend dem zulässigen Motorstrom der verwendeten Schrittmotoren ausgerechnet und eingestellt werden (oder niedriger). Man kann auch die Motortemperatur im Auge behalten und ggf. noch etwas reduzieren.

Geetech Fullgraphic Smart Controller
Der Smart Controller wird nur angesteckt und bekommt seine Daten per I2C vom Arduino. In der Firmware muss entspechend der Controller „Reprapdiscount Full Graphic“ eingestellt sein. Nicht verwechseln mit dem anderen Reprapdiscount smart controller mit 4 zeiligem LCD.
Es gibt berichte, das das Vollgraphikdisplay die Ausführung der Firmware bremsen würde. Die Aussagen sind zum Teil wiedersprüchlich. Ich werde das beobachten.

Kabelwege
Energiekette zur X-Achse:
Energiekette zur X-Achse
Neben der Energiekette zum Heizbett, kommt auch zur X-Achse eine Energiekette zum Einsatz, um Knickstellen an den elektrischen Anschlüssen zu vermeiden. So werden Kabelbrüche vermieden.

Prusa I3 Boxed Verkabelung

Zum Druckkopf habe ich den Kabelstrang an den Teflonschlauch fürs Filament angebunden, da soll dann später noch solches Wickelband herum, wenn der Kabelbaum komplett ist. Ich habe bereits zusätzliche Leitungen für eine LED-Beleuchtung am Druckkopf und die Lüfter für die Extruderkühlund und die Werkstückkühlung vorgesehen.

Der restliche Kabelsalat verschwindet einfach mit anschraubbaren Kabelbinder-Haltesockeln an der Rückseite der Konstruktion.
Das Netzkabel am Netzteil ist noch ein Provisorium, da muss noch ein Isoliergehäuse über die Schraubkontakte und einen Netzschalter hätt ich auch gern. Ob ich noch einen Kaltgeräteanschluß dazwischen setze oder das Netzkabel lieber mit einer Zugentlastungsschelle sichere, weiß ich auch noch nicht. Ein festes Kabel kann nicht aus der Buchse rutschen.

Selbstbau 3D-Drucker Teil 8- Heizbett

Für ordentliche und reproduzierbare Haftung der Druckstücke hat es sich beim CTC-Drucker bewährt, eine Heizplatte zu verwenden und gelbes Polyamid-Klebeband „Kapton“ aufzukleben. Diese aufgeklebte Schicht muss Fettfrei sein, also ab und zu mit Reinigungsbenzin o.ä. die Fingerabdrücke beseitigen.
Gute Haftung stellt sich bei 65 Grad für PLA und bei 110 Grad für ABS-Teile ein.

Über ebay konnte ich günstig ein Reststück 3mm starkes Aluminiumblech erstehen. Auf die Unterseite wird eine Heizplatte geschraubt. Ich habe mich für ein 24V System entschieden um die Leitungsquerschnitte und Ströme im Griff zu behalten.

Sainsmart bietet eine günstige „MK2b“ Heizplatte an, die sowohl mit 12V als auch mit 24V betrieben werden kann.

Sainsmart Reprap MK2b Heizbett

Die Heizplatte wird nach dem Übertragen der Befestigungslöcher auf das Aluminiumblech auf der Seite mit den Leiterbahnen dünn mit Wärmeleitpaste bestrichen und die elektrischen Anschlüsse mit Tesa Kristallklar isoliert.
Tesa Kristallklar Klebeband übersteht problemlos den 180 grad heißen Fuser im Laserdrucker, daher kommt es auch hier zum Einsatz. Man kann natürlich auch einen Streifen Kaptonklebeband hernehmen.
Nach bohren und senken der Schraubenlöcher im Alublech kann beides zusammengeschraubt werden. Auf die Heizplatte muss neben den Anschlußleitungen für den Strom noch ein Thermistor, damit die Steuerung die Temperatur erfassen kann. Ich habe das mittlere Loch bei meiner Heizplatte nicht für den Temperaturfühler verwendet sondern lieber eine zusätzliche M2 Schraube zu Befestigung verwendet, damit sich die Platte nicht beim Aufheizen davonwölben kann und ein guter Wärmeübergang stattfindet.
Der NTC kam stattdessen mit einem Klecks Wärmeleitpaste auf die Unterseite der Heizplatte, angeklebt mit Kaptonband. Nicht vergessen die Anschlüsse hitzebeständig zu isolieren, z.B. mit ganz dünnem Schrumpfschlauch.

Energiekette zum Heizbett

Die Leitungsführung erfolgt mit einer Energiekette unterhalb der Sperrholzplatte.

Energiekette zum Heizbett

Rechts im Bild ist dazu noch die höhenverstellbare Befestigung des Heizbettes zu sehen. Durch Abschrauben der Rändelmuttern kann die Platte leicht ausgewechselt werden, etwa gegen eine Verschleißplatte für die geplante Platinenbohrfunktion. Die Elektrischen Anschlüsse sind deshalb auf der Rückseite über Steckverbindungen geführt.

Erfahrungen mit der Heizleistung des MK2B Heizbett:
Die sind vorsichtig gesagt enttäuschend. Bei 24V beträgt die Heizleistung nur ca. 100W, weshalb auf meiner 250x250mm Aluplatte keine ausreichende Temperatur für die Haftung von ABS-Kunststoff zustande kommt. Ich habe das 24V Schaltnetzteil deshalb auf 30V hochgedreht, sehe das aber nicht als optimale Lösung an. Da ich auf längere Sicht auf eine 30×30 cm oder 30x40cm große Platte wechseln möchte, bleibts jetzt aber erstmal so. Mit 30V sind mit 15 langen Minuten Aufheizzeit 110 Grad erreichbar. Die Unterseite kann noch Isoliert werden und die Oberseite bis zum Erreichen der Zieltemperatur abgedeckt werden, um die Sache etwas zu beschleunigen.