Request for axes

Notice

notice

If an axis which is already present in the axis group of the NC channel is requested, no request is triggered for this axis.

The following NC command requests axes from the axis management.

#CALL AX [<Mode>] [<Axis_name>,<axis_number>,<axis_index> {,<options>} ]

                                   { [<axis_name>,<axis_number>,<axis_index> {,<options>} ] } (non-modal)

<Mode>

With/without request for axis positions from the interpolator and a position initialisation of the NC channel when axes are replaced.

Mode

Requesting an axis in the NC channel

 

Default setting: With the request for set values from the interpolator and a position initialisation of the NC channel,

FAST

Without request for set values from the interpolator. Position initialisation of the NC channel.

axis_name>

The permissible strings for axis designation start with the letters A, B, C, Q, U, V, W, X, Y and Z. The multiple assignment of the same designation for several axes (identification by logical axis number) generates an error message and the NC program is aborted.

<Axis_number>

The physical assignment of axes takes place via the logical axis number. Mathematical expressions are permissible. The logical axis number must be known in the axis management. If an unknown logical axis number or several identical logical axis numbers are requested, it results in an error message and the NC program is aborted.

<Axis_index>

The axis index defines the location of the axis inside the axis group of the NC channel. It then defines the main and the tracking axes (see the table below). Mathematical expressions are permissible if their results are within the range [0... maximum axis number -1]. The axis index may not yet be assigned an axis. If a request is made for an index that is already assigned a different axis, it results in an error message and the NC program is aborted.

 

Index

Axis configuration

0

1. Main axis in the machining plane.

1

2. Main axis in the machining plane.

2

3. Main axis generally perpendicular to the machining plane.

3

1. Tracking axis.

...n

(n-2). Tracking axis.

Attention

attention

In order to simplify programming, it is possible to leave the specification of an axis index empty for tracking axes (only with #CALL AX...). In this case, the next free axis index after index 3 is then assigned automatically to this tracking axis.

With main axes the index must always be specified explicitly.

However, it must be noted that the index of a tracking axis is important with regard to various functionalities. For example, with kinematic transformations (RTCP) all transformation axes must be arranged with no gaps after the main axes. In such cases, it is then necessary to program the axis index explicitly for the tracking axes.

<Options>

Offsets are kept axis-specific. This refers to the following offsets:

Offset adoption for requesting axes can be controlled using the keywords from the table below.

Notice

notice

With exception of tool offsets, all other offsets are always attached to the logical axis number an axis release or request (see programming example "Zero_offset" below).

Keyword

Request axes and

 

No adoption of offsets (default)

ALL

Adopt all offsets *

BPV

Adopt reference point offset

PZV

Adopt clamping offset

WZV

Adopt tool offset *

NPV

Adopt zero offset

MOFFS

Adopt measuring offset

SOFFS

Adopt manual mode offset

PSET

Adopt position preset

Attention

attention

* With #CALL AX, adoption of tool offsets only makes sense when the tool is deselected. As soon as a tool is active in the channel or if it is selected with #CALL AX after replacement, the adopted tool offsets are replaced with the offsets of the current tool.

It is therefore recommended to execute #CALL AX when a tool is deselected.

When a tool is selected, please note that the offsets are always included in the axis calculations depending on the sequence indexed in the tool data.

Programing Example

prg_example

Request for axes

%Zero_Offset

N010 X200

N015 G54

N015 V.G.NP_AKT.V.X = 11

N016 X0                      (Final machine X-axis position is 11)

N020 #PUT AX [X]             (Release axis X with log. axis no. 1)

.....

N130 #CALL AX [X1,1,0,NPV]   (Call log. axis no. 1 under new name X1)

N140 X1=100                  (Final machine X1 axis position is 111)

M30

Example:

Assigning axis names, logical axis numbers and axis indices at program start:

Axis designation

logical axis identifier

Axis index

X

1

0

Y

2

1

Z

3

2

Programing Example

prg_example

%Achstausch1

N10 #CALL AX FAST [X1,7,4]    (X1 axis without manual mode offset request)

                              (and output of init. function block)

Assigning axis names, logical axis numbers and axis indices after the axis request:

Axis designation

logical axis identifier

Axis index

X

1

0

Y

2

1

Z

3

2

 

 

3

X1

7

4

Programming example continued:

:

N100 #CALL AX [Y1,8,6] [C,9, ]  (Request for Y1 and C axis, axis index
                                 of C axis is determined automatically)

Assigning axis names, logical axis numbers and axis indices after second axis request:

Axis designation

logical axis identifier

Axis index

X

1

0

Y

2

1

Z

3

2

C

9

3

X1

7

4

 

 

5

Y1

8

6

Programming example continued:

:

N1000 #CALL AX FAST [Z1,13,5,ALL]  (Adopt all offsets)

N1010 #CALL AX [C1,11,7,NPV MOFFS] (Adopt zero offsets)

                                   (and measuring offsets)

Assigning axis names, logical axis numbers and axis indices after third axis request:

Axis designation

logical axis identifier

Axis index

X

1

0

Y

2

1

Z

3

2

C

9

3

X1

7

4

Z1

13

5

Y1

8

6

C1

11

7