Eigendefinierte Variablen

Eigendefinierte Variablen (V.P., V.S., V.L.) werden im NC-Haupt- oder Unterprogramm nach dem Programmname in einem Deklarationsblock angelegt (und ggf. initialisiert), der mit #VAR beginnt und mit #ENDVAR abgeschlossen wird.

Hinweis

notice

Den eigendefinierten Variablen V.P., V.S. und V.L. können Werte im REAL-Format zugewiesen werden.

Eigendefinierte Variablen müssen in einem Deklarationsblock angelegt werden. Zur besseren Übersicht kann die Initialisierung eines Variablen-Arrays mit dem „\“-Zeichen auch über mehrere NC-Zeilen geschrieben werden. Folgende Syntax wird zum Anlegen verwendet:

#VAR                                            Beginn des Deklarationsblockes Beginn des Deklarationsblockes

:

:                                                    Deklarations und Initialisierungsbereich

:

#ENDVAR                                     Ende des Deklarationsblockes

Programmierbeispiel

prg_example

%prog_name

:

#VAR

V.P.ARRAY_1[3][6] = [10,11,12,13,14,15, \

                      20,21,22,23,24,25, \

                      30,31,32,33,34,35 ]

V.L.MY_ARRAY[3][6] = [10,11,12,13,14,15, 20,21,22,23,24,25, 30,31,32,33,34,35]

V.P.VAR_1

V.L.VAR_1

V.S.VAR_1

#ENDVAR

Hinweis

notice

Der Zugriff auf Arrayvariablen beginnt bei Index 0! Mit obigem Beispiel liefert der Zugriff V.L.MY_ARRAY[0][5] somit den Wert 15.

Eigendefinierte Variablen und Variablen-Arrays können im NC-Programm auch wieder gelöscht werden. Hierzu steht der Befehl #DELETE mit folgender Syntax zur Verfügung.

#DELETE V.<name> {, V.<name>}

Programmierbeispiel

prg_example

#DELETE V.P.ARRAY_1, V.L.MY_ARRAY, V.P.VAR_1, V.L.VAR_1, V.S.VAR_1

Des Weiteren stehen die SIZEOF- und die EXIST-Funktion zur Verfügung (siehe Kapitel Arithmetische Ausdrücke <expr>), die die Dimensionsgröße von Variablenarrays ermitteln und die Existenz von eigendefinierten Variablen überprüfen.

Programmierbeispiel

prg_example

Durch die EXIST-Abfrage auf eine eigendefinierte V.S.-Arrayvariable (einen beliebigen gültigen Index) wird geprüft, ob diese Variable z.B. bereits in einem vorhergehenden NC-Programm angelegt wurde oder noch definiert werden muss:

N10 $IF EXIST[V.S.EXAMPLE[0]] == TRUE

N20  V.S.EXAMPLE[2] = 10

(V.S-Variable[2] mit einem Wert belegen)

N30 $ELSE

N40   #VAR

N50     V.S.EXAMPLE[5] = [1,2,3,4,5 ]

N60   #ENDVAR

N60 $ENDIF

...

M30