Anfordern von Achsen

Mit folgendem NC-Befehl werden Achsen von der Achsverwaltung angefordert:

#AX REQUEST [NAM, NBR, IDX] [<Achstauschsequenz> {,<Optionen>} ]

                                         { [<Achstauschsequenz> {,<Optionen>} ] } (nicht modal)

NAM, NBR, IDX

Logikschalter zur Behandlung von Konflikten.

ID

Bedeutung

NAM

Behandlung redundanter Achsnamen

NBR

Behandlung redundanter Achsnummern

IDX

Behandlung redundanter Achsindizes

Hinweis

notice

Die Logikschalter können einzeln oder in Kombination programmiert werden!

<Achstauschsequenz>

bestehend aus:

<Achsname>

Für die Achsbezeichnung sind Strings mit den Anfangsbuchstaben A, B, C, Q, U, V, W, X, Y und Z zulässig.

Hinweis

notice

Bei Konflikten innerhalb der programmierten Achstauschsequenz:

Redundante Achsnamen → FEHLER, Programmabbruch.

Bei Konflikten zu bereits im NC-Kanal vorhandenen Achsen:

Achsnamen gleich, Achsnummern verschieden → FEHLER, Programmabbruch

Bei gesetztem Logikschalter NAM wird Konflikt wie folgt bereinigt:

Die Achse bekommt den Defaultachsnamen aus ihrer Achsparameterliste P-AXIS-00297. Die eindeutige Vergabe der Defaultachsnamen in den Listen ist durch den Anwender sicherzustellen.

<Achsnummer>

Die physikalische Zuordnung der Achsen erfolgt über die logische Achsnummer. Zulässig sind mathematische Ausdrücke. Die logische Achsnummer muss in der Achsverwaltung bekannt sein.

Hinweis

notice

Bei Konflikten innerhalb der programmierten Achstauschsequenz:

Redundante Achsnummern → FEHLER, Programmabbruch.

Bei Konflikten zu bereits im NC-Kanal vorhandenen Achsen:

Achsnummer im Kanal bereits vorhanden → WARNING

Bei gesetztem Logikschalter NBR wird Konflikt wie folgt bereinigt:

Die Achsanforderung wird ignoriert, d.h. sie wird nicht ausgeführt!

<Achsindex>

Der Achsindex legt den Platz der Achse innerhalb der Achsgruppe des NC-Kanals fest. Er definiert damit die Haupt- und Mitschleppachsen (siehe folgende Tabelle). Zulässig sind mathematische Ausdrücke, deren Ergebnisse im Wertebereich [0 ... Maximale Achsanzahl-1] liegen. Der Achsindex darf noch nicht mit einer Achse belegt sein.

Index

Achskonfiguration

0

1. Hauptachse in der Bearbeitungsebene.

1

2. Hauptachse in der Bearbeitungsebene.

2

3. Hauptachse, i.a. senkrecht zur Bearbeitungsebene.

3

1. Mitschleppachse.

...n

(n-2). Mitschleppachse.

Achtung

attention

Zur Erleichterung der Programmierung ist es möglich, für Mitschleppachsen die Angabe des Achsindex leer zu lassen. In diesem Fall wird dann automatisch der nächste freie Platz ab Index 3 an diese Mitschleppachse vergeben.

Für Hauptachsen muss der Index immer explizit angegeben werden.

Zu beachten ist jedoch, dass für verschiedene Funktionalitäten der Index einer Mitschleppachse eine Bedeutung hat. Zum Beispiel müssen bei der kinematischen Transformation (RTCP) alle Trafo-Achsen lückenlos nach den Hauptachsen angeordnet werden. In diesen Fällen ist es deshalb notwendig, den Achsindex auch für die Mitschleppachsen explizit zu programmieren.

Hinweis

notice

Bei Konflikten innerhalb der programmierten Achstauschsequenz:

Redundante Achsnummern → FEHLER, Programmabbruch.

Bei Konflikten zu bereits im NC-Kanal vorhandenen Achsen:

Achsindex im Kanal bereits belegt, Achsnamen verschieden → FEHLER, Programmabbruch.

Bei gesetztem Logikschalter IDX wird Konflikt wie folgt bereinigt:

Für die Achse wird automatisch der nächste freie Index in der Achskonfiguration des NC-Kanals bestimmt.

<Optionen>

Versatzmaße werden achsspezifisch gehalten. Es handelt sich dabei um:

  • Bezugspunktverschiebung,
  • Platzversatz,
  • Werkzeugverschiebung,
  • Nullpunktverschiebung,
  • Messoffset,
  • Sollwertoffset,
  • Istwertverschiebung.

Mit den Schlüsselwörtern aus der folgenden Tabelle kann beim Anfordern von Achsen die Übernahme der Versätze gesteuert werden.

Hinweis

notice

Mit Ausnahme der Werkzeugversätze sind alle anderen Versätze beim Abgeben und Anfordern stets an die logische Achsnummer gebunden.

Schlüsselwort

Anfordern der Achse und

 

keine Übernahme der Versätze (Default)

ALL

Übernahme aller Versätze *

BPV

Übernahme der Bezugspunktverschiebung

PZV

Übernahme des Platzversatzes

WZV

Übernahme der Werkzeugverschiebung *

NPV

Übernahme der Nullpunktverschiebung

MOFFS

Übernahme des Messoffsets

SOFFS

Übernahme des Sollwert/Handbetriebsoffsets

PSET

Übernahme der Istwertverschiebung

Achtung

attention

* Die Übernahme von Werkzeugverschiebungen ist bei #AX REQUEST nur bei abgewähltem Werkzeug sinnvoll. Sobald ein Werkzeug im Kanal bereits aktiv ist oder nach dem Achstausch mit #AX REQUESTangewählt wird, werden die übernommenen Werkzeugversätze durch die Versätze des aktuellen Werkzeuges ersetzt!

Es wird daher empfohlen, #AX REQUEST bei abgewähltem Werkzeug durchzuführen!

Bei der Werkzeuganwahl ist zu beachten, dass die Versätze immer gemäß der, in den Werkzeugdaten indizierten Reihenfolge in die Achsen eingerechnet werden.

Beispiel

example

Anwenden der Standardfunktionalität:

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes bei Programmstart:

Achsbezeichnung

logische Achsnummer

Achsindex

X

1

0

Y

2

1

Z

3

2

Programmierbeispiel

prg_example

%Achstausch1

N10 #AX REQUEST [X1,7,4]     ;X1-Achse anfordern

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes nach der Achsanforderung:

Achsbezeichnung

logische Achsnummer

Achsindex

X

1

0

Y

2

1

Z

3

2

 

 

3

X1

7

4

Fortsetzung des Programmierbeispiels:

N100 #AX REQUEST  [Y1,8,6] [C,9, ] ;Y1- und C-Achse anfordern,

                                   ;C-Achse wird automatisch auf

                                   ;Index 3 gelegt

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes nach der zweiten Achsanforderung:

Achsbezeichnung

logische Achsnummer

Achsindex

X

1

0

Y

2

1

Z

3

2

C

9

3

X1

7

4

 

 

5

Y1

8

6

Fortsetzung des Programmierbeispiels:

N1000 #AX REQUEST FAST [Z1,13,5,ALL]  ;Übernahme sämtlicher Versätze

N1010 #AX REQUEST [C1,11,7,NPV MOFFS] ;Übernahme Nullpunktver-

                                      ;schiebung und Messoffset

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes nach der dritten Achsanforderung:

Achsbezeichnung

logische Achsnummer

Achsindex

X

1

0

Y

2

1

Z

3

2

C

9

3

X1

7

4

Z1

13

5

Y1

8

6

C1

11

7

Beispiel 2:

Nutzen der zusätzlichen Syntax (Logikschalter):

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes bei Programmstart im Kanal 1:

Achsbezeichnung

logische Achsnummer

Achsindex

X

1

0

Y

2

1

Z

3

2

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes bei Programmstart im Kanal 2:

Achsbezeichnung

logische Achsnummer

Achsindex

X

7

0

Y

8

1

Z

9

2

Programmierbeispiel

prg_example

In Kanal 1: Anfordern der X- und Y-Achse aus Kanal 2 (Logische Achsnummern 7 und 8).

%Achstausch

N10 #AX REQUEST NAM [X,7,3] [Y,8,4]   ;X/Y-Achsen anfordern

Durch den Logikschalter NAM werden die zusätzlichen neuen Achsen X und Y im Kanal 1 mit ihren Defaultnamen aus den Achslisten (z.B. X2 und Y2) belegt.

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes nach den Achsanforderungen:

Achsbezeichnung

logische Achsnummer

Achsindex

X

1

0

Y

2

1

Z

3

2

X2

7

3

Y2

8

4

Fortsetzung des Programmierbeispiels:

In Kanal 1: Anfordern der Z-Achse aus Kanal 2 (Logische Achsnummer 9).

N100 #AX REQUEST NAM IDX [Z,9,2]  ;Z-Achse anfordern

Durch die Logikschalter NAM und IDX wird im Kanal 1 die zusätzliche neue Z-Achse mit ihrem Defaultnamen aus der Achsliste (z.B. Z2) auf einen noch freien Index (z.B. Index 5) übernommen.

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes nach der zweiten Achsanforderung:

Achsbezeichnung

logische Achsnummer

Achsindex

X

1

0

Y

2

1

Z

3

2

X2

7

3

Y2

8

4

Z2

9

5

Beispiel 3:

Nutzen der zusätzlichen Syntax (Logikschalter und Achstauschsequenz als String):

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes bei Programmstart im Kanal 1:

Achsbezeichnung

logische Achsnummer

Achsindex

X

1

0

Y

2

1

Z

3

2

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes bei Programmstart im Kanal 2:

Achsbezeichnung

logische Achsnummer

Achsindex

X_1

7

0

Y

8

1

Z

9

2

A

10

3

B

11

4

Programmierbeispiel

prg_example

In Kanal 1: Anfordern der X_1/ Y und B-Achse aus Kanal 2 (Logische Achsnummern 7, 8 und 11). Die Achstauschsequenz ist in einem Makro abgelegt.

%Achstausch

N05 "ACHSEN_KANAL2" = "[X_1,7,0] [Y,8,1] [B,11,2]"

:

N10 #AX REQUEST NAM IDX "ACHSEN_KANAL2" ;Achsen anfordern

Durch die Logikschalter NAM und IDX werden im Kanal 1 die zusätzlichen neuen Achsen korrekt übernommen.

Zuordnung der Achsbezeichnungen, logischen Achsnummern und Achsindizes nach den Achsanforderungen:

Achsbezeichnung

logische Achsnummer

Achsindex

X

1

0

Y

2

1

Z

3

2

X_1

7

3

Y2

8

4

B

11

5