Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

G-Code erklärt | Liste der wichtigsten G-Code-Befehle

Wenn Ihre Arbeit oder Ihr Hobby mit CNC-Maschinen oder 3D-Druckern zusammenhängt, dann ist es für Sie unerlässlich zu verstehen, was G-Code ist und wie er funktioniert. In diesem Tutorial lernen wir also die Grundlagen der G-Code-Sprache kennen, was die wichtigsten oder gebräuchlichsten G-Code-Befehle sind, und wir erklären, wie sie funktionieren.

Was ist G-Code?

G-Code ist eine Programmiersprache für CNC-Maschinen (Computer Numerical Control). G-Code steht für „Geometrischer Code“. Wir verwenden diese Sprache, um einer Maschine zu sagen, was sie tun oder wie sie etwas tun soll. Die G-Code-Befehle weisen die Maschine an, wohin sie sich bewegen soll, wie schnell sie sich bewegen soll und welchem ​​Weg sie folgen soll.

Bei einer Werkzeugmaschine wie einer Drehbank oder Fräse wird das Schneidwerkzeug von diesen Befehlen angetrieben, einem bestimmten Werkzeugweg zu folgen und Material wegzuschneiden, um die gewünschte Form zu erhalten.

In ähnlicher Weise weisen die G-Code-Befehle im Fall von additiver Fertigung oder 3D-Druckern die Maschine an, Material Schicht für Schicht aufzubringen und eine präzise geometrische Form zu bilden.

Wie liest man G-Code-Befehle?

Auf den ersten Blick sieht eine G-Code-Datei vielleicht recht kompliziert aus, ist aber eigentlich gar nicht so schwer zu verstehen.

Wenn wir uns den Code genauer ansehen, können wir feststellen, dass die meisten Zeilen die gleiche Struktur haben. Es scheint, dass der "komplizierte" Teil des G-Codes all die Zahlen sind, die wir sehen, die nur kartesische Koordinaten sind.

Schauen wir uns eine einzelne Zeile an und erklären, wie sie funktioniert.

G01 X247.951560 Y11.817060 Z-1.000000 F400.000000

Die Zeile hat folgenden Aufbau:

G## X## Y## Z## F##

  • Der erste ist der G-Code-Befehl und in diesem Fall ist das der G01  was bedeutet „in gerader Linie zu einer bestimmten Position bewegen“.
  • Mit dem X geben wir die Position bzw. die Koordinaten an , Y und Z Werte.
  • Zu guter Letzt mit dem F Wert legen wir die Vorschubgeschwindigkeit fest , oder die Geschwindigkeit, mit der die Bewegung ausgeführt wird.

Abschließend weist die Zeile G01 X247.951560 Y11.817060 Z-1.000000 F400 der CNC-Maschine an, sich in einer geraden Linie von ihrer aktuellen Position zu den Koordinaten X247.951560, Y11.817060 und Z-1.000000 mit einer Geschwindigkeit von 400 mm zu bewegen /Mindest. Die Einheit ist mm/min, denn wenn wir einen Blick zurück auf das G-Code-Beispielbild werfen, können wir sehen, dass wir den Befehl G21 verwendet haben, der die Einheiten auf Millimeter setzt. Wenn wir die Einheiten in Zoll wünschen, verwenden wir stattdessen den Befehl G20.

Die wichtigsten/gebräuchlichsten G-Code-Befehle

Da wir nun wissen, wie man eine Zeile G-Code liest, können wir uns die wichtigsten oder am häufigsten verwendeten G-Code-Befehle ansehen. Wir werden lernen, wie jeder von ihnen durch mehrere Beispiele funktioniert, und am Ende dieses Tutorials werden wir in der Lage sein, vollständig zu verstehen, wie G-Code funktioniert, wie man liest, wie man modifiziert und sogar wie man seinen eigenen G-Code schreibt.

G00 – Schnellpositionierung

Die G00 Befehl bewegt die Maschine mit maximaler Verfahrgeschwindigkeit von einer aktuellen Position zu einem bestimmten Punkt oder den durch den Befehl angegebenen Koordinaten. Die Maschine bewegt alle Achsen gleichzeitig, sodass sie die Bewegung gleichzeitig abschließen. Dadurch erfolgt eine geradlinige Bewegung zum neuen Positionspunkt.

Die G00 ist eine nicht schneidende Bewegung und ihr Zweck besteht darin, die Maschine schnell in die gewünschte Position zu bewegen, um mit einer Art von Job zu beginnen, wie z. B. Schneiden oder Drucken.

G01 – Lineare Interpolation

Der G01 Der G-Code-Befehl weist die Maschine an, sich in einer geraden Linie mit einer festgelegten Vorschubrate oder Geschwindigkeit zu bewegen. Die Endposition geben wir mit dem X an , Y und Z Werte und die Geschwindigkeit mit dem F Wert. Die Maschinensteuerung berechnet (interpoliert) die zu durchlaufenden Zwischenpunkte, um diese gerade Linie zu erhalten. Obwohl diese G-Code-Befehle einfach und recht intuitiv zu verstehen sind, führt die Maschinensteuerung Tausende von Berechnungen pro Sekunde durch, um diese Bewegungen auszuführen.

Im Gegensatz zum G00-Befehl, der nur zum Positionieren verwendet wird, wird der G01-Befehl verwendet, wenn die Maschine ihre Hauptaufgabe ausführt. Im Falle einer Drehmaschine oder Fräse das Schneiden des Materials in gerader Linie und im Falle eines 3D-Druckers das Extrudieren des Materials in einer geraden Linie.

G02 – Kreisinterpolation im Uhrzeigersinn

Die G02 Der Befehl weist die Maschine an, sich kreisförmig im Uhrzeigersinn zu bewegen. Es ist das gleiche Konzept wie der G01-Befehl und wird verwendet, wenn der entsprechende Bearbeitungsprozess durchgeführt wird. Zusätzlich zu den Endpunktparametern müssen wir hier auch das Rotationszentrum oder den Abstand des Bogenstartpunkts vom Mittelpunkt des Bogens definieren. Der Startpunkt ist eigentlich der Endpunkt des vorherigen Befehls oder der aktuelle Punkt.

Zum besseren Verständnis fügen wir den G02-Befehl nach dem G01-Befehl aus dem vorherigen Beispiel ein.

Im Beispiel haben wir also zuerst den Befehl G01, der die Maschine zum Punkt X5, Y12 bewegt. Dies ist nun der Ausgangspunkt für den G02-Befehl. Mit den X- und Y-Parametern des G02-Befehls setzen wir den Endpunkt. Um diesen Endpunkt nun mit einer Kreisbewegung oder mit einem Bogen zu erreichen, müssen wir seinen Mittelpunkt definieren. Das machen wir mit den Parametern I und J. Die Werte von I und J sind relativ zum Startpunkt oder Endpunkt des vorherigen Befehls. Um also den Mittelpunkt zu X5 und Y7 zu bekommen, müssen wir einen Versatz von 0 machen entlang der X-Achse und einem Versatz von -5 entlang der Y-Achse.

Natürlich können wir den Mittelpunkt auch woanders setzen, dann bekommen wir einen anderen Bogen, der am selben Endpunkt endet. Hier ist ein Beispiel dafür:

Hier haben wir also immer noch denselben Endpunkt wie im vorherigen Beispiel (X10, Y7), aber der Mittelpunkt befindet sich jetzt an einer anderen Position (X0, Y2). Damit haben wir einen breiteren Bogen im Vergleich zum vorherigen.

Siehe auch:So richten Sie GRBL ein und steuern CNC-Maschinen mit Arduino

G00, G01, G02 Beispiel – Manuelle G-Code-Programmierung

Werfen wir einen Blick auf ein einfaches CNC-Fräsbeispiel mit diesen drei Haupt-G-Code-Befehlen, G00, G01 und G02.

Um den Werkzeugweg für die im Bild oben gezeigte Form zu erhalten, müssen wir die folgenden G-Code-Befehle ausführen:

G00 X5 Y5              ; point B G01 X0 Y20 F200         ; point C G01 X20 Y0             ; point D G02 X10 Y-10 I0 J-10     ; point E G02 X-4 Y-8 I-10 J0    ; point F G01 X-26 Y-2             ; point B Codesprache:Arduino (arduino)

Mit dem ersten G00 Befehl bringen wir die Maschine schnell von ihrer Ausgangs- oder Anfangsposition zum Punkt B(5,5). Ab hier beginnen wir mit dem „Schneiden“ bei einem Vorschub von 200 mit dem G01 Befehl. Wir können hier anmerken, dass wir, um von Punkt B(5,5) zu Punkt C(5,25) zu gelangen, Werte für X und Y relativ zum Startpunkt B verwenden. +20 Einheiten in Y-Richtung bringen uns also zum Punkt C(5,25). Tatsächlich hängt dies davon ab, ob wir die Maschine ausgewählt haben, um die Koordinaten als absolut oder relativ zu interpretieren. Wir werden dies in einem späteren Abschnitt erklären.

Sobald wir den Punkt C(5,25) erreicht haben, haben wir einen weiteren G01-Befehl, um den Punkt D(25,25) zu erreichen. Dann verwenden wir den Befehl G02, eine kreisförmige Bewegung, um zu Punkt E (35,15) mit einem Mittelpunkt (25,15) zu gelangen. Wir haben tatsächlich denselben Mittelpunkt (25,15) für den nächsten G02-Befehl, um zu Punkt F(31,7) zu gelangen. Wir sollten jedoch beachten, dass sich die I- und J-Parameter vom vorherigen Befehl unterscheiden, da wir die Mitte vom letzten Endpunkt oder dem Punkt E versetzen. Wir beenden den Werkzeugweg mit einem weiteren G01-Befehl, der uns von Punkt F (31, 7) zurück zu Punkt B(5,5).

So können wir also den G-Code manuell programmieren, um diese Form zu erstellen. Wir müssen jedoch beachten, dass dies kein vollständiger G-Code ist, da uns einige weitere grundlegende Befehle fehlen. Wir werden den vollständigen G-Code in einem späteren Beispiel erstellen, da wir diese G-Code-Befehle zuerst erklären müssen.

G03 – Kreisinterpolation gegen den Uhrzeigersinn

Genau wie der G02, der G03 Der G-Code-Befehl definiert, dass sich die Maschine in einem kreisförmigen Muster bewegt. Der einzige Unterschied besteht darin, dass die Bewegung gegen den Uhrzeigersinn erfolgt. Alle anderen Funktionen und Regeln sind die gleichen wie beim G02-Befehl.

Also, mit diesen drei Haupt-G-Code-Befehlen, G01 , G02 und G03 Wir können einen Werkzeugweg für buchstäblich jede gewünschte Form generieren. Sie fragen sich jetzt vielleicht, wie das möglich ist, aber das ist eigentlich eine leichte Aufgabe für einen Computer und eine CAM-Software. Ja, es ist wahr, dass wir manchmal ein G-Code-Programm manuell erstellen können, aber meistens tun wir das mit geeigneter Software, was viel einfacher und sicherer ist.

Erklären Sie jetzt trotzdem ein paar weitere wichtige und häufig verwendete Befehle und machen Sie am Ende ein echtes G-Code-Beispiel.

G20/G21 – Einheitenauswahl

Die Befehle G20 und G21 definieren die G-Code-Einheiten, entweder Zoll oder Millimeter.

  • G20 =Zoll
  • G21 =Millimeter

Wir müssen beachten, dass die Einheiten zu Beginn des Programms eingestellt werden müssen. Wenn wir die Einheiten nicht angeben, berücksichtigt die Maschine die Standardeinstellung des vorherigen Programms.

G17/ G18/ G18 – G-Code-Ebenenauswahl

Mit diesen G-Code-Befehlen wählen wir die Arbeitsebene der Maschine aus.

  • G17 – XY-Ebene
  • G18 – XZ-Ebene
  • G19 – YZ-Ebene

G17 ist Standard für die meisten CNC-Maschinen, aber die anderen beiden können auch zum Erreichen bestimmter Bewegungen verwendet werden.

G28 – Rückkehr nach Hause

Die G28 Befehl weist die Maschine an, das Werkzeug zu seinem Referenzpunkt oder seiner Ausgangsposition zu bewegen. Um Kollisionen zu vermeiden, können wir einen Zwischenpunkt mit X-, Y- und Z-Parametern einfügen. Das Werkzeug passiert diesen Punkt, bevor es zum Referenzpunkt fährt. G28 X## Y## Z## 

Die Referenzposition kann mit dem Befehl G28.1 X## Y## Z## definiert werden .

G90/ G91 – Positionierung von G-Code-Befehlen

Mit den Befehlen G90 und G91 teilen wir der Maschine mit, wie sie die Koordinaten interpretieren soll. G90 ist für den absoluten Modus und G91 ist für den relativen Modus .

Im absoluten Modus erfolgt die Positionierung des Werkzeugs immer vom absoluten Punkt oder Nullpunkt. Also der Befehl G01 X10 Y5 bringt das Werkzeug zu genau diesem Punkt (10,5), unabhängig von der vorherigen Position.

Im relativen Modus hingegen ist die Positionierung des Werkzeugs relativ zum letzten Punkt. Wenn sich die Maschine also gerade an Punkt (10,10) befindet, wird der Befehl G01 X10 Y5 führt das Werkzeug zu Punkt (20,15). Dieser Modus wird auch „inkrementeller Modus“ genannt.

Weitere Befehle und Regeln

Die oben erläuterten G-Code-Befehle sind also die gebräuchlichsten, aber es gibt noch viele weitere. Es gibt Befehle wie Fräserkompensation, Skalierung, Arbeitskoordinatensysteme, Verweilzeit usw.

Neben dem G-Code gibt es auch M-Code-Befehle, die beim Generieren eines echten vollwertigen G-Code-Programms verwendet werden. Hier sind einige allgemeine M-Code-Befehle:

  • M00 – Programmstopp
  • M02 – Programmende
  • M03 – Spindel EIN – im Uhrzeigersinn
  • M04 – Spindel EIN – gegen den Uhrzeigersinn
  • M05 – Spindelstopp
  • M06 – Werkzeugwechsel
  • M08 – Flutflüssigkeit EIN
  • M09 – Flutflüssigkeit AUS
  • M30 – Programmende

Im Falle eines 3D-Druckers:

  • M104 – Extruderheizung starten
  • M109 – Warten bis der Extruder T0 erreicht
  • M140 – Bettheizung starten
  • M190 – Warten, bis das Bett T0 erreicht
  • M106 – Lüftergeschwindigkeit einstellen

Einige dieser Befehle benötigen entsprechende Parameter. Wenn wir zum Beispiel die Spindel mit M03 einschalten, können wir die Spindeldrehzahl mit dem S-Parameter einstellen. Also die Linie M30 S1000 dreht die Spindel mit einer Drehzahl von 1000 U/min.

Wir können auch feststellen, dass viele Codes modal sind , was bedeutet, dass sie in Kraft bleiben, bis sie gekündigt oder durch einen anderen Code ersetzt werden. Angenommen, wir haben einen Code für eine lineare Schneidbewegung G01 X5 Y7 F200 . Wenn die nächste Bewegung wieder ein linearer Schnitt ist, können wir einfach die X- und Y-Koordinaten eingeben, ohne G01 vorne zu schreiben.

G01 X5 Y7 F200
X10 Y15
X12 Y20
G02 X5 Y5 I0 J-5
X3 Y6 I-2 J0 Codesprache:Arduino (arduino) 

Dasselbe gilt für den Vorschubparameter F. Wir müssen ihn nicht in jede Zeile aufnehmen, es sei denn, wir wollen seinen Wert ändern.

In einigen G-Code-Dateien können Sie auch „N## sehen “ vor den Befehlen. Das N-Wort ist einfach, um die Codezeile oder den Codeblock zu nummerieren. Das kann hilfreich sein, um bei einem Fehler in einem großen Programm eine bestimmte Zeile zu identifizieren.

Einfaches G-Code-Programmbeispiel

Nachdem wir all dies gelesen haben, sind wir jetzt jedoch in der Lage, manuell einen echten, tatsächlichen Code zu erstellen. Hier ist ein Beispiel:

%
G21 G17 G90 F100
M03 S1000
G00 X5 Y5                 ; point B
G01 X5 Y5 Z-1             ; point B
G01 X5 Y15 Z-1            ; point C
G02 X9 Y19 Z-1 I4 J0      ; point D
G01 X23 Y19 Z-1           ; point E
G01 X32 Y5 Z-1            ; point F
G01 X21 Y5 Z-1            ; point G
G01 X21 Y8 Z-1            ; point H
G03 X19 Y10 Z-1 I-2 J0    ; point I
G01 X13 Y10 Z-1           ; point J
G03 X11 Y8 Z-1 I0 J-2     ; point K
G01 X11 Y5 Z-1            ; point L
G01 X5 Y5 Z-1             ; point B
G01 X5 Y5 Z0
G28  X0 Y0
M05
M30
% Codesprache:Arduino (arduino) 

Beschreibung des G-Code-Programms:

  1. Code-Initialisierung. Dieses Zeichen (%)  steht immer am Anfang und am Ende des Programms.
  2. Sicherheitslinie:Satzprogrammierung im metrischen System (alle Maße in mm), XY-Ebene, absolute Positionierung und Vorschubgeschwindigkeit von 100 Zoll/min.
  3. Spindel im Uhrzeigersinn mit einer Drehzahl von 1000 U/min.
  4. Schnelle Positionierung auf B(5,5).
  5. Kontrollierte Bewegung auf derselben Position, aber Absenken des Werkzeugs auf -1.
  6. Lineare Schnittbewegung zur Position C(5,15).
  7. Kreisbewegung im Uhrzeigersinn zu Punkt D(9,19), mit Mittelpunkt bei (9,15).
  8. Linearer Schnitt bis Punkt E(23,19).
  9. Linearer Schnitt bis Punkt F(32,5).
  10. Gleicher gerader Schnitt bis Punkt G(21,5).
  11. Ein weiterer gerader Schnitt zu Punkt H(21,8).
  12. Kreisinterpolation gegen den Uhrzeigersinn zu Position I(19,10), mit einem Mittelpunkt bei (19,8).
  13. Linearer Schnitt bis Punkt J(13,10).
  14. Kreisschneiden gegen den Uhrzeigersinn bis Position K(11,8), mit Mittelpunkt bei (13,8).
  15. Linearschnitt bis Position L(11,5).
  16. Endgültige lineare Schnittbewegung zu Position B(5,5).
  17. Erhebe das Werkzeug.
  18. Zur Ausgangsposition gehen.
  19. Spindel aus.
  20. Hauptprogrammende.

So sieht dieser Code bereit aus, um über die Universal G-Code Sender-Software an unsere CNC-Maschine gesendet zu werden:

Mit diesen oben erläuterten G-Code-Hauptbefehlen haben wir es also geschafft, unseren eigenen vollwertigen G-Code zu schreiben. Natürlich ist dieses Beispiel recht einfach und für komplexere Formen müssen wir definitiv eine CAM-Software verwenden. Hier ist ein Beispiel für einen komplexen G-Code einer Pferdeform:

Zum Vergleich:Dieser Code hat etwa 700 Zeilen, die jedoch alle automatisch generiert werden. Der G-Code wurde mit Inkscape als Beispiel für meine DIY Arduino CNC-Schaumschneidemaschine erstellt. So kam die Form heraus:

Weitere Einzelheiten zu dieser Maschine finden Sie in meinem speziellen Tutorial.

Fazit

Also haben wir die Grundlagen von G-Code behandelt, die wichtigsten und gebräuchlichsten G-Code-Befehle erklärt und unseren eigenen tatsächlichen G-Code manuell erstellt. Schließlich denke ich, G-Code zu verstehen, ist nicht so schwer. Natürlich gibt es noch so viele andere Befehle und Funktionen, die in der CNC-Bearbeitung oder im 3D-Druck verwendet werden, die wir kennen sollten, aber dazu mehr in einigen anderen Tutorials.

Wenn Sie diesen Artikel nützlich fanden, teilen Sie ihn mit anderen CNC- und 3D-Druck-Enthusiasten. Fühlen Sie sich auch frei, Fragen im Kommentarbereich unten zu stellen.


Herstellungsprozess

  1. Die wichtigsten Eigenschaften von Pigmenten für Farben
  2. RF-Transformator erklärt
  3. Grainger erhält Platz auf der Liste der am meisten bewunderten Unternehmen von Fortunes
  4. Die 6 wichtigsten Überlegungen vor der Beauftragung einer Maschinenwerkstatt
  5. Maschinenprogrammiersprachen:G-Code-Befehle vs. M-Codes
  6. 5 der wichtigsten Sicherheitstipps für Krane
  7. 4 Geheimnisse der Rekrutierung für Ihre wichtigsten Fabrikpositionen
  8. Warum Design für die Fertigung wichtig ist
  9. Die 7 wichtigsten Dinge, die in der Stückliste (BOM) enthalten sind
  10. Fanuc-G-Code-Liste