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=.. ] |
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= | 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
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