Start-GCode Empfehlungen

Hier geht es um Software die ausschliesslich zum Slicen und/oder G-Code erzeugen gedacht ist. Alles was nicht in eine Unterkategorie passt kann hier diskutiert werden
Benutzeravatar
rf1k_mjh11
Developer
Developer
Beiträge: 1692
Registriert: Di 6. Jan 2015, 19:44
Wohnort: Autriche
Hat sich bedankt: 214 Mal
Danksagung erhalten: 430 Mal

Start-GCode Empfehlungen

Beitrag #1 von rf1k_mjh11 » Mo 13. Apr 2015, 14:45

Ich möchte diesen Thread dazu verwenden, Empfehlungen für RF1000-spezifische Start-GCode Befehle zu sammeln.
End-GCode Tipps natürlich ebenfalls. Auch Befehle, die allgemein gültig sind und empfehlenswert sind, können hier gesammelt werden.

Auf der SD Karte werden mehrere Profile für Cura und Slic3r mitgeliefert. Bloß, weil sie vom RF1000-Team stammen, bedeutet nicht zwangsläufig, dass sie perfekt sind. Der Drucker selbst ist es ja auch nicht, und wir hier im Forum arbeiten permanent an der Verbesserung. Das gleiche können wir für den Start-GCode tun.

Mein erster Beitrag, der folgt, stammt als Folge einer Aussage vom Forumsmitglied RF1000:
...dass die Home-Position unbekannt ist. In dem Fall würde es helfen, vor dem M3001 ein M400 (= warte bis alle Bewegungen abgeschlossen sind) auszuführen. Ohne dem M400 wird in deinem oberen Beispiel M3001 quasi sofort nach G28 aufgerufen (d.h. zu einem Zeitpunkt, wo die Home-Position noch nicht erreicht worden und daher unbekannt ist). Im unteren Beispiel wartest du auf das Erreichen der Zieltemperatur, was zeitmäßig normalerweise solange dauert dass inzwischen auch die Home-Positionen erreicht worden sind....

Der Hintergrund:
Ich hatte in der Vergangenheit öfters ein Problem, wo der Drucker bei einer 'zufälligen', skurrilen Z-Höhe zu drucken begann. Ich konnte es mir nie erklären. Ich dachte an Firmware-Probleme, Bugs, und alles Mögliche. Bis ich das obige Zitat las.
Meiner Erinnerung nach fanden die skurrilen Z-Kapriolen meist dann statt, wenn unmittelbar davor ein Druck stattfand, oder abgebrochen wurde. Ich, als alter Routinier, habe immer gleich die Bett- und Extruder-Temperatur auf die Soll-Werte gestellt, um die Wartezeit zu verkürzen. Erst dann wurde der fertige oder abgebrochene Druck vom Bett entfernt und der nächste/neue Druck gleich wieder gestartet. Dadurch fand aber die Wartezeit auf Soll-Temperatur nicht mehr statt. Und wie im Zitat festgestellt: "wartest du auf das Erreichen der Zieltemperatur, was zeitmäßig normalerweise solange dauert dass inzwischen auch die Home-Positionen erreicht worden sind" wurde aber die Homepositionen, vor allem von Z, nicht erreicht, bevor M3001 ausgeführt wurde, was zu einer zufälligen Z-Kompensationshöhe führen konnte.

Daher der nächste Beitrag. Wie gesagt, besonders speziell auf den RF1000-getrimmte Start- oder End-GCode Tpss hier sammeln. Falls es eine bestimmte Slicer-Software voraussetzt, bitte eine entsprechende Bemerkung hinzufügen.

mjh11
Merke, am PC gibt es immer einen Weg!
Schafft es der Mensch, einmal etwas idiotensicher zu machen, kontert die Natur sofort mit einem besseren Idioten.

Benutzeravatar
rf1k_mjh11
Developer
Developer
Beiträge: 1692
Registriert: Di 6. Jan 2015, 19:44
Wohnort: Autriche
Hat sich bedankt: 214 Mal
Danksagung erhalten: 430 Mal

Re: Start-GCode Empfehlungen : M400 vor M3001

Beitrag #2 von rf1k_mjh11 » Mo 13. Apr 2015, 14:51

Start-GCode:

Verwende (nach dem G28) ein M400 vor dem M3001 Befehl.

Siehe auch diesen Beitrag.

Grund: Damit wird sichergestellt, dass die Home-Positionen, vor allem jenes von Z, erreicht werden, bevor die Z-Kompensation eingeschalten wird. Unter gewissen Umständen kann es sonst zu unerwartetem Verhalten der Z-Höhe führen.


mjh11
Merke, am PC gibt es immer einen Weg!
Schafft es der Mensch, einmal etwas idiotensicher zu machen, kontert die Natur sofort mit einem besseren Idioten.

Benutzeravatar
rf1k_mjh11
Developer
Developer
Beiträge: 1692
Registriert: Di 6. Jan 2015, 19:44
Wohnort: Autriche
Hat sich bedankt: 214 Mal
Danksagung erhalten: 430 Mal

Re: Start-GCode Empfehlungen (G92 Problem)

Beitrag #3 von rf1k_mjh11 » Sa 9. Jan 2016, 18:18

Eine Weitere Empfehlung für den Start GCode.
Hintergrund
Diese Empfehlung basiert auf skurriles Verhalten im Bezug auf den Z-Wert am Anfang eines Drucks. Mir passierte immer wieder, in unregelmäßigen Abständen,dass nach einem erfolgreichen oder abgebrochenen Druck, beim nächsten Druck der Extruder 'mitten in der Luft' zu drucken begann. Wobei dieses 'mitten in der Luft' irgendwo zwischen 1mm bis 10mm über der Bettoberfläche sein konnte.
Ich war in dieser Sache schon mehrmals mit Forumsmitglied RF1000 in Kontakt. Es konnte keine ordentliche Erklärung gefunden werden, bis mir nicht selbst auffiel, dass die falsche Höhe oft mit der Endhöhe des vorigen Drucks übereinstimmte. Da erinnerte ich mich an eine Modifikation meines End-GCodes um meine eigene Variante des OUTPUT_OBJECT_SCRIPTs zu verwirklichen. Meine Variante fährt den Tisch nicht ganz nach unten, sondern nur einen halben Millimeter. Hier ein Ausschnitt:

Code: Alles auswählen

G92 Z0 E0  ; zero out Z and Extruder
G1 E-1 F300
;move Z up a bit and retract filament even more
G1 Z+0.5 E-5 X0 Y210 F4500 ;  move extruder & part to unload position
; Steppers off
M84                                           

Man sieht, wo immer der Extruder am Ende des Drucks auch ist, dort wird Z mit 0 gleichgesetzt (und damit quasi ein Z-Versatz festgelegt). Einige Zeilen später werden sogar die Schrittmotore abgeschaltet (M84). Normalerweise heißt es immer, dass der Drucker 'seine Koordinaten vergisst' sobald die Schrittmotore ausgeschaltet wurden (kam sicher schon 4 Mal im Forum vor). Es wundert mich, dass nach einem Homing so ein Versatz 'weiterlebt'. Laut RF1000 wurde dieses Verhalten von der original Repetier Firmware übernommen.

Hier ein Ausschnitt aus seiner Antwort:

Code: Alles auswählen

ich denke, dass deine Vermutung schon stimmt. Der durch G92 festgelegte Offset wird weder durch ein Homing noch durch das Ausschalten der Stepper zurück gesetzt.
Wenn du G92 zum Setzen des x/y/z-Offsets verwendest dann musst du in deinem Fall anstatt

G28

auch ein

G28
G92 X0 Y0 Z0

verwenden um nach dem Homing sicherzustellen, dass alle Offsets auf 0 zurück gesetzt werden.

Im Start-GCode, nach dem Homing, (am besten nach dem M400 der nach dem Homing kommen sollte), zusätzlich ein
G92 X0 Y0 Z0
einfügen.
Damit werden eventuelle, vorhergehende Koordinatenmanipulationen (mittels G92) außer Kraft gesetzt.

Diese Änderung kostet keine Druckzeit, schadet (hoffentlich :unsure:) nicht, und muss nur einmal durchgeführt werden. In meinen Augen empfehlenswert.

mjh11
Merke, am PC gibt es immer einen Weg!
Schafft es der Mensch, einmal etwas idiotensicher zu machen, kontert die Natur sofort mit einem besseren Idioten.


Zurück zu „Slicer Software“