Siemens Sinumerik 840D sl Programming Manual

Siemens Sinumerik 840D sl Programming Manual

Iso milling
Hide thumbs Also See for Sinumerik 840D sl:
Table of Contents

Advertisement

SINUMERIK SINUMERIK 840D sl/840Di sl/828D/802D sl ISO Milling
SINUMERIK
SINUMERIK 840D sl/840Di sl/
828D/802D sl
ISO Milling
Programming Manual
Valid for
Software
SINUMERIK 802D sl
SINUMERIK 828D
SINUMERIK 840D sl/DE sl
SINUMERIK 840Di sl/DiE sl
06/09
6FC5398-7BP10-1BA0
Version
1.4
2.6
2.6
1.4
Principles of programming
______________
______________
Drive commands
______________
Motion commands
______________
Additional functions
______________
Abbreviations
______________
G code table
______________
Data Description
______________
Data lists
______________
Interrupts
1
2
3
4
A
B
C
D
E

Advertisement

Table of Contents
loading

Summary of Contents for Siemens Sinumerik 840D sl

  • Page 1 Principles of programming ______________ SINUMERIK SINUMERIK 840D sl/840Di sl/828D/802D sl ISO Milling ______________ Drive commands ______________ Motion commands SINUMERIK ______________ Additional functions SINUMERIK 840D sl/840Di sl/ ______________ 828D/802D sl Abbreviations ISO Milling ______________ G code table Programming Manual ______________ Data Description...
  • 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.
  • Page 3: Table Of Contents

    Table of contents Principles of programming ......................... 7 Introductory comments ........................7 1.1.1 Siemens mode ..........................7 1.1.2 ISO dialect mode ...........................7 1.1.3 Switching between the modes .......................7 1.1.4 Display of the G code........................8 1.1.5 Maximum number of axes/axis identifiers..................8 1.1.6 Decimal point programming ......................8 1.1.7...
  • Page 4 Table of contents 3.2.3 Scaling (G50, G51) ........................48 3.2.4 Programmable mirroring (G50.1, G51.1) ..................51 Time-controlled commands......................53 3.3.1 Dwell time (G04) ......................... 53 Tool offset functions ........................54 3.4.1 Tool offset data memory ......................54 3.4.2 Tool length compensation (G43, G44, G49) ................54 3.4.3 Cutter radius compensation (G40, G41, G42) ................
  • Page 5 Table of contents 4.6.4 Interrupt program with M96, M97....................122 4.6.5 "Tool life control" function ......................124 Macro programs .........................125 4.7.1 Differences with subroutines......................125 4.7.2 Macro program call (G65, G66, G67) ..................125 4.7.3 Macro call via G function......................132 Special functions........................135 4.8.1 Contour repetition (G72.1, G72.2) .....................135 4.8.2 Switchover modes for DryRun and skip levels ................137 Abbreviations............................
  • Page 6 Table of contents ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 7: Principles Of Programming

    G functions is not possible in the ISO Mode. ● Mixing of ISO dialect and Siemens language in the same NC block is not possible. ● Switching between ISO Dialect M and ISO Dialect T with a G command is not possible.
  • Page 8: Display Of The G Code

    Example The G functions of the ISO dialect mode are used to call the Siemens standard cycles. To do this, DISPLOF is programmed at the start of the relevant cycle; this way the G functions that are programmed in the ISO dialect language continue to be displayed.
  • Page 9 Principles of programming 1.1 Introductory comments ● X 100.5 corresponds to a value with decimal point: 100.5 mm ● X 1000 – Pocket calculator notation: 1,000 mm – Standard notation: IS-B: 1,000* 0.001= 1 mm IS-C: 1,000* 0.0001= 0.1 mm ISO dialect milling Table 1- 1 Different conversion factors for IS-B and IS-C...
  • Page 10: Comments

    1.1 Introductory comments 1.1.7 Comments In the ISO dialect mode, brackets are interpreted as comment signs. In the Siemens mode, ";" is interpreted as comment. To simplify matters, an ";" is also understood as comment in the ISO dialect mode.
  • Page 11: Preconditions For The Feed

    Principles of programming 1.2 Preconditions for the feed Preconditions for the feed The following Section describes the feed function with which the feedrate (covered path per minute or per rotation) of a cutting tool is defined. 1.2.1 Rapid traverse Rapid traverse is used for positioning (G00) as well as for manual traverse with rapid traverse (JOG).
  • Page 12 Principles of programming 1.2 Preconditions for the feed Figure 1-1 Linear interpolation with 2 axes Figure 1-2 Circular interpolation with 2 axes In 3D interpolation, the feed of the resulting straight lines programmed with F are maintained in the space. ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 13: Fixed Feedrates F0 To F9

    Principles of programming 1.2 Preconditions for the feed Figure 1-3 Feed in case of 3D interpolation Note If "F0" is programmed and the function "Fixed feedrate" is not active, then the Alarm 14800 "Programmed path velocity less than or equal to zero" is output. 1.2.3 Fixed feedrates F0 to F9 Activate feed values...
  • Page 14 Principles of programming 1.2 Preconditions for the feed Example $SC_FIXED_FEEDRATE_F1_F9[0] = 5000 $SC_FIXED_FEEDRATE_F1_F9[1] = 1000 $SC_FIXED_FEEDRATE_F1_F9[2] = 500 N10 X10 Y10 Z10 F0 G94 ;Approach position at 5000 mm/min N20 G01 X150 Y30 F1 ;Feed 1000 mm/min active N30 Z0 F2 ;Position approached at 500 mm/min N40 Z10 F0 ;Approach position at 5000 mm/min...
  • Page 15: Linear Feed (G94)

    $C_F. Restriction In the ISO dialect mode, the feed values are changed in the setting data with a handwheel. In the Siemens mode, the feeds can be influenced only like a directly programmed feed, e.g. through the override switch. 1.2.4...
  • Page 16: Revolutional Feedrate (G95)

    Principles of programming 1.2 Preconditions for the feed i.e., the programmed path is traversed within half a minute. Note The time inverse feed 1/min G93 is not implemented for SINUMERIK 802D. 1.2.6 Revolutional feedrate (G95) On entering G95, the feed is executed in the mm/revolution unit or inch/revolution related to the master spindle.
  • Page 17: Drive Commands

    Drive commands Interpolation commands The positioning and interpolation commands, with which the tool path along the programmed contour, such as a straight line or a circular arc, is monitored, are described in the next Section. 2.1.1 Rapid traverse (G00) You can use rapid traverse to position the tool rapidly, to traverse around the workpiece or to approach tool change points.
  • Page 18: Linear Interpolation (G01)

    Drive commands 2.1 Interpolation commands Figure 2-1 Positioning in the run state with 3 simultaneously controllable axes Note As in positioning with G00, the axes traverse independently of each other (not interpolated), each axis reaches its end point at a different time. Hence, one must be very careful in positioning with several axes, so that a tool does not collide with a workpiece of the tool during the positioning.
  • Page 19: Circular Interpolation (G02, G03)

    Drive commands 2.1 Interpolation commands Feed F for path axes The feedrate is specified under the address F. Depending on the default setting in the machine data, the units of measurement specified with the G commands (G93, G94, G95) are either in mm or inch. One F value can be programmed per NC block.
  • Page 20 Drive commands 2.1 Interpolation commands Element Command Description Direction of rotation clockwise counterclockwise End-point position Two axes from X, Y End-point position in a workpiece coordinate or Z system Two axes from X, Y Distance of start point - end point with sign or Z Distance between start point - Two axes from I, J or...
  • Page 21 Drive commands 2.1 Interpolation commands ● Circular interpolation in the Yβ plane G19 G02 (or G03) Y... β... R... (or J... K... ) F... ; ● If the address characters for the 4th and 5th axes are omitted - such as in the commands "G17 G02 X...
  • Page 22: Contour Definition Programming And Addition Of Chamfers Or Radiuses

    Drive commands 2.1 Interpolation commands ● Center point and end point in the absolute or incremental dimension (default) ● Radius and end point in Cartesian coordinates For a circular interpolation with a central angle <= 180 degree, the programming should be "R >...
  • Page 23 "R" or "C". Siemens mode The identifiers of chamfer and radius are defined in the Siemens mode using the machine data. Name conflicts can be avoided this way. There should be no comma before the identifier of the radius or chamfer.
  • Page 24 Drive commands 2.1 Interpolation commands Selection of plane Chamfer or fillet is possible only in the plane specified through the plane selection (G17, G18 or G19). These functions cannot be used on parallel axes. Note No chamfer/rounding is inserted, if •...
  • Page 25: Helical Interpolation (G02, G03)

    Drive commands 2.1 Interpolation commands 2.1.5 Helical interpolation (G02, G03) With helical interpolation, two motions are superimposed and executed in parallel: ● A plane circular motion on which ● A vertical linear motion is superimposed. Figure 2-6 Helical interpolation Note G02 and G03 are modal.
  • Page 26: Involute Interpolation (G02.2, G03.2)

    Drive commands 2.1 Interpolation commands 2.1.6 Involute interpolation (G02.2, G03.2) Overview The involute of a circle is a curve traced out from the end point on a "piece of string" unwinding from the curve. The involute interpolation allows trajectories along an involute. It is executed in the plane in which the base circle is defined.
  • Page 27: Cylindrical Interpolation (G07.1)

    G07.1 A (B, C) is deselected. The cylindrical interpolation is deactivated in closed position or after NC RESET. Note G07.1 is based on the Siemens option TRACYL. Appropriate machine data is to be set for this. The corresponding data on this is available in the manual "Extended Functions", Section M1, TRACYL.
  • Page 28 Drive commands 2.1 Interpolation commands Programming example At the cylindrical plane (it arises because the circumference of a cylindrical workpiece is rolled off), in which the Z-axis is accepted as the linear axis and the A-axis as the rotary axis, the following program is written: Figure 2-7 G07.1 - Programming example...
  • Page 29 Drive commands 2.1 Interpolation commands Programming in operation with cylindrical interpolation Only the following G functions can be used in cylindrical interpolation: G00, G01, G02, G03, G04, G40, G41, G42, G65, G66, G67, G90, G91 and G07.1. In operation with G00 only those axes can be used that are not involved at the cylindrical plane.
  • Page 30: Reference Point Approach With G Functions

    Drive commands 2.2 Reference point approach with G functions Reference point approach with G functions 2.2.1 Reference point approach with intermediate point (G28) Format G28 X... Y... Z... ; The commands "G28 X... Y... Z... ;" can be used to traverse the programmed axes to their reference point.
  • Page 31 Drive commands 2.2 Reference point approach with G functions Return to reference point Note The G28 function is implemented with the shell cycle cycle328.spf. A transformation must not be programmed for an axis which is to approach the reference point with G28 which must approach the reference mark.
  • Page 32: Checking The Reference Position (G27)

    Drive commands 2.2 Reference point approach with G functions 2.2.2 Checking the reference position (G27) Format G27 X... Y... Z... ; This function is used to check whether the axes are on their reference point. Test procedure If the check with G27 is successful, the processing is continued with the next part program block.
  • Page 33: Reference Point Approach With Reference Point Selection (G30)

    Drive commands 2.2 Reference point approach with G functions 2.2.3 Reference point approach with reference point selection (G30) Format G30 Pn X... Y... Z... ; For the commands "G30 Pn X... Y... Z;" the axes are positioned on the specified intermediate point in the continuous-path mode, and finally traversed to the reference point selected with P2 - P4.
  • Page 34 Drive commands 2.2 Reference point approach with G functions ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 35: Motion Commands

    Motion commands The coordinate system The position of a tool is defined uniquely by its coordinates in the coordinate system. These coordinates are defined through axis positions. If, for instance, the three involved Axes are denoted by X, Y and Z, the coordinates are specified as follows: X...
  • Page 36: Machine Coordinate Systems (G53)

    Motion commands 3.1 The coordinate system 3.1.1 Machine coordinate systems (G53) Defining machine coordinate system The machine zero defines the machine coordinate system MCS. All other reference points refer to the machine zero. The machine zero is a fixed point on the machine tool which can be referenced by all (derived) measuring systems.
  • Page 37: Workpiece Coordinate System (G92)

    Motion commands 3.1 The coordinate system Figure 3-2 Reference 3.1.2 Workpiece coordinate system (G92) Before machining, you must create a coordinate system for the workpiece, the so-called work piece coordinate system. This section describes different methods of setting, selecting and changing a workpiece coordinate system. Setting a tool coordinate system The following two methods can be used to set a tool coordinate system: 1.
  • Page 38: Resetting The Tool Coordinate System (G92.1)

    Motion commands 3.1 The coordinate system 3.1.3 Resetting the tool coordinate system (G92.1) With G92.1 X.. (G Code System A with G50.3 P0) one can reset a shifted coordinate system before the shift. The tool coordinate system is reset to the coordinate system that is defined by the active adjustable work offsets (G54-G59).
  • Page 39 Motion commands 3.1 The coordinate system Format Modified by G10: G10 L2 Pp X... Y... Z... ; p=0: External workpiece work offset p=1 to 6: The value of the workpiece work offset corresponds to the workpiece coordinate system G54 to G59 (1 = G54 to 6 = G59) X, Y, Z: Workpiece work offset for each axis during an absolute command (G90).
  • Page 40: Local Coordinate System (G52)

    Motion commands 3.1 The coordinate system Example The tool in operation with G54 is positioned at (190, 150), and the workpiece coordinate system 1 (X' - Y') is created each time in G92X90Y90 with a shift of Vector A. Figure 3-3 Example of setting coordinates 3.1.6 Local coordinate system (G52)
  • Page 41: Selection Of The Plane (G17, G18, G19)

    Motion commands 3.1 The coordinate system Figure 3-4 Setting the local coordinate system 3.1.7 Selection of the plane (G17, G18, G19) The selection of the plane in which the circular interpolation, tool radius compensation and rotation of the coordinate system took place is done by specifying the following G functions. Table 3- 1 G functions for selecting the plane G function...
  • Page 42: Parallel Axes (G17, G18, G19)

    Motion commands 3.1 The coordinate system ● The Plane X-Y (G17) is selected automatically after activating the control system. ● The command for moving an individual axis can be specified independently of the plane selection by G17, G18 or G19. Thus for instance, the Z axis can be shifted by specifying "G17 Z ..;".
  • Page 43: Rotation Of The Coordinate System (G68, G69)

    Motion commands 3.1 The coordinate system 3.1.9 Rotation of the coordinate system (G68, G69) Properties of G68 and G69 A coordinate system can be rotated with the following G functions. Table 3- 2 G functions for rotating a coordinate system G function Function G group...
  • Page 44 Motion commands 3.1 The coordinate system ● By specifying G17 (or G18, G19) G68 X... Y... R... ; " the commands specified in the following blocks are rotated by the angle specified with R around the point (X, Y). The angle of rotation can be specified in units of 0.001 degree.
  • Page 45: Rotation G68/G69

    Motion commands 3.1 The coordinate system 3.1.10 3D rotation G68/G69 The G code G68 is extended for 3D rotation. Format G68 X.. Y.. Z.. I.. J.. K.. R.. X.. Y.. Z..: Coordinates of the pivot point related to the current workpiece zero. If no coordinate is programmed, the pivot point lies in the workpiece zero.
  • Page 46: Defining The Input Modes Of The Coordinate Values

    Motion commands 3.2 Defining the input modes of the coordinate values Defining the input modes of the coordinate values 3.2.1 Absolute/incremental dimensioning (G90, G91) Whether the dimensions after an axis address should be absolute or relative (incremental) is specified with these G commands. Properties of G90, G91 Table 3- 3 G commands for defining the absolute/incremental dimensioning...
  • Page 47: Inch/Metric Input (G20, G21)

    Motion commands 3.2 Defining the input modes of the coordinate values 3.2.2 Inch/metric input (G20, G21) Workpiece-related axes can be programmed in metric or inch dimensions alternately, depending on the dimensioning in the production drawing. The input unit is selected with the following G functions.
  • Page 48: Scaling (G50, G51)

    Motion commands 3.2 Defining the input modes of the coordinate values 3.2.3 Scaling (G50, G51) Properties of G50, G51 The form defined by a part program can be enlarged or reduced according to the required scale. The desired scaling can be selected and deselected via the following functions. Table 3- 5 G functions for selecting the scale G command...
  • Page 49 Motion commands 3.2 Defining the input modes of the coordinate values Scaling along each individual axis with different scaling factors G51 X... Y... Z... I... J... K... ; Start scaling G50; Deselection of scaling X, Y, Z: Reference point of scaling (absolute command) I, J, K: Scaling factor for the X-, Y- and Z-axis The type of the scaling factor depends on MD22914 $MC_AXES_SCALE_ENABLE.
  • Page 50 Motion commands 3.2 Defining the input modes of the coordinate values _N_0513_MPF ;(Subroutine of 00512) N01 G291 N10 G90 X10. Y10. N20 X50 N30 Y50 N40 X10. Y10. N50 M99 Figure 3-9 Scaling for each axis and programmable mirroring Tool offset This scaling is not valid for cutter radius compensations, tool length compensations and tool offset values.
  • Page 51: Programmable Mirroring (G50.1, G51.1)

    Motion commands 3.2 Defining the input modes of the coordinate values 3.2.4 Programmable mirroring (G50.1, G51.1) G51.1 can be used to mirror workpiece shapes on coordinate axes. All programmed traversing movements are then executed as mirrored. Figure 3-10 Programmable Mirroring Format X, Y, Z: Positions and mirroring axis G51.1: Command for activating the mirroring...
  • Page 52 Motion commands 3.2 Defining the input modes of the coordinate values Example N1000 G51.1 X... Y... Z... ; Activate mirroring All the axis positions mirrored in the following blocks are mirrored at the mirroring axis programmed in N1000 G50.1 X... Y... Z.. ;...
  • Page 53: Time-Controlled Commands

    Motion commands 3.3 Time-controlled commands Time-controlled commands 3.3.1 Dwell time (G04) One can use G04 to interrupt workpiece machining between two NC blocks for a programmed time/number of spindle revolutions, e.g. for backing off. One can set with MD20734 $MC_EXTERN_FUNCTION_MASK, whether the dwell time for Bit 2 is to be interpreted as time (s or ms) or alternatively as spindle revolutions.
  • Page 54: Tool Offset Functions

    3.4.1 Tool offset data memory The Siemens tool data memory must be used, as programs in the Siemens Mode and in the ISO Direct Mode must run alternately on the control system. Hence, length, geometry and wear exists in each tool offset data memory. In the Siemens mode, the offset data memory is addressed with "T"...
  • Page 55 Motion commands 3.4 Tool offset functions G functions used for the tool length compensation The tool length compensation is called with the following G functions. Table 3- 8 G functions used for the tool length compensation G function Function G group Addition Subtraction Deselection...
  • Page 56 Motion commands 3.4 Tool offset functions Figure 3-11 Tool position offset Settings ● The machine data $MC_TOOL_CORR_MOVE_MODE determines whether the tool length compensation is to be undertaken with the selection of the tool offset or only during the programming of an axis motion. $MC_CUTTING_EDGE_DEFAULT = 0 defines that initially no tool length compensation is active during a tool change.
  • Page 57: Cutter Radius Compensation (G40, G41, G42)

    Motion commands 3.4 Tool offset functions Tool length compensation in several axes Tool length compensation can also be activated for several axes. A display of the resulting tool length compensation is not possible any more in that case. 3.4.3 Cutter radius compensation (G40, G41, G42) In cutter radius compensation, the programmed tool paths are shifted automatically by the radius of the cutting tool used.
  • Page 58 Motion commands 3.4 Tool offset functions ● A negative offset value of the tool radius is equivalent to a change of compensation side (G41, G42). The D function must either be programmed in the same block as G41 or G42 or in a previous block.
  • Page 59 Motion commands 3.4 Tool offset functions Changeover between G41 and G42 in operation with cutter radius compensation The offset direction (left or right) can be changed over directly without having to leave the compensation mode. The new offset direction is approached with the next block, through an axis motion. Figure 3-13 Changeover of the tool offset direction at block start and end of block Deselection of the tool offset...
  • Page 60 Motion commands 3.4 Tool offset functions 2. Method B: If G40 is programmed in a block without axis motion, the tool radius compensation is deselected immediately. In other words, that linear interpolation (G00 or G01) must be active in the block, because the tool radius compensation can be deselected only with a linear movement.
  • Page 61: Collision Detection

    Collision detection Activation via the NC program Although the "Collision detection" function is available only in the Siemens mode, it can also be used in the ISO dialect mode. Activation and deactivation must be undertaken only in the Siemens mode.
  • Page 62 Motion commands 3.4 Tool offset functions Figure 3-16 Collision detection CDOF can be used to avoid the faulty detection of bottlenecks, resulting, for example, from missing information that is not available in the NC program. Note Machine manufacturer The number of NC blocks that are included in the monitoring can be set via machine data (see machine manufacturer).
  • Page 63 Motion commands 3.4 Tool offset functions Detection of bottlenecks As the selected tool radius for machining this inside contour is too big, the bottlenecks are bypassed. An alarm is output. Figure 3-17 Detection of bottlenecks Contour definition shorter than tool radius The tool traverses the tool angle on a transition circle and then follows exactly the programmed contour.
  • Page 64 Motion commands 3.4 Tool offset functions Tool radius too large for internal machining In such cases, a machining of the contour takes place only to the extent possible without damaging the contour. Figure 3-19 Tool radius too large for internal machining ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 65: S-, T-, M- And B Functions

    Motion commands 3.5 S-, T-, M- and B functions S-, T-, M- and B functions 3.5.1 Spindle function (S function) The spindle speed is specified in rpm in Address S. The direction of spindle rotation is selected with M3 and M4. M3 = right direction of spindle rotation, M4 = left direction of spindle rotation.
  • Page 66: M Functions Of Spindle Control

    Motion commands 3.5 S-, T-, M- and B functions M00 (program stop) The machining is stopped in the NC block with M00. One can now, e.g., remove chips, re- measure, etc. A signal is output to the PLC. The program can be continued with NC start. M01 (optional stop) M01 can be set via ●...
  • Page 67: M Functions For Subroutine Calls

    Motion commands 3.5 S-, T-, M- and B functions 3.5.5 M functions for subroutine calls Table 3- 13 M functions for subroutine calls M function Function Subprogram call Subprogram end In the ISO mode, the spindle is switched to the axis mode with M29. 3.5.6 Macro call via M function Via M numbers, one can call a subroutine (macro) similar to G65.
  • Page 68: M Functions

    Motion commands 3.5 S-, T-, M- and B functions PROC M6_MAKRO N0010 R10 = R10 + 11.11 N0020 IF $C_X_PROG == 1 GOTOF N40 ;($C_X_PROG) N0030 SETAL(61000) ;programmed variable not ;transferred correctly N0040 IF $C_V == 20 GTOF N60 ;($C_V) N0050 SETAL(61001) N0060...
  • Page 69: Controlling The Feedrate

    Motion commands 3.6 Controlling the feedrate Controlling the feedrate 3.6.1 Automatic corner override G62 An inside corner with active tool radius compensation is often meaningful to reduce the feedrate. G62 operates only on internal corners with active tool radius compensation and active continuous-path mode.
  • Page 70 Tool data in the Siemens mode $TC_DP1[1,1]=120 $TC_DP3[1,1]=0 ; length compensation vector $TC_DP4[1,1]=0. $TC_DP5[1,1]=0. Setting the setting data in the Siemens mode N1000 G0 X0 Y0 Z0 F5000 G64 SOFT N1010 STOPRE N1020 $SC_CORNER_SLOWDOWN_START = 5. N1030 $SC_CORNER_SLOWDOWN_END = 8.
  • Page 71: Compressor In The Iso Dialect Mode

    The commands COMPON, COMPCURV, COMPCAD are commands of the Siemens language and they activate a compressor function that combines several linear blocks into one machining section. If this function is activated in the Siemens mode, even linear blocks in the ISO mode can be compressed with this function.
  • Page 72: Exact Stop (G09, G61), Continuous-Path Mode (G64), Tapping (G63)

    Motion commands 3.6 Controlling the feedrate 3.6.3 Exact stop (G09, G61), Continuous-path mode (G64), tapping (G63) The path feedrate is controlled as specified in the table below. Table 3- 15 Control of the path feedrate Identifier G function Efficacy of the G functions Description Exact stop effective only in the block in which...
  • Page 73: Additional Functions

    NC blocks must be programmed. Thus fixed drilling cycles shorten the machining program and save memory space. In the ISO dialect mode, a shell cycle is called which uses the functionality of the Siemens standard cycles. This way, the addresses programmed in the NC block are transferred to the shell cycle via system variables.
  • Page 74 Additional functions 4.1 Program supporting functions G function Drilling Machining at drilling Return Applications (-Z direction) base (+Z direction) Spindle positioning → Spindle positioning Rapid traverse → Drilling Withdraw lift-off path after dwelling → Return lift-off path → → Rapid traverse → Withdraw lift-off Spindle start Return lift-off path →...
  • Page 75 Additional functions 4.1 Program supporting functions If the term "drill" is used in this Chapter, it refers only to the working cycle that are executed with the help of fixed cycles, even though naturally there are fixed cycles for tapping, boring or drilling cycles too.
  • Page 76 Additional functions 4.1 Program supporting functions Execution of a fixed cycle The following is necessary to execute a fixed cycle: 1. Cycle call G73, 74, 76, 81 to 89 as a function of the desired machining 2. Data format G90/91 Figure 4-2 Absolute/incremental command G90/G91 ISO Milling...
  • Page 77 Additional functions 4.1 Program supporting functions 3. Drilling mode G73, G74, G76 and G81 to G89 are modal G functions and they remain active till they are deselected. The selected drilling cycle is called in each block. The complete parameter assignment of the drilling cycles must be programmed only during the selection (e.g., G81).
  • Page 78: Deep Hole Drilling Cycle With Chip Breakage (G73)

    Additional functions 4.1 Program supporting functions Symbols and numbers The individual fixed cycles are explained in the following sections. The following symbols are used in the numbers occurring in these explanations: Figure 4-4 Icons in the numbers 4.1.2 Deep hole drilling cycle with chip breakage (G73) The tool drills at the programmed spindle speed and feedrate to the entered final drilling depth.
  • Page 79 Additional functions 4.1 Program supporting functions Figure 4-5 Deep hole drilling cycle with chip breakage (G73) Explanations On using the G73 cycle, the retraction motion takes place after the drilling with rapid traverse. The safety clearance can be specified with GUD _ZSFR[0]. The retraction amount from chip breaking (d) is defined with GUD _ZSFR[1]: _ZSFR[1] >...
  • Page 80 Additional functions 4.1 Program supporting functions Restrictions Changeover of the axes Before changing over the drilling axis, one must first deselect the fixed cycle. Deep-hole drilling The drilling cycle is executed only if an axis motion, e.g., is programmed with X, Y, Z or R. Always program Q and R in one block with an axis motion, otherwise the programmed values will not be stored modally.
  • Page 81: Fine Drilling Cycle (G76)

    Additional functions 4.1 Program supporting functions 4.1.3 Fine drilling cycle (G76) Precision drilling takes place with the fine drilling cycle. Format G76 X... Y... R... Q... P... F... K... ; X,Y: Drilled hole position Z_: Distance from point R to the bottom of the hole R_: Distance from the initial plane to plane "Point R"...
  • Page 82 Additional functions 4.1 Program supporting functions WARNING Address Q is a modal value that is stored in fixed cycles. Please ensure that this address is also used as interface for the cycles G73 and G83! Explanations The spindles stops at a fixed spindle position after the bottom of a hole is reached. The tool is returned opposite the tool tip.
  • Page 83 Additional functions 4.1 Program supporting functions Always program Q and R only in one block with a retracting movement, otherwise the programmed values are not stored modally. Only one positive value is to be specified in each case for the value of Address Q. If a negative value is specified for Q, the sign is ignored.
  • Page 84: Drilling Cycle, Preboring (G81)

    Additional functions 4.1 Program supporting functions 4.1.4 Drilling cycle, preboring (G81) This cycle can be used for centering and preboring. The retraction motion starts immediately with rapid traverse rate on reaching the drilling depth Z. Format G81 X... Y... R... F... K... ; X,Y: Drilled hole position Z: Distance from point R to the bottom of the hole R: Distance from the initial plane to plane R...
  • Page 85: Drilling Cycle, Preboring (G82)

    Additional functions 4.1 Program supporting functions Deselection The G functions of Group 01 (G00 to G03) and G76 should not be used together in one block, as otherwise G76 is deselected. Example M3 S1500 ;Rotary motion of stem G90 G0 Z100 G90 G99 G81 X200.
  • Page 86 Additional functions 4.1 Program supporting functions Figure 4-8 Drilling cycle, countersink cycle (G82) Restrictions Changeover of the axes Before changing over the drilling axis, one must first deselect the fixed cycle. Drilling The drilling cycle is executed only if an axis motion, e.g. is programmed with X, Y, Z or R. Always program R only in one block with an axis motion, otherwise the programmed values are not stored modally.
  • Page 87: Deep Hole Drilling Cycle With Chip Removal (G83)

    Additional functions 4.1 Program supporting functions ;then return to point R Y-700. ;Positioning, drilled hole 3, ;then return to point R X950. ;Positioning, drilled hole 4, ;then return to point R Y-500. ;Positioning, drilled hole 5, ;then return to point R G98 Y-700.
  • Page 88 Additional functions 4.1 Program supporting functions Figure 4-9 Deep hole drilling cycle with chip removal (G83) Restrictions Explanations After the programmed cutting depth is reached for each cutting feedrate Q, the return to the reference plane R takes place in rapid traverse. The approach motion for a renewed step is also executed in rapid traverse, around the path (d) that can be set in GUD7 _ZSFR[10].
  • Page 89 Additional functions 4.1 Program supporting functions Example M3 S2000 ;Rotary motion of stem G90 G0 Z100 G90 G99 G83 X200. Y-150. Z-100. ;Positioning, drilled hole 1, R50. Q10. F150. ;then return to point R Y-500. ;Positioning, drilled hole 2, ;then return to point R Y-700.
  • Page 90: Drilling Cycle (G85)

    Additional functions 4.1 Program supporting functions 4.1.7 Drilling cycle (G85) Format G85 X... Y... R... F... K... ; X,Y: Drilled hole position Z: Distance from point R to the bottom of the hole R: Distance from the initial plane to plane R F: Feedrate K: Number of repetitions Figure 4-10...
  • Page 91: Boring Cycle (G86)

    Additional functions 4.1 Program supporting functions Always program R only in one block with an axis motion, otherwise the programmed values are not stored modally. Deselection The G functions of Group 01 (G00 to G03) and G85 should not be used together in one block, as otherwise G85 is deselected.
  • Page 92 Additional functions 4.1 Program supporting functions Figure 4-11 Boring cycle (G86) Explanations Point R is approached in rapid traverse after positioning the X and Y axes. Drilling takes place from point R to point Z. The tool returns in rapid traverse mode after the spindle is stopped at the bottom of a hole.
  • Page 93: Boring Cycle, Reverse Countersinking (G87)

    Additional functions 4.1 Program supporting functions Example M3 S150 ;Rotary motion of stem G90 G0 Z100 G90 G99 G86 X200. Y-150. Z-100. ;Positioning, drilled hole 1, R50. F150. ;then return to point R Y-500. ;Positioning, drilled hole 2, ;then return to point R Y-700.
  • Page 94 Additional functions 4.1 Program supporting functions Figure 4-12 Boring cycle, reverse countersinking (G87) WARNING Address Q (gear change at the base of a drilled hole) is a modal value that is stored in fixed cycles. Please ensure that this address is also used as interface for the cycles G73 and G83! ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 95 Additional functions 4.1 Program supporting functions Explanations The spindle stops at a fixed rotary position after positioning along the X and Y axis. The tool travels in the direction opposite to that of the tool tip. It is positioned on the bottom of a hole (Point R) at rapid traverse.
  • Page 96: Drilling Cycle (G89), Return With G01

    Additional functions 4.1 Program supporting functions Deselection The G functions of Group 01 (G00 to G03) and G87 should not be used together in one block, as otherwise G87 is deselected. Example M3 S400 ;Rotary motion of stem G90 G0 Z100 G90 G87 X200.
  • Page 97 Additional functions 4.1 Program supporting functions Figure 4-13 Boring cycle (G89) Explanations This cycle is similar to G86, with the only exception that here, a dwell time at the bottom of the hole is still available. Before programming G89, the spindle must be started with an M function. Restrictions Changeover of the axes Before changing over the drilling axis, one must first deselect the fixed cycle.
  • Page 98: Cycle "Tapping Without Compensating Chuck" (G84)

    Additional functions 4.1 Program supporting functions Example M3 S150 ;Rotary motion of stem G90 G0 Z100 G90 G99 G89 X200. Y-150. Z-100. ;Positioning, drilled hole 1, R50. P1000 F150. ;then 1 s stop at the bottom of a hole Y-500. ;Positioning, drilled hole 2, ;then return to point R Y-700.
  • Page 99 Additional functions 4.1 Program supporting functions Figure 4-14 Tapping without compensating chuck (G84) Explanations The cycle creates the following sequence of motions: ● Approach of reference plane shifted by the amount of the safety clearance with G0. ● Oriented spindle stop and transfer of spindle in the Axis mode. ●...
  • Page 100 Additional functions 4.1 Program supporting functions Tapping The drilling cycle is executed only if an axis motion, e.g. is programmed with X, Y, Z or R. Always program R only in one block with an axis motion, otherwise the programmed values are not stored modally.
  • Page 101: Drilling A Left-Hand Thread Without Compensating Chuck" Cycle (G74)

    Additional functions 4.1 Program supporting functions ;then return to initial plane G00 X100.0 Y100.0 ;Positioning G84 Z-50.0 R-10.0 F1.0 ;Tapping without compensating chuck 4.1.12 "Drilling a left-hand thread without compensating chuck" cycle (G74) The tool drills at the programmed spindle speed and feedrate to the entered final thread depth.
  • Page 102 Additional functions 4.1 Program supporting functions Explanations The cycle creates the following sequence of motions: ● Approach of reference plane shifted by the amount of the safety clearance with G0. ● Oriented spindle stop and transfer of spindle in the Axis mode. ●...
  • Page 103: Left Or Right Tapping Cycle (G84 Or G74)

    Additional functions 4.1 Program supporting functions Unit of the F command Metric input Input in inch Remarks 1 mm/min 0.01 inch/min Decimal point programming is permitted 0.01 mm/rev 0.0001 inch/rev Decimal point programming is permitted Example Feedrate for the Z axis 1.000 mm/min Spindle speed 1,000 rev/min Thread lead 1.0 mm <Programming as feedrate per minute>...
  • Page 104 Additional functions 4.1 Program supporting functions Format G84 (or G74) X... Y... Z... R... P... Q... F... K... ; X,Y: Drilled hole position Z: Distance from point R to the bottom of the hole R: Distance from the initial plane to "Point R" P: Dwell time at the bottom of the hole and at point R during return Q: Cutting depth for each cutting feedrate F: Feedrate...
  • Page 105 Additional functions 4.1 Program supporting functions 1. The tool is traversed with the programmed feedrate. 2. The retraction velocity can be affected with GUD7 _ZSFI[2]. Figure 4-17 Deep hole tapping with chip breakage (GUD7 _ZSFI[1] = 3) Deep hole tapping with chip breakage/removal After positioning along the X and Y axes, there is a traversing movement at rapid traverse to point R.
  • Page 106: Deselection Of A Fixed Cycle (G80)

    Additional functions 4.1 Program supporting functions 4.1.14 Deselection of a fixed cycle (G80) Fixed cycles can be deselected with G80. Format G80; Explanations All modal cycles are deselected in the ISO mode with G80 or with a G function of the 1st group (G00, G03, G33, G34, ...).
  • Page 107: Program Example With A Tool Length Compensation And Fixed Cycles

    Additional functions 4.1 Program supporting functions 4.1.15 Program example with a tool length compensation and fixed cycles Figure 4-18 Program example (drilling cycle) Offset value +200.0 is set in TO No. 11, +190.0 is set in TO No. 15 and +150.0 is set in tool offset No.
  • Page 108 Additional functions 4.1 Program supporting functions Sample program N001 G49 ; Deselect the tool length compensation N002 G10 L10 P11 R200. ; Setting the tool offset 11 to +200. N003 G10 L10 P15 R190. ; Setting the tool offset 15 to +190. N004 G10 L10 P30 R150.
  • Page 109: Multiple-Start Threads With G33

    Additional functions 4.1 Program supporting functions N029 G28 X0 Y0 M5 Return to reference position, Spindle stop N030 G49 Z0 ; Deselect the tool length compensation N031 M30 ; End of the program 4.1.16 Multiple-start threads with G33 Multiple-start threads are programmed with the G code G33 in the ISO dialect mode. Format G33 X..
  • Page 110: Programmable Data Input (G10)

    Additional functions 4.2 Programmable data input (G10) Programmable data input (G10) 4.2.1 Changing the tool offset value Existing tool offsets can be overwritten via G10. It is not possible to create new tool offsets. Format G10 L10 P... R... ; Tool length compensation, geometry G10 L11 P...
  • Page 111: M Function For Calling Subroutines (M98, M99)

    Additional functions 4.2 Programmable data input (G10) Status at Power ON Whether the working area limitation is activated or deactivated is defined in the following machine data: $MC_EXTERN_GCODE_RESET_VALUES[3] Normally, this MD is set to Value 2 (G23). 4.2.3 M function for calling subroutines (M98, M99) This function can be used if subroutines are stored in the part program memory.
  • Page 112 Additional functions 4.2 Programmable data input (G10) Subroutine call (M98) ● M98 P nnn mmmm m: Program no. (max. 4 digits) n: No. of repetitions (max. 4 digits) ● If for example, M98 P21 is programmed, the part program memory is browsed by program name 21.mpf and the subroutine is executed once.
  • Page 113: Eight-Digit Program Number

    Additional functions 4.3 Eight-digit program number Eight-digit program number An eight-digit program number selection is activated with the machine data 20734 $MC_EXTERN_FUNCTION_MASK, Bit 6=1. This function affects M98, G65/66 and M96. y: Number of program runs x: Program number Subprogram call $MC_EXTERN_FUNCTION_MASK, Bit 6 = 0 M98 Pyyyyxxxx or M98 Pxxxx Lyyyy...
  • Page 114 Additional functions 4.3 Eight-digit program number Interrupt M96 Does not function in SINUMERIK 802D sl. $MC_EXTERN_FUNCTION_MASK, Bit6 = 0 M96 Pxxxx Addition of program number always to 4 digits with 0 $MC_EXTERN_FUNCTION_MASK, Bit6 = 1 M96 Pxxxx There is no extension with 0, even if the program number has less than 4 digits. A program number with more than 8 digits leads to an alarm.
  • Page 115: Polar Coordinates (G15, G16)

    Additional functions 4.4 Polar coordinates (G15, G16) Polar coordinates (G15, G16) While programming in polar coordinates, the positions in the coordinate system are defined with a radius and/or angle. Polar coordinate programming is selected with G16. It is deselected again with G15. The first axis of the plane is interpreted as polar radius, the second axis as polar angle.
  • Page 116: Polar Coordinates Interpolation (G12.1, G13.1)

    "SINUMERIK 840D, Extended Functions", Chapter "Kinematic Transformation (M1)" and in the work planning programming manual (PGA) "SINUMERIK 840D" in Chapter "Transformation". G12.1 is based on the Siemens function TRANSMIT. Appropriate machine data is to be set for this. Format G12.1 ;Selection of polar coordinates interpolation...
  • Page 117 Additional functions 4.5 Polar coordinates interpolation (G12.1, G13.1) Example Figure 4-19 Example of polar coordinates interpolation 00001 N010 T0101 N0100 G90 G00 X60.0 C0 Z.. ;TRANSMIT selection N0200 G12.1 N0201 G42 G01 X20.0 F1000 N0202 C10.0 N0203 G03 X10.0 C20.0 R10.0 N0204 G01 X-20.0 N0205 C-10.0 N0206 G03 X-10.0 C-20.0 I10.0 J0...
  • Page 118: Measuring Functions

    Additional functions 4.6 Measuring functions Measuring functions 4.6.1 Rapid lift with G10.6 A retraction position for the rapid lifting of a tool can be activated with G10.6 <Axis position> (e.g., in case of tool breakage). The retraction motion itself is started with a digital signal. The 2nd rapid input of NC is used as the start signal.
  • Page 119 With the rising edge of the measurement input 1, the current axis positions are stored in the axial system parameters or $AA_MM[<Axis>], $AA_MW[<Axis>]. These parameters can be read in the Siemens mode. $AA_MW[X] Saving the coordinate value of the X axis in the workpiece coordinate system...
  • Page 120 Additional functions 4.6 Measuring functions Example G31 with incremental position specification Figure 4-20 G31 with incremental position specification of one axis G31 is an absolute position specification Figure 4-21 G31 with absolute position specification of one axis G31 is an absolute command for 2 axes. ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 121: Measuring With G31, P1 - P4

    Additional functions 4.6 Measuring functions Figure 4-22 G31 is an absolute command for 2 axes 4.6.3 Measuring with G31, P1 - P4 The function G31 P1 (.. P4) is different from G31 in that different inputs for the measuring signal can be selected with P1 to P4. Several inputs can also be monitored on a rising edge of a measuring signal simultaneously.
  • Page 122: Interrupt Program With M96, M97

    The start of this program is triggered by an external signal. To start the interrupt routine, the 1st rapid NC input is used from among the eight inputs available in the Siemens mode. Another rapid input (1 to 8) can also be selected with MD10818 $MN_EXTER_INTERRUPT_NUM_ASUP.
  • Page 123 Additional functions 4.6 Measuring functions Machine data The response of the interrupt program function can be determined from the following machine data: MD10808 $MN_EXTERN_INTERRUPT_BITS_M96: Bit 0 = 0 Interrupt program is not possible as M96/M97 are normal M functions. Bit 0 = 1 Activation of an interrupt program with M96/M97 is allowed.
  • Page 124: Tool Life Control" Function

    If the interrupt signal remains permanently on 1, then the interrupt program is not restarted any more. 4.6.5 "Tool life control" function Tool life monitoring and workpiece count can be undertaken with Siemens Tool Management. ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 125: Macro Programs

    (subroutine), then the transfer parameters in the subroutine must be saved in internal variable before the new macro call. To enable internal variable definitions, one must switch automatically to the Siemens mode during macro call. One can do this by inserting the instruction PROC<Program name> in the first line of the macro program.
  • Page 126 ISO mode. These are identical arrays of $C_I, $C_K and they contain the associated numbers of the parameters. Note The transfer parameters can be read only in the subroutine in the Siemens mode. Example: N5 I10 J10 K30 J22 K55 I44 K33...
  • Page 127 Additional functions 4.7 Macro programs Cycle parameter $C_x_PROG In the ISO-dialect-0 mode, the programmed values can be evaluated in different ways, depending on the programming method (integer or actual value). The different evaluation is activated through a machine data. If the MD is set, the control system responds as in the following example: X100 ;...
  • Page 128 Additional functions 4.7 Macro programs Interrelation between address- and system variables Table 4- 7 Interrelation between addresses and variables and addresses that can be used to call commands Interrelation between addresses and variables Address System variable $C_A $C_B $C_C $C_D $C_E $C_F $C_H...
  • Page 129 Additional functions 4.7 Macro programs Table 4- 8 Interrelation between addresses and variables and addresses that can be used to call commands Interrelation between addresses and variables Address System variable $C_A $C_B $C_C $C_I[0] $C_J[0] $C_K[0] $C_I[1] $C_J[1] $C_K[1] $C_I[2] $C_J[2] $C_K[2] $C_I[3]...
  • Page 130 Execution of macro programs in the Siemens and ISO modes A called macro program can be called either in the Siemens mode or in the ISO mode. The language mode in which the program is executed is defined in the first block of the macro program.
  • Page 131 N200 M30 Tool Macro program in the Siemens mode: _N_0010_SPF: PROC 0010 ; Changeover to the Siemens mode N10 DEF REAL X_AXIS ,Y_AXIS, S_SPEED, FEED N15 X_AXIS = $C_X Y_AXIS = $C_Y S_SPEED = $C_S FEED = $C_F N20 G01 F=FEED G95 S=S_SPEED...
  • Page 132: Macro Call Via G Function

    Additional functions 4.7 Macro programs 4.7.3 Macro call via G function Macro call A macro can be called with a G number analogous to G65. The replacement of 50 G functions can be configured via machine data: 10816 $MN_EXTERN_G_NO_MAC_CYCLE and 10817 $MN_EXTERN_G_NO_MAC_CYCLE_NAME.
  • Page 133 Additional functions 4.7 Macro programs Programming example PROC MAIN . . . N0090 G291 ; ISO mode N0100 G1 G21 X10 Y20 F1000 G90 Call of G21_MAKRO.spf, G1 and G90 are activated before the call of G21_MAKRO.spf . . . N0500 G90 X20 Y30 G123 G1 G54 Call of G123_MAKRO.spf, G1, G54 and G90 are activated...
  • Page 134 Additional functions 4.7 Macro programs . . . N1990 GOTOF label_end N2000 label_G421: ; Macro functionality for G421 N2010 G90 X=$C_X Y=$C_Y F100 N2020 ..N3000 G291 N3010 G123 Alarm 12470, because G123 is not a G function and a macro call is not possible for active macro...
  • Page 135: Special Functions

    Additional functions 4.8 Special functions Special functions 4.8.1 Contour repetition (G72.1, G72.2) Does not function in SINUMERIK 802D sl. A contour programmed once can be repeated easily with G72.1 and G72.2. This function can be used to create either a linear copy (G72.2) or a rotational copy (G72.1). Format G72.1 X...
  • Page 136 Additional functions 4.8 Special functions Examples Figure 4-24 Contour repetition with G72.1 Main program N10 G92 X40.0 Y50.0 N20 G01 G90 G17 G41 20 Y20 G43H99 F1000 N30 G72.1 P123 L4 X0 Y0 R90.0 N40 G40 G01 X100 Y50 Z0 N50 G00 X40.0 Y50.0 ;...
  • Page 137: Switchover Modes For Dryrun And Skip Levels

    Additional functions 4.8 Special functions Figure 4-25 Contour repetition with G72.2 Main program N10 G00 G90 X0 Y0 N20 G01 G17 G41 X30. Y0 G43H99 F1000 N30 Y10. N40 X30. N50 G72.2 P2000 L3 I80. J0 Subroutine 2000.mpf G90 G01 X40. N100 Y30.
  • Page 138 Additional functions 4.8 Special functions NOTICE The premachining is changeover with the setting machine data $MN_SLASH_MASK==2 during a change of the skip level! All blocks located in the preprocessing memory are traversed with the old skip level. The user normally does not have any control over the fill level of the preprocessing memory.
  • Page 139: Abbreviations

    Abbreviations Output ASCII American Standard Code for Information Interchange: American coding standard for the exchange of information ASUB Asynchronous subroutine Job planning Statement list Mode Mode group Mode group Binary Coded Decimals: Decimal numbers encoded In binary code Handheld unit Binary files (binary files) Basic coordinate system User interface...
  • Page 140 Abbreviations Central Processing Unit: Central processing unit Carriage Return Clear To Send (clear to send messages for serial data interfaces) CUTOM Cutter radius Compensation: Tool radius compensation Data Block in the PLC Data Block Byte in the PLC Data Block Word in the PLC Data block bit in the PLC Direct Control: Movement of the rotary axis via the shortest path to the absolute position within one revolution.
  • Page 141 Abbreviations Decoding Single Block: Decoding single block Data word Data transmission equipment Input Input/output Infeed/regenerative feedback unit (power supply) on the SIMODRIVE 611(D) EIA code Special punched-tape code, number of holes per character always odd Encoder: Actual value encoder EPROM Erasable Programmable Read Only Memory: Erasable, electrically programmable read-only memory Function block Function Call: Function block in the PLC...
  • Page 142 Abbreviations Feed Stop: Feed stop Function plan (PLC programming method) Basic program Global User Data: Global user data Hard Disk: Hard disk Abbreviation for hexadecimal number Human Machine Interface: Operator functionality of SINUMERIK for operation, programming and simulation. MMC and HMI mean the same as MMC. Main Spindle Drive Hardware Hardware...
  • Page 143 Abbreviations K1 .. K4 Channel 1 to channel 4 C Bus Communication bus Coordinate rotation Ladder logic (PLC programming method) Loop gain factor Transformation ratio Line Feed Position measuring system Position controller Local User Data: Local user data Megabyte Machine data Manual Data Automatic: Manual input Measuring circuit Machine coordinate system...
  • Page 144 Abbreviations Numerical Control Unit: Hardware unit of NCK Interface Signal NURBS Non-Uniform Rational B-Spline: Rational B-spline curves Work offset Organization block in the PLC Original Equipment Manufacturer: Manufacturer whose products are marketed under an external company name. Operator Panel: Operating equipment Operator Panel Interface: Operator panel front connection P-Bus Peripheral Bus...
  • Page 145 Abbreviations Clear To Send (clear to send message for serial data interfaces, activate sending part, control signal from serial data interfaces) Single Block: Single block Setting data System Data Block Setting Data Active: Identifier (file type) for setting data System function block System function call: System function call Softkey Skip block: Skip block...
  • Page 146 Abbreviations Tool Offset Active: Identifier (file type) for tool offsets TRANSMIT Transform Milling Into Turning: Coordinate conversion in turning machine for milling User Frame: Work offset Subroutine Feed drive V.24 Serial interface (definition of the interchange lines between DTE and DCE) Workpiece coordinate system Tools Tool length compensation...
  • Page 147: G Code Table

    G code table Table B- 1 G code table G code Description 840D sl 802D sl Group 1 Rapid traverse Linear movement Circle/helix in clockwise direction G02.2 Involute in the clockwise direction Circle/helix in the counterclockwise direction G03.2 Counterclockwise involutes Thread cutting with constant lead Group 2 XY plane...
  • Page 148 G code table G code Description 840D sl 802D sl Group 9 Deep hole drilling cycle with chip breakage Left tapping cycle Fine drill cycle Cycle off Drilling cycle counterboring Countersink drilling cycle Deep hole drilling cycle with chip removal Right tapping cycle Drilling cycle Drilling cycle, retraction with G00...
  • Page 149 Polar coordinates interpolation OFF G12.1 Polar coordinates interpolation ON Group 31 G290 Selection of Siemens mode G291 Selection of ISO dialect mode x means G code can be used, -- means G code cannot be used ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 150 G code table Note In general, the G functions mentioned in are defined by the NC during activation of the control system or during RESET. Data about the actual settings can be found in the documentation of your machine manufacturer. The G functions mentioned in are optional.
  • Page 151: Data Description

    Data Description General machine data 10604 WALIM_GEOAX_CHANGE_MODE SD Number Working area limitation during switchover of geometry axes Default setting: 0 min. input limit: 0 max. input limit: 1 Changes effective after POWER ON Protection level: 2/7 Unit: - Data type: BYTE Valid as of software version: 6.2 Meaning: The machine data is used to define whether a possibly active working field limitation is...
  • Page 152 Hence, for instance, identical programming in different language modes can be implemented: If "A" is specified as name, then the angle is specified the same way in Siemens programming as in ISO dialect. The identifier must be unique, i.e. there should be axes, variables, macros etc. having the same name.
  • Page 153 Hence, for instance, identical programming in different language modes can be implemented: If "C" is specified as name, then the radius is specified the same way in Siemens programming as in ISO dialect. The identifier must be unique, i.e. there should be axes, variables, macros etc. having the same name.
  • Page 154 Data Description C.1 General machine data 10706 SLASH_MASK MD number Activation of block skip function Default setting: 0 min. input limit: 0 max. input limit: 2 Change becomes effective after Protection level: Unit: - Data type: BYTE Valid as of software version: SLASH_MASK == 0 Meaning: Changing over block skip function is possibly only at end of block after stop.
  • Page 155 If the M function is reprogrammed in the subroutine, then there is no longer any replacement by a subroutine call. $MN_M_NO_FCT_CYCLE acts both in the Siemens mode G290 as well as in the external language mode G291. A subroutine call must not be superimposed on M functions with predetermined significance.
  • Page 156 The programmed T number can be queried in the cycle via the system variables $C_T/$C_T_PROG as decimal value and via $C_TS/$C_TS_PROG as string (only in tool management). $MN_T_NO_FCT_CYCLE_NAME acts both in the Siemens mode G290 as well as in the external language mode G291. $MN_M_NO_FCT_CYCLE_NAME and $MN_T_NO_FCT_CYCLE_NAME may not be effective in one block at the same time, i.e.
  • Page 157 Valid as of software version: 5.2 Meaning: This MD works in the Siemens mode and in the external language mode. This machine data is used to define whether tool length- and tool radius compensations are to be suppressed in the language commands G53, G153 and SUPA.
  • Page 158 Data Description C.1 General machine data 10802 EXTERN_CHAN_SYNC_M_NO_MAX SD Number Last M number for channel synchronization Default setting: -1 min. input limit: 100 max. input limit: Changes effective after POWER ON Protection level: 2/7 Unit: - Data type: DWORD Valid as of software version: 6.2 Meaning: Biggest M number of the M range that is reserved for the channel synchronization.
  • Page 159 Data Description C.1 General machine data 10808 EXTERN_INTERRUPT_BITS_M96 Data type: WORD Valid as of software version: 6.2 Meaning: The flow of the interrupt routine activated with M96P can be affected by setting the different bits. Bit 0=0: Interrupt program is not possible, M96/97 are normal M functions Bit 0=1: Activation of an interrupt program with M96/M97 is allowed Bit 1=0: Process part program with the end position of the next block after the interruption block...
  • Page 160 Data Description C.1 General machine data 10814 EXTERN_M_NO_MAC_CYCLE MD number Macro call via M function Default setting: min. input limit: max. input limit: Changes effective after POWER ON Protection level: 2/7 Unit: - Data type: DWORD Valid as of software version: Meaning: M number with which a macro is called.
  • Page 161 1 = ISO-2: System Fanuc0 Milling (from 5.1) 2 = ISO-3: System Fanuc0 Turning (from 5.2) Here, the functional scope defined in the current Siemens documentation is valid. This data is evaluated when the machine data $MN_MM_EXTERN_LANGUAGE is set. ISO Milling...
  • Page 162 Data Description C.1 General machine data 10882 NC_USER_EXTERN_GCODES_TAB [n]:0...59 MD number List of user-specific G commands of an external NC language Default setting: - min. input limit: - max. input limit: - Changes effective after POWER ON Protection level: 2/2 Unit: - Data type: STRING Valid as of software version: 5...
  • Page 163 Data Description C.1 General machine data 10886 EXTERN_INCREMENT_SYSTEM MD number Increment system Default setting: 0 min. input limit: 0 max. input limit: 1 Changes effective after POWER ON Protection level: 2/7 Unit: - Data type: BOOLEAN Valid as of software version: 5.2 Meaning: This machine data is effective for external programming languages, i.e.
  • Page 164: Channel-Specific Machine Data

    Data Description C.2 Channel-specific machine data Channel-specific machine data 20050 AXCONF_GEOAX_ASSIGN_TAB MD number Assignment of geometry axis to channel axis Default setting: 1, 2, 3 min. input limit: 0 max. input limit: 20 Changes effective after POWER ON Protection level: 2/7 Unit: - Data type: BYTE Valid as of software version:...
  • Page 165 Valid as of software version: 5.2 Meaning: The machine data works in the Siemens mode and in the external language mode. This machine data is used to define the M function number with which the spindle is changed over to the controlled spindle mode (Axis mode). This number is used to replace M70 in the Siemens mode and M29 in the external language mode.
  • Page 166 Data Description C.2 Channel-specific machine data 20150 GCODE_RESET_VALUES MD number Reset G groups Default setting: 2, 0, 0, 1, 0, ... min. input limit: - max. input limit: - Changes effective after RESET Protection level: 2/7 Unit: - Data type: BYTE Valid as of software version: Meaning: Definition of the G codes that become active during run-up and reset or at part program end...
  • Page 167 Data Description C.2 Channel-specific machine data 20152 GCODE_RESET_MODE MD number Reset behavior of G groups Default setting: min. input limit: 0 max. input limit: 1 Changes effective after RESET Protection level: 2/7 Unit: - Data type: BYTE Valid as of software version: Meaning: This Machine data is only evaluated if bit 0 is set in $MC_RESET_MODE_MASK.
  • Page 168 EXTERN_GCODE_RESET_VALUES[n]: 0, ..., 30 MD number Definition of the G codes that are to be activated during reboot, if the NC channel is not running in the Siemens mode. Default setting: - min. input limit: - max. input limit: -...
  • Page 169 Data Description C.2 Channel-specific machine data 20156 EXTERN_GCODE_RESET_MODE MD number Reset behavior of external G groups Default setting: - min. input limit: 0 max. input limit: 1 Changes effective after RESET Protection level: 2/7 Unit: - Data type: BYTE Valid as of software version: 6.3 Meaning: This MD is only evaluated if bit 0 is set in $MC_RESET_MODE_MASK (see there)! This MD is used to define for each entry in MD $MN_EXTERN_GCODE_RESET_VALUES...
  • Page 170 Data Description C.2 Channel-specific machine data 20382 TOOL_CORR_MOVE_MODE MD number Retract the tool length compensation Default setting: FALSE min. input limit: - max. input limit: - Changes effective after RESET Protection level: 2/7 Unit: - Data type: BOOLEAN Valid as of software version: 5.2 Meaning: The machine data determines how the tool length compensations are retracted.
  • Page 171 N10 WAIT ; Alarm 12080 "WAIT unknown" N15 G91 G500 ; Alarm 12080 "G500 unknown" Bit 3=1: Errors in the ISO scanner are not output, the block is forwarded to the Siemens translator Example: N5 G291 ; ISO dialect mode N10 WAIT ;...
  • Page 172 Data Description C.2 Channel-specific machine data 22420 FGROUP_DEFAULT_AXES[n]: 0, ..., 7 MD number Default value of the FGROUP command Default setting: 0 min. input limit: 0 max. input limit: 8 Changes effective after POWER ON Protection level: 7/7 Unit: - Data type: BYTE Valid as of software version: 5.2 Meaning:...
  • Page 173 Data Description C.2 Channel-specific machine data 22515 GCODE_GROUPS_TO_PLC_MODE Meaning: To set the behavior, how are the G groups to be interpreted as data in the PLC. According to the current behavior (Bit 0=0), the G group is the array index of a 64-byte large field (DBB 208 - DBB 271).
  • Page 174 Data Description C.2 Channel-specific machine data 22914 AXES_SCALE_ENABLE MD number Activation for axial scaling factor (G51) Default setting: 0 min. input limit: 0 max. input limit: 1 Changes effective after POWER ON Protection level: 2/7 Unit: - Data type: BOOLEAN Valid as of software version: 5.2 Meaning: Axial scaling is disconnected with this MD.
  • Page 175 Data Description C.2 Channel-specific machine data 24004 CHBFRAME_POWERON_MASK Meaning: This machine data is used to define whether channel-specific basic frames are reset to the data management during Power On Reset, i.e. shifts and rotations are set to 0, scaling to 1. Mirroring is switched off.
  • Page 176 Data Description C.2 Channel-specific machine data 28082 MM_SYSTEM_FRAME_MASK Meaning: Bit mask for the configuration of the channel-specific system frames calculated in the channel. 0: System frame for actual value setting and scratching 1: System frame for external work offset 2: System frame for TCARR and PAROT 3: System frame for TOROT and TORFRAME 4: System frame for workpiece reference points 5: System frame for cycles...
  • Page 177: Axis-Specific Setting Data

    -359.999 max. input limit: 359.999 Change valid IMMEDIATELY Protection level: 7/7 Unit: - Data type: DOUBLE Valid as of software version: 5.2 Meaning: The setting data is also effective in the Siemens mode. ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 178: Channel-Specific Setting Data

    Data Description C.4 Channel-specific setting data Channel-specific setting data 42110 DEFAULT_FEED SD Number Default value for path feed Default setting: 0 min. input limit: 0 max. input limit: - Change valid IMMEDIATELY Protection level: 7/7 Unit: - Data type: DOUBLE Valid as of software version: 5.2 Meaning: If no path feedrate is programmed in the part program, then the value stored in...
  • Page 179 Data Description C.4 Channel-specific setting data 42520 CORNER_SLOWDOWWN_START SD Number Start of feedrate reduction in G62 Default setting: 0 min. input limit: 0 max. input limit: Any Change valid IMMEDIATELY Protection level: 7/7 Unit: mm Data type: DOUBLE Valid as of software version: 6 Meaning: Path length from which the feedrate is reduced before the corner in G62 42522...
  • Page 180 Data Description C.4 Channel-specific setting data ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 181: Data Lists

    Data lists Machine data Number Identifier Name General ($MN_ ... ) 10604 WALIM_GEOAX_CHANGE_MODE Working area limitation during switchover of geometry axes 10615 NCFRAME_POWERON_MASK Delete global basic frames during Power On 10652 CONTOUR_DEF_ANGLE_NAME Adjustable name for angle in the contour short description 10654 RADIUS_NAME...
  • Page 182 20080 AXCONF_CHANAX_NAME_TAB[ ] Name of channel axis in the channel 20094 SPIND_RIGID_TAPPING_M_NR M number for changing over to the controlled spindle mode (Siemens mode) 20095 EXTERN_RIGID_TAPPING_M_NR M number for changing over to the controlled spindle mode (external language mode) 20150 GCODE_RESET_VALUES[n]: 0 to max.
  • Page 183: Setting Data

    Data lists D.2 Setting data Setting data Number Identifier Name Axis-specific 43120 DEFAULT_SCALE_FACTOR_AXIS Default axial scaling factor with active G51 43240 M19_SPOS Spindle position in degrees for spindle positions with 43340 EXTERN_REF_POSITION_G30_1 Reference position for G30.1 Channel-specific 42110 $SC_DEFAULT_FEED Default value for path feed 42140 $SC_DEFAULT_SCALE_FACTOR_P Default scaling factor for address P...
  • Page 184: Variables

    Data lists D.3 Variables Variables Identifier Type Description $C_A REAL Value of programmed address A in the ISO dialect mode for cycle programming $C_B REAL Value of programmed address B in the ISO-dialect-mode for cycle programming ..... $C_G G number for cycle calls in the external mode $C_H REAL...
  • Page 185 Data lists D.3 Variables Identifier Type Description $P_EXTGG[n] Active G code of the external language $C_INC_PROG Bit pattern of all incrementally programmed addresses in a block with cycle call Bit 0 = Address A Bit 25 = Address Z Bit = 1 address is programmed incrementally Bit = 0 address is not programmed as absolute $C_I_NUM Cycle programming: Value is always 1 if Bit 0 is set in $C_I_PROG.
  • Page 186 Data lists D.3 Variables ISO Milling Programming Manual, 06/09, 6FC5398-7BP10-1BA0...
  • Page 187: Interrupts

    CYCLE383M, CYCLE384M, cycles. CYCLE387M 61004 Configuration of geometry axis is CYCLE328 The sequence of the geometry not correct axes is incorrect, refer to Siemens standard cycles 61101 Reference plane defined CYCLE375T, CYCLE81, Refer to Siemens standard cycles incorrectly CYCLE83, CYCLE84, CYCLE87...
  • Page 188 Interrupts Alarm No. brief description Cause Explanation/remedy 61801 Wrong G code selected CYCLE300, CYCLE371T, An impermissible value has been CYCLE374T, CYCLE376T, programmed in the program call CYCLE383T, CYCLE384T, CYCLE300<Value> or a wrong CYCLE385T value has been specified in the cycle setting data for the G code system.
  • Page 189: Glossary

    Glossary A spline The Akima spline runs under a continuous through the programmed interpolation points (3rd order polynomial) tangentially. Absolute dimensions A specification for the target of axis motion is defined by a dimension that refers to the origin of the currently active coordinate system. See also -> incremental dimension. AC (adaptive control) A process variable (e.g.
  • Page 190 Glossary Analog input and output modules Analog input and output modules are sensors for analog process signals. Analog input modules are used to convert measured analog values into digital values, so that they can be processed in the CPU. Analog input modules convert digital values into manipulated variables.
  • Page 191 Glossary Axis/spindle replacement An axis/spindle is permanently assigned to a specific channel via machine data. This assignment via machine data can be reset with program commands and the axis/spindle can be assigned to another channel. Backlash compensation Compensation of the mechanical backlash of the machine, e.g. the backlash compensation of the spindles.
  • Page 192 Glossary C axis An axis which the tool uses to describe a controlled rotary or positioning movement. C spline The C spline is the most well-known and widely used spline. The spline runs along a tangent and along the axis of curvature through all interpolation points. 3rd order polynomials are used for this.
  • Page 193 Glossary Compensation memory Data storage area in the control system, in which the tool offset data are stored. Compensation table Table of interpolation points. It delivers the offset values of the offset axis for the selected positions of the basic axis. Connecting cables Connecting cables are either pre-assembled cables or cables that are pre-assembled, ready- to-use two-wire cables that have a connector at both ends.
  • Page 194 Glossary Cycle support The available cycles are listed in the "Cycle support" menu in the "Program" operating area. The required parameters for the assignment of the values are displayed in plain text after the desired execution cycle has been selected. Data block ●...
  • Page 195 Glossary Exact stop If exact stop is programmed, the position specified in the block is approached accurately and - if necessary - very slowly. To reduce the startup speeds, -> exact stop limits are defined for rapid traverse and feedrate. Exact stop limit After all the path axes reach their exact stop limits, the control system reacts as if they have reached the end point exactly.
  • Page 196 Glossary Geometry Description of a -> workpiece in the -> workpiece coordinate system. Geometry axis Geometry axes are used to describe a 2- or 3-dimensional range in the workpiece coordinate system. Global main program/subprogram Each global main program/subprogram can be stored only once under its name in the directory.
  • Page 197 Glossary Inclined axis Fixed angular interpolation with allowance for an inclined infeed axis or grinding wheel by specifying the angle. The inclined axes are programmed and displayed in the Cartesian coordinate system. Inclined surface machining The "Inclined surface machining" function supports drilling and milling operations on workpiece surfaces that are inclined with reference to the coordinate planes of the machine.
  • Page 198 Glossary Interpolator Logical unit of the -> NCK which can be used to determine the intermediate values for the movements of the individual axes to be executed on the basis of the target positions specified in the part program. Interpolatory compensation Interpolatory compensation is a means of compensating the leadscrew error (SSFK) and measuring system error (MSF) that result from the production process.
  • Page 199 Glossary Languages The texts of the user interface, system messages and alarms are available in five system languages: English, German, French, Italian and Spanish. The user can always select two of the languages listed in the control system. Leadscrew error compensation Compensation for the mechanical inaccuracies of a spindle involved in the feed movement.
  • Page 200 Glossary Machining channel The channel structure can be used to reduce downtime by executing motional sequences simultaneously. Thus, for instance, the gantry of a loader can execute its movements during the machining. In this case, the CNC functions as an autonomous control system, which performs operations like decoding, block preparation and interpolation independently.
  • Page 201 Glossary Metric units system Standardized system of length units in millimeters, meters, etc. Mirroring Mirroring changes the sign of the coordinate value of a contour with reference to an axis. Mirroring can be executed simultaneously for several axes. Mode group All axes/spindles are assigned at a randomly specified time to a single channel.
  • Page 202 Glossary NURBS Motion control and path interpolation are executed in the control system internally on the basis of NURBS (non-uniform rational B splines). Thus, there is a standard procedure (SINUMERIK 840D) for all operating modes as an internal control function. The scope of the implementation of individual solutions (OEM applications) for the SINUMERIK 840D was developed for machine manufacturers, who want to create their own user interfaces or who want to integrate process-oriented functions in the control system.
  • Page 203 Glossary Part program management The "part program management" function can be organized according to the -> workpieces. The number of programs and data to be managed depends on the capacity of the control memory and can also be configured via machine data settings. A name consisting of a maximum of 16 alphanumeric characters can be assigned to each file (programs and data).
  • Page 204 Glossary PLC programming The PLC is programmed using the STEP 7 software. The STEP 7 programming software is based on the WINDOWS standard operating system and contains the functionality of STEP 5 programming with innovative enhancements and developments. Polar coordinates A coordinate system, in which the position of a point in the plane is defined with a defined axis from the perspective of its distance from the coordinate origin and the angle formed by the radius vector.
  • Page 205 Glossary Programmable logic control Programmable logic control systems (PLC) are electronic control systems whose functions are stored in the control system as program. Hence, the structure and wiring do not depend on the control functions. Programmable logic control systems are designed exactly like a computer, i.e.
  • Page 206 Glossary REPOS 1. Repositioning to the contour, triggered by the operator REPOS can be used to reset the tool to the interruption point with direction keys. 2. Programmed repositioning to the contour A selection of approach strategies is available in the form of program commands: Approaching the interruption point, approaching the starting block, approaching the last block, approaching a point on the path between block start and interruption point.
  • Page 207 Glossary S7 configuration "S7 configuration" is a tool for defining the parameters of modules. "S7 configuration" can be used to set different -> parameter sets of the -> CPU and the I/O modules in the -> programming device. These parameters are loaded to the CPU. S7-300 bus The S7-300 bus is a serial data bus that supplies the appropriate voltage to the modules, and that is used by these modules for data interchange.
  • Page 208 Glossary programmable function keys (softkeys) are assigned to certain functions that are defined via the software. Software limit switch The limits of the traversing range of an axis is defined with software limit switches and this prevents the carriage from coming in contact with the hardware limit switches. Two pairs of values can be assigned per axis, and these can be activated separately via the ->...
  • Page 209 Glossary Subprogram A sequence of instructions of a -> part program which can be called multiple times with various output parameters. Subprograms are always called from the main programs. Subprograms can be locked to prevent unauthorized export and impermissible viewing. -> Cycles are subprograms from the perspective of type.
  • Page 210 Glossary Teach-in Teach-in is a means of creating and correcting part programs. The individual program blocks can be input via the keyboard and executed immediately. The positions approached with the direction keys or the handwheel can also be stored. Additional information such as G functions, feedrates or M functions can be entered in the same block.
  • Page 211 Glossary User memory All programs and data, such as part programs, subprograms, comments, tool offsets, work offsets/frames, as well as channel and program user data, can be stored in the shared CNC user memory. User-defined variables Users have the option of defining variables for their own purposes in the -> part program or in a data block (global user data).
  • Page 212 Glossary Working area Three-dimensional zone in which the tool tip can be moved due to the physical design of the machine. See also -> Protection zone. Workpiece The part that is produced/machined on the machine tool. Workpiece contour Programmed contour of the -> workpiece to be made/machined. Workpiece coordinate system The origin of the workpiece coordinate system is the ->...
  • Page 213: Index

    Index Absolute/incremental dimensioning, 46 G code Additional function, 65 Display, 8 Automatic coordinate system, 40 G00, 11, 17, 18, 147 Automatic return to reference point for rotary axes, 31 Linear interpolation, 18 G01, 18, 147 G02, 21, 147 G02, G03, 19, 25 G02.2, 147 Basic coordinate system, 36, 37 G03, 21, 147...
  • Page 214 Index G31, P1 - P4, 121 G89, 96, 148 G33, 109, 147 G90, 147 G40, 147 G90, G91, 46 G40, G41, G42, 57 G91, 147 G41, 147 G92, 37, 149 G42, 147 G92.1, 38, 149 G43, 147 G93, 15, 147 G43, G44, G49, 54 G94, 15, 147 G44, 147...
  • Page 215 Index Scaling, 48 Second additional function, 68 Operating modes Siemens mode, 7 Switching over, 7 Simple call, 125 Skip block, 10 Skip level, 137 Special functions, 135 Path feed, 11 Specification of several M functions in one block, 68 Polar coordinates, 115...

This manual is also suitable for:

Sinumerik 840di slSinumerik 828dSinumerik 802d sl

Table of Contents