Axis-specific variables (V.A.)

The code for axis-specific variables is "V.A. ...". It can be specified in 2 variants:

1: Axis name according to channel list (represented with “X” as example below)

2: Axis index [i] according to channel list where <i>: 0…31

Example: V.A.ABS.X  or  V.A.ABS[0]

Attention

attention

V.A. variables can only be programmed for linear and rotary axes but not for spindles.

Notice

notice

Read access to the variables with the identifier LFlush causes flushing of the NC channel.

For example, flushing the NC channel can result in the error ID 20651 if tool radius compensation (G41/G42) is active.

V.A.<var_name>

Meaning

Data type

Unit for
input/output

Permitted access
Read /
Write

MENT.X

Virtual coordinate of the previous NC block

(see Section Mirroring G20-G23)

Real

[mm, inch]

L

PROG.X

Programmed coordinate of the previous NC block During active contour rotation (#ROTATION) the variable supplies the coordinate value mapped onto the machine axes.

Real

[mm, inch]

L

ABS.X

Absolute coordinate of the previous NC block or current absolute coordinate after NC command #CHANNEL INIT each in the currently active coordinate system

Real

[mm, inch]

L

ACS.ABS.X

Current actual axis position in the present coordinate system without offsets.

Real

[mm, inch]

L

ACS.ABS.X

Current actual position during active transformation mapped onto the machine axes.

Real

[mm, inch]

L

-SWE.X

Current effective negative software limit switch

Real

[mm, inch]

L

+SWE.X

Current effective positive software limit switch

Real

[mm, inch]

L

-SWE_MDS.X

Configured negative software limit switch (acc. to P-AXIS-00177).

Real

[mm, inch]

L

+SWE_MDS.X

Configured positive software limit switch (acc. to P-AXIS-00178).

Real

[mm, inch]

L

REF.X

Machine reference point (only assigned after successful machine reference search)

Real

[mm, inch]

L

BZP.X

Reference point offset

Real

[mm, inch]

L

PZV.X

Clamp position offset

Real

[mm, inch]

L

MESS.X

After measurement run completed, supplies the axis-specific measured value in the coordinate system in which measurement took place. The value includes all offsets in the calculation

With 2.5D: ACS values or with CS / TRAFO: PCS values

Real

[mm, inch]

L

Release Note

release_note

As of Build V2.11.2020.07, the axis-specific variables V.A.MEAS.ACS.VALUE and V.A.MEAS.PCS.VALUE supplement the variable V.A.MESS. The additional variables supply the measured value both in the axis coordinate system including all offsets and also the measured value in the programming coordinate system without offsets.

MEAS.ACS.VALUE.X

After measurement run completed, supplies the axis-specific measured value in the axis coordinate system (ACS). The value contains all offsets.

Real

[mm, inch]

L

MEAS.PCS.VALUE.X

After measurement run completed, supplies the axis-specific measured value in the programming coordinate system (PCS). The value does not contain any offsets

Real

[mm, inch]

L

MOFFS.X

Measurement offset

Real

[mm, inch]

L

MERF.X

Measurement run completed? If yes, then 1

Boolean

0 , 1

L

MEIN.X

Included measuring offset

Real

[mm, inch]

L

RERF.X

Homing completed? If yes, then 1

Boolean

0 , 1

L

MANUAL_OFFSETS.X
or SOFFS.X

Motion path in manual mode. Only practical in conjunction with NC command #GET MANUAL OFFSETS.

Real

[mm, inch]

L

MODE.X

Current axis mode

Integer

-

L

MODULO_VALUE.X

Modulo range

Real

[°]

L

LOG_AX_NR.X

Logical axis number of an axis

Integer

-

L

AX_LIST_NAME.X

Configured axis name (acc. to P-AXIS-00297)

String

-

L

AXIS_DEACTIVATED.X

Variable indicates whether the axis was parked via the HLI.

[as of V2.11.2813.00]

Boolean

-

LFlush

ENCODER2_VALUE.X

Current value of a second encoder (optional) in the drive

Real

[mm, inch]

LFlush

MIRROR.X

Mirror status of axis
(1: no mirroring -1: mirroring)

Integer

-

L

WCS.X

MCS.X

Convert between machine coordinates (MCS) and workpiece coordinates (WCS). Only practical in conjunction with the NC commands #WCS TO MCS and #MCS TO WCS

Real

[mm, inch]

R/W

DIAMETER_PROG.ABS.X

Supplies the value of P-AXIS-00058 if the following applies:
- Diameter programming (G51) is active
- Axis is configured as face turning axis
[as of Build V2.11.2051.00]

Boolean

0 , 1

L

DIAMETER_PROG.REL.X

Supplies the value of P-AXIS-00059 if the following applies:
- Diameter programming (G51) is active
- Axis is configured as face turning axis
[as of Build V2.11.2051.00]

Boolean

0 , 1

L

GEAR_LINK_ACTIVE.X

Does axis participate in a programmable axis coupling (#GEAR LINK ON […]) in the channel? If yes, then 1

Boolean

0 , 1

LFlush

ANTR_TYP.X

Configured drive type of an axis (as per P-AXIS-00020)

Integer

-

L

TRANSFORM.X

Supplies the calculated coordinate of an axis in the target CS in conjunction with #TRANSFORM

Real

[mm, inch]

L

TORQUE_NOM.X

Supplies the value of P-AXIS-00392. Required to convert torques or forces (with linear drives) into the drive format in conjunction with #DRIVE WR

Real

[Nm, N]

L

CROSS_COMP_INIT.X

Is cross compensation initialised for the axis? If yes, then 1

Boolean

0 , 1

LFlush

PLANE_COMP_INIT.X

Is plane compensation initialised for the axis? If yes, then 1

Boolean

0 , 1

LFlush

LEAD_COMP_INIT.X

Is leadscrew error compensation activated for the axis? If yes, then 1

Boolean

0 , 1

LFlush

TEMP_COMP_INIT.X

Is temperature compensation initialised for the axis? If yes, then 1

Boolean

0 , 1

LFlush

FRICT_COMP_INIT.X

Is friction compensation initialised for the axis? If yes, then 1

Boolean

0, 1

LFlush

CROSSTALK_COMP_INIT.X

Is crosstalk compensation initialised for the axis? If yes, then 1

Boolean

0, 1

LFlush

CROSS_COMP_ACTIVE.X

Is cross compensation active for the axis? If yes, then 1

Boolean

0 , 1

LFlush

PLANE_COMP_ACTIVE.X

Is plane compensation active for the axis? If yes, then 1

Boolean

0 , 1

LFlush

LEAD_COMP_ACTIVE.X

Is leadscrew error compensation active for the axis? If yes, then 1

Boolean

0 , 1

LFlush

TEMP_COMP_ACTIVE.X

Is temperature compensation active for the axis? If yes, then 1

Boolean

0 , 1

LFlush

FRICT_COMP_ACTIVE.X

Is friction compensation active for the axis? If yes, then 1

Boolean

0, 1

LFlush

CROSSTALK_COMP_ACTIVE.X

Is crosstalk compensation active for the axis? If yes, then 1

Boolean

0, 1

LFlush

BACKLASH_COMP_ACTIVE.X

Is backlash compensation active for the axis? If so, then 1
[as of V3.1.3081.05]

Boolean

0, 1

LFlush

As of CNC Build V2.11.2810 the following V.A. variables of the current compensation values are available.

LEAD_COMP_CURR.X

Current compensation value of LSEC for the axis

Real

[mm, inch]

LFlush

CROSS_COMP_CURR.X

Current compensation value of cross compensation for the axis

Real

[mm, inch]

LFlush

PLANE_COMP_CURR.X

Current compensation value of plane compensation for the axis

Real

[mm, inch]

LFlush

TEMP_COMP_CURR.X

Current compensation value of temperature compensation for the axis

Real

[mm, inch]

LFlush

FRICT_COMP_CURR.X

Current compensation value of friction compensation for the axis

Real

[mm, inch]

LFlush

CROSSTALK_COMP_CURR.X

Current compensation value of crosstalk compensation for the axis

Real

[mm, inch]

LFlush

BACKLASH_COMP_CURR.X

Current compensation value of backlash compensation for the axis
[as of V3.1.3081.05]

Real

[mm, inch]

LFlush

When strings are used for axis designation (e.g. X_SLIDE, see also Description of axis commands) these axis names are used to identify variables.

Example: V.A.MENT.X_SCHLITTEN

Programing Example

prg_example

N10 G90 G92 X50

N20 G100 X100                          ;Measurement run, interrupt 2mm before target

N30 G90 G92 X0

N40 XV.A.MESS.X YV.A.MOFFS.X          ;X at 148 (98+50) Y at 2

or

N40 XV.A.MEAS.ACS.VALUE.X YV.A.MOFFS.X ;X at 148 (98+50), Y at 2

N50 XV.A.MEAS.PCS.VALUE.X              ;X at 98