CNC
CNC
CNC
INTRODUCTION
CNC MILLING
PROGRAM TRANSFERS
CNC MACHINES
NUMERICAL CONTROL
A numerical control, or NC, system controls many machine functions and movements which were traditionally performed by skilled machinists. Numerical control developed out of the need to meet the requirements of high production rates, uniformity and consistent part quality. Programmed instructions are converted into output signals which in turn control machine operations such as spindle speeds, tool selection, tool movement, and cutting fluid flow.
The most basic function of any CNC machine is automatic, precise, and consistent motion control. Rather than applying completely mechanical devices to cause motion as is required on most conventional machine tools, CNC machines allow motion control in a revolutionary manner. All forms of CNC equipment have two or more directions of motion, called axes. These axes can be precisely and automatically positioned along their lengths of travel. The two most common axis types are linear (driven along a straight path) and rotary (driven along a circular path).
Each axis consists of a mechanical component, such as a slide that moves, a servo drive motor that powers the mechanical movement, and a ball screw to transfer the power from the servo drive motor to the mechanical component.
These components, along with the computer controls that govern them, are referred to as an axis drive system.
If a rotary table is added to the machine table, then the fourth axis is designated the b axis.
WORK POSITIONING
The method of accurate work positioning in relation to the cutting tool is called the rectangular coordinate system. On the vertical mill, the horizontal base line is designated the X axis, while the vertical base line is designated the Y axis. The Z axis is at a right angle, perpendicular to both the X and Y axes. Increments for all base lines are specified in linear measurements, for most machines the smallest increment is one ten-thousandth of an inch (.0001). If the machine is graduated in metric the smallest increment is usually one thousandth of a millimeter (.001mm). The rectangular coordinate system allows the mathematical plotting of points in space. These points or locations are called coordinates. The coordinates in turn relate to the tool center and dictate the tool path
CNC MACHINESADVANTAGES/DISADVANTAGES
Advantages: High Repeatability and Precision e.g. Aircraft parts Volume of production is very high Complex contours/surfaces need to be machined. E.g. Turbines Flexibility in job change, automatic tool settings, less scrap More safe, higher productivity, better quality Less paper work, faster prototype production, reduction in lead times
Disadvantages: Costly setup, skilled operators Computers, programming knowledge required Maintenance is difficult
TYPES OF MACHINE
Lathes for metal and plastics *Used to produce 3D product shapes and moulds for plastic products.
Milling machine for mould making and surface milling. *Used to produce dies for die cutting printed products.
CNC LATHE
Automated
version of a manual lathe. Programmed to change tools automatically. Used for turning and boring wood, metal and plastic.
Used to make 3D prototypes, moulds, cutting dies, printing plates and signs.
TOOLS
Most are made from high speed steel (HSS), tungsten carbide or ceramics.
Speeds are the rate at which the tool operates e.g. rpm.
Feeds are the rate at which the cutting tool and work piece move in relation to each other.
Feeds and speeds are determined by cutting depth, material and quality of finish needed. e.g. harder materials need slower feeds and speeds.
Rouging cuts remove larger amounts of material than finishing cuts. Rapid traversing allows the tool or work piece to move rapidly when no machining is taking place.
CNC instructions are called part program commands. When running, a part program is interpreted one command line at a time until all lines are completed. Commands, which are also referred to as blocks, are made up of words which each begin with a letter address and end with a numerical value.
Each letter address relates to a specific machine function. G and M letter addresses are two of the most common. A G letter specifies certain machine preparations such as inch or metric modes, or absolutes versus incremental modes. A M letter specifies miscellaneous machine functions and work like on/off switches for coolant flow, tool changing, or spindle rotation. Other letter addresses are used to direct a wide variety of other machine commands.
CNC PROGRAMMING
Important things to know: Coordinate System Units, incremental or absolute positioning Coordinates: X,Y,Z, RX,RY,RZ Feed rate and spindle speed Coolant Control: On/Off, Flood, Mist Tool Control: Tool and tool parameters
CNC PROGRAMMING
Preparatory Codes: G codes- Initial machining setup and establishing operating conditions
Axis Codes: X,Y,Z - Used to specify motion of the slide along X, Y, Z direction
Feed and Speed Codes: F and S- Specify feed and spindle speed
O - Program number (Used for program identification) N - Sequence number (Used for line identification) G - Preparatory function X - X axis designation Y - Y axis designation Z - Z axis designation R - Radius designation F Feed rate designation S - Spindle speed designation H - Tool length offset designation D - Tool radius offset designation T - Tool Designation M - Miscellaneous function
M00 Program stop M01 Optional program stop M02 Program end M03 Spindle on clockwise M04 Spindle on counterclockwise M05 Spindle stop M06 Tool change M08 Coolant on M09 Coolant off M10 Clamps on M11 Clamps off M30 Program stop, reset to start
Block Format N135 G01 X1.0 Y1.0 Z0.125 F5 Sample Block Restrictions on CNC blocks Each may contain only one tool move Each may contain any number of non-tool move G-codes Each may contain only one feed rate Each may contain only one specified tool or spindle speed The block numbers should be sequential Both the program start flag and the program number must be independent of all other commands (on separate lines) The data within a block should follow the sequence shown in the above sample block
CAD/CAM
Two computer-based systems which impact the use of CNC technology are computer aided design and computer aided manufacturing. A computer aided design, or CAD, system uses computers to graphically create product designs and models. These designs can be reviewed, revised, and refined for optimum end use and application. Once finalized, the CAD design is then exported to a computer aided manufacturing, or CAM, system. CAM systems assist in all phases of manufacturing a product, including process planning, production planning, machining, scheduling, management and quality control.
O0013 N0005 G53 N0010 T0303 N0020 G57 G00 X26.00 Z0.0 S500 M04 N0030 G01 X-0.20 F100 N0040 G00 Z2.0 N0050 X50.0 Z50.0 N0060 T0404 N0070 G57 G00 X22.50 Z2.0 S500 N0080 G01 Z-30.0 F100 N0090 G00 X23.0 Z2.0 S500 N0100 G84 X17.5 Z-20.0 D0=200 D2=200 D3=650 N0110 G00 Z2.0 N0120 X50.0 Z50.0 N0130 M30
O0013
O0013
N0005 G53 N0010 T0404 N0020 G57 G00 X26.0 Z0.0 S500 M04
G57 To set the working zero point as saved G00 Rapid movement (no cutting) X26.0 X location (as a diameter; 13 form zero) Z0.0 Z location S500 Spindle speed is 500 rpm M04 Rotate spindle counterclockwise
O0013 N0005 G53 N0010 T0404 N0020 G57 G00 X26.00 Z0.0 S500 M04 N0030 G01 X-0.20 F100
G01 Linear interpolation (cutting) X-0.20 Move only in x direction until you pass the center by 0.1 mm (facing) F100 Set feed rate to 100 mm/min.
T0404 G57 G00 X26.00 Z0.0 S500 M04 G01 X-0.20 F100 G00 Z2.0
G00
Move rapidly away from work piece (no cutting) Z2.0 the movement is 2 mm away from the face
O0013
N0005 G53
N0010 N0020 N0030 N0040 N0050 T0404 G57 G00 X26.00 Z0.0 S500 M04 G01 X-0.20 F100 G00 Z2.0 X50.0 Z50.0
Go
to a safe location away from the workpiece [x = 50 (25 from zero), z = 50] to change the tool.
O0013 N0005 G53 N0010 T0404 N0020 G57 G00 X26.00 Z0.0 S500 M04 N0030 G01 X-0.20 F100 N0040 G00 Z2.0 N0050 X50.0 Z50.0 N0060 T0404
T0404
O0013
N0005 G53 N0010 N0020 N0030 N0040 N0050 N0060 N0070 T0404 G57 G00 X26.00 Z0.0 S500 M04 G01 X-0.20 F100 G00 Z2.0 X50.0 Z50.0 T0404 G57 G00 X22.50 Z2.0 S500
G57 PS0 G00 Rapid movement (no cutting) X22.50 X location (as a diameter; 11.25 form zero) Z2.0 Z location S500 Spindle speed is 500 rpm
O0013
N0005 G53
N0010 N0020 N0030 N0040 N0050 N0060 N0070 N0080 T0404 G57 G00 X26.00 Z0.0 S500 M04 G01 X-0.20 F100 G00 Z2.0 X50.0 Z50.0 T0404 G57 G00 X25.00 Z2.0 S500 M04 G01 Z-30.0 F100
G01 Linear interpolation (cutting) Z-30 Move only in z direction (external turning) F100 Set feed rate to 100 mm/min.
T0404 G57 G00 X26.00 Z0.0 S500 M04 G01 X-0.20 F100 G00 Z2.0 X50.0 Z50.0 T0404 G57 G00 X25.00 Z2.0 S500 M04 G01 X22.5 Z-70.0 F100 G00 X23.0 Z2.0 S500
G00
Move rapidly away from work piece (no cutting) to location x= 23.0 (11.50 from zero) and z = 2.0.
O0013 N0005 G53 N0010 T0404 N0020 G57 G00 X26.00 Z0.0 S500 M04 N0030 G01 X-0.20 F100 N0040 G00 Z2.0 N0050 X50.0 Z50.0 N0060 T0404 N0070 G57 G00 X25.00 Z2.0 S500 M04 N0080 G01 X22.5 Z-70.0 F100 N0090 G00 X26.0 Z2.0 S500 N0100 G84 X17.5 Z-20.0 D0=200 D2=200 D3=650 G84 Turning cycle for machining the step X17.5 final diameter Z-20 length of step is 20 mm D0=200 Finish allowance in X direction (0.2 mm) D2=200 Finish allowance in Z direction (0.2 mm) D3=650 Depth of cut in each pass (0.65 mm)
O0013 N0005 G53 N0010 T0404 N0020 G57 G00 X26.00 Z0.0 S500 M04 N0030 G01 X-0.20 F100 N0040 G00 Z2.0 N0050 X50.0 Z50.0 N0060 T0404 N0070 G57 G00 X25.00 Z2.0 S500 M04 N0080 G01 X22.5 Z-70.0 F100 N0090 G00 X26.0 Z2.0 S500 N0100 G84 X17.5 Z-20.0 D0=200 D2=200 D3=650 N0110 G00 Z2.0
G00
Move rapidly away from workpiece (no cutting) Z2.0 the movement is 2 mm away from the face.
O0013 N0005 G53 N0010 T0404 N0020 G57 G00 X26.00 Z0.0 S500 M04 N0030 G01 X-0.20 F100 N0040 G00 Z2.0 N0050 X50.0 Z50.0 N0060 T0404 N0070 G57 G00 X25.00 Z2.0 S500 M04 N0080 G01 X22.5 Z-70.0 F100 N0090 G00 X26.0 Z2.0 S500 N0100 G84 X17.5 Z-20.0 D0=200 D2=200 D3=650 N0110 G00 Z2.0 N0120 X50.0 Z50.0
X50.0
O0013 N0005 G53 N0010 T0404 N0020 G57 G00 X26.00 Z0.0 S500 M04 N0030 G01 X-0.20 F100 N0040 G00 Z2.0 N0050 X50.0 Z50.0 N0060 T0404 N0070 G57 G00 X25.00 Z2.0 S500 M04 N0080 G01 X22.5 Z-70.0 F100 N0090 G00 X26.0 Z2.0 S500 N0100 G84 X17.5 Z-20.0 D0=200 D2=200 D3=650 N0110 G00 Z2.0 N0120 X50.0 Z50.0 T00 N0130 M30
M30
Program End
PROGRAMMING EXAMPLE
PROGRAMMING EXAMPLE
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150 N005 G01 X70 Y0 Z-0.5 XYFeed 75 N006 G01 X70 Y60 Z-0.5 XYFeed 75 N007 G01 X30 Y60 Z-0.5 XYFeed 75 N008 G01 X0 Y40 Z-0.5 XYFeed 75 N009 G01 X0 Y0 Z-0.5 XYFeed 75 N010 G81 R3 E9 N7 Z-0.5 N011 M05 N012 M02
PROGRAMMING EXAMPLE
Tool Change G55 X200 Y80 Program 2 N001 M06 T2 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X20 Y15 Z10 XYFeed 150 ZFeed 150 N005 G01 X20 Y15 Z-10 ZFeed 75 N006 G01 X20 Y15 Z10 ZFeed 150 N007 G01 X50 Y15 Z10 ZFeed 150 N008 G01 X50 Y15 Z-10 ZFeed 75 N009 G01 X50 Y15 Z10 ZFeed 150 N010 G01 X50 Y45 Z10 ZFeed 150 N011 G01 X50 Y45 Z-10 ZFeed 75 N012 G01 X50 Y45 Z10 ZFeed 150 N013 M05 N014 M02
PROGRAM INTERPRETATION
Setting the datum to the lower left corner of the work piece
PROGRAM INTERPRETATION
PROGRAM INTERPRETATION
N001 Sequence Number M06 Tool Change (End Mill with Diameter=12mm T1 Tool Number
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400
Start
rpm
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150
Lower
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150 N005 G01 X70 Y0 Z-0.5 XYFeed 75
Move
from the lower left corner of the work piece to the right lower one cutting with feed=75mm/min
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150 N005 G01 X70 Y0 Z-0.5 XYFeed 75 N006 G01 X70 Y60 Z-0.5 XYFeed 75 Move from the lower left corner of the work piece to the right lower one cutting with feed=75mm/min
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150 N005 G01 X70 Y0 Z-0.5 XYFeed 75 N006 G01 X70 Y60 Z-0.5 XYFeed 75 N007 G01 X30 Y60 Z-0.5 XYFeed 75
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150 N005 G01 X70 Y0 Z-0.5 XYFeed 75 N006 G01 X70 Y60 Z-0.5 XYFeed 75 N007 G01 X30 Y60 Z-0.5 XYFeed 75 N008 G01 X0 Y40 Z-0.5 XYFeed 75
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150 N005 G01 X70 Y0 Z-0.5 XYFeed 75 N006 G01 X70 Y60 Z-0.5 XYFeed 75 N007 G01 X30 Y60 Z-0.5 XYFeed 75 N008 G01 X0 Y40 Z-0.5 XYFeed 75 N009 G01 X0 Y0 Z-0.5 XYFeed 75 Complete the countering
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150 N005 G01 X70 Y0 Z-0.5 XYFeed 75 N006 G01 X70 Y60 Z-0.5 XYFeed 75 N007 G01 X30 Y60 Z-0.5 XYFeed 75 N008 G01 X0 Y40 Z-0.5 XYFeed 75 N009 G01 X0 Y0 Z-0.5 XYFeed 75 N010 G81 R3 E9 N7 Z-0.5
Repeat 7 times blocks from N003 to N009 with incremental offset of Z=-0.5
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150 N005 G01 X70 Y0 Z-0.5 XYFeed 75 N006 G01 X70 Y60 Z-0.5 XYFeed 75 N007 G01 X30 Y60 Z-0.5 XYFeed 75 N008 G01 X0 Y40 Z-0.5 XYFeed 75 N009 G01 X0 Y0 Z-0.5 XYFeed 75 N010 G81 R3 E9 N7 Z-0.5 N011 M05
Spindle
Off
PROGRAM INTERPRETATION
G55 X200 Y80 Program 1 N001 M06 T1 N002 M03 rpm 400 N003 G01 X-8 Y0 Z0 XYFeed 150 N004 G01 X-8 Y0 Z-0.5 ZFeed 150 N005 G01 X70 Y0 Z-0.5 XYFeed 75 N006 G01 X70 Y60 Z-0.5 XYFeed 75 N007 G01 X30 Y60 Z-0.5 XYFeed 75 N008 G01 X0 Y40 Z-0.5 XYFeed 75 N009 G01 X0 Y0 Z-0.5 XYFeed 75 N010 G81 R3 E9 N7 Z-0.5 N011 M05 N012 M02
End Program