G-Code Editor

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
Antworten
3dplaner
Profi 3D-Drucker
Profi 3D-Drucker
Beiträge: 373
Registriert: Fr 19. Sep 2014, 06:32
Has thanked: 47 times
Been thanked: 6 times

G-Code Editor

Beitrag von 3dplaner »

Hallo nun möchte ich den G-Code Editor kennen lernen.
ich möchte gern wissen was die Bezeichnung der Zeilen bedeutet. Also nach der Zeilennummer folgt ein G oder M.
Was muss ich bei Veränderungen beachten, was kann schief gehen. Wieder blöde Frage aber hoffe wie immer auf Antworten.
Helmut
Benutzeravatar
rf1k_mjh11
Developer
Developer
Beiträge: 2051
Registriert: Di 6. Jan 2015, 19:44
Wohnort: Autriche
Has thanked: 263 times
Been thanked: 542 times

Re: G-Code Editor

Beitrag von rf1k_mjh11 »

3dplaner,

Der GCode ist eine sehr simple Maschinensprache, die stur Zeile für Zeile abgearbeitet wird. Was die einzellnen Befehle bewirken, findet man unter der Dokumentation des GCodes selbst. Leider meist auf Englisch. Angehängt ist ziemlich der letzte Stand des für den RF1000 gültigen GCodes.
Aber auch die angehängte Liste ist nicht zwangsweise 100% korrekt. Manche angeführten Befehle werde von der Firmware des RF1k nicht unterstützt. Was ja fast nichts ausmacht, da 99.9% aller Befehle "G1"-Befehle sind. Einige der anderen Befehle tauchen im Start- oder End-GCode auf. Angesprochen werden beim "G1" Befehl die Achsen X, Y, Z und E (=Extruder), entweder einzeln oder in Kombination. Zusätzlich kann der Geschwindigkeitsparameter "F" dazu kommen. Andere Befehle können Parameter bedürfen oder übergeben werden, manche dieser Parameter können wieder die 4 Achsen sein, oder sonst was.
Guck dir einfach einmal eine GCode-Datei mit Notpad an, und arbeite Zeile für Zeile anhand der angehängten GC-Referenzliste ab.
Es gibt auch zumindest zwei gute Bücher übers 3D drucken, mit jeweils guter, kurzer Erklärung des GCodes.

mjh11
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
RF1000 (seit 2014) mit:
  Pico Hot End (mit eigenem Bauteil- und Hot End Lüfter)
  Ceran Bett
  FW RF.01.47 (von Conrad, modif.)

Die Natur kontert immer sofort mit einem besseren Idioten.
3dplaner
Profi 3D-Drucker
Profi 3D-Drucker
Beiträge: 373
Registriert: Fr 19. Sep 2014, 06:32
Has thanked: 47 times
Been thanked: 6 times

Re: G-Code Editor

Beitrag von 3dplaner »

Vielen Dank habe ich soweit verstanden, das ich weiter probieren kann. Wenn ich den Probewürfele von der Sd-Karte den G-Code ansehe
und dann einen von mir gezeichneten Würfel (Auto-Cat) mit den gleichen Abmessungen 20x20x20 und dann den G-Code vergleiche
so sind das alles andere Werte. Wie ist das möglich.
Danke Helmur
Benutzeravatar
rf1k_mjh11
Developer
Developer
Beiträge: 2051
Registriert: Di 6. Jan 2015, 19:44
Wohnort: Autriche
Has thanked: 263 times
Been thanked: 542 times

Re: G-Code Editor

Beitrag von rf1k_mjh11 »

3dplaner/Helmut,

Bei der Erzeugung vom GCode spielen viele Faktoren mit - verwendeter Slicer, den Start-GCode, das eingesetzte Slicer-Profil, usw,.
Die allerersten GCode-Zeilen sind üblicherweise vom Start-GCode bestimmt. Beim Standard Start-Code vom RF1000 wird, z.B. eine recht lange dicke Raupe parallel zur Vorderkante des Heizbettes gezogen (um die Düse "freizuspritzen"). Dann wird als nächstes nicht das bauteil selbst, sondern erst die Schürze (skirt) und/oder die Hutkrempe (brim) gedruckt.

Falls daher deine Slicer-Einstellungen von denen unter dem das Objekt auf der SD Karte erstellt wurde abweicht, werden die GCode-Zeilen stark voneinander abweichen.

Wenn du bloß gucken & lernen willst, stelle im Slicer einmal "keine Skirt" und "keinen Brim" ein. Layerhöhe ist ziemlich egal. Füge beim Start-GCode generell ganz zum Schluss eine "Leerzeile" wie folgt ein:

[code:29350x4p];-------- Das Ende des Start-GCodes für den RF1000 ------------------------------[/code:29350x4p]

Den Text kann man natürlich selbst anpassen. Das hat den Vorteil, dass man beim durchsehen des Codes schnell weiss, wo es eigentlich losgeht.

Danach sliced du wieder deinen Würfel und ignorierst alles bis zum "Ende des Start Codes", denn ab dort geht das Bauteil eigentlich erst los. Dann sollte man wirklich sehen wie der Würfel entsteht.

mjh11
RF1000 (seit 2014) mit:
  Pico Hot End (mit eigenem Bauteil- und Hot End Lüfter)
  Ceran Bett
  FW RF.01.47 (von Conrad, modif.)

Die Natur kontert immer sofort mit einem besseren Idioten.
Benutzeravatar
rf1k_mjh11
Developer
Developer
Beiträge: 2051
Registriert: Di 6. Jan 2015, 19:44
Wohnort: Autriche
Has thanked: 263 times
Been thanked: 542 times

Re: G-Code Editor

Beitrag von rf1k_mjh11 »

3dplaner/Helmut,

Bei der Erzeugung vom GCode spielen viele Faktoren mit - verwendeter Slicer, den Start-GCode, das eingesetzte Slicer-Profil, usw,.
Die allerersten GCode-Zeilen sind üblicherweise vom Start-GCode bestimmt. Beim Standard Start-Code vom RF1000 wird, z.B. eine recht lange dicke Raupe parallel zur Vorderkante des Heizbettes gezogen (um die Düse "freizuspritzen"). Dann wird als nächstes nicht das bauteil selbst, sondern erst die Schürze (skirt) und/oder die Hutkrempe (brim) gedruckt.

Falls daher deine Slicer-Einstellungen von denen unter dem das Objekt auf der SD Karte erstellt wurde abweicht, werden die GCode-Zeilen stark voneinander abweichen.

Wenn du bloß gucken & lernen willst, stelle im Slicer einmal "keine Skirt" und "keinen Brim" ein. Layerhöhe ist ziemlich egal. Füge beim Start-GCode generell ganz zum Schluss eine "Leerzeile" wie folgt ein:

[code:1dfupqdk];-------- Das Ende des Start-GCodes für den RF1000 ------------------------------[/code:1dfupqdk]

Den Text kann man natürlich selbst anpassen. Das hat den Vorteil, dass man beim durchsehen des Codes schnell weiss, wo es eigentlich losgeht.

Danach sliced du wieder deinen Würfel und ignorierst alles bis zum "Ende des Start Codes", denn ab dort geht das Bauteil eigentlich erst los. Dann sollte man wirklich sehen wie der Würfel entsteht.

OK, Nachtrag:

Ich habe das Ganze jetzt versucht zu simulieren. Wenn in der Slicer-Software nicht alles absolut ident ist, werden die erzeugten GCodes nie gleich sein. Zum Beispiel, hat man 4 Perimeter pro Lage eingestellt, die Datei auf der SD Karte aber nur 3, sieht der GCOde auch ganz anders aus. Und sich einfach denken, "heh der fängt beim Würfel einfach an der unteren, linken Ecke an" ist auch falsch, den Üblicherweise wird der äusserste (und innerste) Perimeter als letztes gemacht, kurz vor dem Infill. Damit fährt der Extruder nicht ganz an die linke untere Ecke, aber zumindest in die Nähe.

Zwecks der Übung habe ich einen generierten GCode, ohne Schürze oder Krempe erzeugt, dafür mir 5 Perimeter. Auch ein STL des Würfels ist dabei.
a) Lade den GCode herunter, benenne es wieder in *.gcode um und lade es in Repetier-host. Den Drucker brauchst du weder eingeschalten noch angesteckt.
b) Gehe in die "Preview" Lasche und klicke auf die GCode Lasche
c) Unterhalb vom sichtbaren GCode gibt es eine "Visualization" Lasche. Klick darauf.
d) Wähle "Show Single Layer" - da solltest du ein sauber ausgefülltes Quadrat in der linken hälfte des Bildschirms sehen. Evetuel muss man der Zoom entsprechend einstellen. Mach es ruhig recht bildschirmfüllend, es sollte so assehen, wie hier:



e) Wieder im GCode-Bereich, markiere die Zeilen 73 bis 76 - und voila! der Umriss wird hervorgehoben, wie hier dargestellt:



Damit kann man recht einfach sehen, welche Zeile welche "Strich" erzeugt. Markiert man nur eine Zeile der 4, wird nur einer der 4 Seiten hervorgehoben. Man kann auch mit den einzellnen Werte ein wenig herumspielen. Ändere z.B. den Y-Wert in Zeile 73 von "110.153" auf "109.153" und warte eine Sekunde - schon ist das Ergebnis da! Sieht dann so aus:



Hinweis: meine derzeitige Düse ist 0.4mm. Die GCode-Befehle für den Umriss sind, wie man nachrechnen kann, nicht 20mm lang, da für jede Seite einmal die Hälfte der Raupenbreite abgezogen werden muss (sonst würde der Würfel 20.4 X 20.4mm groß werden). Aber es kommt ziemlich auf die 20mm hin (bei Y, z.b. 129.847 minus 110.153 ergibt 19.694mm).

Viel Spaß beim GCode-blödeln,

mjh11
RF1000 (seit 2014) mit:
  Pico Hot End (mit eigenem Bauteil- und Hot End Lüfter)
  Ceran Bett
  FW RF.01.47 (von Conrad, modif.)

Die Natur kontert immer sofort mit einem besseren Idioten.
Benutzeravatar
rf1k_mjh11
Developer
Developer
Beiträge: 2051
Registriert: Di 6. Jan 2015, 19:44
Wohnort: Autriche
Has thanked: 263 times
Been thanked: 542 times

Re: G-Code Editor

Beitrag von rf1k_mjh11 »

OK alle Anhänge für den vorhergehenden Beitrag gingen flöten.

Hier sind sie nochmal:

a) STL eines 20mm Würfels


b) von mir generierter GCode des Würfels, ohne Skirt oder Brim (ohne Schürze oder Hutkrempe)


c) Screen dump des sichtbaren ersten Layers im Preview von Repetier-host


d) derselbe Layer mit hervorgehobenem Umriss


e) Derselbe Layer wo ein Y-Wert um 1mm geändert wurde.



Nochmals Spaß am blödeln,

mjh11
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
RF1000 (seit 2014) mit:
  Pico Hot End (mit eigenem Bauteil- und Hot End Lüfter)
  Ceran Bett
  FW RF.01.47 (von Conrad, modif.)

Die Natur kontert immer sofort mit einem besseren Idioten.
3dplaner
Profi 3D-Drucker
Profi 3D-Drucker
Beiträge: 373
Registriert: Fr 19. Sep 2014, 06:32
Has thanked: 47 times
Been thanked: 6 times

Re: G-Code Editor

Beitrag von 3dplaner »

Naja das ist vielleicht nicht ganz so einfach zu verstehen wenn auf diesem gebiet ein absoluter Anfänger unterwegs ist.
Ich werde es lernen und verstehen.
Dennoch für jedes selbst konstruierte Objekt, muss eine neue Konfiguration in Slicer entsprechend den Anforderungen des Objektes erstell werden.
Die muss dann unter einen Namen gespeichert werden. Dann das Objekt slicen, den Codes erzeugen auf der Karte speichern und in den Drucker.
Wenn das richtig sein sollte werden meine nervigen Fragen weniger.
Einen schönen Abend Helmut
Benutzeravatar
rf1k_mjh11
Developer
Developer
Beiträge: 2051
Registriert: Di 6. Jan 2015, 19:44
Wohnort: Autriche
Has thanked: 263 times
Been thanked: 542 times

Re: G-Code Editor

Beitrag von rf1k_mjh11 »

3dplaner/Helmut,

Dennoch für jedes selbst konstruierte Objekt, muss eine neue Konfiguration in Slicer entsprechend den Anforderungen des Objektes erstell werden.
Ganz so ist es nicht. Im Slicer verwende ich großteils eine "Hauptkonfiguration" (=Profil). An der wird (üblicherweise) nicht gerüttelt. Ich ändere aber oft 2 Parameter, abhängig vom Zweck des gedruckten Bauteils.

Handelt es sich um einen "Vorab"-Druck, um zu sehen ob es dimensionell passt, reduziere ich den Füllungsgrad auf mickrige 5-10% und oft die Anzahl der Perimeter auf nur 2 herunter (Düsenabhängig!, bei einer 0.5-er Düse oft nur 1 Perimeter).

Soll das Teil eine ordentliche Festigkeit aufweisen, schraube ich den Füllungsgrad auch schon mal auf 70%, dazu geht die Perimeteranzahl auf 5, oder bei der 0.3-er Düse sogar auf 7 hoch.

Sonst werden die Teile mit dem "Standard"-Profil ausgedruckt.

Und habe ich was geändert (wegen Festigkeit, oder Vorabdruck), fragt mich Slic3r natürlich beim Aussteigen:
You have unsaved changes (....). Discard changes and continue anyway?


Da wähle ich immer "Yes", und die "Standard"-Konfiguration bleibt unangetastet.

Bloß wenn neues Material ansteht, muss an anderen Stellen getunt werden (möglich sind dabei Filament-Durchmesser, Extrusion multiplier und Temperatur - entweder einzeln oder in diversen Kombinationen). Beim letzten Materialwechsel (beides PLA), musste ich nur den Durchmesser anpassen (an den tatsächlich gemessenen Wert), sowie später den Extrusion multiplier um einen Hauch anheben (wobei ich den Bedarf erst nach einer halben Spule ermittelt/erkannt hatte). Die Temperatur konnte unangetastet bleiben.

Dazu muss ich auch noch erklären: Ich slice meine Teile immer ausserhalb von Repetier-host. Wahrscheinlich gingen die gelegentlich notwendigen Änderungen auch über Repetier, aber ich habe einfach einmal so angefangen, und
Habit is a dog!
(Die Gewohnheit is' a Hund!)
Wenn einmal die Slic3r Version 1.2.6 (oder besser) stabil ist, wird die Vorschaufunktion dort genauso geil sein wie in Repetier-host, bloß der GCode-Editor würde fehlen. (Aber ehrlich: wer tut sich die Arbeit wirklich an, die 27 Segmente einer Bohrung um 0.2mm nach Aussen zu legen, nur weil es eine Spur zu klein ist? Und das natürlich über alle 89 Layer?, Oder, falls in der STL-Datei was schiefgelaufen ist, sind meist auch dutzende Layer betroffen. Das im GCode auszubügeln ist SisyphusArbeit).

mjh11
RF1000 (seit 2014) mit:
  Pico Hot End (mit eigenem Bauteil- und Hot End Lüfter)
  Ceran Bett
  FW RF.01.47 (von Conrad, modif.)

Die Natur kontert immer sofort mit einem besseren Idioten.
Antworten

Zurück zu „Slicer Software“