Constant cutting speed (G96/G97/G196)

G96        Selecting constant cutting speed                                            (modal)

G97        Deselecting constant cutting speed, selecting spindle speed   (modal, initial state)

G196      Maximum spindle speed for G96                                                      (G196 non modal,

                                                                                                                             max. speed modal)

Using the G functions G96, G97 and G196, it is possible to optionally change the interpretation of the S word (or S strings):


S in [m/min or ft/min *] (cutting speed)


S in [rpm] (spindle speed )


S in [rpm] (max. spindle speed during G96)

* [as of Build V2.11.2032.08 with G70 and P-CHAN-00360 = 1]

When selected with G96, the starting rpm of the spindle is calculated from the programmed cutting speed and the distance of the tool tip to the turning centre point. This distance results from the last (not in the current NC block) programmed position and the reference point offset of the face turning axis. Exactly one face turning axis must be present in the current machining plane (G17, G18, G19).

A cutting speed programmed for G96 using the S word is only valid until it is deselected by G97. With G96, constant cutting speed is only activated when the S word is programmed.

Specifying a maximum spindle speed with G196 in conjunction with the S word is optional and only active during G96. Spindle speed limiting must be programmed before G96 is selected.

Spindle speed with active G96
Spindle speed with active G96

Release Note


Extended G function G196

As of Build V3.1.3057.04

Alternatively, the maximum spindle speed can be programmed as an additional value in [rpm] in conjunction with G196. It is modal.

This syntax permits the programming of G196 and G96 in the same NC block. A separate specific NC block is not required.

G196 = <max_spindle_speed>                                                                     (G196 non-modal,

                                                                                                                         max. speed modal)

Close to the turning centre point, the programmed maximum spindle speed (G196) or the maximum spindle speed specified in the assigned axis parameters P-AXIS-00212 defines the limits of the constant cutting speed.

When deselected with G97, the last spindle speed set is retained.

Motion blocks of the face turning axis in rapid traverse (G00) lead to an interruption of G96 to prevent undesired speed value changes when the tool is positioned. The next motion block with G01, G02 or G03 cancels suppression of G96.

Programing Example


Constant cutting speed (G96/G97/G196)

; X is the face turning axis

N10 M03 S1000 G01 F1500 X100

N20 G196 S6000    ;max. speed 6000 rpm

N30 G96 S63 ;select const. cutting speed 63 m/min,

              ;workpiece radius 100 mm corresp. to X coordinates

N40 X80

N50 S4 X50    ;new cutting speed 4 m/min; workpiece radius 80 mm,

              ;at block end 50 mm

N60 G97    ;max. speed 6000 rpm not effective here!

N80 G92 X-10  ;reference point offset in X by -10 mm

N90 G96 X60   ;cutting speed from N50 not valid: const.

              ;cutting speed not active, speed 8000 rpm

N100 S25 X70    ;cutting speed 25 m/min, workpiece radius 50 mm,

              ;(=60mm+BPV), const. cutting speed active

N110 G00 X450 ;rapid traverse: speed remains constant

N115 X70

N120 G01 X40  ;suppress G96 cancelled

N110 M30