G00 and G01 CNC G-Codes With Examples

CNC Programming: Mastering G00 and G01 G-Codes

illustation of G00 and G01
Illustation of G00 and G01

G-code is a fundamental aspect of CNC programming, serving as the language that instructs a CNC machine on how to operate. In this guide, we’ll delve into two essential G-code commands used in CNC machine operation: G00 and G01.

Before starting, if you need some more information about G-Codes check our other articles too;

Tapping With CNC Machine | With G84, G74, G99, G98

Reaming Cycle | With G85

G00: Rapid Positioning in CNC Programming

The G00 command, a key component of CNC machine programming, enables rapid positioning of the tool on the workpiece. This command is crucial for efficient CNC machine control, allowing the tool to move quickly to a specified point. However, due to its speed, the G00 command is less precise than the G01 command and should not be used while the cutter work on the workpiece.

Rapid and feed move animation
Rapid(G00) and Feed move (G01) animation.

This is how the command should look like;

G00 X… Y… Z…

Absolute

G90 G00 X150.0 Z100.0
X200.0 Z200.0

Incremental

G91 G00 X150.0 Z100.0
X200.0 Z200.0

When the G00 command is used, no chip is taken out. It moves as fast as it can on the axes where this G code is written. Values that start with F are not used. The manufacturer sets the G00 speed, which is often stored in the control as a “machine constant variable “. It depends on the speed and power of the machine. This speed is generally fixed by the manufacturer and it is the maximum safe speed the machine can move.

G01 (Linear cutting with feed rate)

Another vital command in the realm of CNC programming techniques is the G01 command. This command, known as linear cutting with feed rate, guides the tool in a straight line to a defined position at a certain feed rate.

Unlike the G00 command, the G01 command is used during the cutting process, allowing for precise control over the tool’s movement and speed.

When the G01 command is used in program lines one after the other, it doesn’t need to be used in any other lines which are following right away. This mode (G01) will stay the same until the commands G00, G02, G03, or cycle are used. The G00 command works the same way.

F: It is the feed rate, and you can choose mm/min or mm/revolution as the unit. If the program uses G99, the feed unit is mm/rev. If G98 is chosen, mm/min. means that it should be used.

Practical Examples of G00 and G01 in CNC Programming

Absolute

G90 G01 X150.0 Z100.0 F0.2 :

Incremental

G91 G01 X10. Y10.

G01 Program (example – 1)

Conclusion: Mastering G00 and G01 for Effective CNC Programming

Mastering G00 and G01 commands is crucial for effective CNC programming and optimizing CNC machine operation. By understanding these commands, you can improve your CNC code generation process and enhance the overall performance of your CNC machine. Whether you’re a seasoned machinist or a beginner in the field of CNC machining, these commands are fundamental to your success.

What is the G00 command in CNC programming?

  The G00 command in CNC programming enables rapid tool positioning. It’s less precise due to speed, but crucial for efficient CNC machine operation.

What is the G01 command in CNC programming?

  The G01 command, or linear cutting with feed rate, allows precise control over tool movement and speed during CNC machining processes.

How do G00 and G01 commands improve CNC machine operation?

  Mastering G00 and G01 commands optimizes CNC machine operation. G00 speeds up the process, while G01 ensures precision during cutting.

What role do G00 and G01 commands play in CNC code generation?

  G00 and G01 commands are fundamental to CNC code generation, instructing the CNC machine on tool movement for rapid positioning and precise cutting.

Are G00 and G01 commands important for beginners in CNC machining?

  Yes, understanding G00 and G01 commands is crucial for effective CNC programming and machine operation, regardless of experience level.

By Isaac Aloyan

Isaac Aloyan is a talented mechanical engineer with a background in machinery design and manufacturing. He completed his diploma from the Department of Machinery Design and Manufacturing at Kocaeli University and also graduated from Level 7 NZDE Mechanical Engineering at Manukau Institute of Technology (M.I.T). Isaac has developed strong expertise in various areas of mechanical engineering, including CNC programming and machining, vacuum mold design and production, manual machining, CAD and CAM, and thermoforming machine design and production. Also, he has educator experience in the area of CNC machinery and programming and mechanical design. With two decades of experience under his belt, Isaac has established a website called mechutopia.com to share his knowledge and help others who are interested in the field of mechanical engineering. The site is likely to feature a wealth of information, resources, and tips for those looking to learn about CNC machines, machining, mold production, and more. It is a testament to Isaac's dedication to the field and his commitment to helping others excel in sub-domains of mechanical engineering like design and manufacturing.