Circular Interpolation (G02, G03, IJK, U)
G02 clockwise circular interpolation
Command | G2 or G02 |
Cancellation |
Set the interpolation mode to “circular/helical, clockwise”. The interpolation mode applies to this block and all succeeding blocks until it is reset by G00
, G01
or G03
. If G02
is active, programming of a point will result in a circular (or helical) arc that is machined with the current velocity. (See General Codes (F, N, Q, X, Y, Z, A, B, C).) In the following, a circular arc is regarded. The helical arc is covered later.
A circular arc starts at the current point and ends at the programmed point. It rotates around the working-plane normal (PCS, i.e. program coordinate system) in the center point. The center point can be defined using Centerpoint Programming or using Radius Programming.
Centerpoint Programming I, J, K
For Centerpoint Programming the center is standardly defined relative to the starting-point using the I,J,K
parameters. The center point is the sum of the starting-point and the vector [I,J,K]
. Alternatively, the center point can also be specified as absolute. For this the reference type must be set to absolute in advance with the ST command circleCenterReferenceSet. The I,J,K
parameters are optional and have 0
value by default. If the starting-point and the endpoint are equal with respect to the workingplane, a full circle will be emitted.
CONSTRAINTS:
|
Radius Programming U
For Radius Programming the center point is derived from the radius that is given by the U
parameter. Typically, there are two arcs of a given radius that lead from the starting-point to the endpoint. If the radius is positive, the shorter one is used, otherwise the longer one is chosen. Apart from that, the absolute value of the radius is regarded by the interpreter.
CONSTRAINTS:
|
Helical
If the starting-point and endpoint do not lie in a plane that is parallel to the workingplane, a helical movement is performed.
TIP: moveCircle3D The |
Example:
The following example results in the path that is shown in Figure “ExampleG00G02”. The block N10
uses Radius Programming to define a clockwise arc from X0
Y0
to X10
Y10
with radius 10
. Because the radius is positive, the center point c1
of the shorter arc is chosen. In block N30
the center point c2
of the longer arc is used because the radius is negative. The block N50
uses Centerpoint Programming, where the center c3=[60,0,0]
is the sum of the starting-point [50,0,0]
and [I,J,K]=[10,0,0]
. The block N70
defines a full circle with center point C04
because the starting-point and endpoint are equal. The block N90
defines a helical arc with center point C05
and height 30
(in Z
-direction).
N01 G00 X0 Y0
N10 G02 X10 Y10 U10 F6000
N20 G00 X30 Y0
N30 G02 X40 Y10 U-10
N40 G00 X50 Y0
N50 G02 X60 Y10 I10
N60 G00 X80 Y0
N70 G02 J10
N80 G00 X110 Y0
N90 G02 J10 X120 Y10 Z30
M30
Figure “ExampleG00G02”.
G03 anticlockwise circular interpolation
Command | G3 or G03 |
Cancellation |
Set the interpolation mode to “circular/ helical, counterclockwise”. This interpolation behaves similar to G02
. The interpolation mode applies to this block and all succeeding blocks until it is reset by G00
, G01
or G02
.
Centerpoint Programming I<vx> J<vy> K<vz>
Defines the center point for circular movements. See G2, G3 for details. The center point is defined as currentPoint + [vx,vy,vz]
. The current length unit is used for vx
, vy
, vz
. The parameters I
, J
, K
are optional and have a 0
default value.
Radius Programming U<v>
In the context of G2
or G3
the radius is set to |v|
. The current length unit is used for v
. If v
is positive, the shorter arc is used to interpolate between the current and the next point. If v
is negative, the longer one is used. See G2, G3 for details.
G303
With G303 an circular arc (a CIP circle) can be programmed, that can be freely located in space.
The CIP circle can also be used to program a circle anywhere in space. For this purpose, it is necessary to program not only an end point but also some other point on the path.
So that the circle can be described unambiguously, it is necessary, that the three points (the starting point is given implicitly) must not be collinear. It is thus not possible to program a full circle in this way.
I, J and K are available as path point parameters. By default, their values are relative to the starting point of a circular path.
G90
N10 G01 F2000 X0 Y0 Z0// P1 (start point): X, Y, Z,
N20 G303 I30 J-15 K15 X60 Y0 Z30// P2 (path point): I, J, K
// P3 (end point): X, Y, Z
N30 M02
Requirements G303
TwinCAT | GST |
---|---|
TwinCAT V3.1.4024.40 | GST 3.1.8.62 |