Quick G-Code Arc Tutorial: Machen Sie G02 & G03 einfach, vermeiden Sie Fehler

Kreisförmige Interpolation ist Bewegung entlang eines Kreisbogens

Nachdem wir gerade die lineare Interpolation oder Bewegung in einer geraden Linie besprochen haben, kommen wir als nächstes zur kreisförmigen Interpolation, die Bewegung entlang eines Kreisbogens ist. Abgesehen von der ziemlich exotischen Fähigkeit, einem „NURBS“ -Pfad zu folgen, unterstützen die meisten G-Code-Controller nur zwei Arten von Bewegungen: linear und kreisförmig. Die Kreisinterpolation ist für Ihre Maschine etwas anspruchsvoller, da zwei Achsen genau aufeinander abgestimmt sein müssen. Das Zeichnen eines vollständigen Kreises beinhaltet nicht nur eine koordinierte Bewegung, sondern auch eine Richtungsumkehr an jedem der 4 Quadrantenpunkte. Dies wären die Punkte, die 0, 90, 180 und 270 Grad entsprechen. Wenn die Maschine überhaupt ein Spiel hat, wird es bei diesen Umkehrungen offensichtlich sein, weil es dort eine Störung im Schnitt geben wird.

Kreisbewegung ist ein über G02 und G03 initiierter Modus

Wie die lineare Bewegung (initiiert durch G00 und G01) ist die Kreisbewegung ein über G02 oder G03 initiierter Modus. G02 legt einen Modus für Kreisbögen im Uhrzeigersinn fest. G03 legt einen Modus für Kreisbögen gegen den Uhrzeigersinn fest.

G02 G03-Modi

Definieren eines Lichtbogens für die CNC-Steuerung

Sobald entweder der G02- oder der G03-Modus eingerichtet ist, werden Lichtbögen im G-Code definiert, indem ihre 2 Endpunkte und das Zentrum identifiziert werden, das von jedem Endpunkt gleich weit entfernt sein muss, da sonst ein Alarm ausgelöst wird. Die Endpunkte sind einfach. Der aktuelle Kontrollpunkt oder Ort, an dem der Block gestartet wird, legt einen Endpunkt fest. Die andere kann durch XYZ-Koordinaten festgelegt werden. Das Zentrum ist etwas komplexer.

Definieren des Zentrums über IJK Relative Offsets

Das Zentrum wird am häufigsten identifiziert, indem mit I, J oder K relative Offsets vom Startpunkt des Bogens zum Zentrum festgelegt werden. Hier ist ein typischer Bogen im Uhrzeigersinn:

 Definieren eines Bogens

Definieren eines Bogenzentrums mit IJK…

Dieser Bogen beginnt bei X0Y2 und endet bei X2Y0. Das Zentrum befindet sich bei X0Y0. Wir könnten es in g-Code wie folgt angeben:

G02 (Set up die im uhrzeigersinn arc modus)

X2Y0 I0J-2.0

Das I und das J geben relative Koordinaten vom Startpunkt zum Mittelpunkt an. Mit anderen Worten, wenn wir den I-Wert zum X des Startpunkts und den J-Wert zum Y des Startpunkts addieren, erhalten wir das X und Y für das Zentrum.

Definieren des Mittelpunkts über den Radius Mit „R“

Wir können den Mittelpunkt auch definieren, indem wir nur den Radius des Kreises angeben. In diesem Fall hat unser Kreis einen Radius von 2, so dass der g-Code einfach sein könnte:

G02

X2Y0 R2

Viele von Ihnen werden sich hier und jetzt entscheiden, dass Sie, da R leichter zu verstehen und kürzer zu schreiben ist, nur R verwenden und IJK vergessen werden. Aber die besten Lehrer der Welt werden vorschlagen, dass Sie IJK bevorzugen sollten. Ihr Argument ist, dass Sie bei Verwendung von IJK doppelt überprüfen, ob Ihr Arc korrekt ist.

Warum?

Weil der Controller über IJK einen tatsächlichen Koordinatensatz für das Zentrum berechnen kann. Sobald es die Koordinaten des Zentrums hat, kann es überprüfen, ob es von beiden Endpunkten gleich weit entfernt ist. Die Überprüfung jeder dieser beiden Entfernungen ist die doppelte Überprüfung. Im Falle des „R“ -Formats hat der Controller keine solche doppelte Überprüfung. Es muss ein Zentrum gewählt werden, das den gleichen Abstand garantiert.

Ich persönlich weiß nicht, ob ich den CNC-Instruktoren zustimme, dass dies zusätzliche Überprüfungen bietet oder nicht. Ich sage, gehen Sie mit dem Ansatz, der für Ihre spezielle Situation sinnvoll ist, aber Sie sollten auf jeden Fall mit beiden vertraut und vertraut sein. Sie müssen sich sowieso mit relativen Koordinaten auskennen, da sie verdammt praktisch sind. Vielleicht machen Sie es sich jetzt auch bequem.

Es ist so, als würde man Ihnen sagen, dass Sie das 4-Backenfutter nur an einer Drehmaschine verwenden sollten, wenn Sie anfangen, damit Sie es sehr bequem einwählen können. Es ist eine gute Fähigkeit, als Maschinist gut zu sein!

Variationen in der Arc-Syntax für verschiedene G-Code-Dialekte und -Modi

Wenn IJK nicht inkrementell sind und was ist mit IJK und R ? Plus, andere modale Spielereien und Arc-Variationen

Dies ist ein weiterer Ort, an dem viele obskure Dinge passieren und Sie wissen müssen, was Ihr Controller tun wird, ohne etwas anzunehmen. Im Allgemeinen soll die Regel lauten, dass, wenn Sie sowohl IJK als auch R im selben Block haben, R Vorrang hat und IJK ignoriert wird. Aber es gibt Controller, die nicht genau so funktionieren, also stellen Sie sicher, dass Sie wissen, was los ist.

Mit dem G-Wizard Editor können Sie in seinem Beitrag mehrere Parameter angeben, die bestimmen, wie Bögen funktionieren. Hier ist ein Screenshot der Setup-Optionen:

Arc-Optionen für die G-Code-Simulation

Gehen wir diese Optionen durch:

– Inkrementelle vs. Absolute IJK: Wir haben IJK als Koordinaten relativ zum Startpunkt für das Zentrum diskutiert. Fügen Sie das I zu X, J zu Y und K zu Z des Startpunkts hinzu und Sie erhalten das Zentrum. Viele Steuerelemente haben auch die Option, dass IJK die absoluten Koordinaten des Zentrums sind.

– Modale IJK-Zentren: Wenn IJK absolute Mittelpunktskoordinaten sind, merken sich einige Controller das zuletzt definierte Zentrum, daher ist IJK in diesem Fall modal. Wenn Sie ein solches Steuerelement verwenden, können Sie einfach weiterhin XYZ-Befehle für Bögen ausgeben, ohne jedes Mal ein neues Zentrum definieren zu müssen. Es ist jedoch nicht klar, ob Sie viel sparen werden – wie oft möchten Sie eine Reihe von Bögen mit derselben Mitte erstellen?

– Modale R-Zentren: Eine weitere Variation der Idee des modalen Zentrums besteht darin, den durch „R“ definierten Radius modal sein zu lassen. Was auch immer das zuletzt verwendete R war, der Controller merkt sich diesen Wert und verwendet ihn erneut, wenn kein R angegeben ist. Dies scheint nützlicher zu sein als modales IJK. Zum Beispiel könnte eine Tasche Bögen für die Ecken haben, die alle den gleichen Radius haben.

– Geben Sie R Vorrang: Wie bereits erwähnt, verwenden die meisten Controller „R“, wenn sowohl „R“ als auch „IJK“ im selben Block angegeben sind. Mit dieser Option können Sie diese Priorität jedoch in IJK ändern, wenn Ihr Controller stattdessen so funktioniert.

– Spiralförmige Interp.: Diese Option regelt, ob Ihr Controller helikale Interpolation zulässt.

Das häufigste Problem beim Konfigurieren eines Nockenpfostens oder CNC-Simulators: Absolute vs Relative IJK

Wir haben alle die Erfahrung gemacht, einen Backplot zu betrachten (oder schlimmer noch, ihn in der tatsächlichen Werkzeugbewegung zu sehen, was ziemlich beängstigend ist) und die riesigen fast vollständigen Kreise und keine Anzeichen der bekannten Teilbewegungen zu sehen, die wir erwartet hatten. Hier ist ein typisches Beispiel:

 Bad arcs

Gravurdatei mit schlechten Post-Einstellungen für Bögen …

Wenn Sie so etwas sehen, ist das erste, was zu überprüfen ist, absolute versus relative IJK für Bögen. Die Einstellung muss zwischen dem, was die CAM produziert, und dem, was der Controller oder Simulator erwartet, übereinstimmen.

Testen Sie unseren kostenlosen G-Code-Simulator und -Editor

Bruchteile eines Kreises, Quadranten und Controller

Das erste an einem Bogen ist, dass es nicht möglich ist, mehr als einen 360-Grad-Bogen anzugeben. Bei einigen Controllern für die helikale Interpolation gibt es einige Ausnahmen (siehe unten), nur weil dies für Helix nützlich sein kann. Wenn ein vollständiger Kreis gewünscht wird, stellen Sie die Start- und Endpunkte gleich ein:

G01 X3.25 Y2.0

G02 X3.25 Y2.0 I-1.25 J0

Interessanterweise können Sie mit der Notation „R“ keinen vollständigen Kreis angeben. Dies liegt daran, dass es unendlich viele Kreise gibt, die am selben Punkt eines bestimmten Radius beginnen und enden, sodass der Controller keine Ahnung hat, was der richtige Kreis sein könnte.

Es gibt noch mehr lustige Geschäfte mit „R“ und größeren Bögen. Zum Beispiel kann ein Bogen immer noch einen bestimmten Radius und im Uhrzeigersinn (oder gegen den Uhrzeigersinn) haben, aber der Mittelpunkt ist mehrdeutig, wenn Sie mehr als 90 Grad fahren. Zum Beispiel:

 R plus oder minus

Wenn R negativ ist, nimmt es den längeren Pfad (in gelb). Positiv bekommt den kürzeren Weg.

Bei den beiden gezeigten Optionen wählt der Controller den Pfad basierend auf dem Vorzeichen des Radius. Negative Kräfte je länger Bogen, positiv desto kürzer. Das negative Vorzeichen zwingt den Controller, einen lebensfähigen Bogen von mehr als 180 Grad zu suchen.

Einige Steuerungen sind noch berührungsempfindlicher und programmieren keinen Bogen, der eine Quadrantenlinie kreuzt. Daher beträgt der größte Winkel, dem ein Bogen folgen kann, 90 Grad, und dieser Winkel darf 0, 90, 180 oder 270 Grad nicht überschreiten. Bei Winkeln von 90 Grad, die eine Quadrantenlinie kreuzen, müssen sie in zwei Teile geteilt werden, wobei die Verbindung zwischen den Teilen direkt auf der Quadrantenlinie liegt.

Vollkreise ohne XYZ

Vollkreise entstehen, wenn Start- und Endpunkt identisch sind und der Mittelpunkt über IJK angegeben wird (denken Sie daran, R führt zu einer unendlichen Anzahl von Kreisen). Da Start und Endpunkt identisch sein sollen, müssen Sie möglicherweise nicht einmal den Endpunkt mit XYZ angeben. Einige Controller erfordern dies möglicherweise, die meisten jedoch nicht. Hier ist ein einfaches G-Code-Programm, das auf diese Weise 3 Kreise erzeugt:

N45 G0 X-2. J.75
N46 G1 Z-.5 F10.
N47 J.5 F30. S2000
n48 G2J-1,1
n49 G1J-75
N50Z-2
N51G0X75Y-3,4
n52g1z-.5 F10.
N53 X.5 F30.
N54 G2 ich-1,1
N55 X.75
N56 Z.2
N57 G0 X-4,75 Y-3,4
N58 G1 Z-.5 F10.
N59 X-4,5 F30.
N60 G2 ich 1,1
N61 G1 X-4,75
N62 Z.2

Und so sieht der Backplot aus:

 Bögen ohne XYZ für volle Kreise im g-Code

Tipp zur Vereinfachung der Bogenprogrammierung: Beginnen Sie mit Segmenten

Wenn ich einen Werkzeugweg auslege, lasse ich die Bögen lieber bis zuletzt. Anstelle jedes Bogens setze ich einfach ein Liniensegment, dessen Endpunkte den Endpunkten des Bogens entsprechen. Dies macht es einfach, die grobe Skizze des Werkzeugwegs schnell zusammenzustellen, und es scheint oft einfacher zu sein, dann zurückzukehren und die Linien in Bögen umzuwandeln, sobald die Grundstruktur bereits vorhanden ist.

Helikale Interpolation

Eine Helix ist ein Bogen, der sich wie ein Schraubengewinde kontinuierlich in einer dritten Dimension bewegt. Bei der helikalen Interpolation spezifizieren wir einen solchen Bogen mit G02 / G03, um den Fräser entlang einer Helix zu bewegen. Dies kann zum Gewindefräsen, Interpolieren eines Lochs oder für eine Vielzahl anderer Zwecke erfolgen. Hier ist ein Backplot aus einem 1/4 „NPT Gewindefräserprogramm:

1/4" NPT-Gewindefräser

Helix zum Gewindefräsen…

Hier ist ein Beispiel für den Code aus dem Gewindefräsprogramm:

G01 G91 Z-0,6533 F100.
G01 G42 D08 X0,0235 und-0,0939 F10.
G03X0,0939X0,0939X0,0179X0,0939X0,060>G03X-0,1179×0,1179X0,0179×0,1179×0,960>G03X-0,1185X-0,1185X0.0179R0,1185
G03x0,1191Y-0,1191 Z0,0179r0,1191f16.
G03 X0,1196Y0,1196z0,0179R0,1196
G03 X-0,1202 y0,1202z0,0179r0,1202f26.
G03 X-0,1207 Y-0,1207 Z0,0179R0,1207
G03 X0,1213 Y-0,1213 Z0,0179r0,1213
G03 X0,1218Y0,1218z0,0179r0,1218
G03 X- 0,0975 Y0,0975 Z0,0179 R0.0975

Dies ist das „R“ -Format (Radius) für die Bögen, und beachten Sie, dass es eine Z-Koordinate gibt, um eine Tiefenänderung für den Endpunkt jedes Bogens anzugeben. Dieser Code verwendet eine Relativbewegung (G91), sodass jeder „Z0.0179″ den Cutter 0,0179“ tiefer bewegt.

Der G-Wizard-Editor bietet einige wirklich nützliche Informationen zum Verständnis der helikalen Interpolation. Hier ist der Hinweis aus der dritten Zeile (erster Bogenzug):

 Hinweis für helical interpolation

Hinweis die gewinde pitch hier ist berechnet als 0.1 „

GWIR messen und sagen sie die helix pitch, die in diesem fall ist 0.100″. Dies kann nützlich sein, um festzustellen, welche Art von Gewinde gefräst wird. Wir können auch sehen, dass dieser spezielle Bogen von 270 Grad bis zu einem Scosh von mehr als Null (0, 1 Grad) verläuft.

In einem späteren Kapitel, das sich ganz dem Thema widmet, werden wir das Gewindefräsen noch einmal genauer betrachten. Im Moment wollten wir nur, dass Sie mit der Idee vertraut sind, dass Sie sowohl Spiralen als auch flache zweidimensionale Bögen herstellen können.

Herstellung von Werkzeugwegen Ihre Maschine wird mit

glücklicher sein, wenn der Fräser die Richtung ändert, fügt er eine gewisse Belastung hinzu. Der Schneider beißt in das Material entweder mehr oder weniger, als er gewesen war, abhängig von, ob die Richtungen in Richtung zum Werkstück (oder zum ungeschnittenen Material) oder weg von ihm ändern. Ihre Maschine wird viel glücklicher sein, wenn Sie einen Bogen programmieren, anstatt eine abrupte gerade Richtungsänderung. Selbst ein Lichtbogen mit einem sehr kleinen Radius ermöglicht es der Steuerung, einen sofortigen Richtungswechsel zu vermeiden, der im besten Fall Spuren im Finish hinterlassen und im schlimmsten Fall zu Rattern oder anderen Problemen führen kann. Bei leichten Richtungsänderungen lohnt es sich möglicherweise nicht. Aber je abrupter die Änderung ist, wobei 90 Grad sehr abrupt sind, desto größer ist die Wahrscheinlichkeit, dass Sie einen Bogen verwenden sollten, um die Kurve zu erleichtern.

Bögen sind auch eine nützliche Möglichkeit, den Schnitt einzugeben, anstatt den Schneidkahn gerade einzufahren. Informationen zur Eingabe des Schnitts mit einem Bogen finden Sie auf der Seite Werkzeugweg im Verlauf Fräs-Vorschübe und -geschwindigkeiten.

Übungen

1. Graben Sie Ihr CNC-Controller-Handbuch aus und gehen Sie die Arc-Einstellungen durch, um GWE so einzurichten, dass es der Funktionsweise Ihrer Steuerung entspricht.

2. Machen Sie einige Etch-a-Sketch-Experimente mit GWE. Erstellen Sie einige Werkzeugpfade, die Bögen enthalten, bis Sie sie bequem erstellen können.

Nächster Artikel: Ausführen des GWE G-Code Simulators

Testen Sie die kostenlose Testversion des G-Wizard G-Code Editors…