Koordinatentransformation zwischen Koordinatensystemen (#TRANSFORM)
![]() | Diese Funktionalität ist eine lizenzpflichtige Zusatzoption. |
Mit dem #TRANSFORM Befehl können im NC-Programm basierend auf dem aktuellen CS-Stapel beliebig Koordinaten eines 3D-Punktes von einer Stapelebene in eine andere Stapelebene umgerechnet werden. Die dazu notwendige Transformationsrechnung besteht je nach Aufbau des CS-Stapels aus einer Kombination aus kinematischer und kartesischer Vorwärts- oder Rückwärtstransformation.
Hilfs- und Zusatzachsen werden bei der Transformationsrechnung nur bzgl. ihrer Nullpunktverschiebungen zwischen den Stapelebenen berücksichtigt.
Die Berechnungen im #TRANSFORM-Befehl können unabhängig von bereits im Kanal aktiven Transformationen (#CS SELECT) immer zwischen allen aktuell gültigen CS-Stapelebenen erfolgen.
Syntax des Transformationsbefehls: |
#TRANSFORM [<CS_Source>] [<CS_Dest> ] [POS_X>, <POS_Y>, <POS_Z> ] [ [ {<POS_Aux>=..} ] ] |
<CS_Source> | Name des Eingangs-CS mit maximal 8 Zeichen. |
<CS_Dest> | Name des Ziel-CS mit maximal 8 Zeichen. |
<POS_X, Y, Z> | 3 Komponenten des zu transformierenden Punktes in [mm, inch] im Eingangs-CS. |
<POS_Aux>=.. | Eingangskoordinaten der Hilfs- und Zusatzachsen |
![]() | Eine Fehlermeldung wird ausgegeben, wenn:
|
Das Ergebnis der Transformationsrechnung wird in speziellen achsspezifischen Variablen (V.A.) bereitgestellt. Die Achse kann entweder per Name oder Achsindex programmiert werden:
Syntax Ergebnisvariablen: |
V.A.TRANSFORM.<Achsname> Achsspezifische Koordinate nach Berechnung in [mm, inch] oder V.A.TRANSFORM[<Achsindex>] Achsspezifische Koordinate nach Berechnung in [mm, inch]
|
Programmierbeispiel
Beispiel 1, Basiskonfiguration ist eine 5-Achskinematik mit CS-Stapel.
Transformation für den Punkt (50,0,10) mit den Mitschleppachspositionen A10 und B20 aus dem ACS System in das WCS-System. Es wird eine kinematisch-kartesische Vorwärtstransformation durchgeführt.
#TRANSFORM [ACS] [WCS] [50, 0, 10] [A10 B20]

Beispiel 2, Basiskonfiguration ist eine 5-Achskinematik mit CS-Stapel.
Transformation für den Punkt (10,-10,15) mit den Mitschleppachspositionen A45 und B90 aus dem MCS-System in das ACS-System. Es wird eine rein kinematische Rückwärtstransformation durchgeführt.
#TRANSFORM [MCS] [ACS] [10, -10, 15] [A45 B90]

Ergänzend kann ab V3.1.3081.11 auch die Transformation von PCS-Positionen im #TRANSFORM-Befehl verwendet werden. Dazu reicht es aus, wenn diese Transformation in der Kanalparameterliste konfiguriert ist (trafo_pcs.type (P-CHAN-00829) und trafo_pcs.param[i] (P-CHAN-00263); -sie muss nicht aktiv sein (#TRAFO PCS ON). Die PCS-Transformation setzt immer auf der obersten CS-Stapelebene auf und wird entsprechend bei der Transformationsrechnung mit dem fest vorgegebenem Namen TPCS beim #TRANSFORM-Befehl angesprochen. Wird der Namen TPCS verwendet, obwohl keine PCS-Transformation konfiguriert ist, erfolgt die Ausgabe der Fehlermeldung ID 21630.
Programmierbeispiel
Basiskonfiguration ist eine 5-Achskinematik mit CS-Stapel.
Transformation für den Punkt (0, -20,50) aus dem TPCS System in das ACS-System. Es wird eine kinematisch-kartesisch-kinematische Rückwärtstransformation durchgeführt.
#TRANSFORM [TPCS] [ACS] [0, -20, 50]
