Controlling centre point offset in circle (G164/G165)
Syntax: | ||
G164 | Centre point compensation OFF | modal |
G165 | Centre point compensation ON | modal, initial state |
When G165 is active, a circle programmed by an I, J and K statement is compensated in such a way that an arc can be interpolated if the circular direction (G02/G03), start position (end point of the previous block) and end point (coordinates in the circular block). The centre point programmed with I, J and K may then be offset. The more precise the centre point is specified, the less the centre point offset will be.
If the circle is programmed by specifying a radius R, no circle centre point compensation is effective since the centre point is then always calculated exactly here. |
For the deviation from programmed to compensated centre point, two limit values P-CHAN-00059 and P-CHAN-00060 are monitored. If they are exceeded, an error message is output:
mittelpkt_diff: Permissible deviation in 10-4 mm
mittelpkt_faktor: Percentage deviation in 0.1%
A check is made whether the centre point offset ?m is greater than the absolute value "mittelpkt_diff"
?m > mittelpkt_diff?
and whether the centre point offset ?m is greater than the product of "mittelpkt_faktor/1000" and the corrected radius "radius".
?m > mittelpkt_faktor/1000 * radius?
Therefore, the upper limit for ?m is linearly dependent on the calculated radius. This results in the relationship shown between the centre point offset ?m and the calculated radius "radius".
Example:
"mittelpkt_faktor" = 5 signifies that the distance between the programmed centre point coordinates and the compensated centre point coordinates may be maximum 0.5% of the compensated radius of the circle.
The programmed centre point coordinates must then lie in a circumcircle about the compensated centre point of the circle. The radius of this circumcircle corresponds to the permissible centre point offset ?m which can be set using the two parameters 'mittelpkt_diff' and 'mittelpkt_faktor':