FIFTY LINETurn G-code
Online generatorOnline calculatorsReference

Machining cycle

Archimedean spiral on the part face

A face spiral thread/groove following the Archimedean spiral

A clickable cycle form: tap any field to see what it does.

The "Archimedean spiral" cycle form with parameters and a live 2D path simulator
The Archimedean spiral cycle with the parameters of the cut in the video: 10 to 110 mm diameter, 3 starts, 50 RPM

 

Форма цикла «Спираль Архимеда»

The cycle form: start/end diameters, pitch, insert width and number of starts, with a live 2D path simulator on the right.

The exact parameters used for the cut in the video below: Ø10 → Ø110 mm, 3 starts, 2 mm insert + 2 mm land (4 mm per turn, spiral lead 12 mm), 1 mm deep in 3 passes + 1 finishing pass, 50 RPM, right-hand spiral.

The Archimedean spiral cycle cuts a groove or thread into the face of the workpiece, following a spiral with a uniform pitch from the center outward or the reverse.

The cycle runs on a spindle-synchronized threading move (G32/G33) — the same principle as regular threading, just radial along X instead of along Z, and only on the part's face. Because of that, the generated program only works on machines where the controller and spindle drive track rotation through an encoder (a spindle position sensor): without one, feed can't be synchronized to rotation, and the machine can't run this G-code correctly.

Archimedean spiral: a real cut

A spiral on the part face, LinuxCNC lathe, program generated in Turn G-code. A real cut, not an air run, sped up 2–4x; the face was painted black before cutting for contrast, and the colour is slightly corrected. Music: "Cyberpunk" by AlexGuz (Pixabay).

This cut with machine sound on YouTube →

Who needs this cycle

Needed for non-standard face spiral profiles — for example, spiral grooves or a thread cut into the face of a part.

Key form parameters

  • •Start and end spiral radius
  • •Spiral pitch
  • •Groove/thread depth
  • •Feed rate

G-code example

Real output of the Archimedean spiral cycle: a three-start spiral groove on the face, from Ø5 to Ø80, 1 mm deep. 2 mm insert, 4 depth passes (0.3 / 0.6 / 0.9 / 1.0 mm), plunge 50 mm/min, 100 rpm. Motion is G33 with K. The code lines were not edited by hand.

Radius mode G8: Ø5 is X2.5, Ø80 is X40. The tool moves only in X, from the centre outwards, while the spindle turns in sync — that is what cuts a spiral into the face.

In the code, neighbouring turns are 4 mm apart on radius: the three starts begin at X2.5, X6.5 and X10.5, and the spiral lead per revolution is K12 — 3 starts × 4 mm. With a 2 mm insert this gives a 2 mm wide groove and a 2 mm land between turns.

archimedean-spiral.ngc · 111 lines — Show the full program
%
(Turn G-code)
(Archimedean spiral on the face)
(Thread motion: G33 K)
(Direction: right-hand)
(Starts: 3)
(D start: 5.0000)
(D end: 80.0000)
(Pitch P: 2.0000)
(Insert width: 2.0000)
(Spiral lead per revolution, K in G-code: 12.0000)
(Depth: 1.0000)
(Plunge feed F: 50.0000)

G21 G18 G90 G8 G40 G80 G94
G54

G97 S100 M3
G0 Z2.0000
G0 X45.0000

(Pass 1 of 4, start 1 of 3, Z-0.3000)
G0 X2.5000
G1 Z-0.3000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 1 of 4, start 2 of 3, Z-0.3000)
G0 X6.5000
G1 Z-0.3000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 1 of 4, start 3 of 3, Z-0.3000)
G0 X10.5000
G1 Z-0.3000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 2 of 4, start 1 of 3, Z-0.6000)
G0 X2.5000
G1 Z-0.6000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 2 of 4, start 2 of 3, Z-0.6000)
G0 X6.5000
G1 Z-0.6000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 2 of 4, start 3 of 3, Z-0.6000)
G0 X10.5000
G1 Z-0.6000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 3 of 4, start 1 of 3, Z-0.9000)
G0 X2.5000
G1 Z-0.9000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 3 of 4, start 2 of 3, Z-0.9000)
G0 X6.5000
G1 Z-0.9000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 3 of 4, start 3 of 3, Z-0.9000)
G0 X10.5000
G1 Z-0.9000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Finishing spindle speed)
S100
(Pass 4 of 4, start 1 of 3, Z-1.0000)
G0 X2.5000
G1 Z-1.0000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 4 of 4, start 2 of 3, Z-1.0000)
G0 X6.5000
G1 Z-1.0000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

(Pass 4 of 4, start 3 of 3, Z-1.0000)
G0 X10.5000
G1 Z-1.0000 F50.0000
G33 X40.0000 K12.0000
G0 Z2.0000
G0 X45.0000

G0 X45.0000
M5
M30
%

Line-by-line breakdown

G21 G18 G90 G8 G40 G80 G94
Start: millimetres, XZ plane, absolute coordinates, radius mode for X (G8), cancel compensation and canned cycles, feed in mm/min.
G97 S100 M3 / G0 Z2.0000 / G0 X45.0000
Constant 100 rpm, approach to 2 mm in front of the face and past the part edge (X45).
G0 X2.5000 → G1 Z-0.3000 F50.0000
Start 1: move to the starting radius X2.5 (Ø5) and plunge 0.3 mm into the face at 50 mm/min.
G33 X40.0000 K12.0000
Spiral move: the tool travels in X to X40 (Ø80) in sync with the spindle; K12 is the spiral lead per revolution (as labelled in the program header).
G0 Z2.0000 / G0 X45.0000
Exit the groove in Z and retract past the edge before the next start.
G0 X6.5000 / G0 X10.5000
Starts 2 and 3 begin offset by 4 mm on radius (X6.5 and X10.5) — the three spirals sit between each other at equal intervals.
(Pass 2 of 4, start 1 of 3, Z-0.6000) … (Pass 4 of 4, start 3 of 3, Z-1.0000)
At each depth all three starts are cut, then the tool goes deeper: Z−0.6, Z−0.9 and the final Z−1.0.
M5 / M30
Spindle stop and program end.

Comments in this program were translated from Russian; the G-code itself is unchanged.

What the codes in this program mean (G0, G1, G33, G8, M3, M5) — G- and M-code reference for lathes.

More on this topic: Archimedean spiral on a face: cutting a spiral groove on a CNC lathe.

Frequently asked questions

What principle does this cycle work on?

A spindle-synchronized threading move (G32/G33) — the same one used for regular threading, just running radially along X instead of along Z, and only on the part's face.

Will this work on any machine?

No — the generated program only runs correctly on machines where the controller and spindle drive track rotation through an encoder (a spindle position sensor). Without one, feed can't be synchronized to rotation.

Which direction can the spiral go?

From the center outward or from the edge inward — the direction is set by the start and end spiral radius. The same choice sets the hand: swap the start and end diameters and, with the same spindle direction, you get a left-hand spiral instead of a right-hand one.

What is this cycle for?

Non-standard face spiral profiles — for example, spiral grooves or a thread cut into the face of a part.