Special function: circle radius compensation in combination with G164
In certain situations, circle centre point compensation (G165) can lead to an unfavourable offset in the programmed circle centre point and therefore the circle's position. Such unfavourable situations may occur when the circle starting and target points are close together and the circle is almost equivalent to a programmed full circle.
This type of circle with specified target point with and without circle centre point compensation (G165/G164) is programmed in the example below. To simulate the resolution error in the post-processor and when circle centre point compensation is active, the circle's target point is shifted by 0.1μm in each case in the x and y directions relative to the starting point. The circle with G165 is rotated about the starting point and the position of the compensated circle centre point MK shifts very considerably relative to the programmed centre point M.
Programing Example
Special function: circle radius compensation in combination with G164
N10 G00 G90 X0 Y0 Z0
N20 G01 X-50 Y0 F20000
N30 G01 X0
N40 G165 G02 X0.0001 Y0.0001 J200
N50 G01 Y50
M30
N10 G00 X0 Y0 Z0
N20 G01 X-50 Y0 F20000
N30 G01 X0
N40 G164 G02 X0.0 Y0.0 J200
N50 G01 Y50
N60 M30
In such cases a better result can generally be obtained when circle centre point compensation (G164) is disabled and when max_radius_diff_circle > 0 (P-CHAN-00171) and max_proz_radius_diff_circle (P-CHAN-00172) are set. The programmed circle centre point is not changed by the function and the circle radius difference is transferred linearly by the circle’s angle from the starting radius to the target radius.
If the circle radius deviations lie in the order of magnitude of the resolution accuracy, the circle distortions and dynamic effects are generally negligible.
Notice
For a full circle, the circle starting and target points must be identical in this case.