📖 Scenario: You are programming a CNC machine that uses different tools for cutting. Each tool has a number, and you need to tell the machine which tool to use by writing a command starting with the letter T followed by the tool number.For example, T01 means use tool number 1.
🎯 Goal: Write a simple CNC program that sets up a list of tool numbers, selects a tool based on a configuration, and outputs the correct T command to tell the machine which tool to use.
📋 What You'll Learn
Create a list called tools with the exact tool numbers: 1, 2, 3, 4, 5
Create a variable called selected_tool_index to choose which tool to use (index in the list)
Use the selected_tool_index to get the tool number from tools
Print the tool selection command in the format Txx where xx is the tool number with two digits
💡 Why This Matters
🌍 Real World
CNC machines need clear commands to know which tool to use for cutting. This project shows how to write those commands in a simple program.
💼 Career
Understanding tool selection commands is important for CNC programmers and operators to automate machining tasks safely and efficiently.
Progress0 / 4 steps
1
Create the list of tool numbers
Create a list called tools with these exact numbers: 1, 2, 3, 4, 5
CNC Programming
Hint
Use square brackets [] to make a list and separate numbers with commas.
2
Set the selected tool index
Create a variable called selected_tool_index and set it to 2 to select the third tool in the list
CNC Programming
Hint
Remember that list indexes start at 0, so 2 means the third tool.
3
Get the selected tool number
Create a variable called selected_tool and set it to the tool number from tools at index selected_tool_index
CNC Programming
Hint
Use square brackets [] with the index to get the item from the list.
4
Print the tool selection command
Print the tool selection command in the format Txx where xx is the tool number with two digits, using selected_tool. For example, if selected_tool is 3, print T03
CNC Programming
Hint
Use an f-string with :02d to format the number with two digits.
Practice
(1/5)
1. What does the T[number] command do in a CNC program?
easy
A. It starts the spindle rotation.
B. It moves the machine to a coordinate.
C. It stops the machine.
D. It selects the tool number to be used.
Solution
Step 1: Understand the role of T[number]
The T[number] command tells the CNC machine which tool number to select.
Step 2: Differentiate from other commands
Other commands like spindle start or movement do not use T[number].
Final Answer:
It selects the tool number to be used. -> Option D
Quick Check:
Tool selection = T[number] command [OK]
Hint: T[number] always means tool selection in CNC [OK]
Common Mistakes:
Confusing T command with spindle or movement commands
Thinking T[number] moves the machine
Assuming T[number] starts or stops the spindle
2. Which of the following is the correct syntax to change to tool number 5 in a CNC program?
easy
A. T5 M6
B. M6 T5
C. T M6 5
D. M5 T6
Solution
Step 1: Recall correct command order
The correct syntax is T[number] M6 to select and change the tool.
Step 2: Match syntax to tool 5
For tool 5, it becomes T5 M6.
Final Answer:
T5 M6 -> Option A
Quick Check:
Tool change syntax = T[number] M6 [OK]
Hint: Tool number first (T5), then M6 to change tool [OK]
Common Mistakes:
Swapping order of T and M6 commands
Using M6 before T[number]
Mixing tool number and command letters
3. What will be the effect of the following CNC code snippet?
T3 M6
G00 X10 Y10
medium
A. The machine moves to X10 Y10 without changing the tool.
B. The machine moves to X10 Y10 using tool 3 after changing to it.
C. The tool change command is ignored and only movement happens.
D. The machine stops due to syntax error.
Solution
Step 1: Analyze tool change command
T3 M6 selects and changes to tool number 3.
Step 2: Analyze movement command
G00 X10 Y10 moves the machine quickly to coordinates X10 Y10.
Final Answer:
The machine moves to X10 Y10 using tool 3 after changing to it. -> Option B
Quick Check:
Tool 3 selected then move = The machine moves to X10 Y10 using tool 3 after changing to it. [OK]
Hint: T3 M6 changes tool, next line moves machine [OK]
Common Mistakes:
Ignoring the tool change command
Assuming tool change happens after movement
Thinking syntax error occurs
4. Identify the error in this CNC tool change command:
T7 M06
medium
A. M06 should be lowercase m6.
B. There should be a space between T7 and M06.
C. The command is correct and will work as expected.
D. The tool number 7 is invalid.
Solution
Step 1: Check command syntax
T7 M06 is a valid tool change command; uppercase or lowercase M6 is accepted in most CNC controls.
Step 2: Validate spacing and tool number
Space between commands is optional; tool number 7 is valid if defined in tool library.
Final Answer:
The command is correct and will work as expected. -> Option C
Quick Check:
Valid tool change syntax = The command is correct and will work as expected. [OK]
Hint: M6 can be uppercase or lowercase; spacing is flexible [OK]
Common Mistakes:
Thinking uppercase M06 is invalid
Expecting mandatory space between commands
Assuming tool number 7 is always invalid
5. You want to write a CNC program that changes tools in this order: tool 2, then tool 10, then tool 5. Which sequence correctly uses tool numbering and selection commands?
hard
A. T2 M6
T10 M6
T5 M6
B. M6 T2
M6 T10
M6 T5
C. T2 M6
M6 T10
T5 M6
D. T2
M6 T10
M6 T5
Solution
Step 1: Recall correct tool change syntax
Each tool change must use T[number] M6 to select and change the tool.
Step 2: Check each line for correct order
T2 M6
T10 M6
T5 M6 correctly uses T2 M6, T10 M6, and T5 M6 in sequence.
Final Answer:
T2 M6
T10 M6
T5 M6 -> Option A
Quick Check:
Tool change sequence = T[number] M6 each time [OK]
Hint: Always use T[number] M6 for each tool change line [OK]
Common Mistakes:
Putting M6 before T[number]
Missing M6 on some tool changes
Splitting commands incorrectly across lines
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.