Programming

Syntax for Select by specifying the position of the workpiece surface:

#DIST CTRL [ WAIT ] ON | DRYRUN [ SURFACE [ SET_POS=.. ] ]

Syntax for Select by specifying a constant distance to the workpiece surface:

#DIST CTRL [ WAIT ] ON | DRYRUN [ CONST_DIST [ SET_DIST=.. ] ]

Syntax for Deselect:

#DIST CTRL [ WAIT ] OFF [ NO_MOVE ]

Syntax for Freeze offset:

#DIST CTRL [ WAIT ] FREEZE

Syntax for Test or reference sensor:

#DIST CTRL [ WAIT ] CHECK_POS | REF

Syntax for additional parameterisation (optionally, can also be programmed in combination with select/deselect):

#DIST CTRL [ [ MODE=<ident> ] [DIRECTION=<axis_name>] [ KP=.. ] [ I_TN=.. ] [ D_TV=.. ]
                        [ FILTER_TYPE=.. FILTER_TIME=.. ] [ N_CYCLES=.. ] [ FG_F0=.. ] [ ORDER=.. ]
                        [ SMOOTH_FACT=.. ] [ KALMAN_SIGMA=.. ] [SENSOR_SOURCE=<ident>]
                        [SENSOR_VAR=..] [ VAL1=.. - VAL5=.. ] { \ } ]

WAIT

In the WAIT option, a command waits before execution until distance control is completely activated or deactivated before the next NC command is executed

ON

Activate distance control

SURFACE

Activate distance control in combination with ON by specifying the position of the workpiece surface. A set position at activation must be set with SET_POS.

SET_POS=..

Specify the workpiece surface in [mm, inch] (absolute position). In the event of reset or program end, the set position is reset, i.e. a new set position must be specified before distance control is reactivated.

CONST_DIST

Activate distance control in combination with ON by specifying a constant distance to the workpiece surface. A distance must be set with SET_DIST at activation.

SET_DIST=..

Specify the constant distance to the workpiece surface in [mm, inch]. In the event of reset or program end, the distance is reset, i.e. a new distance must be specified before distance control is reactivated.

DRYRUN

In DRYRUN mode, the axis is not tracked when there are changes in the workpiece surface. This allows data to be evaluated without feedback from the controller (e.g. filter effect). [as of V3.1.3079.23]

In combination with SURFACE, a set position must be set with SET_POS.

In combination with CONST_DIST, a set position must be set with SET_DIST.

OFF

Deactivate distance control.

CHECK_POS

Check whether position is within the tolerance window.

FREEZE

Freeze the compensated control distance across the workpiece. The axis position or the output compensation value is maintained. Axis tracking is interrupted.

REF

Reference measuring system (sensor) (only if there is no absolute measuring system).

MODE=<ident>

The distance control offset is superimposed at the appropriate level. Valid identifiers:

PCS : Programmed coordinates

MCS : In the machine coordinate system (Cartesian basic system)

ECS : In the tool direction

ACS : At physical axis level

OFF : No superposition (DEFAULT)

Note: An active kinematic ID98 is required for a compensation motion in ECS. (#KIN ID[98], #TRAFO ON)

DIRECTION=
<axis_name>

Name of the axis to which PCS/MCS/ACS compensation is applied. At present, DIRECTION = Z is supported (DIRECTION=X/Y are in preparation.)

KP=..

Weighting the distance control output values. Parameterisation can be executed analogous to P-CHAN-00821. The value range is limited to 0.0 < KP <= 2.0. For KP values less than 1.0, the distance control dynamics are reduced; for KP values greater than 1.0, the dynamics are increased.

A KP factor less than 1 reduces a possible distance control oscillation and steadies control in the event of minor distance errors.

I_TN=..

Integral action time of the PID controller in [s]. The integral action time defines the time after which the P and I components of the manipulated variable are equal. Parameterisation can be executed analogous to P-CHAN-00822. The value range is limited to 0.0 <= I_TN <= 50.0. A large integral action time produces greater control stability. The shorter the integration action time, the greater the I component and the faster the control. A short integral action time excites oscillations more strongly.

D_TV=..

Derivative action time of the PID controller in [s]. The derivative action time defines the time after which the P and D components of the manipulated variable are equal. Parameterisation can be executed analogous to P-CHAN-00823. The value range is limited to 0.0 <= D_TV <= 2.0. The larger the derivative action time, the stronger the D component.

FILTER_TYPE=..

Filter type to filter sensor values according to P-CHAN-00825.

FILTER_TIME=..

If a value > 0 is specified, distance control activation and deactivation are smoothed by a sin² filter. The filter time is specified in interpolator cycles.

N_CYCLES=..

Number the measured values used for filtering according to P-CHAN-00800.

FG_F0=..

Cut-off frequency for the low-pass filter in [Hz] according to P-CHAN-00817.

ORDER=..

Order of the low-pass filter according to P-CHAN-00816.

SMOOTH_FACT=..

Smoothing factor of the exponential averaging filter according to P-CHAN-00827. Specifies the weighting of the current measured value.

KALMAN_SIGMA=..

Uncertainty of the included measured values according to P-CHAN-00826.

SENSOR_SOURCE=<ident>

Sensor signal source specified The following sources can be set for channel-specific distance control:

DEFAULT : If “DEFAULT” is selected as the sensor source, the CNC automatically sets to the “VARIABLE” sensor source internally.

VARIABLE : The sensor signal is transferred to the CNC by a V.E. variable. In addition, the name of the V.E. variable must also be specified by the parameter “SENSOR_VAR”.

SENSOR_VAR=..

Name of the V.E. variable which transfers the sensor signal to the CNC.

NO_MOVE

By default, the resulting correction offset is executed when distance control is switched off. This motion can be suppressed by specifying NO_MOVE in combination with OFF. The channel is initialised with the changed axis position. The position offset is only executed at the next axis motion programmed in the NC program.

VAL1=..-VAL5=..

Five freely assignable values in real format.

\

Separator ("backslash") for clear programming of the command over multiple lines.

Programing Example

prg_example

Use of axis-specific distance control with inclined tool

Example 1 - Behaviour as for axis-specific distance control

N010 G0 Z10

;Set the sensor input source

N020 #DIST CTRL [SENSOR_SOURCE=VARIABLE SENSOR_VAR=V.E.SENSOR]

;Activate distance control

N030 #DIST CTRL ON [CONST_DIST SET_DIST=1 MODE=ACS DIRECTION=Z]

;...

;Deactivate distance control with no wait Next block is executed immediately.

N900 #DIST CTRL OFF

N910 G0 Z0

N999 M30

Example 2 - Distance control with inclined tool and kinematic ID 98

; Parameterising the kinematic 98

: ----------------------------------

; HD1: Tool offset (100mm)

; HD2: Start limit angle (inclination to the perpendicular) Start of tool extension (30°)

; HD3: End limit angle (inclination to the perpendicular) End of tool extension (60°)

; HD4: maximum inclination -> error message (91°)

N010 V.G.KIN_STEP[1].ID[98].PARAM[0] = 1000000

N020 V.G.KIN_STEP[1].ID[98].PARAM[1] = 300000

N030 V.G.KIN_STEP[1].ID[98].PARAM[2] = 600000

N040 V.G.KIN_STEP[1].ID[98].PARAM[3] = 910000

; tool length (80mm)

N050 V.G.WZ_AKT.L = 80

; activate kinematic transformations ID9 and ID98.

N060 #KIN ID[9.98]

N070 #TRAFO ON

N080 G0 Z10

N090 G90 A=-45

; Set the sensor input source

N100 #DIST CTRL [SENSOR_SOURCE=VARIABLE SEN-SOR_VAR=V.E.SENSOR]

; Activate distance control in tool direction (surface 1mm)

N110 #DIST CTRL ON [SURFACE SET_POS=1 MODE=ECS DIRECTION=Z]

;...

; Deactivate distance control and wait until the deactivation process is completed.

N120 #DIST CTRL WAIT OFF

N130 G0 Z0

N140 M30