In CNC programming, there are two modes of specifying the feed rate: feed per minute (FPM) and inverse time (IT). Feed per minute is the most common mode, where the feed rate is given in units of distance per minute, such as inches per minute (IPM) or millimeters per minute (MM/MIN). Inverse time is a less common mode, where the feed rate is given in units of time per distance, such as minutes per inch (MPI) or minutes per millimeter (MM/MIN).
Usage format
The G93 code is used to activate the inverse time mode. The format of the G93 code is:
G93 Fx
where x
is the inverse time feed rate in minutes per unit of distance. For example, G93 F0.5
means the feed rate is 0.5 minutes per inch, or 30 seconds per inch.
The G93 code must be followed by a motion command, such as G01 (linear interpolation), G02 (circular interpolation clockwise), or G03 (circular interpolation counterclockwise). The motion command must include the coordinates of the end point of the motion, such as X, Y, and Z. The feed rate will be calculated based on the distance and the inverse time value.
Explanation
The inverse time mode is useful for situations where the feed rate needs to be constant regardless of the geometry of the motion. For example, if the tool is moving along a circular arc, the feed rate in feed per minute mode will vary depending on the radius of the arc. However, in inverse time mode, the feed rate will be the same for any arc, as long as the inverse time value is the same.
The inverse time mode is also useful for situations where the feed rate needs to be synchronized with the spindle speed. For example, if the tool is cutting a thread, the feed rate must match the pitch of the thread and the spindle speed. In inverse time mode, the feed rate can be easily adjusted by changing the inverse time value.
Example
Here is an example of using the G93 code to cut a circular pocket with a diameter of 2 inches and a depth of 0.1 inch. The spindle speed is 1000 RPM and the feed rate is 0.01 minutes per inch.
N10 G90 G94 ; Set absolute distance mode and feed per minute mode
N20 M03 S1000 ; Start spindle clockwise at 1000 RPM
N30 G00 X1 Y0 Z0.1 ; Rapid move to the center of the pocket at 0.1 inch above the surface
N40 G43 H01 Z0.05 ; Activate tool length compensation with tool #1 and move to 0.05 inch above the surface
N50 G93 F0.01 ; Set inverse time mode with 0.01 minutes per inch feed rate
N60 G02 X2 Y0 I1 J0 Z0.1 ; Cut a circular pocket clockwise with a radius of 1 inch and a depth of 0.1 inch
N70 G01 X1 Y0 ; Move back to the center of the pocket
N80 G94 ; Set feed per minute mode
N90 G00 Z0.1 ; Rapid move to 0.1 inch above the surface
N100 M05 ; Stop spindle
N110 G91 G28 Z0 ; Return to reference position
N120 M30 ; End of program
Here is a text diagram to explain the motion of the tool:
Z

 /\
 / \
 / \
 / \
/ \
++> X
/ /
/  / 
/  / 
/  / 
 / 
 / 
 / 
 / 
 / 
/ 
++
/ /
/ /
/ /
/ /
 /
 /
 /
 /
 /
 /
 /
 /
 /
/
+> Y