||CNCCookbook's G-Code Tutorial and Course
Looking to learn CNC G-Code? Need a quick and easy G-Code Tutorial or G-Code Course? Want some easy G-Code Training? Maybe you just want to learn more about a specific G-Code related topic or see particular G-Code examples. If so, you're in the right place with the CNCCookbook CNC G-Code Course. It's free, it's easy, and it's chock full of good information. This page is the syllabus. The articles are all listed below. There's no need to register, just get started learning at your own pace.
What is G-Code?
G-Code is the language used to control CNC machines. Your machine's CNC controller probably executes g-code, although there are other possibilities--Heidenhain, Mazak, and others have proprietary formats. Some machines with proprietary formats can also run g-code. It is the Lingua Franca (working language) of CNC.
In order to make a part on a CNC machine, you tell it how to make the part using a G-Code Program.
Why Learn G-Code?
Every CNC machinist should know g-code. If you're interested in CNC and machining, you should too.
We recently did a survey to assess the g-code skills of our readership. You should not be suprised to learn that many are quite proficient with G-Code:
We were impressed at how many readers can write g-code programs from scratch. In fact the overwhelming majority read, write, or tweak programs on a regular basis. If you're not yet able to do that, you need to learn. These articles are CNCCookbook's free course in g-code. No matter what stage in g-code learning you are at, you will find the tools to advance to the next stage in these articles. Check them out--it's easy to improve your g-code proficiency and well worth the productivity gains.
||Table of Contents
Here are the articles available for maximizing your g-code proficiency.
Basics Every CNC Machinist Should Know
Introduction for Beginners: More on what you can do with g-code, basic concepts, and an interactive tool to help you learn faster.
The Coordinate System: Is it a right-handed or left-handed coordinate system?
G-Code Dialects, Post Processors, and Setting Up GWE: The great thing about standards is there are so many to choose from.
MDI: CNC For Manual Machinists: Pretend your CNC is just a manual machine with DRO's and Power Feeds on every axis.
One-Shot G-Codes and Modal G-Codes: Some things in g-code are sticky and others are not.
CNC Editors: Tools of the Trade
CNC Simulators, Backplots, and Viewers: Getting a Second Opinion
Part Zero, Touch Offs, and Zeroing: Helping the machine understand where the part begins and ends.
Basic G-Code Program Structure: Blocks, sequence numbers, words, addresses, and the basic nuts and bolts of g-code line.
Linear Motion: G00 and G01: Moving your CNC in straight lines.
Circular Arcs: G02 and G03: Moving your CNC along arcs.
Running the GWE G-Code Simulator: Using a G-Code Simulator to view and debug your programs.
Tool Changes and Tool Offsets
Basic CNC Lathe Programming
Relative vs Absolute Moves
Canned Drilling Cycles
Custom Deep Hole Drilling Cycles
G96: Constant Surface Speed Programming
Precise Timing and Speed: Dwell, Exact Stop, Backlash Compensation
The G-Code Coordinate System Pipeline
G20 and G21: Unit Conversions
G54 and G92 Work Offsets: Making multiple parts easily
Helical Interpolation: Making holes bigger than any cutter you've got
Programming Haas Controls: Haas's unique g-codes and other differences
Tapping heads and tension compression holders
Thread Milling: How to thread mill, NPT and tapered threads, When to thread mill instead of tapping
Intermediate Lathe Programming
Lathe Simple Canned Cycles: G90/G92/G94
Lathe Repetitive Roughing Cycles: The Poor Man's Turning CAM
G71: Rough Turning Cycle: Type I
Using Mill CAM to Create Profiles for Lathe Cycles
G71 Type II: Rough Turning With "Pockets"
G70: Finishing Cycle
G72: Rough Facing Cycle
G73: Pattern Repeating Cycle
Using IF and GOTO for a Poor Man's G71
G75 and Peck Parting Off for Lathes
Lathe Threading Cycles
Gang Tooling for Lathes
G28: Return to Reference Point
Tool Compensation: The Poor Man's Milling CAM
A Mini-Tutorial on G-Code Macro Programming and Fanuc Macro B:
Parameterized Programming: Macro Variables
Subprograms and Macros: Packaging G-Code Into Building Blocks
Conditions and Looping: Making Decisions and Handling Repetition in G-Code
Accessing Modal Data: Making Subprograms Clean Up After Themselves
Modal Macro Calls
Macro Example: Digits (Work in progress)
G10: Programming Tool and Work Offsets in G-Code
Scaling the Coordinate System
Rotating the Coordinate System with G68 and G69
Mirroring the Coordinate System
G-Code Scaffolding: Making CAM Better With G-Code Help
Multiple Part Strategies
G52: Temporary programmable work offsets
Interacting With the Operator
Tweaking CAM Programs: Right Angle Heads and More
Mill 4th Axis Programming
Lathe C-Axis Machining and Live Tooling
CNCCookbook Blog Posts Relating to GCode Programming: Lots more Tools, Examples, and detailed articles.
G-Wizard Editor: A CNC Programming Editor for g-coders and CNC G-Code Simulator. We use it in this course to help teach G-Code.
G-Wizard Calculator: A CNC Machinist's Calculator
G-Code Reference for Mills
G-Code Reference for Turning
Sample G-Code Files: G-Code examples you can download and play with
Try the Free Trial Version of G-Wizard G-Code Editor...
No credit card required--just your name and email.