Sei sulla pagina 1di 15

Mechantronic and Control for Production Plants

Chair of
Machine Tools
Prof. Dr.-Ing. Christian Brecher
Exercise:

Mechantronic and Control for Production Plants

Topic:

Numerical Control 1: Structure, programming, CAM

Assistant
responsible:

Frederik Wellmann, M.Sc. RWTH


F.Wellmann@wzl.rwth-aachen.de
WZL, 53B R426
Phone.: 0241 / 80-28235

1. Introduction
Depending on the number of pieces and the complexity of the component to be manufactured,
different programming methods are used for the creation of NC programs. These methods are divided
into

manual
shopfloor-oriented (SFP)
CAM

programming methods.
In this exercise, the basic operations of a NC control are explained. Afterwards, the different
programming methods are presented and illustrated by examples.

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

2. Basics "Manual and shopfloor-oriented programming"


Operation of a numerical control
In the following, the NC core functionality based on the flow of information will be described beginning
with the interpretation of the NC program.
The operation of numerical control is determined on the one hand from the NC core functionality and
on the other hand by additional functions. The NC core functionality that is described in this section is
absolutely necessary for controlling a machine tool and therefore similarly implemented in every
available controller on the market. Additional functions like programming and tool management
capabilities are technology and user specific and might not be found in every control.

Figure 1: internal information flow of the numerical control


In the figure the control internal information flow is illustrated. The input data of an NC is the NC
program that is edited as ASCII file including tool paths, cycles, and tool data and operating data.

NC interpreter
The NC interpreter parses the NC program and translates the information into the control internal data
format. For each NC block the interpreter hands over information concerning the start and end points
of the tool path and the type of motion (circular, linear, ...) to the functional unit for processing
geometric data. Switching commands for instance for a tool change or spindle start are passed to the
PLC.

Geometry data processing


In the figure the functionality for velocity control, geometric transformation and corrections are
implemented in the module for geometric data processing. The NC performs a geometric
transformation to allow NC programming independently of a specific machine tool or a specific tool
geometry. In the scope of the geometric transformation a zero offset is necessary that describes the
position of the workpiece in relation to the zero point of the machine tool. As correction functionality
NCs offer mechanisms for tool length and diameter correction. These mechanisms calculate
equidistant paths to the programmed tool paths.
WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

The velocity control calculates velocities and accelerations that are adapted to the constraints of the
machine tool and of the programmed machining task. These constraints could be for instance quick
changes of the velocity for machining small curves. In this case the limits of the drives concerning the
maximum acceleration and velocity have to be taken into account for the calculation the velocity
profile. For a further improvement of the velocity control NCs use a so called Look-AheadFunctionality. The look-ahead analyses 10 to 100 NC-blocks in advance to calculate an optimal
velocity profile.

Interpolator
It is the task of the interpolation to generate additional support points on the programmed tool path.
The 3D path given in the NC program is split up to the discrete axes so that they move in relation to
each other. Another task of the interpolation is the kinematic transformation of programmed coordinates to the axes of the machine tool if the machine does not have a cartesian set-up. Finally, the
interpolation also calculates compensation values for static and dynamic displacements of the
machine structure.

Position control and drive control


Depending on the NC the input data for the feed drives that come from the geometric data processing
are setpoint values either for the position, the velocity or the current. At present mainly cascade
position controllers are applied.
In the figure the NC internal information flow is described for a single NC channel. In one channel
multiple axis and spindles can be operated together synchronously or asynchronously. An example for
a two channel control application could be a lathe with two supports which are each controlled by a
separate NC program.

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

3. Manual programming
Manual programming requires detailed planning of each individual machining step by the programmer,
based on given requirements . Starting from the technical drawing of the part, the programmer has to
choose a suitable machine tool and determine the clamping position of the work piece. The machining
sequence is recorded in a working plan and the required tools are stored in a tool plan. Because of the
part geometry must be converted into a tool path curve, the most time-consuming task is determining
the geometrical dimensions. If there are large differences in volume between the blanks and the
finished parts, determining the number of cutting passes by means of an appropriate cut division will
also be necessary.
One example is shown in the following exercise. The different types of interpolation an NC is capable
of require that the full part contour is split into individual contour elements which correspond to these
interpolation capacities, as shown in figure 2.

Elements:

Line
Circle

Figure 2: Transforming the part geometry into contour elements


Technological parameters like depth-of-cut, feed and cutting speed are selected from standard value
tables and also stored on the information medium. On older NC machines, it is generally necessary to
adapt these values from cut to cut to maintain constant cutting conditions over changing part
dimensions caused by the machining progress. Newer machines, which are usually equipped with
powerful CNCs, provide useful aids to the programmer. Modern lathes for example have facilities for
automatically maintaining a constant cutting speed. Taking into account the current working diameter,
the speed of rotation and the feed rate are automatically adapted accordingly. Additional technological
data include tool changes, cooling lubricant on/off or machine stop.
After defining all working steps required to manufacture the part, the programmer enters this control
information in tabular form on a coding sheet.

When a program is generated manually, the individual steps in the machining process are determined
by the programmer. Using the NC functions listed in the programming manual for the NC machine
(e.g. DIN 66025 + vendor-specific codes) NC blocks are written which collectively will constitute the
NC program.
Writing an NC program, the capacity of the machine, the dimensions and weight of the raw and the
finished part, the material, the tool geometry, the surface finish required on the work piece, the
technology which depends on the tool and the material, the machining strategy and many other factors
have to be considered.

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

The most time-consuming part in generating a program is determining the tool displacement
movements. As the common programming languages and controls only process linear and circular
movements, a complex geometry requires a combination of small linear or circular movements to
approximate the desired geometry. Such a division of a machining operation frequently demands the
calculation of coordinate points which are not shown on the work piece drawing. These calculations
can be quite tedious and therefore the aid of a calculator or a computer becomes necessary. For five
axes milling especially the calculations get complex, as tool collisions have to be checked as well.
Thus NC programming can be a complex process. When writing optimized part programs especially
the programmer has to look up a lot of values and information. Therefore CAM systems are often used
to generate or pre-generate NC programs in the planning department. At shop floor level so called
SFP systems (shop floor programming) are used to assist the machine operator, to optimize or adapt
the programs.

4. Shop-floor oriented programming

The development of computerized systems in the various divisions was determined by the domainspecific tasks. Thus, solutions came up known as CAD, CAQ, CAP, as well as DNC and NC
programming systems. However, in terms of economic production the integration of these individual
systems is in the main focus today, as the strict division of tasks generates an inflexibility that is no
longer justifiable, particularly when dealing with smaller lot sizes. This means, that the programming,
which was in the past done centrally in the planning departments, shifts over from the design area to
the shop floor area. This orientation back towards the workshop and the associated upgrade of the
workstations there particularly challenges the skilled workers. It expands the nature of their duties by
performing tasks in additional fields, including pure planning, management or administrative tasks.
This leads to an increased motivation of these skilled workers, which are now able to detect problems
and errors at early stages and quickly resolve them. In principle, the programming on the shop floor or
at the NC machine is nothing new. For a long time, so-called manual input controls were used. This
describes a NC control with integrated interactive graphical user interfaces for creating NC programs.
Functions such as editing simple raw and final work piece property values, cutting layouts, collision
detection and simulation are supported. However, a disadvantage of the use of manual input controls
is their isolation from other systems because these are normally designed for a specific type of
machine. If different machine tools are used, the control-specific NC programs can no longer be
adapted from one machine to another. Furthermore, for every new hand control input, a new training
WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

of the skilled worker becomes necessary. So, efforts were taken in creating an integrated
programming concept that overcomes the disadvantages of the existing systems and is designed
based on the needs of skilled workers. For the implementation of these ideas, a joint project called
"shopfloor-oriented programming techniques (SFP)" was launched in 1984, involving German machine
and controller manufacturers, various software and system vendors, and users from academic
institutions. The main goal of this project was the realization of a programming concept that was based
on the following points:

on the cutting manufacturing process-oriented programming methodology with a uniform


dialogue,
Graphical interactive input without programming
Graphical simulation of the machining process,
Optimization / modifications of programs in the same way as reprogramming,
Effective use of the skilled worker for numerically controlled production facilities,
Module for managing and transferring data for tools, clamping devices and programs,
Uniform system for the workshop and work preparation.

Comparing these criteria with the functionality of today's programming systems, it is apparent that a
large number of vendors integrated at least a subset of these points into their systems. The problem in
this context is that the term "SFP" is protected in any way and can thus be used as wanted. So, the
various "SFP-systems" can sometimes be extremely different in comparison with each other.

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

5. Computer aided manufacturing (CAM)

Here, it is again dealt with the programming for free-form surface machining, since this special type of
processing usually requires CAD, CAP and CAM systems. Generally, a finishing step of machining
freeform surfaces can be done in three different ways: using 3, 3 + 2, or 5-axes milling. In contrast to
2.5 axes machining, which describes the interpolation of two axes and the positioning of the third axis
using a fixed value, in 3-axes milling, at least three axes are moved simultaneously. In the case of the
3-axes machining, the movements of exactly three axes are interpolated. The orientation of the milling
cutter remains constant in the direction of the Z-axis of the machine coordinate system. In the case of
3 + 2-axis machining, this orientation is changed by a constant angle, so that the rotation axis of the
milling cutter no longer coincides with the Z-axis of the machine coordinate system. Finally, 5-axis
machining allows a continuous adjustment of the orientation of the cutter. Thus, an optimal position of
the tool to the work piece surface can be guaranteed at any time. The 3 and 3 + 2-axis milling
operations have the advantage that due to the smaller number of axes, the calculations of the tool
paths are less complex and thus less time-consuming. Collisions can be calculated easily, and
singularities, which are unambiguous assignments of Cartesian positions of the corresponding axis
positions, do not occur. Furthermore, as for the positioning of the work piece only linear axes can be
moved, higher feed rates and thus higher processing speeds can be achieved. In contrast the
machining times in 5-axes machining are shorter. The optimal orientation of the tool to the work piece
contour allows larger feed rates and adjustments (high material removal), and due to the optimal tool
orientation the afterward rework is significantly lower. Geometries of complex components can be
manufactured in a single operation with a much higher accuracy, even without a new and time
consuming clamping and reorienting of the work piece. However, the complex kinematic processes
require a specialized strategy. For example, a slight tilt (camber) of the cutter blade head to the socalled lead angle in the direction of processing is necessary so that only a small part of the milling toll
touches a defined area of the work piece and an injury in the back side of the blade can be avoided.
To meet these increasing requirements specialized CAD / CAP / CAM systems were designed,
because in the case of free-form surface machining the most complex geometries are normally
created using a CAD system. The CAD system in this case is often integrated in an overall system or
is connected to the programming system via a neutral interface.

When toolpaths are generated with a CAM system, there are at first represented in the CAM systems
internal format. To transform a sequence of toolpath, which generally represents the sequence to
WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

execute on the machine, a transformation into the target language that the NC controller can actually
interpret is necessary. Therefore, in a first the CAM-internal representation is exported into a CLDATA
format, which stores the cutter locations (toolpaths) computed feed rates and spindle speeds in a
machine neutral format. This CLDATA file is the input for a post processor, which transforms the
neutral cutter location information into machine specific NC programms.

6. Cost comparison for different ways of NC-programming

As shown in the previous slides different systems can be used to support the operator in the
generation of NC-programs. Each system (CAM, SFP, manual) has its advantages depending on the
type of work piece to be machined, the machine tool and its kinematics, and the level of optimization.
For simple geometry a skilled operator is usually faster to generate the NC-program manually than
using a SFP or CAM system. This depends on the shape of the work piece and the operation to be
executed. Only if the SFP or CAM system already offers predefined masks for exactly this task the
NC-programming can be done faster with these systems.
The more complex a work piece becomes and the more often the work piece to be machined changes,
the more efficient a computer based system becomes. Especially the geometrical calculations to
recognize the geometry, compute tool paths and check on collisions is very complex and time
consuming.
Thus the reasonability of investing in a CAx system depends on the

Number of parts and variants to be machined


Frequency of changing parts
Complexity of parts to be machined
Cost of the CAM or SFP system

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

7. Tasks Manual and shopfloor-oriented programming


Task 1
You want to use the following face cutter (diameter 63mm) for a planar facing operation.

From the manufacturer's catalog, you get the information that the associated cutting inserts are used
with the following technological values:

Feed per tooth: ft = 0.15 mm/Tooth


Cutting speed : vc = 265m/min
Determine the speed to be set n (in 1/min) and the feed rate f (mm / min) and enter the command in
accordance with DIN 66025, with the instruction for turning on the spindle.

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

10

Task 2
On a lathe, the part is to be made according to the following drawing.

Your task is to write the NC program filling the programming sheet on the following page with the
correct commands. The roughing process has already been done. Only the tool movements for
the finishing process must be programmed. The following figure illustrates the clamping situation and
the planned processing sequence. The zero offset to the workpiece zero point W is stored in the
numerical controller of the machine under the command G55.

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

11

Programming key

Function

Identification
%
.
.
N
/.

1 to 9999

commented line

/N
G

G
G

G
G

G
G
G
G
G
G
G
D
X
Y
Z
4. axis
R
I
J
K
F
S
T
H
L

M
(
)
LF

WZL/Fraunhofer IPT

sequence number

commented line
00
01
02
03
33
04
17
18
19
39
40
41
42
53
54
55
70
71
80
80 to 89
90
91
92
94
95
1 to 99
0 to +/- 99999.9
0 to +/- 99999.9
0 to +/- 9999.9
0 to +/- 99999.9
0 to n
0 to +/- 9999.9
1 to 2000.0
0 to +/- 9999.9
1 to 2000.0
0 to +/- 9999.9
1 to 2000.0
0 to Fmax
0 to Smax
1 to 9999
1 to 9999
1 to 9999

00
01
02
30
03
04
05
00 to 99

dwell time
plane selection X-Y
plane selection X-Z
plane selection Y-Z
compensation of the insert radius (turning)
tool correction off
tool path correction, tool on left-hand side of the workpiece
tool path correction, tool on right-hand side of the workpiece
no zero offset
offset 1
offset 2
inch
metric units
cycle off
NC-cycles
absolute dimensioning
incremental dimensioning
set current position to offset
feed in mm/min
feed in mm/Rev.
tool correction No.
path information in mm
path information in mm
path information in mm
path information in ,
possible addresses: A, B, C, U, V, W
parameter for subroutines
parameter for interpolation X-axis
pitch in mm
parameter for interpolation Y-axis
pitch in mm
parameter for interpolation Z-axis
pitch in mm
feed in mm/min (milling) or mm/Rev. (turning)
spindle speed in min-1
tool No.
auxiliary functions
number of subroutine to be called

stop
stop (to be continued)
end of program
end of program and revers to start
spindle on, clockwise
spindle on, counter-clockwise
spindle stop
start of comment
end of comment
line feed

Mechantronic and Control for Production Plants

12

Programming sheet

N010

Zero offset to W

N020

Absolute dimensioning, Feed,

N030

Spindle on, Spindle speed

N040

Tool radius compensation

N050

Move to starting point

N060

Move to point 1

N070

Move to point 2

N080

Move to point 3

N090

Move to point 4

N100

Move to point 5

N110

Move to point 6

N120

Move to point 7

N130

Move to point 8

N140

Move back

N150

Spindle stop, program end

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

13

8. Tasks Shopfloor-oriented programming


Task 1
An already existing ShopTurn program should be extended with a cycle for manufacturing a stud (see
detail A). Put the appropriate values into the corresponding ShopTurn forms. Note that some fields are
already filled. The depth of cut for this manufacturing process should not exceed 2mm. Which step
should be done before starting the manufacturing process for safety reasons?

Step before manufacturing: _________________

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

14

9. Tasks NC programming using CAM systems

Task 1
Describe the differences between 3-axis, 3+2 axis and 5-axis machining considering the tilt and lead
angles of the tool that is used. Clarify your ideas through sketches!

Task 2
Explain what is understood by the term post processor and describe its purpose and the information
that is needed for the execution!

WZL/Fraunhofer IPT

Mechantronic and Control for Production Plants

10.

15

Literature

Brecher, C.; Weck, M.:

WZL/Fraunhofer IPT

Werkzeugmaschinen 4, Automatisierung von Maschinen und


Anlagen. 6. Auflage, Springer-Verlag, Berlin, 2006.

Potrebbero piacerti anche