K3: Compensation5.4 Interpolatory compensationExtended Functions364 Function Manual, 09/2009, 6FC5397-1BP20-0BA0Program code Comment$AA_ENC_COMP[0,2,X1]=0.012 ; 3rd compensation value (interpolation point 2); +12μm$AA_ENC_COMP[0,800,X1]=-0.0 ; Last compensation value (interpolation point800)$AA_ENC_COMP_STEP[0,X1]=1.0 ; Distance between interpolation points 1.0 mm$AA_ENC_COMP_MIN[0,X1]=-200.0 ; Compensation starts at -200.0 mm$AA_ENC_COMP_MAX[0,X1]=600.0 ; Compensation ends at +600.0 mm$AA_ENC_COMP_IS_MODULO[0,X1]=0 ; Compensation without modulo functionM17For this example, the configured number of interpolation points must be ≥ 801:MD38000 $MM_ENC_COMP_MAX_POINTS ≥ 801The memory required in the static user memory is 6.4 kbytes (8 bytes per compensationvalue).5.4.3 Compensation of sag and angularity errors5.4.3.1 Description of functionsSag errorsWeight can result in position-dependent displacement and inclination of moved parts since itcan cause machine parts and their guides to sag.Also large workpieces (e.g. cylinders) sag under their own weight.Angularity errorsIf moving axes are not positioned in exactly the required angle (e.g. perpendicular) withrespect to one another, increasingly serious positioning errors will occur as the deviationfrom zero point becomes greater.CompensationIn contrast to the MSEC, the base and compensation axes need not be identical for "Sagcompensation" or "Angularity error compensation", requiring an axis assignment in everycompensation table.In order to compensate for sag of one axis (base axis) which results from its own weight, theabsolute position of another axis (compensation axis) must be influenced. "Sagcompensation" is therefore an inter-axis compensation.As illustrated in the diagram below, the further the machining head moves in the negative Y1axis direction, the more the cross-arm sags in the negative Z1 axis direction.