|
Breaking Arcs to Linear Motions
GPP2 can break any arc to linear motions, in every arc plane. There are several cases where GPP2 will break an arc into linear motions:
-
If the arc is in a plane that is not supported by the machine (based on the ARCS_CTRL_BYPLANE system flag)
-
If the arc radius is too large to be handled by the machine. This feature is turned on through a DF2 parameter. The large radius value (above which the arc is broken) is also a DF2 parameter, but can be later overridden by the GPP2 program through the system flag ARCS_LARGE_RAD.
-
If the arc is too small (based on its radius or its length). Here, the arc is simply replaced by one linear motion, from its start point to its end point. This feature is turned on through a DF2 parameter.
-
-
The small radius value (below which the arc is replaced by a linear motion) is set through a DF2 parameter that can be later overridden by the GPP2 program through the system flag ARCS_SMALL_RAD.
-
GPP2 also checks the arc length. The minimum length (below which the arc is replaced by a linear motion) is set through a DF2 parameter that can be overridden by the GPP2 program through the system flag ARCS_SMALL_LEN.
-
The arc will be replaced with a single linear motion if the feature is turned on and either its radius is too small or its length is too small.
-
If instructed to replace an arc with multiple linear motions, GPP2 will use the following algorithm:
-
The interpolation tolerance is calculated based on a DF2 parameter that defines if the tolerance is an absolute value or is dependent on the NC procedure tolerance.
-
-
If absolute, GPP2 will use the value of the CIRC_TOL system flag.
-
If procedure-dependent, GPP2 will use the part surface tolerance or contour tolerance, whatever is available. These values are specified at the BEGINNING OF PROC block. If both are available in a given procedure, GPP2 will use the smaller number.
-
Even if procedure-dependent, GPP2 will use CIRC_TOL as an upper limit for the tolerance (it will never be higher than this value).
-
-
The arc is broken into a number of identical length segments, based on the arc radius, angle and the calculated tolerance.
-
The number of segments may be increased if the DF2 file parameter "Arcs Linear Interpolation, Minimum Segments" is higher than the calculated number. This number may be overwritten by the GPP2 program through system flag ARCS_MIN_SEGS.
-
The number of segments may also be increased if the resulting segments are too long. A DF2 parameter defines the maximum length of each segment. The length may be overwritten by the GPP2 program through system flag ARCS_MAX_SEGLEN.
-
Finally, when the number of segments has been set to satisfy all the requirements, intermediary points are calculated along the arc, and multiple Linear Motion blocks are created, following the points from the arc start point to the arc end point.
|