Zu meinen Favoriten hinzufügen

#Neues aus der Industrie

G-Code für LPBF-Forschungsdrucker

SnowWhite2 & MetalOne

G-Code als Vorteil für Laser-Pulverbettschmelz-Forschungssysteme
G-Code, ursprünglich als standardisierte numerische Steuerungssprache (NC) entwickelt, wird umfassend zur Definition von Werkzeugbahnen und Operationen für computergesteuerte CNC-Maschinen verwendet. Seine Übernahme als De-facto-Standard für Fused-Filament-Fabrication-3D-Drucker (FFF) unterstreicht seine Vielseitigkeit und weite Akzeptanz. G-Code-Befehle werden grob in drei Klassen eingeteilt: Bewegungs-, Werkzeugauswahl- und Sonderfunktionen.

Kern-G-Code-Befehle

Bewegungsbefehle (G0/G1): Diese Befehle steuern die Bewegung der Maschinenachsen. G0 bezeichnet typischerweise eine schnelle, nicht extrudierende Bewegung, während G1 eine kontrollierte lineare Bewegung angibt, oft begleitet von einer Aktion wie Extrusion bei FFF oder Laseraktivierung bei laserbasierten Systemen.

G0 X10: Bewegt die X-Achse zur Position 10 mm vom Ursprung.

G0 X10 Y15: Bewegt die X-Achse auf 10 mm und die Y-Achse auf 15 mm vom Ursprung.

G1 X20 Y20 E10: Bewegt die X-Achse auf 20 mm und die Y-Achse auf 20 mm vom Ursprung und führt gleichzeitig eine Aktion aus, die durch den Parameter E quantifiziert wird (z. B. Extrudieren von 10 mm Filament bei FFF).

G1 Z0.1: Verschiebt die Z-Achse um 0,1 mm, häufig verwendet für Lagewechsel bei der additiven Fertigung.

Werkzeugauswahlbefehle (T): Diese Befehle ermöglichen die Auswahl bestimmter Werkzeuge oder Konfigurationen. Das Format ist ein T gefolgt von einer nicht negativen Ganzzahl.

T0: Wählt Werkzeug 0.

T1: Wählt Werkzeug 1.

T5: Wählt Werkzeug 5.

G-Code-Implementierung in Laser-Pulverbettschmelzsystemen (PBF)
In laserbasierten additiven Fertigungssystemen, insbesondere für Forschungsanwendungen mit Pulverbetten, bietet G-Code eine robuste und präzise Methode zur Steuerung der Laserbahn und der Betriebsparameter. Hier wird die E-Achse (häufig für Extrusion bei FFF verwendet) umgewidmet, um die Laseraktivierung zu steuern. Wenn der E-Parameter während eines G1-Bewegungsbefehls auf einen Wert ungleich Null gesetzt wird, signalisiert dies, dass der Laser für die Dauer dieser Bewegung aktiv sein soll.

Darüber hinaus werden die Werkzeugauswahlbefehle (T) strategisch eingesetzt, um spezifische Lasereinstellungen wie Laserleistung und Scangeschwindigkeit zu definieren. Diese Fähigkeit ist für die Forschung entscheidend, da sie schnelle und systematische Experimente mit verschiedenen Prozessparametern innerhalb eines einzigen Builds ermöglicht. Beispiel:

gcode
T0 ; Wählt Werkzeug 0, entspricht einem vordefinierten Satz von Laserparametern (z. B. Geschwindigkeit, Leistung)
G1 X15 Y15 E1 ; Bewegt den Laser von seiner aktuellen Position nach (15,15), wobei der Laser unter Verwendung der von T0 definierten Parameter aktiviert ist.
Veranschaulichendes Beispiel: Zeichnen eines Quadrats mit variierenden Laserparametern

Die folgende G-Code-Sequenz demonstriert die Fähigkeit, verschiedene Laserparameter auf verschiedene Segmente einer Geometrie anzuwenden – eine wertvolle Funktion für die Materialwissenschaftsforschung und Prozessoptimierung. Dieses Beispiel zeichnet ein 1 cm großes Quadrat auf das Pulverbett, wobei Parameter von T0 für horizontale Linien und T1 für vertikale Linien angewendet werden.

gcode
T0 ; Setzt Laserparameter für horizontale Linien (z. B. Leistung A, Geschwindigkeit B)
G0 X10 Y10 ; Schnelle Bewegung zur Startecke des Quadrats (10,10)
G1 X20 Y10 E1 ; Zeichnet die erste horizontale Linie von (10,10) nach (20,10) bei aktivem Laser (T0-Einstellungen)

T1 ; Setzt Laserparameter für vertikale Linien (z. B. Leistung C, Geschwindigkeit D)
G1 X20 Y20 E1 ; Zeichnet die erste vertikale Linie von (20,10) nach (20,20) bei aktivem Laser (T1-Einstellungen)

T0 ; Wählt T0-Parameter erneut aus
G1 X10 Y20 E1 ; Zeichnet die zweite horizontale Linie von (20,20) nach (10,20) bei aktivem Laser (T0-Einstellungen)

T1 ; Wählt T1-Parameter erneut aus
G1 X10 Y10 E1 ; Zeichnet die zweite vertikale Linie von (10,20) nach (10,10) bei aktivem Laser (T1-Einstellungen)
Erweiterte Funktionalität durch G-Code-Manipulation
Die offene und textuelle Natur von G-Code bietet bedeutende Vorteile für Forscher und ermöglicht erweiterte Funktionen, die herkömmliche Slicer-Software nicht direkt bieten kann. Durch programmatische Modifikation oder Generierung von G-Code können Forscher neuartige Prozessierungsstrategien implementieren und komplexe Materialverhaltensweisen erforschen. Zwei bemerkenswerte Beispiele sind das Umschmelzen und kundenspezifische Füllmuster.

Umschmelzen
Umschmelzen ist eine Technik zur Verbesserung der Oberflächenqualität und Dichte gefertigter Teile. Sie beinhaltet einen zweiten Überlauf des Lasers über das verfestigte Material, wobei der Fokus typischerweise auf den äußeren Konturen jeder Schicht liegt. Während FDM-Slicer oft die Kontrolle über die Anzahl der Umfänge (oder „Hüllen“) und zugehörige Werkzeugbahnen erlauben, kann das Umschmelzen in einem Laser-PBF-System durch intelligente Manipulation des generierten G-Codes erreicht werden.

Speziell für jede Schicht (d. h. kurz vor einem positiven Z-Achsen-Inkrement) können die G-Code-Segmente, die den äußeren Konturen entsprechen (oft durch bestimmte Werkzeugwechsel identifiziert), dupliziert werden. Diese Duplizierung erzeugt effektiv einen zweiten Überlauf, der es dem Laser ermöglicht, die festgelegten Bereiche umzuschmelzen. Dieser Ansatz bietet eine präzise Kontrolle über die Umschmelzstrategie, ohne dass Änderungen am Kern-Slicing-Algorithmus erforderlich sind.

Füllung mit benutzerdefinierten Mustern
Die zeilenweise Struktur des G-Codes erleichtert auch die Implementierung benutzerdefinierter Füllmuster ohne Änderung der Slicer-Software. Dies ist besonders nützlich, um zu untersuchen, wie verschiedene innere Geometrien die mechanischen Eigenschaften oder die Wärmeableitung beeinflussen.

Der Prozess umfasst typischerweise:

Identifizierung der Füllungslinien: Der erste Schritt besteht darin, die G-Code-Zeilen, die die Füllung bilden, genau zu identifizieren. In unserem Setup mit Cura für metalONE ist beispielsweise Werkzeug 4 (T4) ausschließlich für Füllungsoperationen vorgesehen. Dies ermöglicht eine einfache Identifizierung der relevanten G-Code-Blöcke.

Mustererzeugung und -transformation: Sobald die Füllungslinien identifiziert sind, kann ein gewünschtes Muster einer bestimmten Breite und Höhe programmatisch erzeugt werden. Entscheidend ist, dass jede G-Code-Zeile ein Segment mit einer implizierten Richtung in der XY-Ebene definiert. Diese Information kann verwendet werden, um das benutzerdefinierte Muster korrekt auszurichten und zu drehen, damit es mit der beabsichtigten Bewegungsrichtung des Lasers übereinstimmt. Dies ermöglicht die Erstellung hochspezialisierter innerer Strukturen, die Schicht für Schicht oder sogar innerhalb einer einzelnen Schicht variiert werden können.

Um unsere Idee zu testen, entwarfen wir dieses Muster:

[Dann generierten wir den entsprechenden G-Code und schrieben ein Python-Skript, das jedes Vorkommen der Bewegungen des T4-Werkzeugs durch eine Wiederholung unseres Musters ersetzte, ausgedrückt über den korrekt gedrehten G-Code.]

Schlussfolgerung
Die inhärente Flexibilität und das weit verbreitete Verständnis von G-Code machen ihn zu einer außergewöhnlich vorteilhaften Sprache für die Steuerung von Lasersystemen in Forschungsumgebungen. Er bietet Forschern eine detaillierte Kontrolle über Laserpfade und Prozessparameter, erleichtert das schnelle Prototyping von experimentellen Designs und ermöglicht tiefgehende Untersuchungen der Wechselwirkungen zwischen Material und Prozess.

G-Code für LPBF-Forschungsdrucker

Infos

  • Via Montello, 18, 23895 Tabiago-cibrone LC, Italy
  • Sharebot