Hotline: +84 (0) 8686 21 553  



Material condition may require special cuts, if necessary. Machining a forged steel requires a different approach than machining the same steel type as a round bar. 

Shape of material comes in many different forms. Ideally, all material supplied for a particular batch of parts should be the same. That is not always the case; for example, bars that come cut-off into individual pieces should have but may not have the same rough length. 


Part Holding 

Part holding – or work holding – is a topic that can have its own book. From CNC perspective, the decision a CNC programmer has to make is to select such a work holding method that provides fixed, safe, and stable location for the mounted material. 

Manual programming means manual calculations and manual writing of the program, A computer is often used, but only as a text editor or a toolpath simulator. In manual programming, the computer does not generate the program code. 

Enhanced methods of manual programming use so called macros, such a Fanuc Custom Macro B. In simple terms, a macro is a type of a subprogram, but it can handle features that no subprogram can. Those features include variable data, conditional testing (IF), iteration (WHILE), arithmetic, algebraic and trigonometric calculations, and many other features. 

In a true computer program development, a special software is used to generate complete program. Typical software used for such purpose includes Mastercam®, Edgecam®, and many others. 

Programming directly at the machine control is called conversation programming. Generally, lathe programming can benefit from conversational programming a little more than programs for milling. 

Regardless of how the program is developed, it has to be written in such a format that the controls system of the CNC machine ‘understands’ it. Part programs gener ated manually or by software should have the same for mat (some minor inconsistencies should be expected). 

Drawing Evaluation 

This initial stage is very important because it will influence all activities that are necessary to machine a part. Evaluating a drawing means finding a solution to a single question: What is the best way to machine the part? 

This single question will be the foundation for solutions of all other items in the workflow. One of the biggest challenges modern machining faces is not the lack of people who can master a 

CAD/CAM syster but lack of people who know how to machine a part. 

Knowledge of how to machine a part is the most important quality of a CNC programmer 

Tooling Selection 

Selecting tools is also part of the programming process, and experienced programmers often discuss the tooling possibilities with CNC operators. Selecting a tool for CNC machining means selection of: I Cutting tool holder 

Cutting tool 

Making a certain part (also called a workpiece) does not normally start at the CNC machine – it starts much earlier, at the design engineer’s desk. Engineering de- sign means developing an intended part that is economical to make, of high quality, as well as a part that does what it is supposed to do – simply, to design a part that works. This process takes place in various offices and laboratories, research centers, and other places, including engineer’s imagination. Manufacturing process – CNC process included – is always a cooperative effort. Modern part design requires professionals from different disciplines, aided by a powerful computer installed with suitable design software, for example, SolidWorks®, Autodesk Inventor®, and many others, as well the venerable AutoCad® – one of the oldest and still very popular of the design group of application software. In simplified terms, engineering design starts with an idea and ends with the development of a drawing – or a series of drawings – that can be used in manufacturing at various stages. 

For the CNC programmer as well as the CNC operator, this engineering drawing is the first source, and often the only source of information about what the final part is to be. Typically, CNC programmer follows a certain process – or workflow – that can be summarized into a several critical points or steps: 

Evaluate drawing Identify material of the part 

Determine part holding method 1 Select suitable tools 

Decide on cutting conditions 

Write the program 

Verify the program 

Complete documentation Send program to machine shop 

For machining centers, cutting tool holder is the connection between the cutting tool and the machine spindle. For lathes, the tool holder is mounted in the turret. 

An engineering drawing does not offer solutions – it only provides goals and objectives. Studying the features of the part, dimensions, tolerances, various relationships between features, quality requirements, etc., will largely determine the method of machining. All requirements of the drawing have to be met. 

A single drawing is often not sufficient to provide all answers. Also having a drawing of a matching part or an assembly drawing, may be necessary in some cases. 

Drawing – or even a set of drawings – offers the main source of information for both CNC programmers and CNC operators. 

Cutting Conditions 

What is often called ‘speeds and feeds’ is only part of overall cutting conditions. Cutting conditions are influenced by many fixed factors, such as material being machined, its shape and condition, machine capabilities, etc. They are also influenced by conditions that are with the power of CNC programmer – for example, tooling selection, setup method, depth of cut, width of cut, and spindle speeds and cutting feed rates. 

Program Verification 

A program that contains even a single error is not desirable. One of the programmer’s responsibilities is to check the completed program before it is used. There are several ways of verifying the program. One proven method is to use a toolpath simulator software, such as NCPlot®, another is to employ a fairly extensive variety of manual checks. 

Simulation software varies quite a bit in features and cost. Price of the software by itself does not necessarily reflect its quality and features. Most simulation software lack support for some high end control features, such as coordinate rotation, polar coordinates and macros. Be fore purchasing software that simulates the toolpath, make sure to do some research. 

Numerous manual checks can also be used to find program errors. Even a brief scan of the program may reveal some obvious errors. If you know what you are looking for, the program check is that much faster. Many errors in the program happen at the beginning of the program, Errors in the middle of a program are of a different kind. An experienced operator will discover an error before it does any damage. 

Program Writing 

Part program can be developed by several methods: 

Manual programming 

Macro programming 

Computer programming 

Conversational programming 

Material Identification 

Part is made from a blank stock material specified either in the drawing itself or in another source. For programming and machining purposes, material should be identified by its type, size, shape, and condition. 

Type of material is important when selecting tools, setup, and cutting conditions. Soft materials such as brass and aluminum will require a different method of machining than steels and space age materials. Size of the stock provides information about how much material has to be removed by roughing. Stock shape is important primarily for selection of the holding device (fixture). 

Keep in mind that this is not always the step-by-step method as it may appear to be. Often, a decision made in one step influences a decision made in another step, which often leads to revisiting earlier stages of the process and making necessary changes. 

CNC Control Setup for Milling and Turning CONCEPTS OF CNC MACHINING 

Program Evaluation 

Evaluating a part program serves the purpose of knowing what it will do and how it will do it. Careful evaluation provides means of organizing the part setup, tool preparation, and relates activities in an efficient manner. Program evaluation is typically combined with the drawing and material provided. 

Program Documentation 

The final part program is the result of many small, progressive steps, some quite straightforward, others more complex. The program can be generated by a CAM software or it can be written completely manually. In any case, the programmer had to go through certain steps that required calculations, for example, as well as other steps. Documenting these calculations or processes can prove to be very valuable if the program has be modified for any reasons. Program modification can range from a simple error correction to an engineering change. 

It is an unpleasant reality, that many CNC programs, regardless of how they were developed, lack any background information that can help the machine operator. At best, the part program may include some basic data regarding the setup and even some special instruc tions. What is often missing are details of individual steps. The operator needs to know what fixture has been used, how the part is oriented, what tools have been selected, and where the part XOYOZO is located. 

Material Check 

Ideally, any material used for CNC work should be qualified as acceptable. Qualified material guarantees consistency in size, shape and condition from one blank piece to another. Unfortunately, this ‘ideal’ condition does not always exist, for different reasons. 

A prudent CNC programmer or operator will make a check of at least a sample of the material delivered, and identify the differences, if any. Always watch for material inconsistency, not only in size, but also in shape and type. Harder material requires different cutting condi tions than a softer material. Such a situation is common when getting material for the same part from two different suppliers. 

Program Transfer 

Program transfer includes several methods of making the program available for machining. Commonly, this process is called Program Loading. There are different methods of loading program – the most common is to store it in the memory of the CNC unit. Other methods include DNC (processing the program from an external computer), or a program stored on a flash drive. 

Tooling Preparation 

Tooling generally refers to cutting tools. For CNC machines, cutting tools have two parts – the holder and the cutting tool itself. The tool holder is the part of the as sembly that allows the cutting tool to be mounted in the spindle (milling) or in the turret (turning). 

Tool holders are standard, and from the setup point of view, the taper that is to be located in the spindle should always be clean. The same applies to the internal area of the spindle, where the holder will be located. 


Once the drawing and program reach the machine shop, it is up to the CNC operator to continue with actual production. Production cannot start right away, and cer tain workflow is followed at the machine as well: 

Evaluate the part program 

Check supplied material 

• Prepare required tools 

Setup and register tools 

Setup part in a fixture I Load program 1 Set various offsets 

Run first part 

• Optimize program if necessary 

Run production Inspect frequently 

Tooling Setup 

Setting up any CNC machine is a multi-step process. Some of these steps have to be performed in a particular order, others have a certain degree of flexibility. Most of the steps are common to all CNC machines, others may vary from one machine manufacturer to another. The first step is the selection of tools. Tools should always be set using an external tool fixture, never in the machine spindle. Use tools that are sharp, preferably new or at least lightly used. If possible, keep frequently used tools in the magazine all the time. This may require cooperation with the programmer, but shortens the unproductive setup time, often significantly.