K3: Compensations
4.4 Interpolatory compensation
Extended Functions
Function Manual, 03/2013, 6FC5397-1BP40-3BA1
251
4.4.3.3 Examples
Compensation table for sag compensation of the Y1 axis
The following example shows the compensation table for sag compensation of the Y1 axis.
Depending on the position of the Y1 axis, a compensation value is applied to the Z1 axis.
The 1st compensation table with index = 0 is used for this.
Program code Comment
%_N_NC_CEC_INI ;
CHANDATA(1) ;
$AN_CEC[0,0]=0 ;1st compensation value (interpolation point 0)
; for Z1: ±0µm
$AN_CEC[0,1]=0.01 ;2nd compensation value (interpolation point 1)
; for Z1: +10µm
$AN_CEC[0,2]=0.012 ;3rd compensation value (interpolation point 2)
; for Z1: +12µm
... ;
$AN_CEC[0,100]=0 ; Last compensation value (interpolation point 101)
; for Z1: ±0µm
$AN_CEC_INPUT_AXIS[0]=(AX2) ; basic axis Y1
$AN_CEC_OUTPUT_AXIS[0]=(AX3) ; compensation axis Z1
$AN_CEC_STEP[0]=8 ; distance between interpolation points 8.0 mm
$AN_CEC_MIN[0]=-400.0 ; Compensation starts at Y1=-400 mm
$AN_CEC_MAX[0]=400.0 ; Compensation ends at Y1=+400 mm
$AN_CEC_DIRECTION[0]=0 ; Table applies for both directions of travel of Y1.
$AN_CEC_MULT_BY_TABLE[0]=0 ;
$AN_CEC_IS_MODULO[0]=0 ;compensation without modulo function
M17 ;
For this example, the configured number of interpolation points must be ≥ 101:
MD18342 $MN_MM_CEC_MAX_POINTS[0] ≥ 101
The memory required in the static user memory is at least 808 bytes (8 bytes per
compensation value).