summaryrefslogtreecommitdiff
path: root/docs/src/gcode/other-code.txt
blob: 9765fbeaf1fe3524540561c6ab1396c9a8e4ea89 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
= Other Codes

[[cha:other-codes]] (((Other Codes)))

[[sec:F-feed-rate]]
== F: Set Feed Rate
(((F: Set Feed Rate)))

'Fx' - set the feed rate to 'x'.  'x' is usually in machine units
(inches or millimeters) per minute.

The application of the feed rate is as described in the
<<sub:feed-rate,Feed Rate>> Section, unless inverse time feed rate
mode is in effect, in which case the feed rate is as described in the
<<sec:G93-G94-G95-Mode,G93 G94 G95>> Section.

[[sec:S-spindle-speed]]
== S: Set Spindle Speed
(((S: Set Spindle Speed)))

'Sx' - set the speed of the spindle to 'x' revolutions per minute (RPM).

The spindle will turn at that speed when a 'M3' or 'M4' is in effect.
It is OK to program an S word whether the spindle is turning or not.
If the speed override switch is enabled and not set at 100%, 
the speed will be different from what is programmed. 
It is OK to program S0, the spindle will not turn if that is done.

It is an error if:

* the S number is negative.

As described in the <<sec:G84-Right-Hand-Tapping,G84>> Section, if a 'G84'
(tapping) canned cycle is active and the feed and speed override
switches are enabled, the one set at the lower setting will take
effect. The speed and feed rates will still be synchronized. In this
case, the speed may differ from what is programmed, even if the speed
override switch is set at 100%.

[[sec:T-Select-Tool]]
== T: Select Tool
(((T: Select Tool)))

'Tx' - prepare to change to tool 'x'.

The tool is not changed until an 'M6' is programmed (see Section
<<sec:M6-Tool-Change,M6>>). The T word may appear on the same line as the
'M6' or on a previous line. It is OK if T words appear on two or more
lines with no tool change. Only the the most recent T word will take
effect at the next tool change.

NOTE: When LinuxCNC is configured for a nonrandom toolchanger (see
the entry for RANDOM_TOOLCHANGER in the <<sub:EMCIO-Section,EMCIO
Section>>), 'T0' gets special handling: no tool will be selected. This
is useful if you want the spindle to be empty after a tool change.

NOTE: 'T0' When LinuxCNC is configured for a random toolchanger (see
the entry for RANDOM_TOOLCHANGER in the <<sub:EMCIO-Section,EMCIO
Section>>), 'T0' does not get any special treatment: T0 is a valid
tool like any other.  It is customary to use T0 on a random toolchanger
machine to track an empty pocket, so that it behaves like a nonrandom
toolchanger machine and unloads the spindle.

It is an error if:

* a negative T number is used,

* T number is used that does not appear in the tool table file (with
    the exception that T0 on nonrandom toolchangers *is* accepted,
    as noted above).

On some machines, the carousel will move when a T word is programmed,
at the same time machining is occurring. On such machines, programming
the T word several lines before a tool change will save time. A common
programming practice for such machines is to put the T word for the
next tool to be used on the line after a tool change. This maximizes
the time available for the carousel to move.

Rapid moves after a 'T<n>' will not show on the AXIS preview until after
a feed move. This is for machines that travel long distances to change
the tool like a lathe. This can be very confusing at first. To turn
this feature off for the current tool program a G1 without any
move after the 'T<n>'.

// vim: set syntax=asciidoc: