Verständnissfrage zu G-Code

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
Plastikschmied
Themenstarter
Profi 3D-Drucker
Profi 3D-Drucker
Beiträge: 314
Registriert: Sa 20. Sep 2014, 15:14
Hat sich bedankt: 3 Mal
Danksagung erhalten: 8 Mal

Verständnissfrage zu G-Code

Beitrag #1 von Plastikschmied » Mo 27. Okt 2014, 09:36

Moin ,

Also ich hab mir nun mal die G codes von unseren Downloadbereuch angesehen und mich etwas damit auseinanndergesetzt.


Startcode für Dualextruder wenn NUR der 2te Extruder verwendet werden soll.

; Default start code
G28 ; Home extruder Extruder fährt auf home position?
G1 Z20 F2000 Extruder fährt 20 mm nach oder ( das druckbrett Runter in dem Fall )
M107 ; Turn off fan Ventilator aus
G90 ; Absolute positioning Extruder fährt zum Nullpunkt des Koordinatensystems
M82 ; Extruder in absolute mode ?
G92 E0 ; Reset extruder position ? resetet die extruder position , ?? was genau macht er da ?
; Wait for all used extruders to reach temperature Er warte bis er die richtige Temoperatur hat
T0
G92 E0 ; start line g92 ? Befehl für eine Startlinie ziehen ?
G1 F300 E-0.5 Extruder zieht das filament um 0,5 mm zurück mit einer geschw von 300 ?
G1 X230 Y30 Z0.35 F5000 Extruder fährt zu punkt x y z .... mit einer geschw. von F5000
G1 X20 E30 F1000 Extruder fährt zu x mit einer geschwindigkeit von 1000 und extruhier 30 mm Filament
G92 E0 ?
G1 E-4 extruder Zieht das Filamet um 4 mm zurück
T1
G92 E0 ; start line Hier das selbe alles wieder....
G1 F300 E-0.5
G1 X230 Y25 Z0.35 F5000
G1 F800 E8
G1 X20 E25 F1000
G92 E0
G1 E-4




Wieso hat der g-Code für den 1 extruder bei dual Extruder den selben G code?


Und wieso hat der reine Dualextruder Gcode garkeinen Code auser
Start
G28 ; home all axes

End
M104 S0 ; turn off extruder
M140 S0 ; turn off bed
M84 ; disable motors



------------------------
Das war es erstmal was ich wissen möchte ;)
Errechnet Das programm das selbst wieviel mm an Filament verarbeitet werden bei jedem " druckSchritt"?


Bin Gerade dabei eine Tabelle an Codes Zu erstellen ...
Vl hat da scho wer etwas und Könnte Diese Ins Forum stellen (Ggegebenfalls auf deutsch )
Ich werde da Mal einen Neues Thema eröffnen




Grüße Tobi

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

Re: Verständnissfrage zu G-Code

Beitrag #2 von rf1k_mjh11 » Fr 9. Jan 2015, 18:59

Plastikschmied hat geschrieben:Moin ,

Also ich hab mir nun mal die G codes von unseren Downloadbereuch angesehen und mich etwas damit auseinanndergesetzt.


Startcode für Dualextruder wenn NUR der 2te Extruder verwendet werden soll.

; Default start code
G28 ; Home extruder Extruder fährt auf home position?
G1 Z20 F2000 Extruder fährt 20 mm nach oben oder ( das druckbrett Runter in dem Fall )
M107 ; Turn off fan Ventilator aus
G90 ; Absolute positioning Extruder fährt zum Nullpunkt des Koordinatensystems
Bedeutet, dass ab jetzt alle Koordinatenangaben als
Absolutwerte intrepetiert werden

M82 ; Extruder in absolute mode Bin mir nicht sicher, glaube aber: Nur der Extruder
wird mittels relativer Koordinaten angesteuert, die anderen Achsen
weiterhin aber absolut
?
G92 E0 ; Reset extruder position ? resetet die extruder position , ?? was genau macht er da?
Das ist ein interessanter Befehl (ich verwende ihn immer fast ganz am Anfang meines Start-Codes). Was hier passiert ist, dass nur der Extruder "zurückgesetzt" wird, also auf "0", ohne dabei ihn zu bewegen. Grund: Nehmen wir als Beispiel an, man hat kurz vorm Druck die Düse freigespritzt, z.B. wegen Filament- oder Farbwechsels, entweder mittels Bedientasten oder Host-SW. Damit steht die Extruderkoordinate auf irgendeinen Wert, z.B. 4.681, falls man 4.6mm gespritzt hat. Kommt jetzt der Befehl G28 (Alle Achsen auf "0"), dreht sich auch sofort der Extruder in die verkehrte Richtung, und zwar exakt "-4.681mm" damit er auf "0" kommt. Das ist gar nicht gut! Da fehlt das Material im Extruder. Mit dem "G92" Befehl kann man eine oder mehrere Achsen eine augenblickliche Position "zuweisen". Mit "G92 E0" sage ich also "Der Extruder steht jetzt auf Null", egal wo er vorher stand. Kommt danach ein "G28", braucht sich der Extruder nicht bewegen, er steht ja jetzt auf "0". Slic3r verwendet den Befehl sehr häufig im generierten Gcode, beinahe 1x pro Layer, wenn nicht häufiger. Skienforge verwendet es hingegen kaum, (Cura weiss ich nicht). )
; Wait for all used extruders to reach temperature Er warte bis er die richtige Temoperatur hat
T0 Hier wird Werkzeug "0" ausgewählt (Extruder 1)
G92 E0 ; start line g92 ? Befehl für eine Startlinie ziehen ? Siehe langen Absatz oben - dient nur der Vorbereitung der "Start-Linie"
G1 F300 E-0.5 Extruder zieht das filament um 0,5 mm zurück mit einer geschw von 300 ?
G1 X230 Y30 Z0.35 F5000 Extruder fährt zu punkt x y z .... mit einer geschw. von F5000
G1 X20 E30 F1000 Extruder fährt zu x mit einer geschwindigkeit von 1000 und extruhier 30 mm Filament
G92 E0 ?
G1 E-4 extruder Zieht das Filamet um 4 mm zurück
T1 Auswahl des Tools "1" (zweiten Extruders) - da muss ja auch hier die Düse "freigespritzt" werden, daher der selbe Befehlsblock, aber mit eine um 5mm versetzte Linie in "Y".
G92 E0 ; start line Hier das selbe alles wieder....
G1 F300 E-0.5
G1 X230 Y25 Z0.35 F5000
G1 F800 E8
G1 X20 E25 F1000
G92 E0
G1 E-4




Wieso hat der g-Code für den 1 extruder bei dual Extruder den selben G code?
Durch die Wahl des einen oder anderen Extruders (T0 oder T1) wird immer nur der eine Extruder angesprochen. Ich habe noch keinen Gcode für ein Dual-Extruder-System gesehen, aber der müsste öfters einen Wechsel, mittels T0 und T1 im Code haben (vorausgesetzt, natürlich, dass auch beide Extruder für den jeweiligen Druck verwendet werden.

Und wieso hat der reine Dualextruder Gcode garkeinen Code auser
Start
G28 ; home all axes
End
M104 S0 ; turn off extruder
M140 S0 ; turn off bed
M84 ; disable motors
Das ist mir nicht klar - ist das Code vom Slicer? Es sieht so aus als ob er nichts "gesliced" hat. Fährt bloß an den Ursprung und schaltet Heizung und Motore ab. Vielleicht ist der Slicer für ein Dual-Extruder falsch konfiguriert?


------------------------
Das war es erstmal was ich wissen möchte ;)
Errechnet Das programm das selbst wieviel mm an Filament verarbeitet werden bei jedem " druckSchritt"?
Die Software addiert einfach jeweils den E-Wert vor dem nächsten "G92 E0" Befehl (siehe langen Absatz oben) und kommt auf einen Gesamtwert. Da Skienforge, zum Beispiel, den E-Wert nicht dauernd zurücksetzt, muss man einfach im entstandenen Gcode den letzten E-Wert anschauen.

Bin Gerade dabei eine Tabelle an Codes Zu erstellen ...
Vl hat da scho wer etwas und Könnte Diese Ins Forum stellen (Ggegebenfalls auf deutsch )
Ich werde da Mal einen Neues Thema eröffnen

Grüße Tobi


Gruß,

Mike - meine Bemerkungen dazu eben in dieser Farbe.
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“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste