Geometry settings Motion commands Tool radius compensation Path action Coordinate transformations (frames) Auxiliary function outputs Supplementary commands Other information Valid for Tables Controllers Appendix SINUMERIK 840D sl / 840DE sl SINUMERIK 828D Software Version CNC software 4.7 SP1 01/2015 6FC5398-1BP40-5BA2...
Page 2
Note the following: WARNING Siemens products may only be used for the applications described in the catalog and in the relevant technical documentation. If products and components from other manufacturers are used, these must be recommended or approved by Siemens. Proper transport, storage, installation, assembly, commissioning, operation and maintenance are required to ensure that the products operate safely and without any problems.
Training For information about the range of training courses, refer under: ● www.siemens.com/sitrain SITRAIN - Siemens training for products, systems and solutions in automation technology ● www.siemens.com/sinutrain SinuTrain - training software for SINUMERIK FAQs You can find Frequently Asked Questions in the Service&Support pages under Product Support.
Page 4
Preface SINUMERIK You can find information on SINUMERIK under the following link: www.siemens.com/sinumerik Target group This publication is intended for: ● Programmers ● Project engineers Benefits With the programming manual, the target group can develop, write, test, and debug programs and software user interfaces.
Availability of the described NC language elements All NC language elements described in the manual are available for the SINUMERIK 840D sl. The availability regarding SINUMERIK 828D should be taken from Table "Operations: Availability for SINUMERIK 828D (Page 419)".
Page 7
Table of contents Preface.................................3 Fundamental safety instructions.........................13 General safety instructions.....................13 Industrial security........................13 Fundamental Geometrical Principles......................15 Workpiece positions.......................15 2.1.1 Workpiece coordinate systems....................15 2.1.2 Cartesian coordinates......................15 2.1.3 Polar coordinates........................17 2.1.4 Absolute dimensions......................18 2.1.5 Incremental dimension......................20 Working planes........................21 Zero points and reference points...................22 Coordinate systems.......................24 2.4.1 Machine coordinate system (MCS)..................24...
Page 8
Table of contents Tool change..............................51 Tool change without tool management..................51 5.1.1 Tool change with T command....................51 5.1.2 Tool change with M6......................52 Tool change with tool management (option)................53 5.2.1 Tool change with T command with active tool management (option)........54 5.2.2 Tool change with M6 with active tool management (option)..........56 Behavior with faulty T programming..................57 Tool offsets..............................59 General information about the tool offsets................59...
Page 9
Table of contents Feedrate with handwheel override (FD, FDA)..............120 Feedrate optimization for curved path sections (CFTCP, CFC, CFIN)........123 8.10 Several feedrate values in one block (F, ST, SR, FMA, STA, SRA)........126 8.11 Non-modal feedrate (FB).....................129 8.12 Tooth feedrate (G95 FZ)......................130 Geometry settings............................137 Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA, G153).....137 Selection of the working plane (G17/G18/G19)..............139...
Page 10
Table of contents 10.9.3 Contour definitions: Two straight lines.................207 10.9.4 Contour definitions: Three straight lines................210 10.9.5 Contour definitions: End point programming with angle............213 10.10 Thread cutting........................214 10.10.1 Thread cutting with constant lead (G33, SF)................214 10.10.2 Programmed run-in and run-out path (DITS, DITE):............221 10.10.3 Thread cutting with increasing or decreasing lead (G34, G35)..........223 10.10.4...
Page 11
Table of contents 13.9 Deselect frame (G53, G153, SUPA, G500).................336 13.10 Deselecting overlaid movements (DRFOF, CORROF)............337 Auxiliary function outputs..........................341 14.1 M functions...........................344 Supplementary commands........................347 15.1 Output messages (MSG).....................347 15.2 Writing string in OPI variable (WRTPR)................348 15.3 Working area limitation......................349 15.3.1 Working area limitation in BCS (G25/G26, WALIMON, WALIMOF)........349 15.3.2 Working area limitation in WCS/SZS (WALCS0 ...
Page 12
Table of contents 17.3.3 Settable addresses......................449 17.4 G commands........................454 17.5 Predefined procedures......................474 17.6 Predefined procedures in synchronized actions..............494 17.7 Predefined functions......................496 17.8 Currently set language in the HMI..................508 Appendix..............................509 List of abbreviations......................509 Documentation overview......................518 Glossary..............................519 Index.................................541 Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Siemens recommends strongly that you regularly check for product updates. For the secure operation of Siemens products and solutions, it is necessary to take suitable preventive action (e.g. cell protection concept) and integrate each component into a holistic, state-of-the-art industrial security concept.
● Keep the software up to date. You will find relevant information and newsletters at this address (http:// support.automation.siemens.com). ● Incorporate the automation and drive components into a holistic, state-of-the-art industrial security concept for the installation or machine. You will find further information at this address (http://www.siemens.com/...
Fundamental Geometrical Principles Workpiece positions 2.1.1 Workpiece coordinate systems In order that the machine or the control can work with the positions specified in the NC program, these position specifications have to be made in a reference system that can be transferred to the directions of motion of the machine axes.
Fundamental Geometrical Principles 2.1 Workpiece positions Position specifications in the form of Cartesian coordinates To simplify things, we will only consider one plane of the coordinate system in the following example, the X/Y plane: Points P1 to P4 have the following coordinates: Position Coordinates X100 Y50...
Fundamental Geometrical Principles 2.1 Workpiece positions Points P1 to P4 have the following coordinates: Position Coordinates X25 Z-7.5 X40 Z-15 X40 Z-25 X60 Z-35 Example: Workpiece positions for milling For milling, the feed depth must also be described, i.e. the third coordinate (in this case Z) must also be assigned a numerical value.
Fundamental Geometrical Principles 2.1 Workpiece positions The polar angle is the angle between the polar radius and the horizontal axis of the working plane. Negative polar angles are in the clockwise direction, positive polar angles in the counterclockwise direction. Example Points P1 and P2 can then be described –...
Page 19
Fundamental Geometrical Principles 2.1 Workpiece positions Example: Turning In absolute dimensions, the following position specifications result for points P1 to P4: Position Position specification in absolute dimensions X25 Z-7.5 X40 Z-15 X40 Z-25 X60 Z-35 Example: Milling Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Fundamental Geometrical Principles 2.1 Workpiece positions In absolute dimensions, the following position specifications result for points P1 to P3: Position Position specification in absolute dimensions X20 Y35 X50 Y60 X70 Y20 2.1.5 Incremental dimension Position specifications in incremental dimensions In production drawings, the dimensions often do not refer to a zero point, but rather to another workpiece point.
Fundamental Geometrical Principles 2.2 Working planes Note With DIAMOF or DIAM90 active, the set distance in incremental dimensions (G91) is programmed as a radius dimension. Example: Milling The position specifications for points P1 to P3 in incremental dimensions are: In incremental dimensions, the following position specifications result for points P1 to P3: Position Position specification in incremental di‐...
Fundamental Geometrical Principles 2.3 Zero points and reference points Working planes for turning/milling Working planes for turning Working planes for milling Activating a work plane The working planes are activated defined in the NC program with the G commands G17, G18 and G19.
Page 23
Fundamental Geometrical Principles 2.3 Zero points and reference points Reference points Reference point Position defined by output cam and measuring system. The distance to the machine zero M must be known so that the axis position at this point can be set exactly to this value.
Fundamental Geometrical Principles 2.4 Coordinate systems Coordinate systems A distinction is made between the following coordinate systems: ● Machine coordinate system (MCS) (Page 24) with the machine zero M ● Basic coordinate system (BCS) (Page 26) ● Basic zero system (BZS) (Page 28) ●...
Page 25
Fundamental Geometrical Principles 2.4 Coordinate systems Three-finger rule The orientation of the coordinate system relative to the machine depends on the machine type. The axis directions follow the so-called "three-finger rule" of the right hand (according to DIN 66217). Seen from in front of the machine, the middle finger of the right hand points in the opposite direction to the infeed of the main spindle.
Fundamental Geometrical Principles 2.4 Coordinate systems Position of the coordinate system in different machine types The position of the coordinate system resulting from the "three-finger rule" can have a different orientation for different machine types. Here are a few examples: 2.4.2 Basic coordinate system (BCS) The basic coordinate system (BCS) consists of three mutually perpendicular axes (geometry...
Page 27
Fundamental Geometrical Principles 2.4 Coordinate systems On such machines, machine axes and geometry axes can have the same names. Figure 2-2 MCS = BCS without kinematic transformation Machine tools with kinematic transformation BCS and MCS do not coincide when the BCS is mapped onto the MCS with kinematic transformation (e.g.
Fundamental Geometrical Principles 2.4 Coordinate systems Machine kinematics The workpiece is always programmed in a two or three dimensional, right-angled coordinate system (WCS). However, such workpieces are being programmed ever more frequently on machine tools with rotary axes or linear axes not perpendicular to one another. Kinematic transformation is used to represent coordinates programmed in the workpiece coordinate system (rectangular) in real machine movements.
Fundamental Geometrical Principles 2.4 Coordinate systems ● Chained system frames ● Chained basic frames References Function Manual, Basic Functions; Axes, Coordinate Systems, Frames (K2) 2.4.4 Settable zero system (SZS) Settable zero offset The "settable zero system" (SZS) results from the basic zero system (BZS) through the settable zero offset.
Fundamental Geometrical Principles 2.4 Coordinate systems See Section: "Coordinate transformations (frames)" Note Programmable coordinate transformations (frames) always refer to the "settable zero system". 2.4.5 Workpiece coordinate system (WCS) The geometry of a workpiece is described in the workpiece coordinate system (WCS). In other words, the data in the NC program refers to the workpiece coordinate system.
Fundamental Geometrical Principles 2.4 Coordinate systems 2.4.6 What is the relationship between the various coordinate systems? The example in the following figure should help clarify the relationships between the various coordinate systems: ① A kinematic transformation is not active, i.e. the machine coordinate system and the basic co‐ ordinate system coincide.
Page 32
Fundamental Geometrical Principles 2.4 Coordinate systems Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Fundamental Principles of NC Programming Note DIN 66025 is the guideline for NC programming. Name of an NC program Rules Each NC program must be assigned a program name (designation) when it is created. The program name can be chosen freely providing the following rules are observed: ●...
Fundamental Principles of NC Programming 3.2 Structure and contents of an NC program Control-internal extensions The program name assigned when the program is created is expanded within the control with the addition of a prefix and a suffix. ● Prefix: _N_ ●...
Page 35
Fundamental Principles of NC Programming 3.2 Structure and contents of an NC program Commands according to DIN 66025 The commands according to DIN 66025 consist of an address character and a digit or sequence of digits representing an arithmetic value. Address character (address) The address character (generally a letter) defines the meaning of the command.
Page 36
Fundamental Principles of NC Programming 3.2 Structure and contents of an NC program These include, for example: ● Commands of the NC high-level language In contrast to the commands according to DIN 66025, the commands of the NC high-level language consist of several address letters, e.g. –...
Fundamental Principles of NC Programming 3.2 Structure and contents of an NC program 3.2.2 Block rules Start of block NC blocks can be identified at the start of the block by block numbers. These consist of the character "N" and a positive integer, e.g. N40 ...
Fundamental Principles of NC Programming 3.2 Structure and contents of an NC program Tool Tool offset number Additional function Auxiliary function Note Certain addresses can be used repeatedly within a block, e.g. G…, M…, H… 3.2.3 Value assignments Values can be assigned to the addresses. The following rules apply: ●...
Fundamental Principles of NC Programming 3.2 Structure and contents of an NC program Example 1: Program code Comment N10 G1 F100 X10 Y20 ; Comment to explain the NC block Example 2: Program code Comment ; Company G&S, order no. 12A71 ;...
Page 40
Fundamental Principles of NC Programming 3.2 Structure and contents of an NC program Program code Comment ; Is executed /N20 … ; Skipped N30 … ; Is executed /N40 … ; Skipped N70 … ; Is executed Skip levels Blocks can be assigned to skip levels (max. 10) which can be activated via the user interface. Programming is performed by assigning a forward slash, followed by the number of the skip level.
Creating an NC program Basic procedure The programming of the individual operation steps in the NC language generally represents only a small proportion of the work in the development of an NC program. Programming of the actual instructions should be preceded by the planning and preparation of the operation steps.
Creating an NC program 4.2 Available characters 3. Create a machining plan Define all machining operations step-by-step, e.g. – Rapid traverse movements for positioning – Tool change – Define the machining plane – Retraction for checking – Switch spindle, coolant on/off –...
Creating an NC program 4.3 Program header Special characters Meaning Division, block suppression Multiplication Addition Subtraction, minus sign " Double quotation marks, identifier for character string Single quotation marks, identifier for special numerical values: hexadecimal, binary System variable identifiers Underscore, belonging to letters Reserved Reserved Decimal point...
Creating an NC program 4.4 Program examples Program header for turning The following example shows the typical structure of an NC program header for turning: Program code Comment N10 G0 G153 X200 Z500 T0 D0 ; Retract toolholder before tool turret is ro- tated.
Creating an NC program 4.4 Program examples Procedure 1. Create a new part program (name) 2. Edit the part program 3. Select the part program 4. Activate single block 5. Start the part program References: Operating Manual for the existing user interface Note In order that the program can run on the machine, the machine data must have been set appropriately (→...
Page 46
Creating an NC program 4.4 Program examples Dimension drawing of the workpiece Figure 4-1 Top view Program example 2 Program code Comment N5 G0 G53 X280 Z380 D0 ; Starting point. N10 TRANS X0 Z250 ; Zero offset N15 LIMS=4000 ;...
Creating an NC program 4.4 Program examples Program code Comment N75 Z-57 N80 G2 X41 Z-60 CR=3 ; Turn radius 3. N85 G1 X46 N90 X52 Z-63 N95 G0 G40 G97 X100 Z50 M9 ; Deselect tool radius compensation and approach tool change location.
Page 48
Creating an NC program 4.4 Program examples Figure 4-3 Top view Program example 3 Program code Comment N10 T="PF60" ; Preselection of the tool with name PF60. N20 M6 ; Load the tool into the spin- dle. N30 S2000 M3 M8 ;...
Page 49
Creating an NC program 4.4 Program examples Program code Comment N100 G1 X40 Y30 CHR=10 N110 G1 X40 Y-30 N120 G1 X-41 Y-30 N130 G1 G40 Y-72 F3000 ; Deselection of the milling tool radius compensation. N140 G0 Z200 M5 M9 ;...
Page 50
Creating an NC program 4.4 Program examples Program code Comment N410 M30 ; End of program. Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Tool change Tool change method In chain, rotary-plate and box magazines, a tool change normally takes place in two stages: 1. The tool is sought in the magazine with the T command. 2. The tool is then loaded into the spindle with the M command. In circular magazines on turning machines, the T command carries out the entire tool change, that is, locates and inserts the tool.
Tool change 5.1 Tool change without tool management Syntax Tool selection: T<number> T=<number> T<n>=<number> Tool deselection: T0=<number> Meaning Command for tool selection including tool change and activation of the tool offset Spindle number as address extension <n>: Note: The possibility of programming a spindle number as address extension depends on the configuration of the machine;...
Tool change 5.2 Tool change with tool management (option) Tool change: Tool deselection: T0=<number> Meaning Command for the tool selection Spindle number as address extension <n>: Note: The possibility of programming a spindle number as address extension depends on the configuration of the machine; →...
Tool change 5.2 Tool change with tool management (option) Tool name On a machine tool with active tool management, the tools must be assigned a name and number for clear identification (e.g. "Drill", "3"). The tool call can then be via the tool name, e.g. T="Drill"...
Page 55
Tool change 5.2 Tool change with tool management (option) Note If the selected magazine location is not occupied in a tool magazine, the command acts as for T0. The selection of the next occupied magazine location can be used to position the empty location.
Tool change 5.2 Tool change with tool management (option) 3. A tool search for T="drill" is initiated in accordance with the search method set: "Find the active tool; or else, select the one with the next highest duplo number." 4. The following usable tool is then found: "Drill", duplo no.
Tool change 5.3 Behavior with faulty T programming Spindle number as address extension <n>: Note: The possibility of programming a spindle number as an address extension depends on the configuration of the machine; → see machine manufacturer's specifications. M function for the tool change (according to DIN 66025) M6 activates the selected tool (T…) and the tool offset (D...).
Page 58
Tool change 5.3 Behavior with faulty T programming Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Tool offsets General information about the tool offsets Workpiece dimensions are programmed directly (e.g. according to the production drawing). Therefore, tool data such as milling tool diameter, cutting edge position of the turning tool (counterclockwise/clockwise turning tool) and tool length does not have to be taken into consideration when creating the program.
Tool offsets 6.3 Tool radius compensation This length is measured and entered in the tool compensation memory of the control together with definable wear values. From this data, the control calculates the traversing movements in the infeed direction. Note The offset value for the tool length is dependent upon the spatial orientation of the tool. Tool radius compensation The contour and tool path are not identical.
Tool offsets 6.4 Tool compensation memory Note Tool radius compensation is applied according to the default CUT2D or CUT2DF (see " 2D tool compensation (CUT2D, CUT2DF) (Page 284) "). References The various options for the tool radius compensation are described in detail in Section "Tool radius compensations".
Page 62
Tool offsets 6.4 Tool compensation memory Tool type The tool type (drill, milling or turning tool) determines which geometry data is necessary and how this is taken into account. Cutting edge position The cutting edge position describes the position of the tool tip P in relation to the cutting edge center point S.
Tool offsets 6.5 Tool types The tool geometry variables consist of several components (geometry, wear). The controller computes the components to a certain dimension (e.g. overall length 1, total radius). The respective overall dimension becomes effective when the compensation memory is activated. How these values are calculated in the axes is determined by the tool type and the current plane (G17/G18/G19).
Page 64
Tool offsets 6.5 Tool types Bevel cutter (with corner rounding) Tapered die milling tool Drill and thread milling cutter Tool parameters The following figures provide an overview of which tool parameters (DP...) for milling tools are entered in the compensation memory: Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Tool offsets 6.5 Tool types Note Brief description of the tool parameters can be found on the user interface. For further information, see: References: Function Manual, Basic Functions; Tool Offset (W1) 6.5.3 Drills The following tool types are available in the "Drills" group: Twist drill Drill Boring bar...
Tool offsets 6.5 Tool types Tap Whitworth thread Reamer Tool parameters The following figure provides an overview of which tool parameters (DP...) for drills are entered in the compensation memory: Note Brief description of the tool parameters can be found on the user interface. For further information, see: References: Function Manual, Basic Functions;...
Tool offsets 6.5 Tool types Facing wheel with monitoring without base dimension for grinding wheel peripheral speed GWPS Dresser Tool parameters The following figure provides an overview of which tool parameters (DP...) for grinding tools are entered in the compensation memory: Note Brief description of the tool parameters can be found on the user interface.
Page 68
Tool offsets 6.5 Tool types Button tool / forming tool (TOOLMAN) Rotary drill (ECOCUT) Probe with cutting edge position parameters Tool parameters The following figures provide an overview of which tool parameters (DP...) for turning tools are entered in the compensation memory: Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Tool offsets 6.5 Tool types Note Brief description of the tool parameters can be found on the user interface. For further information, see: References: Function Manual, Basic Functions; Tool Offset (W1) 6.5.6 Special tools The following tool types are available in the "Special tools" group: Slotting saw 3D probe Edge probe...
Tool offsets 6.6 Tool offset call (D) Note Brief description of the tool parameters can be found on the user interface. For further information, see: References: Function Manual, Basic Functions; Tool Offset (W1) 6.5.7 Chaining rule The geometry tool length compensations, wear and base dimension can be chained for both the left and the right tool nose radius compensation, i.e.
Page 71
Tool offsets 6.6 Tool offset call (D) Meaning Command for the activation of an offset data block for the active tool The tool length offset is applied with the first programmed traverse of the associated length compensation axis. Notice: A tool length offset can also take effect without D programming, when the automatic activation of a tool edge has been configured for the tool change (→...
Tool offsets 6.7 Change in the tool offset data Examples Example 1: Tool change with T command (turning) Program code Comment N10 T1 D1 ; Load tool T1 and activate tool offset data block D1 of T1. N11 G0 X... Z... ;...
Tool offsets 6.8 Programmable tool offset (TOFFL, TOFF, TOFFR) MD9440 $MM_ACTIVATE_SEL_USER WARNING Risk of collision If MD9440 is set, tool offsets resulting from changes in tool offset data during the part program stop, are applied when the part program is continued. Programmable tool offset (TOFFL, TOFF, TOFFR) The user can use the commands TOFFL/TOFF and TOFFR to modify the effective tool length or the effective tool radius in the NC program, without changing the tool offset data stored in...
Page 74
Tool offsets 6.8 Programmable tool offset (TOFFL, TOFF, TOFFR) Meaning Command for the compensation of the effective tool length TOFFL: TOFFL can be programmed with or without index: ● Without index: TOFFL= The programmed offset value is applied in the same direction as the tool length component L1 stored in the compensation memory.
Page 75
Tool offsets 6.8 Programmable tool offset (TOFFL, TOFF, TOFFR) Further syntax rules ● The tool length can be changed simultaneously in all three components. However, commands of the TOFFL/TOFFL[1..3] group and commands of the TOFF[<geometry axis>] may not be used simultaneously in one block. TOFFL and TOFFL[1] may also not be written simultaneously in one block.
Page 76
Tool offsets 6.8 Programmable tool offset (TOFFL, TOFF, TOFFR) The effective drill length is to be decreased by 1 mm. The following variants are available for the programming of this tool length offset: TOFFL=-1 TOFFL[1]=-1 TOFF[Y]=1 Example 3: Changing the programming type from TOFFL to TOFF The active tool is a milling tool.
Page 77
Tool offsets 6.8 Programmable tool offset (TOFFL, TOFF, TOFFR) The currently effective offsets can be read with the following system variables: System variable Meaning $P_TOFFL [<n>] with 0 ≤ n ≤ 3 Reads the current offset value of TOFFL (for n = 0) or TOFFL[1...3] (for n = 1, 2, 3) in the preprocessing context.
Spindle motion Spindle speed (S), spindle direction of rotation (M3, M4, M5) The spindle speed and direction of rotation values set the spindle in rotary motion and provide the conditions for chip removal. Figure 7-1 Spindle motion during turning Other spindles may be available in addition to the main spindle (e.g. the counterspindle or an actuated tool on turning machines).
Page 80
Spindle motion 7.1 Spindle speed (S), spindle direction of rotation (M3, M4, M5) Meaning Spindle speed in rpm for the master spindle S…: S<n>=... : Spindle speed in rpm for spindle <n> Note: The speed specified with S0=… applies to the master spindle Direction of spindle rotation clockwise for master spindle Spindle direction of rotation clockwise for spindle <n>...
Page 81
Spindle motion 7.1 Spindle speed (S), spindle direction of rotation (M3, M4, M5) Program code Comment N10 S300 M3 ; Speed and direction of rotation for drive spindle = pre- set master spindle. ; Machining of the right-hand workpiece side. N100 SETMS(2) ;...
Spindle motion 7.2 Cutting rate (SVC) Example: Program code Comment N10 S300 M3 S2=780 M2=4 ; Master spindle: 300 rpm, CW rotation 2nd spindle: 780 rpm, CCW rotation Programmable switchover of master spindle The SETMS(<n>) command can be used in the NC program to define any spindle as the master spindle.
Page 83
Spindle motion 7.2 Cutting rate (SVC) with: Spindle speed in rpm SVC: Cutting rate in m/min or ft/min Radius of the active tool in mm The tool type ($TC_DP1) of the active tool is not taken into account. The programmed cutting rate is independent of the path feedrate F and G function group 15. The direction of rotation and the spindle start are programmed using M3 and M4 respectively and the spindle stop using M5.
Page 84
Spindle motion 7.2 Cutting rate (SVC) Note Changing between SVC and S Changing between SVC and S programming is possible at will, even while the spindle is turning. In each case, the value that is not active is deleted. Note Maximum tool speed System variable $TC_TP_MAX_VELO[<tool number>] can be used to preset a maximum tool speed (spindle speed).
Page 85
Spindle motion 7.2 Cutting rate (SVC) Program code Comment N20 T1 D1 SVC=100 ; Tool and offset data set selection together with SVC in block (no specific sequence) N30 X30 M3 ; Spindle start with CW direction of rotation, cut- ting rate 100 m/min N40 G1 X20 F0.3 G95 ;...
Page 86
Spindle motion 7.2 Cutting rate (SVC) Program code Comment N160 SVC=50 ; S3 = (50 m/min * 1,000) / (5.0 mm * 2 * 3.14) = 1592.36 rpm. The offset applied to toolholder 1 is still active and as- signed to spindle 3. N170 D4 ;...
Page 87
Spindle motion 7.2 Cutting rate (SVC) Program code Comment N270 SVC[1]=300 ; S1 = (300 m/min * 1,000) / (9.0 mm * 2 * 3.14) = 5307.86 rpm. S3 = (50 m/min * 1,000) / (9.0 mm * 2 * 3.14) = 884.64 rpm. Further information Tool radius The following tool offset data (associated with the active tool) affect the tool radius when:...
Spindle motion 7.3 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC) $P_SVC[<n>] Programmed cutting rate for spindle <n> $P_S_TYPE[<n>] Programmed spindle speed programming variant for spindle <n> Value: Meaning: Spindle speed S in rpm Cutting rate SVC in m/min or ft/min Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC) When the "Constant cutting rate"...
Page 89
Spindle motion 7.3 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC) Other reference axis for G96/G961/G962: SCC[<axis>] Note SCC[<axis>] can be programmed together with G96/G961/G962 or in isolation. Meaning Constant cutting rate with feedrate type G95: ON G96: G95 is activated automatically with G96. If G95 has not been activated previously, a new feedrate value F...
Page 90
Spindle motion 7.3 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC) Note The reference axis for G96/G961/G962 must be a geometry axis assigned to the channel at the time when SCC[<axis>] is programmed. SCC[<axis>] can also be programmed when any of the G96/G961/G962 functions are active. Examples Example 1: Activating the constant cutting rate with speed limitation Program code...
Page 91
Spindle motion 7.3 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC) Further information Calculation of the spindle speed The ENS position of the face axis (radius) is the basis for calculating the spindle speed from the programmed cutting rate. Note Frames between WCS and SZS (e.g.
Page 92
Spindle motion 7.3 Constant cutting rate (G96/G961/G962, G97/G971/G972, G973, LIMS, SCC) If the contour is approached in rapid traverse and the next NC block contains a G1/G2/G3/etc. path command, the speed is adjusted in the G0 approach block for the next path command. Other reference axis for G96/G961/G962 If any of the G96/G961/G962 functions are active, SCC[<axis>] can be used to assign any geometry axis as a reference axis.
Spindle motion 7.5 Programmable spindle speed limitation (G25, G26) Programmable spindle speed limitation (G25, G26) The minimum and maximum spindle speeds defined in the machine and setting data can be modified by means of a part program command. Programmed spindle speed limitations are possible for all spindles of the channel. Syntax G25 S…...
Feed control Feedrate (G93, G94, G95, F, FGROUP, FL, FGREF) These commands are used in the NC program to set the feedrates for all axes involved in the machining sequence. Syntax F<value> FGROUP(<axis_1>,<axis_2>,...) FGREF[<rotary axis>]=<reference radius> FL[<axis>]=<value> Meaning Path feed type: Inverse-time feedrate [rpm] G93: Path feed type: Linear feedrate [mm/min], [inch/min] or [degrees/min] G94:...
Page 98
Feed control 8.1 Feedrate (G93, G94, G95, F, FGROUP, FL, FGREF) Program code Comment N120 G91 G1 G710 F100 ; Feedrate = 100mm/min or 100 degrees/min N130 DO $R1=$AC_TIME N140 X10 ; Feedrate = 100 mm/min, path = 10 mm, R1 = approx.
Page 99
Feed control 8.1 Feedrate (G93, G94, G95, F, FGROUP, FL, FGREF) Example 3: Helical interpolation Path axes X and Y traverse with the programmed feedrate, the infeed axis Z is a synchronized axis. Program code Comment N10 G17 G94 G1 Z0 F500 ;...
Page 100
Feed control 8.1 Feedrate (G93, G94, G95, F, FGROUP, FL, FGREF) The feedrate is specified under address F. Depending on the default setting in the machine data, the units of measurement specified with the G commands are either in mm or inch. One F value can be programmed per NC block.
Page 101
Feed control 8.1 Feedrate (G93, G94, G95, F, FGROUP, FL, FGREF) Note If the path lengths vary greatly from block to block, a new F value should be specified in each block with G93. When machining with rotary axes, the feedrate can also be specified in degrees/ min.
Page 102
Feed control 8.1 Feedrate (G93, G94, G95, F, FGROUP, FL, FGREF) The setting made with FGROUP can be changed: 1. By reprogramming FGROUP: e.g. FGROUP(X,Y,Z) 2. By programming FGROUP without a specific axis: FGROUP() In accordance with FGROUP(), the initial setting in the machine data applies: Geometry axes are now once again traversed in the path axis grouping.
Page 103
Feed control 8.1 Feedrate (G93, G94, G95, F, FGROUP, FL, FGREF) Traverse rotary axes with path velocity F (FGREF) For machining operations in which the tool or the workpiece or both are moved by a rotary axis, the effective machining feedrate is to be interpreted as a path feed in the usual way by reference to the F value.
Page 104
Feed control 8.1 Feedrate (G93, G94, G95, F, FGROUP, FL, FGREF) With this type of programming, the F value programmed in N110 is evaluated as the rotary axis feedrate in degrees/min, while the feedrate evaluation in N120 is either 100 inch/min or 100 mm/min, dependent upon the currently active G70/G71/G700/G710 setting.
Feed control 8.2 Traverse positioning axes (POS, POSA, POSP, FA, WAITP, WAITMC) With orientation axes the mode of operation of the FGREF[] factors is dependent upon whether the change in the orientation of the tool is implemented by means of rotary axis or vector interpolation.
Page 106
Feed control 8.2 Traverse positioning axes (POS, POSA, POSP, FA, WAITP, WAITMC) FA[<axis>]=<value> WAITP(<axis>) ; Programming in a separate NC block. WAITMC(<wait marker>) Meaning Move positioning axis to specified position POS/POSA: POS and POSA have the same functionality but differ in their block change behavior: ●...
Page 107
Feed control 8.2 Traverse positioning axes (POS, POSA, POSP, FA, WAITP, WAITMC) CAUTION Travel with POSA If a command, which implicitly causes a preprocessing stop, is read in a following block, this block is not executed until all other blocks which are already preprocessed and stored have been executed.
Feed control 8.3 Position-controlled spindle mode (SPCON, SPCOF) Block step enable or program execution is not affected by POSA. The movement to the end position can be performed during execution of subsequent NC blocks. Travel with POS The next block is not executed until all axes programmed under POS reach their end positions. Wait for end of travel with WAITP After a WAITP, assignment of the axis to the NC program is no longer valid;...
Feed control 8.4 Positioning spindles (SPOS, SPOSA, M19, M70, WAITS) Note The speed is specified with S…. M3, M4 and M5 apply in respect of the directions of rotation and spindle stop. Note With synchronized spindle setpoint value linkage, the master spindle must be operated in position-control mode.
Page 110
Feed control 8.4 Positioning spindles (SPOS, SPOSA, M19, M70, WAITS) In order to synchronize spindle movements, WAITS can be used to wait until the spindle position is reached. Requirements The spindle to be positioned must be capable of operation in position-controlled mode. Syntax Position spindle: SPOS=<value>/SPOS[<n>]=<value>...
Page 111
Feed control 8.4 Positioning spindles (SPOS, SPOSA, M19, M70, WAITS) Meaning Set spindle to specified angle SPOS/SPOSA: SPOS and SPOSA have the same functionality but differ in their block change be‐ havior: ● SPOS delays the enabling of the NC block until the position has been reached. ●...
Page 112
Feed control 8.4 Positioning spindles (SPOS, SPOSA, M19, M70, WAITS) A block change is possible in the braking ramp. IPOBRKA: Channel axis identifier <axis>: Instant in time of the block change with reference to the brak‐ <instant in ing ramp time>: Unit: Percent...
Page 113
Feed control 8.4 Positioning spindles (SPOS, SPOSA, M19, M70, WAITS) Further information Positioning with SPOSA The block step enable or program execution is not affected by SPOSA. The spindle positioning can be performed during execution of subsequent NC blocks. The program moves onto the next block if all the functions (except for spindle) programmed in the current block have reached their block end criterion.
Feed control 8.5 Feedrate for positioning axes / spindles (FA, FPR, FPRAON, FPRAOF) WAITS can be used after M5 to wait until the spindle(s) has (have) stopped. WAITS can be used after M3/M4 to wait until the spindle(s) has (have) reached the specified speed/direction of rotation.
Page 115
Feed control 8.5 Feedrate for positioning axes / spindles (FA, FPR, FPRAON, FPRAOF) Syntax Feedrate for positioning axis: FA[<axis>]=… Axis feedrate for spindle: FA[SPI(<n>)]=… FA[S<n>]=… Derive revolutional feedrate for path/synchronized axes: FPR (<rotary axis>) FPR(SPI(<n>)) FPR(S<n>) Derive rotational feedrate for positioning axes/spindles: FPRAON(<axis>,<rotary axis>) FPRAON(<axis>,SPI(<n>)) FPRAON(<axis>,S<n>)
Page 116
Feed control 8.5 Feedrate for positioning axes / spindles (FA, FPR, FPRAON, FPRAOF) Axis identifier (positioning or geometry axis) <axis>: Spindle identifier SPI(<n>)/S<n>: SPI(<n>) and S<n> are identical in terms of function. Spindle number <n>: Note: SPI converts spindle numbers into axis identifiers. The transfer parameter (<n>) must contain a valid spindle number.
Feed control 8.7 Programmable acceleration override (ACC) (option) Syntax OVR=<value> OVRRAP=<value> OVRA[<axis>]=<value> OVRA[SPI(<n>)]=<value> OVRA[S<n>]=<value> Meaning Feedrate modification for path feedrate F OVR: Feedrate modification for rapid traverse velocity OVRRAP: Feedrate modification for positioning feedrate FA or for spindle speed S OVRA: Axis identifier (positioning or geometry axis) <axis>:...
Page 119
Feed control 8.7 Programmable acceleration override (ACC) (option) Syntax Acceleration change for the specified path axis or speed change for the ACC: specified spindle. Channel axis name of path axis <axis>: Spindle identifier SPI(<n>)/S<n>: SPI(<n>) and S<n> are identical in terms of function. Spindle number <n>: Note:...
Feed control 8.8 Feedrate with handwheel override (FD, FDA) Example: Program code N100 EVERY $A_IN[1] DO POS[X]=50 FA[X]=2000 ACC[X]=140 The current acceleration value can be called with system variable $AA_ACC[<axis>]. Machine data can be used to define whether the last ACC value set should apply on RESET/part program end or whether 100% should apply.
Page 121
Feed control 8.8 Feedrate with handwheel override (FD, FDA) Syntax FD=<velocity> FDA[<axis>]=<velocity> Meaning Path feedrate and enabling of velocity override with FD=<velocity>: handwheel <velocity>: ● Value = 0: Not allowed! ● Value ≠ 0: Path velocity Axial feedrate FDA[<axis>]=<velocity>: <velocity>: ●...
Page 122
Feed control 8.8 Feedrate with handwheel override (FD, FDA) Further information Traverse path axes with velocity override (FD=<velocity>) The following conditions must be met for the part program block in which path velocity override is programmed: ● Path command G1, G2 or G3 active ●...
Feed control 8.9 Feedrate optimization for curved path sections (CFTCP, CFC, CFIN) Example: Program code Description N20 POS[V]=90 FDA[V]=0 ; Target position = 90 mm, axial feedrate = 0 mm/min and path override with handwheel. ; Velocity of axis V at start of block = 0 mm/min. ;...
Page 124
Feed control 8.9 Feedrate optimization for curved path sections (CFTCP, CFC, CFIN) Example: Milling a small outside radius with a large tool. The path that the outside of the milling tool must travel is considerably longer than the path along the contour. Because of this, machining at the contour takes place with a very low feedrate.
Page 125
Feed control 8.9 Feedrate optimization for curved path sections (CFTCP, CFC, CFIN) Example In this example, the contour is first produced with CFC-corrected feedrate. During finishing, the cutting base is also machined with CFIN. This prevents the cutting base being damaged at the outside radii by a feedrate that is too high.
Feed control 8.10 Several feedrate values in one block (F, ST, SR, FMA, STA, SRA) Further information Constant feedrate on contour with CFC The feedrate is reduced for inside radii and in‐ creased for outside radii. This ensures a con‐ stant speed at the tool edge and thus at the contour.
Page 127
Feed control 8.10 Several feedrate values in one block (F, ST, SR, FMA, STA, SRA) F2=... to F7=... : In addition to the path feedrate, up to six further feedrates can be programmed in the block. The numerical expansion indicates the bit number of the input that activates the feedrate when changed: Effective:...
Page 128
Feed control 8.10 Several feedrate values in one block (F, ST, SR, FMA, STA, SRA) Note Delete distance-to-go If input bit 1 is activated for the dwell time or bit 0 for the return path, the distance to go for the path axes or the relevant single axes is deleted and the dwell time or return started.
Feed control 8.12 Tooth feedrate (G95 FZ) Note If no traversing motion is programmed in the block (e.g. computation block), the FB has no effect. If no explicit feedrate for chamfering/rounding is programmed, then the value of FB also applies for any chamfering/rounding contour element in this block.
Page 131
Feed control 8.12 Tooth feedrate (G95 FZ) The control uses the $TC_DPNT (number of teeth) tool parameter associated with the active tool offset data block to calculate the effective revolutional feedrate for each traversing block from the programmed tooth feedrate. F = FZ * $TC_DPNT with: Revolutional feedrate in mm/rev or inch/rev...
Page 132
Feed control 8.12 Tooth feedrate (G95 FZ) NOTICE Tool operations undefined Technological concerns such as climb milling or conventional milling, front face milling or peripheral face milling, etc., along with the path geometry (straight line, circle, etc.), are not taken into account automatically. Therefore, these factors have to be given consideration when programming the tooth feedrate.
Page 133
Feed control 8.12 Tooth feedrate (G95 FZ) Program code Comment N60 M6 T3 D1 ; Load tool with e.g. five teeth ($TC_DPNT = 5). N70 X22 M3 S300 N80 G1 X3 G95 FZ=0.02 ; Change G95 F… to G95 FZ…, tooth feedrate active with 0.02 mm/tooth.
Page 134
Feed control 8.12 Tooth feedrate (G95 FZ) Program code Comment N130 G95 G1 FZ0.03 X20 ; Path motion, the effective feedrate is dependent upon: - The tooth feedrate FZ - The speed of spindle 2 - The number of teeth of the active tool T1 Note Following the change in the master spindle (N100), a tool actuated by spindle 2 must be substituted (N110).
Page 135
Feed control 8.12 Tooth feedrate (G95 FZ) $AC_FZ Tooth feedrate effective when the current main run block was prepro‐ cessed. $AC_F_TYPE Path feedrate type effective when the current main run block was pre‐ processed. Value: Meaning: mm/min mm/rev inch/min inch/rev mm/tooth inch/tooth ●...
Geometry settings Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA, G153) The G54 to G57 and G505 to G599 commands activate the values of the associated parameterizable zero offsets of the workpiece coordinate system compared with the base coordinate system set from the user interface.
Geometry settings 9.1 Settable zero offset (G54 to G57, G505 to G599, G53, G500, SUPA, G153) Example Three workpieces that are arranged on a pallet in accordance with the zero offset values G54 to G56 are to be machined in succession. The ma‐ chining sequence is programmed in subprogram L47.
Geometry settings 9.2 Selection of the working plane (G17/G18/G19) ① Initial position in the BCS ② Offset ③ Offset + rotation ④ Offset + scaling Figure 9-1 Zero offsets The frame values for the parameterized zero offsets are input from the user interface: SINUMERIK Operate: "Parameters"...
Page 140
Geometry settings 9.2 Selection of the working plane (G17/G18/G19) Syntax G17/G18/G19, etc. Meaning Working plane X/Y G17: Infeed direction Z, plane selection 1st - 2nd geometry axis Working plane Z/X G18: Infeed direction Y, plane selection 3rd - 1st geometry axis Working plane Y/Z G19: Infeed direction X, plane selection 2nd - 3rd geometry axis...
Page 141
Geometry settings 9.2 Selection of the working plane (G17/G18/G19) Program code Comment N10 G17 T5 D8 ; Call of working plane X/Y, tool call. Tool length offset is performed in the Z direction. N20 G1 G41 X10 Y30 Z-5 F500 ;...
Geometry settings 9.3 Dimensions Note The tool length components can be calculated according to the rotated working planes with the functions for "Tool length compensation for orientable tools". The compensation plane is selected with CUT2D, CUT2DF. For further information on this and for the description of the available calculation methods,see Chapter "Tool radius compensation (Page 247)".
Geometry settings 9.3 Dimensions 9.3.1 Absolute dimensions (G90, AC) With absolute dimensions, the position specifications always refer to the zero point of the currently valid coordinate system, i.e. the absolute position is programmed, on which the tool is to traverse. Modal absolute dimensions Modal absolute dimensions are activated with the G90 command.
Page 144
Geometry settings 9.3 Dimensions Examples Example 1: Milling Program code Comment N10 G90 G0 X45 Y60 Z2 T1 S2000 M3 ; Absolute dimension input, in rapid tra- verse to position XYZ, tool selection, spindle on with clockwise direction of rotation. N20 G1 Z-5 F500 ;...
Geometry settings 9.3 Dimensions Program code Comment N5 T1 D1 S2000 M3 ; Loading of tool T1, spindle on with clockwise direction of rotation. N10 G0 G90 X11 Z1 ; Absolute dimension input, in rapid tra- verse to position XZ. N20 G1 Z-15 F0.2 ;...
Page 146
Geometry settings 9.3 Dimensions With preset absolute dimensions (G90), the IC command can be used to set non-modal incremental dimensions for individual axes. Note Non-modal incremental dimensions (IC) are also possible for spindle positioning (SPOS, SPOSA) and interpolation parameters (I, J, K). Syntax <axis>=IC(<value>) Meaning...
Page 147
Geometry settings 9.3 Dimensions Examples Example 1: Milling Program code Comment N10 G90 G0 X45 Y60 Z2 T1 S2000 M3 ; Absolute dimension input, in rapid tra- verse to position XYZ, tool selection, spindle on with clockwise direction of rotation N20 G1 Z-5 F500 ;...
Page 148
Geometry settings 9.3 Dimensions Example 2: Turning Program code Comment N5 T1 D1 S2000 M3 ; Loading of tool T1, spindle on with clockwise di- rection of rotation. N10 G0 G90 X11 Z1 ; Absolute dimension input, in rapid traverse to position XZ. N20 G1 Z-15 F0.2 ;...
Geometry settings 9.3 Dimensions Program code Comment N30 G90 X50 ; Absolute dimensions active, traverse to position X75 (the zero offset is traversed). See also Absolute and incremental dimensions for turning and milling (G90/G91) (Page 149) 9.3.3 Absolute and incremental dimensions for turning and milling (G90/G91) The two following figures illustrate the programming with absolute dimensions (G90) or incremental dimensions (G91) using turning and milling technology examples.
Geometry settings 9.3 Dimensions Turning: Note On conventional turning machines, it is usual to consider incremental traversing blocks in the transverse axis as radius values, while diameter specifications apply for the reference dimensions. This conversion for G90 is performed using the commands DIAMON, DIAMOF or DIAM90.
Page 151
Geometry settings 9.3 Dimensions Syntax <rotary axis>=DC(<value>) <rotary axis>=ACP(<value>) <rotary axis>=ACN(<value>) Meaning Identifier of the rotary axis that is to be traversed (e.g. A, B or C) <rotary axis>: Command for the direct approach to the position The rotary axis approaches the programmed position directly on the shortest path.
Geometry settings 9.3 Dimensions Note The commands DC, ACP and ACN can also be used for spindle positioning (SPOS, SPOSA) from standstill. Example: SPOS=DC(45) Example Milling on a rotary table The tool is stationary, the table turns to 270° in a clockwise direction to produce a circular groove.
Page 153
Geometry settings 9.3 Dimensions Syntax G70/G71 G700/G710 Meaning Activation of the inch measuring system G70: The inch measuring system is used to read and write geometric data in units of length. Technological data in units of length, e.g. feedrates, tool offsets or settable zero offsets, as well as machine data and system variables, are read and written using the parameterized basic system (MD10240 $MN_SCALING_SYSTEM_IS_METRIC).
Page 154
Geometry settings 9.3 Dimensions Program code Comment N10 G0 G90 X20 Y30 Z2 S2000 M3 T1 ; X=20 mm, Y=30 mm, Z=2 mm, F=rapid traverse mm/min N20 G1 Z-5 F500 ; Z=-5 mm, F=500 mm/min N30 X90 ; X=90 mm N40 G70 X2.75 Y3.22 ;...
Page 156
Geometry settings 9.3 Dimensions Meaning Command for the activation of the independent channel-specific diameter program‐ DIAMON: ming. The effect of DIAMON is independent of the programmed dimensions mode (absolute dimensions G90 or incremental dimensions G91): Dimensions in the diameter ● For G90: ●...
Geometry settings 9.3 Dimensions Program code Comment N100 M30 ; End of program Further information Diameter values (DIAMON/DIAM90) The diameter values apply for the following data: ● Actual value display of the transverse axis in the workpiece coordinate system ● JOG mode: Increments for incremental dimensions and handwheel travel ●...
Page 158
Geometry settings 9.3 Dimensions Meaning Modal axis-specific diameter programming Command for the activation of the independent axis-specific diameter programming DIAMONA: The effect of DIAMONA is independent of the programmed dimensions mode (G90/G91 or AC/IC): Dimensions in the diameter ● For G90, AC: Dimensions in the diameter ●...
Page 159
Geometry settings 9.3 Dimensions The DAC command sets the following dimensions to non-modal for the specified DAC: axis: Diameter in absolute dimensions The DIC command sets the following dimensions to non-modal for the specified DIC: axis: Diameter in incremental dimensions The RAC command sets the following dimensions to non-modal for the specified RAC: axis:...
Page 160
Geometry settings 9.3 Dimensions Example 2: Non-modal axis-specific diameter/radius programming X is the transverse axis in the channel, axis-specific diameter programming is permitted for Y. Program code Comment N10 DIAMON ; Channel-specific diameter pro- gramming on. N15 G0 G90 X20 Y40 DIAMONA[Y] ;...
Geometry settings 9.4 Position of workpiece for turning ● Rapid retraction: POLF[AX] ● Movement in tool direction: MOVT ● Smooth approach and retraction: G140 to G143, G147, G148, G247, G248, G347, G348, G340, G341 Position of workpiece for turning Axis identifiers The two geometry axes perpendicular to one another are usually called: Longitudinal axis = Z axis (abscissa)
Page 162
Geometry settings 9.4 Position of workpiece for turning Transverse axis Generally the dimensions for the transverse axis are diameter specifications (double path dimension compared to other axes): The geometry axis that is to serve as transverse axis is defined in the machine data (→ machine manufacturer).
Motion commands 10.1 General information about the travel commands Contour elements The programmed workpiece contour can be made up of the following contour elements: ● Straight lines ● Circular arcs ● Helical curves (through overlaying of straight lines and circular arcs) Travel commands The following travel commands are available for the creation of these contour elements: ●...
Motion commands 10.1 General information about the travel commands Workpiece contour NOTICE Tool operation undefined Before machining, the workpiece must be positioned in such a way that the tool or workpiece cannot be damaged. The motion blocks produce the workpiece contour when performed in succession: Figure 10-1 Motion blocks for turning Figure 10-2...
Motion commands 10.2 Travel commands with Cartesian coordinates (G0, G1, G2, G3, X..., Y..., Z...) 10.2 Travel commands with Cartesian coordinates (G0, G1, G2, G3, X..., Y..., Z...) The position specified in the NC block with Cartesian coordinates can be approached with rapid traverse motion G0, linear interpolation G1 or circular interpolation G2 /G3.
Motion commands 10.3 Travel commands with polar coordinates Program code Comment N10 G17 S400 M3 ; Selection of the working plane, spindle clockwise N20 G0 X40 Y-6 Z2 ; Approach of the starting position specified with Cartesian coordinates in rapid traverse N30 G1 Z-3 F40 ;...
Page 167
Motion commands 10.3 Travel commands with polar coordinates Note It is possible to switch block-by-block in the NC program between polar and Cartesian dimensions. It is possible to return directly to the Cartesian system by using Cartesian coordinate identifiers (X..., Y..., Z...). The defined pole is moreover retained up to program end. Note If no pole has been specified, the zero point of the current workpiece coordinate system applies.
Motion commands 10.3 Travel commands with polar coordinates 10.3.2 Travel commands with polar coordinates (G0, G1, G2, G3, AP, RP) Travel commands with polar coordinates are useful when the dimensions of a workpiece or part of the workpiece are measured from a central point and the dimensions are specified in angles and radii (e.g.
Page 169
Motion commands 10.3 Travel commands with polar coordinates Note The polar coordinates refer to the pole specified with G110 ... G112 and apply in the working plane selected with G17 to G19. Note The 3rd geometry axis, which lies perpendicular to the working plane, can also be specified in Cartesian coordinates (see the following diagram).
Page 170
Motion commands 10.3 Travel commands with polar coordinates Supplementary conditions ● No Cartesian coordinates such as interpolation parameters, axis addresses, etc. may be programmed for the selected working plane in NC blocks with polar end point coordinates. ● If a pole has not been defined with G110 ... G112, then the zero point of the current workpiece coordinate system is automatically considered as the pole: ●...
Page 171
Motion commands 10.3 Travel commands with polar coordinates Example Creation of a drilling pattern The positions of the holes are specified in polar coordinates. Each hole is machined with the same produc‐ tion sequence: Rough-drilling, drilling as dimensioned, ream‐ ing … The machining sequence is stored in the sub‐...
Motion commands 10.4 Rapid traverse motion (G0, RTLION, RTLIOF) 10.4 Rapid traverse motion (G0, RTLION, RTLIOF) The rapid traverse velocity of an axis is its maximum permissible velocity defined using machine data: ● MD32000 $MA_MAX_AX_VELO (maximum axis velocity) will still apply even after the coupling is activated Rapid traverse motion is used, for example: ●...
Page 175
Motion commands 10.4 Rapid traverse motion (G0, RTLION, RTLIOF) With non-linear interpolation, the setting for the appropriate positioning axis (BRISKA, SOFTA, DRIVEA) applies with reference to the axial jerk. NOTICE Risk of collision For non-linear interpolation, generally another contour is traversed along than for linear interpolation.
Motion commands 10.5 Linear interpolation (G1) 10.5 Linear interpolation (G1) With G1 the tool travels on paraxial, inclined or straight lines arbitrarily positioned in space. Linear interpolation permits machining of 3D surfaces, grooves, etc. Milling: Syntax G1 X… Y… Z … F… G1 AP=…...
Page 177
Motion commands 10.5 Linear interpolation (G1) Note G1 is modal. Spindle speed S and spindle direction M3/M4 must be specified for the machining. Axis groups, for which path feedrate F applies, can be defined with FGROUP. You will find more information in the "Path behavior"...
Motion commands 10.6 Circular interpolation Example 2: Machining of a groove (turning) Program code Comment N10 G17 S400 M3 ; Selection of the working plane, spindle clockwise N20 G0 X40 Y-6 Z2 ; Approach the starting position N30 G1 Z-3 F40 ;...
Page 179
Motion commands 10.6 Circular interpolation Syntax G2/G3 X… Y… Z… I=AC(…) J=AC(…) K=AC(…) ; Absolute center point and end point with reference to the work‐ piece zero G2/G3 X… Y… Z… I… J… K… ; Center point in incremental dimen‐ sions with reference to the circle starting point G2/G3 X…...
Page 180
Motion commands 10.6 Circular interpolation Examples Example 1: Milling The following program lines contain an exam‐ ple for each circular-path programming possi‐ bility. The necessary dimensions are shown in the production drawing on the right. Program code Comment N10 G0 G90 X133 Y44.48 S800 M3 ;...
Page 181
Motion commands 10.6 Circular interpolation Example 2: Turning Program code Comment N..N120 G0 X12 Z0 N125 G1 X40 Z-25 F0.2 N130 G3 X70 Y-75 I-3.335 K-29.25 ; Circle end point, center point in incremental dimensions N130 G3 X70 Y-75 I=AC(33.33) K=AC(-54.25) ;...
Motion commands 10.6 Circular interpolation 10.6.2 Circular interpolation with center point and end point (G2/G3, X... Y... Z..., I... J... K...) Circular interpolation enables machining of full circles or arcs. The circular motion is described by: ● The end point in Cartesian coordinates X, Y, Z and ●...
Page 183
Motion commands 10.6 Circular interpolation Note G2 and G3 are modal. The default settings G90/G91 absolute and incremental dimensions are only valid for the circle end point. Per default, the center point coordinates I, J, K are entered in incremental dimensions in relation to the circle starting point.
Page 184
Motion commands 10.6 Circular interpolation Example 2: Turning Center point data using incremental dimensions N120 G0 X12 Z0 N125 G1 X40 Z-25 F0.2 N130 G3 X70 Z-75 I-3.335 K-29.25 N135 G1 Z-95 Center point data using absolute dimensions N120 G0 X12 Z0 N125 G1 X40 Z-25 F0.2 N130 G3 X70 Z-75 I=AC(33.33) K=AC(-54.25) N135 G1 Z-95...
Motion commands 10.6 Circular interpolation The control needs the working plane parameter (G17 to G19) to calculate the direction of rotation for the circle (G2 is clockwise or G3 is counter-clockwise). It is advisable to specify the working plane generally. Exception: You can also machine circles outside the selected working plane (not with arc angle and helix parameters).
Page 186
Motion commands 10.6 Circular interpolation Meaning Circular interpolation clockwise Circular interpolation counter-clockwise X... Y... Z... : End point in Cartesian coordinates. These specifications depend on the travel commands G90/G91 or ...=AC(...)/...=IC(..) CR=... : Circle radius The meanings are as follows: CR=+…: Angle less than or equal to 180°...
Motion commands 10.6 Circular interpolation Example 2: Turning Program code N125 G1 X40 Z-25 F0.2 N130 G3 X70 Z-75 CR=30 N135 G1 Z-95 10.6.4 Circular interpolation with opening angle and center point (G2/G3, X... Y... Z.../ I... J... K..., AR) The circular motion is described by: ●...
Page 188
Motion commands 10.6 Circular interpolation I J K : Circle center point in Cartesian coordinates (in X, Y, Z direction) The meanings are as follows: I: Coordinate of the circle center point in the X direction J: Coordinate of the circle center point in the Y direction K: Coordinate of the circle center point in the Z direction AR= : Opening angle, range of values 0°...
Motion commands 10.6 Circular interpolation Example 2: Turning 54.25 Program code N125 G1 X40 Z-25 F0.2 N130 G3 X70 Z-75 AR=135.944 N130 G3 I-3.335 K-29.25 AR=135.944 N130 G3 I=AC(33.33) K=AC(-54.25) AR=135.944 N135 G1 Z-95 10.6.5 Circular interpolation with polar coordinates (G2/G3, AP, RP) The circular motion is described by: ●...
Page 190
Motion commands 10.6 Circular interpolation AP= : End point in polar coordinates, in this case polar angle RP= : End point in polar coordinates, in this case polar radius corresponds to circle radius Examples Example 1: Milling Program code N10 G0 X67.5 Y80.211 N20 G111 X50 Y50 N30 G3 RP=34.913 AP=200.052 F500 Example 2: Turning...
Motion commands 10.6 Circular interpolation Program code N125 G1 X40 Z-25 F0.2 N130 G111 X33.33 Z-54.25 N135 G3 RP=30 AP=142.326 N140 G1 Z-95 10.6.6 Circular interpolation with intermediate point and end point (CIP, X... Y... Z..., I1... J1... K1...) CIP can be used to program arcs. These arcs can also be inclined in space. In this case, you describe the intermediate and end points with three coordinates.
Page 192
Motion commands 10.6 Circular interpolation I1= J1= K1= : Interpolation parameters: Intermediate points in Cartesian coordinates (in X, Y, Z direction) The meanings are as follows: Coordinate of the intermediate point in the X direction Coordinate of the intermediate point in the Y direction Coordinate of the intermediate point in the Z direction Absolute dimensions (non-modal) =AC(…):...
Motion commands 10.6 Circular interpolation Program code Comment N20 G17 G1 Z-2 F100 ; Feed of the tool. N30 CIP X80 Y120 Z-10 I1=IC(-85.35) J1=IC(-35.35) ; Circle end point and inter- K1=-6 mediate point. ; Coordinates for all three ge- ometry axes.
Page 194
Motion commands 10.6 Circular interpolation Determination of the tangent direction The tangent direction in the starting point of a CT block is determined from the end tangent of the programmed contour of the last block with a traversing motion. There can be any number of blocks without traversing information between this block and the current block.
Page 195
Motion commands 10.6 Circular interpolation Examples Example 1: Milling Milling a circular arc with CT directly after the straight part. Program code Comment N10 G0 X0 Y0 Z0 G90 T1 D1 N20 G41 X30 Y30 G1 F1000 ; Activation of TRC. N30 CT X50 Y15 ;...
Page 196
Motion commands 10.6 Circular interpolation Example 2: Turning Program code Comment N110 G1 X23.293 Z0 F10 N115 X40 Z-30 F0.2 N120 CT X58.146 Z-42 ; Circular-path programming with tangential transition. N125 G1 X70 Further information Splines In the case of splines, the tangential direction is defined by the straight line through the last two points.
Motion commands 10.7 Helical interpolation (G2/G3, TURN) Position of the circle plane The position of the circle plane depends on the active plane (G17-G19). If the tangent of the previous block does not lie in the active plane, its projection in the active plane is used.
Page 198
Motion commands 10.7 Helical interpolation (G2/G3, TURN) X Y Z : End point in Cartesian coordinates I J K : Circle center point in Cartesian coordinates Opening angle TURN= : Number of additional circular passes in the range from 0 to 999 AP= : Polar angle RP= :...
Motion commands 10.8 Involute interpolation (INVCW, INVCCW) Further information Sequence of motions 1. Approach starting point 2. Execute the full circles programmed with TURN=. 3. Approach circle end position, e.g. as part rotation. 4. Execute steps 2 and 3 across the infeed depth. The pitch, with which the helix is to be machined is calculated from the number of full circles plus the programmed circle end position (executed across the infeed depth).
Page 200
Motion commands 10.8 Involute interpolation (INVCW, INVCCW) The end point can be programmed in two ways: 1. Directly via Cartesian coordinates 2. Indirectly by specifying an opening angle (also refer to the programming of the opening angle for the circular-path programming) If the starting point and the end point are in the plane of the basic circle, then, analogous to the helical interpolation for circles, there is a superimposition to a curve in space.
Page 201
Motion commands 10.8 Involute interpolation (INVCW, INVCCW) AR=... : Indirect programming of the end point through specification of an opening angle (angle of rotation) The origin of the opening angle is the line from the circle center point to the starting point. AR >...
Page 202
Motion commands 10.8 Involute interpolation (INVCW, INVCCW) Supplementary conditions ● Both the starting point and the end point must be outside the area of the basic circle of the involute (circle with radius CR around the center point specified by I, J, K). If this condition is not satisfied, an alarm is generated and the program processing is aborted.
Page 203
Motion commands 10.8 Involute interpolation (INVCW, INVCCW) Examples Example 1: Counter-clockwise involute from the starting point to the programmed end point and back again as clockwise involute Program code Comment N10 G1 X10 Y0 F5000 ; Approach the starting position. N15 G17 ;...
Motion commands 10.9 Contour definitions Example 2: Counter-clockwise involute with indirect programming of the end point through specification of an opening angle Program code Comment N10 G1 X10 Y0 F5000 ; Approach the starting position. N15 G17 ; Selection of the X/Y plane as working plane.
Motion commands 10.9 Contour definitions Programmable are contour definitions with one, two, three or more points with the transition elements chamfer or rounding, through specification of Cartesian coordinates and/or angles (ANG or ANG1 and ANG2). Arbitrary further NC addresses can be used, e.g. address letters for further axes (single axes or axis perpendicular to the machining plane), auxiliary function specifications, G codes, velocities, etc.
Page 206
Motion commands 10.9 Contour definitions The end point of the straight line is defined by the following specifications: ● Angle ANG ● One Cartesian end point coordinate (X2 or Z2) ANG: Angle of the straight line X1, Z1: Start coordinates X2, Z2: End point coordinates of the straight line Syntax...
Motion commands 10.9 Contour definitions Program code Comment N10 X5 Z70 F1000 G18 ; Approach the starting position N20 Z39.5 ANG=110 ; Straight line with angle specification N30 ... 10.9.3 Contour definitions: Two straight lines Note In the following description it is assumed that: ●...
Page 208
Motion commands 10.9 Contour definitions ANG1: Angle of the first straight line ANG2: Angle of the second straight line X1, Z1: Start coordinates of the first straight line X2, Z2: End point coordinates of the first straight line or start coordinates of the second straight line X3, Z3: End point coordinates of the second straight line Syntax...
Page 209
Motion commands 10.9 Contour definitions X… Z… ● Rounding as transition between the straight lines: X… Z… RND=... X… Z… ● Chamfer as transition between the straight lines: X… Z… CHR=... X… Z… Meaning ANG=... : Identifier for angle programming The specified value (angle) refers to the abscissa of the active working plane (Z axis with G18).
Motion commands 10.9 Contour definitions Note For further information on the programming of a chamfer or rounding, see "Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM) (Page 239)". Example Program code Comment N10 X10 Z80 F1000 G18 ; Approach the starting position. N20 ANG=148.65 CHR=5.5 ;...
Page 211
Motion commands 10.9 Contour definitions ANG1: Angle of the first straight line ANG2: Angle of the second straight line X1, Z1: Start coordinates of the first straight line X2, Z2: End point coordinates of the first straight line or start coordinates of the second straight line X3, Z3: End point coordinates of the second straight line or start coordinates of the third straight line...
Page 212
Motion commands 10.9 Contour definitions ● Chamfer as transition between the straight lines: ANG=… CHR=... X… Z… ANG=… CHR=... X… Z… Programming of the end point of the first straight line by specifying the coordinates ● Corner as transition between the straight lines: X…...
Motion commands 10.9 Contour definitions CHR=... : Identifier for programming a chamfer The specified value corresponds to the width of the chamfer in the direction of motion: X... : Coordinates in the X direction Z... : Coordinates in the Z direction Note For further information on the programming of a chamfer or rounding, see "...
Motion commands 10.10 Thread cutting Number of programmed axes ● If no axis of the active plane has been programmed, then this is either the first or second block of a contour definition consisting of two blocks. If it is the second block of such a contour definition, then this means that the starting point and end point in the active plane are identical.
Page 215
Motion commands 10.10 Thread cutting Note Technical requirement for thread cutting with G33 is a variable-speed spindle with position measuring system. Multiple thread Multiple thread (thread with offset cuts) can be machined by specifying a starting point offset. The programming is performed in the G33 block at address SF. Note If no starting point offset is specified, the "starting angle for thread"...
Page 216
Motion commands 10.10 Thread cutting Note With continuous-path mode G64, the blocks are linked by the look-ahead velocity control in such a way that there are no velocity jumps. Direction of rotation of the thread The direction of rotation of the thread is determined by the direction of rotation of the spindle: ●...
Page 217
Motion commands 10.10 Thread cutting SF=... : Starting point offset (only required for multiple threads) The starting point offset is specified as an absolute angle position. Range of values: 0.0000 to 359.999 degrees Examples Example 1: Double cylinder thread with 180° starting point offset Program code Comment N10 G1 G54 X99 Z10 S500 F100 M3...
Page 218
Motion commands 10.10 Thread cutting Example 2: Tapered thread with angle less than 45° Program code Comment N10 G1 X50 Z0 S500 F100 M3 ; Approach starting point, activate spindle. N20 G33 X110 Z-60 K4 ; Tapered thread: End point in X and Z, specifi- cation of thread lead with K...
Page 219
Motion commands 10.10 Thread cutting Cylinder thread The cylinder thread is described by: ● Thread length ● Thread lead The thread length is entered with one of the Cartesian coordinates X, Y or Z in absolute or incremental dimensions (for turning machines preferably in the Z direction). Allowance must also be made for the run-in and run-out paths, across which the feed is accelerated or decelerated.
Page 220
Motion commands 10.10 Thread cutting The face thread is described by: ● Thread diameter (preferably in the X direction) ● Thread lead (preferably with I) Tapered thread The tapered thread is described by: ● End point in the longitudinal and transverse direction (taper contour) ●...
Motion commands 10.10 Thread cutting 10.10.2 Programmed run-in and run-out path (DITS, DITE): The DITS and DITE commands can be used to program the path ramp for acceleration and braking, providing a means of adapting the feedrate accordingly if the tool run-in/run-out is too short: ●...
Page 222
Motion commands 10.10 Thread cutting Syntax DITS=<value> DITE=<value> Meaning Define thread run-in path DITS: Define thread run-out path DITE: Value specification for the run-in/run-out path <value>: Range of values: -1, 0, ... n Note Only paths, and not positions, are programmed with DITS and DITE. Note The DITS and DITE commands relate to setting data SD42010 $SC_THREAD_RAMP_DISP[0,1], in which the programmed paths are written.
Motion commands 10.10 Thread cutting MD10710 $MN_PROG_SD_RESET_SAVE_TAB can be used to specify that the value written by the part program is written to the corresponding setting data during RESET. The values are, therefore, retained following power off/on. Note DITE acts at the end of the thread as a rounding clearance. This achieves a smooth change in the axis movement.
Motion commands 10.10 Thread cutting K... : Thread lead in Z direction Thread lead change F...: If you already know the starting and final lead of a thread, you can calculate the thread lead change to be programmed according to the following equa‐ tion: The meanings are as follows: Thread lead (thread lead of axis target point coordinate) [mm/rev]...
Page 225
Motion commands 10.10 Thread cutting The retraction motion can be programmed via: ● Retraction path and retraction direction (relative) ● Retraction position (absolute) Note NC stop signals The following NC stop signals do not trigger a rapid retraction during thread cutting: ●...
Page 226
Motion commands 10.10 Thread cutting ALF= : The direction is programmed in discrete degree increments with ALF in the plane of the retraction motion. With LFTXT, retraction in the tool direction is defined for ALF=1. For LFWP, the direction in the working/machining plane has the following assignment: ●...
Page 227
Motion commands 10.10 Thread cutting Examples Example 1: Enable rapid retraction during thread cutting Program code Comment N55 M3 S500 G90 G18 ; Active machining plane ; Approach the starting position N65 MSG ("thread cutting") ; Tool infeed MM_THREAD: N67 $AC_LIFTFAST=0 ;...
Page 229
Motion commands 10.10 Thread cutting An arc is also specified. As for G2/G3, this can be programmed via the center point, radius, opening angle or intermediate point specification (see "Circular interpolation (Page 178)"). When programming the convex thread with center point programming, the following must be taken into account: Since I, J and K are used for the pitch in thread cutting, the circle parameters in the center point programming must be programmed with IR=..., JR=...
Page 230
Motion commands 10.10 Thread cutting Figure 10-4 Convex thread in the clockwise direction with end and center point programming Example 2: Convex thread in the counter-clockwise direction with end and center point programming Program code Comment N5 G0 G18 X50 Z50 ;...
Page 231
Motion commands 10.10 Thread cutting Figure 10-6 Convex thread in the clockwise direction with end point and radius programming Example 4: Convex thread in the clockwise direction with end point and opening angle programming Program code N5 G0 G18 X50 Z50 N10 G335 Z100 K=3.5 AR=102.75 SF=90 Figure 10-7 Convex thread in the clockwise direction with end point and opening angle programming...
Page 232
Motion commands 10.10 Thread cutting Figure 10-8 Convex thread in the clockwise direction with center point and opening angle programming Example 6: Convex thread in the clockwise direction with end and intermediate point programming Program code N5 G0 G18 X50 Z50 N10 G335 Z100 K=3.5 I1=60 K1=64 Figure 10-9 Convex thread in the clockwise direction with end and intermediate point programming...
Page 233
Motion commands 10.10 Thread cutting Further information Permissible arc areas The arc programmed at G335/G336 must be in an area in which the specified thread main axis (I, J or K) has the main axis share on the arc over the entire arc: Permissible areas for the Z axis (pitch programmed Permissible areas for the X axis (pitch programmed with K)
Motion commands 10.11 Tapping 10.11 Tapping 10.11.1 Tapping without compensating chuck (G331, G332) Requirement With regard to technology, tapping without compensating chuck requires a position-controlled spindle with position measuring system. Function Tapping without compensating chuck is programmed using the G331 and G332 commands. The spindle prepared for tapping can make the following movements in position-controlled operation with distance measuring system: ●...
Page 235
Motion commands 10.11 Tapping G332 X… Y… Z… I… J… K… ● SPOS (or M70) only has to be programmed prior to tapping: – For threads requiring multiple machining operations for their production – For production processes requiring a defined thread starting position Conversely, when machining multiple threads one after the other, SPOS (or M70) does not have to be programmed (advantage: Saves time).
Page 236
Motion commands 10.11 Tapping Examples Example 1: G331 and G332 Program code Comment N10 SPOS[n]=0 ; Prepare tapping. N20 G0 X0 Y0 Z2 ; Approach starting point. N30 G331 Z-50 K-4 S200 ; Tapping, drilling depth 50, lead K negative = counter-clockwise spindle rotation.
Page 237
Motion commands 10.11 Tapping Program code Comment N50 G331 S800 ; Master spindle with 2nd gear-stage data block: Gear stage 2 is selected. N55 SPOS=0 ; Align spindle. N60 G331 Z-10 K5 ; Tapping, spindle acceleration from second gear-stage data block.
Motion commands 10.11 Tapping Program code Comment N50 G331 S800 ; Master spindle with 2nd gear-stage data block: Gear stage 2 is selected. N60 G331 Z-10 K5 ; Machine thread, spindle acceleration from second gear-stage data block. Thread interpolation for the spindle starts from the current position, which is determined by the previously processed section of the part program, e.g.
Motion commands 10.12 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM) Syntax G63 X… Y… Z… Meaning Tapping with compensating chuck G63: X... Y... Z... : Drilling depth (end point) in Cartesian coordinates Note G63 is non-modal. After a block with programmed G63, the last interpolation command programmed (G0, G1, G2, etc.) is reactivated.
Page 240
Motion commands 10.12 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM) Syntax Chamfer the contour corner: G... X... Z... CHR/CHF=<value> FRC/FRCM=<value> G... X... Z... Round the contour corner: G... X... Z... RND=<value> FRC=<value> G... X... Z... Modal rounding: G... X... Z... RNDM=<value> FRCM=<value> RNDM=0 Note The technology (feedrate, feedrate type, M commands, etc.) for chamfer/rounding is derived...
Page 241
Motion commands 10.12 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM) Note Chamfer/rounding too high If the values programmed for chamfer (CHF/CHR) or rounding (RND/RNDM) are too high for the contour elements involved, chamfer or rounding will automatically be adapted: 1.
Page 242
Motion commands 10.12 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM) Examples Example 1: Chamfer between two straight lines ● MD20201 Bit 0 = 1 (derived from previous block). ● G71 is active. ● The width of the chamfer in the direction of motion (CHR) should be 2 mm and the feedrate for chamfer 100 mm/min.
Page 243
Motion commands 10.12 Chamfer, rounding (CHF, CHR, RND, RNDM, FRC, FRCM) Example 2: Rounding between two straight lines ● MD20201 Bit 0 = 1 (derived from previous block). ● G71 is active. ● The radius of the rounding should be 2 mm and the feedrate for rounding 50 mm/min.
Tool radius compensation 11.1 Tool radius compensation (G40, G41, G42, OFFN) When tool radius compensation (TRC) is active, the control automatically calculates the equidistant tool paths for various tools. Syntax G0/G1 X... Y… Z... G41/G42 [OFFN=<value>] G40 X... Y… Z... Meaning Activate TRC with machining direction left of the contour.
Page 248
Tool radius compensation 11.1 Tool radius compensation (G40, G41, G42, OFFN) Note In the NC block with G40/G41/G42, G0 or G1 has to be active and at least one axis has to be specified on the selected working plane. If only one axis is specified on activation, the last position on the second axis is added automatically and traversed with both axes.
Page 249
Tool radius compensation 11.1 Tool radius compensation (G40, G41, G42, OFFN) Example 2: "Conventional" procedure using milling as an example "Conventional" procedure: 1. Tool call. 2. Change tool. 3. Activate working plane and tool radius compensation. Program code Comment N10 G0 Z100 ;...
Page 250
Tool radius compensation 11.1 Tool radius compensation (G40, G41, G42, OFFN) Example 3: Turning Program code Comment … N20 T1 D1 ; Only tool length compensation is activated. N30 G0 X100 Z20 ; X100 Z20 is approached without compensation. N40 G42 X20 Z1 ;...
Page 253
Tool radius compensation 11.1 Tool radius compensation (G40, G41, G42, OFFN) Machining direction (G41/G42) From this information, the control detects the direction in which the tool path is to be displaced. Note A negative offset value has the same significance as a change of offset side (G41 ↔ G42). Working plane (G17/G18/G19) From this information, the control detects the plane and therefore the axis directions for compensation.
Page 254
Tool radius compensation 11.1 Tool radius compensation (G40, G41, G42, OFFN) NORM and KONT can be used to define the tool path on activation and deactivation of compensation mode (see "Approaching and leaving contour (NORM, KONT, KONTC, KONTT) (Page 256)"). Point of intersection The intersection point is selected in the setting data: SD42496 $SC_CUTCOM_CLSD_CONT (response of tool radius compensation with closed...
Page 255
Tool radius compensation 11.1 Tool radius compensation (G40, G41, G42, OFFN) Change in the working plane The working plane (G17/G18/G19) cannot be changed if G41/G42 is active. Change in tool offset data set (D…) The tool offset data set can be changed in compensation mode. A modified tool radius is active with effect from the block in which the new D number is programmed.
Tool radius compensation 11.2 Approaching and leaving contour (NORM, KONT, KONTC, KONTT) Circular interpolation produces spiral movements. Changing the tool radius The change can be made, e.g. using system variables. The sequence is the same as when changing the tool offset data set (D…). Note The modified values only take effect the next time T or D is programmed.
Page 257
Tool radius compensation 11.2 Approaching and leaving contour (NORM, KONT, KONTC, KONTT) Meaning Activate direct approach/retraction to/from a straight line. NORM: The tool is oriented perpendicular to the contour point. Activate approach/retraction with travel around the starting/end point according to the KONT: programmed corner behavior G450 or G451.
Page 258
Tool radius compensation 11.2 Approaching and leaving contour (NORM, KONT, KONTC, KONTT) The associated NC program segment is as follows: Program code Comment $TC_DP1[1,1]=121 ; Milling tool $TC_DP6[1,1]=10 ; Radius 10 mm N10 G1 X0 Y0 Z60 G64 T1 D1 F10000 N20 G41 KONTC X70 Y0 Z0 ;...
Page 259
Tool radius compensation 11.2 Approaching and leaving contour (NORM, KONT, KONTC, KONTT) Further information Approach/retraction with NORM 1. Approach: If NORM is activated, the tool will move directly to the compensated start position along a straight line (irrespective of the preset approach angle programmed for the travel movement) and is positioned perpendicular to the path tangent at the starting point.
Page 260
Tool radius compensation 11.2 Approaching and leaving contour (NORM, KONT, KONTC, KONTT) NOTICE Risk of collision Modified approach/retract angles must be taken into account during programming in order that potential collisions can be avoided. Approach/retraction with KONT Prior to the approach, the tool can be located in front of or behind the contour. The path tangent at the starting point serves as a separation line: Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Page 261
Tool radius compensation 11.2 Approaching and leaving contour (NORM, KONT, KONTC, KONTT) Accordingly, two scenarios need to be distinguished where approach/retraction with KONT is concerned: 1. The tool is located in front of the contour. → The approach/retract strategy is the same as with NORM. 2.
Page 262
Tool radius compensation 11.2 Approaching and leaving contour (NORM, KONT, KONTC, KONTT) – Approach: The tool travels around the starting point either along a circular path or over the intersection of the equidistant paths depending on the programmed corner behavior (G450/G451).
Page 263
Tool radius compensation 11.2 Approaching and leaving contour (NORM, KONT, KONTC, KONTT) The contour point is approached/exited with constant curvature. There is no jump in acceleration at the contour point. The path from the start point to the contour point is interpolated as a polynomial.
Tool radius compensation 11.3 Compensation at the outside corners (G450, G451, DISC) 11.3 Compensation at the outside corners (G450, G451, DISC) With tool radius compensation activated (G41/G42), command G450 or G451 can be used to define the course of the compensated tool path when traveling around outside corners: With G450, the tool center point travels around With G451, the tool center point approaches the workpiece corner across an arc with tool...
Page 265
Tool radius compensation 11.3 Compensation at the outside corners (G450, G451, DISC) Meaning G450 is used to travel around workpiece corners on a circular path. G450: Flexible programming of the circular path with G450 (optional) DISC: Type: <value>: Range of values: 0, 1, 2, ...
Page 266
Tool radius compensation 11.3 Compensation at the outside corners (G450, G451, DISC) Program code Comment N90 G0 Y100 N100 X200 M30 Further information G450/G451 At intermediate point P*, the control executes operations such as infeed movements or switching functions. These operations are programmed in blocks inserted between the two blocks forming the corner.
Tool radius compensation 11.4 Smooth approach and retraction When G451 is activated and with acute contour angles, superfluous non-cutting tool paths can result from lift-off movements. A parameter can be used in the machine data to define automatic switchover to transition circle in such cases. 11.4 Smooth approach and retraction 11.4.1...
Page 268
Tool radius compensation 11.4 Smooth approach and retraction When the function is activated, the control calculates the intermediate points in such a way that the transition to the following block (or the transition from previous block during retraction) is performed in accordance with the specified parameters. The approach movement consists of a maximum of four sub-movements.
Page 269
Tool radius compensation 11.4 Smooth approach and retraction 1. For approach and retraction with straight lines (G147/G148): DISR=...: Distance of the cutter edge from the starting point of the contour 2. For approach and retraction with circles (G247, G347/G248, G348): Radius of the tool center point path Notice: For REPOS with a semicircle, DISR is the circle diameter...
Page 270
Tool radius compensation 11.4 Smooth approach and retraction ● The end point of the circle is obtained from N30, since only the Z position is programmed in N20 ● Infeed movement – From Z20 to Z7 (DISCL=AC(7)) with rapid traverse. –...
Page 271
Tool radius compensation 11.4 Smooth approach and retraction Figure 11-3 Approach movements with simultaneous activation of the tool radius compensation Selecting the approach and retraction direction Use the tool radius compensation (G140, default setting) to determine the approach and retraction direction with positive tool radius: ●...
Page 272
Tool radius compensation 11.4 Smooth approach and retraction Motion steps between start point and end point (G340 and G341). In all cases, the movements are made up of one or more straight lines and, depending on the G function for determining the approach contour, an additional straight line or a quadrant or semicircle.
Page 273
Tool radius compensation 11.4 Smooth approach and retraction Length of the approach straight line or radius for approach circles (DISR) ● Approach/retract with straight lines DISR specifies the distance of the cutter edge from the starting point of the contour, i.e. the length of the straight line when TRC is active is the sum of the tool radius and the programmed value of DISR.
Page 274
Tool radius compensation 11.4 Smooth approach and retraction Programming of end point P4 for approach End point P can be programmed in the actual SAR block. Alternatively, P can be determined by the end point of the next traversing block. More blocks can be inserted between an SAR block and the next traversing block without moving the geometry axes.
Page 275
Tool radius compensation 11.4 Smooth approach and retraction been programmed. When determining the end point, a distinction is made between the following three cases: 1. No geometry axis is programmed in the SAR block. In this case, the contour ends at point (if DISRP has been programmed), at point P (if DISCL, but not DISRP has been programmed) or point P...
Page 276
Tool radius compensation 11.4 Smooth approach and retraction Approach and retraction velocities ● Velocity of the previous block (G0) All motions from P up to P are executed at this velocity, i.e. the motion parallel to the machining plane and the part of the infeed motion up to the safety clearance. ●...
Tool radius compensation 11.4 Smooth approach and retraction Reading positions Points P and P can be read in the WCS as a system variable during approach. ● $P_APR: reading P ● (initial point) ● $P_AEP: reading P ● (contour starting point) ●...
Page 279
Tool radius compensation 11.4 Smooth approach and retraction Note The approach behavior is symmetrical to the retraction behavior. The approach/retraction behavior is determined by the state of the G command in the approach/ retraction block. The approach behavior can therefore be set independently of the retraction behavior.
Page 280
Tool radius compensation 11.4 Smooth approach and retraction Figure 11-5 Retraction behavior with G461 Collision monitoring CDON, CDOF If CDOF is active (see section Collision monitoring, CDON, CDOF), the search is aborted when an intersection is found, i.e., the system does not check whether further intersections with previous blocks exist.
Tool radius compensation 11.5 Collision detection (CDON, CDOF, CDOF2) If KONT is active (travel round contour at start or end point), the behavior differs according to whether the end point is in front of or behind the contour. ● End point in front of contour If the end point is in front of the contour, the retraction behavior is the same as with NORM.
Page 282
Tool radius compensation 11.5 Collision detection (CDON, CDOF, CDOF2) Syntax CDON CDOF CDOF2 Meaning Command for the activation of the collision detection. CDON: Command for the deactivation of the collision detection. CDOF: With deactivated collision detection, a search is made in the previous traversing block (at inside corners) for a common intersection for the current block;...
Page 283
Tool radius compensation 11.5 Collision detection (CDON, CDOF, CDOF2) Since an intersection exists only between the offset curves of the two blocks N10 and N40, the two blocks N20 and N30 would have to be omitted. In the example, the control does not know in block N40 if N10 has to be completely processed.
Tool radius compensation 11.6 2D tool compensation (CUT2D, CUT2DF) Example 2: Contour path shorter than tool radius The tool bypasses the workpiece corner on a transition circle, then continues on the programmed path. Example 3: Tool radius too large for internal machining In such cases, the contours are machined only as much as is possible without causing a contour violation.
Page 285
Tool radius compensation 11.6 2D tool compensation (CUT2D, CUT2DF) Tool length compensation The tool length compensation generally always refers to the fixed, non-rotated working plane. 2D tool radius compensation with contour tools The tool radius compensation for contour tools is used for automatic cutting-edge selection in the case of non-axially symmetrical tools that can be used for piece-by-piece machining of individual contour segments.
Page 286
Tool radius compensation 11.6 2D tool compensation (CUT2D, CUT2DF) Example of G17 (X/Y plane): Tool radius compensation is active in the non-rotated X/Y plane, tool length compensation in the Z direction. Tool offset values For machining on inclined surfaces, the tool offset values have to be defined accordingly, or be calculated using the functions for "Tool length compensation for orientable tools".
Tool radius compensation 11.7 Keep tool radius compensation constant (CUTCONON, CUTCONOF) If a frame containing a rotation is programmed, the compensation plane is also rotated with CUT2DF. The tool radius compensation is calculated in the rotated machining plane. Note The tool length compensation continues to be active relative to the non-rotated working plane. Definition of contour tools, CUT2D, CUT2DF A contour tool is defined by the number of cutting edges (on the basis of D nos) associated with a T no.
Tool radius compensation 11.8 Tools with a relevant cutting edge position Further information Tool radius compensation is normally active before the compensation suppression and is still active when the compensation suppression is deactivated again. In the last traversing block before CUTCONON, the offset point in the block end point is approached. All following blocks in which offset suppression is active are traversed without offset.
Page 290
Tool radius compensation 11.8 Tools with a relevant cutting edge position Further information The original functionality has been modified as follows: ● A change from G40 to G41/G42 and vice-versa is no longer treated as a tool change. Therefore, a preprocessing stop no longer occurs with TRANSMIT. ●...
Page 291
Tool radius compensation 11.8 Tools with a relevant cutting edge position ● In circle blocks and in motion blocks containing rational polynomials with a denominator degree > 4, it is not permitted to change a tool with active tool radius compensation in cases where the distance between the tool edge center point and the tool edge reference point changes.
Page 292
Tool radius compensation 11.8 Tools with a relevant cutting edge position Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Path action 12.1 Exact stop (G60, G9, G601, G602, G603) In exact stop traversing mode, all path axes and special axes involved in the traversing motion that are not traversed modally, are decelerated at the end of each block until they come to a standstill.
Path action 12.1 Exact stop (G60, G9, G601, G602, G603) Note The commands for activating the exact stop criteria (G601/G602/G603) are only effective if G60 or G9 is active. Example Program code Comment N5 G602 ; Criterion "Exact stop coarse" selected. N10 G0 G60 Z...
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) The movement is decelerated and stopped briefly at the corner point. Note Do not set the limits for the exact stop criteria any tighter than necessary. The tighter the limits, the longer it takes to position and approach the target position.
Page 296
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) Continuous-path mode with smoothing facilitates the tangential shaping and/or smoothing of angular block transitions caused by local changes in the programmed contour. Continuous path mode: ● Rounds the contour ●...
Page 297
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) The distance criterion (= rounding clearance) ADIS or ADISPOS describes the maximum distance the rounding block may cover before the end of the block, or the distance after the end of block within which the rounding block must be terminated respectively.
Page 298
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) Example The two outside corners on the groove are to be approached exactly. Otherwise machining should be performed in continuous-path mode. Program code Comment N05DIAMOF ; Radius as dimension N10 G17 T1 G41 G0 X10 Y10 Z2 S300 M3 ;...
Page 299
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) Corners are also traversed at a constant velocity. In order to minimize the contour error, the velocity is reduced according to an acceleration limit and an overload factor. Note The extent of smoothing the contour transitions depends on the feedrate and the overload factor.
Page 300
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) LookAhead predictive velocity control In continuous-path mode, the control automatically determines the velocity control for several NC blocks in advance. This enables acceleration and deceleration across multiple blocks with almost tangential transitions.
Page 301
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) Note Smoothing cannot and should not replace the functions for defined smoothing (RND, RNDM, ASPLINE, BSPLINE, CSPLINE). Smoothing with axial precision with G642 With G642, smoothing does not take place within a defined ADIS range, but the axial tolerances defined with MD33100 $MA_COMPRESS_POS_TOL are complied with.
Page 302
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) The setting data can be programmed in the NC program; this means that it can be specified differently for each block transition. Very different specifications for the contour tolerance and the tolerance of the tool orientation can only take effect with G643.
Page 303
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) No intermediate rounding blocks An intermediate rounding block is not inserted in the following cases: ● The axis stops between the two blocks. This occurs when: – The following block contains an auxiliary function output before the motion. –...
Page 304
Path action 12.2 Continuous-path mode (G64, G641, G642, G643, G644, G645, ADIS, ADISPOS) ● Rounding is not parameterized. This occurs when: – For G641 in G0 blocks ADISPOS = 0 (default!) – For G641 in non-G0 blocks ADIS = 0 (default!) –...
Coordinate transformations (frames) 13.1 Frames Frame The frame is a self-contained arithmetic rule that transforms one Cartesian coordinate system into another Cartesian coordinate system. Basic frame (basic offset) The basic frame describes coordinate transformation from the basic coordinate system (BCS) to the basic zero system (BZS) and has the same effect as settable frames.
Coordinate transformations (frames) 13.1 Frames Programmable frames Sometimes it is useful or necessary within an NC program, to move the originally selected workpiece coordinate system (or the "settable zero system") to another position and, if required, to rotate it, mirror it and/or scale it. This can be achieved using programmable frames. See Frame instructions (Page 307).
Coordinate transformations (frames) 13.2 Frame instructions 13.2 Frame instructions Function The statements for programmable frames apply in the current NC program. They function as either additive or substitute elements: ● Substitute statement Deletes all previously programmed frame statements. The reference is provided by the last settable zero offset called (G54 to G57, G505 to G599).
Page 309
Coordinate transformations (frames) 13.2 Frame instructions Workpiece coordinate system offset in the direction of the specified ge‐ TRANS/ATRANS: ometry axis or axes Workpiece coordinate system rotation: ROT/AROT: ● By linking individual rotations around the specified geometry axis or axes ● Around the angle RPL=... in the current working plane (G17/G18/ G19) Direction of rotation: Rotation sequence:...
Coordinate transformations (frames) 13.3 Programmable zero offset Supplementary conditions ● Frame statements must be programmed in a separate NC block. ● Frame statements can be used individually or combined as required. ● Frame statements are executed in the programmed sequence. ●...
Page 311
Coordinate transformations (frames) 13.3 Programmable zero offset Meaning Absolute offset of the WCS with reference to the parameterized workpiece TRANS: zero (ENS) set with the parameterized zero point offset (G54 ... G57, G505 ... G599). Alone in the block: Additive zero offset of the WCS with reference to the parameterized work‐ ATRANS: piece zero set with TRANS Alone in the...
Page 312
Coordinate transformations (frames) 13.3 Programmable zero offset Example 2: Turning Program code Comment N..N10 TRANS X0 Z150 Absolute offset N15 L20 Subprogram call N20 TRANS X0 Z140 (or ATRANS Z-10) Absolute offset N25 L20 Subprogram call N30 TRANS X0 Z130 (or ATRANS Z-10) Absolute offset N35 L20 Subprogram call...
Page 313
Coordinate transformations (frames) 13.3 Programmable zero offset Note ATRANS can be used to program an offset to be added to existing frames. ATRANS X... Y... Z... Translation through the offset values programmed in the specified axis directions. The currently set or last programmed zero point is used as the reference. Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
● G59: Calls the 6th settable zero offset (this corresponds to statement G506 for SINUMERIK 840D sl) Therefore, the following description of G58/G59 is only valid for SINUMERIK 840D sl. The G58 and G59 functions can be used to substitute translation components of the programmable zero offset with specific axes: ●...
Page 315
Coordinate transformations (frames) 13.3 Programmable zero offset Meaning G58 replaces the absolute translation component of the programmable zero offset G58: for the specified axis, but the programmed additive offset remains valid. The ref‐ erence is provided by the last settable zero offset called (G54 to G57, G505 to G599).
Coordinate transformations (frames) 13.4 Programmable rotation (ROT, AROT, RPL) Examples Statement Coarse or absolute offset V Fine or additive offset V = 10 unchanged TRANS X10 = 10 unchanged G58 X10 = 10 unchanged $P_PFRAME[X,TR]=10 unchanged + 10 ATRANS X10 unchanged = 10 G59 X10...
Page 317
Coordinate transformations (frames) 13.4 Programmable rotation (ROT, AROT, RPL) Note Euler angle The rotations of the workpiece coordinate system are performed via Euler angles. A detailed description can be found in: References Function Manual, Basic Functions; Section "Axes, coordinate systems, frames (K2)" > "Frames"...
Page 318
Coordinate transformations (frames) 13.4 Programmable rotation (ROT, AROT, RPL) Examples Example 1: Rotation in the G17 plane With this workpiece, the shapes shown recur in a program. In addition to the zero offset, ro‐ tations have to be performed, as the shapes are not arranged paraxially.
Page 319
Coordinate transformations (frames) 13.4 Programmable rotation (ROT, AROT, RPL) Example 2: Spatial rotation around the Y axis In this example, paraxial and inclined work‐ piece surfaces are to be machined in a clamp‐ ing. Condition: The tool must be aligned perpendicular to the inclined surface in the rotated Z direction.
Page 320
Coordinate transformations (frames) 13.4 Programmable rotation (ROT, AROT, RPL) Program code Comment N10 G17 G54 ; Working plane X/Y, workpiece zero N20 L10 ; Subprogram call N30 TRANS X100 Z-100 ; Absolute offset of the WCS N40 AROT Y90 ; Additive rotation of the WCS around Y through 90° AROT Y90 N50 AROT Z90 ;...
Page 321
Coordinate transformations (frames) 13.4 Programmable rotation (ROT, AROT, RPL) Figure 13-1 Rotation around the Y axis or in the G18 plane WARNING Plane change If a plane change (G17, G18, G19) is programmed after a rotation, the current angles of rotation of the respective axes are retained and are also effective in the new plane.
Page 322
Coordinate transformations (frames) 13.4 Programmable rotation (ROT, AROT, RPL) ① Angle of rotation Figure 13-2 Absolute rotation around the Z axis Additive rotation with AROT X... Y... Z... The WCS is rotated further around the specified axes through the programmed angles of rotation.
Coordinate transformations (frames) 13.5 Programmable frame rotations with solid angles (ROTS, AROTS, CROTS) way, traversing motions can still be programmed in the G17 plane via X and Y and infeeds via Requirement: The tool must be perpendicular to the working plane and the positive direction of the infeed axis points in the direction of the tool base.
Page 324
Coordinate transformations (frames) 13.5 Programmable frame rotations with solid angles (ROTS, AROTS, CROTS) ① Inclined plane α, β, γ Solid angle New G17' plane parallel to the inclined plane: - 1. rotation of x around y through the angle α - 2nd rotation of y around x' through the angle β...
Page 325
Coordinate transformations (frames) 13.5 Programmable frame rotations with solid angles (ROTS, AROTS, CROTS) Alignment of the G17 plane ⇒ solid angle for X and Y ● 1. Rotation X around Y through the angle α ● 2. Rotation Y around X' through the angle β ●...
Coordinate transformations (frames) 13.6 Programmable scaling factor (SCALE, ASCALE) 13.6 Programmable scaling factor (SCALE, ASCALE) SCALE/ASCALE can be used to program up or down scale factors for all path, synchronized, and positioning axes in the direction of the axes specified in each case. This makes it possible, therefore, to take geometrically similar shapes or different shrinkage allowances into account in the programming.
Page 327
Coordinate transformations (frames) 13.6 Programmable scaling factor (SCALE, ASCALE) Program code Comment N40 TRANS X40 Y20 ; Absolute offset N50 AROT RPL=35 ; Rotation in the plane through 35° N60 ASCALE X0.7 Y0.7 ; Scaling factor for the small pocket N70 L10 ;...
Page 328
Coordinate transformations (frames) 13.6 Programmable scaling factor (SCALE, ASCALE) AROT TRANS Scaling and offset Note If an offset is programmed with ATRANS after SCALE, the offset values will also be scaled. Different scale factors NOTICE Risk of collision Please take great care when using different scale factors! Circular interpolations can, for example, only be scaled using identical factors.
Coordinate transformations (frames) 13.7 Programmable mirroring (MIRROR, AMIRROR) Note However, different scale factors can be used specifically to program distorted circles. 13.7 Programmable mirroring (MIRROR, AMIRROR) MIRROR/AMIRROR can be used to mirror workpiece shapes on coordinate axes. All traversing movements programmed after the mirror call (e.g. in the subprogram) are executed with mirroring.
Page 330
Coordinate transformations (frames) 13.7 Programmable mirroring (MIRROR, AMIRROR) Examples Example 1: Milling The contour shown here is programmed once as a subprogram. The three other contours are generated using mirroring. The workpiece zero is located at the center of the contours. Program code Comment N10 G17 G54...
Page 331
Coordinate transformations (frames) 13.7 Programmable mirroring (MIRROR, AMIRROR) Example 2: Turning The actual machining is stored as a subpro‐ gram and execution at the respective spindle is implemented by means of mirroring and off‐ sets. Program code Comment N10 TRANS X0 Z140 ;...
Page 332
Coordinate transformations (frames) 13.7 Programmable mirroring (MIRROR, AMIRROR) Mirroring is implemented in relation to the currently valid coordinate system set with G54 to G57, G505 to G599. NOTICE No original frame The MIRROR command resets all frame components of the previously activated programmable frame.
Page 333
Coordinate transformations (frames) 13.7 Programmable mirroring (MIRROR, AMIRROR) All frame components of the previously programmed frame are reset. Tool radius compensation Note The mirror command causes the control to automatically change the path compensation commands (G41/G42 or G42/G41) according to the new machining direction. The same applies to the direction of circle rotation (G2/G3 or G3/G2).
Coordinate transformations (frames) 13.8 Frame generation according to tool orientation (TOFRAME, TOROT, PAROT): MD10612 $MN_MIRROR_TOGGLE = <value> Value Meaning Programmed axis values are not evaluated. Programmed axis values are evaluated: ● For programmed axis values ≠ 0, the axis is mirrored if it has not yet been mirrored. ●...
Page 335
Coordinate transformations (frames) 13.8 Frame generation according to tool orientation (TOFRAME, TOROT, PAROT): Syntax TOFRAME/TOFRAMEZ/TOFRAMEY/TOFRAMEX TOROTOF TOROT/TOROTZ/TOROTY/TOROTX TOROTOF PAROT PAROTOF Meaning Align Z axis of the WCS by rotating the frame parallel to the tool orientation TOFRAME: As TOFRAME TOFRAMEZ: Align Y axis of the WCS by rotating the frame parallel to the tool orientation TOFRAMEY: Align X axis of the WCS by rotating the frame parallel to the tool orientation...
Coordinate transformations (frames) 13.9 Deselect frame (G53, G153, SUPA, G500) Example Program code Comment N100 G0 G53 X100 Z100 D0 N120 TOFRAME N140 G91 Z20 ; TOFRAME is included in the calculation, all program- med geometry axis movements refer to the new coordinate system. N160 X50 Further information Assigning axis direction...
Coordinate transformations (frames) 13.10 Deselecting overlaid movements (DRFOF, CORROF) Syntax G153 SUPA G500 TRANS SCALE MIRROR Meaning Non-modal suppression of all programmable and settable G53: frames G153 has the same effect as G53 and also suppresses the G153: entire basic frame ($P_ACTBFRAME). SUPA has the same effect as G153 and also suppresses: SUPA: ●...
Page 338
Coordinate transformations (frames) 13.10 Deselecting overlaid movements (DRFOF, CORROF) Meaning Statement for the deactivation (deselection) of DRF handwheel offsets for all active axes DRFOF: in the channel Effective: Modal Statement for the deactivation (deselection) of the DRF offset / position offset ($AA_OFF) CORROF: for individual axes Effective:...
Page 339
Coordinate transformations (frames) 13.10 Deselecting overlaid movements (DRFOF, CORROF) Program code Comment N80 CORROF(X,"AA_OFF") ; The position offset of the X axis is deselected with: $AA_OFF[X]=0 The X axis is not traversed. The position offset is added to the current position of the X axis. …...
Page 340
Coordinate transformations (frames) 13.10 Deselecting overlaid movements (DRFOF, CORROF) $AA_OFF in JOG mode Also in JOG mode, if $AA_OFF changes, the position offset will be interpolated as an overlaid movement if this function has been enabled via machine data MD 36750 $MA_AA_OFF_MODE.
Auxiliary function outputs Function The auxiliary function output sends information to the PLC indicating when the NC program needs the PLC to perform specific switching operations on the machine tool. The auxiliary functions are output, together with their parameters, to the PLC interface. The values and signals must be processed by the PLC user program.
Auxiliary function outputs Properties Important properties of the auxiliary function are shown in the following overview table: Function Address extension Value Explanations Maximum number per Meaning Range Range Type Meaning block 0 ... 99 Function The address extension is 0 for the range between 0 and (implicit) Mandatory without address...
Page 343
Auxiliary function outputs References: Function Manual, Synchronized Actions Grouping The functions described can be grouped together. Group assignment is predefined for some M commands. The acknowledgment behavior can be defined by the grouping. High-speed function outputs (QU) Functions, which have not been programmed as high-speed outputs, can be defined as high- speed outputs for individual outputs with the keyword QU.
Auxiliary function outputs 14.1 M functions CAUTION Function outputs in continuous-path mode Function outputs before the traversing movements interrupt the continuous-path mode (G64/ G641) and generate an exact stop for the previous block. Function outputs after the traversing movements interrupt the continuous-path mode (G64/ G641) and generate an exact stop for the current block.
Page 345
Auxiliary function outputs 14.1 M functions M function Meaning M17* End of subprogram Spindle positioning M30* End of program, main program (as M2) Automatic gear change Gear stage 1 Gear stage 2 Gear stage 3 Gear stage 4 Gear stage 5 Spindle is switched to axis mode Note Extended address notation cannot be used for the functions marked with *.
Page 346
Auxiliary function outputs 14.1 M functions Example 2: M function as high-speed output Program code Comment N10 H=QU(735) ; Fast output for H735. N10 G1 F300 X10 Y20 G64 N20 X8 Y90 M=QU(7) ; Fast output for M7. M7 has been programmed as fast output so that the continuous-path mode (G64) is not interrupted.
Supplementary commands 15.1 Output messages (MSG) Using the MSG() statement, any character string from the part program can be output as message to the operator. Syntax MSG("<Message text>"[,<Execution>]) MSG () Meaning Predefined subprogram call for output of a message MSG: Any character string to be displayed as message <message text>: Type:...
Supplementary commands 15.3 Working area limitation Default value: Value Meaning To write the string, a dedicated main run block is not gen‐ erated. This is realized in the next NC block that can be executed. Active continuous-path mode is not interrupted. To write the string, a dedicated main run block is gener‐...
Page 350
Supplementary commands 15.3 Working area limitation The coordinates for the individual axes apply in the basic coordinate system: The working area limitation for all validated axes must be programmed with the WALIMON command. The WALIMOF command deactivates the working area limitation. WALIMON is the default setting.
Page 351
Supplementary commands 15.3 Working area limitation Activating and deactivating the working area limitation, parameterized using SD43420 and SD43430, are carried out for a specific direction using the axis-specific setting data that becomes immediately effective: SD43400 $SA_WORKAREA_PLUS_ENABLE (Working area limitation active in the positive direction) SD43410 $SA_WORKAREA_MINUS_ENABLE (Working area limitation active in the negative direction)
Page 352
Supplementary commands 15.3 Working area limitation Program code Comment N60 X0 N70 WALIMOF ;Deactivate working area limitation N80 G1 Z-2 F0.5 ;Drill N90 G0 Z200 ;Back N100 WALIMON ; Switch on working area limitation N110 X70 M30 ; End of program Further information Reference point at the tool When tool length offset is active, the tip of the tool is monitored as reference point, otherwise...
Supplementary commands 15.3 Working area limitation 15.3.2 Working area limitation in WCS/SZS (WALCS0 ... WALCS10) The "working area limitation in WCS/ENS" enables a channel-specific, flexible workpiece- specific limitation of the traversing range of the channel axes in the workpiece coordinate system (WCS) or settable zero system (SZS).
Page 354
Supplementary commands 15.3 Working area limitation Meaning The coordinate system to which the working area limitation $P_WORKAREA_CS_COORD_SYSTEM[<n>]=<value>: group refers Number of the working area limitation group <n>: Type: Range of values: 1 ... 10 Note: The actual available number of working area limitation groups depends on the configuring (→...
Supplementary commands 15.4 Reference point approach (G74) Program code Comment N51 $P_WORKAREA_CS_COORD_SYSTEM[2]=1 ; The working area limitation of working area limitation group 2 applies in the WCS. N60 $P_WORKAREA_CS_PLUS_ENABLE[2,X]=TRUE N61 $P_WORKAREA_CS_LIMIT_PLUS[2,X]=10 N62 $P_WORKAREA_CS_MINUS_ENABLE[2,X]=FALSE N70 $P_WORKAREA_CS_PLUS_ENABLE[2,Y]=TRUE N73 $P_WORKAREA_CS_LIMIT_PLUS[2,Y]=34 N72 $P_WORKAREA_CS_MINUS_ENABLE[2,Y]=TRUE N73 $P_WORKAREA_CS_LIMIT_MINUS[2,Y]=–25 N80 $P_WORKAREA_CS_PLUS_ENABLE[2,Z]=FALSE N82 $P_WORKAREA_CS_MINUS_ENABLE[2,Z]=TRUE N83 $P_WORKAREA_CS_LIMIT_PLUS[2,Z]=–600...
Supplementary commands 15.5 Approaching a fixed point (G75) Meaning G function call for reference point approach G74: X1=0 Y1=0 Z1=0 … : The specified machine axis address X1, Y1, Z1 … for linear axes is approached as the reference point. A1=0 B1=0 C1=0 …...
Page 357
Supplementary commands 15.5 Approaching a fixed point (G75) Requirements The following requirements must be satisfied to approach fixed points with G75: ● The fixed-point coordinates must have been calculated exactly and written to machine data. ● The fixed points must be located within the valid traversing range (→ note the software limit switch limits!) ●...
Page 358
Supplementary commands 15.5 Approaching a fixed point (G75) Fixed point that is to be approached FP=: Fixed point number <n>: Range of values: 1, 2, 3, 4 Note: In the absence of FP=<n> or a fixed point number, or if FP=0 has been programmed, this is interpreted as FP=1 and fixed point 1 is approached.
Page 359
Supplementary commands 15.5 Approaching a fixed point (G75) Note If the "Tool management with magazines" function is active, the auxiliary function T… or M... (typically M6) will not be sufficient to trigger a block change inhibit at the end of G75 motion.
Page 360
Supplementary commands 15.5 Approaching a fixed point (G75) Active frames All active frames are ignored. Traversing is performed in the machine coordinate system. Working area limitation in the workpiece coordinate system/SZS Coordinate-system-specific working area limitation (WALCS0 ... WALCS10) is not effective in the block with G75.
Supplementary commands 15.6 Travel to fixed stop (FXS, FXST, FXSW) 15.6 Travel to fixed stop (FXS, FXST, FXSW) Function The "Travel to fixed stop" function can be used to establish defined forces for clamping workpieces, such as those required for tailstocks, quills and grippers. The function can also be used for the approach of mechanical reference points.
Page 362
Supplementary commands 15.6 Travel to fixed stop (FXS, FXST, FXSW) Note The commands FXS, FXST and FXSW are modal. The programming of FXST and FXSW is optional: If no parameter is specified, the last programmed value or the value set in the relevant machine data applies. Activate travel to fixed stop: FXS[<axis>] = 1 The movement to the destination point can be described as a path or positioning axis movement.
Page 363
Supplementary commands 15.6 Travel to fixed stop (FXS, FXST, FXSW) The block with FXS[<axis>]=0 may and should contain traversing movements. NOTICE Risk of collision The traversing movement to the retraction position must move away from the fixed stop, otherwise damage to the stop or to the machine may result. The block change takes place when the retraction position has been reached.
Page 364
Supplementary commands 15.6 Travel to fixed stop (FXS, FXST, FXSW) The commands for travel to fixed stop can be called from synchronized actions or technology cycles. They can be activated without initiation of a motion, the torque is limited instantaneously. As soon as the axis is moved via a setpoint, the limit stop monitor is activated. Activation from synchronized actions Example: If the expected event ($R1) occurs and travel to fixed stop is not yet running, FXS should be...
Supplementary commands 15.7 Dwell time (G4) ● Link and container axes Travel to fixed stop is also permitted for link and container axes. The status of the assigned machine axis is maintained beyond the container rotation. This also applies for modal torque limiting with FOCON. References: –...
Supplementary commands 15.8 Internal preprocessing stop Application For example, for relief cutting. Syntax G4 F…/S<n>=... Note G4 must be programmed in a separate NC block. Meaning Activate dwell time The dwell time is programmed in seconds at address F. F…: The dwell time is programmed in spindle revolutions at address S.
Page 367
Supplementary commands 15.8 Internal preprocessing stop Example Program code Comments N40 POSA[X]=100 N50 IF $AA_IM[X]==R100 GOTOF MARKE1 ; Access to machine status data ($A...), the control generates an internal pre- processing stop. N60 G0 Y100 N70 WAITP(X) N80 LABEL1: Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Other information 16.1 Axes Axis types A distinction is made between the following types of axis types when programming: ● Machine axes ● Geometry axes ● Special axes ● Path axes ● Synchronized axes ● Positioning axes ● Command axes ●...
Other information 16.1 Axes In NC technology, the main axes are called geometry axes. This term is also used in this Programming Guide. Replaceable geometry axes The "Replaceable geometry axes" function (see Function Manual, Job Planning) can be used to alter the geometry axes grouping configured using machine data from the part program. Here any geometry axis can be replaced by a channel axis defined as a synchronous special axis.
Other information 16.1 Axes 16.1.2 Special axes In contrast to the geometry axes, no geometrical relationship is defined between the special axes. Typical special axes are: ● Tool revolver axes ● Swivel table axes ● Swivel head axes ● Loader axes Axis identifier On a turning machine with circular magazine, for example: ●...
Other information 16.1 Axes Axis identifier The name/identifier of a machine axis can be defined using the following NC-specific machine data: MD10000 $MN_AXCONF_MACHAX_NAME_TAB (machine axis name) Default setting: X1, Y1, Z1, A1, B1, C1, U1, V1 Further, machine axes have fixed axis identifiers, which can always be used, independent of the names set in the machine data: AX1, AX2, …, AX<n>...
Other information 16.1 Axes Typical positioning axes are: ● Loaders for moving workpieces to the machine ● Loaders for moving workpieces away from the machine ● Tool magazine/turret Types A distinction is made between positioning axes with synchronization at the block end or over several blocks.
Other information 16.1 Axes 16.1.9 Command axes Command axes are started from synchronized actions in response to an event (command). They can be positioned, started, and stopped fully asynchronous to the parts program. An axis cannot be moved from the part program and from synchronized actions simultaneously. Command axes are interpolated separately;...
Page 375
Other information 16.1 Axes Further information Requirements ● The participating NCUs, NCU1 and NCU2, must be connected by means of high-speed communication via the link module. References: Configuration Manual, NCU ● The axis must be configured appropriately by machine data. ●...
Other information 16.1 Axes 16.1.12 Lead link axes A leading link axis is one that is interpolated by one NCU and utilized by one or several other NCUs as the master axis for controlling slave axes. An axial position controller alarm is sent to all other NCUs, which are connected to the affected axis via a leading link axis.
Page 377
Other information 16.1 Axes Further information Conditions ● The NCUs involved, i.e., NCU1 to NCU<n> (<n> equals max. of 8), must be interconnected via the link module for high-speed communication. Reference: Device Manual Configuration NCU ● The axis must be configured appropriately via machine data. ●...
Other information 16.3 Path calculation 16.2 From travel command to machine movement The relationship between the programmed axis movements (travel commands) and the resulting machine movements is illustrated in the following figure: 16.3 Path calculation The path calculation determines the distance to be traversed in a block, taking into account all offsets and compensations.
Other information 16.4 Addresses If a new zero offset and a new tool offset are programmed in a new program block, the following applies: ● With absolute dimensioning: Distance = (absolute dimension P2 - absolute dimension P1) + (WO P2 - WO P1) + (TO P2 - TO P1). ●...
Page 380
Other information 16.4 Addresses Modal/non-modal addresses Modal addresses remain valid with the programmed value (in all subsequent blocks) until a new value is programmed at the same address. Non-modal addresses only apply in the block, in which they were programmed. Example: Program code Comment...
Other information 16.5 Names Program code Comment X4=20 ; Axis X4; "=" is required CR=7.3 ; Two letters; "=" are required S1=470 ; Speed for first spindle: 470 rpm M3=5 ;Spindle stop for 3rd spindle The numeric extension can be replaced by a variable for addresses M, H, S and for SPOS and SPOSA.
Page 382
● CYCLE ● CUST_ ● GROUP_ ● _ ● S_ ● E_ ● F_ SIEMENS compile cycles ● CCS_ User compile cycles ● CC_ User cycles We recommend that the names of user cycles begin with U_. Variables A detailed description of the name assignment for variables appears in:...
Other information 16.6 Constants Programming Manual, Job Planning ● System variables "Flexible NC programming" > "Variables" > "System variable" section ● User variables "Flexible NC programming" > "Variables" > "Definition of user variables (DEF)" section 16.6 Constants Constant (general) A constant is a data element whose value does not change during the execution of a program, e.g.
Page 384
Other information 16.6 Constants Note If, in an address, which permits decimal point input, more decimal places are specified than actually provided for the address, then they are rounded to fit the number of places provided. Hexadecimal constant Constants can also be interpreted as hexadecimal format, i.e. based on 16. The letters A to F are hexadecimal digits with the decimal values 10 to 15.
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) NC main block number, jump label termination, PGAsl concatenation operator Operator for multiplication PGAsl Operator for addition PGAsl Operator for subtraction PGAsl <...
Page 386
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) ADDFRAME Inclusion and possible activation of a measured PGAsl, FB1sl (K2) frame ADIS Rounding clearance for path functions G1, G2, PGsl G3, ... ADISPOS Rounding clearance for rapid traverse G0 PGsl...
Page 387
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) AXCTSWED Rotating axis container (command variant for PGAsl commissioning!) AXIS Axis identifier, axis address PGAsl AXNAME Converts input string into axis identifier PGAsl AXSTRING Converts string spindle number...
Page 388
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) Tool orientation: Surface normal vector for end of PGAsl block Absolute position approach PGAsl CACN Absolute approach of the value listed in the table PGAsl in negative direction CACP...
Page 389
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) COMPCAD Compressor ON: Optimum surface quality for PGAsl CAD programs COMPCURV Compressor ON: Polynomials with constant cur‐ PGAsl vature COMPLETE Control instruction for reading and writing data PGAsl COMPOF Compressor OFF...
Page 390
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) CPLINTR Generic coupling: Offset value of the input value FB3sl (M3) of a leading axis CPLNUM Generic coupling: Numerator of the coupling fac‐ FB3sl (M3) CPLOF Generic coupling: Switching off a leading axis of...
Page 391
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) CPSYNFIV Generic coupling: Threshold value of velocity syn‐ FB3sl (M3) chronism "Fine" Circle radius PGsl CROT Rotation of the current coordinate system PGAsl CROTS Programmable frame rotations with solid angles...
Page 392
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) CTABSEG Number of curve segments already used in the PGAsl memory CTABSEGID Number of the curve segments used by the curve PGAsl table with number n CTABSEV Returns the final value of the following axis of a...
Page 393
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) CYCLE64 Contour pocket predrilling PGAsl CYCLE70 Thread milling PGAsl CYCLE72 Path milling PGAsl CYCLE76 Milling the rectangular spigot PGAsl CYCLE77 Circular spigot milling PGAsl CYCLE78 Mill cutting thread...
Page 394
Tables 17.1 Operations Operation Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) CYCLE4072 Longitudinal grinding with infeed at the reversal PGAsl point and cancel signal CYCLE4073 Longitudinal grinding with continuous infeed PGAsl CYCLE4074 Longitudinal grinding with continuous infeed and PGAsl cancel signal CYCLE4075...
Page 395
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) DELTOOLENV Delete data records describing tool environ‐ FB1sl (W1) ments DIACYCOFA Axis-specific modal diameter programming: FB1sl (P1) OFF in cycles DIAM90 Diameter programming for G90, radius pro‐...
Page 396
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) Keyword for synchronized action, triggers ac‐ FBSYsl tion when condition is fulfilled DRFOF Deactivation of handwheel offsets (DRF) PGsl DRIVE Velocity-dependent path acceleration PGAsl DRIVEA Activate knee-shaped acceleration charac‐...
Page 397
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) EXECSTRING Transfer of a string variable with the execut‐ PGAsl ing part program line EXECTAB Execute an element from a motion table PGAsl EXECUTE Program execution ON...
Page 398
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) FLIN Feed linear variable PGAsl Multiple feedrates axial PGsl FNORM Feedrate normal to DIN 66025 PGAsl Non-modal torque/force limitation FBSYsl FOCOF Switch off modal torque/force limitation FBSYsl FOCON...
Page 399
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) Selection of working plane X/Y PGsl Selection of working plane Z/X PGsl Selection of working plane Y/Z PGsl Lower working area limitation PGsl Upper working area limitation PGsl...
Page 400
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) G110 Pole programming relative to the last program‐ PGsl med setpoint position G111 Pole programming relative to zero of current PGsl workpiece coordinate system G112 Pole programming relative to the last valid pole...
Page 401
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) G641 Continuous-path mode with smoothing as per PGsl distance criterion (= programmable rounding clearance) G642 Continuous-path mode with smoothing within PGsl the defined tolerances G643 Continuous-path mode with smoothing within...
Page 402
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) GETTCOR Read out tool lengths and/or tool length compo‐ FB1sl (W1) nents GETTENV Read T, D and DL numbers FB1sl (W1) GETVARAP Read access rights to a system/user variable PGAsl...
Page 403
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) INITIAL Generation of an INI file across all areas PGAsl Data type: Integer with sign PGAsl INTERSEC Calculate intersection between two contour ele‐ PGAsl ments INVCCW...
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) LEAD Lead angle PGAsl 1. Tool orientation 2. Orientation polynomial LEADOF Axial master value coupling OFF PGAsl LEADON Axial master value coupling on PGAsl LENTOAX Provides information about the assignment of...
Page 405
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) M41 ... M45 Gear stage 1 ... 5 PGsl Transition to axis mode PGsl MASLDEF Define master/slave axis grouping PGAsl MASLDEL Uncouple master/slave axis grouping and clear PGAsl grouping definition...
Page 406
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) NORM Standard setting in starting point and end point PGsl with tool offset Logic NOT (negation) PGAsl NPROT Machine-specific protection area ON/OFF PGAsl NPROTDEF Definition of a machine-specific protection area...
Page 407
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) ORIRESET Initial tool orientation with up to 3 orientation PGAsl axes ORIROTA Angle of rotation to an absolute direction of ro‐ PGAsl tation ORIROTC...
Page 408
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) OTOL Orientation tolerance for compressor functions, PGAsl orientation smoothing and smoothing types Speed offset PGAsl OVRA Axial speed offset PGAsl OVRRAP Rapid traverse override PGAsl Number of subprogram repetitions...
Page 409
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) POSRANGE Determine whether the currently interpolated FBSYsl position setpoint of an axis is located in a win‐ dow at a predefined reference position Square PGAsl (arithmetic function)
Page 410
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) Keyword for initialization of all elements of an PGAsl array with the same value REPEAT Repetition of a program loop PGAsl REPEATB Repetition of a program line PGAsl...
Page 411
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) Spindle speed PGsl (with G4, G96/G961 different meaning) SAVE Attribute for saving information when subpro‐ PGAsl grams are called SBLOF Suppress single block PGAsl SBLON Revoke suppression of single block...
Page 412
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) Nibbling ON PGAsl SONS Nibbling ON in interpolation cycle PGAsl SPATH Path reference for FGROUP axes is arc length PGAsl SPCOF Switch master spindle or spindle(s) from posi‐...
Page 413
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) STRINGIS Checks the present scope of NC language and PGAsl the NC cycle names, user variables, macros, and label names belonging specifically to this command to establish whether these exist, are valid, defined or active.
Page 414
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) TLIFT In tangential control insert intermediate block at PGAsl contour corners Tool selection with magazine location number FBWsl TMOF Deselect tool monitoring PGAsl TMON Activate tool monitoring...
Page 415
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) TOWWCS Wear values in workpiece coordinate system PGAsl Offset component of a frame variable PGAsl TRAANG Transformation inclined axis PGAsl TRACON Cascaded transformation PGAsl TRACYL...
Page 416
Tables 17.1 Operations Operation Type Meaning Description see for explanations, see legend (Page 417). 1) 2) 3) 4) 5) WALCS5 WCS working area limitation group 5 active PGsl WALCS6 WCS working area limitation group 6 active PGsl WALCS7 WCS working area limitation group 7 active PGsl WALCS8 WCS working area limitation group 8 active...
Page 417
Tables 17.1 Operations Type of operation: Address Identifier to which a value is assigned (e.g. OVR=10). There are also some addresses that switch on or off a function without value assignment (e.g. CPLON and CPLOF). Technological cycle Predefined part program in which a generally valid specific cycle (machining operation), such as tapping of a thread or milling a pocket, is programmed.
Page 418
Tables 17.1 Operations Reference to the document containing the detailed description of the operation: PGsl Programming Manual, Fundamentals PGAsl Programming Manual, Job Planning Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Tables 17.2 Operations: Availability for SINUMERIK 828D BNMsl Programming Manual Measuring Cycles BHDsl Operating Manual, Turning BHFsl Operating Manual, Milling FB1sl ( ) Function Manual, Basic Functions (with the alphanumeric abbreviation of the corresponding function de‐ scription in brackets) FB2sl ( ) Function Manual, Extended Functions (with the alphanumeric abbreviation of the corresponding function description in brackets) FB3sl ( )
Page 420
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available ● ● ● ● ● ● ACOS ●...
Page 421
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available AXNAME ● ● ● ● ● ● AXSTRING ●...
Page 422
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available CDOF2 ● ● ● ● ● ● CDON ●...
Page 423
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available CPDEL ● ● ● ● ● ● CPFMOF ●...
Page 424
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available CPSYNFIV ● ● ● ● ● ● ●...
Page 425
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available CTOL ○ ○ ○ CTRANS ● ● ●...
Page 426
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available CYCLE755 CYCLE756 CYCLE757 CYCLE758 CYCLE759 CYCLE800 ● ●...
Page 427
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available DELAYFSTON ● ● ● ● ● ● DELAYFSTOF ●...
Page 428
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available DRIVEA ● ● ● ● ● ● DYNFINISH ●...
Page 429
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available ● ● ● ● ● ● FALSE ●...
Page 430
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available ● ● ● ● ● ● FXST ●...
Page 431
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available ● ● ● ● ● ● ● ●...
Page 432
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available G641 ● ● ● ● ● ● G642 ●...
Page 433
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available GOTO ● ● ● ● ● ● GOTOB ●...
Page 434
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available ISNUMBER ● ● ● ● ● ● ISOCALL ●...
Page 435
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available ● ● ● ● ● ● ● ●...
Page 436
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available NEWT ● ● ● ● ● ● NORM ●...
Page 437
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available ORISON ORIVECT ORIVIRT1 ORIVIRT2 ORIWKS OSCILL OSCTRL OSNSC OSOF OSP1...
Page 438
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available POLF ● ● ● ● ● ● POLFA ●...
Page 439
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available ● ● ● ● ● ● RDISABLE ●...
Page 440
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available SBLON ● ● ● ● ● ● ●...
Page 441
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available SPOS ● ● ● ● ● ● SPOSA ●...
Page 442
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available TCOFR ● ● ● TCOFRX ● ● ●...
Page 443
Tables 17.2 Operations: Availability for SINUMERIK 828D Operation 828D control version ● Standard PPU240.3 / 241.3 PPU260.3 / 261.3 PPU280.3 / 281.3 ○ Option Turning Milling Turning Milling Turning Milling - not available TRACYL ○ ○ ○ ○ ○ ○ TRAFOOF ●...
Tables 17.3 Addresses Letter Meaning Numeric ex‐ tension Spindle value Dwell time in spindle revolutions Tool number Settable address identifier Settable address identifier Settable address identifier Settable address identifier Settable address identifier Settable address identifier Start character and separator for file transfer Main block number Skip identifier 17.3.2...
Page 446
Tables 17.3 Addresses Address Address Modal/ G70/ G700/ G90/ CIC, Data type of the identifier type non- G710 ACN, CAC, assigned value modal CDC, CACN, CACP SPOS Spindle po‐ REAL sition Assignment REAL of a trans‐ verse axis to /G961/G962 SPOSA Spindle po‐...
Page 447
Tables 17.3 Addresses Address Address Modal/ G70/ G700/ G90/ CIC, Data type of the identifier type non- G710 ACN, CAC, assigned value modal CDC, CACN, CACP Start posi‐ REAL tioning axis Polynomial Unsigned coefficient REAL Axial fee‐ Unsigned drate REAL Axial fee‐...
Page 448
Tables 17.3 Addresses Address Address Modal/ G70/ G700/ G90/ CIC, Data type of the identifier type non- G710 ACN, CAC, assigned value modal CDC, CACN, CACP OST2 Stopping REAL time at right reversal point (oscil‐ lation) OSP1 Left reversal REAL point (oscil‐...
Tables 17.3 Addresses Address Address Modal/ G70/ G700/ G90/ CIC, Data type of the identifier type non- G710 ACN, CAC, assigned value modal CDC, CACN, CACP Travel with REAL limited tor‐ que, non- modal FOCON Travel with REAL limited tor‐ que ON, mo‐...
Page 450
Tables 17.3 Addresses Address iden‐ Address type Modal/ G90/ CIC, Max. Data type of the tifier (default non- ACN, CAC, num‐ assigned value setting) modal CDC, CACN, CACP Tool orientation A2, B2, C2 Euler angle or REAL RPY angle A3, B3, C3 Direction vector REAL component...
Page 451
Tables 17.3 Addresses Address iden‐ Address type Modal/ G90/ CIC, Max. Data type of the tifier (default non- ACN, CAC, num‐ assigned value setting) modal CDC, CACN, CACP Axis angle Unsigned STAT Position of joints Unsigned Starting point off‐ REAL set for thread cutting DISCL...
Page 452
Tables 17.3 Addresses Address iden‐ Address type Modal/ G90/ CIC, Max. Data type of the tifier (default non- ACN, CAC, num‐ assigned value setting) modal CDC, CACN, CACP ADIS Rounding clear‐ Unsigned ance REAL ADISPOS Rounding clear‐ Unsigned ance for rapid REAL traverse Measurement...
Page 453
Tables 17.3 Addresses Address iden‐ Address type Modal/ G90/ CIC, Max. Data type of the tifier (default non- ACN, CAC, num‐ assigned value setting) modal CDC, CACN, CACP DIAMOFA Transverse axis: Axial diameter programming DIAMONA Transverse axis: Axial diameter programming Position: Indi‐...
Tables 17.4 G commands Address iden‐ Address type Modal/ G90/ CIC, Max. Data type of the tifier (default non- ACN, CAC, num‐ assigned value setting) modal CDC, CACN, CACP Total tool offset OEM addresses OMA1 OEM address 1 REAL OMA2 OEM address 2 REAL OMA3...
Page 455
Tables 17.4 G commands ● G group 31 ... 45 (Page 464) ● G group 46 ... 62 (Page 468) ● Legend for the G group tables (Page 474) Table 17-1 G group 1: Modally valid motion commands G command Meaning MD20150 Rapid traverse...
Page 456
Tables 17.4 G commands G group 2: Non-modally valid motion, dwell time G command Meaning MD20150 REPOSA Linear repositioning with all axes REPOSQA Linear repositioning with all axes, geometry axes in quadrant REPOSHA Repositioning with all axes; geometry axes in semicir‐ G147 Approach contour with straight line G247...
Page 457
Tables 17.4 G commands G group 3: Programmable frame, working area limitation and pole programming G command Meaning MD20150 ROTS Rotation with solid angle AROTS Additive rotation with solid angle Table 17-4 G group 4: FIFO G command Meaning MD20150 STARTFIFO Start FIFO Execute and simultaneously fill preprocessing memory...
Page 458
Tables 17.4 G commands Table 17-7 G group 8: Settable work offset G command Meaning MD20150 G500 Deactivation of settable zero offset (G54 to G57, G505 to G599) 1. settable work offset 2. settable work offset 3. settable work offset 4.
Page 459
Tables 17.4 G commands G group 10: Exact stop - continuous-path mode G command Meaning MD20150 G642 Continuous-path mode with smoothing within the de‐ fined tolerances G643 Continuous-path mode with smoothing within the de‐ fined tolerances (block-internal) G644 Continuous-path mode with smoothing with maximum possible dynamic response G645 Continuous-path mode with smoothing and tangential...
Page 460
Tables 17.4 G commands Table 17-13 G group 14: Workpiece measuring absolute/incremental G command Meaning MD20150 Absolute dimension Incremental dimensions Table 17-14 G group 15: Feed type G command Meaning MD20150 Inverse-time feedrate rpm Linear feedrate in mm/min, inch/min Revolutional feedrate in mm/rev, inch/rev Constant cutting rate and type of feedrate as for G95 Constant cutting rate and type of feedrate as for G95 G931...
Page 461
Tables 17.4 G commands Table 17-16 G group 17: Approach and retraction response, tool offset G command Meaning MD20150 NORM Normal position at starting and end points KONT Travel around contour at starting and end points KONTT Approach/retraction with constant tangent KONTC Approach/retraction with constant curvature Table 17-17...
Page 462
Tables 17.4 G commands Table 17-20 G group 21: Acceleration profile G command Meaning MD20150 BRISK Fast non-smoothed path acceleration SOFT Soft smoothed path acceleration DRIVE Velocity-dependent path acceleration Table 17-21 G group 22: Tool offset type G command Meaning MD20150 CUT2D 2½D tool offset determined by G17-G19...
Page 463
Tables 17.4 G commands Table 17-23 G group 24: Precontrol G command Meaning MD20150 FFWOF Feedforward control OFF FFWON Feedforward control ON Table 17-24 G group 25: Tool orientation reference G command Meaning MD20150 ORIWKS Tool orientation in workpiece coordinate system (WCS) ORIMKS Tool orientation in machine coordinate system (MCS) Table 17-25...
Page 464
Tables 17.4 G commands Table 17-28 G group 29: Radius/diameter programming G command Meaning MD20150 DIAMOF Modal channel-specific diameter programming OFF Deactivation activates channel-specific radius pro‐ gramming. DIAMON Modal independent channel-specific diameter pro‐ gramming ON The effect is independent of the programmed dimen‐ sions mode (G90/G91).
Page 465
Tables 17.4 G commands Table 17-31 G group 32: OEM G commands G command Meaning MD20150 G820 OEM G command G821 OEM G command G822 OEM G command G823 OEM G command G824 OEM G command G825 OEM G command G826 OEM G command G827...
Page 466
Tables 17.4 G commands Table 17-34 G group 35: Punching and nibbling G command Meaning MD20150 SPOF Stroke OFF, nibbling and punching OFF Nibbling ON Punching ON SONS Nibbling ON in interpolation cycle PONS Punching ON in interpolation cycle Table 17-35 G group 36: Punching with delay G command Meaning...
Page 467
Tables 17.4 G commands Table 17-39 G group 40: Tool radius compensation constant G command Meaning MD20150 CUTCONOF Constant tool radius compensation OFF CUTCONON Constant tool radius compensation ON Table 17-40 G group 41: Interruptible thread cutting G command Meaning MD20150 LFOF Interruptible thread cutting OFF...
Page 468
Tables 17.4 G commands Table 17-43 G group 44: SAR path segmentation G command Meaning MD20150 G340 Spatial approach block; in other words, infeed depth and approach in plane in one block G341 Start with infeed on perpendicular axis (Z), then ap‐ proach in plane Table 17-44 G group 45: Path reference for FGROUP axes...
Page 469
Tables 17.4 G commands Table 17-47 G group 48: Approach and retraction response with tool radius compensation G command Meaning MD20150 G460 Collision detection for approach and retraction block G461 Extend border block with arc if no intersection in TRC block G462 Extend border block with straight line if no intersection...
Page 470
Tables 17.4 G commands Table 17-50 G group 51: Interpolation type for orientation programming G command Meaning MD20150 ORIVECT Large-circle interpolation (identical to ORIPLANE) ORIAXES Linear interpolation of machine axes or orientation axes ORIPATH Tool orientation trajectory referred to path ORIPLANE Interpolation in plane (identical to ORIVECT) ORICONCW...
Page 471
Tables 17.4 G commands G group 53: Frame rotation in relation to tool G command Meaning MD20150 TOFRAMEZ As TOFRAME TOFRAMEY Align Y axis of the WCS by rotating the frame parallel to the tool orientation TOFRAMEX Align X axis of the WCS by rotating the frame parallel to the tool orientation Table 17-53 G group 54: Vector rotation for polynomial programming...
Page 472
Tables 17.4 G commands G group 56: Taking into account tool wear G command Meaning MD20150 TOWTCS Wear values in the tool coordinate system (toolholder ref. point T at the toolholder) TOWKCS Wear values in the coordinate system of the tool head for kinetic transformation (differs from machine coordinate system through tool rotation)
Page 473
Tables 17.4 G commands G group 60: Working area limitation G command Meaning MD20150 WALCS7 WCS working area limitation group 7 active WALCS8 WCS working area limitation group 8 active WALCS9 WCS working area limitation group 9 active WALCS10 WCS working area limitation group 10 active Table 17-59 G group 61: Tool orientation smoothing G command...
● MD20152GCODE_RESET_MODE (reset behavior of G groups) ● MD20154EXTERN_GCODE_RESET_VALUES (reset position of G groups in the ISO mode) ● MD20156EXTERN_GCODE_RESET_MODE (reset behavior of external G groups) SAG Default setting Siemens AG Default setting Machine Manufacturer (see machine manufacturer's specifications) Figure 17-1 Legend for the G group tables 17.5...
Page 475
Tables 17.5 Predefined procedures Axis groupings Identifier Parameter Explanation GEOAX 3. / 5. 4. / 6. Selection of a parallel coordinate sys‐ INT: AXIS: As 1 As 2 Geometry ax‐ Channel axis is number 1 - 3 identifier FGROUP 1. – 8. Variable F value reference: Definition of the axes to which the path feed re‐...
Page 476
Tables 17.5 Predefined procedures Coupled motion Identifier Parameter Explanation TANGOF AXIS: Ax‐ Tangential tracking OFF is name following axis TLIFT AXIS: REAL: REAL: Tangential tracking, stop at contour Tracked Lift-off Factor corner, if necessary, with rotary ax‐ axis path is lift-off TRAILON AXIS: AXIS:...
Page 477
Tables 17.5 Predefined procedures Axial acceleration profile Identifier Parameter Explanation 1. – 8. BRISKA AXIS Activate stepped axis acceleration for the programmed axes SOFTA AXIS Activate jerk-limited axis accelera‐ tion for the programmed axes DRIVEA AXIS Activate knee-shaped acceleration characteristic for the programmed ax‐ JERKA AXIS The acceleration behavior set in ma‐...
Page 478
Tables 17.5 Predefined procedures Transformations Identifier Parameter Explanation TRACYL REAL: INT: Cylinder: Peripheral surface transformation Working diam‐ Number of the Several transformations can be set per channel. The eter transformation transformation number specifies which transforma‐ tion is to be activated. If the second parameter is omitted, the transformation group defined in the MD is activated.
Page 479
Tables 17.5 Predefined procedures Grinding Identifier Parameter Explanation GWPSON INT: Constant grinding wheel peripheral speed ON Spindle number If the spindle number is not programmed, the grinding wheel peripheral speed for the spindle of the active tool is selected. GWPSOF INT: Constant grinding wheel peripheral speed OFF Spindle number...
Page 480
Tables 17.5 Predefined procedures Protection zones Identifier Parameter Explanation CPROTDEF INT: BOOL: INT: REAL: Limit in REAL: Limit in Definition of a channel- Number of the TRUE: plus direction minus direc‐ specific protection protection Tool-related tion zone 4th and 5th zone protection parameters...
Page 481
Tables 17.5 Predefined procedures Protection zones Identifier Parameter Explanation CPROT INT: INT: Option REAL: Offset REAL: Offset REAL: Offset Channel-specific pro‐ Number of the of the protec‐ of the protec‐ of the protec‐ tection zone ON/OFF 0: Protection protection tion zone in tion zone in tion zone in area OFF...
Page 482
Tables 17.5 Predefined procedures Interrupts Identifier Parameter Explanation DISABLE INT: Deactivates the interrupt routine assigned to the specified hardware input. Fast Number of the in‐ retraction is not executed. The assignment between the hardware input and the terrupt input interrupt routine made with SETINT remains valid and can be reactivated with ENABLE.
Page 483
Tables 17.5 Predefined procedures Program coordination Identifier Parameter Explanation INIT Selection of an NC program for execution in a channel INT: STRING: CHAR: Channel Path speci‐ Acknowl‐ number fication edgement mode** channel name from MD20000* 1. - n. START INT: Start selected programs simultaneously in sev‐...
Page 484
Tables 17.5 Predefined procedures Program coordination Identifier Parameter Explanation WAITS INT: Wait until the specified spindles that were pre‐ Spindle number viously programmed with SPOSA, reach their programmed end point End of subprogram with no function output to the PLC INT (or INT: INT:...
Page 485
Tables 17.5 Predefined procedures Program coordination Identifier Parameter Explanation PUTFTOCF INT: VAR REAL: INT: Pa‐ INT: Change of fine tool compensation depending No. of the Reference rameter Channel on a function defined with FCTDEF function value number number (max. 3rd degree polynomial) The number used here must be specified in channel FCTDEF...
Page 486
Tables 17.5 Predefined procedures File access Identifier Parameter Explanation READ Read blocks from file system VAR INT: CHAR[160]: INT: INT: Error File name Start line of Number of CHAR[255]: the file section lines to be Variable array to be read read in which the read informa‐...
Page 487
Tables 17.5 Predefined procedures Tool management Identifier Parameter Explanation DELTC INT: INT: Delete toolholder data Data set no. n Data set no. set number n to m DZERO Set D numbers of all tools of the TO unit as‐ signed to the channel to invalid GETFREELOC VAR INT:...
Page 488
Tables 17.5 Predefined procedures Tool management Identifier Parameter Explanation SETMTH Set toolholder no. INT: Toolholder no. SETPIECE Decrement workpiece counter of the spindle INT: INT: Spin‐ Update the count mon‐ Value used dle no. when decre‐ itoring data of the tools associated with the menting machining process...
Page 490
Tables 17.5 Predefined procedures Synchronous spindle Identifier Parameter Explanation COUPOF AXIS: AXIS: REAL: REAL: Switch-off synchro‐ Follow‐ Leading Switch-off Switch-off nous spindle coupling ing spin‐ spindle position of position of If positions are speci‐ the follow‐ the leading fied, the coupling is on‐ ing spindle spindle (ab‐...
Tables 17.6 Predefined procedures in synchronized actions Retraction Identifier Parameter Explanation POLFA Retraction position for single axes AXIS: INT: REAL: Channel axis identi‐ Type Value fier Collision avoidance Identifier Parameter Explanation PROTA STRING: Request for a recalculation of the collision model "R"...
Page 495
Tables 17.6 Predefined procedures in synchronized actions Program coordination of technology cycles Identifier Parameter Explanation LOCK INT: Lock synchronized action with ID or stop technology cycle ID of the synchronized action to be disa‐ One or more IDs can be programmed bled UNLOCK INT:...
Tables 17.7 Predefined functions 17.7 Predefined functions The call of a predefined function triggers the execution of a predefined NCK function, which in contrast to the predefined procedure, supplies a return value. The call of the predefined function can be an operand in an expression. Coordinate system Identifier Return val‐...
Page 497
Tables 17.7 Predefined functions Coordinate system Identifier Return val‐ Parameter Explanation CRPL FRAME INT: REAL: Frame rotation in any Rotary axis Angle of rota‐ plane tion ADDFRAME INT: FRAME: STRING: Calculates the target Additively Specified tar‐ frame specified by the 0 = OK measured or get frame...
Page 498
Tables 17.7 Predefined functions Geometry functions Identifier Return value Parameter Explanation CALCDAT BOOL: VAR REAL [,2]: INT: VAR REAL [3]: Calculates radius and center Error status Table with input Number of input Result: Abscis‐ point of a circle from 3 or 4 points points (abscissa points for calcu‐...
Page 499
Tables 17.7 Predefined functions Curve table functions Identifier Return Parameter Explanation value CTABEXISTS INT: INT: Checks whether the Lock Table curve table is in the state number static or dynamic NC memory CTABMEMTYP INT: INT: Returns the storage lo‐ Storage Table cation of the curve ta‐...
Page 500
Tables 17.7 Predefined functions Curve table functions Identifier Return Parameter Explanation value CTABFSEG INT: STRING: STRING: Determines the num‐ Number Storage Segment ber of still possible of curve location: type: curve segments of the seg‐ "SRAM", specified segment "L": Line‐ ments "DRAM"...
Page 501
Tables 17.7 Predefined functions Curve table functions Identifier Return Parameter Explanation value CTABTSV REAL: INT: VAR RE‐ AXIS: Determines the follow‐ Follow‐ Table AL[ ]: Follow‐ ing axis value at the ing axis number Pitch re‐ ing axis start of the curve table position sult at start of...
Page 502
Tables 17.7 Predefined functions Axis functions Identifier Return value Parameter Explanation ISAXIS BOOL: INT: Checks whether the ge‐ Axis present ometry axes 1 to 3 (TRUE) or not Number of the specified as parame‐ (FALSE) geometry axis ters are present in ac‐ (1 to 3) cordance with machine data MD20050...
Page 503
Tables 17.7 Predefined functions Tool management Identifier Return value Parameter Explanation GETDNO INT: INT: INT: Returns the D number of the cut‐ D number T number Cutting edge ting edge of tool T number GETT INT: STRING [32]: INT: Determines the T number for T number Tool name Duplo number...
Page 504
Tables 17.7 Predefined functions Arithmetic Identifier Return value Parameter Explanation MAXVAL REAL REAL REAL Determines the larger value of two variables BOUND REAL: Check REAL: Minimum REAL: Maximum REAL: Checks whether the variable status Checking varia‐ value lies within the defined min/max value range Note: The arithmetic functions can also be programmed in synchronized actions.
Page 505
Tables 17.7 Predefined functions Functions for measuring cycles Identifier Return Parameter Explanation value CALCPOSI INT: REAL[3]: REAL[3]: REAL[5]: REAL[3]: BOOL: INT: Checks whether the ge‐ Status Starting Incre‐ Minimum Return Conver‐ Type of ometry axes can traverse position mental distan‐ array for sion of limit mon‐...
Page 506
Tables 17.7 Predefined functions Functions for measuring cycles Identifier Return Parameter Explanation value SETTCOR INT: Changes Status tool com‐ REAL STR.: INT: INT: INT: STRING: INT: INT: INT: ponents [3]: Com‐ Com‐ Type of Index Name of Int. D no. taking into Offset po‐...
Page 507
Tables 17.7 Predefined functions Other functions Identifier Return Parameter Explanation value GETVARLIM INT: STRING: CHAR: VAR RE‐ Reads the lower/upper Status Name of Specifies limit value of a system/ the varia‐ which Return of user variables limit val‐ the limit value should be read...
Tables 17.8 Currently set language in the HMI 17.8 Currently set language in the HMI The table below lists all of the languages available at the user interface. The currently set language can be queried in the part program and in the synchronized actions using the following system variable: $AN_LANGUAGE_ON_HMI = <value>...
Appendix List of abbreviations Output ADI4 (Analog drive interface for 4 axes) Adaptive Control Active Line Module Rotating induction motor Automation system ASCII American Standard Code for Information Interchange: American coding standard for the exchange of information ASIC Application-Specific Integrated Circuit: User switching circuit ASUB Asynchronous subprogram AUXFU...
Page 510
Appendix A.1 List of abbreviations Connector Output Certificate of License Communication Compiler Projecting Data: Configuring data of the compiler Cathode Ray Tube: picture tube Central Service Board: PLC module Control Unit Communication Processor Central Processing Unit: Central processing unit Carriage Return Clear To Send: Ready to send signal for serial data interfaces CUTCOM Cutter radius Compensation: Tool radius compensation...
Page 511
Appendix A.1 List of abbreviations Input/Output Encoder: Actual value encoder Compact I/O module (PLC I/O module) Electrostatic Sensitive Devices ElectroMagnetic Compatibility European standard Encoder: Actual value encoder EnDat Encoder interface EPROM Erasable Programmable Read Only Memory: Erasable, electrically programmable read-only memory ePS Network Services Services for Internet-based remote machine maintenance Designation for an absolute encoder with 2048 sine signals per revolution...
Page 512
Appendix A.1 List of abbreviations Abbreviation for hexadecimal number AuxF Auxiliary function Hydraulic linear drive Human Machine Interface: SINUMERIK user interface Main Spindle Drive Hardware Commissioning Interpolatory compensation Interface Module: Interconnection module Interface Module Receive: Interface module for receiving data Interface Module Send: Interface module for sending data Increment: Increment Initializing Data: Initializing data...
Page 513
Appendix A.1 List of abbreviations Media Access Control MAIN Main program: Main program (OB1, PLC) Megabyte Motion Control Interface MCIS Motion Control Information System Machine Control Panel: Machine control panel Machine Data Manual Data Automatic: Manual input Motor Data Set: Motor data set MSGW Message Word Machine Coordinate System...
Page 514
Appendix A.1 List of abbreviations PCMCIA Personal Computer Memory Card International Association: Plug-in memory card standardization PC Unit: PC box (computer unit) Programming device Parameter identification: Part of a PIV Parameter identification: Value (parameterizing part of a PPO) Programmable Logic Control: Adaptation control PROFINET PROFIBUS user organization POWER ON...
Page 515
Appendix A.1 List of abbreviations Request To Send: Control signal of serial data interfaces RTCP Real Time Control Protocol Synchronized Action Safe Brake Control: Safe Brake Control Single Block: Single block Subroutine: Subprogram (PLC) Setting Data System Data Block Setting Data Active: Identifier (file type) for setting data SERUPRO SEarch RUn by PROgram test: Search run by program test System Function Block...
Appendix A.1 List of abbreviations Terminal Board (SINAMICS) Tool Center Point: Tool tip TCP/IP Transport Control Protocol / Internet Protocol Thin Client Unit Testing Data Active: Identifier for machine data Totally Integrated Automation Terminal Module (SINAMICS) Tool Offset: Tool offset Tool Offset Active: Identifier (file type) for tool offsets TRANSMIT Transform Milling Into Turning: Coordination transformation for milling operations on...
Page 517
Appendix A.1 List of abbreviations Extensible Markup Language Work Offset Active: Identifier for work offsets Status word (of drive) Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Glossary Absolute dimensions A destination for an axis motion is defined by a dimension that refers to the origin of the currently active coordinate system. See → Incremental dimension Acceleration with jerk limitation In order to optimize the acceleration response of the machine whilst simultaneously protecting the mechanical components, it is possible to switch over in the machining program between abrupt acceleration and continuous (jerk-free) acceleration.
Page 520
Glossary Auxiliary functions Auxiliary functions enable → part programs to transfer → parameters to the → PLC, which then trigger reactions defined by the machine manufacturer. Axes In accordance with their functional scope, the CNC axes are subdivided into: ● Axes: Interpolating path axes ●...
Page 521
Glossary Baud rate Rate of data transfer (bits/s). Blank Workpiece as it is before it is machined. Block "Block" is the term given to any files required for creating and processing programs. Block search For debugging purposes or following a program abort, the "Block search" function can be used to select any location in the part program at which the program is to be started or resumed.
Page 522
Glossary See → NC Computerized Numerical Control: includes the components → NCK, → PLC, HMI, → COM. Component of the NC for the implementation and coordination of communication. Compensation axis Axis with a setpoint or actual value modified by the compensation value Compensation table Table containing interpolation points.
Page 523
Glossary Curvature The curvature k of a contour is the inverse of radius r of the nestling circle in a contour point (k = 1/r). Cycles Protected subprograms for execution of repetitive machining operations on the → workpiece. Data block 1.
Page 524
Glossary Editor The editor makes it possible to create, edit, extend, join, and import programs/texts/program blocks. Exact stop When an exact stop statement is programmed, the position specified in a block is approached exactly and, if necessary, very slowly. To reduce the approach time, → exact stop limits are defined for rapid traverse and feed.
Page 525
Glossary Frame A frame is an arithmetic rule that transforms one Cartesian coordinate system into another Cartesian coordinate system. A frame contains the following components: → zero offset, → rotation, → scaling, → mirroring. Geometry Description of a → workpiece in the → workpiece coordinate system. Geometry axis The geometry axes form the 2 or 3-dimensional →...
Page 526
Glossary HW Config SIMATIC S7 tool for the configuration and parameterization of hardware components within an S7 project Identifier In accordance with DIN 66025, words are supplemented using identifiers (names) for variables (arithmetic variables, system variables, user variables), subprograms, key words, and words with multiple address letters.
Page 527
Glossary Interpolatory compensation Mechanical deviations of the machine are compensated for by means of interpolatory compensation functions, such as → leadscrew error, sag, angularity, and temperature compensation. Interrupt routine Interrupt routines are special → subprograms that can be started by events (external signals) in the machining process.
Page 528
Glossary Leadscrew error compensation Compensation for the mechanical inaccuracies of a leadscrew participating in the feed. The controller uses stored deviation values for the compensation. Limit speed Maximum/minimum (spindle) speed: The maximum speed of a spindle can be limited by specifying machine data, the →...
Page 529
Glossary Machining channel A channel structure can be used to shorten idle times by means of parallel motion sequences, e.g. moving a loading gantry simultaneously with machining. Here, a CNC channel must be regarded as a separate CNC control system with decoding, block preparation and interpolation. Macro techniques Grouping of a set of statements under a single identifier.
Page 530
Glossary Mode group Axes and spindles that are technologically related can be combined into one mode group. Axes/spindles of a mode group can be controlled by one or more → channels. The same → mode type is always assigned to the channels of the mode group. Numerical Control component of the →...
Page 531
Glossary Overall reset In the event of an overall reset, the following memories of the → CPU are deleted: ● → Working memory ● Read/write area of → load memory ● → System memory ● → Backup memory Override Manual or programmable control feature which enables the user to override programmed feedrates or speeds in order to adapt them to a specific workpiece or material.
Page 532
Programmable Logic Controller: → Programmable logic controller. Component of → NC: Programmable control for processing the control logic of the machine tool. PLC program memory SINUMERIK 840D sl: The PLC user program, the user data and the basic PLC program are stored together in the PLC user memory. PLC programming The PLC is programmed using the STEP 7 software.
Page 533
Glossary Pre-coincidence Block change occurs already when the path distance approaches an amount equal to a specifiable delta of the end position. Program block Program blocks contain the main program and subprograms of → part programs. Program level A part program started in the channel runs as a → main program on program level 0 (main program level).
Page 534
Glossary R parameters Arithmetic parameter that can be set or queried by the programmer of the → part program for any purpose in the program. Rapid traverse The highest traverse rate of an axis. For example, rapid traverse is used when the tool approaches the →...
Page 535
Glossary Setting data Data which communicates the properties of the machine tool to the NC as defined by the system software. Softkey A key, whose name appears on an area of the screen. The choice of softkeys displayed is dynamically adapted to the operating situation. The freely assignable function keys (softkeys) are assigned defined functions in the software.
Page 536
Glossary Synchronized actions 1. Auxiliary function output During workpiece machining, technological functions (→ auxiliary functions) can be output from the CNC program to the PLC. For example, these auxiliary functions are used to control additional equipment for the machine tool, such as quills, grabbers, clamping chucks, etc.
Page 537
Glossary specify that multiple channels share one → TOA unit so that common tool management data is then available to these channels. TOA unit Each → TOA area can have more than one TOA unit. The number of possible TOA units is limited by the maximum number of active →...
Page 538
Glossary User memory All programs and data, such as part programs, subprograms, comments, tool offsets, and zero offsets/frames, as well as channel and program user data, can be stored in the shared CNC user memory. User program User programs for the S7-300 automation systems are created using the programming language STEP 7.
Page 539
Glossary Working memory The working memory is a RAM in the → CPU that the processor accesses when processing the application program. Workpiece Part to be made/machined by the machine tool. Workpiece contour Set contour of the → workpiece to be created or machined. Workpiece coordinate system The workpiece coordinate system has its starting point in the →...
Page 547
Index Starting point, 23 Tip, 62 Starting point - target point, 163 Type, 63 Stop Type number, 63 At the end of the cycle, 346 Tool Offset Optional, 346 Offset, 73 Programmed, 346 Tool radius compensation Straight lines At outside corners, 264 -interpolation, 176 CUT2D, 285 SUPA...
Page 548
Index Y..., 165 Z..., 165 Zero frame, 137 Zero offset Axial, 314 Settable, 29, 137 Zero point Machine, 22 -offset, 310 Workpiece, 22 Zero points For turning, 161 Zero system Basic, 28 Settable, 29 Fundamentals Programming Manual, 01/2015, 6FC5398-1BP40-5BA2...
Need help?
Do you have a question about the Sinumerik 840D sl and is the answer not in the manual?
Questions and answers