Programming Systems  CNC programming Basics  GCode  MCode  Incremental and Absolute Programming System  Interpolation  Linear Interpolation  Circular Interpolation
Interpolation
The method by which contouring machine tools move from one programmed point to the next is called interpolation. This ability to merge individual axis points into a predefined tool path is built into most of today’s MCUs.
There are five methods of interpolation:

linear

circular

helical

parabolic

cubic
All contouring controls provide linear interpolation, and most controls are capable of both
linear and circular interpolation. Helical, parabolic, and cubic interpolation are used by industries that manufacture parts which have complex shapes, such as aerospace parts and dies for car bodies.
Linear Interpolation
Linear Interpolation consists of any programmed points linked together by straight lines, whether the points are close together or far apart
Curves can be produced with linear interpolation by breaking them into short, straightline segments. This method has limitations, because a very large number of points would have to be programmed to describe the curve in order to produce a contour shape. A contour programmed in linear interpolation requires the coordinate positions (XY positions in twoaxis work) for the start and finish of each line segment. Therefore, the end point of one line or segment becomes the start point for the next segment, and so on, throughout the entire program.
Circular Interpolation
The development of MCUs capable of circular interpolation has greatly simplified the process of programming arcs and circles. To program an arc, the MCU requires only the coordinate positions (the XY axes) of the circle center, the radius of the circle, the start point and end point of the arc being cut, and the direction in which the arc is to be cut (clockwise or counterclockwise)
Codes:
The most common codes used when programming CNC machines tools are

Gcodes (preparatory functions), and

M codes (miscellaneous functions).
Other codes such as F, S, D, and T are used for machine functions such as feed, speed, cutter diameter offset, tool number, etc.
GCode
Gcodes are sometimes called cycle codes because they refer to some action occurring on the X, Y, and/or Z axis of a machine tool.
Group  Code  Function 
01  G00  Rapid Positioning 
01  G01  Linear Interpolation 
01  G02  Circular Interpolation clockwise (CW) 
01  G03  Circular Interpolation Counter clockwise (CCW) 
06  G20*  Inch input (in.) 
06  G21*  Metric Input (mm) 
G24  Radius Programming (**)  
00  G28  Return to Reference Point 
00  G29  Return from Reference Point 
G32  Thread Cutting (**)  
07  G40  Cutter Compensation Cancel 
07  G41  Cutter Compensation Left 
07  G42  Cutter Compensation Right 
08  G43  Tool length compensation positive 
08  G44  Tool length compensation minus 
08  G49  Tool Length Compensation Cancel 
G84  Canned Turning Cycle (**)  
03  G90  Absolute Programming 
03  G91  Incremental Programming 
(*) – on some machines and controls, these may be G70 (inch) and G71 (metric)
(**) – refers only to CNC lathes and turning centers.
MCODE:
M or miscellaneous codes are used to either turn ON or OFF different functions which control certain machine tool operations.
Code Function
M00 Program stop
M02 End of program
M03 Spindle start (forward CW)
M04 Spindle start (reverse CCW)
M05 Spindle stop
M06 Tool change
M08 Coolant on
M09 Coolant off
M10 Chuck – clamping (**)
M11 Chuck – unclamping (**)
M12 Tailstock spindle out (**)
M13 Tailstock spindle in (**)
M17 Tool post rotation normal (**)
M18 Tool post rotation reverse (**)
M30 End of tape and rewind
M98 Transfer to subprogram
M99 End of subprogram
(**) – refers only to CNC lathes and turning centers.
Tags: arcs and circles, axes, car bodies, circular interpolation, cnc machines, contour shape, cubic interpolation, helical, line segment, linear interpolation, machine tools, mcu, mcus, programming basics, programming cnc, programming system, programming systems, straight line segments, straight lines, tool path
You can comment below, or link to this permanent URL from your own site.
September 20, 2011 at 3:51 am
I’d should look at with you right here. Which can be not something I typically do! I just take satisfaction in looking at a submit which will make individuals assume. Moreover, many thanks for permitting me to comment!
September 20, 2011 at 4:12 pm
I couldn’t resist commenting
September 20, 2011 at 9:01 pm
This can be a excellent guidelines specially to individuals new to blogosphere, short and correct information… Many thanks for sharing this 1. A ought to study report.
September 21, 2011 at 5:44 am
I would like to thnkx with the efforts you’ve set in creating this web site. I’m hoping the same highgrade weblog publish from you in the upcoming as well. In fact your creative creating abilities has inspired me to acquire my own weblog now. Genuinely the running a blog is spreading its wings quickly. Your write up can be a excellent example of it.