G94 – Feed Per Minute

Author:

G94 is a G-code that instructs a CNC machine to move the tool at a specified feed rate in units per minute. G94 is also known as feed per minute mode or FPM mode. G94 is one of the most common and basic G-codes used in CNC programming.

Usage format

The general format of G94 is:

G94 Fnnn

where nnn is the feed rate in units per minute. The units can be either inches per minute (IPM) or millimeters per minute (MM/MIN), depending on the machine and the G20 or G21 setting.

For example, G94 F100 means move the tool at 100 IPM or 100 MM/MIN, depending on the units.

Explanation

G94 is used to control the speed of the tool movement along the linear or circular paths. G94 is often paired with other G-codes that define the direction and distance of the tool movement, such as G00 (rapid positioning), G01 (linear interpolation), G02 (circular interpolation clockwise), or G03 (circular interpolation counterclockwise).

G94 is a modal G-code, which means it remains active until another G-code from the same group is called. The group number of G94 is 05. The other G-code in the same group is G95, which is the feed per revolution mode or FPR mode.

G94 is usually set at the beginning of the program or a block, and it applies to all the subsequent blocks until G95 or another G-code from group 05 is called.

Example

Here is an example of a CNC program that uses G94 to cut a square with a side length of 1 inch or 25.4 mm:

% (Program start)
O0001 (Program number)
G20 (Inch units) or G21 (Millimeter units)
G90 (Absolute positioning)
G94 F10 (Feed per minute mode, 10 IPM or 10 MM/MIN)
G00 X0 Y0 (Rapid positioning to origin)
G01 X1 (Linear interpolation to X=1)
G01 Y1 (Linear interpolation to Y=1)
G01 X0 (Linear interpolation to X=0)
G01 Y0 (Linear interpolation to Y=0)
G00 X2 Y2 (Rapid positioning to X=2, Y=2)
M30 (Program end)
% (Program end)

The text diagram of the tool path is shown below:

Y
^
|
|     X2,Y2
|     *
|    / \
|   /   \
|  /     \
| *-------* X1,Y1
| |       |
| |       |
| |       |
| *-------* X0,Y0
|/
+-----------> X

Leave a Reply

Your email address will not be published. Required fields are marked *