📖 Scenario: You are programming a CNC machine to drill holes in a metal plate. To avoid damaging the tool or the workpiece, you need to control how the tool approaches the surface before drilling and how it retracts after drilling.
🎯 Goal: Build a CNC program that defines approach and retract moves for a drilling operation. You will create variables for safe heights, write the approach move to the drilling point, perform the drilling, and then retract safely.
📋 What You'll Learn
Create variables for safe_height and drill_depth with exact values
Write an approach move that moves the tool to safe_height above the drilling point
Write the drilling move that moves the tool down to drill_depth
Write a retract move that moves the tool back up to safe_height
Print the full CNC program commands in order
💡 Why This Matters
🌍 Real World
CNC programmers use approach and retract moves to protect tools and workpieces during machining operations like drilling, milling, and cutting.
💼 Career
Understanding how to script safe tool movements is essential for CNC operators, programmers, and manufacturing engineers to ensure quality and prevent damage.
Progress0 / 4 steps
1
Define safe height and drill depth variables
Create two variables: safe_height set to 5.0 and drill_depth set to -10.0.
CNC Programming
Hint
Use simple assignment to create safe_height and drill_depth variables with the exact values.
2
Write the approach move command
Add a variable drill_point as a tuple with coordinates (10, 20). Then write a string variable approach_move that moves the tool to drill_point at safe_height using the format G0 Xx Yy Zz.
CNC Programming
Hint
Use a tuple for drill_point and an f-string for approach_move to insert coordinates and safe height.
3
Write the drilling and retract move commands
Create two string variables: drill_move that moves the tool down to drill_depth at the drill point using G1 command, and retract_move that moves the tool back up to safe_height using G0 command.
CNC Programming
Hint
Use f-strings to create drill_move and retract_move with the correct G-code commands and heights.
4
Print the full CNC program sequence
Print the variables approach_move, drill_move, and retract_move each on a new line in this order.
CNC Programming
Hint
Use three print statements to show the approach, drill, and retract moves in order.
Practice
(1/5)
1. What is the main purpose of an approach move in CNC programming?
easy
A. To change the tool automatically
B. To lift the tool away from the workpiece after cutting
C. To speed up the cutting process
D. To bring the tool safely close to the workpiece before cutting
Solution
Step 1: Understand approach move function
Approach moves bring the tool safely close to the workpiece before starting the cut.
Step 2: Differentiate from retract move
Retract moves lift the tool away after cutting, so they are not approach moves.
Final Answer:
To bring the tool safely close to the workpiece before cutting -> Option D
Quick Check:
Approach move = safe tool approach [OK]
Hint: Approach = move close before cutting [OK]
Common Mistakes:
Confusing approach with retract moves
Thinking approach moves lift the tool
Assuming approach moves speed up cutting
2. Which G-code is typically used for a fast approach move in CNC programming?
easy
A. G00
B. G02
C. G01
D. G03
Solution
Step 1: Identify G-code for fast moves
G00 is used for rapid, fast moves to position the tool quickly.
Step 2: Differentiate from controlled moves
G01 is for slow, controlled cutting moves, not fast approach moves.
G00 is for fast moves and should not be used to move down into the workpiece (Z negative).
Step 2: Identify incorrect use of G00
Line G00 Z-2 moves tool down fast, which is unsafe and incorrect for approach.
Final Answer:
Using G00 to move down into the workpiece -> Option A
Quick Check:
Fast moves (G00) should not move tool down into material [OK]
Hint: Never use G00 to move tool down into workpiece [OK]
Common Mistakes:
Using G00 for cutting moves
Ignoring safe approach/retract rules
Assuming feed rate needed on retract moves
5. You want to safely approach a workpiece at X=50, Y=50, then cut down to Z=-3 slowly, and finally retract quickly. Which sequence of commands is correct?
hard
A. G01 Z-3 F100 G00 X50 Y50 G01 Z5 F100
B. G01 X50 Y50 F200 G00 Z-3 G01 Z5 F100
C. G00 X50 Y50 G01 Z-3 F100 G00 Z5
D. G00 Z-3 G01 X50 Y50 F150 G00 Z5
Solution
Step 1: Approach move with fast positioning
Use G00 to move quickly to X50 Y50 before cutting.
Step 2: Slow controlled cut down
Use G01 with feed rate to move down to Z=-3 slowly and safely.
Step 3: Retract move with fast lift
Use G00 to quickly lift tool away to Z=5 after cutting.
Final Answer:
G00 X50 Y50 G01 Z-3 F100 G00 Z5 -> Option C
Quick Check:
Fast approach, slow cut, fast retract = G00 X50 Y50 G01 Z-3 F100 G00 Z5 [OK]
Hint: Fast XY move (G00), slow Z down (G01), fast Z up (G00) [OK]
Common Mistakes:
Using G01 for fast XY moves
Using G00 to move tool down into material
Mixing feed rates on retract moves
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.