Was ist G-Code-Programmierung?
Programmieren ist eine grundlegende Fähigkeit für alle Arten der CNC-Bearbeitung, auch wenn Automatisierung und neue Technologien Programmieraufgaben zu ersetzen scheinen. Jeder Maschinist muss immer noch verstehen, wie seine Programme und Werkzeuge funktionieren. Egal, ob Sie neu in der CNC-Programmierung und ihrer gebräuchlichsten Sprache, G-Code, sind oder ob Sie seit Jahren Code von Grund auf neu schreiben, CNC-Codes können sich immer noch wie eine Fremdsprache anfühlen. Und zu allem Überfluss spricht jede Maschine einen anderen Dialekt, den man verstehen muss. Verstehst du, was sie sagen? Hier sind die Grundlagen der G-Code-Programmierung, die Sie kennen müssen, um Programme effizient zu verstehen und zu schreiben, die qualitativ hochwertige Produkte produzieren.
Was ist G-Code?
G-Code ist eine Programmiersprache für CNC, die Maschinen anweist, wohin und wie sie sich bewegen sollen. Die meisten Maschinen sprechen einen anderen „Dialekt“ des G-Codes, daher variieren die Codes je nach Typ, Marke und Modell. Jede Maschine wird mit einer Bedienungsanleitung geliefert, die den Code dieser bestimmten Maschine für eine bestimmte Funktion zeigt.
G-Code steht für „geometrischer Code“ und folgt einer Variation des alphanumerischen Musters:
N## G## X## Y## Z## F## S## T## M##
N:Zeilennummer
G:Bewegung
X:Horizontale Position
Y:Vertikale Position
Z:Tiefe
F:Vorschubgeschwindigkeit
S:Spindeldrehzahl
T:Werkzeugauswahl
M:Diverse Funktionen
I und J:Inkrementaler Mittelpunkt eines Bogens
R:Radius eines Bogens
Alphanumerische Codes werden für die G-Code-Programmierung verwendet, da sie eine einfache Möglichkeit bieten:
- Bewegung und Funktion definieren (G##)
- Stellen Sie eine Position ein (X## Y## Z##)
- Legen Sie einen Wert fest (F## und/oder S##)
- Wählen Sie ein Element aus (T##)
- Schalten Sie etwas ein und aus (M##), z. B. Kühlmittel, Spindeln, Indexbewegung, Achsensperren usw.
Zum Beispiel
G01 X1 Y1 F20 T01 M03 S500
würde im Allgemeinen eine lineare Vorschubbewegung (G01) zu der angegebenen XY-Position mit einer Vorschubgeschwindigkeit von 20 anzeigen. Es wird Werkzeug 1 verwendet und die Spindeldrehzahl beträgt 500. Verschiedene Funktionen variieren von Maschine zu Maschine, um zu wissen, was die M-Code bedeutet, dass auf die Bedienungsanleitung der Maschine verwiesen werden muss.
Maschinenbewegung
Alles, was eine Maschine kann, basiert auf drei grundlegenden Bewegungsarten:
- Schnelle Bewegung:eine lineare Bewegung zu einer XYZ-Position so schnell wie möglich
- Vorschubbewegung:eine lineare Bewegung zu einer XYZ-Position mit einer definierten Vorschubgeschwindigkeit
- Kreisbewegung:eine Kreisbewegung mit definierter Vorschubgeschwindigkeit
Jeder G-Code teilt der Maschine mit, welche Variation dieser grundlegenden Bewegungen sie ausführen soll und wie sie sie ausführen soll.
X und Y sind kartesische Koordinaten für die horizontale und vertikale Position, und Z repräsentiert die Tiefe der Maschine. Diese Alpha-Ziffern folgen dem Bewegungs-/Funktionsbefehl (G), um die Position der Maschine anzugeben.
Als nächstes bestimmt F die Vorschubgeschwindigkeit (für Vorschubbewegungen oder Kreisbewegungen), während S die Spindeldrehzahl bestimmt. T wird verwendet, um ein Werkzeug auszuwählen. Andere bei der Programmierung verwendete alphanumerische Zeichen können I, J und R sein, die mit Bogenmittelpunkten und Radien zu tun haben.
Sonstige Codes
Die Zeile eines Programms kann auch M-Codes enthalten, bei denen es sich im Allgemeinen um Codes handelt, die einer Maschine mitteilen, wie sie eine Aktion ausführen soll. Es ist zwar nicht garantiert, dass sie auf allen Computern gleich sind, aber einige gängige Standard-M-Codes sind:
- M00:Programmstopp
- M01:Optionaler Programmstopp
- M02:Programmende
- M03:Spindel im Uhrzeigersinn ein
- M04:Spindel ein gegen den Uhrzeigersinn
- M05:Spindelstopp
- M06:Werkzeugwechsel
- M08:Kühlmittel fluten ein
- M09:Kühlmittel fluten aus
- M30:Programmende/zurück zum Anfang
- M41:Niedriger Gangbereich der Spindel
- M42:Hoher Gangbereich der Spindel
Modalität
So wie ein Licht eingeschaltet bleibt, bis es ausgeschaltet wird, bleiben G-Code-Funktionen (auf Controllern, die Modalität unterstützen) aktiv, bis sie durch einen anderen Code deaktiviert werden. Mit anderen Worten, es kann immer nur eine Funktion aktiv sein. Um eine Funktion zu deaktivieren, wählen Sie einfach eine neue Funktion aus.
Angenommen, ein Code beginnt mit einer linearen schnellen Bewegung bei X1 Y1 (G00 X1 Y1). Wenn die nächste Funktion eine weitere lineare Eilgangbewegung ist, muss G00 nicht erneut geschrieben werden. Alles, was in der nächsten Codezeile benötigt wird, ist die neue Position (z. B. X2 Y2), da die modale Bedingung dieselbe ist. Um die Funktion dann in einen linearen Vorschub (G01) zu ändern, würde die Programmierung von G01 in der folgenden Zeile die lineare Eilgangbewegung deaktivieren und den linearen Vorschub aktivieren.
Sobald eine Bedingung festgelegt ist, bleibt sie aktiv, bis sie deaktiviert wird oder eine andere Bedingung sie außer Kraft setzt.
Festzyklen
Festzyklen sind eine Art modale Bedingung, die alle Bewegungen zum Abschließen einer gemeinsamen Aufgabe in einem Code vereint.
Beispielsweise ist G81 häufig ein Code für eine grundlegende Bohrfunktion. Beim einfachen Bohren müsste das Werkzeug 1) zum Startpunkt der Lochposition bewegt werden, 2) im Eilgang zur Freiebene, 3) in die Tiefe vorgeschoben und 4) im Eilgang ausgefahren werden. Das wären vier Zeilen Code im Programm, die für jede neue Bohrposition wiederholt werden müssten! Beim Festzyklus G81 müssen nach der Aktivierung nur die Lochpositionen angegeben werden. Festzyklen wie G81 reduzieren die Codemenge erheblich, indem mehrere Bewegungen in einen Code integriert werden.
In G-Code gibt es einige andere gängige Festzyklen für Lochbohren, Senkbohren und Gewindebohren.
Modalcodegruppen
Modale Codegruppen ermöglichen mehrere Codes in einer einzelnen Zeile, aber es kann nur einen Code aus jeder Gruppe in einer Zeile geben. Dies liegt daran, dass sich Codes innerhalb einer Gruppe gegenseitig überschreiben.
Die modalen Gruppen für G-Codes sind:
- Gruppe 1 (Bewegung):G00, G01, G02, G03, G80, G81, G82, G84, G85, G86, G87, G88, G89
- Gruppe 2 (Ebenenauswahl – XY, YZ, ZX):G17, G18, G19
- Gruppe 3 (Absolut-/Inkrementalmodus):G90, G91
- Gruppe 5 (Vorschubmodus):G93, G94
- Gruppe 6 (Einheiten – Zoll/Millimeter):G20, G21
- Gruppe 7 (Fräserradiuskorrektur – CRC):G40, G41, G42
- Gruppe 8 (Werkzeuglängenkorrektur – TLO):G43, G49
- Gruppe 10 (Rückkehrmodus in Festzyklen):G98, G99
- Gruppe 12 (Wahl des Arbeitskoordinatensystems – WCSS):G54, G55, G56, G57, G58, G59)
Postprozessoren
Ein Postprozessor ist ein Übersetzer, der das berechnete Bild eines Werkzeugwegs auf Ihrem Computerbildschirm in die Sprache für die Maschinensteuerung übersetzt. Sie können einen Postprozessor erstellen, indem Sie nach einem Beispielprogramm suchen, das eng mit Ihrer Maschine übereinstimmt, und das Programm dann so ändern, dass es genau zu Ihrer Maschine passt.
Tipps zur G-Code-Programmierung
- Einige Maschinen und Controller ignorieren Leerzeichen. G01 X1 Y1 Z1 könnte dasselbe bedeuten wie G01 X1Y1Z1.
- Die Z-Achse ist in Aufwärtsrichtung positiv. Z1 bringt das Werkzeug nach oben, während Z-1 das Werkzeug nach unten bringt.
- Der G-Code-Dialekt Ihrer Maschine gibt an, ob eine führende Null erforderlich ist (wie in G01, im Gegensatz zu G1).
- Der Dialekt bestimmt auch, ob Dezimalpunkte immer notwendig sind (z. B. G01 X1. Y1. Z0.5)
- Es ist eine gute Idee, die Beispielprogramme auszuführen, die in Ihrem Maschinenhandbuch enthalten sind, bevor Sie versuchen, ein großes Programm auszuführen. Oftmals funktionieren die Beispielprogramme nicht und Sie müssen die Probleme notieren und Ihre eigenen Maßstäbe setzen.
Erste Schritte mit G-Code
Sind Sie bereit, G-Code zum Programmieren Ihrer Maschinen zu verwenden? Beginnen Sie mit der Überprüfung der eindeutigen Codierungstabelle Ihrer Maschine. Denken Sie daran, dass jede Maschine ein wenig anders ist. Ein Haas-Code für eine Funktion ist möglicherweise nicht derselbe wie ein Anilam-Code für diese Funktion. Sie müssen wissen, welche Codes Ihre spezifische Maschine für die Aufgaben verwendet, die Sie ausführen möchten.
Das Programm beginnt oft mit einem Initialisierungscode (%), gefolgt von einer Programmnummer. Dann wird es eine Reihe von Sicherheitscodes geben. Als nächstes kommt eine Linie für den Werkzeugwechsel. Dadurch wird das entsprechende Werkzeug in die Maschine eingesetzt und die zu verwendende Drehzahl eingestellt. Der Hauptteil des Programms besteht dann aus den Maschinenbewegungen und der Positionierung.
Wenn Sie eine Zeilennummerierung verwenden, empfiehlt es sich, jede Zeile in Schritten von mindestens fünf zu benennen. Wenn Sie später Codezeilen hinzufügen müssen, werden die Zeilen auf diese Weise weiterhin der Reihe nach beschriftet.
Wenn Sie mit der Programmierung Ihres G-Codes fertig sind, beenden Sie das Programm normalerweise mit einer Reihe von Funktionen, die die Maschine stoppen und zurücksetzen, damit sie für das nächste Mal bereit ist.
Bei richtiger Anwendung sind G-Codes ein unschätzbares Werkzeug für CNC-Maschinenbauer, mit dem Sie die Möglichkeiten Ihrer Maschine voll ausschöpfen können. Integrierte CAD/CAM-Lösungen wie Fusion 360 optimieren den CNC-Codierungsprozess weiter, sodass Sie Teile nicht per Hand mit G-Codes programmieren müssen. Die Produktion hochwertiger Teile war mit der G-Code-Programmierung noch nie so schnell.
Industrietechnik
- Was ist CNC?
- Was ist maschinelles Drehen?
- Maschinenprogrammiersprachen:G-Code-Befehle vs. M-Codes
- Mein Kühlmittel ist schlecht, was nun?
- Was ist ein Milchautomat?
- Was ist eine Horizontalbohrmaschine?
- Was ist ein Nudelautomat?
- Was ist eine Präzisionsfräsmaschine?
- Was ist eine Druckgussmaschine?
- Was ist ein Elektrofusionsschweißgerät?