Computerized Numerical Control

from Wikipedia, the free encyclopedia
CNC control panel from the 2000s
CNC control panel from Siemens from the 1990s
Siemens Sinumerik CNC control panel from the 1980s

Computerized Numerical Control ( Engl. "Computerized numerical control"), short- CNC refers to an electronic process for the control of machine tools ( CNC machines ).

Creation of the CNC

Emanating from the CNC is the numerical control (engl. Numerical Control , NC) in which the information is not kept as a complete program in the control of a machine, but intermittently by a perforated tape has been read. The first CNC controls were brought onto the market in the mid-1960s.

The age of CNC technology began around the mid-1970s. It allowed a rationalization in the series and individual production by the much faster while still very precise movement of the axes and tools. Today almost all newly developed machine tools are equipped with a CNC control. However, there is still a considerable amount of old conventional machine tools around the world.

Market development

Already at the beginning of the 1980s there were approaches to simplify the programming of the CNC and to abandon the DIN / ISO programming. This led to the development of so-called workshop - oriented programming (WOP), which has a user-guided, simplified CAD- like programming interface. It has established itself particularly in wood and plastic processing on CNC machining centers and in the production of individual parts.

In addition, with DNC ( Distributed Numerical Control ), the networked division of labor, program creation in the office / simulating program at the workplace for collision checking and optimization / transferring the program to the CNC, is in use. This form of programming is becoming more and more important, especially in single part and small series production, because here in particular the downtimes for programming on the machine itself can be greatly reduced, so that the machines can be used more productively overall.

For some time now, the so-called soft CNC has been conquering the CNC control market. In the Soft-CNC, all control functions, including position regulation, do not run as electronically implemented control loops (hardware), but as programs (software) in a commercially available industrial computer. Such systems are generally considerably cheaper. They are also easier to maintain, expand and adapt. The drive is coupled via a PC card using a digital bus system .


The CNC runs on a manufacturer-specific industrial PC that is installed in the control cabinet or directly behind the screen. 32-bit processors with clock frequencies in the GHz range enable block cycle times of less than 1 ms (preparation time of an uncorrected 3D linear block). This means that when executing a program in which the positions follow one another at 0.1 mm intervals, a milling feed rate of 6 m / min can be maintained without stoppages.

Non-volatile data memory for machine data and programs used to be kept in SDRAM with a battery or accumulator when the machine was switched off. Hard disks were later installed, which were suspended specially to absorb vibrations. Flash memories are increasingly used.

The following interfaces are available to transfer programs from the programming station to the CNC and back:

  • serial interface RS-232 up to 20 m, or RS-422 up to 1200 m
  • Ethernet interface (LAN, network) up to 100 m, fastest connection

or connectors for transportable storage media: PCMCIA card, CompactFlash , USB stick

Taxes and rules

Methods of varying precision are used in computer controls for the automatic positioning of devices, workpieces or tools :

  • A switched machine axis moves automatically after switching on to a target position without position detection, which carries a limit switch for the movement that switches off the axis when it arrives there.
  • A machine axis is called controlled if its movement from the actual to the target position is specified, but not permanently checked and corrected.
  • A regulated machine axis is completely controlled by a computer using a number of nested and closed control loops in all time-related derivatives of the location that are relevant to the movement.
  • Machine axes that are interpolated with one another are regulated, with their target positions being offset against each other, whereby their manipulated variables influence one another.

The desired shape of the workpiece to be manufactured and the technology to be used are described in the NC program. In the background of the control and initially invisible to the machine operator, a geometry program and an interpolation program calculate interpolation points in the grid of the cycle time of the position controller. The coordinates of the interpolation points represent the target positions of the axes involved in the interpolated movement. The feed results from the interpolation point distances and the position control cycle, the time grid of the positioning. In addition to the specifications from the NC program, the interpolator and the mostly three-stage controller cascades use a machine image that describes the dynamic and kinematic properties of all controlled axes. Feed, acceleration and jerk (first, second and third derivative of the position according to time) are limited according to the capabilities of the axes and coordinated with one another. Encoders for position detection supply the actual values ​​of the position coordinates for calculating the manipulated variables of the position. These target speeds result in the respective difference to the axis components of the feed measured by the rotary encoders, the manipulated variables of the speed controller. These setpoint accelerations form manipulated variables of the axis accelerations in the current regulators in the respective difference to the measurement results of the motor currents. Regulated motor currents mean that machining precision is largely independent of load changes, such as those that typically occur in the event of sudden material interference. It can also be used to compensate for the jerk that occurs, for example, at tangential level crossings with discontinuous speed changes (for example, at the tangential transition from a straight line to a circular path) and which violates the contour if there is no compensation. The dragged operation has meanwhile been largely replaced by the speed pre-control, with which the specified contours can be reproduced much more precisely.

Control types

The control of a CNC machine tool via an integrated directly into the control computer , which with position, rotational (angular) - detects and condition sensors the actual state and after calculation of the interpolation to the target state from the CNC program, the Controls the motors and other controlled machine elements accordingly. The interpolation takes place in the range of milliseconds , so that a high precision is guaranteed even at high speed, even with complicated shapes.

The CNC technology allows automated processing with several simultaneously controlled axes. CNC controls are classified according to the number of axes that can be interpolated at the same time, with a distinction being made between point, line and path control.

Point control

With point-to-point or point control, only the end point of a movement can be specified, which the machine then approaches on its fastest route. In particular, there is no graded regulation of the travel speed during the movement, but the drives usually run as fast as possible. Because of this, the tool can only intervene at the end points of the movement and drill or punch a hole. Point control is rarely used in machine tools today, but it is still sufficient for simple punching machines, spot welding machines, drills or gripping robots if they do not have to travel a defined route. However, the indeterminate sequence of movements also creates an increased risk of collision, especially for people.

Route control

The route control is essentially a point control in which the speed of movement can also be precisely controlled. The line control is used to control the speed and position of one axis at a time. It is thus possible to traverse an axially parallel movement with a working feed rate and thus, for example, to mill a straight groove. A line control is also used to let processing units of a throughfeed machine use the moment the workpiece passes the unit. This is a combination of path and PTP control , as the feed movement of the axis itself is not controlled, but the points of use of point-to-point-controlled tools on the path-controlled axis are determined on the basis of the precalculated path.

This type of control is only found in small and specialized machines, i.e. machines for training companies, fixture construction and slot milling machines, as it is inflexible and there is only a small price difference to a path control. In the case of old versions with rotary encoders, pitch errors in the threaded spindle or geometry errors in the guide cannot be corrected during the movement sequence.

Path control

With the path control, any traversing movements can be implemented with at least two simultaneously controlled axes. The path control is divided into the interpolated and "simultaneously" controlled axes. Interpolating axes means that the initially independent movement sequences of the individual axes are synchronized with one another so that the tool tip follows the programmed and corrected path as precisely as possible . The 2D path control can follow any contours with two defined axes. This is often sufficient for lathes, since the workpiece creates the third dimension through its rotational movement. If the operator can choose between the interpolated, controlled axes, we speak of a 2½ D path control, which is standard today on lathes with driven tools. If three controlled axes can be interpolated with one another, they are called 3-D path control. It is standard on milling machines. Many machines now offer additional axes for swiveling and rotating workpiece or tool holders. Contouring controls must be equipped with a correspondingly large number of sensor inputs and manipulated variable outputs, as well as have sufficiently powerful software to utilize the potential of the machine specified by the machine designer.

Machine axes

Modern controls manage and regulate over 30 axes if necessary. These can be divided into several virtual and independent machine parts. By using three mutually perpendicular axes X, Y and Z, every point in the machining area of ​​a machine tool is reached. With this method, all conceivable paths can be interpolated, but with one important restriction that is particularly evident in the example of a milling machine: the rotating tool is always perpendicular to the cross table . Technologically higher-quality machining can, for example, require that the cutter must be perpendicular to the contour to be milled. For example, in order to make a hole at an angle of 45 °, it is necessary to rotate the workpiece or the tool (or both). Many modern machines offer the possibility of turning or swiveling the machine table in order to enable further contour machining. These axes of rotation are designated by the letters A, B and C depending on their arrangement on the machine (according to DIN 66217): A rotating around the X axis, B around the Y axis and C around the Z axis. While these axes are only controlled or even switched on older or simple machines, the controls of the machining centers regulate and interpolate them today. For example, with 5-axis machining of milling machines, excellent surface quality is achieved. In addition, linear parallel axes to X, Y and Z can be configured or created virtually, which are then designated with U, V, W. One application for the virtual UVW tripod is the virtual swiveling of the processing plane to simplify processing on a surface that is inclined to the cross table. All axis directions can occur several times on a machine tool and are then given indices or other identifiers permitted by the respective syntax of the NC language to distinguish them. For example, in a portal milling machine with a gantry drive , there is an X-axis and an X 1 -axis in X. CNC lathes only have the X and Z axes as main axes. If the drive spindle can also be programmed as a rotation axis, it becomes a C axis. Self-powered tools are also conceivable, which are then given their own axis designations, for example W-axis.

Machine axes can be grouped into several machining channels. Each CNC channel processes its program like its own CNC. A multi-channel CNC can process several programs at the same time. B. process the front in one channel, then transfer the workpiece to the 2nd channel, process the back there, while the 1st channel processes the front of the next workpiece.

Reference points

Machine zero point M
It is the origin of the machine coordinate system and is defined by the machine manufacturer.
Reference point R
Is the origin of the incremental position measuring system with a distance to the machine zero point specified by the manufacturer. To calibrate the position measuring system, this point must be approached in all machine axes with the tool carrier reference point T.
Tool carrier reference point T
It is centered on the stop surface of the tool holder. On milling machines this is the spindle nose, on lathes it is the stop surface of the tool holder on the turret .
Workpiece zero point W
It is the origin of the workpiece coordinate system and is defined by the programmer according to manufacturing aspects.

Dimension types

Absolute dimensions (G90)
The coordinates of the target points of a travel movement are entered as absolute values, i.e. as the actual distance from the workpiece zero point. By specifying the NC word G90, the control is programmed to this absolute dimension programming. After switching on, the control is automatically set to G90.
Chain dimensioning (G91)
With chain dimension programming (also called incremental dimension programming), the control is informed of the coordinates of the target point of the traversing movement from the point last approached. The last point reached is therefore the origin for the next point. One can imagine that the coordinate system shifts from point to point. By specifying the NC word G91, the control is programmed to this incremental programming. The G91 command has a modal effect, that is, it remains valid in the program until it is canceled again by the G90 command.


There are different programming types and methods. The transitions between the programming processes are fluid and cannot be separated directly. Several programming methods are possible on the new CNC. The following list is intended to provide an overview, partly with examples.

Programming types

  • remote from the machine on a programming station
z. B. in work preparation. Advantage: no machine noise, the machine continues to work.
  • machine-level directly on the machine
Advantage: Skilled workers use their specialist knowledge and the fact that they continuously monitor the progress of production.

Programming method

  • manual programming: enter / change each character of the program manually
  • machine programming: CAD → CAM e.g. B .: Conversion of a 2D geometry or a 3D model using preprocessors and postprocessors into a machine-understandable program
  • G code (DIN / ISO): see following example ( DIN / ISO programming or G code )
  • Dialog or workshop-oriented programming (WOP): graphic support, querying parameters → integration into the program, e.g. E.g .: DIN-PLUS, Turn Plus, lid dialog (restriction: complexity of the part, a maximum of 45 minutes for programming on the machine are legitimate, the programmer is distracted by background noise on the machine)
  • Parameter programming: The actual program cannot be edited by the machine operator.
  • Teach-in: comparable to "copying" → approaching points on the real part → program framework → program extension
  • Playback: Record → Repeat e.g. E.g .: paint spraying robot

DIN / ISO programming or G code

The record and address structure of the numerical control information to be transmitted is described in the DIN 66025 / ISO 6983 standard, usually referred to as DIN / ISO programming for short. A DIN program can be run on any CNC machine. However, there are special commands for almost all machines, e.g. B. Cycles that can only be interpreted by these machines. Cycles are ready-made subroutines that can be adapted with parameters / variables. They can be used to describe "pockets" (rectangular contours or similar pockets) or holes, etc. These cycles make programming easier and provide clarity.

example 1

Here is a simple example of G code for CNC milling followed by an explanation. The same example on the right as dialog programming in "plain text" on a Heidenhain control:

G code Heidenhain - "plain text"
 N080 …
 N090 G00 X100 Y100
 N100 Z0
 N110 G01 Z-2 F10
 N120 G01 X110 F20
 N130 Y200 F15
 N140 G00 Z10
 N150 …
 80  …
 90  L X+100 Y+100 R0 FMAX
 100 L Z+0 R0 FMAX
 110 L Z-2 R0 F10
 120 L X+110 R0 F20
 130 L Y+200 R0 F15
 140 L Z+10 R0 FMAX
 150 …

This part of the program describes that a milling tool in block N090 approaches a position in a work space in rapid traverse ( G00), described with the coordinates X100 and Y100. In the next block N100, the tool traverses (still in rapid traverse) to the depth position Z0, then in the feed rate ( G01) 10 mm per minute to the depth position Z-2 (this could be the new surface to be produced). In the next block N120, the tool moves in the feed at a speed of 20 mm per minute into the workpiece to position X110. In block N130, the tool moves with a slightly reduced feed at right angles to the last movement to the Y coordinate 200 (previously 100, i.e. by 100 mm). In the last block, the tool retracts from –2 to 10 mm in height by rapid traverse ( G00).

Example 2 (with tool path compensation)

Here is an example of CNC turning with tool path compensation ( G41/ G42) in the final machining ( finishing ) of a contour:

G code Heidenhain - "plain text"
 N080 …
 N090 G00 X-1,6 Z2
 N100 G42
 N110 G01 Z0 F10
 N120 G01 X0 F20
 N130 G03 X20 Z-10 I0 K-10
 N140 G01 Z-50
 N150 G01 X50 Z-100
 N160 G40
 N170 …
 80  …
 90  L X-1,6 Z+2 R0 FMAX
 100 L Z+0 RR F10
 110 L X+0 RR F20
 120 CT X+20 Z-10 RR
 130 L Z-50 RR
 140 L X+50 RR
 150 …

Here (under "Heidenhain") R0 stands for cutter center point path (without tool path correction), RL for tool path correction to the left of the contour (in DIN G41) and RR for tool path correction to the right of the contour.

Path correction

Requirement: the contour has previously been roughed , d. H. preprocessed. In block 90 the tool moves over the center (X-1.6 mm) and stops 2 mm in front of the contour. Then G42the tool path compensation is switched on with and in block 110 the zero point is approached in the Z direction. In block 120 the tool center is traversed (in conjunction with block N090 this prevents an increased amount of material ("slug") from remaining on the front workpiece surface) and finally in block 130 a semicircle with a radius of 10 mm is traversed. Ultimately, in sets 140 and 150, the lengthways and crosswise directions are still 50 mm in diameter and 50 mm in length. The G40tool path correction is finally canceled again with in block 160.

Tool path compensation

The tool path correction is important to avoid contour errors that would arise with circular paths or conical shapes, since the tool itself has a radius at the cutting edge.

Programming software

The programming software and the CNC have a graphic simulation that allows a program to be tested before machining begins. There are also geometry calculators that independently calculate missing dimensions, intersection points, chamfers and fillets at corners. This means that even drawings that are not dimensioned in accordance with the NC can easily be programmed.

G and M commands

The G and M commands are divided into groups. Only the last programmed function from the group is effective. The M commands (from English. Miscellaneous ) can be used for various machine functions and specified by the manufacturer of the CNC machine. The following commands can be used regardless of the control and machine manufacturer:

G commands M commands
Movement command
G00Rapid traverse - positioning movement at the highest speed
G10 Feed straight
G20 Feed circular arc clockwise
G30 Arc feed counterclockwise
G33 Thread turning

Other , effective in blocks (only in the programmed line)

G40 Dwell time in seconds F ..., or dwell time per revolution S ...
G90 Exact stop - stop the feed before the next movement is carried out.
Tool path compensation
G40 Correction off
G41 left of the contour in the feed direction
G42 right of the contour in the feed direction
Coordinate system
G54 first workpiece coordinate system
G55 second workpiece coordinate system
G59 sixth workpiece coordinate system
Dimension type
G90 Absolute dimension input
G91 Incremental input
Feed rate
G94 Feed in mm / min
G95 Feed in mm / revolution
Speed ​​specification
G96constant cutting speed
G97 constant speed
Program control
M00 Program stop
M10 Optional program stop, depending on the external switch
M30 End of program
Spindle control
M03 Spindle on clockwise
M04 Spindle on counter clockwise
M05 Spindle stop
M19 positioned spindle stop
Cooling, lubrication
M07 Second cooling, lubrication on
M08 Cooling, lubrication on
M09 Cooling, lubrication off
Gear of the spindle
M40 Neutral position or automatic gear selection
M41 Shift transmission to level 1
M44 Shift transmission to level 4

Advantages of CNC technology

The advantages of a CNC control lie on the one hand in the possibility of economical machining of complex geometries two-dimensional (2D) and especially three-dimensional ( 3D ), on the other hand in the machining / repeatability and high speed of the machining steps. The possibility of storing programs means that many identical parts can be mass-produced without human intervention. In addition, CNC technology enables new machine concepts, as no mechanical connection between the main drive and the feed drives is necessary.

See also


  • Hans B. Kief, Helmut A. Roschiwal: CNC manual 2009/2010 . Hanser Fachbuchverlag, 2009, ISBN 978-3-446-41836-3 .
  • Ulrich Fischer, Max Heinzler, a. a .: Metal table book . 43rd edition. Verlag Europa-Lehrmittel, 2005, ISBN 3-8085-1723-9 .

Web links

Commons : Computer numerical control  - collection of images, videos and audio files

Individual evidence

  1. Route control. In: WOOD TEC PEDIA. Retrieved February 28, 2018 .