Ausgangsposition neu kalibrieren


7

Ich habe mir den Ender 3 besorgt. Die Ausgangsposition ist ca. 1 mm links und 2 mm vor der vorderen linken Ecke. Jetzt ist die Hotend-Mittelachse 11 mm von der Trägerplatte entfernt, wobei der Kühler "Mk 10" direkt auf ein Paar 5-mm-Stifte montiert ist, die Teil der Platte sind. Da ich zu einem e3D v6 mit einem Durchmesser von 22 mm wechseln möchte, muss ich mich ein Stück (ca. 13 mm) zur aktuellen Z-Achse bewegen. Dies bedeutet, dass jeder Y-Befehl um diesen Abstand versetzt ist.

Wie konfiguriere ich die Ausgangsposition neu, um einen Versatz zu den 0-Positionen zu erhalten, die von den Endschaltern erhalten wurden?

Laut Repetier Host läuft es auf Marlin 1.0 . Creality bietet die Firmware auf ihrer Website als .hex- Datei an - die schwer zu bearbeiten ist.


Grundsätzlich möchten Sie die Düse in der Mitte des Bettes nach dem zentrieren, was ich aus Ihrer Frage verstehe. Wenn sich die Düse in der Mitte befindet, sind auch alle anderen Abmessungen korrekt. Ich habe beschrieben, wie Sie das tun, indem Sie meine Ausdrucke auf der Build-Plattform zentrieren. . Lösung 2 und 3 sind Firmware- und keine Slicer-Lösungen und machen genau das, was Sie wollen. Sobald Sie die Düse in der Mitte der Platte zentriert haben, befindet sich die Düse am Ursprung (0,0), also an der Ecke der Platte.
0scar

Antworten:


5

Beim Referenzieren des Druckers wird der Hot-End-Wagen angewiesen, die (mechanischen oder optischen) Endanschläge zu treffen. Ab diesem Punkt weiß eine gut konfigurierte Firmware, wo sich der Ursprung des Heizbettes befindet.

Damit der Drucker den Ursprung des Bettes kennt, werden in der Firmware Offsets von den Endanschlagstellen bis zum tatsächlichen Ursprung des Heizbettes definiert.

Zum Beispiel in der Marlin Firmware wird dies durch definiert

 #define X_MIN_POS -35 ; move the head 35 mm to the right to place the 
                       ; nozzle at X = 0
 #define Y_MIN_POS -8  ; move the head 8 mm to the back (or the plate
                       ; forward) to place the nozzle at Y = 0

Wenn Sie die Hardware (z. B. den Schlitten) wechseln, müssen Sie die Bewegung vom Endanschlag zum Ursprung des Bettes neu kalibrieren. Beachten Sie, dass jeder beliebige Punkt auf dem Heizbett verwendet werden kann, um dies neu zu kalibrieren. ZB kann auch die Mitte des Bettes verwendet werden und ist häufig viel einfacher neu zu kalibrieren, da die beheizten Betten normalerweise abgerundete Ecken haben oder etwas größer als die tatsächliche Druckfläche sind (z. B. habe ich ein 300 x 300 mm großes Wärmebett, das misst tatsächlich 315 x 315 mm). Wenn Sie ein großes Quadrat auf das Heizbett drucken, erhalten Sie einen guten Eindruck vom Versatz der Düse aufgrund Ihres neuen Wagendesigns.

Beachten Sie, dass, wenn Sie keine neue Firmware flashen können oder wollen, eine alternative Lösung besteht, um neue inkrementelle Offsetwerte mit dem M206Befehl WENN Ihre aktuelle Firmware dies unterstützt, festzulegen.

Eine ausführliche Beschreibung zur Neukalibrierung finden Sie in Antwort Wie zentriere ich meine Ausdrucke auf der Build-Plattform? oder in externer Verbindung Bettmittelkalibrierung .


Ihre Antwort überspringt wichtige Schritte, nachdem ich sie tatsächlich getestet habe: 1) Wie werden die aktuell installierten Firmware-Einstellungen abgerufen? 2) Wie werden die Änderungen über den Repetier-Host implementiert? 3) Wie lade ich die geänderte Firmware hoch?
Trish

Sie können die Antwort massiv verbessern, indem Sie 1) M503 einschließen, um die aktuellen Firmware-Einstellungen zu erhalten. 2) Angeben, welche Dateien einer Firmware-Konfiguration normalerweise diese Befehle enthalten, und 3) Erwähnen, dass man normalerweise ein Arduino als Bootloader verwendet, um neue Firmware zu flashen und einen Link zu einem Tutorial dafür zu erstellen.
Trish

@Trish Das Abrufen, Ändern und Hochladen ist bereits in einer anderen Frage beschrieben, aber sehr schön, dass Sie herausgefunden haben, wie Sie es auf Ihrem Board kompilieren können! Gut zu hören, dass es klappt!
0scar

Nur ... musste Teile des Ender3 XD
Trish

Oh Gott, ich habe gerade gemerkt, wie viel ich in den letzten 1,5 Jahren über Firmware gelernt habe ... damals war ich ein Noob, jetzt unterrichte ich, wie das geht, indem ich auf diese Frage zurückweise!
Trish

3

Nach der Antwort von 0scar


Um Ihre EEPROM-Einstellungen zu ändern oder zu erhalten, müssen Sie Repetier Host öffnen (für Linux oder Windows, Version 2.1.3 - die OSX-Version, die ich ausprobiert habe, Version 1.1.0, schien diese Funktionalität nicht zu haben).

Bestehende Einstellungen ändern

Von So nehmen Sie Änderungen an den EEPROM-Daten vor . Anscheinend ist ein EEPROM-Editor verfügbar (in Repetier Host). Aus diesem Beitrag :

Wenn Sie es im eeprom-Editor sehen, ändern Sie sie einfach. Wenn es auf Repetier-Firmware basiert, werden Änderungen in eeprom gespeichert, wenn Sie auf "OK" klicken.

Vorhandene Einstellungen abrufen

Dieser Beitrag vom Abrufen vorhandener Einstellungen ... zeigt, wie:

So kopieren Sie EEPROM-Daten:

  • Verbinden Sie sich mit dem Host
  • Öffnen Sie die EEPROM-Einstellungen
  • Wählen Sie Export eeprom Einstellungen. Dadurch werden alle Daten in einer EPR-Datei gespeichert, und Sie können sie später mithilfe der Eepsom-Importeinstellungen neu schreiben.

Ein Beispiel für die resultierende Datei finden Sie in der Frage Hilfe zu Repetier-Firmware-Variablen (Dimension Dual Delta - J Group Robotics) , von der ich unten ein Beispiel aufgeführt habe:

<Repetier-Firmware-EEPROM>
<epr pos="1028" type="0" value="0">Language</epr>
<epr pos="75" type="2" value="115200">Baudrate</epr>
<epr pos="129" type="3" value="32.752">Filament printed [m]</epr>
<epr pos="125" type="2" value="21644">Printer active [s]</epr>
<epr pos="79" type="2" value="0">Max. inactive time [ms,0=off]</epr>

Es scheint jedoch, dass Sie die Repetier-Firmware ausführen müssen, damit diese beiden Lösungen funktionieren, und nicht Marlin (aber ich kann mich irren).


2

Greenonline und ich haben diesen Abend damit verbracht, den Ender3 zu hacken / zurückzuentwickeln, um dies zu lösen. Greenonline schrieb darüber auch in seinem Blog .

Schritt 1 - Holen Sie sich die Firmware

Dazu gibt es grundsätzlich zwei Möglichkeiten:

  1. Suchen Sie eine gebrauchsfertige Firmware
  2. Mach dein eigenes

Variante 1 wäre die Verwendung der vorab bereitgestellten .hex-Dateien von Creality oder einem anderen Hersteller. Variante 2 bedeutet, dass Sie die Einstellungen selbst schreiben oder die Repetier-Firmware verwenden , um die Dateien für Sie zu schreiben. Im Fall des Ender 3 verwendete der Chip leider disqualifizierte Repetier-Firmware, daher ist das Schreiben selbst die einzige Option.

Um die Firmware selbst zu schreiben oder die Repetier-Firmware zu verwenden, benötigen Sie die alten Einstellungen. Um diese zu erhalten, schließen Sie den Drucker über USB an, verbinden Sie ihn mit einer Software wie Repetier Host und senden Sie ihn M503, um alle Einstellungen zu erhalten.

Hacken Sie diese jetzt entweder in die Repetier-Firmware oder verwenden Sie ein Leerzeichen Marlin.inound die Arduino-IDE, um sie anzupassen. Im späteren Fall müssen Sie den Ordner Marlin-?.?.X.ZIP/Marlin-?.?.X/Marlinin den ArduinoOrdner unter Dokumente (Windows) oder Startseite (Mac) legen . Öffnen Sie nun die Marlin.inoin Arduino IDE . Richten Sie die neue Firmware mit diesen Basiseinstellungen ein oder passen Sie sie nach Bedarf an.

Schritt 2 - Anpassen

Nachdem wir nun unsere Konfigurationsdateien haben (am Ende haben wir Schritt 1 so gut wie übersprungen und uns eine passende ( deutsche! ) Von Christian , einem deutschen Hersteller, der auch als "Chaos-Drucker" bekannt ist, geholt), müssen wir sie zuerst nach Bedarf anpassen um unseren Bedürfnissen gerecht zu werden und sie dann richtig zu kompilieren (nächster Schritt!). Als alternative ( englische! ) Basis für die Arbeit ist auch die TH3D-Firmware verfügbar, die von den Hooglands und dem Team von TH3D bereitgestellt wird.

So lassen Sie uns öffnen Sie Marlin.inomit Arduino und finden Sie die X_MIN_POS( CTRL+ F> X_MIN_POS> Alle Skizzen Suche).

In den von uns Configuration.herfassten Konfigurationen enthält die Skizzendatei die Zeilen 786-789 (kann abweichen) :

// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS -10
#define Y_MIN_POS -15
#define Z_MIN_POS 0

Passen Sie diese an, bis die gewünschte Position erreicht ist - Repetier Host kann hier helfen, die richtige Position zu bestimmen.

Schritt 3 - Kompilieren

Der schwierigste Schritt mit dem Ender3 bestand darin, den Code tatsächlich zu kompilieren, da er ein ATmega1284P 16Bit verwendet, das von Arduino nicht nativ unterstützt wird. Der MightyCore unterstützt diesen Chip zwar, kann jedoch nicht mit dieser Hardwarebibliothek kompiliert werden. Christian hat jedoch herausgefunden, dass der Sanguino , der auf einen ATmega 1284P 16bit eingestellt ist, funktioniert. Diese gehören als extrahierte Ordner in den Arduino/hardwareOrdner, normalerweise in Ihre Dokumente (wenn Sie Windows verwenden) oder Home (auf dem Mac). Jetzt haben wir gesetzt Tools>Board:> SanguinoundTools>Processor:>ATmega1284 or ATmega1284P (16 MHz)

Außerdem musste U8glib.h für Arduino installiert sein. Laden Sie dazu die Zip-Datei von github herunter, dann in die Arduino-Software Sketch>Include Library>Add .ZIP Library...und wählen Sie das gesamte Zip-Repository aus, das automatisch installiert werden soll.

Mit diesen Einstellungen konnten wir die Einstellungen kompilieren.

Schritt 4 - Auf die Maschine bringen

Die meisten Leute würden erwarten, jetzt über Bootloader und Flashing zu lesen, und das ist in der Tat eine Option. Aber da ich gerade herausgefunden hatte, wie man Firmware von .hex installiert, fragte ich mich: Können wir aus unseren Einstellungen keine .hex-Dateien erstellen? Und ja, Arduino unterstützt dies .

Drücken Sie in der Arduino IDE Ctrl+ Alt+ S(oder Sketch > Export Compiled Binary). Dies führt zu zwei Dateien:

  • Marlin.ino.sanguino.hex
  • Marlin.ino.with_bootloader.sanguino.hex

Von diesen beiden Marlin.ino.sanguino.hexist das interessante für "direktes Blinken" über CURA. Verwenden Sie diese Datei mit dem Prozess bei Schritt 2 beginnen hier oder Verwendung eines Greenonline Lösungen , die Firmware zu erhalten geblitzt - kein Bootloader benötigt!

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.