A CNC user MUST understand the makeup of the CNC machine tool being
utilized. While this may sound like a basic statement, a CNC user must be able
to view the machine from two distinctly different perspectives. Here in key
concept number two, we will be viewing the machine from a programmer's
perspective. Much later, in key concept number seven, we will look at the
machine from an operator's viewpoint.
Basic machining practice - the key to success with any CNC machine
Many forms of CNC machines are designed to enhance or replace what is
currently being done with more conventional machines. The first goal of any CNC
beginner should be to understand the basic machining practice that goes into
using the CNC machine tool. The more the beginning CNC user knows about basic
machining practice, the easier it will be to adapt to CNC.
Think of it this way. If you already know basic machining practice as it
relates to the CNC machine you will be working with, you already know what it
is you want the machine to do. It will be a relatively simple matter of
learning how to tell the CNC machine what it is you want it to do (learning to
program). This is why machinists make the best CNC programmers, operators, and
setup personnel. Machinists already know what it is the machine will be doing.
It will be a relatively simple matter of adapting what they already know to the
For example, a beginner to CNC turning centers should understand the basic
machining practice related to turning operations like rough and finish turning,
rough and finish boring, grooving, threading, and necking. Since this form of
CNC machine can perform multiple operations in a single program (as many CNC
machines can), the beginner should also know the basics of how to process
workpieces machined by turning so a sequence of machining operations can be
developed for workpieces to be machined.
This point cannot be overstressed. Trying to learn about a particular CNC
machine without understanding the basic machining practice related to the
machine would be like trying to learn how to fly an airplane without
understanding the basics of aerodynamics and flight. Just as a beginning pilot
will be in for a great number of problems without understanding aerodynamics,
so is the beginning CNC user have difficulty learning how to utilize CNC
equipment without an understanding of basic machining practice.
Learning about a new CNC machine - the key points
From a programmer's standpoint, as you begin to learn about any new CNC
machine, you should concentrate on four basic areas. First, you should
understand the machine's most basic components. Second, you should become
comfortable with your machine's directions of motion (axes). Third, you should
become familiar with any accessories equipped with the machine. And fourth, you
should find out what programmable functions are included with the machine and
learn how they are programmed.
While you do not have to be a machine designer to work with CNC equipment,
it is important to know how your CNC machine is constructed. Understanding your
machine's construction will help you to gauge the limits of what is possible
with your machine. Just as the race car driver should understand the basics of
suspension systems, breaking systems, and the workings of internal combustion
engines (among other things) in order to get the most out of a given car, so
must the CNC programmer understand the basic workings of the CNC machine in
order to get the most from the CNC machine tool.
For a universal style slant bed turning center, for example, the programmer
should know the most basic machine components, including bed, way system,
headstock & spindle, turret construction, tailstock, and work holding
device. Information regarding the machine's construction including assembly
drawings is usually published right in the machine tool builder's manual. As
you read the machine tool builder's manual, here are some of the machine
capacity and construction questions to which you should find answers.
What is the machine's maximum RPM?
How many spindle ranges does the machine have (and what are the cut-off
points for each range?
What is the spindle and axis drive motor horsepower?
What is the maximum travel distance in each axis?
How many tools can the machine hold?
What way construction does the machine incorporate (usually square ways,
dovetail, and/or linear bearing ways)?
What is the machine's rapid rate (fastest traverse rate)?
What is the machine's fastest cutting feedrate?
These are but a few of the questions you should be asking yourself as you
begin working with any new CNC machine. Truly, the more you know about your
machine's capacity and construction, the easier it will be to get comfortable
with the machine.
Directions of motion (axes)
The CNC programmer MUST know the programmable motion directions (axes)
available for the CNC machine tool. The axes names will vary from one machine
tool type to the next. They are always referred to with a letter address.
Common axis names are X, Y, Z, U, V, and W for linear axes and A, C, and C for
rotary axes. However, the beginning programmer should confirm these axis
designations and directions (plus and minus) in the machine tool builder's
manual since not all machine tool builders conform to the axis names we show.
As discussed in key concept number one, whenever a programmer wishes to
command movement in one or more axes, the letter address corresponding to the
moving axes as well as the destination in each axis are specified. X3.5, for
example tells the machine to move the X axis to a position of 3.5 inches from
the program zero point in X (assuming the absolute mode of programming is used.
The reference point for each axis
Most CNC machines utilize a very accurate position along each axis as a
starting point or reference point for the axis. Some control manufacturers call
this position the zero return position. Others call it the grid zero position.
Yet others call it the home position. Regardless of what it is called, the
reference position is required by many controls to give the control an accurate
point of reference. CNC controls that utilize a reference point for each axis
require that the machine be manually sent to its reference point in each axis
as part of the power up procedure. Once this is completed, the control will be
in sync with the machine's position.
Accessories to the machine
The third area a beginning CNC user should address is related to other
possible additions to the basic machine tool itself. Many CNC machine tools are
equipped with accessories designed to enhance what the basic machine tool can
do. Some of these accessories may be made and supported by the machine tool
builder. These accessories should be well documented in the machine tool
builder's manual. Other accessories may be made by an after-market
manufacturer, in which case a separate manual may be involved.
Examples of CNC accessories include probing systems, tool length measuring
devices, post process gauging systems, automatic pallet changers, adaptive
control systems, bar feeders for turning centers, live tooling and C axis for
turning centers, and automation systems. Truly, the list of potential accessory
devices goes on and on.
The programmer must also know what functions of the CNC machine are
programmable (as well as the commands related to programmable functions). With
low cost CNC equipment, often times many machine functions must be manually
activated. With some CNC milling machines, for example, about the only
programmable function is axis motion. Just about everything else may have to be
activated by the operator. With this type of machine, the spindle speed and
direction, coolant and tool changes may have to be activated manually by the
With full blown CNC equipment, on the other hand, almost everything is
programmable and the operator may only be required to load and remove
workpieces. Once the cycle is activated, the operator may be freed to do other
Reference the machine tool builder's manual to find out what functions of
your machine are programmable. To give you some examples of how many
programmable functions are handled, here is a list a few of the most common
programmable functions along with their related programming words.
An "S" word is used to specify the spindle speed (in RPM for
machining centers). An M03 is used to turn the spindle on in a clockwise
(forward) manner. M04 turns the spindle on in a counter clockwise manner. M05
turns the spindle off. Note that turning centers also have a feature called
constant surface speed which allows spindle speed to also be specified in
surface feet per minute (or meters per minute)
Automatic tool changer (machining center)
A "T" word is used to tell the machine which tool station is to be
placed in the spindle. On most machines, an M06 tells the machine to actually
make the tool change. Tool change (on turning centers) A four digit
"T" word is used to command tool changes on most turning centers. The
first two digits of the T word specify the turret station number and the second
two digits specify the offset number to be used with the tool. T0101, for
example specifies tool station number one with offset number one.
M08 is used to turn on flood coolant. If available M07 is used to turn on
mist coolant. M09 turns off the coolant.
Automatic pallet changer
An M60 command is commonly used to make pallet changes.
Other programmable features to look into
An M60 command is commonly used to make pallet changes.
As stated, programmable functions will vary dramatically from one machine to
the next. The actual programming commands needed will also vary from builder to
builder. Be sure to check the M codes list (miscellaneous functions) given in
the machine tool builder's manual to find out more about what other functions
may be programmable on your particular machine. M codes are commonly used by
the machine tool builder to give the user programmable ON/OFF switches for
machine functions. In any case, you must know what you have available for
activating within your CNC programs.
For turning centers, for example, you may find that the tailstock and
tailstock quill is programmable. The chuck jaw open and close may be
programmable. If the machine has more than one spindle range, commonly the
spindle range selection is programmable. And if the machine has a bar feeder,
it will be programmable. You may even find that your machine's chip conveyor
can be turned on and off through programmed commands. All of this, of course,
is important information to the CNC programmer.