wemaus

Font Size

Cpanel

Teil IV, 3D-Drucker

Im vierten Teil werden wir uns mit dem "Auto Bed Leveling" befassen, neue Marlin Firmware installieren und die hierfür nötigen Umbauten am Drucker vornehmen.

 

 

Themen im Überblick

Auto Bed Leveling

Neue Firmware Marlin V1.1.9

Sensor Einstellung

 

 

Auto Bed Leveling

Das "Auto Bed Leveling" erleichtert die Arbeit mit dem 3-D-Druck erheblich, wenn es erst einmal eingerichtet ist. Bei dieser Gelegenheit wird auch gleich die Kabelkette umgebaut. In diesem Beitrag wird gezeigt wie dies gemacht werden kann und welche zusätzlichen Teile hierfür benötigt werden.

Vor dem Beginn des Umbaus des Druckers, sollten alle erforderlichen Teile ausgedruckt werden. Sie können unten heruntergeladen werden.

Im Einzelnen sind dies:

 

Tragplatte hinten III  

 

Diese Tragplatte wird mit dem Druckkopfträger und der X-Führung verschraubt.

     
Kettengliedhalter III  

 

Der Kettengliedhalter wird nur hinten auf der Tragplatte eingerastet und an der vorderen Seite durch den Lüfterhalter arretiert.

     
Sensor- und Lufterhalter III   Der Sensor- und Lüfterhalter nimmt den Sensor, sowie den Radiallüfter auf. Befestigt wird der Halter mit einer M3-Zylinder- bzw. Senkkopfschraube am Rahmen des Druckkopfes. Der Lüfter wird mit zwei M4-Schrauben mit dem Halter verschraubt. Dazu werden zwei M4-Gewinde in den Halter geschnitten.
     
Träger Kettengliedhalter links IV   Der linke Träger für den Kettengliedhalter wird an der X-Achse links montiert. Zuvor ist die kleine oben befindliche Stützlasche auszubrechen. Zur Montage wird die obere Führungsstange der Achse, als auch eine M3-Schraube zur Befestigung verwendet.
     
Träger Kettengliedhalter links IV  

 

Unten rechts ist die Bohrung für diese Schraube zu erkennen.

     
Ringdüse   Die Ringdüse wurde so abgeändert, dass sie jetzt nicht mehr am Tragblech des X-Schlitten anstößt. Zudem wurde auch der Schacht mit mehr "Bodenfreiheit" ausgestattet.

 

Die folgenden Teile wurden bereits früher verwendet und können wiederverwendet werden. Ggf. müssen noch Kettenglieder ergänzt werden.

 

Kettengliedhalter links IV  

 

 

Der Kettengliedhalter für die linke Seite der X-Achse wird mit einer M3-Schraube mit dem Träger verschraubt.

     
Kettenglieder  

 

Die Kettenglieder stammen von Thingiverse und können dort heruntergeladen werden. Insgesamt werden 24 Kettenglieder für den Umbau gebraucht.

 

Sind die Teile soweit gedruckt, kann mit dem Umbau begonnen werden. Die folgenden Bilder zeigen den Umbau.

Als Sensor wurde ein kapazitiever Näherungsschalter aus der Bucht mit der Bezeichnung LJC18A3-H-Z/BX NPN NO ausgewählt. Der Anschluss gestaltet sich recht einfach und kann der Skizze entnommen werden.

 

Sensorverdrahtung   Der Sensor wird mit 12 V betrieben. Daher muss die Ausgangsspannung durch einen Spannungsteiler an den 5 V Pegel des Controllers angepasst werden. Die benötigte 12 V Spannung kann am Controller einem freien Motortreiber entnommen werden.

 

 

Druckkopf mit Sensor an der Lüfterhalterung  

 

Links wird gezeigt wie die Tragplatte (hinten) mit dem Kettengliedhalter und dem Sensor- und Lüfterhalter verbunden werden.

     
Druckkopf mit eingebautem Lüfter  

 

Der Lüfter ist nun montiert, die Verkabelung muss noch in die Kabelkette eingezogen werden.

     
Sensor am Druckkopf  

 

 

Im unteren Bildteil sieht man die modifizierte Ringdüse.

     
Druckkopf verkabelt  

Nach der fertigstellung der Verkabelung sieht das Ganze so aus.

Der Sensor wird so eingestellt, dass er die Z-Achse beim Homing etwa 2 - 3 mm oberhalb der Glasplatte zum Stillstand bringt.

 

 

Neue Firmware Marlin V1.1.9

Inzwischen gibt es eine neue Firmware für den 3D-Drucker - Marlin V1.1.9. Diese soll nun in Verbindung mit dem "Auto Bed Leveling" Installiert werden. Worauf zu Achten ist, soll in diesem Betrag erläutert werden.

Dazu wurde das Softwarepaket von hier Github heruntergeladen.

Zuerst wird eine passende Configuration.h aus dem Verzeichnis "example_configurations/Geeetech/Prusa i3 pro B/noprobe" für den Drucker ausgewählt. Diese Datei eignet sich gut zur Anpassung an den kapazitieven Sensor und ist schon für die weiteren druckerspezifischen Einstellungen vorbereitet.

 

Marlin V1.1.9    

 

SCARA Printer

Der Name des Druckers, der im Display angezeigt werden soll.

#define CUSTOM_MACHINE_NAME "Pi3PB Probe"

 

Endstop Settings

Einstellungen für die Endstops, der Sensor am Pin Z_MIN benötigt keinen Pullup Widerstand

// Enable pullup for all endstops to prevent a floating state
//#define ENDSTOPPULLUPS                                                                      
#if DISABLED(ENDSTOPPULLUPS)
  // Disable ENDSTOPPULLUPS to set pullups individually
  //#define ENDSTOPPULLUP_XMAX
  //#define ENDSTOPPULLUP_YMAX
  //#define ENDSTOPPULLUP_ZMAX
  #define ENDSTOPPULLUP_XMIN                                                                 
  #define ENDSTOPPULLUP_YMIN                                                                   
  //#define ENDSTOPPULLUP_ZMIN
  //#define ENDSTOPPULLUP_ZMIN_PROBE
#endif

 

Für den Sensor wird der Pin Z_MIN_ENDSTOP verwendet. (s.o. Skizze)

// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
#define X_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Y_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.        
#define X_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Y_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.      
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe. 

 

Movement Settings

Die Z-Achse wurde mit Trapezgewindestangen versehen.

#define DEFAULT_AXIS_STEPS_PER_UNIT   { 80, 80, 400, 105 }                     // MXL, Z Trapez M8=8.0, 4 Gänge, MK8

 

Z Probe Settings

Der Z-Endschalter wird entfernt und der Anschluß für den Sensor verwendet.

#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
//#define Z_MIN_PROBE_ENDSTOP

 

//#define PROBE_MANUALLY       
//#define MANUAL_PROBE_START_Z 0.2
#define FIX_MOUNTED_PROBE

 

Der Abstand des Senesors wird in Bezug auf die Düse eingestellt. Der Zwert bleit auf Null, er wird später in Menü des Druckers eingegstellt.

#define X_PROBE_OFFSET_FROM_EXTRUDER -19  // X offset: -left  +right  [of the nozzle]     
#define Y_PROBE_OFFSET_FROM_EXTRUDER -46  // Y offset: -front +behind [the nozzle]       
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0    // Z offset: -below +above  [the nozzle]

Beim Leveling wird jeder Punkt zwei mal getestet.

#define MULTIPLE_PROBING 2

 

Nur zum Test der Wiederholgenauigkeit.

// Enable the M48 repeatability test to test probe accuracy
#define Z_MIN_PROBE_REPEATABILITY_TEST                  

 

Die Abmessung des Druckbettes, sowie die Grenzen für das Homing werden hier eingestellt.

// The size of the print bed
#define X_BED_SIZE 190                                                                         
#define Y_BED_SIZE 200

// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS -12
#define Y_MIN_POS 0                                                                        
#define Z_MIN_POS 0
#define X_MAX_POS (-X_MIN_POS+X_BED_SIZE)
#define Y_MAX_POS (-Y_MIN_POS+Y_BED_SIZE)
#define Z_MAX_POS 180                                                     

 

Bed Leveling

Die Art des Levelings.

#define AUTO_BED_LEVELING_LINEAR   

 

Einstellung der Grenzen des Levelings

// Set the boundaries for probing (where the probe can reach).
  #define LEFT_PROBE_BED_POSITION 30                                                            // (wm) 10
  #define RIGHT_PROBE_BED_POSITION (X_MAX_POS - X_PROBE_OFFSET_FROM_EXTRUDER - 14 - 30)     
  #define FRONT_PROBE_BED_POSITION 10                                                           // (wm) 15
  #define BACK_PROBE_BED_POSITION (Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER - 25)          

 

 

LCD and SD Support

Die deutsche Sprache wird verwendet.

#define LCD_LANGUAGE de

Die Drehrichtung des Drehgebers muss ggf. umgestellt werden.

#define REVERSE_ENCODER_DIRECTION

Kein Lautsprecher, sondern ein Piezo-Pieper wird verwendet.

//#define SPEAKER

 

//#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2     
//#define LCD_FEEDBACK_FREQUENCY_HZ 5000               

 

LCD / Controller Selection

Der Standart Controller wurde durch ein grafisches Display ersetzt.

//#define REPRAP_DISCOUNT_SMART_CONTROLLER

 

#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER

 

Extra Features

#define FAN_SOFT_PWM

 

Nachdem diese Änderungen durchgeführt sind, wird der Sketch auf den Drucker hochgeladen. Nun kann mit der Einstellung des Sensor begonnen werden.

 

Einstellung des Sensors

Der Sensor wird ein paar Millimeter oberhalb der Düse verschraubt. Als sinnvoll hat sich dabei erwiesen, den Sensor durch die Justierschraube so einzustellen (rot Led leuchtet gerade auf), dass die Düse beim Homing bzw. beim Leveling etwa 3 mm oberhald des Druckbettes verbleibt. So kann verhindert werden, dass beim Homing oder Leveling das Filamet vorzeitig auf das Druckbett gelangt. Die Differenz zur tatsächlich gewünschten Höhe der Düse über dem Druckbett für den Druck, wird dann im Menü des Druckers eingestellt und auch dort gespeichert.

Hierzu wird folgendermaßen vorgegangen:

Das Druckbett und der Druckkopf sollte auf seine normale Betriebstemperatur gebracht werden, um Temperatureinflüsse gering zu halten. Danach wird ein Homing (aller Achsen) durchgeführt. Nun sollte die Höhe der Z-Achse im Display mit "0" angezeigt werden. Jetzt wird der Druckkopf so lange, in kleinen Schritten, nach unten bewegt, bis sich ein dünner Papierstreifen, der sich zwischen Düse und Druckbett befindet, gerade noch mit leichter Zugkraft herausziehen lässt. Der relative Versatz des Druckkopfes in Z-Richtung, ist der Offset (Z-Versatz) der nun als negativer Wert im Menü unter "Einstellungen/Bewegung/Z-Versatz" eingetragen wird.

Nun muss diese Einstellung noch im EEPROM unter "Einstellungen/Bewegung/Konfig. speichern" abgelegt werden.

Nach erneutem Homing sollte im Display für Z der entsprechende Z-Versatz angezeigt werden.

Damit das Auto Bed Leveling auch beim Druck ausgeführt wird, muss in der Slicer-Software beim "Start-G-Code" die Anweisung für das Leveling "G29" ausgeführt werden.

G28 X0 Y0 ;move X/Y to min endstops
G28 Z0 ;move Z to min endstops
G29 ;Auto Bed Leveling

Wichtig ist hierbei, dass "G29" nach "G28" eingetragen wird, denn "G28" (Homing) widerruft die Anpassungen des Levelings.

 

 

 

Download:    
STL-Dateien   X-Träger Kettengliedhalter links
    X-Kettengliedhalter links
    Tragplatte hinten
    Kettengliedhalter
    Sensor- und Lüfterhalter
    Ringdüse
     
Kettenglieder   Thingiverse
     
Cookies erleichtern die Bereitstellung unserer Dienste. Mit der Nutzung unserer Dienste erklären Sie sich damit einverstanden, dass wir Cookies verwenden.