Willkommen! Anmelden Ein neues Profil erzeugen

Erweiterte Suche

Marlin Config.h Endstop Home Position anfahren

geschrieben von Crow0711 
Marlin Config.h Endstop Home Position anfahren
22. December 2018 19:51
Hallo zusammen

Ich bin leider absoluter Neuling in diesem Bereich - also bitte ich schon jetzt um euer Verständnis...

Ich habe einen Anet A8 endlich mit der Software Marlin 1.1.9 über Arduino 1.8.8 ausgestattet. Die Verbindung habe ich schon einmal hin bekommen.

Nun geht es darum die Configuration.h richtig einzustellen.

Natürlich habe ich schon einige Foren durch und auch Dr. Googel gefragt.

So konnte ich die Bewegung schon mal in die richtige Richtung einstellen.
Damit meine ich, wenn ich im Display sage Bewegung X + 10mm dann verfährt X auch 10mm (Abgleich folgt noch) von der aktuellen Position nach rechts.
Bei Y kommt das Bett auf mich zu und Z fährt nach oben.
Natürlich habe ich auch schon die Sprache auf de gestellt und die maximalen Größen für XYZ angepasst.

Jetzt geht es mir hauptsächlich darum, die drei Endschalter für jede Achse anzufahren und dies als Home Position festzulegen.
Hierzu habe ich nur verwirrte Versuche gemacht, die leider ohne Erfolg blieben. (Alle Änderungen wurden wieder auf den Ursprung zurück gestellt.)

Gibt es noch andere sinnvolle Einstellungen die gemacht werden müssen/könnten?

Nun hoffe ich auf eure Unterstützung.


Danke schon mal :-)
Re: Marlin Config.h Endstop Home Position anfahren
23. December 2018 04:00
Hier haste mal meine für den A8 als Vorlage, damit Du über Weihnachten etwas zu tun hast ... smiling smiley

Ich denke, dass da alles drin ist, was Du suchst. Aber NICHT direkt verwenden, nur rein schauen!

H.
Anhänge:
Öffnen | Download - Configuration.h (54.9 KB)
Re: Marlin Config.h Endstop Home Position anfahren
23. December 2018 04:18
Danke dir,

werde mal einen Abgleich machen.

LG und frohe Feiertage
Re: Marlin Config.h Endstop Home Position anfahren
24. December 2018 10:44
Hallo und frohe Weihnachten euch allen.

ich habe den Abgleich soweit fertig und ein paar kleine Änderungen vorgenommen...

Die Datei von Horst war dabei meine Vorlage. Danke erst einmal dafür.
Da es eine andere Version von Marlin ist, konnte ich nicht alle Daten 1 zu 1 Abgleichen.

Leider hat dies zu keinem Ergebnis geführt.
Bei der Ansteuerung von Home über das Display verfährt jede Achse kurz und bleibt danach stehen.
Die Achsen verfahren allerdings leider noch nicht zu den Endschaltern.

Vielleicht hat ja jemand noch eine Idee...

LG und weiterhin frohe Feiertage
Re: Marlin Config.h Endstop Home Position anfahren
24. December 2018 10:54
Hier mal meine Configuration.h Datei
Anhänge:
Öffnen | Download - Configuration.h (72.2 KB)
Re: Marlin Config.h Endstop Home Position anfahren
24. December 2018 13:52
Da ich von dem ganzen Firmwarezeugs wenig Ahnung habe, bleibt mir auch nur der Vergleich, wobei ich mal unterstelle, dass die entsprechenden Endstopp-Passagen in den beiden Versionen gleich sein sollten. Da fällt schon was auf.

Bei mir:
// @section machine

// Travel limits after homing (units are in mm)
#define X_MAX_POS 220
#define X_MIN_POS -33
#define Y_MAX_POS 220
#define Y_MIN_POS -10
#define Z_MAX_POS 240
#define Z_MIN_POS 0

Bei Dir:
// @section machine

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

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

Wenn es andere Bezugspunkte geben sollte, dann ist es so, wenn die Bezugspunkte gleich sind, dann stimmt etwas nicht.
Die Druckbettgröße steht zwar wo anders aber meine Einträge dort lauten 220 / 220 / 180, weil ich nicht bis an den äußersten Rand des Bettes gehen will (große Druck mache ich auf einem anderen Drucker, der A8 ist für "kleine Sonderaufgaben" gedacht)
Bei Dir ist die Bett-Größe mit 165 / 200 eingetragen, und das ist ungewöhnlich, die Druckbetten sollten doch wohl gleich sein.

Jetzt mal ne Frage:
Wenn Du "homst", bewegt sich der Druckkopf dann immer zur gleichen Position, und wenn wo?
Kannst Du über das Display Bewegungen steuern, ggf über diese Position hinaus?

Wenn das nicht gehen sollte, kann es m.M. nach nicht an den Firmware-Einstellungen betr. Home liegen, denn den mechanischen Endschalter sollte die Kiste immer erreichen können.
Wenn er irgendwo steht und dann Strom aus, verliert der Drucker sein Gedächtnis und weiss nicht mehr wo er steht. Mit dem Homen, das durch die Endschalter eben begrenzt wird, findet er anschließend den Nullpunkt, von dem aus er wieder starten kann (mein Home liegt mit -33 / -10 außerhalb des Bettes).

H.
Re: Marlin Config.h Endstop Home Position anfahren
25. December 2018 05:01
Guten Morgen zusammen und frohe Weihnachten


Hallo Horst
Bei mir ist das Bett 220x220 doch durch die Bauart meiner Nozzel usw. habe ich in x eine kleiner Strecke die ich bewegen kann.
Die Maße habe ich im Ausgeschalteten zustand ermittelt durch Bewegung und messen mit der Hand.

Bin heute morgen auch schon ein Stück weiter...
Wenn ich derzeit Home anfahren möchte über das Display bewegt er sich von der Stelle an, wo er gerade steht in Richtung +x ca.10mm/+y ca. 10mm /+z ca. 4mm.
Egal wo er steht. Es ist nie die selbe Position, sondern immer von dort wo er gerade ist.
Mein eigentlicher Nullpunkt ist nicht außerhalb vom Bett sondern genau bei x=0 und y=0 z=0,..
So erst mal der Ausgang...
Heute Morgen habe ich einfach mal die Endschalter mit der Hand betätigt und dann Home anfahren lassen.
Siehe da, er fährt weiter und weiter und weiter - bis ich den Endschalter los lasse und er 'Null' erreicht hat.

Also muss ich die Endschalter umstecken und Schließer / Öffner wechseln.
Danach muss er nur noch in die richtige Richtung fahren.
Mein Null ist vorne, unten, links.
Derzeit verfährt x in die richtige Richtung - da muss ich nur den Schaltkontakt ändern.
Die y und z Achse dagegen muss ich von der Bewegung in der Software umstellen und zusätzlich den Schaltkontakt ändern.

Dies wird meine heutige Aufgabe für den Abend werden.
Heute Mittag bin ich unterwegs...
Vielleicht kann mir jemand sagen, wo ich die Richtung anpasse.
Habe folgendes gefunden:

// @section machine

// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false
#define INVERT_Y_DIR true
#define INVERT_Z_DIR false
_____________________________

// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1

Hätte gesagt ich muss das obere abändern in Y_DIR false und Z_DIR true.


Danke schon mal für eure Unterstützungen.
Re: Marlin Config.h Endstop Home Position anfahren
25. December 2018 12:39
... das ist doch schon mal was!
Bei meiner Kiste (Kistchen smiling smiley) waren die Stecker fertig verdrahtet und wenn ich mich recht erinnere, auf dem Bord auch eindeutig gekennzeichnet (komme nicht dran, ohne mir den Hals bösartig zu verrenken).

Mit der Home-Position hast Du falsch verstanden oder ich habe mich mißverständlich ausgedrückt.
Die Home Position liegt mit -33 / -10 außerhalb des Bettes, damit er mir beim Aufheizen das Bett nicht versaut, wobei ich da gar nicht drucke; war schon so eingestellt.
Der Nullpunkt liegt dagegen natürlich auf 0 / 0, d.h. mir steht die volle Fläche des Bettes zur Verfügung, abzüglich des Streifens rechts, den ich selbst so eingerichtet habe. Auf die "fehlenden" 20 mm kommt es mir da nicht an, weil ich bislang die eingeschränkten Maße noch nicht mal ansatzweise ausgenutzt habe.
Home und Null kann man natürlich auch zusammen legen, ist aber nicht nötig. Aus Erfahrung mit meinem "Großen" halte ich es für sinnvoller, diese beiden Punkte zu trennen und dabei der Düse zu ermöglichen, beim Aufheizen Material auslaufen zu lassen statt weich zu kochen. Gefüllt wird die Düse bei beiden Druckern mit einem dicken Strich vor jedem Druck, der auf Y=10 nach X= 200 läuft. Der Materialverlust ist minimal, weil man das "Purging der Nozzle" in jedem Fall machen sollte. Aber Ansichtssache, kann man machen oder auch nicht.

Ob die vertauschte Laufrichtung nun von der Firmware her rührt oder das hier gilt: // Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way, wird sich gleich bleiben.
Mit Stecker umdrehen kannst Du aber ohne großen Schaden anrichten testen; man ist ganz gut beraten, für so etwas den Druckkopf auf allen Achsen händisch mittig zu stellen oder auch von der Homeposition ausgehen. Ist es die falsche Richtung, ruckelt er ein bisschen als ob er die Hosenträger richtet und dann ist wieder Ruh. Ist es richtig, läuft er ja in die gewünschte Richtung.
Ich habe mir für solche Zwecke auf der SD-Karte ein Verzeichnis eingerichtet, in dem "Bewegungs-G-Codes" für alle Zwecke enthalten sind. Die brauche ich nur aufzurufen und sehe auf Anhieb, ob alles stimmig ist. Den Extruder-Motor fahre ich dann entweder leer oder muss halt händisch vorheizen oder zum Testen den Anpresshebel drücken, was aber umständlich ist, aber egal, das macht man ja nicht gerade alle Tage.

Viel Spaß und Erfolg noch beim Drucken
Horst

1-mal bearbeitet. Zuletzt am 25.12.18 12:43.
Re: Marlin Config.h Endstop Home Position anfahren
26. December 2018 03:21
Guten Morgen

Bei mir ist der Home und Nullpunkt eins. Wenn ich auf Home fahre bin ich auf der Glasplatte.
Das mit dem G Code für die Bewegung ist eine gute Idee. Werde mir auch so Dateien erstellen zum Test der Bewegung.

Ich habe nun die 'ursprüngliche' und unveränderte Marlin Datei neu geladen und die Schaltkontakte angepasst.
Die Software auf Deutsch gestellt und den Druckbereich eingestellt.

1. Home anfahren
X Achse passt
Z Achse passt nicht - Stecker kann nicht gedreht werden. An Motor fest und Stecker verdreh sicher. - #define INVERT_Y_DIR false (zuvor true)
Y Achse passt nicht - Stecker kann nicht gedreht werden. An Motor fest und Stecker verdreh sicher. - #define INVERT_Y_DIR true (zuvor false)

2. Home erneut anfahren
X Achse passt weiterhin
Z Achse passt
Y Achse passt

3. Höhe Z anpassen auf Bett
Z Achse auf Null gefahren
Drucker aus
Alle 'Ecken' angefahren und Bett auf richtige Höhe gestellt.
Passt

4. Schritte verfahren und messen
X Achse - angepasst
Y Achse - angepasst
Z Achse - angepasst
E Motor - ließ sich nicht ansteuern

5. Druckversuch
Filament wird nicht gefördert
Druck beginnt nicht in der Mitte vom Bett

Somit ein neues Problem - zwei Schritte vor und einen zurück. eye popping smiley

Hat hierzu vielleicht jemand eine Idee?
Danke schon mal an euch
Re: Marlin Config.h Endstop Home Position anfahren
26. December 2018 04:11
Ach so...

Bett heizt auf und Nozzel auch.
'Nur' der Motor für das Fördern des Filaments bleibt aus.

Bevor er anfängt und drucken möchte (der Moment wo er normalerweise in die Mitte des Bettes fährt), brummt mindestens ein Motor.
Aber keiner verfährt.

Die Bewegungen während des Druckens passen jedoch...


Habe irgendwie Rosenmontag drin und komme nicht weiter
Re: Marlin Config.h Endstop Home Position anfahren
26. December 2018 06:13
... die Stecker für Z und einen anderen Motor auf dem Board vertauschen und schauen,

ob sich dabei etwas im Verhalten der beiden Motoren verändert, ggf. ob der Fehler mitgeschleppt wird oder nicht.

Mit den Erkenntnissen kannst Du gezielter suchen.

Mindesttemperatur des Extruders erreicht? (bei mir 170°)

H.

vergessen:
Bettposition am Anfang ist Einstellungssache im Slicerprogramm aber evtl auch in der Firmware.

1-mal bearbeitet. Zuletzt am 26.12.18 06:14.
Re: Marlin Config.h Endstop Home Position anfahren
28. December 2018 12:17
Hallo Horst,

danke erst noch mal für deinen schnellen und hilfreichen Antworten. Die helfen mir echt weiter :-)

Den Stecker habe ich mal mit einem Anderen getauscht und den Extruder komplett zerlegt.
Das Ergebnis ist, dass der Motor dreht - nur leider Falsch herum...moody smiley

Nun habe ich folgendes geändert, damit der Extruder richtig herum dreht:

// @section extruder

// For direct drive extruder v9 set to true, for geared extruder set to false.
#define INVERT_E0_DIR true
(war zuvor false)

Jetzt muss ich nur noch heraus finden, warum er nicht in der Mitte beginnt mit dem Druck...
Das Programm von Cura ist das selbe, bevor ich begonnen habe die Software umzustellen.
Von daher schließe ich das eigentlich aus.
Zuvor hatte er ja in der Mitte begonnen mit Drucken.

Gibt es in Marlin dafür eine Einstellung, wo der Druckbeginn sein soll?
Derzeit beginnt er vorne links und macht ein paar streifen in X und Y.
Oder ist dies vielleicht normal und ich breche den Druck einfach zu früh ab und er macht dort 'nur' ein paar Linien zum füllen der Nozzel???
Mal testen....

Er fängt immer vorne links an mit Drucken und zieht dort nicht nur ein paar Bahnen.

LG

1-mal bearbeitet. Zuletzt am 28.12.18 12:31.
Re: Marlin Config.h Endstop Home Position anfahren
28. December 2018 16:59
Da gibt es unterschiedliche Systeme und Spielarten.
Ich kenne es nur so, dass der Slicer (bei mir S3D) eben die STL-Datei slict und eine GCode-Datei erstellt, die entweder per USB -Datenübertragung an den Drucker geht oder auf SD-Karte gespeichert wird, am Drucker eingesetzt, wird sie dort ausgelesen und verarbeitet.
Konsequenz daraus ist, dass der Drucker auf die Koordinaten, die im GCode angegeben sind, gar keinen Einfluß haben kann. Bis der mit seiner Firmware an die Daten kommt, ist der Hase schon längst übern Berg.
Und das ist beim A8 auf jeden Fall genau so, braucht man sich über andere Möglichkeiten keinen Kopf mehr machen.

Daraus folgt, dass der Druckbeginn im GCode verankert sein muss und damit auch die zugehörigen Einstellungen. Ich suche es mal für S3D raus und mache eine Hardcopy.

H.
Re: Marlin Config.h Endstop Home Position anfahren
28. December 2018 17:43
Da bin ich wieder.

Auf die Schnelle mal mein S3D auf den A8 umgestrikt (2 Mouseklicks) und einen GCode erstellt. Dazu die Funktionen, die das Model und damit den Druck auf die Mitte der Druckplatte fokussieren.

Ausschnitt G-Code:
M104 S200 T0
M109 S200 T0
G28 ; home all axes
G1 X0 Y20 Z0.2 F3000 ; get ready to prime
G92 E0 ; reset extrusion distance
G1 X200 E20 F600 ; prime nozzle
; process Process1
; layer 1, Z = 0.180
T0
G92 E0.0000
G1 E-2.5000 F1800
; feature skirt
; tool H0.180 W0.400
G1 Z0.180 F1002
G1 X103.710 Y98.073 F4800
G1 E0.0000 F1800
G92 E0.0000
G1 X106.089 Y97.576 E0.0655 F1035
G1 X106.712 Y97.403 E0.0829
G1 X107.322 Y97.189 E0.1003

Die erste relevante Zeile habe ich Dir fett gemacht, aber vorne dran kannst Du sehen, dass meine Düse zunächst auf der Vorderkante rum turnt und einen dicken Strich zum Füllen der Düse zieht.
Danach springt die Düse auf den Startpunkt des des Drucks, der sich als nächster Punkt relativ zu X/Y = 0 outet. Das kann auch etwas unterschiedlich sein, je nach Form und Ausdehnung des Objekts; hier wird zunächst ein Brim gedruckt, dass sich um das ganze Objekt in gewissem Abstand zieht.

In Bild 1 ist in General Options (wie immer das bei Dir heißen könnte?) wird dem Slicer zunächst mitgeteilt, wie groß das Druckbett ist und
in Bild 2 wird gezeigt, wie dem Programm mitgeteilt wird, wo er das zu importierende Objekt hinstellen soll - hier auf X / Y 125, also fast die Mitte, spielt bei mir keine Rolle, da ich es eh immer verschiebe. Wichtig bleibt, dass der Schlicer nun weiss, wo er mit dem Objekt hin soll und wo der Druckbeginn liegen soll.
Bild 3 zeigt dann das importierte Objekt auf dem Druckbett und nachfolgend Bild 4 in geslicter Form.

Aus dem GCode kannst Du abgleichen, dass dann der Druckstart dieses länglichen Objekts bei X 103 Y 98 liegt und im ersten Schritt nach X 106 Y 97 läuft.

H.








Re: Marlin Config.h Endstop Home Position anfahren
03. January 2019 05:39
Hallo und frohes und gesundes neues Jahr

Neues Jahr - neues Glückdrinking smiley
Ich kann nun endlich drucken und habe ein annehmbares Ergebnis, welches für Feineinstellungen würdig ist.

Mein Bauteilkühler war nicht deaktiviert - er war kaputt.
Des weiteren habe ich die Einstellungen gefunden in meinem Cura, so dass ich nun auch in der Mitte des Bettes drucke.

Jetzt fehlen nur noch die Feinabstimmungen um ein besseres Ergebnis zu erzielen.

Vielen Dank für die super Unterstützung!!! thumbs up
Es hat mir sehr weiter geholfen. smileys with beersmileys with beer

LG
Frank
In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicke hier, um Dich einzuloggen