## What is G16?

The G16 command instructs the CNC machine to interpret the coordinates that are entered in the commands that follow it on a Polar Coordinate System. The X represents the distance (Radius) and the Y represents the angle in degrees relative to 3 O’clock orientation.

## Syntax:

``````G16 (Polar On);
G15 (Polar Off);
``````

## Cartesian Vs Polar coordinates

• Cartesian is the normal X, Y based coordinate system we use.
• Polar coordinate system: The point is represented by its distance from the origin (R) and the angle from the X-axis (α).

To convert from Cartesian to Polar:
r=√ (x2 + y2)
α=Tan-1(y / x)
To convert from Polar to Cartesian:
x=r ⋇ Cos(α)
y=r ⋇ Sin(α)

## How to use G15/G16

• Writing Just G16; will put the machine in “Polar Mode” with the center (Pole), placed at X=0, Y=0. If you want the center of the Polar Coordinate system to be elsewhere type `G16 X5.0 Y6.0`; This will place the “pole” in the X=5, Y=6 coordinate.
• After activation, the X becomes your radius and the Y becomes your angle.
• All the following movement commands will be interpreted with Polar Coordinates.
• A G15 block will cancel the G16 mode and return the machine to G15 (Cartesian) mode.

## Typical use case “Bolt Circle”

The “classic” use of G15 is to program “Bolt Circle” operations which is a common engineering feature.

``````G16 X6.0 Y6.0 (Set the Center);
G00 X5.0 Y30.0 (Go to the first Bore position);
M98 P2000 (Single Bolt Bore Subprogram);
G00 Y90 (Next Bole);
M98 P2000 (Single Bolt Hole Subprogram);
G00 Y150 (Next Hole);
And So On...
``````

Learn about more G-Codes

Scroll to Top