Professional Documents
Culture Documents
A translation of linear axis positions into curved tool motions is called circular interpolation. Another definition is
Circular Interpolation commands are used to move a tool along a circular arc to the commanded end position.
Circular interpolation requires five pieces of informations; an endpoint, a feed rate, a center, a radius, and a
direction of movement. Circular interpolation is a motion of tool in circle. It may be a complete circle or less than.
Before going to discuss five pieces of information for circular interpolation, first it is very important to understand the
elements of circle in detail.
ELEMENTS OF A CIRCLE
ELEMENTS OF A CIRCLE
DEFINATION OF CIRCLE
A circle is defined as a closed curve on a plane, where all points have the same distance from an internal point
called the circle center point.
RADIUS
The radius of a circle is the line segment from the center point to any point on the circle.
DIAMETER
The diameter of a circle is the line segment through the center point of the circle and having both end points on the
circle.
QUADRANT
A quadrant is any one of the four parts of the plane formed by the system of rectangular coordinates.
It is to every programmers benefit to understand the concept of quadrants and their application for circular motions
in milling and turning programs. A circle is programmed in all four quadrants, due to its nature, while most arcs are
programmed within one or two quadrants. When programming the arc vectors I, J, and K, the angular difference
between the arc start and end points is irrelevant. The only purpose of arc vectors is to define a unique arc radius
between two points.
Five pieces of information are required for executing a circular interpolation command.
Circular Motion
Item Command
o R
o Or
o I = is the distance, with specified direction, measured from the start
point of the arc, to the center of the arc, parallel the X axis.
o J= is the distance, with specified direction, measured from the start
o R method (arc radius) point of the arc, to the center of the arc, parallel the Y axis.
o Or o K= is the distance, with specified direction, measured from the start
o I J K method (arc center coordinate) point of the arc, to the center of the arc, parallel the Z axis.
With the help of above information we can easily say that there are two ways to specify the center of the circular arc
that you rotating around.
The first method is very simple and there is no extra ordinary effort is required to program an Arc or Circle. Just
mention the next point values of X, Y coordinate and use R+value. For many arc programming projects, the direct
radius can be used with the R address, available for majority of control systems. In this case, the angular difference
between the start and end points is very important, because the computer will do its own calculations to find the arc
center. The arc with the angular difference of 180 or less measured between the start and end points, uses
an R positive value. The arc, in which the angular difference is more than 180, uses an R negative value.
In the above picture, there are two circles. One is dash line circle and the other is solid. These two circles are
intersecting with each other at two points which are shown in black dots.
If the tool motion of dash circle is clockwise from start point to end point than the arc is less than 180. The code for
this motion of tool in absolute mode G90 will look like this.
And if the tool motion of solid circle is clockwise from start point to end point than the arc is more than 180. The
code for this motion of tool in absolute mode G90 will look like this.
When circular interpolation command is activated by a CNC program, any currently active tool motion command is
automatically canceled. This canceling motion is typically G00, G01 or a cycle command.
G90 X ____ Y____ defines the arc end point in the work co-ordinate system.
G91 X____ Y____ defines the signed distance of the arc end point from the arc start point
The axis of the Arc must be parallel to the X-, Y- or Z-axis of the machine coordinate system. The axis or the plane
perpendicular to the axis is selected with G17 (Z-axis, XY-plane), G18 (Y-axis, XZ-plane) or G19 (X-axis, YZ-plane).
I, J and K are the offsets from the current location. At one time only two of I, J, and K will be used. This will depend
on what arc plane has been selected
The I, J and K arguments specify the DISTANCE from the ARC START POINT to the CENTER POINT of the arc.
Note that the start point of the arc is NOT GIVEN in a G02 or G03 command. The start point is determined by the
location of the cutter when the command is implemented. Also, the center point is never given explicitly in the
command. I, J, and K are DISTANCES. If the geometry of the circle is impossible (to within .0001), an error is
usually thrown.
The following figure shows the four quadrants of circle and I, J calculation from start point to end point. Circle radius
is 50 mm.
Quad I from 0 to 90
Start Point X50 Y0
End Point X0 Y50
I -50
J 0
G03 X0 Y50 I-50 J0
Quad II from 90 to 180 Circular Interpolation Concepts
To program an arc when only the arc center is given (the radius is unknown) use the address letters I and J
o I relates to the address X and is the incremental value and direction (+/-) from the start point of the arc in the X axis to the
arc centre.
o J relates to the address Y and is the incremental value and direction (+/-) from the start point of the arc in the Y axis to the
arc centre.
Program an Arc only Arc Center is given
In this figure the procedure is very clear to calculate I and J values. From the point where arc is started always look
to wards arc midpoint. If the arc is less than a quadrant than you must find out the both I and J values.
R is easier to define, though its easier to make a mistake and get an incorrect radius. If R is used, and you make a
mistake with the start point or the end point, and the machine can still do the radius, and does it, then youll have an
incorrect radius.
If you make a mistake with the I, J , K method, the machine will be more likely to stop and give you an alarm before
executing it.
Though using an R in a G02 or G03 is still easier and the preferred method to manually program an arc.
What is R
R is the distance from the starting point to the center of the circle.
What is IJK
With a positive R, the control will generate a circular path of 180 degrees or less, but to generate a circular path of
over 180 degrees, then specify a negative R. When R is used, a complete 360 degree arc is not possible. X, Y, or Z
is required to specify an endpoint different from the starting point. So anything under a 360 degree arc can be
performed with an R command in a G02 or G03.
How to Cut 360 Degree Arc or Full Circle
Use of I, J, or K is the only way to cut a complete 360 degree arc; in this case, the starting point is the same as the
ending point and no X, Y, or Z is needed. To cut a complete circle of 360 degrees (360), you do not need to specify
an ending point X, Y, or Z; just program I, J, or K to define the center of the circle.
Example Program
NOTE: Example of circular moves are not using cutter compensation, so the circular moves are defined from the
center of the cutter around arc.
G02 G03 with R
O0010 (INTERPOLATION EXERCISE)
T1 M06 (1/2 DIA. 4FLT. END MILL)
G90 G54 G00 X-0.35 Y-0.25
S1450 M03
G43 H01 Z0.1 M08
G01 Z-0.625 F50.
X-0.25 F14.5
Y3.5
G02 X0.5 Y4.25 R0.75
G01 X3.5
G02 X4.25 Y3.5 R0.75
G01 Y0.25
X4.
G03 X3.75 Y0. R0.25
G01 Y-0.25
X-.35
G00 Z1. M09
G28 G91 Z.0 M05
M30
o G90 X ____ Y____ defines the arc end point in the work co-ordinate system.
o G91 X_____ Y____ defines the signed distance of the arc end point from the arc start point
o I____ J____ defines the signed distance of the arc start point from the center point of the arc
Circular interpolation is quite a bit more demanding on your machine as two axes have to be precisely coordinated.
Drawing a complete circle involves not just coordinated motion but reversal of direction at each of the 4 quadrant
points. These would be the points corresponding to 0, 90, 180, and 270 degrees.
N05 The tool traverses in rapid traverse on P1, three axes concurrently, spindle speed = 500 rpm, clockwise
N10 Infeed on Z-12, feed 100 mm/min
N15 Tool travels on a straight line in space on P2
N20 Retraction in rapid traverse
N30 End of program
Finished Part
After completing the machining process, your job will look like this.
Completed Part
Explanation of CNC G-Code
Circular interpolation is commonly used in profiling on CNC vertical and horizontal machining centers, as well as on
lathes and many other CNC machines, such as simple milling machines, routers, burners, water jet and laser
profilers, wire EDM, and others.
Circular interpolation is used for programming arcs or complete circles in such applications as outside and inside
radius, circular pockets, spherical or conical shapes, radial recesses, grooves, corner breaks, helical cutting, even
large counter bores, etc. The CNC unit will interpolate a defined arc with a very high precision, if the necessary
information is given in the program.
NOTE: you should understand two important things, first is arc start point and the second is arc center point. Find
the values of these things in X, Y axis.
Home work Exercise
ContourPlate
Home work Exercise 2
Contour Plate 2