0% found this document useful (0 votes)
10 views

EMT 2543_CCM notes

The document outlines a course on Computer Controlled Manufacturing (EMT 2503), covering topics such as CNC systems, automation in manufacturing, and the evolution of manufacturing technologies. It includes details on teaching methods, assessment strategies, and references for further reading. Additionally, it discusses the advantages and disadvantages of CNC machine tools, automation goals, and control systems used in manufacturing processes.

Uploaded by

baraka.eb19
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

EMT 2543_CCM notes

The document outlines a course on Computer Controlled Manufacturing (EMT 2503), covering topics such as CNC systems, automation in manufacturing, and the evolution of manufacturing technologies. It includes details on teaching methods, assessment strategies, and references for further reading. Additionally, it discusses the advantages and disadvantages of CNC machine tools, automation goals, and control systems used in manufacturing processes.

Uploaded by

baraka.eb19
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

Contents

EMT 2503 COMPUTER CONTROLLED MANUFAC-


TURING

Course outline:

Computer numerical control systems: Evolution of Computer Numerical Control (CNC)


machine tools, principles of operation, classification, and hardware configuration. CNC op-
erational sequence, program formatting and coding, bar coding, methods of programming
and interpolation, high level languages. Machine tool control; types of controllers, motion
converters, machine tool control drives and actuators, linear systems, rotational drives -
pneumatic and hydraulic motors, motion converters. Emergent control methods: Concept of
linear and non-linear adaptive controllers.

Mode of Teaching:

2 Lecture hours per week, 1 hr. Tutorial per week, and 3 laboratory hours per week

Mode of Assessment

Assignments, Laboratory exercises and reports, CAT’s and End of Semester Examination

1
Reference Books:

1. Bedworth, D. D., Henderson, M. R., Worfe, P. M.,Computer Integrated Design and


Manufacturing McGraw-Hill (1991)

2. Chang, T.C. et al., Computer-Aided Manufacturing (3rd Edition) Prentice hall, (2005).

3. Groover, P.,Automation, Production Systems and Computer Integrated Manufacturing,


Prentice Hall (2008). Computer-Aided Manufacturing

4. Boucher, O. T., Computer Automation in Manufacturing

5. Altintas, Y., Manufacturing Automation: Metal Cutting Mechanics, Machine Tool Vi-
brations and CNC Design Cambridge(2006)

Introduction

One of the characteristics that distinguishes man from animal is the ability to use tools
and skills to make items. Manufacturing is the transformation of raw materials into usable
products. It entails the skilful use of tools and self organization in producing useable and
saleable products so as to achieve a better standard of living. The basic purpose of any
manufacturing industry is to create wealth, thus improving the quality of life.

History of Manufacturing

Manufacturing has evolved over the years from stone age, through bronze and iron age until
the time of industrial revolution in the 18th century, when there was a great leap in terms
of productivity and quality. It was not until in the 20th century when the elements of
organization and management of human resource termed as ”scientific management” were
studied and implemented for more economical manufacturing. The largest manufacturing
industries in the 18th and 19th centuries were textile industries. In the 20th century, however,
these were overtaken by the automobile and marine industry. During the first and the second

2
world wars (1914-1918 and 1939-1945), there was a rapid demand for manufactured goods,
especially for the military. This was a major stimulant for development of new materials
and manufacturing technology. The demand for manufactured goods also rose rapidly with
the fast growing world population. The need for standardization and interchangeability was
met by use of jigs, fixtures and gauges in mass production of items. Automation of several
processes was achieved through the use of dedicated mechanical systems. In the 1950’s and
later, there was a sharp rise in demand for more complex parts as well as a much larger
variety. Mass production system was not capable of meeting the demand for larger variety
due to the high cost of change over. Fortunately, the digital computer was invented around
this time and it was readily adopted to machine tools. The numerical control (NC) machine
tools were invented and these replaced the need for coordinated control of skilled machine
operators. Since then, the use of computers has increased tremendously in the manufacturing.
In manufacturing today, computers are used in NC machining, robotics, Computer aided
design (CAD), Computer Aided Manufacturing (CAM), Flexible Manufacturing Systems
(FMS), Adaptive control systems, artificial intelligent (AI) and expert systems. They are used
in planning and control of the manufacturing processes. This has encouraged the automation
of the processes for faster and more economical production.

AUTOMATION IN MANUFACTURING

Manufacturing process has evolved from manual through mechanization to automation.

Definition of automation:

Automation can generally be defined as the process of having machines follow a predeter-
mined sequence of operations with little or no human labor, using specialized equipment
that perform and control all aspects of the manufacturing process. The term ”Machine
Automation” refers to self-regulation of machines by their controllers.

Automation in manufacturing has been implemented in chemical processes as well as in part

3
manufacturing processes such as machining, forging, casting, welding, soldering, in-process
or post-process inspection, quality control, material handling, assembly and packaging.

The thrust of automation arose from the need to cope up with the ever-increasing demand for
high productivity, high product quality and low costs of manufactured goods. Automation is
achieved through the use of a variety of equipment, microprocessors, sensors and actuators
that can observe and control all aspects of the manufacturing process. It can generally be
defined as the process of having machines follow a pre-determined sequence of operations
with little or no human labour, using specialized equipment that perform and control all as-
pects of manufacturing process. Before the advent of computers, pneumatic controllers and
control valves were often implemented in the regulation of parameters such as temperatures,
pressures, flow rates etc. Automation relieves machine operators from the monotonous de-
tails associated with many industrial processes. It also removes them from environmentally
unpleasant situations, such as where there are toxic chemicals, in dirty or high temperature
areas. Automation also makes it possible to control precisely the variation in physical and
chemical properties of the finished product.

Goals of Automation

The main goals for automation include the following:

To integrate various aspects of manufacturing operations - The integration of oper-


ations eases the machine, material flow and human management problem. It also helps
in minimizing the overloading of some workstations while others are idle, thus distrib-
uting workload uniformly.

To improve product quality and uniformity - Automation minimizes handling and since
the machines are programmed, they can produce components of the same quality con-
sistently, as long as the material input is the same. The products are therefore inter-
changeable, i.e., any of the parts produced can be used without need for any adjust-
ments.

4
To improve productivity - Automation can greatly increase the rate of production, as
the set up time is reduced and the automated machines do not require to take a rest
unless it is time for repair or preventive maintenance. Thus the automated machines
can work non-stop for long hours leading to higher productivity.

To reduce labour cost - Automation normally leads to reduction of human labour, or


replacement of a large skilled workforce with higher trained but fewer personnel to
man the automated systems. The reduction of human labour may sometimes lead to
reduction in labour cost.

To reduce human involvement - This is especially important where it is dangerous to in-


volve human resource, for example in nuclear power plants, places with toxic emissions,
mines, or in dangerously hot or very cold environments.

To reduce workpiece damage - Safety of the workpiece is ensured when there is no han-
dling at all. Since this may not be practically possible, the automation aim is to
minimize the handling as much as possible. This would minimize the damage of the
workpieces, especially the fragile elements.

To raise level of safety for personnel - Especially in environments such as those de-
scribed in (5) above.

To economize on floor space - Automating will lead to removal human workers, and also
their work envelope. Machines can then occupy the space, which is in most cases,
relatively smaller.

Note: Sometimes the benefits arising from automation may not justify the costs involved.
Issues such as expected cash flow, payback period, time value of money used in the investment,
interest rates, inflation, obsolescence of equipment, salvage value, et cetera should be taken
into account before embarking on machine automation.

5
CNC Machine Tools

Introduction to Numerical Control of Machines

Numerical control is the operation of machines by coded instruction in form of numerical


data. Numerical control (NC) machines usually refer to systems using manual programming
and punched paper or magnetic tape to store the program. If the machine has a built-in
computer supporting its function, the system is referred to as Computer numerical controlled
(CNC) machine. The most important function of any CNC machine tool is to control motion
precisely and consistently. CNC systems use a dedicated program to perform NC functions in
accordance with the control commands stored in a computer memory. If the host computer is
external to the machine tool and commands several machines as well as other NC devices, the
system is referred to as Direct Numerical Control system. If the microprocessor that interacts
with the host computer is used as a resident controller in the machine tool, the system is
referred to as Distributed Numerical Control system. The distributed numerical control
system may also comprise a management information retrieval package, where information
is returned to the central computer and a variety of reports are presented for management.

Advantages of CNC machine tools

1. Reduction of non-productive time

2. Fewer jigs and fixtures required

3. Complex components may be machined with ease 4. Throughput time is reduced

4. Highly reliable with consistent quality

5. Reduced inspection costs

6. Programs may be changed to allow for machining modification

6
Disadvantages

1. Very expensive

2. Maintenance cost is high owing to the sophistication of the control systems

3. Control systems are expensive

4. May require well-trained programmers/operators.

Parameters Used in Classification and Rating of CNC Machine


Tools

Accuracy: This is the ability to position the machine table / spindle at a desired location.
It is usually a combination of control resolution and hardware accuracy. The control
resolution is the minimum length distinguishable by the control unit, and is normally
governed by the type of actuator used. Hardware accuracy is as a result of tolerances
on the machine elements such as screws and bearings. Note: There are other sources
of errors such as force-induced tool deflections, thermal errors due to cutting process.
The manufacturer-rated machine accuracy does not include machining process-related
errors. The actual accuracy varies from the rated accuracy.

Repeatability: This is the ability of the control system to return to a given location that was
previously programmed into the controller, under identical conditions. It is a statistical
term indicating how closely a machine repeats a given position command. If a the slide
of a machine always moves to a fixed position, then it is said to be highly repeatable,
even if the position is far from the command position. Repeatability is measured by
the standard deviation of the errors. Accuracy is measured as the diameter of the circle
enclosing a target area produced by many repeated experiments. The actual accuracy
of a CNC Machine can be estimated as:

A = X̄ ± R (1)

7
where, A= Accuracy of the CNC Machine
R = Repeatability and
X̄= Average error from the programmed point.

Spindle power and axes power: These are very important as they dictate the type of ma-
terial that can be machined/handled and the maximum rate of machining/processing.

Number of axes: This is analogous to the degrees of freedom. The number of axes of a
machine determines the complexity of the part geometry that can be machined.

Axes limits: These determine the maximum work size that can be machined.

Maximum speeds: - spindle speed, rapid traverse, etc.

Type of controls: This determines the complexity of programming.

Hardware for Numerical Control

In addition to the machine frame and other features found in conventional machines, a typical
Numerical control machine has the following components.

System Controller: This consists of a mechanism for reading the software and converting
the coding into machine instructions. The controller is the heart of the NC operation.
Types of control programs include

• Sequential control e.g. for perforated paper-tape

• Programmable logic control (PLC) - a solid state device with a CPU interacting
with I/O devices to monitor motion.

• Automatic adaptive control (AAC) - continuously adjusts parameters for improve-


ment

• Numerical control - prerecorded written symbolic instructions.

8
Operator’s Console: This contains the necessary control for operating the machine manually.
It could be a swinging cabinet, a rolling cabinet or an overhanging pendant. It offers
the facility for setting up workpieces.

Magnetic controls cabinet: Contains starting switches and magnetic relays for controlling
the flow of electrical power to the pumps, spindle motor, etc. The relays and switches
are controlled by the signals from the controller.

Hydraulic pump: This supplies fluid power for operating hydraulic motors attached to the
lead screws for table movements. Note: Lead screws are, in some machines driven by
electric motors.

Other Functions of a CNC Machine Tool

In addition to the main functions of machine tools, such as holding the workpiece and cut-
ting tool securely and displacing them relative to one another, the machine tool must have
provision for performing functions such as automatically altering the spindle speed and feed
rates, tool changing, coolant application etc. These extra functions must be included in the
programme for execution. Some of the major functions performed by the control systems
include: Displacement of slide members, angular rotation of circular tables, stop and start
of the main spindle, change of spindle speeds, reversing of spindle, change of feed rate of
slide members, rotating of tool turret, change of tools, cutting fluid, on/off, lock table posi-
tion, loading of workpiece, transfer of workpiece Note: Not all machines are equipped with
automatic operation for all the above listed functions.

Control Loops

CNC systems require motor drives to control both the position and the velocity of the machine
axes. Each axis must be driven separately and follow the command signal generated by the
NC control. There are two ways to activate the motor drives: the open-loop system and the

9
Workpiece
Fixture
Stepper Table
Pulses motor Lead screw
Numerical ∆x, v Electric
control logic pulse generator

Figure 1: Open loop control

closed-loop system. The following sections will describe these two systems.

Open loop control

In general, an open loop control is a system where the output variables have no effect on the
control of the input. In the open loop system, a device is instructed to move to a certain
location, but the control unit does not ascertain that the device reaches the predetermined
location. Open-loop principles are also employed in the use of computers to manipulate
electric or electro-hydraulic stepping motors for machine tool control. Discrete signals feed
into the control unit, and instructions move to the stepping motor drive unit. One pulse input
to the motor drives turns it through one step. The main variables in the open-loop control
deal with the stepping motor. These are the step angle, angle of rotation and rotational
speed of the motor. The drive to the machine element may be a leadscrew, ball-bearing
screw, or rack and pinion. Open Loop - Programmed instructions are fed into the controller
through an input device. These instructions are then converted to electrical pulses (signals)
by the controller and sent to the servo amplifier to energize the servo motors. The cumulative
number of electrical pulses determines the distance each servo drive will move, and the pulse
frequency determines the velocity.

10
Example:

The motor shaft is directly connected to the leadscrew for driving an NC machine table. The
leadscrew has a step angle of 1.8. If the pitch of the leadscrew is 2.5mm, determine how
closely the table’s position can be controlled. Suppose we want to move the table at 120
mm/min. What would be the rotational speed of the motor and the pulse frequency?

Soln.

One complete revolution of motor = 360/1.8 = 200 steps. (This corresponds to 200 pulses)
One revolution of leadscrew moves the table = 2.5 mm. Therefore, the table can be controlled
up to 2.5/200 mm increments = 0.0125mm To achieve the table speed of 120 mm/min, the
leadscrew speed (and hence the motor speed) ought to be 120/2.5 = 48 rpm. The pulse
frequency,
Np
fp = (2)
60
where p is the number of pulses per revolution and N is the motor speed. Thus,

48 × 200
fp =
60
= 160 pulses/sec

Note: Each machine movement to be controlled has its own stepping motor and drive.
The open-loop system has a drawback in that there is no feedback system to check whether
the program position and velocity have been achieved. If the system performance is affected
by say load or temperature, then the actual output could deviate from the desired output.
For these reasons, the open-loop system is normally used in point-to-point systems where the
accuracy requirements are not critical.

Closed loop control

In order to completely automate a process of a machine tool, it is necessary to employ control


systems that can compare the desired set of results with the actual results, and take corrective

11
Z

Motors and drives

Y
X
Numerical
Controller

Figure 2: Open loop control for 3-axis machine

action. This is the essence of closed-loop feedback systems. Although open-loop control is
simple and relatively cheap, it is not as accurate as closed-loop system. In a closed-loop
control system, the machine motion is normally actuated by servomotors and is monitored
by a feedback unit that may be electronic, mechanical or optical. The feedback subsystem in
a closed-loop system monitors continuously, the actual output and corrects any discrepancy
from the programmed input. The feedback subsystem could be either analog or digital. The
analog systems measure the variation of physical variables such as position and velocity in
terms of voltage levels. Digital systems monitor output variations by means of electrical
pulses. unit transmits position signals through the feedback signal circuit to the control unit
where the signals are compared continuously with program signals. The command signal is
fed through an amplifier to actuate the drive motor until the difference between the command
signal and the actual slide position reaches zero. When the error signal is zero, the machine
movements are at the exact or very close to the positions commanded. Most modern NC
systems have closed loop control with a resolution of up to 2.5 µm.

12
Figure 3: Closed-loop for a 3-axis machine tool

CNC OPERATIONAL SEQUENCE

From the design drawings and specifications, the part programmer identifies the various
operations required to manufacture the part taking into consideration the materials to be
used, the dimensions, the required tolerances, etc, and selects the necessary tools and other
parameters for the operation. More often than not, the part programmer will refer back
to the designer for clarification and sometimes for design modifications. After identification
of the operations, the programmer prepares the program (Part programming), which is a
sequence of symbolic codes that specifies the desired machine actions. The program may be
prepared manually or generated by use of a computer - either by computational or direct
from design drawing (Computer assisted part programming). The next step is the input
translation. In older machines, the process involved punching of tapes using a special printer
to translate the code to machine language. Modern systems use disks or direct computer
inputs. After coding, it is important to check for errors. This can be done by simulating the
operations. This is the verification stage. A plotter simulates the movements of the tool and

13
Design drawing

Identification of Preparation of Program


Machine operations (Part programming)

Program Verification Tape preparation


(dry running) (or Input translation)

Post processing and


Actual machining

Figure 4: CNC Operation sequence

graphically displays the final part in 2D on paper. Alternatively, the tools are offset, and the
actions observed without cutting (this is a post-processing action). Any errors detected are
then corrected at this stage. The final step is the post-processing step, whereby the coded
instructions are converted into machine tool action, and the actual machining takes place.

Nomenclature for axes coordinate system

A universal standard axis system is employed. The Cartesian coordinate system is the
most common system used to define a point in space. Each machine tool has a standard
coordinate axis system, which allows the part programmer to define unambiguously the
sequence of operations and movements of the machine tool, cutting tool and part. Machine
tool construction is based on two or three perpendicular axes of motion and an axis of
rotation. The basic convention is that the axis of the main machine spindle, whether it be
the axis of the tool spindle or the axis about which the workpiece rotates, is denoted as the Z-

14
Figure 5: CNC Right-hand axis convention
(a)Relationship between axes
(b) Relationship between positive linear and rotary displacements

axis. The other axes are then designated accordingly. See Fig.5 for the sign convention. The
Z-axis is positive in the direction from the workpiece towards the tool-holder or the spindle.
For machine tools that do not possess a principle spindle, the Z-axis is perpendicular to the
work-holding surface. Once the coordinate axis is known, the parts programmer may have
the option of specifying the tool position relative to the origin of the coordinate axes. NC
machines may specify the zero point as a fixed zero or floating point. In fixed zero, the origin
is always located at the same point on the machine table and is the lower left hand corner.
Locations are defined by positive X and Y coordinates. A floating point allows the zero point
to be set at any position on the machine table. The floating point method is more common.

Word address format in numerical control

Almost all modern CNC controls use the word address format, whereby each command
consists of a CNC word containing a letter address and a numerical value. The letter address
tells the control the kind of word, and the numerical value tells it the value of the word.
Typical examples are shown in Table 1.

15
Table 1: Some Common Letter Address Specifications
Type Function Example
N Sequence number; used for identification N15 = line 15
O Program number O6205 = program name
G Preparatory function G01 = linear interpolation
M Miscellaneous/ Auxiliary function M30 = End of program
F Feed rate designation F80 = 80 mm/min
S Speed designation S6500 = 6500 rpm
T Tool designation T09 = Tool no. 9
X,Y,Z Axis designation Z10 = move to point x,y,10

Types of programming and interpolation

Numerical control programming can be classified into two categories. These are point to point
(PTP) and continuous path. In a PTP system, accurate positional control is required only to
place the spindle, workpiece or other machine members in fixed positions for such operations
as spot welding, drilling, boring, reaming or tapping. In between these positions, the only
requirement is that the machine members move from one point to another without regard to
the path taken. Since this movement from one point to the next is non-machining, it is made
as rapidly as possible to reduce idle time. Movements in more than one axis may take place
simultaneously (with separate controls) or sequentially (consumes more time). Though the
path taken between the two points is generally not important, care must be taken to avoid
collision with workpiece or fixture. In order to avoid errors due to backlash, it is advisable
to approach a point always from the same direction along any axis. PTP is extensively used
on machines that can move in one direction only. In some cases, PTP method is used to
machine a straight line and a contour. See example below. In such cases, the number of
steps determines how close the actual profile is to the specified profile. In order to get much
closer to the specified line, much smaller step sizes will be needed and hence, a much longer
program.

16
Figure 6: Point to point system

For a continuous path system, the motion is controlled on more than one axis continuously
and simultaneously. The machine controls not only the destinations, but also the paths
through which the tool reaches these destinations. The cutting tool contacts the workpiece
as coordinate movements take place. This system, which is also known as contouring system,
is typically used in milling, grinding, turning, flame cutting and pocketing operations.

The main difference between continuous path programming (CPP) and PTP is the interpo-
lation routine. The problem is to provide control for the tool continuously, which requires
changes in two or more axes simultaneously, as the machining progresses. Suppose, in Fig.
7, the length of the segment MN is 100 mm, and the movement to be made is from M to N.
The displacement in x - direction is

100 cos(30) = 86.6 mm,

while that in y- direction has to be 50 mm.


This type of cut requires the two driving motors to run simultaneously at two different speeds.
This contouring system is certainly more expensive than the PTP system. The control of
the travel rate in two or more directions, proportional to the distance moved is called linear

17
Figure 7: Continuous path system

interpolation. The shape produced is the result of a series of straight-line machining moves
programmed in sufficient quantity to give an acceptable comparison between the designed
shape and the actual shape. Let vf be the desired velocity in the direction MN. Then the
velocities along the two axes, vx and vy , are
4x)
vx = √ vf (3)
(4x2 + 4y 2

4y
vy = √ vf (4)
(4x2 + 4y 2

where 4x and 4y are the displacements along the x and y axes, respectively.
In linear interpolation for a circular surface, several thousand discrete points connected by
straight lines would be required. Most machine control units, however have a circular inter-
polator, in which the programming for a circular path is the end points of the arc, the radius,
the arc center and the direction of the cutter. Example:
G02G17x56.5z70.0R65.5
The circular interpolator breaks up the span into the smallest straight line resolution units
(Basic Length Units(BLU)) available in the control. The control computes and generates the
controlling signal to achieve the required movements. Another type of interpolation is the

18
parabolic interpolation for free-form surfaces. This usually requires generation of points for
cutter paths, through a computer programme.

Circular interpolation

If an NC controller does not have built-in functions for complicated geometries such as
circles, parabolas etc, these geometries can be approximated using an offline interpolation
procedure. The main task in this case would be to determine the number of interpolation
points that would guarantee the desired results in terms of tolerances. Most computer assisted
part programming languages have subroutines for automatically calculating these points.
Interpolation can be used to produce curves and circular or parabolic arcs to very close
tolerances. Circular interpolation is performed by specifying an inner, outer or total tolerance,
each of which is the maximum allowable deviation between the desired curve and the actual
line.

C1 G F

C3
E

D
C2

A C4 B C1(8,27); R1=20 mm
A(4,5)
B(29,5) C (31.5,8.5); R =2.5 mm
2 2
D(49,10)
E(49,20) C (37.5,22.5); R =2.5mm
3 3
F(35,27)
G(29,27) C4(8,5); R4 = 4 mm

Figure 8:

19
Assignment 1

Q1. Figure 8 shows a workpiece profile that is to be generated using a CNC milling machine.
The cutting tool is an end mill of diameter is 5 mm, with two cutting edges. Due to the
directionality of the stiffness of the machine structure, it is desired that the feed rate should
not exceed 0.15 mm/tooth while machining the curved surface, and 0.2mm/tooth while
machining the straight surface. The cutting speed for the material should be 80 m/min.

(a) Calculate the spindle speed required.

(b) Write a numerical control code for the profile generation.

Q2. Interpret block by block, the NC program shown in Table 2. Indicate the G and M
functions for each block, and sketch the complete NC tool centre path with corresponding
coordinates. Mark the corresponding NC blocks on the tool path segments. A list of common
G&M codes is given below.

20
Table 2: NC Program
N010 G90G71M03S1800T05
N020 G00Z7
N030 G01Z0F100M08
N040 X30
N050 X90Y10
N060 Y40
N070 G02G91X-30Y30I0J-30
N080 G01X-40
N090 G03G90X0Y50I10J-30
N100 G01Y0
N110 Z27
N120 G00X30Y40
N130 G01Z-2.5
N140 Z7
N150 G00X0Y0Z20M05M02

21
Some common G and M codes

Preparatory functions

G00* RAPID POSITIONING MOTION (X,Y,Z,A,B) (SETTING 10, 56, 101)


G01 LINEAR INTERPOLATION MOTION (X,Y,Z,A,B,F) (SETTING 85)
G02 CIRCULAR INTERPOLATION MOTION CW (X,Y,Z,A,I,J,K,R,F)
G03 CIRCULAR INTERPOLATION MOTION CCW (X,Y,Z,A,I,J,K,R,F)
G04 DWELL (P) (P=seconds”.”milliseconds)
G09 EXACT STOP, NON-MODAL
G10 PROGRAMMABLE OFFSET SETTING (X,Y,Z,A,L,P,R)
G12 CW CIRCULAR POCKET MILLING (Z,I,K,Q,D,L,F)
G13 CCW CIRCULAR POCKET MILLING (Z,I,K,Q,D,L,F)
G17* CIRCULAR MOTION XY PLANE SELECTION (G02 or G03) (SETTING 56)
G18 CIRCULAR MOTION ZX PLANE SELECTION (G02 or G03)
G19 CIRCULAR MOTION YZ PLANE SELECTION (G02 or G03)
G20* VERIFY INCH COORDINATE POSITIONING (SETTING 9, set to INCH)
G21 VERIFY METRIC COORDINATE POSITIONING (SETTING 9 set to METRIC)
G28 MACHINE ZERO RETURN THRU REF. POINT (X,Y,Z,A,B) (SETTING 108)
G29 MOVE TO LOCATION THROUGH G28 REF. POINT (X,Y,Z,A,B)
G31** FEED UNTIL SKIP FUNCTION (X,Y,Z,A,B,F)
G35** AUTOMATIC TOOL DIAMETER MEASUREMENT (D,H,Z,F)
G36** AUTOMATIC WORK OFFSET MEASUREMENT (X,Y,Z,A,B,I,J,K,F)
G37** AUTOMATIC TOOL LENGTH MEASUREMENT (D,H,Z,F)
G40* CUTTER COMP CANCEL G41/G42/G141 (X,Y)
G41 2D CUTTER COMPENSATION, LEFT (X,Y,D) (SETTING 40, 43, 44, 58)
G42 2D CUTTER COMPENSATION, RIGHT (X,Y,D) (SETTING 40, 43, 44, 58)
G43 TOOL LENGTH COMPENSATION+ (H,Z) (SETTING 15)
G44 TOOL LENGTH COMPENSATION- (H,Z) (SETTING 15)

22
G47 TEXT ENGRAVING (X,Y,Z,R,I,J,P,E,F,) (Macro Variable 599 Change Serial #)
G49* TOOL LENGTH COMPENSATION CANCEL G43/G44/G143 (SETTING 56)
G50* SCALING G51 CANCEL (SETTING 56)
G51** SCALING (X,Y,Z,P) (SETTING 71)
G52 WORK OFFSET COORDINATE POSITIONING (YASNAC) (SETTING 33)
G52 GLOBAL WORK COORDINATE OFFSET SHIFT (FANUC) (SETTING 33)
G52 GLOBAL WORK COORDINATE OFFSET SHIFT (HAAS) (SETTING 33)
G53 MACHINE COORDINATE POSITIONING, NON-MODAL (X,Y,Z,A,B)
G54* WORK OFFSET COORDINATE POSITIONING #1 (SETTING 56)
G55 WORK OFFSET COORDINATE POSITIONING #2
G56 WORK OFFSET COORDINATE POSITIONING #3
G57 WORK OFFSET COORDINATE POSITIONING #4
G58 WORK OFFSET COORDINATE POSITIONING #5
G59 WORK OFFSET COORDINATE POSITIONING #6
G60 UNI-DIRECTIONAL POSITIONING (X,Y,Z,A,B) (SETTING 35)
G61 EXACT STOP, MODAL (X,Y,Z,A,B)
G64* EXACT STOP G61 MODE CANCEL (SETTING 56)
G65** MACRO SUB-ROUTINE CALL
G68** ROTATION (G17,G18,G19,X,Y,Z,R) (OPTION) (SETTING 72, 73)
G69* ROTATION G68 CANCEL (SETTING 56)
G70 BOLT HOLE CIRCLE with a CANNED CYCLE (I,J,L)
DEFAULT *
OPTIONAL **
G71 BOLT HOLE ARC with a CANNED CYCLE (I,J,K,L)
G72 BOLT HOLES ALONG AN ANGLE with a CANNED CYCLE (I,J,L)
G73 HIGH SPEED PECK DRILL CANNED CYCLE (X,Y,A,B,Z,I,J,K,Q,P,R,L,F) (SET-
TING 22, 52)
G74 REVERSE TAPPING CANNED CYCLE (X,Y,A,B,Z,J,R,L,F) (SETTING 130)
G76 FINE BORING CANNED CYCLE (X,Y,A,B,Z,I,J,P,Q,R,L,F) (SETTING 27)

23
G77 BACK BORE CANNED CYCLE (X,Y,A,B,Z,I,J,Q,R,L,F) (SETTING 27)
G80* CANCEL CANNED CYCLE (SETTING 56)
G81 DRILL CANNED CYCLE (X,Y,A,B,Z,R,L,F)
G82 SPOT DRILL / COUNTERBORE CANNED CYCLE (X,Y,A,B,Z,P,R,L,F)
G83 PECK DRILL CANNED CYCLE (X,Y,A,B,Z,I,J,K,Q,P,R,L,F) (SETTING 22, 52)
G84 TAPPING CANNED CYCLE (X,Y,A,B,Z,J,R,L,F) (SETTING 130)
G85 BORE IN, BORE OUT CANNED CYCLE (X,Y,A,B,Z,R,L,F)
G86 BORE IN, STOP, RAPID OUT CANNED CYCLE (X,Y,A,B,Z,R,L,F)
G87 BORE IN AND MANUAL RETRACT CANNED CYCLE (X,Y,A,B,Z,R,L,F)
G88 BORE IN, DWELL, MANUAL RETRACT CANNED CYCLE (X,Y,A,B,Z,P,R,L,F)
G89 BORE IN, DWELL, BORE OUT (X,Y,A,B,Z,P,R,L,F)
G90* ABSOLUTE POSITIONING COMMAND
G91 INCREMENTAL POSITIONING COMMAND (SETTING 29)
G92 GLOBAL WORK COORDINATE SYSTEM SHIFT (FANUC) (HAAS) (SETTING 33)
G92 SET WORK COORDINATE VALUE (YASNAC) (SETTING 33)
G93 INVERSE TIME FEED MODE ON
G94* INVERSE TIME FEED MODE OFF / FEED PER MINUTE ON (SETTING 56)
G98* CANNED CYCLE INITIAL POINT RETURN (SETTING 56)
G99 CANNED CYCLE ”R” PLANE RETURN
G100 MIRROR IMAGE G101 CANCEL (X,Y,Z,A,B)
G101 MIRROR IMAGE (X,Y,Z,A,B) (SETTING 45, 46, 47, 48, 80)
G102 PROGRAMMABLE OUTPUT TO RS-232 (X,Y,Z,A,B)
G103 LIMIT BLOCK LOOKAHEAD (P0-P15 for number control looks ahead)
G107 CYLINDRICAL MAPPING (X,Y,Z,A,Q,R,)
G110-G129 WORK OFFSET COORDINATE POSITIONING #7-26
G136** AUTOMATIC WORK OFFSET CENTER MEASUREMENT
G141 3D+ CUTTER COMPENSATION (X,Y,Z,I,J,K,D,F)
G143** 5-AXIS TOOL LENGTH COMPENSATION+ (X,Y,Z,A,B,H) (SETTING 15, 117)
G150 GENERAL PURPOSE POCKET MILLING (X,Y,P,Z,I,J,K,Q,D,R,L,S,F)

24
G153** 5-AXIS HIGH SPEED PECK DRILL CANNED CYCLE (X,Y,A,B,Z,I,J,K,Q,P,E,L,F)
(SETTING 22)
G154** 5-AXIS REVERSE TAPPING CANNED CYCLE (X,Y,A,B,Z,J,E,L,F)
G161** 5-AXIS DRILL CANNED CYCLE (X,Y,A,B,Z,E,L,F)
G162** 5-AXIS SPOT DRILL / COUNTERBORE CANNED CYCLE (X,Y,A,B,Z,P,E,L,F)
G163** 5-AXIS PECK DRILL CANNED CYCLE (X,Y,A,B,Z,I,J,K,Q,P,E,L,F) (SETTING
22)
G164** 5-AXIS TAPPING CANNED CYCLE (X,Y,A,B,Z,J,E,L,F)
G165** 5-AXIS BORE IN, BORE OUT CANNED CYCLE (X,Y,A,B,Z,E,L,F)
G166** 5-AXIS BORE IN, STOP, RAPID OUT CANNED CYCLE (X,Y,A,B,Z,E,L,F)
G169** 5-AXIS BORE IN, DWELL, BORE OUT (X,Y,A,B,Z,P,E,L,F)
G174 SPECIAL PURPOSE NON-VERTICAL RIGID TAPPING CCW (X,Y,Z,F)
G184 SPECIAL PURPOSE NON-VERTICAL RIGID TAPPING CW (X,Y,Z,F)
G187 ACCURACY CONTROL FOR HIGH SPEED MACHINING (E) (SETTING 85)

MISCELLANEOUS FUNCTIONS

M00 PROGRAM STOP (SETTING 42)


M01 OPTIONAL PROGRAM STOP (SETTING 17)
M02 PROGRAM END
M03 SPINDLE ON CLOCKWISE (S) (SETTING 144)
M04 SPINDLE ON COUNTERCLOCKWISE (S) (SETTING 144)
M05 SPINDLE STOP
M06 TOOL CHANGE (T) (SETTING 42, 87)
M08 COOLANT ON (SETTING 32)
M09 COOLANT OFF
M10** 4th AXIS BRAKE ON

25
M11** 4th AXIS BRAKE RELEASE
M12** 5th AXIS BRAKE ON
M13** 5th AXIS BRAKE RELEASE
M19** ORIENT SPINDLE (P,R)
M21-M28 OPTIONAL USER M CODE INTERFACE WITH M-FIN SIGNAL
M30 PROGRAM END AND RESET (SETTING 2, 39, 56, 83)
M31 CHIP AUGER FORWARD (SETTING 114, 115)
M32 CHIP AUGER REVERSE (SETTING 114, 115)
M33 CHIP AUGER STOP
M34 COOLANT SPIGOT POSITION DOWN, INCREMENT
M35 COOLANT SPIGOT POSITION UP, DECREMENT
M36** PALLET PART READY
M39 ROTATE TOOL TURRET (T) (SETTING 86)
M41 SPINDLE LOW GEAR OVERRIDE
M42 SPINDLE HIGH GEAR OVERRIDE
M50** EXECUTE PALLET CHANGE (SETTING 121 thru 129)
M51-M58 OPTIONAL USER M CODE SET
M59 OUTPUT RELAY SET (N)
M61-M68 OPTIONAL USER M CODE CLEAR
M69 OUTPUT RELAY CLEAR (N)
M75 SET G35 OR G136 REFERENCE POINT
M76 CONTROL DISPLAY INACTIVE
M77 CONTROL DISPLAY ACTIVE
M78 ALARM IF SKIP SIGNAL FOUND
M79 ALARM IF SKIP SIGNAL NOT FOUND
M80** AUTOMATIC DOOR OPEN (SETTING 131)
M81** AUTOMATIC DOOR CLOSE (SETTING 131)
M82 TOOL UNCLAMP
M83** AUTO AIR JET ON

26
M84** AUTO AIR JET OFF
M86 TOOL CLAMP
M88** COOLANT THROUGH SPINDLE ON (SETTING 32)
M89** COOLANT THROUGH SPINDLE OFF
M93 AXIS POS CAPTURE START (P,Q)
M94 AXIS POS CAPTURE STOP
M95 SLEEP MODE
M96 JUMP IF NO SIGNAL (P,Q)
M97 LOCAL SUB-PROGRAM CALL (P,L)
M98 SUB-PROGRAM CALL (P,L)
M99 SUB-PROGRAM/ROUTINE RETURN OR LOOP (SETTING 118)
M109** INTERACTIVE USER INPUT (P)

27
High level languages

There are several high-level processing languages that can be used for numerical control.
Some of the most commonly used NC languages include the following

• Automatically Programmed Tool (APT)

• Automatic System for Positioning Tools (SPOT)

• Adaptation of APT (ADAPT)

• Extended Subset of APT (EXAPT)

• Sundstrand Processing Language Internally Translated (SPLIT), etc.

In all these languages, a postprocessor is required to convert the program into the specific
language that a particular CNC machine tool can understand. The final program used by
the machine tool will be identical, whether it is prepared in machine language, by a CAM
system or by the computer in a high-level programming languages. Note: Different machine
tools require their information differently, and therefore there are different postprocessors.
Of all the above languages, APT is the most widely used.

The APT language

This language is easy to understand as it uses simple statements to command the cutting
tool through its sequence of machining operations. Like any other high-level language, APT
allows arithmetic operations, subroutines, macros, looping logic, et cetera. Moreover, it allows
parametric representations of geometric entities ranging from a single point in space to very
complex 3-D sculptured surfaces. Though currently APT is being replaced by graphics-
based user-friendly interactive CAD/CAM software systems, it is important to understand
the very basic structure of APT programming system since most CAD/CAM systems use
APT standards in processing NC tool path data.

28
APT statements

There are 4 types of statements and over 400 words in APT vocabulary. These statements
are

Geometry statements These are also called definition statements. They define the geo-
metric elements that comprise the workpiece.

Motion statements These are used to describe the path taken by the tool

Post processor statements These apply to specific machine tool and control system. They
are used to specify feeds and speeds and actuate other features of the machine.

Auxiliary statements These are used to identify the workpiece, tool, tolerances, etc.

Geometry statements

The geometry of a workpiece is defined using points, lines, arcs, space curves and surfaces.
Each geometric entity is mathematically represented and stored as variables by APT. Each
geometry is defined according to the following format:
(Geometry’s symbol)=Geometry/Dimension and parameters of the geometry
For example, to define a point P1, we write
P1=POINT/3.0,2.1,8.5
The geometry symbol is P1, and the geometry statement is POINT, and the descriptive data
are the coordinates of the point. Some typical APT geometry vocabulary words are given in
the Table 3.
APT allows the use of parabolas, hyperbolas, ellipses and parametric curves. Splines are the
most common parametric curves that allow flexible and smooth curve fit passing through a
given set of points.

Note: There are many ways of defining some of the geometry types. Refer to the recom-
mended textbooks [1] and [5]for details.

29
Table 3: Typical APT geometry words
Geometric Type APT Vocabulary word
Point POINT
Line LINE
Spline SPLINE
Plane PLANE
Circle CIRCLE
Cylinder CYLNDR
Pattern PATERN

It is important to note the following points for geometry statements;

(1) The coordinate data must be specified in the order x,y,z

(2) Any symbol used as descriptive data or definitional modifier must have been previously
defined.

(3) A symbol can be used to define one geometry element

(4) Only one symbol can be used to define any given element

(5) Lines defined by APT are considered to be of infinite length in both directions. The
same applies to planes.

(6) circles are complete circles.

Tool motion statements

There are two types of tool motion commands in APT, namely, Point to Point and continuous
tool motion command. The general form of motion statement is:
Motion command/descrtiptive data
If the requirement is to move the tool to a specified point from its current position, the PTP

30
commands are used. There are two types of PTP motion commands. These are
GOTO/Point, Feedrate
and
GODLTA/Point,Feedrate
Both commands take the tool to the point indicated to the right of the forward slash with
an optional feed rate provided. The part coordinates are absolute for GOTO statement and
incremental for GODLTA statement. Such statements are especially useful for drilling and
punching operations.
For continuous potion commands, the controlled path is defined by the part, drive and check
surfaces.

Drive surface This is the surface that guides the side of the cutter. It is parallel to the
tool axis.

Part surface This is the surface on which the bottom of the tool rides. It doesn’t have to
be an actual surface of the workpiece.

Check surface This is the surface that bounds the tool motion

Modifier words are used within the descriptive data of the motion statement. The main
modifier words are TO, ON and PAST. They define the position of the tool with respect to
the surface. If the drive surface is tangent to a circular check surface, a fourth modifier word
TANTO is used.
The APT continuous motion statement commands the tool to move along the ’drive’ and
’part’ surfaces and the movement ends when the tool is at the ’check’ surface. The general
format for motion command is
Motion command/drive surface,modifier word, part surface,modifier word, check surface
There are six motion commands. These are:

• GOFWD

31
• GOBACK

• GOUP

• GODOWN

• GORGT

• GOLFT

Note: The check surface and the drive surface must be re-defined in each new command.

Post-processor statements

These are statements that control the operation of spindle, the feed and other features of the
machine tool. Typical examples are:
FEDRAT, used to specify feed rate (eg in mm/min);
RAPID, used for rapid motions;
END, used to stop the machine at the end of a section of program;
FINI, indicates the end of the complete program. It is the last word in the APT program;
COOLNT, Turns the coolant on, off and actuates other coolant options.

Auxiliary statements

These are used for cutter size specifications, part identifications etc.

Review Questions

Attempt questions 2,,3,5, 12, 14, 15, 16, 22 and 23 on pages 471 ∼ 475 of the textbook
ref[1].

32
Adaptive control of machining system

Adaptive control is a control system that measures certain output variables and uses these
variables to control machining parameters such as speed or feed.

The process variables in machining include machining forces, spindle deflections, torque,
cutting temperature, vibration amplitudes and power consumption. In order to perform
adaptive control, it is important that a way is available to measure such variables.

Adaptive control of machining may be encouraged if:

(1) The in-process time consumes a significant portion of the machining cycle time, that
is, over 40% of the cycle time

(2) There are significant sources of variability in the job, for which adaptive control can
compensate

(3) The cost of operating a machine tool is high

(4) When dealing with difficult-to-cut materials such as titanium.

Sources of variability

The variability on the work may be as a result of:

(1) Variable geometry of cut in the form of changing width or depth or cut, e.g., in profile
milling or rough cutting of a blank

(2) Variable workpiece hardness

(3) Variable workpiece rigidity, e.g., when machining fins.

(4) Dulling of tool

(5) Discontinuities in the workpiece.

A typical configuration of adaptive control of milling is shown in Fig. 9

33
Set value of
cutting force

Adjust feed rate


to realize set value
No air gap of force

Measure
cutting force Air gap
detector

Air gap Increase


feed rate control speed

Figure 9: Typical configuration of adaptive control of machining

Benefits of adaptive control of machining

• Increased production rate

• Increased tool life

• Greater part protection

• Less operator intervention

• Easier part programming

In-Process measurements

Automatic measurement or gauging of a component while it is in position on the machine, and


while the correction of errors is still possible is what is referred to as in-process measurement.
It is especially applied in the adaptive control systems.

34
In modern CNC machines the accuracy with which slide movements are generally made and
monitored can, in the case of some classes of work, eliminate the need for further control,
since the slide movements, and therefore the relative tool movements are quite accurate.

For some cases the degree of control is insufficient, for example, where the slides are not
accurate enough or when there is wear or breakage of tool, in which case there is no direct
link with the slide movement, and therefore no compensation. Such are cases that often
require in-process measurements. An electronic touch-and-trigger probe could can be used
the in-process measurement, but this has to have a reference datum.

There are quite a number of difficulties for in-process measurements, especially, when the
work area as an accumulation of swarf and coolant, or when the work’s temperatures are
high due to the machining process.

35

You might also like