RepRap/Mehrfarb-3D-Druck

Aus Stratum 0
< RepRap
Version vom 12:40, 23. Mär. 2015 von Lulu (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu:Navigation, Suche
RepRap/Mehrfarb-3D-Druck


Kontakt: wird gesucht
Status: aktiv (Was heißt das?)

Hier soll beschrieben werden, wie man die 3 Düsen des RepRap mit verschiedenen Farben (multicolor) in einem Werkstück ansteuern kann. Auf Shapeways gibt es eine Auflistung, welche Dateiformate und Tools für Mehrfarbigkeit geeignet sind. Link: [1] .

Laut dem Slic3r-Manual ist das einfach möglich.

Grundlegende Methodik

Es wird für jeden Kopf eine einzelne STL-Datei erzeugt und im Slic3r zusammengefügt. Die Abstände der Extruder werden in Slic3r manuell konfiguriert.

Anwendungsfälle

  • (Projekt Gesellschaftsspiel-Replikator )
    • Scrabble oder Spielgeld für Blinde und Sehende: Mit Braille-Schrift (in Steinfarbe) und Schwarzschrift (Lateinischer Buchstabe in anderer Farbe) (Projekt Gesellschaftsspiel-Replikator )
  • Blumentopf mit transparenter Wasserstands-Anzeige-Röhre
  • Wir brauchen eine Kalibrierungs-Datei, gedacht ist ähnlich wie beim HP510 die Farbkalibrierung, nur in 2 bis 3 Dimensionen. (Erledigt: Siehe unten.)

Vorgehensweise beim Erarbeiten der Funktion beider Druckköpfe

  1. Zweiten Druckkopf testen: Alleine betreiben. Erfolgreich ? ___
  2. Abstand der Köpfe messen und hier eintragen:___
  3. Abstand der Köpfe in Slic3r eintragen. Konfigurationsfile wurde abgespeichert im Pfad:___
  4. Test-Datei im OpenSCAD erstellen mit nur einem Layer Filament aber zwei Materialien.
    1. Nebeneinander ohne Berührung zum Abstand nachmessen
    2. Nebeneinander mit Berührung
    3. Ineinander (Da gibt es schon was auf Thingiverse)
  5. Test-Datei aufspalten in zwei STL-Dateien, welche hier abgelegt sind: ___
  6. Slic3r-Funktion zur Vereinigung der Dateien aufrufen und gCode speichern, liegt hier: ___
  7. Verkabelung am 3D-Drucker für beide Köpfe herstellen: OK? ___
  8. Filamente in beide Köpfe einfädeln: Gleiches Material, nur unterschiedliche Farbe OK? ___
  9. Befehle für Extrudieren, Pause, Aufheizen für die Köpfe einzeln möglich? wie ? __
  10. Druck-Parametrierung anpassen: Für beide Köpfe vorher einen Linienzug um das Objekt herum drucken lassen. Gespeichert wo? ___
  11. Testdrucke:
    1. Testdruck ohne Berührung: OK? ___
    2. Abstand mit Schieblehre X, Y nachmessen, ggf. Slic3r Config korrigieren, Z OK? ___
    3. Testdruck mit Berührung: OK?
    4. Testdruck Nebeneinander mit Berührung: OK?___
    5. Testdruck mit ineinander verschlungenen Materialien: OK?
    6. Testdruck Scrabble-Stein
  12. Konfig für verschiedene Filamente ändern: PLA + Holz-Filament
  13. Neue Druck-Tests
  14. Wiederhole alles für den dritten Extruder

Kalibrierungs-Dateien

1. Kalibrierungs-Datei

Eine Kalibrierungs-Datei findet man hier:

  • Thingiverse Calibration of extruders of reprap Mendel tricolor [2]


Bild aus OpenSCAD: 3D-Printer Calibration File V 0.01

2. Kalibrierungs-Datei

// Multicolor 3D-Print Calibration File
// (c) Stratum 0 e.V.
// 2014-07-14 V0.01
// License: WTFPL


//==================================================================
// Copy this paragraph for each Extruder file
$fn=50;
Strichlaenge=10;
AbstandA=10;
AbstandB=9;
n=10;

// Base
// any extruder  (Extruder 1)

difference() 
{
    // Base Layer
    color("yellow")
    translate ([-110,-10,-1]) cube ([150,120,1], center=false);
    
    // Cut off corner
    color("black")
    translate ([-120,40,-1]) cube ([110,80,2], center=false);
}


// Extruder 1
color("red")
for(i = [0:n]) 
    {
         translate ([0,AbstandA*i,0]) cube ([Strichlaenge,1,1], center=false);
    }


// Extruder 1
rotate ([0,0,90])
color("red")
for(i = [0:n]) 
    {
         translate ([0,AbstandA*i+5,0]) cube ([Strichlaenge,1,1], center=false);
    }



//==================================================================
// Copy this paragraph for each Extruder file
$fn=50;
Strichlaenge=10;
AbstandA=10;
AbstandB=9;
n=10;

// Extruder 2
color("blue")
translate([Strichlaenge,0,0])
for(i = [0:n]) 
    {
         translate ([0,AbstandB*i,0]) cube ([Strichlaenge,1,1], center=false);
    }


// Extruder 2
rotate ([0,0,90])
color("blue")
translate([Strichlaenge,0,0])
for(i = [0:n]) 
    {
         translate ([0,AbstandB*i+5,0]) cube ([Strichlaenge,1,1], center=false);
    }

//==================================================================

// Copy this paragraph for each Extruder file
$fn=50;
Strichlaenge=10;
AbstandA=10;
AbstandB=9;
n=10;

// Extruder 3
color("green")
translate([Strichlaenge*2,0,0])
for(i = [0:n]) 
    {
         translate ([0,AbstandA*i,0]) cube ([Strichlaenge,1,1], center=false);
    }

// Extruder 3
rotate ([0,0,90])
color("green")
translate([Strichlaenge*2,0,0])
for(i = [0:n]) 
    {
         translate ([0,AbstandA*i+5,0]) cube ([Strichlaenge,1,1], center=false);
    }