Our 8 Step Method for Creating a CNC Program


There are hundreds of ways to program a CNC machine to machine the same workpiece - and all may produce the same finished part. But, in addition to creating the cutting program, many other factors need to be resolved to be able to machine the workpiece. There are workholding questions, cutting tool questions, machining conditions as well as the machining process that will be programmed. As there are hundreds of ways to program a part, there are many different ways to resolve the above questions. We have tried to create a step by step procedure below that may assist you in creating a process to resolve the questions that need to be answered to create a CNC program.

Use It - Refine It - Grow With It !!!

Step #1 : Determine the WORKHOLDING.

As you decide on the correct workholding, many other aspects of machining such as what processes to perform first, what type of tooling to consider, and in what order the programming processes must be programmed will also come into play.

Step #2 : Layout the MACHINING PROCESS & Choose the Tooling.

After you have decided on how you will hold the workpiece as you machine it to completion, you can now determine step by step how you will machine each phase. As you layout the machining process, you can decide on what tooling will be used in that machining as well. For example - a Milling Process :

    #1 - First Clamping :
  • Tool #1 - Face top to clean .............. 2? Carbide Face Mill
  • Tool #2 - Center drill all holes ......... 60 Degree Center Drill
  • Tool #3 - 1/4 drill all holes ............ 1/4? Cobalt Drill
  • ... etc.
Step #3 : Gather Cutting Condition Data.

Once tooling is decided, cutting data such as speed & feed data can be gathered to suit the chosen tooling, material and workholding.

    #1 - First Clamping :
  • Tool #1 - Face top to clean ....... 2? Carbide Face Mill ..... 650 RPM ... 12.0 IPM
  • Tool #2 - Center drill all holes .. 60 Degree Center Drill ... 2000 RPM .. 10.0 IPM
  • Tool #3 - 1/4 drill all holes ..... 1/4? Cobalt Drill ........ 3000 RPM .. 5.0 IPM
  • ... etc.
Step #4: Create the CNC PROGRAM.

Sub Step #1 -- Choose the PART ZERO position.
Now that workholding and tooling have been determined, the programmer is ready to start to create the program. the first step is to determine the PART ZERO or ABSOLUTE ZERO location. Criteria for this position range from being able to use print dimensions to workholding to ease of set-up. However, if the chosen PART ZERO differs from the blueprint, it is usually easier to transpose the dimensions for your part zero so that once the programming begins, no interruptions for re-calculations need occur. 

Sub Step #2 -- Create the CNC Program
All information needed to create the program should now be at hand. The best way to create the program is simply to sit down and write it, visualizing that you are at the machine actually machining the part. For example, you might visualize a turning program like : 
Manual Machining CNC Program
Index the tool turret G00 T0101
Start the spindle G97 S600 M03
Approach workpiece to clearance G00 X--- Z---
Start the coolant M08
Move the tool to the desired depth G00 X---
Take the first cut G01 Z---- F---



Most people find it easier to sit in a quiet room, with all the data needed at hand, visualize the machining, and write. Use the tooling list as created above and the cutting condition data as required, making any changes as they come up.

Step #5: CHECK the PROGRAM.

After the program has been entered into the machine, it is always a good idea to check your programmed path again as you read thru the program as well as check for typing errors even if the program was input through a word processor or by hand. 

Step #6: Perform the MACHINE SET-UP.

The set-up involves mounting all fixturing, tooling, recording the part zero, recording all tool offsets and any other task required before machining.


There are many ways to prove out the program before actually cutting a part. The best way is prove out the tool path first, then the cutting conditions, not both at the same time. This means that you should not prove out the tool path and cut material at the same time.
On a CNC lathe, remove the part from the chuck and cut air as you prove out the path. On a CNC mill, re-calculate the tool offsets so the tool will perform it?s tasks above the part. 
Once you are satisfied with the tool path, you can begin to cut the material step by step, editing any cutting conditions as required.

Step #8: Do IT !

Once you are satisfied with the tool path and cutting conditions, let it rip. Your first program will usually not be the final product. Constant refinements are usually done to improve tool life, cycle time or finish. The majority of the product is done but you should always be looking for ways to improve the program or process.

A Couple of Hints !!

  • The steps above are meant as a guideline - feel free to deviate once your experience tells you to.
  • You will probably refine and change data for each step above as you go along and other aspects of the workpiece and the machining process appear.
  • KEEP TRACK OF YOUR WORK. DON?T THROW ANYTHING AWAY UNTIL YOU?RE ABSOLUTELY DONE. Keep your notes for everything such as tooling, cutting conditions, written programs, etc.. They will come in handy at some point - GUARANTEED !!!!

© Copyright 1998 KENTECH INC.
All Rights Reserved
Use of this article without written 
permission from KENTECH INC. 
violates U.S. copyright laws.

Disclaimer : CNC TIPS are provided without charge or obligation by Kentech Inc.. It is the responsibility of the reader to perform any action outlined here in a safe and responsible manner. The reader assumes all responsibility for service or actions taken as a result of the information contained here. KENTECH INC. and its employees assume no responsibility for personal or property damage, any type of monetary losses or losses caused directly or indirectly from the material provided in this Web page or any pages contained in the WebSite.


This article is reprinted courtesy of Kentech Inc.

Return to the CNC Reference Articles Index

© Copyright Maintenance Resources, Inc.

Phone: 812.877.7119  -  Fax: 812.877.7116  -  E-Mail: info@maintenanceresources.com

Address: 1983 North Hunt Street  -  Terre Haute, IN 47805