Peter Hofbauer’s private Homepage
Selbstbauprojekte
eigene Entwicklungen
CNC-Maschine mit 3D- und Laser Zusatz (2 / 3)
Der 3D-Zusatz
Eigentlich ist es keine gute Idee, eine Portalfräse zum 3D-Drucken verwenden.
Die XY-Achsen sind viel zu langsam, nur die Z-Achse ist geeignet. Warum
mache ich das trotzdem?
Wegen Platzmangel!
Meine Werkstatt für mechanische Arbeiten ist zu klein für noch eine Maschine.
Bisher habe ich einen kleinen 3D-Drucker verwendet. Den musste ich im
Nebenraum parken und nur bei Bedarf holen und anschließen. Dieser 3D-
Drucker kann nur bis etwa 100x100mm drucken, ich benötige aber einen
Größeren. Solche 3D-Drucker sind inzwischen sehr preiswert. Nur leider kann
ich so einen wegen der äußeren Abmessungen nicht in vorhandene Regale
unterbringen.
Der 3D-Teil besteht aus einer separaten Y-Achse und einer separaten X-Achse
für eine Fläche von max. 220x220. Die Z-Achse wird von der CNC verwendet.
Leider musste ich mich für Z auf eine Höhe von max. 100mm beschränken.
Der Umbau auf 3D-Betrieb sollte unbedingt sehr einfach und schnell gehen.
Die Y-Achse wird ohne Verschrauben auf die Nutenplatte gelegt und in 2
diagonale Bohrungen eingerastet.
Die X-Achse wird auf zwei M5x10-Gewindestifte an den oberen Säulen in der
CNC-Z-Aufnahme eingehängt und mit zwei M5 Schrauben in den beiden
unteren Säulen verschraubt.
Dann die beiden Leitungen mit den Sub-D-Steckern an der Front stecken. Das
alles dauert nicht einmal eine Minute.
Danach muss noch das Filament eingefädelt werden, aber das ist ja auch bei
jeden anderen 3D-Drucker etwas fummelig.
Die Z-Platte der CNC wurde mit 4 Säulen zur
Aufnahme der 3D-X-Achse versehen. Die obere
mit 10mm langes M5 Aussengewinde bestückt,
die untere mit M5 Innengewinde. Damit wird die
3D-X-Achse über die beiden Seitenwände der
Z-Platte angehoben. Diese Teile bleiben
permanent montiert. Brauchen für die CNC-
Spindel und alle sonstigen Anbauten nicht
entfernt werden.
Der 3D-Teil wird über eine originale Hard- und
Software von Anet mit Firmware Marlin
SkynetV3.2.3 gesteuert.
Alle 4 Schrittmotoren, also auch der größere
von der CNC-Z-Achse, werden von der Anet-
Platine gesteuert. Die werden leider nur mit 12V
betrieben, was die Ansprüche auf hohe Druck-
Geschwindigkeit herunter stutzt.
Die Datenübergabe erfolgt mit einer SD-Karte.
Via USB soll es auch funktionieren, habe ich
aber noch nicht ausprobiert.
Ein billiger 3D-Bausatz als Teile- und Informations- Lieferant
Statt die Teile einzeln zu bestellen habe ich einen billigen Bausatz bestellt: Anet A8 mit Rahmen aus Sperrholz. Den habe ich zuerst komplett
zusammen gebaut. Die Beschreibungen waren auf der mitgelieferten CD sehr gut. Ich wollte damit nicht drucken sondern die Funktionen
studieren und wenn ich damit durch bin wollte ich die elektronischen und mechanischen Teile für meine eigene Konstruktion verwenden.
Der zusammen gebaute A8 machte einen ziemlich jämmerlichen Eindruck. Man könnte mit den Kerl Mitleid bekommen. Da war alles was
irgend mögliche war, eingespart worden. Die Führungen und Lager entsprachen nicht den Abbildungen im Netz.
Die Lager bestanden aus 10mm langen Blechhülsen (wie Hohlnieten) und waren in die Lagergehäuse mit irgendwas eingeklebt. Die
Linearwellen waren Rohre. Der Durchmesser war statt 8,0mm nur 7,8mm und damit nicht zu verwenden.
Die Druckplatte (Heizbett) war aus Stahl 220x220mm, aber die darunter geklebte Heizung war nur 100x100mm, also auch unbrauchbar.
Die elektrische Ausrüstung (Hauptplatine, Motoren, Endschalter) war OK, die konnte ich weiter verwenden. Bevor ich den 3D-Drucker wieder
demontierte zwecks Teilegewinnung wurden diverse Versuche gemacht. Im Netz sind unter den Suchbegriff “Anet A8” viele Berichte und
Videos zu finden. Zum Beispiel wird öfter die Firmware von Marlin, SkynetV3.2.3 mit einer Grafik-LCD empfohlen.
Das Projekt SkynetV3.2.3 besteht aus 227 Dateien und ein Verzeichnis mit Geräte-spezifischen Dateien (für A2, A6, A8). Die Datei
Configuration.h darin ist wichtig. Hier muss man einige Daten für den 3D-Drucker eintragen.
Man benötigt die Arduino-IDE zum compilieren. Eigentlich sollte man die Firmware via USB übertragen können. Das hat bei mir nicht
funktioniert. Stattdessen habe ich das mit meinen JTAGICE_MK2 gemacht. Die dazu benötigte Hex-Datei erzeugt die Arduino-IDE wenn man
die Übertragung per USB abschaltet. Wo die hex dann versteckt wurde, wird nach dem Compilieren in den unteren Zeilen der
abschließenden Meldungen angezeigt.
Mach einigen Versuchen gelang es mir endlich die neue Firmware zum laufen zu bringen. Dazu war eine Bedieneinheit nötig, die den
Drehknopf neben(!) das Display hat. Die Einheit mit den Drehknopf darunter funktionierte nicht, auch nicht durch veränderten Anschluss wie
im Netz behauptet.
Beim 3D-Druck muss das Druckbett im Abstand von genau 0,2mm unter der Düse (bei Z-Position = 0,0) eingestellt sein. Das wird beim
Original mit 4 Schrauben eingestellt. Diese nervige Arbeit wollte ich meiner Konstruktion vermeiden durch “auto-bed-leveling”. Das ist in der
Firmware vorgesehen. Dabei tastet ein Sensor die Fläche in 9 Positionen ab und berücksichtigt Abweichungen beim Drucken. Wie das genau
verwaltet wird konnte ich nicht in Erfahrung bringen. Vermutlich funktioniert das nur wenn die Abweichungen nicht über die Höhe einer Lage
hinausgehen. Meine Y-Achse mit den Druckbett liegt fest parallel zur Nutenplatte der CNC. Abweichungen zur Bahn der 3D-Düse darf nie
über 0,2mm liegen. Diese geringe Abweichung kann problemlos vom “auto-bed-leveling” korregiert werden.
Nachdem ich alle mechanischen und elektrischen Funktionen kontrollieren konnte wird der 3D-Drucker wieder zerlegt. Seine Aufgabe ist
beendet.
Die Y-Achse fürs 3D-drucken
Die Y-Achse soll in der CNC flach auf die Nutenplatte liegen. Besteht
aus 12mm-Linearführungen, vorn und hinten mit Alu-Winkel
verschraubt. Die Winkel sind zusammen auf der CNC gefertigt. Die
beiden 12mm-Linearwellen sind exakt parallel angeordnet. Als Träger
für das geheizte Druckbett dient eine Platte aus 4mm Dibond. Die
wird mit einen Abstand von nur 5mm über die CNC-Nutenplatte
geführt.
Das geheizte Druckbett besteht aus einer Heizplatte aus Alu mit
darauf geklebter Glasplatte 220x220mm. Die Oberfläche der
Glasplatte ist nicht höher wie die vier Lagergehäuse: 30mm über die
Dibond-Platte. Unter der Heizplatte sind 25mm, die ich mit Material
zur Wärme-Dämmung gefüllt habe. Damit diese Material dort bleibt
(es fasert) wurde rundherum eine 10mm hohe Wand aus 4mm-
Dibond geklebt. Zusätzlich noch mit 20mm Silikon- Klebestreifen.
Wird die Dibond-Platte zu heiß?
Die Temperatur der Dibond-Platte wurde nach einer Stunde
Heizbetrieb mit 110°C überprüft. Auf der Oberfläche wird es nur 2°
über Raumtemperatur, die Höchste war unter der Dibond in der Mitte
auf 8° über Raumtemperatur. Ist also OK!
Angetrieben wird die Y-Achse mit 2 Motoren. Die waren bei der A8 an
der Z-Achse. Später habe hier vorsichtshalber die größere Sorte wie
an der X-Achse verschraubt. Beide Motoren sind parallel geschaltet.
Der Y-Treiber ist auf einen Strom von 0,74A eingestellt. Das habe ich
geändert auf 1,7A. Dazu muss der R17 (100k) gegen einen 33k
getauscht werden.
Im anschließenden Dauerbetrieb wurde der Treiber zu heiß. Die
Temperaturüberwachung des ICs wurde aktiv. Ein Lüfter (60 x60 mm)
im Abstand von 20mm über den Treiber hat das Problem behoben.
Hinten am Winkel ist ein selbst gedrucktes Gehäuse als Übergang zum Anschlusskabel mit 15-
poligen Sub-D-Stecker. So etwas vereinfacht die Verdrahtung und Inbetriebnahme.
Die grauen Teile in den Fotos sind mit meinen kleinen 3D-Drucker gefertigt.
Probleme mit den Führungen
Die Y-Achse lief beim verschieben mit der Hand teilweise schwer und ruckweise. Das kann so
nicht bleiben. Das schaffen die Motoren mit den kleinen Treibern nicht.
Nach einigen Versuchen auch mit anderen Lagern stand fest: die Achse der Lager ist gegen die
Achse der Linearwelle gering abweichend. Alle Bemühungen brachten kein Erfolg.
Dann habe ich die Lager auf eine ungewöhnliche Art
ausgerichtet: mit Klebstoff!
Der Klebstoff: RK1300 (oder RK1500) mit Aktivator.
Der mechanische Teil muss richtig montiert und ausgerichtet
sein. Die Dibond-Platte von den Lagern abschrauben.
Der ungefähre Ablauf:
1.
Den Aktivator auf die Dibond-Platte auftragen
2.
Mindesten 5 Minuten ablüften lassen
3.
Die Fläche des Lagergehäuses mit Kleber versehen,
nur 0,1 bis 0,2mm
4.
An den äußeren Enden der Lager eine(!) Schraube
nur ein paar Milimeter einschrauben damit die Lager
an der richtigen Stelle bleiben
5.
Die Dibond-Platte auf die Lager leicht auflegen, mit
Gefühl leicht hin und her schieben damit sie sich
ausrichten. Die Platte muss auf den Kleber
“schwimmen”
Weil der Kleber sofort reagiert muss man sehr schnell
arbeiten!
Nach einen Tag ist der Kleber ausgehärtet. Danach konnte
die Platte sehr leicht und ohne ruckeln bewegt werden. Die
Aktion war ein voller Erfolg!
Das selbe habe ich dann noch bei der X-Achse gemacht.
Test: 3D-Drucken
Es waren viele Versuche nötig bis alle Fehler erkannt und behoben werden konnten. Ich benötige 3D-Plastikteile für meine technischen
Konstruktionen. Dafür will ich nur ABS (nicht PLA) verwenden wegen der höheren Temperaturbeständigkeit und der besseren Stabilität.
Mein alter 3D-Drucker
Angefangen habe ich vor einiger Zeit (2016) mit einen kleinen 3D-Drucker “UP! mini”. Der ist etwa so groß wie eine Kaffeemaschine und hat
einen geschlossenen Druckraum was für ABS günstig ist. Der wurde mit einer Rolle ABS-Filament geliefert. Das ganze war komplett mit einer
passenden PC-Software. Zuerst hab ich mit einigen Experimenten und Ratschlägen aus dem Netz gearbeitet. Das war eigentlich Unsinnig!
Dann habe ich das ganze einfach so gemacht wie der Hersteller es vorgesehen hatte und es war OK. Gedruckt wurde auf eine Epoxyd-
Lochplatte. Sobald sich die Löcher alle mit Plastik gefüllt hatten war auch das gefürchteten Warping kein Problem mehr. Solange eine Seite
des Models nicht über 80mm war.
Zuerst druckt der 3D-Drucker ein Sockel (”Raft”), der sich mit den Plastik in den Löcher verschmilzt, und darauf das gewünschte Model. Das
Model muss mit einer scharfen Spachtel vom Sockel gelöst werden. Es gab keine Probleme, einfach starten und warten. Auch die Bedienung
der dazu gehörenden Software war simpel.
Habe zwei Testwürfel 20x20x20 mit zwei verschiedenen ABS-Filamenten gedruckt:
•
hellgraues ABS (Zaper) empfohlene Temperaturen 190° bis 230°
•
dunkelgraues ABSnext empfohlene Temperaturen 240° bis 260°
Die vom Hersteller empfohlene Düsentemperatur war sehr unterschiedlich. Seltsam, das der Drucker trotzdem
beide Testwürfel einwandfrei gedruckt hat obwohl man keine verschiedene Temperaturen einstellen kann. Der
Drucker legt los sobald die Düse 260° erreicht.
Mein neuer selbst gebauter 3D-Drucker auf der CNC
Die G-Kode-Datei erzeuge ich mit Cura V4.6. Den G-Kode dann auf eine SD-Karte laden. Auf der Frontplatte ist eine Öffnung für diese Karte
vorhanden. Man kann die Datei aber auch ohne SD-Karte via USB übertragen. Mit der Software Repetier. Damit kann der Drucker auch
manuell einzeln bewegt werden, das ist etwas besser zu bedienen als mit der Einknopf-Bedienung der Marlin-Firmware. Außerdem können
Daten eingesehen und G-Kode Befehle einzeln gesendet werden.
Im Netz sind einige Test-Modelle zu
finden, zum Beispiel dieser
Temperatur-Turm. Viel sagt das aber
nicht aus, eigentlich sind die
Ergebnisse bei allen Temperaturen
(260 bis 220°) etwa identisch.
Mit Zentrumskreuz mit Rahmen
190x190mm wurde die Funktion der
ABL (Auto Bed Leveling) getestet.
Das Modell ist nur 1 Layer hoch.
Nach einen Haufen Tests habe ich ein Gehäuse für
ein
geplantes Projekt gedruckt. Soll später oben auf die
Z-
Achse der CNC.
Der 3D-Druck auf der CNC (+3D-X und 3D-Y) funktioniert inzwischen gut und kann ohne Sichtkontrolle z.B. über Nacht laufen. Das soll auch
so sein weil`s sehr lange dauert. Das Gehäuse oben dauerte fast 8 Stunden, allerdings mit geringer Geschwindigkeit (50mm/s).
Für das hellgraue ABS verwende ich folgende Einstellungen in Cura:
Düsentemperatur für die ersten Lagen 260°, danach 240°
Bett Temperatur permanent 110°, (leider kosten das kWh, werde später noch mit 100° > 90° testen)
Rückzug (wird in Cura Einzug genannt) 1,5mm, weil kurzer Abstand (Düse > Motor) im Direkt-Extruder
Lüfter zuerst 0%, dann bis 60% steigend
Geschwindigkeit: 60mm/s
Das Warping-Problem
Drucken auf meine Glasplatte und Versuche mit verschiedenen Epoxyd-Platten als Druckbett hatten alle nicht das gewünschte Ergebnis.
Warping war bei größeren Modellen immer vorhanden. Die Erfahrungsberichte im Netz kann ich nicht bestätigen. Ich werde es mit diversen
Klebern im Laufe der Zeit mal testen.
Als Ersatz fürs ABS wird PETG empfohlen, das soll sich besser drucken lassen. Werde ich alles testen sobald ich ein größeres Teil benötige.
Update: Erfahrungen
Inzwischen funktioniert der 3D-Drucker auf der CNC sehr gut.
Verwendetes Material: PETG, mit den von Cura vorgeschlagenen Daten, Geschwindigkeit auf 80mm/s erhöht.
Druckplatte: 1mm Pertinax mit Klammern auf der Glasplatte befestigt.
Ergebnisse: kein Warping, alles richtig und Maße genau, Drucken von 11 Stunden über Nacht läuft problemlos.
Das Umrüsten von CNC auf 3D geht schnell. Ebenso einfädeln des Filaments geht jetzt sofort. Vorher muss aber die Düse auf 245° sein.
Das automatische Bett-Leveling (ABL) mache ich nach aufspannen der Pertinaxplatte sobald das Bett auf 90° ist. Die Abweichungen korregiert
die Firmware auf allen Lagen bis zur obersten Lage. Das Bett sollte nicht zu stark abweichen. Bei meiner Konstruktion ist eine mechanische
Korrektur nicht möglich und auch nicht vorgesehen. Weil die aber nicht über +/-0,1mm ist kann das mit ABL gut ausgeglichen werden.
Die “ein-Knopf-Bedienung” der Marlin-Firmware gefällt mir überhaupt nicht!
Ein 3D-Drucker ist eine CNC-gesteuerte Maschine. Und bei einer Maschine gehören mindestens 2 richtige(!) Tasten mit der Aufschrift “START”
und “STOPP”. Und wenn man da drauf drückt muss sofort(!) genau das passieren was auf der Taste steht. Damit man anhalten kann um zum
Beispiel ungewolltes Filament von der Platte zu entfernen bevor das über das Modell verschoben wird. Danach muss ein Starten an genau der
selben Stelle möglich sein. Ob das an der Stelle zu verantworten ist oder nicht ist eine Sache des Bedieners und nicht der Firmware!
Die Funktionen “Pause”, “Weiter” und “Abbruch” sind mit den Drehknopf nicht schnell genug erreichbar. Und sind nicht Fehlerfrei. Man muß
dann notgedrungen den Netzschalter bemühen.
Temp-Tower 260-220°
Loch-Muster 1 bis 25mm