Bei der Programmierung von 5-Achsen-Maschinen stehen uns zwei Hauptoptionen zur Verfügung, um Rotationsbewegungen und Positionen zu steuern: Wir können die Daten entweder in Form von Rotationswinkeln oder als Werkzeugvektoren ausgeben. Beide Methoden haben ihre eigenen Vorteile und Einschränkungen, aber ich bevorzuge es, den Postprozessor so zu konfigurieren, dass die Rotationsbefehle als IJK-Toolvektoren ausgegeben werden, anstatt die üblichen ABC-Achsen-Rotationswinkel zu verwenden.
Die Verwendung von IJK-Toolvektoren macht das Programm unabhängig von einer bestimmten Maschinenkonfiguration. Da wir keine bestimmte Achse (A, B oder C) ansteuern, ist die Maschine frei, beliebige verfügbare Achsen zu nutzen, um das Werkzeug in die gewünschte Position und Neigung zu bringen. Diese Flexibilität ermöglicht es, dass ein und dasselbe Teileprogramm auf verschiedenen Maschinen in der Werkstatt ausgeführt werden kann, unabhängig von deren Konfiguration – ein großer Vorteil für die Planung und den Ablauf in der Produktion.
Werkzeugvektoren erleichtern zudem die Erstellung des Postprozessors. Bei der Programmierung von 5-Achsen-Werkzeugwegen mit einem CAM-System berechnet die Software die notwendigen Bewegungen automatisch anhand der Werkzeugvektoren. Dadurch ist es einfacher und schneller, einen Postprozessor zu erstellen, der diese Bewegungen direkt ausgibt, anstatt sie erst in A-, B- oder C-Achsen-Befehle umzurechnen. Wenn wir den Postprozessor so einrichten, dass er jede Bewegung in A-, B- oder C-Achsen-Befehle übersetzt, wird der Postprozessor deutlich komplexer und die Konfiguration und das Testen nehmen mehr Zeit in Anspruch.
Was genau ist ein Werkzeugvektor? Werkzeugvektoren sind einfach IJK-Werte, die im Programm am Ende der XYZ-Position angegeben werden. Sie definieren, in welchem Winkel und in welcher Richtung das Werkzeug von der festgelegten XYZ-Position geneigt werden soll. Ein Beispiel: Der Werkzeugvektor-Befehl G01 X10. Y10. Z10. I0.5 J0.5 K0.707106 entspricht einer Werkzeug- und Achsposition wie G01 X10. Y10. Z10. B45. C45, allerdings ohne, dass spezifische Achsbefehle erforderlich sind. Der zweite Befehl wäre nur auf einer Maschine mit BC-Konfiguration nutzbar.

Auch wenn die Werte der Toolvektoren keine Entfernungen darstellen und keine Maßeinheit besitzen, stelle ich sie mir bei der Visualisierung des Neigungswinkels folgendermaßen vor: Die drei Buchstaben im Vektor beziehen sich auf die drei Maschinenachsen; I steht für die X-Achse, J für die Y-Achse und K für die Z-Achse. Zur Veranschaulichung nehmen wir im folgenden Beispiel an, dass jeder IJK-Wert einen Zoll entspricht. Vom Kontaktpunkt des Werkzeugs (XYZ) aus betrachtet man einen Punkt, der 0,5 Zoll in positiver X-Richtung, 0,5 Zoll in positiver Y-Richtung und 0,70716 Zoll nach oben in positiver Z-Richtung liegt. Zeichnet man eine Linie vom Zentrum der Werkzeugspitze durch diesen Punkt, erhält man den Neigungswinkel und die Richtung des Werkzeugs. So einfach ist das!



Ein weiterer wichtiger Punkt beim Einsatz von Werkzeugvektoren in der 5-Achsen-Programmierung: Wenn wir die Maschine entscheiden lassen, welche verfügbaren Rotationsachsen sie zur Positionierung des Werkzeugs im gewünschten Neigungswinkel nutzt – und da es für jede 5-Achsen-Kombination mindestens zwei mögliche Lösungen gibt – müssen wir eine Möglichkeit schaffen, die Steuerung dazu zu bringen, die für die spezifische Maschinenkonfiguration optimalste Lösung zu wählen. Dies geschieht über die sogenannte „Tilt Axis Preference“ – eine Einstellung in den Steuerungsparametern jeder Maschinensteuerung, die mit Werkzeugvektoreingaben umgehen kann.
Mit der Tilt Axis Preference wird die Steuerung gezwungen, für den aktuellen 5-Achsen-Befehl basierend auf der jeweiligen Maschine die optimale Drehrichtung auszuwählen. Beispiel: Bei einer Trunnion-Maschine, bei der die A-Achse 110 Grad in negative Richtung, aber nur 30 Grad in positive Richtung schwenken kann (wie bei den Hurco 5-Achsen-Trunnionmaschinen), ist es sinnvoll, die Steuerung so zu „zwingen“, dass sie möglichst immer in negative Richtung schwenkt. So wird sichergestellt, dass der Achsweg für die geforderte Bewegung ausreicht.

