Operation and Programming 11/2005 Edition sinumerik SIEMENS SINUMERIK 801 Turning SINUMERIK 801 Document Structure User Documentation: Operation and Programming Turning Technical Documentation: Start-Up Turning User Documentation: Diagnostics Guide Turning SINUMERIK 801 Operation and Programming Turning Valid for Control system SINUMERIK 801 11.2005 Edition Introduction 1 Turning On, Reference Point Approach 2 Setting Up 3 Manually Controlled Mode 4 Automatic Mode 5 Part Programming 6 Services and Diagnosis 7 Programming 8 Cycles 9 SINUMERIK (R) Documentation Key to editions The editions listed below have been published prior to the current edition. The column headed "Note" lists the amended sections, with reference to the previous edition. Marking of edition in the "Note" column: A ... ... B ... ... C ... ... New documentation. Unchanged reprint with new order number. Revised edition of new issue. Edition Order No. Note 2005.11 A5E00702070 A Trademarks SIMATIC(R), SIMATIC HMI(R), SIMATIC NET(R), SIMODRIVE(R), SINUMERIK(R), and SIMOTION(R) are registered trademarks of SIEMENS AG. Other names in this publication might be trademarks whose use by a third party for his own purposes may violate the registered holder. Copyright Siemens AG 2005. All right reserved Exclusion of liability The reproduction, transmission or use of this document or its contents is not permitted without express written authority. Offenders will be liable for damages. All rights, including rights created by patent grant or registration of a utility model, are reserved. We have checked that the contents of this document correspond to the hardware and software described. Nonetheless, differences might exist and we cannot therefore guarantee that they are completely identical. The information contained in this document is reviewed regularly and any necessary changes will be included in the next edition. We welcome suggestions for improvement. (c) Siemens AG, 2005 Subject to technical changes without notice. Siemens-Aktiengesellschaft. SINUMERIK 801 Safety Guidelines This Manual contains notices intended to ensure your personal safety, as well as to protect products and connected equipment against damage. Safety notices are highlighted by a warning triangle and presented in the following categories depending on the degree of risk involved: Danger ! Indicates an imminently hazardous situation which, if not avoided, will result in death or serious injury or in substantial property damage. Warning ! Indicates a potentially hazardous situation which, if not avoided, could result in death or serious injury or in substantial property damage. Caution ! Used with safety alert symbol indicates a potentially hazardous situation which, if not avoided, may result in minor or moderate injury or in property damage. Caution Used without safety alert symbol indicates a potentially hazardous situation which, if not avoided, may result in property damage. Notice Indicates important information relating to the product or highlights part of the documentation for special attention. Qualified person The unit may only be started up and operated by qualified person or persons. Qualified personnel as referred to in the safety notices provided in this document are those who are authorized to start up, earth and label units, systems and circuits in accordance with relevant safety standards. Proper use Please observe the following: Warning ! The unit may be used only for the applications described in the catalog or the technical description, and only in combination with the equipment, components and devices of other manufacturers as far as this is recommended or permitted by Siemens. This product must be transported, stored and installed as intended, and maintained and operated with care to ensure that it functions correctly and safely. SINUMERIK 801 Operation and Programming-- Turning I Contents Contents SINUMERIK 801 Operator Panel OP 1. 3. Selecting/starting a part program - "Machine" operating area .......................................... Block search - "Machine" operating area .................................................................. Stopping/aborting a part program - "Machine" operating area ....................................... Repositioning after interruption - "Machine" operating area ............................................. 4-1 4-1 4-4 4-5 5-1 5-4 5-5 5-6 5-7 Part Programming ......................................................................................................... 6-1 Entering a new program - "Program" operating area ................................................... 6-3 Editing a part program - "Program" operating area ...................................................... 6-4 Programming support ............................................................................................. 6-7 Vertical menu ...................................................................................................... 6-7 Cycles ............................................................................................................... 6-8 Contour ............................................................................................................... 6-9 Free softkey assignment ....................................................................................... 6-24 Services and Diagnosis ................................................................................................ 7.1 7.2 8. Jog mode - "Machine" operating area ........................................................................ Assigning the handwheel.......................................................................................... MDA mode (Manual Data Input) - "Machine" operating area .......................................... Automatic Mode ............................................................................................................ 6.1 6.2 6.3 6.3.1 6.3.2 6.3.3 6.3.4 7. 3-1 Entering tools and tool offsets ................................................................................. 3-1 Creating a new tool ................................................................................................ 3-3 Tool compensation data .......................................................................................... 3-4 Determining the tool offsets .................................................................................... 3-5 Entering/modifying the zero offset ........................................................................... 3-7 Determining the zero offset .................................................................................... 3-8 Programming the setting data - "Parameters" operating area ....................................... 3-10 R parameters - "Parameters" operating area ............................................................ 3-12 Manually Operated Mode ............................................................................................. 5.1 5.2 5.3 5.4 6. 2-1 Setting Up........................................................................................................................... 4.1 4.1.1 4.2 5. 1-1 Screen Layout ...................................................................................................... 1-1 Operating areas ................................................................................................... 1-4 Overview of the most important softkey functions ......................................................... 1-5 Pocket calculator ................................................................................................... 1-6 Coordinate systems ............................................................................................. 1-10 Turning On and Reference Point Approach .................................................................. 3.1 3.1.1 3.1.2 3.1.3 3.2 3.2.1 3.3 3.4 4. III Introduction .................................................................................................................. 1.1 1.2 1.3 1.4 1.5 2. .................................................................. Data transfer via the RS232 Interface ........................................................................ Diagnosis and start-up - "Diagnostics" operating area ................................................... Programming ............................................................................................................... 8.1 8.1.1 8.1.2 8.1.3 8.1.4 8.1.5 Fundamentals of NC programming ........................................................................... Program structure ................................................................................................ Word structure and address .................................................................................... Block structure ...................................................................................................... Character set ...................................................................................................... Overview of instructions .......................................................................................... SINUMERIK 801 Operation and Programming-- Turning 7-1 7-1 7-8 8-1 8-1 8-1 8-2 8-3 8-5 8-6 III Contents 8.2 8.2.1 8.2.2 8.2.3 8.2.4 8.2.5 8.3 8.3.1 8.3.2 8.3.3 8.3.4 8.3.5 8.3.6 8.3.7 8.3.8 8.3.9 8.3.10 8.4 8.4.1 8.4.2 8.4.3 8.5 8.5.1 8.5.2 8.6 8.6.1 8.6.2 8.6.3 8.6.4 8.6.5 8.6.6 8.6.7 8.6.8 8.7 8.8 8.9 8.9.1 8.9.2 8.9.3 8.9.4 8.10 9. Cycles ........................................................................................................................... 9.1 9.1.1 9.1.2 9.2 9.3 9.4 9.5 9.6 9.7 9.8 9.9 IV Position data ...................................................................................................... Absolute/incremental dimensions: G90, G91 ............................................................ Metric/inch dimensions: G71, G70 ........................................................................... Radius/diameter dimensions: G22, G23 .................................................................. Programmable zero offset: G158 ........................................................................... Workpiece clamping - settable zero offset: G54 to G57, G500, G53 .............................. Axis movements ................................................................................................ Linear interpolation at rapid traverse: G0 .................................................................. Linear interpolation at feedrate: G1 ........................................................................ Circular interpolation: G2, G3 ................................................................................. Circular interpolation via intermediate point: G5 ......................................................... Thread cutting with constant lead: G33 ..................................................................... Fixed-point approach: G75 .................................................................................... Reference point approach: G74 .............................................................................. Feedrate F ......................................................................................................... Exact stop / continuous path mode: G9, G60, G64 ................................................... Dwell time: G4 ................................................................................................... Spindle movements ............................................................................................. Spindle speed S, directions of rotation ..................................................................... Spindle speed limitation: G25, G26 ........................................................................ Spindle positioning: SPOS .................................................................................... Special turning functions ....................................................................................... Constant cutting rate: G96, G97 .............................................................................. Rounding, chamfer ............................................................................................. Tool and tool offset ............................................................................................. General notes ................................................................................................... Tool T ............................................................................................................... Tool offset number D ............................................................................................. Selection of tool radius compensation: G41, G42 ...................................................... Behavior at corners: G450, G451 ........................................................................... Tool radius compensation OFF: G40 ........................................................................ Special cases of tool radius compensation ............................................................... Example of tool radius compensation ..................................................................... Miscellaneous function M ....................................................................................... Arithmetic parameters R ....................................................................................... Program branches ................................................................................................ Labels - destination for program branches ............................................................... Unconditional program branches ........................................................................... Conditional branches .......................................................................................... Example of program with branches ........................................................................ Subroutine technique .......................................................................................... General Information about Standard Cycles ............................................................... Overview of Cycles ................................................................................................ Error messages and error handling in cycles ............................................................... Drilling, counter boring - LCYC82 .............................................................................. Deep hole drilling - LCYC83 ................................................................................. Tapping with compensating chuck - LCYC840 ............................................................ Boring - LCYC85 ................................................................................................ Recess cycle - LCYC93 ....................................................................................... Undercut cycle - LCYC94 .................................................................................... Stock removal cycle - LCYC95 .............................................................................. Thread cutting - LCYC97 ....................................................................................... 8-13 8-13 8-14 8-15 8-16 8-17 8-18 8-18 8-19 8-20 8-23 8-24 8-27 8-28 8-28 8-29 8-31 8-32 8-32 8-33 8-34 8-35 8-35 8-37 8-39 8-39 8-40 8-41 8-46 8-48 8-49 8-50 8-52 8-53 8-54 8-56 8-56 8-57 8-58 8-60 8-61 9-1 9-1 9-1 9-2 9-4 9-6 9-10 9-12 9-14 9-18 9-20 9-25 SINUMERIK 801 Operation and Programming-- Turning SINUMERIK 801 Operator Panel OP LCD NC keys MCP area Key definition NC keyboard area Machine area key Cursor UP (with shift: page up) Recall key Cursor DOWN (with shift: page down) Softkey Cursor LEFT Area switchover key Cursor RIGHT ETC key Selection key/toggle key Acknowledge alarm Delete key (backspace) SPACE (INSERT) Vertical menu SINUMERIK 801 Operation and Programming-- Turning V Shift key ENTER / input key ... Numerical keys (with shift for alternative assignment) ... Alphanumeric keys (with alternative assignment) shift MCP (Machine Control Panel) area Chuck clamping (with LED) Spindle override 100 Chuck clamping internally / Chuck clamping externally (with LED) Spindle override minus (with LED) Chuck unclamping (with LED) X axis, plus direction Manual tool change (with LED) X axis, minus direction Manual lubrication (with LED) Z axis, plus direction Manual coolant (with LED) Z axis, minus direction AUTOMATIC (with LED) RAPID TRAVERSE OVERLAY SINGLE BLOCK (with LED) SPINDLE START LEFT Counterclockwise direction MANUAL DATA (with LED) SPINDLE STOP Increment (with LED) SPINDLE START RIGHT Clockwise direction VI JOG (with LED) RESET REFERENCE POINT (with LED) NC STOP Feedrate override plus (with LED) NC START SINUMERIK 801 Operation and Programming-- Turning for Contents Feedrate override 100 LED POK (Power OK), green Feedrate override minus (with LED) LED ERR (Error), red Spindle override plus (with LED) LED DIA (Diagnostics), yellow Emergency Stop button (option) SINUMERIK 801 Operation and Programming-- Turning VI 1 Introduction 1.1 Screen layout 1 2 3 4 7 5 6 13 8 14 15 9 10 11 12 Fig.1-1 Screen layout The abbreviations on the screen stand for the following: Table 1-1 Explanation of display elements Display Element 1 Active operating area 2 Program status 3 Operating mode Abbreviation MA PA PR DI DG STOP RUN RESET Jog MDA Auto SINUMERIK 801 Operation and Programming-- Turning Meaning Machine Parameter Programming Services Diagnosis Programm stopped Program running Program aborted Manual traverse Manual input with automatic function Automatic 1-1 Introduction Display Element Abbreviation Meaning SKP Skip block Program blocks marked by a slash in front of the block number are ignored during program execution. DRY Dry run feed Traversing movements are executed at the feed specified in the Dry Run Feed setting data. ROV Rapid traverse override The feed override also applies to rapid feed mode. SBL Single block with stop after each block When this function is active, the part program blocks are processed separately in the following manner: Each block is decoded separately, the program is stopped at the 4 end of each block. The only exception are thread blocks without dry run feed. In this case, the program is stopped only when the Status display end of the current thread block is reached. SBL can only be selected in the RESET state. M1 Programmed stop When this function is active, the program is stopped at each block in which the miscellaneous function M01 is programmed. In this case, the message "Stop M00/M01 active" appears on the screen. PRT Program test 1...1000 Incremental mode INC If the control is in the Jog mode, incremental dimension is displayed instead of the active program control function. Stop: No NC Ready 1 2 Stop: EMERGENCY STOP active 3 Stop: Alarm active with stop 4 Stop: M0/M01 sctive 5 Stop: Block ended in SBL mode 6 Stop: NC STOP active 7 Wait: Read-in enable missing 8 Wait: Feed enable missing 9 Wait: Dwell time active 10 5 Wait: Auxiliary function acknowl. missing 11 Wait: Axis enable missing 12 Operational Wait: Exact stop not reached 13 message 14 Wait: For spindle 15 16 Wait: Feed override to 0% 17 Stop: NC block incorrect 18 19 20 Wait: Block search active 21 Wait: No spindle enable 22 Wait: Axis feed value 0 23 6 Program name 1-2 SINUMERIK 801 Operation and Programming-- Turning Introduction Display Element Abbreviation 7 Alarm line 8 Meaning The alarm line is only displayed if an NC or PLC alarm is active. The alarm line contains the alarm number and reset criterion of the most recent alarm. Working window and NC display Working window 9 Recall symbol 10 Menu extension This symbol is displayed above the softkey bar when the operator is in a lower-level menu. When the Recall key is pressed, you can return to the next-higher menu without saving data. ETC is possible If this symbol appears above the softkey bar, further menu functions are provided. These functions can be activated by the ETC key. 11 Softkey bar 12 Vertical menu 13 If this symbol is displayed above the softkey bar, further menu functions are provided. When the VM key is pressed, these functions appear on the screen and can be selected by Cursor UP and Cursor DOWN. Here the current actual feedrate override is shown. Feedrate override 14 Here the current spindle gear stage 1...5 is shown. Gear box 15 Here the current spindel speed override is shown. Spindel speed override SINUMERIK 801 Operation and Programming-- Turning 1-3 Introduction 1.2 Operating areas The basic functions are grouped in the CNC into the following operating areas: Operating areas Machine Parameters Program Executing part programs Manual control Editing program data Services Creating part programs Reading in / reading out data Diagnostics Alarm display Start-up Fig.1-2 SINUMERIK 801operating areas Switching between the operating Press the "Machine" area key for direct access to the "Machine" operating area. Use the area switching key to return from any operating area to the main menu. Press the area switching key twice to return to the previous operating area. After turning on the control system, the Machine operating area will appear by default. Display contrast adjustment The display contrast can be adjusted via relevant softkeys Display Bright and Display Darker (see "Section7.2 Diagnosis and start-up - "Diagnostics" operating area" for detailed descriptions) or alternatively via CNC front panel directly. By pressing Shift key + Cursor Left key, display will be brighter. By pressing Shift key + Cursor Right key, display will be darker. 1-4 + Pressing both keys, display will be brighter; + Pressing boths keys, display will be darker. SINUMERIK 801 Operation and Programming-- Turning Introduction 1.3 Machine Overview of the most important softkey functions Parameter Program Services Service display Alarms Display bright. Data In Start Diagnosis Machine data Error log show Selection Open Display darker Data Out Start Programs New Start-up Copy Delete R Parameter Tool correction Setting data Zero offset Program control Zoom block Search Act.val WCS Act.val WCS Zoom block Zoom M funct Zoom act.val Zoom G funct Axis feed Axis feed X=0 Zoom act.val Zoom G funct Axis feed. Hand wheel Memory info Rename Act.val WCS Zoom M funct Zoom act.val. Z=0 * : Pressing on "RCS on" switches the softkey to "RCS off" SINUMERIK 801 Operation and Programming-- Turning RCS on * 1-5 Introduction 1.4 Pocket calculator This function can be activated for all input fields intended for entry of numerical values by means of the "=" character. To calculate the required value, you can use the four basic arithmetic operations, and the functions sine, cosine, squaring, as well as the square root function. If the input field is already loaded with a value, this function writes the value in the input line of the pocket calculator. Fig. 1-3 Pocket calculator Permissible characters The following characters are permitted for input: + Value X plus value Y Value X minus value Y * Value X multiplied with value Y / Value X divided by value Y S Sine function The value X in front of the input cursor is replaced by the value sin(X). C Cosine function The value X in front of the input cursor is replaced by the value cos(X). Q Square function The value X in front of the input cursor is replaced by the value X2. R Square root function The value X in front of the input cursor is replaced by the value X. Calculation examples Task 100 + (67*3) sin(45) cos(45) 42 4 Input 100+67*3 45 S -> 0.707107 45 C -> 0.707107 4 Q -> 16 4 R -> 2 The calculation is carried out by pressing the Input key. The softkey function OK will accept the result into the input field, quitting the calculator automatically. To calculate auxiliary points on a contour, the calculator provides the following functions: 1-6 z calculating the tangential transition between a circle sector and a straight line z moving a point in a plane z converting polar coordinates into Cartesian coordinates z adding the second end point of a contour section `straight line - straight line' given via angular interrelation. SINUMERIK 801 Operation and Programming-- Turning Introduction These functions are directly linked with the input fields of the programming support. Any values in this input field are written by the pocket calculator into the input line, and the result is automatically copied into the input fields of the programming support. Softkeys This function is used to calculate a point on a circle. The point results from the angle of the created tangent and the direction of rotation of the circle. Fig.1-4 Calculation of a point on a circle Enter the circle center, the angle of the tangent and the radius of the circle. The function switches the screen form from diameter programming to radius programming. Use softkey G2 / G3 to define the direction of rotation of the circle. The abscissa and ordinate values are calculated; the abscissa is the first axis of the plane, and the ordinate is the second axis of the plane. If plane G18 is active, the abscissa is the Z axis, and the ordinate is the X axis. The value of the abscissa is copied into that input field from which the pocket calculator function has been called, and the ordinate value into the next following input field. Example Calculating the intersection point between the circle sector straight line . Given: Circle center point: Ongoing angle of the straight line: SINUMERIK 801 Operation and Programming-- Turning and the Radius: 10 Z 147 X103 -45 1-7 Introduction Result: Z = 154.071 X = 117.142 The function calculates the missing end point of the contour section straight line - straight line, with the second straight line standing vertically on the first straight line. The following values of the straight line are known: Straight line 1: Start point and rise angle. Straight line 2: Length and one end point in the Cartesian coordinate system Fig.1-5 The function switches the screenform from diameter programming to radius programming. The function chooses the given coordinate of the end point. The value of ordinate and/or abscissa is given. The second straight line is rotated in clockwise direction or, with refer to the first straight line, rotated by 90 degrees in counter-clockwise direction. The function chooses the appropriate setting. The missing end point is calculated. The value of the abscissa is copied into that input field from which the pocket calculator function has been called, and the ordinate value into the next following input field. 1-8 SINUMERIK 801 Operation and Programming-- Turning Introduction Fig.1-6 The drawing above must be added by the value of the circle center point to be able to calculate the intersection point between the circle sector of the straight line. The missing coordinate of the center point is calculated by means of the pocket calculator function , since the radius in the tangential transition stands vertical on the straight line. Calculating M1 in section 1: In this section, the radius stands on the straight line section rotated in counter-clockwise direction. Use the softkeys and to select the given constellation . Enter the coordinates, the pole point P1, the rise angle of the straight line, the given ordinate value and the circle radius as the length. Fig.1-7 Result: Z = 24.601 X = 60 SINUMERIK 801 Operation and Programming-- Turning 1-9 Introduction 1.5 Coordinate systems Right-handed, rectangular coordinate systems are used for machine tools. Such systems describe the movements on the machine as a relative motion between tool and workpiece. Fig.1-8 Specification of the axis directions to one another; coordinate system when programming for turning. Machine coordinate The orientation of the coordinate system on the machine depends on the particular machine type. It can be turned to various positions. system (MCS) Fig. 1-9 Machine coordinates/axes on a turning machine The origin of this coordinate system is the machine zero. All axes are in the zero position at this point. This point is merely a reference point determined by the machine manufacturer. It does not need to be approachable. The traversing range of the machine axes can be negative. 1-10 SINUMERIK 801 Operation and Programming-- Turning Introduction Workpiece coord- The coordinate system described above (see Fig. 1-8) is also used to describe inate system (WCS) the geometry of a workpiece in the workpiece program. The workpiece zero can be freely selected in the Z axis by the programmer. In the Z axis, the zero point corresponds to the turning center. X W o rk p ie c e W o rk p ie c e W Z W o rk p ie c e W - w o rk p ie c e z e ro Fig.1-10 Workpiece coordinate system Workpiece clamping To machine the workpiece, it is clamped in the machine. The workpiece must be aligned such that the axes of the workpiece coordinate system are in parallel with the machine axes. Any resultant offset of the machine zero to the workpiece zero is determined in the Z axis and entered in a specially provided data area for the settable zero offset. This offset is activated during the NC program execution by means, for example, of a programmable G54 (see Section "Workpiece Clamping - Settable Zero Offset ..."). X M ac h in e W o rk p ie c e X W ork p iec e W M Z M ac h in e z .B . Z W ork p iec e G 54 Fig.1-11 Workpiece on the machine Current workpiece coordinate system An offset in relation to the workpiece coordinate system can be generated by means coordinate system of the programmable zero offset G158. The result is the current workpiece (see Section "Programmable Zero Offset: G158"). SINUMERIK 801 Operation and Programming-- Turning 1-11 Introduction 1-12 SINUMERIK 801 Operation and Programming-- Turning Turning On and Reference Point Approach 2 Notice Before you switch on the SINUMERIK and the machines, you should also have read the machine documentation, since turning on and reference point approach are machine-dependent functions. Operating sequence First switch on the power supply of the CNC and of the machine. After the control system has booted, you are in the "Machine" operating area, in the Jog operating mode. The Reference point approach window is active. Fig.2-1 Jog Ref basic screen Reference-point approach can only be executed in the Jog Ref mode. Activate the "Approach reference point" function by selecting the Ref key on the machine control panel area. In the "Reference point approach" window (Fig. NO TAG), it is displayed whether or not the axes have to be referenced. Axis has to be referenced Axis has reached the reference point SINUMERIK 801 Operation and Programming-- Turning 2-1 Turning On and Reference Point Approach ... Press the direction keys. The axis does not move if you select the wrong direction. Approach the reference point in each axis successively. You can quit the function by selecting another operating mode (MDA, Automatic or Jog). 2-2 SINUMERIK 801 Operation and Programming-- Turning Setting Up 3 Preliminary remarks Before you can use the CNC, set up the machine, tools, etc. on the CNC by: z entering the tools and tool offsets z entering/modifying the zero offset z entering the setting data 3.1 Entering tools and tool offsets Functionality The tool offsets consist of several data that describe the geometry, wear and tool type. Each tool has a defined number of parameters depending on the tool type. Each tool is identified by its own tool number (T number). See also Section 8.6 "Tool and Tool Offset". Operating sequences This function opens the Tool Compensation Data window, which contains the offset values of the currently active tool. If you select another tool using the "<<T " or "T>>" softkeys, the setting remains when you quit the window. Parameter Parameter Tool Corr. Fig.3-1 Tool compensation data window SINUMERIK 801 Operation and Programming-- Turning 3-1 Setting Up Softkeys Select next lower or next higher edge number. << D D >> Select next lower or next higher tool. << T T >> Get Comp. Determine length compensation values. Use the ETC key to extend the softkey functions. Reset edge All edge compensation values are reset to zero. New edge Creates a new edge and loads it with the appropriate parameters. Delete tool The new edge is created for the currently displayed tool; it is automatically assigned the next higher edge number (D1 - D9). Max. 16 edges (in total) can be stored in the memory. Deletes the tool compensation data of all edges of the selected tool. New tool Search 3-2 Creates new tool compensation data for a new tool. Note: Max. 8 tools can be created. Pressing this softkey opens the dialog box and the overview of the tool numbers assigned. Enter the tool number you search for in the input window and start search with OK. If the searched tool exists, the search function opens the tool offset data box. SINUMERIK 801 Operation and Programming-- Turning Setting Up 3.1.1 Creating a new tool Operating sequence Press this softkey to create a new tool. New tool Pressing this softkey opens the input window and an overview of the tool numbers assigned. Fig 3-2 New Tool window ... Enter the new T number (maximal only three digits) and specify the tool type. OK Press OK to confirm your entry; the Tool Compensation Data window is opened. SINUMERIK 801 Operation and Programming-- Turning 3-3 Setting Up 3.1.2 Tool compensation data The tool compensation data are divided into length and radius compensation data. The list is structured according to the tool type. Fig.3-3 Tool compensation data window Operating sequence Enter the offsets by Positioning the cursor on the input field to be modified, ... Entering value(s) And confirming your entry by pressing Input or a cursor selection. 3-4 SINUMERIK 801 Operation and Programming-- Turning Setting Up 3.1.3 Determining the tool offsets Functionality This function can be used to determine the unknown geometry of a tool T. Prerequisite The appropriate tool has been changed. In JOG mode, approach a point on the machine, from which you know the machine coordinates, with the edge of the tool.This can be a tool with a known position. The machine coordinate value can be split into two components: stored zero offset and offset. Procedure Enter the offset value into the intended Offset field. Then select the required zero offset (e.g. G54) or G500 if no zero offset is to be calculated. These entries must be made for each selected axis (see Fig. 3-6). Please note the following: The assignment of length 1 or 2 to the axis depends on the type of tool (turning tool, drill). For the turning tool, the offset value for the X axis is a diameter dimension. Using the actual position of point F (machine coordinate), the offset entry and the selected zero offset Gxx (position of the edge), the control system can calculate the assigned compensation value of length 1 or length 2 for the preselected axis. Note: You can also use a zero offset already determined (e.g. G54 value) as the known machine coordinate. In this case, approach to workpiece zero with the edge of the tool. If the edge stands directly at the workpiece zero, the offset value is zero. F - to ol ca rrier refe ren c e p oin t M - m a c h in e z ero W - w o rk pie c e ze ro T h e o ffse t v alu e o f th e X a xis is a d ia m e te r v alu e . W o rk p ie c e M a c h in e M W Offset X Length 1=? A ctu a l p os itio n X F A ctu a l p os itio n Z p o s itio n Z M a c h in e L e n g th 2 =? G xx O ffs e t Fig.3-4 Determination of the length compensation values using the example of a cutting tool SINUMERIK 801 Operation and Programming-- Turning 3-5 Setting Up F - w o rkp ie c e re fe re n c e p o in t M -m a c h in e z e ro W -w o rk p ie c e z e ro X M a c h in e M W o rk p ie c e A c tu a l p o s itio n Z W F Z M a c h in e G xx O ffs e t L e n g th 1 = ? Fig.3-5 Determination of length compensation value using the example of a drill: Length 1/Z axis Operating sequence Get Comp. Select the softkey Get Comp. The window Compensation values opens. Fig.3-6 Compensation values window z Enter offset if the tool edge cannot approach the zero point Gxx. If you work without zero offset, select G500 and enter offset. z When the softkey Calculate is pressed, the control system determines the searched geometry length 1 or 2 depending on the preselected axis. This geometry is calculated on the basis of the approached actual position, the selected Gxx function and the entered offset value. The determined compensation value is stored by pressing the softkey OK. 3-6 SINUMERIK 801 Operation and Programming-- Turning Setting Up 3.2 Entering/modifying the zero offset Functionality The actual-value memory and thus also the actual-value display are referred to the machine zero after the reference-point approach. The workpiece machining program, however, refers to the workpiece zero. This offset must be entered as the zero offset. Operating sequences Parameter Use the Parameter and Zero Offset softkeys to select the zero offset. An overview of settable zero offsets appears on the screen . Zero offset Fig.3-7 Zero offset window Position the cursor bar on the input field to be altered, ... enter value(s). The next zero offset overview is displayed by Page down. G56 and G57 are now displayed. Return to next-higher menu level, without saving the zero offset values. Softkeys Determine Use this function to determine the zero offset with refer to the coordinate origin of the machine coordinate system. When you have selected the tool, which you want to use for measuring, you can set the appropriate conditions in the Determine window. SINUMERIK 801 Operation and Programming-- Turning 3-7 Setting Up A window with the programmed zero offset is displayed. The values in the window cannot be edited. Programmed Displays the sum of all active zero offsets. The values cannot be edited. Sum 3.2.1 Determining the zero offset Prerequisite You have selected the window with the corresponding zero offset (e.g. G54) and the axis for which you want to determine the offset. F F - to o l s u p p o rt re fe re n ce p o in t M - m a ch in e z e ro W - w o rk p ie c e ze ro X M a c h in e A c tu a l Z p o s itio n W o rk p ie c e M W L e n g th 2 Z M a c h in e Z e ro o ffs e t Z = ? Fig.3-8 Determining the zero offset for the Z axis Approach z A zero offset can only be determined with a known tool. Enter the active tool in the dialog box. Press OK to take over the tool; the Determine window is then opened. z The selected axis appears in the Axis area. The actual position of the tool support reference point (MCS) associated to the axis is displayed in the adjacent field. z D number 1 is displayed for the tool edge. If you have entered the valid offsets for the used tool under a D number other than D1, enter that D number here. z The stored tool type is displayed automatically. z The effective length compensation value (geometry) is displayed. z Select the sign (-, +) for calculating the length offset, or select "without" taking the length offset into account. A negative sign subtracts the length offset value from the actual position. The zero offset in the selected axis is the result. z Offset If the tool does not reach zero, an offset can be entered to specify an additional offset to a point which can be approched by the tool. 3-8 SINUMERIK 801 Operation and Programming-- Turning Setting Up Fig.3-9 Select Tool screen form Fig.3-10 Determine zero offset form Next UFrame Softkey can be used to select the zero offsets G54 to G57. The selected zero offset is displayed on the selected softkey. Next Axis Selects the next axis. Calculate Pressing the Calculate softkey calculates the zero offset. OK Press the OK softkey to quit the window. SINUMERIK 801 Operation and Programming-- Turning 3-9 Setting Up 3.3 Programming the setting data - "Parameters" operating area Functionality Use the setting data to define the settings for the operating states. These can also be modified if necessary. Operating sequences Parameter Sett. data Use the Parameter and Setting Data softkeys to select Setting Data. The Setting Data softkey branches to another menu level in which various control options can be set. Fig.3-11 Setting data main screen Use the paging keys to position the cursor on the desired line within the display areas. ... Enter the new value in the input fields. Use Input or the cursor keys to confirm. Softkeys Jog data This function can be used to change the following settings: Jog feed Feed value in Jog mode If the feed value is zero, the control system uses the value stored in the machine data. Spindle Spindle speed Direction of rotation of the spindle 3-10 SINUMERIK 801 Operation and Programming-- Turning Setting Up Spindle data Minimum / Maximum Limits for the spindle speed set in the Max. (G26)/Min. (G25) fields must be within the limit values specified in the machine data. Programmed (LIMS) Programmable upper speed limitation (LIMS) at constant cutting speed (G96). Dry feed Dry-run feedrate for dry-run operation (DRY) Start angle Start angle for thread cutting (SF) The feedrate you enter here is used in the program execution instead of the programmed feed during the Automatic mode when the Dry-Run Feedrate is active (see Program Control, Fig. 5-3). A start angle representing the starting position for the spindle is displayed for thread cutting operations. It is possible to cut a multiple thread by altering the angle and repeating the thread cutting operation. SINUMERIK 801 Operation and Programming-- Turning 3-11 Setting Up 3.4 R parameters - "Parameters" operating area Functionality All R parameters (arithmetic parameters) that exist in the control system are displayed on the R Parameters main screen as a list (see also Section 8.8 "Arithmetic Parameters /R Parameters"). These can be modified if necessary. Fig.3-12 R Parameters window Operating sequence Parameters Use the Parameter and R Parameter softkeys. R Parameters To position the cursor on the input field that you want to edit. ... Enter value(s). Press Input or use the cursor keys to confirm. 3-12 SINUMERIK 801 Operation and Programming-- Turning Manually Operated Mode 4 Preliminary remarks The manually operated mode is possible in the Jog and MDA mode. In the Jog mode, you can traverse the axes, and in the MDA mode, you can enter and execute individual part program blocks. 4.1 Jog mode - Functionality "Machine" operating area In Jog mode, you can z traverse the axes and z set the traversing speed by means of the override switch, etc. Operating sequences Use the Jog key on the machine control panel area to select the Jog mode. ... Press the appropriate key for the X or Z axis to traverse the desired axis. As long as the direction key is pressed and hold down, the axes traverse continuously at the speed stored in the setting data. If this setting is zero, the value stored in the machine data is used. ... If necessary use the override button key to set the traversing speed. It can be adjusted by settable increments: 0%, 1%, 2%, 4%, 6%, 8%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 75%, 80%, 85%, 90%, 95%, 100%, 105%, 110%, 115%, 120%. If you press the Rapid Traverse Overlay key at the same time, the selected axis is traversed at rapid traverse speed as long as both keys are pressed down. SINUMERIK 801 Operation and Programming-- Turning 4-1 Manually Operated Mode In the Incremental Feed operating mode, you can use the same operating sequence to traverse the axis by settable increments. The set increment is displayed in the display area. Jog must be pressed again to cancel the Incremental Feed. The Jog main screen displays position, feed and spindle values, including the feedrate override and spindle override, gear stage status as well as the current tool. Fig.4-1 Jog main screen Press softkey ETC displayed on the screen above, system will branch into the following screen: Press softkey "X=0" or "Z=0", the value of the current coordinate system displayed on the screen will be automatically changed to zero. You may make coordinate system switches by switching between "RCS on"/"RCS off" (see figure below for "RCS off"). 4-2 SINUMERIK 801 Operation and Programming-- Turning Manually Operated Mode Notice: "RCS off"/"RCS on" is valid for corresponding cooredinate screen only. Softkey functions "X=0", "Z=0" and "RCS off"/"RCS on" are not available In AUTO or MDA mode If the system returns back to JOG mode again from AUTO or MDA mode, the screen last stored in JOG mode will be automatically restored. Parameters Table 4-1 Description of parameters in the Jog main screen Parameter MCS X Z +X- Z Act. mm Repos offset Spindle S rpm Feed F mm/min Tool Actual feedrate override Actual spindle override Gear stage Explanation Display of addresses of existing axes in machine coordinate system (MCS). If you traverse an axis in the positive (+) or negative (-) direction, a plus or minus sign appears in the respective field. No axis is displayed, if the axis is in position. The current position of the axes in the MCS or WCS is displayed in these fields. If the axes are traversed in the Jog mode in the Program Interrupted condition, the distance traversed by each axis in relation to the break point is displayed in this column. Display of actual value and setpoint of spindle speed Display of path feed actual value and setpoint Display of currently active tool with the current cutting edge number Display of current feedrate override Display of current spindlel speed override Display of current gear stage in the machine Softkeys Handwheel Call the Handwheel window. SINUMERIK 801 Operation and Programming-- Turning 4-3 Manually Operated Mode Axis feed Call the Axis Feed or Interp. Feed window. Interp./ feed Use this softkey to change between the Axis Feed window and the Interp. Feed window. The softkey label changes to Interp. feed when the Axis/Feed window is opened. Act. val. WCS Act.val. MCS Zoom act.val. The actual values are displayed as a function of the selected coordinate system. There are two different coordinate systems, i.e. the machine coordinate system (MCS) and the workpiece coordinate system (WCS). The softkey changes between MCS and WCS. When doing this, the softkey label changes as follows: z The values of the machine coordinate system are selected, the softkey label changes to Act. val. WCS. z When the workpiece coordinate system is selected, the label changes to Act. val. MCS. Enlarged view of actual values. Pressing Recall key, return to the next-higher menu level. 4-4 SINUMERIK 801 Operation and Programming-- Turning Manually Operated Mode 4.1.1 Assigning the handwheel An axis is assigned to the respective handwheel and becomes active as soon as you press OK. The increment size for the handwheel is also selectable with the key . Operating Sequence In Jog mode, call the Handwheel window. Hand- wheel After the window has opened, all axis identifiers are displayed in the Axis column and also appear in the softkey bar. Fig.4-2 Handwheel window WCS MCS Deselect The WCS/MCS softkey is used to select the axes from the machine or workpiece coordinate system for assignment to the handwheel. The current setting is displayed in the Handwheel window. The assignment you have made is reset for the selected handwheel. SINUMERIK 801 Operation and Programming-- Turning 4-5 Manually Operated Mode 4.2 MDA mode (Manual Data Input) - "Machine" operating area Functionality You can create and execute a part program block in the MDA mode. Contours that require several blocks (e.g. roundings, chamfers) cannot be executed/programmed. Caution This mode is protected by the same safety interlocks as fully automatic mode. ! Furthermore, the MDA mode is subject to the same prerequisites as the fully automatic mode. Before NC-start of an input NC-program in the mode MDA is to wait till the message "Block store active" displays on the screen. Operating sequences Use the MDA key in the machine control panel area to select the MDA mode. Fig.4-3 MDA main screen ... Enter a block using the control keyboard. The entered block is executed by pressing NC START. The block cannot be executed while machining is taking place. 4-6 SINUMERIK 801 Operation and Programming-- Turning Manually Operated Mode Parameters Table 4-2 Description of the parameters in the MDA working window. Parameter MCS X Z +X -Z Act. value mm Spindle S rpm Feed F Tool Edit window Actual feedrate override Actual spindle override Gear stage Explanation Display of existing axes in MCS or WCS. If you traverse an axis in the positive (+) or negative (-) direction, a plus or minus sign appears in the respective field. No sign is displayed if the axis is in position. The current position of the axes in the MCS or WCS is displayed in these fields. Display of actual value and setpoint of spindle speed. Display of path feed actual value and setpoint in mm/min or mm/rev. Display of currently active tool with the current tool edge number (T..., D...). In the Stop or Reset program state, an edit window is provided for input of the part program block. Display of current feedrate override. Display of current spindlel speed override. Display of current gear stage in the machine. Softkeys Act.val. WCS The actual values for the MDA mode are displayed as a function of the selected coordinate system. Act.val. MCS There are two different coordinate systems, i.e. the machine coordinate system (MCS) and the workpiece coordinate system (WCS). Zoom act.val. Enlarged view of the actual values. Menu extension. Axis feed Display of Axis Feed or Interp. Feed window. Interp. feed This softkey can be used to change between the two windows. The softkey label changes to Interp. Feed when the Axis Feed window is opened. Zoom G funct. The G function window contains all active G functions whereby each G function is assigned a group and has its own fixed positon in the window. Further G functions can be displayed using the Page Up or Page Down keys together with Shift key. Select Recall to quit the window. SINUMERIK 801 Operation and Programming-- Turning 4-7 Manually Operated Mode Zoom block The window shows the currently edited block full length. Zoom M Opens the M function window to display all active M functions of the block. 4-8 SINUMERIK 801 Operation and Programming-- Turning Automatic Mode 5 Functionality In Automatic mode, part programs can be executed fully automatically, i.e. this is the operating mode for standard processing of part programs. Preconditions The preconditions for executing part programs are: z Reference point approached. z You have already stored the required part program in the control system. z You have checked or entered the necessary offset values, e.g. zero offsets or tool offsets. z The required safety interlocks are activated. Operating sequence Use the Automatic key to select the Automatic mode. The Automatic main screen appears that displays the position, feed, spindle, override and tool values, the gear stage status as well as the current block. Fig.5-1 Automatic main screen SINUMERIK 801 Operation and Programming-- Turning 5-1 Automatic Mode Parameters Table 5-1 Description of the parameters in the working window Parameter Explanation MCS Display of existing axes in MCS or WCS. X Z +X If you traverse an axis in the positive (+) or negative (-) - Z direction, a plus or minus sign appears in the respective field. No sign is displayed if the axis is in position. Act. val. The current position of the axes in the MCS or WCS is mm displayed in these fields. Distance The remaining distance to be traversed by these axes in the to go MCS or WCS is displayed in these fields. Spindle S Display of actual value and setpoint of spindle speed rpm Feed F Display of path feed actual value and setpoint mm/min or mm/rev Tool Display of currently active tool with the current cutting edge number (T..., D...). Current The block display contains the current block. The block is block output in one line only and truncated if necessary. Actual Display of current feedrate override feedrate override Actual Display of current spindlel speed override spindle override Gear stage Display of current gear stage in the machine Softkeys Progr. control The window to select Program Control (e.g. skip block, program test) appears on the screen. Zoom block The window shows the previous, current and next block full length. In addition, the names of the current program or subroutine are displayed. Search Use the Block Search function to jump to the desired point in the program. Interr. point The cursor is positioned to the main program block of the breakpoint ("interrupt point"). The search target is automatically set in the subroutine levels. Contin. search Continue Search 5-2 SINUMERIK 801 Operation and Programming-- Turning Automatic Mode Start B search The Start B Search softkey starts the search process in which the same calculations are carried out as in normal program mode, but without axis movements. The block search can be canceled by NC Reset. Act.val. WCS The values of the machine or workpiece coordinate system are selected. The softkey label changes to Act. val. WCS or Act. val. MCS. Act.val. MCS Zoom act.val. Enlarged view of actual values. Menu extension. Axis feed Interp. feed When pressing these softkeys, the Axis Feed or Interp. Feed window appears. This softkey can be used to change between the windows. The softkey label changes to Interp. feed when the Axis Feed window is opened. Execute f. ext. An external program is transferred into the control system via the RS232 interface and executed immediately by pressing NC START. Zoom G Funkt. Opens the G Function window to display all active G functions. The G Function window contains all active G functions. Each G function is assigned to a group and has a fixed position in the window. More G functions can be displayed by pressing the PAGE UP or PAGE DOWN keys together with Shift key. DEMO Fig.5-2 Active G functions window Zoom M funct. Opens the M Function window to display all active M functions. SINUMERIK 801 Operation and Programming-- Turning 5-3 Automatic Mode 5.1 Selecting/starting a part program - "Machine" operating area Functionality The control system and the machine must be set up before the program is started. Please note the safety instructions provided by the machine manufacturer. Operating sequence Use the Automatic key to select the Automatic mode. Programs An overview of all programs stored in the control system is displayed. Position the cursor bar on the desired program. Select Progr. control Use the Select softkey to select the program for execution. The selected program name appears in the Program Name screen line. If necessary you can now make settings on program execution. The following program control functions can be activated and deactivated: Fig.5-3 Program control window The part program is executed when NC START is pressed. 5-4 SINUMERIK 801 Operation and Programming-- Turning Automatic Mode 5.2 Block search - "Machine" operating area Operating sequence Precondition: The desired program has already been selected (cf. Section 5.1), and the control system is in the reset state. Search The block search function can be used to advance the program up to the desired point in the part program. The search target is set by positioning the cursor directly on the desired block in the part program. DEMO.M Fig.5-4 Block search window Start B search This function starts program advance and closes the Search window. Result of the search The desired block is displayed in the Current Block window. SINUMERIK 801 Operation and Programming-- Turning 5-5 Automatic Mode 5.3 Stopping/aborting a part program - "Machine" operating area Functionality Part programs can be stopped and aborted. Operating Sequence The execution of a part program can be interrupted by selecting NC STOP. The interrupted program can be continued by NC START. The current program can be aborted by pressing RESET. When you press NC START again, the aborted program is restarted and executed from the beginning. 5-6 SINUMERIK 801 Operation and Programming-- Turning Automatic Mode 5.4 Repositioning after interruption - "Machine" operating area Functionality After a program interruption (NC STOP), you can move the tool away from the contour in the manual mode (Jog). The control system stores the coordinates of the breakpoint ("interrupt point"). The path differences traversed by the axes are displayed. Operating sequence Select the Automatic mode. Search Interr. Point Start B search Open the Block Search window to load the breakpoint. The breakpoint is loaded. The routine is adjusted to the start position of the interrupted block. A block search to the breakpoint is started. Continue execution of the program by NC START. SINUMERIK 801 Operation and Programming-- Turning 5-7 Part Programming Functionality 6 This Section describes how to create a new part program. The standard cycles can also be displayed provided you have the required access authorization. Operating sequence Programs You are in the main menu. The Programming main screen appears. Fig.6-1 Programming main screen When the Program operating area is selected for the first time, the directory for part programs and subroutines is automatically selected (see above). Softkeys Select Open This function selects the program highlighted by the cursor for execution. The program is started on next NC START. Opens the files selected by the cursor for editing. Menu extension New Use the New softkey to create a new program. A window appears in which you are prompted to enter program name and type. After you have confirmed your inputs by OK, the program editor is called, and you can enter part program blocks. Select RECALL to cancel this function. Copy Use the Copy softkey to copy the selected program into another program. SINUMERIK 801 Operation and Programming-- Turning 6-1 Part Programming Delete The program highlighted by the cursor is deleted after the system has requested confirmation of the delete operation. Press OK to confirm the Delete request and RECALL to cancel it. Rename When you select the Rename softkey, a window appears in which you can rename the program that you have already highlighted by the cursor. After you have entered the new name, confirm your rename request by OK or cancel by RECALL. The Programs softkey can be used to change to the program directory. Memory Info 6-2 When you press this softkey, the totally available NC memory (in kbytes) is displayed. SINUMERIK 801 Operation and Programming-- Turning Part Programming 6.1 Entering a new program - "Program" operating area Functionality This Section describes how to create a new file for a part program. A window appears in which you are prompted to enter program name and type. DEMO Fig.6-2 New program input screen form Operating sequences Program Press the New softkey. A dialog window appears in which you enter the new main program or subroutine program name. The extension .MPF for main programs is automatically entered. The extension .SPF for subroutines must be entered with the program name. New ... OK You have selected the Program operating area. The Program Overview window showing the programs already stored in the CNC is displayed on the screen. Enter the new name. Complete your input by selecting the OK softkey. The new part program file is generated and is now ready for editing. The creation of the program can be interrupted by RECALL; the window is then closed. SINUMERIK 801 Operation and Programming-- Turning 6-3 Part Programming 6.2 Editing a part program - "Program" operating area Functionality Part programs or sections of a part program can only be edited if not being executed. DEMO.MPF Fig. 6-3 Editor window Operating sequence Programs You are in the main menu and have selected the Programs operating area. The program overview appears automatically. Use the paging keys to select the program you wish to edit. open Pressing the open softkey calls the editor for the selected program and pulls down the editor window. The file can now be edited. All changes are stored immediately. Softkeys User-assignable softkeys You can assign predefined functions to the softkeys 1 - 4 (see Section 6.3.4 "User-Assignable Softkeys"). The softkeys are assigned process-specific functions by the control manufacturer. Contour The contour functions are described in Section 6.3 "Programming Support". Menu extension Edit Mark 6-4 This function selectes section of text up to the current cursor position. SINUMERIK 801 Operation and Programming-- Turning Part Programming Delete Copy Past Recomp. cycles This function deletes the selected text. This function copies selected text to the clipboard. This function inserts text from the clipboard at the current cursor position. For re-compilation, the cursor must stand on the cycle call line in the program. The required parameters must be arranged directly in front of the cycle call and may not be separated by instruction or comment lines. The function decodes the cycle name and prepares the screen form with the respective parameters. If there are any parameters are outside the validity range, the function automatically uses standard values. When the screen form has been quitted, the original parameter block is automatically replaced by the corrected one. Note: Only automatically generated blocks can be recompiled. Note To carry out these functions outside the Edit menu, it is also possible to use the key combinations <SHIFT> and softkey 1 softkey 2 softkey 3 softkey 4 Select Delete block Copy block Insert block. Menu extension Assign SK This function can be used to change the assignment of the softkey functions 1 - 4. For more detail description refer to Section NO TAG. Search The softkeys Search and Contin. Search can be used to search for a string chain in the program file displayed on the screen. Text Type the text you wish to find in the input line and start the Search operation by selecting the OK softkey. If the character string you have specified cannot be found in the program file, an error message appears that must be acknowledged with OK. You can exit the dialog box without starting the search by selecting RECALL. Line no. Type the line number in the input line. The search is started by pressing OK. You can quit the dialog box without starting the search by selecting RECALL. Contin. Search This function can be used to continuously search through the file to find another character string that matches the target string. SINUMERIK 801 Operation and Programming-- Turning 6-5 Part Programming Close 6-6 This function stores the changes in the file system and automatically closes the file. SINUMERIK 801 Operation and Programming-- Turning Part Programming 6.3 Programming support Functionality 6.3.1 The programming support facility contains various help levels simplifying the programming of part programs without constraining your choice of inputs. Vertical menu Functionality The vertical menu is displayed in the program editor. The vertical menu allows you to quickly insert certain NC instructions into the part program. Operating sequence You are in the program editor. Press the VM key and select the desired instruction from the list. Fig.6-4 Vertical menu Lines that end in "..." contain a collection of NC instructions. You can list these instructions by pressing the Input key or entering the number of the line. Fig.6-5 Vertical menu Use the paging keys to browse through the list. SINUMERIK 801 Operation and Programming-- Turning 6-7 Part Programming Confirm your entry by pressing Input. Alternatively, the number of the lines from 1 to 7 can be entered to select instructions and take them over into the part program. 6.3.2 Cycles Functionality You can either specify your own machining cycles on assigning parameters or, alternatively, use input forms in which you set all the necessary R parameters. Operating sequences LCYC 93 The screen forms are selected either with the available softkey functions or by means of the vertical menu. LCYC 94 Fig.6-6 The cycle support provides a screen form in which you can fill in all the necessary R parameters. A graphic and a context-sensitive help will assist you to fill in the form. OK 6-8 Select the OK softkey to transfer the generated cycle call to the part program. SINUMERIK 801 Operation and Programming-- Turning Part Programming 6.3.3 Contour Functionality The control system provides you with various contour forms to assist you in creating part programs quickly and reliably. Enter the necessary parameters in the screen forms and confirm your inputs. The contour screen forms can be used to program the following contour elements and contour sections: z Straight section with specification of end point or angle z Circle sector with specification of center point / end point z Circle sector with specification of center point / opening angle z Circle sector with specification of center point / radius z Straight line/straight line contour section with specification of angle and end point z Straight line/circle contour section with tangential transition; calculated from angle, redius and end point z Straight line/circle contour section with any transition; calculated from angle, center point and end point z Circle/straight line contour section with tangential transition; calculated from angle, radius and end point z Circle/straight line contour section with any transition; calculated from angle, center point and end point. z Circle/circle contour section with tangential transition; calculated from center point, radius and end point z Circle/circle contour section with any transition; calculated from center point and end positon z Circle - straight line - circle contour section with tangential transitions z Circle - circle - circle contour section with tangential transitions Fig.6-7 Softkeys The sofkey functions branch to the contour elements. Programming aid for programming straight line sections. SINUMERIK 801 Operation and Programming-- Turning 6-9 Part Programming Fig.6-8 Enter the end point of the straight line. G0/G1 The block is traversed either at rapid traverse or with the programmed feedrate. The end point can be entered either in the absolute dimension, as an incremental dimension (referred to the starting point) or in polar coordinates. The current setting is displayed in the interactive dialog screenform. The end point can also be specified by a coordinate and the angle between the 1st axis and the straight line. If the end point is determined using polar coordinates, the length of the vector between pole and end point is required, as well as the angle of the vector with reference to the pole. When using the possibility, first a pole must be set. Fig.6-9 OK 6-10 Pressing the OK softkey takes over the block into the part program and displays the Additional Functions form in which you can extend the block by adding more instructions. SINUMERIK 801 Operation and Programming-- Turning Part Programming Additional functions Fig.6-10 Additional functions screen form Enter additional commands in the fields. The commands can be separated by means of blanks, commas or semi-colons. This screen form is available for all contour elements. OK The OK softkey transfers the commands to the part program. Select RECALL if you wish to exit the interactive form without saving the values. The dialog screen form is used to create a circular block by means of the end and center point coordinates. Fig.6-11 Enter the center point coordinates in the input fields. To enter the coordinates, there are three variants: G2/G3 z absolute z incremental z polar This softkey changes the direction of rotation from G2 to G3. G3 appears on the display. When you press the softkey again, you will return to G2. OK Pressing the OK softkey will accept the block into the part program and will offer additional commands in another interactive screenform. SINUMERIK 801 Operation and Programming-- Turning 6-11 Part Programming This function is intended to calculate the intersection point between two straight lines. Specify the coordinates of the end point of the second straight line and the angles of the straight line. For the coordinate value, the toggle key can be used to choose between absolute, incremental or polar coordinates. If the starting point cannot be selected based on the previous blocks, the operator must set the starting point. Fig. 6-12 Calculating the intersection point between two straight lines Table 6-1 Input in the interactive screenform End point of straight line 2 Angle of straight line 1 Angle of straight line 2 Feedrate E Specify the end point of the straight line. A1 The angle must be specified in the CCW direction in the range between 0 and 360 degrees. The angle must be specified in the CCW direction in the range between 0 and 360 degrees. Feedrate A2 F This function is used to calculate the tangential transition between a straight line and a circle sector. The straight line must be described by starting point and angle. The circle must be described by the radius and by the end point. To calculate intersection points with any transition angles, the POI softkey function will display the center point coordinates. Fig. 6-13 Straight line - circle with tangential transition 6-12 SINUMERIK 801 Operation and Programming-- Turning Part Programming Table 6-2 Input in the interactive screenform Circle end point Straight line angle Circle radius Feed Circle center point G2/G3 G90/G91 E The end point of the circle must be specified. A The angle is specified in the CCW direction in the range between 0 and 360 degrees. Input field for the circle radius. Input field for the interpolation feed. If there is no tangential transition between the straight line and the circle, the circle center must be known. The circle center point is specified depending on the calculation method (absolute or incremental dimension / polar coordinates) selected in the previous block. R F M This softkey is used to switch the direction of rotation from G2 to G3. G3 is displayed on the screen. Pressing this softkey once more will switch the display back to G2. The end point can be acquired either in the absolute dimension, incremental dimension or as polar coordinates. The current setting is displayed in the interactive screenform. You can choose between tangential or any transition. POI If the starting point cannot be determined from the previous blocks, the starting point must be set by the operator. The screenform will generate a straight line and a circle block from the entered data. If there are several intersection points, the operator must select the desired intersection point from a dialog. If a coordinate was not entered, the program tries to caluclate it from the existing information. If there are several possibilities, the operator must choose an appropriate possibility from the dialog. This function is used to calculate the tangential transition between a circle sector and a straight line. The circle sector must be described by the parameters starting point and radius, and the straight line must be described by the parameters end point and angle. Fig. 6-14 Tangential transition SINUMERIK 801 Operation and Programming-- Turning 6-13 Part Programming Table 6-3 Input in the interactive screenform Straight line end point E Center point M Circle radius R Angle of straight line 1 A Feedrate G2/G3 POI F Enter the end point of the straight line either in absolute, incremental or polar coordinates. The center point of the circle must be entered either in absolute, incremental or polar coordinates. Input field for the circle radius. The angle is specified in the CCW direction in the range between 0 and 360 degrees. Input field for the interpolation feedrate. This softkey is used to switch the direction of rotation from G2 to G3. G3 is displayed on the screen. Pressing this softkey once more will switch back to G2; the display will change to G2. Use this softkey to choose between tangential or any transition. If the starting point cannot be generated from the previous blocks, the starting point must be set by the operator. The screenform will generate both a straight line and a circle block based on the entered data. If there are several intersection points, the desired intersection point must be selected by the operator from a dialog box. This function is used to caluclate the tangential transition between two circle sectors. Circle sector 1 must be described by the parameters starting point and center point, and circle sector 2 must be described by the parameters end point and radius. To avoid an overdetermination, input fields not needed are hidden. Fig. 6-15 Tangential transition Table 6-4 Input in the interactive screenform End point of circle 2 E 1st and 2nd geometry axis of the plane Center point of circle 1 M1 1st and 2nd geometry axis of the plane Radius of circle 1 R1 Radius input field Center point of circle 2 M2 1st and 2nd geometry axis of the plane Radius Kreis 2 R2 Radius input field Feedrate F Input field for the interpolation feedrate The points are specified depending on the previsouly selected caluclation method (absolute, incremental dimension or polar coordinates). Input fields no longer needed are hidden. If a value is omitted in the center point coordinates, the radius must be entered. 6-14 SINUMERIK 801 Operation and Programming-- Turning Part Programming G2/G3 POI This softkey is used to switch the direction of rotation from G2 to G3. G3 is displayed on the screen. Pressing this softkey once more will switch back to G2; the display will change to G2. Use this softkey to choose between tangential or any transition. If the starting point cannot be generated from the previous blocks, the starting point must be set by the operator. The screenform will generate two circle blocks based on the entered data. Selecting the intersection point If there are several intersection points, the desired intersection point must be selected by the operator from a dialog box. Fig. 6-16 POI 1 The contour is drawn using intersection point 1. Fig. 6-17 Selection of intersection point 1 POI 2 The contour is drawn using intersection point 2. SINUMERIK 801 Operation and Programming-- Turning 6-15 Part Programming Fig. 6-18 Selection of intersection point 2 OK Pressing this softkey will accept the intersection point of the displayed contour into the part program. This function is used to insert a straight line tangentially between two circle sectors. The sectors are determined by their center points and their radii. Depending on the selected direction of rotation, different tangential intersection points result. Use the screenform, which will appear, to enter the parameters center point and radius for sector 1, as well as the parameters end point, center point and radius for sector 2. In addition, the direction of rotation must be selected for the circles. The current setting is displayed in a help screen. The end and center points can be acquired either as absolute, incremental or polar coordinates. The OK function will calculate three blocks from the given values and will insert them into the part program. Fig. 6-19 Screenform for calculating the contour section `circle - straight line circle' 6-16 SINUMERIK 801 Operation and Programming-- Turning Part Programming Table 6-5 Input in the interactive screenform End point E 1st and 2nd geometry axes of the plane If no coordinates are entered, the function will provide the intersection point between the inserted circle sector and sector 2. 1st and 2nd geometry axes Center point M1 of circle 1 Radius of R1 Input field for radius 1 circle 1 Center point M2 1st and 2nd geometry axes of the plane of circle 2 Radius of R2 Input field for radius 2 circle 2 Feedrate F Input field for the interpolation feedrate If the starting point cannot be determined based on the previous blocks, the appropriate coordinates must be entered in the "Starting point" screenform. The screenform will generate both a straight line and two circle blocks based on the entered data. G2/G3 Use this softkey to define the direction of rotation of the two circle sectors. You can choose between Sector 1 Sector 2 G2 G3, G3 G2, G2 G2 and G3 G3 The end point and the center points can be acquired either in absolute, incremental or polar coordinates. The current setting is displayed in the interactive screenform. Example DIAMON Fig. 6-20 Setting the starting point Given: R1 R2 R3 M1 SINUMERIK 801 Operation and Programming-- Turning 50 mm 100 mm 40mm Z -159 X 138 6-17 Part Programming M2 M3 Z -316 X 84 Z -413 X 292 Starting point: The point X = 138 and Z = -109 mm (-159 -R50) is supposed as the starting point. Fig. 6-21 Setting the starting point After the starting point has been confirmed, the used to calculate the contour section - - screenform can be . Use softkey 1 to set the direction of rotation of the two circle sectors and to fill out the parameter list. The end point can be left open. Fig. 6-22 Calling the screenform Fig. 6-23 Result of step 1 After you have filled out the screenform, press OK to quit the screenform. The intersection points are caluclated and the two blocks are generated. Since the end point has been left open, the intersection point between the and the circle sector straight line subsequent contour definition. is also the starting point for the Now, call the screenform for calculating the contour section again. The end point of the contour section are the coordinates Z=-413.0 and X=212. 6-18 SINUMERIK 801 Operation and Programming-- Turning Part Programming Fig. 6-24 Calling the screenform Fig. 6-25 Result of step 2 This function is used to insert a circle sector tangentially between two adjacent circle sectors. The circle sectors are described by their center points and their circle radii. The inserted sector is described by its radius. Use the screenform to enter the parameters center point and radius for circle sector 1, and the parameters end point, center point and radius for circle sector 2. in addition, the radius for the inserted circle sector 3 must be entered and the direction of rotation be defined. The end point and the center points can be acquired either as absolute, incremental or polar coordinates. The selected setting is displayed in a help screen. The OK function will caluclate three blocks from the given values and will insert them into the part program. Fig. 6-26 Screenform for calculating the contour section `circle - circle - circle' SINUMERIK 801 Operation and Programming-- Turning 6-19 Part Programming Table 6-6 Input in the dialog screenform End point E Center point of circle 1 Radius of circle 1 Center point of circle 2 Radius of circle 2 Radius of circle 3 Feedrate M1 R1 M2 R2 R3 F 1st and 2nd geometry axes of the plane If no coordinates are entered, the function provides the intersection point between the inserted circle sector and sector 2. 1st and 2nd geometry axes of the plane Input field for radius 1 1st and 2nd geometry axes of the plane Input field for radius 2 Input field for radius 3 Input field for the interpolation feed If the starting point cannot be deteremined from the previous blocks, the respective coordinates must be entered in the "Starting point" screenform. G2/G3 This softkey defines the direction of rotation of the three circles. It is possible to select between: Sector 1 G2 G2 G2 G2 G3 G3 G3 Inserted Sector G3 G2 G2 G3 G2 G3 G2 Sector 2 G2, G2, G3, G3, G2, G2, G3, Example DIAMON - G23 Fig.6-27 Given: 6-20 R1 R2 R3 R4 R5 M1 M2 M3 39 mm 69 mm 39 mm 49 mm 39 mm Z -111 X 196 Z -233 X 260 Z -390 X 162 SINUMERIK 801 Operation and Programming-- Turning Part Programming The coordinates Z -72, X 196 will be selected as the starting point. After you have confirmed the starting point, use the caluclate the contour section coordinates. - screenform to . The end point is left open, since the Use softkey 1 to set the direction of rotation of the two circles (G2 - G3 - G2) and to fill out the parameter list. Fig. 6-28 Setting the starting point Fig. 6-29 Screenform `circle - circle - circle' Fig.6-30 Result of step 1 In the second step, screenform is used to calculate the contour section . For calculation, select direction of rotation G2 - G3 - G2. Starting point is the end point of the first caluclation. SINUMERIK 801 Operation and Programming-- Turning 6-21 Part Programming Fig. 6-31 Screenform `circle - circle - circle' Fig. 6-32 Result of step 2 The result provided by the function is the intersection point between circle sector 4 and circle sector 5 as the end point. To calculate the tangential transition between line screenform is used. and , the circle-straight Fig. 6-33 Screenform `circle - straight line' 6-22 SINUMERIK 801 Operation and Programming-- Turning Part Programming Fig. 6-34 Result of step 3 This function is used to insert a circle sector (with tangential transitions) between two straight lines. The circle sector is described by the center point and the radius. The coordinates of the end point of the second straight line and, optionally, angle A2. The first straight line is described by the starting point and the angle A1. If the starting point cannot be determined from the previous blocks, the starting point must be set by the operator. Fig. 6-35 Straight line - circle - straight line Table 6-7 Input in the interactive screenform End point of straight line 2 E Enter the end point of the straight line. Circle center point Angle of straight line 1 M A1 Angle of straight line 2 A2 Feedrate F 1st and 2nd axes of the plane The angle must be specified in the CCW direction. The angle must be specified in the CCW direction. Input field for the feedrate End and center points can be specified either in absolute, incremental or polar coordinates. The screenform will generate a circle and two straight line blocks from the entered data. G2/G3 Use this softkey to switch the direction of rotation from G2 to G3. G3 is displayed on the screen. Pressing this softkey once more will switch back to G2; the display will change to G2. SINUMERIK 801 Operation and Programming-- Turning 6-23 Part Programming 6.3.4 Assign SK Free softkey assignment You can assign the softkeys various cycles or contours. To this aim, the softkeys 1 to 4 in the softkey bar in the Program operating area are provided. Once you have activated the Assign softkeys function, a list of all available cycles or contours appears on the screen. Fig.6-36 Position the cursor on the element you wish to assign. Press the desired softkey from 1 to 4 to assign them the desired element. The assignment you have made appears in the softkey bar under the selection list. OK 6-24 Confirm the assignment you have made by selecting the OK softkey. SINUMERIK 801 Operation and Programming-- Turning Services and Diagnosis 7.1 7 Data transfer via the RS232 Interface Functionality You can use the RS232 interface of the CNC to output data to an external data storage medium or to read in them from there. RS232 interface parameters have been fixed by the control system and cannot be changed. After you have selected the Services operating area, a list of all available part programs and subroutines appears on the screen. Fig.7-1 Service main screen Communication tool The RS232 communication tool WinPCIN shall be loaded onto the PC (you may download corresponding tool on website at: www.ad.siemens.com.cn/download/) and baudrate be set as 9600. For detailed information about baudrate setting and softeware tool version, see Fig. 7-2 and 7-3 below. SINUMERIK 801 Operation and Programming-- Turning 7-1 Services and Diagnosis Fig. 7-2 Fig.7-3 File types Provided the access authorization is set, files can be read in or read out via the RS232 interface. File type has been fixed as: RS232 text Baudrate: 9600 If the access authorization is set (cf. Technical Manual), the following data can be transmitted: 7-2 z Data -- Machine data -- Setting data -- Tool data -- R parameters -- Zero offsets -- Leadscrew error compensation z Part programs SINUMERIK 801 Operation and Programming-- Turning Services and Diagnosis -- Part programs -- Subroutines Operating Sequence Use the Service softkey to select the Services operating area. Service Softkeys Data In Start This key starts reading in data. DataOut Start This key starts reading out data to the PG/PC or another device. Error log A log is output for the transferred data. z For files to be output, it contains -- the file name and -- an error acknowledgement z For imported files, it contains -- the file name and the path specification -- an error acknowledgement Transmission messages: OK ERR EOF Time Out User Abort Error Com NC / PLC Error Error Data Error File Name no access right Transmission completed successfully End-of-file character received, but the archive file is not complete. Timeout monitoring is signaling an interruption in the transmission. Transmission aborted by Stop softkey Error at COM 1 NC error message Data errors 1. Files read in with/without leader or 2. Files transferred in tape format without file name The file name does not comply with NC name conventions. No access right for this function Show Display of the data that are amongst the data types marked with "...". Use this function to transfer individual files. SINUMERIK 801 Operation and Programming-- Turning 7-3 Services and Diagnosis 7.2 Diagnosis and start-up - "Diagnostics" operating area Functionality In the "Diagnosis" operating area, you can call service and diagnostic functions, set start-up switches, etc. Operating sequence Diagnosis Selecting the Diagnosis softkey will open the Diagnosis main screen. Fig.7-4 Diagnosis main screen Softkeys for diagnostic functions Alarms This window displays all pending alarms line by line, starting with the alarm with the highest priority. Alarm number, cancel criterion and error text are displayed. The error text refers to the alarm number on which the cursor is positioned. Explanations with regard to the screenform above: z Number The "Number" item displays the alarm number. The alarms are displayed in chronological sequence. z Cancel criterion The symbol of the key required to reset the alarm is displayed for every alarm. -- Switch the device off and on again. -- Press the RESET key. -- Press the "Acknowledge alarm" key. -- Alarm is reset by NC START. z Text The alarm text is displayed. Service display 7-4 The Service Axes window appears on the screen. SINUMERIK 801 Operation and Programming-- Turning Services and Diagnosis Service axes The window displays information about the axis drive. Fig. 7-5 The "Service Axes" window Notice "Servo trace" function is valid for machine manufacturers only. Machine manufacturer may select the "Servo trace" softkey on the screen of Fig.7-5 to branch to the corresponding "Servo trace" main screen. However, before entering this main screen, machine manufacturer password must first be input. Otherwise, system will prompt "Access Denied!" In addition, the Axis+ and Axis- softkeys are displayed. They can be used to call the values for the next or previous axis. Version Type This window contains the version numbers and the creation date of the individual CNC components. displays the control type SINUMERIK 801 Operation and Programming-- Turning 7-5 Services and Diagnosis Fig. 7-6 OEM Control type displays the OEM picture here. Softkeys for start-up functions Note See also Technical Manual Start-up The start-up function branches to the following softkey functions: Fig. 7-7 Start-up switch 7-6 Start-up switch You can assign the system power-up parameters various parameters. SINUMERIK 801 Operation and Programming-- Turning Services and Diagnosis ! Caution Changes in the start-up branch have a considerable influence on the machine. Fig. 7-8 NC Start-up Notice If the fuction "record of reference point" has been executed (with MD34210), do approach reference point again after system power up with saved data! OK Use the OK key to start the NC start-up. Return to the Start-up main screen without further action by RECALL. PLC status You can display information about the current states of PLC memory cells listed below; if desired they can be altered. It is possible to display 6 operands simultaneously. Inputs Outputs I Q Bit memories Timers Counters Data M Format T C V B H D SINUMERIK 801 Operation and Programming-- Turning Input byte (IBx), input word (Iwx), input double word (IDx) Output byte (Qbx), output word (Qwx), output double word (QDx) Memory byte (Mx), memory word (Mw), memory double word (MDx) Timer (Tx) Counter (Zx) Data byte (Vbx), data word (Vwx), data double word (VDx) Binary Hexadecimal Decimal Binary representation cannot be used for double words. Counters and timers are displayed in decimal format. 7-7 Services and Diagnosis Fig. 7-9 PLC status display There are further softkeys provided under this menu item. z Edit Cyclic updating of the values is interrupted. You can then edit the operand values. z Cancel Cyclic updating continues without the entered values being transferred to the PLC. z Accept The entered values are transferred to the PLC; cyclic updating continues. z Delete All operands are deleted. z Operand + The address of the operand can be incremented in steps of 1. z Operand - The address of the operand can be decremented in steps of 1. Click on ETC key on Fig. 7-7 to branch into the lower-level screen, then you may execute "Set password", "Delete password", "Change password" and "Save data" softkey functions. Set password Set password There is only one password level available for machine tool builders, i.e.: z 7-8 Manufacturer password SINUMERIK 801 Operation and Programming-- Turning Services and Diagnosis Fig. 7-10 Enter the password. If you do not know the password, you will not be granted access. The password is set when you press the OK softkey. You can return to the Start-up main screen without saving your input by selecting RECALL. Delete password The access authorization is reset. Change password Change password Fig. 7-11 With the access authorization, password can be changed. Use the softkeys to enter the new password and complete your input with OK. The system asks you to confirm the new password again. Press OK to complete the password change. You can return to the Start-up main screen without saving your input by RECALL. SINUMERIK 801 Operation and Programming-- Turning 7-9 Services and Diagnosis Save data Save data This function saves the contents of the volatile memory to a non-volatile memory area. Prerequisite: No program is currently being run. It is not allowed to perform any operating actions while saving data. Softkeys for service functions Machine data Machine data (see also Technical Manual) Fig.7-12 Changes to the machine data have a considerable influence on the machine. Incorrect parameter settings can result in irreparable damage to mechanical components. Units Effective ness General MD Axis MD 7-10 userdef M/s**2 U/s**3 S Kgm**2 MH Nm s A Vs So Cf Re Po User-defined Meters per second Revolutions per second Second Moment of inertia Inductivity Torque Microseconds Microamperes Microvolt seconds Effective immediately With confirmation Reset Power ON General machine data Open the General Machine Data window. Use the paging keys to page up and down. Axis-specific machine data Open the Axis-Specific Machine Data window. The softkey bar is extended by SINUMERIK 801 Operation and Programming-- Turning Services and Diagnosis the Axis + and Axis - softkeys. Fig.7-13 The data of the X axis is displayed. Search Search Enter the number or name of the machine data you want to find and press Input. The cursor jumps to the target data. Fig. 7-14 Continue search Axis + The search for the next number or name continues. The Axis + and Axis - softkeys are used to switch over to the machine data area of the next or previous axis. Axis - SINUMERIK 801 Operation and Programming-- Turning 7-11 Services and Diagnosis Active MD This softkey is used to activate the machine data marked with "cf". Display bright. When the screen as shown in Figure 7-4 is displayed, press ETC key to proceed to the next sub-screen, on which you will see softkey "Display bright "Display darker" as well as ""Change lang.". Press "Display bright" for more brightness. Display darker 7-12 This softkey can be used to adjust the brightness of the screen. SINUMERIK 801 Operation and Programming-- Turning Services and Diagnosis SINUMERIK 801 Operation and Programming-- Turning 7-13 8 Programming 8.1 Fundamentals of NC programming 8.1.1 Program structure Structure and contents The NC program consists of a sequence of blocks (see Table NO TAG). Each block constitutes a machining step. Instructions are written in a block in the form of words. The last block in the sequence contains a special word for the end of program: M2. Table 8-1 NC program structure Block Block Block Block Block Block Program names Word N10 N20 N30 N40 N50 Word G0 G2 G91 ... M2 Word X20 Z37 ... ... ... ... ... ... ... ; Comment ; 1st block ; 2nd block ; ... ; End of program Every program has its own program name. Note When generating the program, its name can be freely chosen provided the following conditions are complied with: z The first two characters must be letters. z Otherwise letters, digits or underscore may be used. z Do not use more than 8 characters. z Do not use separators (see Section "Character Set") Example: SHAFT52/ SINUMERIK 801 Operation and Programming-- Turning 8-1 Programming 8.1.2 Word structure and address Functionality/structure The word is an element of a block and is mainly a control instruction. The word (see Fig. (8-1) consists of z an address character The address character is generally a letter, z and a numerical value. The numerical value consists of a sequence of digits. A preceding sign or a decimal point can be added to this sequence for certain addresses. A positive sign (+) can be omitted. Word Address Value G1 Example: Explanation: Traverse with linear interpolation Word Address Value X-20.1 Path or end position for X axis: -20.1 mm Word Address Value F300 Feed: 300 mm/min Fig.8-1 word structure Several address characters A word may also contain several address letters. In such cases, however, an "=" sign must be inserted to assign the numerical value to the address letters. Example: CR=5.23 8-2 SINUMERIK 801 Operation and Programming-- Turning Programming 8.1.3 Block structure Functionality A block should contain all data required to execute a machining step. The block generally consists of several words and always ends with the end-of-block character "LF" (line feed). This character is automatically generated when the carriage return or Input key is pressed during typing. /N... Word1 Word2 BLANK ... BLANK Wordn BLANK ;Comment LF BLANK Block instructions Block number- stands in front of the instructions; Only if necessary, instead of "N", a colon ":" is used in main blocks Skip block, only if necessary, stands in the begining end-of-block character Only if necessary, stands at the end, separated from the rest of the block with ";" Total number of characters in a block: 127 Fig.8-2 Diagram of block structure Word sequence When a block contains more than one statement, the words in the block should be arranged in the following sequence: N... G... X... Y... Z... F... S... T... D... M... Note with regard to the block numbers Select the block numbers first in steps of 5 or 10. This will allow you to insert blocks later while retaining the ascending order of the block numbers. (No matter how big a block number is, it will not have any influence on the program executing sequence. Every program can be executed in an order of from top to down or in sequences marked by the block skipping symbol.) Block skipping (see Fig. 5-3) Program blocks that must not be executed during every program run can be marked with a slash " / " in front of the block number word. Block skipping is activated by means of an operator input or by the interface control (signal). A program section can be skipped by skipping several successive blocks with " / ". If block skipping is active during program execution, none of the blocks marked with " / " is executed. Any statements contained in such blocks are ignored. The program continues at the next block not marked. Comment, remark Comments (remarks) can be used to explain the staements in the blocks of a program. Comments are displayed together with the other contents of the block in the current block display. Note: Chinese comments (remarks) can be entered via a PC only. It's SINUMERIK 801 8-3 Operation and Programming-- Turning Programming impossible to enter Chinese comments (remarks) via the operator panel. Programming example N10 N20 N30 N50 G54 G94 F470 S20 D0 M3 N60 G0 G90 X100 Z200 N70 G1 Z185.6 N80 X112 /N90 X118 Z180 N100 X118 Z120 N110 X135 Z70 N120 X145 Z50 N130 G0 G90 X200 N140 M2 8-4 ;G&S Order No. 12A71 ;Pump part 17, Drawing No.: 123 677 ;Program created by Mr. Adam Dept.TV 4 ;Block can be skipped ;End of program SINUMERIK 801 Operation and Programming-- Turning Programming 8.1.4 Character set The following characters can be used for programming and are interpreted according to the following definitions: Letters A, B, C, D, E, F, G, H, I, J, K, L, M, N,O, P, Q, R, S, T, U, V, W X, Y, Z No distinction is made between upper-case and lower-case letters. Lower-case letters are therefore equivalent to upper-case letters. Digits 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Printable special characters ( ) [ ] < > : = / * + " _ . , ; % & ' $ ? ! Left round bracket Right round bracket Left square bracket Right square bracket Less than Greater than Main block, label termination Assignment, equals Division, block skip Multiplication Addition, positive sign Subtraction, negative sign Quotation marks Underscore (together with letters) Decimal point Comma, separator Start of comment Reserved, do not use Reserved, do not use Reserved, do not use Reserved, do not use Reserved, do not use Reserved, do not use Non-printable special characters End-of-block character LF Blank Separator between words, blank Tabulator Reserved, do not use. SINUMERIK 801 Operation and Programming-- Turning 8-5 Programming 8.1.5 Overview of instructions Address Meaning D Tool compensation number F G G0 G1 * G2 G3 G5 G33 8-6 Value assignment Information Programming 0 ... 9, integers only, Contains compensation data for a D... without sign particular tool T... ; D0->compensation values= 0, max. 9 D numbers for one tool Feedrate 0.001 ... 99 999.999 (in combination with G4, the dwell time is also programmed under F) G function Only specific integer (preparatory values function) Tool/workpiece path velocity F... in mm/min or mm/rev depending on whether G94 or G95 is programmed The G functions are divided into G G... groups. Only one G function of a G group can be programmed in any one block. A G function can be modal (until canceled by another function of the same group) or non-modal - it is only active for the block in which it is programmed. G group: Linear interpolation with rapid traverse 1: Motion commands G0 X... Z... (interpolation type) Linear interpolation with feed G1 X... Z... F... Circular interpolation in clockwise G2 X... Z... I... K... F... direction ;center point and end point G2 X... Z... CR=... F... ;Radius and end point G2 AR=... I... K... F... ;Angle of aperture and center point G2 AR=... X... Z... F... ;Angle of aperture and end point Circular interpolation in G3 .... ;otherwise counterclockwise direction as for G2 G5 X...Z... Circular interpolation via interpolation IX=...KZ=... F... point Thread cutting with constant pitch Modal G33 Z... K... SF=... ;Cylindrical thread G33 X... I... SF=... ;Cross thread G33 Z... X... K... SF=... ;Tapered thread, path greater in Z axis than in X axis G33 Z... X... I... SF=... ;Tapered thread, path greater in X axis than in Z axis SINUMERIK 801 Operation and Programming-- Turning Programming Address Meaning G4 Dwell time Value assignment G74 Reference point approach G75 Fixed point approach G158 Programmable offset G25 Lower spindle speed limit G26 Upper spindle speed limit G17 G18 * G40 * G41 (required for end face drilling) Z/X plane Tool radius compensation OFF Tool radius compensation left of contour Tool radius compensation right of contour Settable zero offset OFF 1st settable zero offset 2nd settable zero offset 3rd settable zero offset 4th settable zero offset Non-modal suppression of settable zero offset Exact positioning Continuous path mode Non-modal exact stop G42 G500 * G54 G55 G56 G57 G53 Information 2: Special movements, non modal 3: Write to memory non modal Programming G4 F... or G4 S.... ;in separate block G74 X...Z... ;in separate block G75 X... Z... ;in separate block G158 X...Z... ;in separate block G25 S... ;in separate block G26 S... ;in separate block 6: Plane selection 7: Tool radius compensation modal 8: Settable zero offset modal 9: Suppression of settable zero offset non modal 10: Approach behaviour G60 * modal G64 G9 11: Non-modal exact positioning non-modal G601 * Exact positioning window fine for G60, 12: Exact positioning window G9 modal G602 Exact positioning window coarse for G60, G9 13: Dimensions in inches/metric values G70 Dimensions in inches modal G71 * Dimensions in metric values 14: Absolute/incremental dimension G90 * Absolute dimensions modal G91 Incremental dimensions 15: Feedrate/spindle G94 Feedrate F in mm/min modal G95 * Feedrate F in mm/revolution of spindle G96 Constant cutting speed for turning ON G96 S... LIMS=... (F in mm/rev, S in m/min) F... G97 Constant cutting speed for turning OFF G450 * Transition circle 18: Behaviour at corners with tool radius compensation G451 Point of intersection modal 29: Radius/diameter input G22 Radius input modal G23 * Diameter input The functions marked with an * are active from the beginning of the program (with the version of the control supplied unless otherwise programmed). SINUMERIK 801 Operation and Programming-- Turning 8-7 Programming Address I K L M M0 M1 M2 M30 M17 M3 M4 M5 M6 M40 M41 M45 M70 M... N : P 8-8 Meaning Value assignment Interpolation parameter 0.001 ... 99 999.999 thread: 0.001 ... 2000.000 Information Programming For X axis, meaning depends on see G2, G3 and whether G2,G3->circle center or G33 G33->thread pitch has been programmed For Z axis, otherwise as for I see G2, G3 and G33 Interpolation parameter 0.001 ... 99 999.999 thread: 0.001 ... 2000.000 Subroutine, name and 7 decimal places, Instead of a user-defined name call integers only, without L1 ...L9999999 can also be sign selected; this also calls the subroutine in its own block Caution: L0001 is not the same as L1 Miscellaneous function 0 ... 99 E.g. to trigger actions integers only, no sign such as "coolant ON", max. 5 M functions in one block, Programmed stop Machining is stopped at the end of a block containing M0, operation is continued with "START" Optional stop As for M0, but operation only stops if a special signal has been given End of program Programmed in the last block to be executed Reserved, do not use Reserved, do not use Spindle clockwise rotation Spindle counterclockwise rotation Spindle stop Tool change Only if activated with M6 in machine data, otherwise tool change performed directly with T command Automatic gear stage switchover bis Gear stage 1 to gear stage 5 Reserved, do not use Other M functions This functionality is not predefined in the control and can therefore be assigned by the machine manufacturer Block number - 0 ... 9999 9999 Can be used with a number to subblock integer only, no sign identify blocks, programmed at the beginning of a block Block number - main 0 ... 9999 9999 Special identification for blocks block integer only, no sign used instead of N..., this block should contain all the instructions for a complete set of subsequent machining operations Number of subroutine 1 ... 9999 Programmed in the same block passes integer only, no sign as a subroutine to be called several times, e.g.: N10 L871 P3 ; called three times L.... ;in separate block M... E.g.: N20 E.g.: :20 E.g.: L781 P... ;in separate block SINUMERIK 801 Operation and Programming-- Turning Programming Address R0 to R249 Meaning Arithmetic parameter Arithmetic functions SIN( ) Sine COS( ) Cosine TAN( ) Tangent SQRT( ) Square root ABS( ) Absolute value TRUNC( ) Integer part RET End of subroutine S Spindle speed or other meaning with G4, G96 T Tool number X Z AR Axis Axis Angle of aperture for circular interpolation Chamfer CHF CR Radius for circular interpolation GOTOB GOTO instruction backwards GOTOF GOTO instruction forwards Value assignment Information Programming R0 to R99 -user assignable 0.0000001 ... 9999 R100 to R249 -transfer 9999 (8 decimal places) or parameters for machining cycles with exponent: (10-300 ... 10+300 ) In addition to the 4 basic arithmetic operations + * / the following arithmetic functions are also available: in degrees E.g.: R1=SIN(17.35) in degrees E.g.: R2=COS(R3) in degrees E.g.: R4=TAN(R5) E.g.: R6=SQRT(R7) E.g.: R8=ABS(R9) E.g.: R10=TRUNC(R1 1) 0.001 ... 99 999.999 Used instead of M2 to maintain RET continuous path mode ;in separate block 0.001 ... 99 999.999 Spindle speed in rev/min S... if G96 is programmed, S is interpreted as constant cutting speed in m/min (turning), with G4, dwell time in spindle revolutions 1 ... 32 000 Tool change can be performed T... integer only, without directly with T command or not sign until M6 is programmed. This can be set in machine data. X... 0.001 ... 99 999.999 Positional data Z... 0.001 ... 99 999.999 Positional data 0.00001 ... 359.99999 Given in degrees, a method of see G2; G3 defining the circle with G2/G3 0.001 ... 99 999.999 Inserts a chamfer of the specified N10 X... Z.... length between two contour blocks CHF=... N11 X... Z... 0.010 ... 99 999.999 A method of defining a circle with see G2; G3 Negative sign - for G2/G3. circle selection: greater semi-circle E.g.: N20 Jumps to the block defined by GOTOB the label, the target of the jump is located in the direction of the MARKE1 beginning of the program. E.g.: N20 Jumps to the block defined by GOTOF the label, the target of the jump is located in the direction of the end MARKE2 of the program. SINUMERIK 801 Operation and Programming-- Turning 8-9 Programming Address IF Meaning Jump condition IX LCYC... Interpolation point for 0.001 ... 99 999.999 circular interpolation Interpolation point for 0.001 ... 99 999.999 circular interpolation Machining cycle call Specified values only LCYC82 Drilling, spot-facing LCYC83 Deep-hole drilling KZ LCYC840 8-10 Value assignment - Tapping with compensating chuck Information If the jump condition is fulfilled the jump goes to the next instruction, Comparators: == > >= <= For the X axis, programmed for circular interpolation with G5 For the Z axis, programmed for circular interpolation with G5 Machining cycles have to be called in a separate block, the transfer parameters to be used must be assigned values Transfer parameters: R101: Retraction plane (absolute) R102: Safety clearance R103: Reference plane (absolute) R104: Final drilling depth R105: Dwell time at drilling depth R100: Number of the drilling axis =3 R101: Retraction plane (absolute) R102: Safety clearance R103: Reference plane (absolute) R104: Final drilling depth (absolute) R105: Dwell time at drilling depth R106: Dwell time start/stock removal R107: First drilling depth (absolute) R108: Amount of degression R109: Feedrate factor for drilling R110: Machining type: chipbreaking=0 stock removal=1 R111: Feedrate for first drilling depth R101: Retraction plane (absolute R102: Safety clearance R103: Reference plane (absolute) R104: Final drilling depth (absolute) R106: Thread lead value R126: Direction of rotation of spindle for tapping Programming E.g.: N20 IF R1>5 GOTOB MARKE1 see G5 see G5 N10 R100=... R101=... ... N20 LCYC82 in separate block N10 R100=... R101=... .... N20 LCYC83 ;in separate block N10 R100=... R101=... .... N20 LCYC840 ;in separate block SINUMERIK 801 Operation and Programming-- Turning Programming Address LCYC85 Boring Meaning Value assignment LCYC93 Groove (drilling cycle) LCYC94 Undercut (form E and F) LCYC95 Stock removal (turning cycle) LCYC97 Thread cutting (turning cycle) LIMS Upper limit speed of 0.001 ... 99 999.999 spindle with G96 RND Rounding (turning cycle) 0.010 ... 99 999.999 SINUMERIK 801 Operation and Programming-- Turning Information R101: Retraction plane (absolute R102: Safety clearance R103: Reference plane (absolute) R104: Final drilling depth (absolute) R105: Dwell time at drilling depth R107: Feed for drilling R108: Feed on retract from drill hole R100: Starting point in facing axis R101: Starting point in longitudinal axis R105: Machining type (1...8) R106: Final machining allowance R107: Cutting edge width R108: Infeed depth R114: Groove width R116: Thread angle R117: Chamfer on groove edge R118: Chamfer at base of groove R119: Dwell time at base of groove R100: Starting point in facing axis R101: Starting point of contour in longitudinal axis R105: Form E=55, F=56 R107: Cutting edge position (1...4) R105: Machining type (1...12) R106: Finishing allowance R108: Infeed depth R109: Infeed angle for roughing R110: Contour clearance for roughing R111: Feedrate for roughing R112: Feedrate for finishing R100: Diameter of thread at starting point R101: Thread starting point in longitudinal axis R102: Thread diameter at end point R103: Thread end point in longitudinal axis R104: Thread lead value R105: Machining type (1 and 2) R106: Finishing allowance R109: Approach path R110: Run-out path R111: Thread depth R112: Starting point offset R113: Number of roughing cuts R114: Number of threads Limits the spindle speed if function G96 is activated constant cutting speed for turning Inserts a rounding with the radius value specified tangentially between two contour blocks Programming N10 R100=... R101=... .... N20 LCYC85 ;in separate block N10 R100=... R101=... .... N20 LCYC93 ;in separate block N10 R100=... R101=... .... N20 LCYC94 ;in separate block N10 R105=... R106=... N20 LCYC95 in separate block N10 R100=... R101=... .... N20 LCYC97 ;in separate block see G96 N10 X... Z.... RND=... N11 X... Z... 8-11 Programming Address SF SPOS Meaning Value assignment Thread 0.001 ... 359.999 commencement point with G33 Spindle position 0.0000 ... 359.9999 STOPRE Preprocessing stop $P_TOOL Active tool cutting read-only edge Active tool number read-only $P_TOOL NO $P_TOOLP Tool number programmed 8-12 - last read-only Information Specified in degrees, with G33 the thread commencement point is offset by the specified amount Specified in degrees, the spindle stops at the specified position (spindle must be designed to do this) Special function, the next block is not decoded until the block prior to STOPRE is completed integer, DO to D9 integer, TO - T32000 integer, TO - T32000 Programming see G33 SPOS=.... STOPRE ;in separate block IF $P_TOOL==7 GOTOF ... IF $P_TOOLNO== 46 GOTOF ... IF $P_TOOLNP== 11 GOTOF ... SINUMERIK 801 Operation and Programming-- Turning Programming 8.2 Position data 8.2.1 Absolute/incremental dimensions: G90, G91 Functionality When instruction G90 or G91 is active, the specified position information X, Z is interpreted as a coordinate point (G90) or as an axis path to be traversed (G91). G90/G91 applies to all axes. These instructions do not determine the actual path on which the end points are reached. This is done by a G group (G0, G1, G2, G3, ... see Section "Axis Movements"). Programming G90 ;Absolute dimensioning G91 ;Incremental dimensioning G90 absolute dimension sion G91 incremental dimension X W sion Z X W Z Fig.8-3 Different dimensioning in the part drawing Absolute dimension G90 When absolute dimensioning is selected, the dimension data refer to the zero point of the currently active coordinate system (workpiece coordinate system, current workpiece coordinate system or machine coordinate system). Which of the systems is active depends on which offsets are currently effective, i.e. programmable, settable or none at all. G90 is active for all axes on program start and remains so until it is deactivated by G91 (incremental dimensioning selection) in a subsequent block (modal command). Incremental dimen- When incremental dimensioning is selected, the numerical value in the posion information corresponds to the path to be traversed by an axis. The traversing sion G91 direction is determined by the sign. G91 applies to all axes and can be deactivated by G90 (absolute dimensioning) in a later block. Programming examN10 G90 X20 Z90 ;Absolute dimensioning ;Absolute dimensioning still active ple for G90 and G91 N20 X75 Z-32 ... N180 G91 X40 Z20 ;Switchover to incremental dimensioning N190 X-12 Z17 ;Incremental dimensioning still active SINUMERIK 801 Operation and Programming-- Turning 8-13 Programming 8.2.2 Metric/inch dimensions: G71, G70 Functionality If a workpiece has dimensions that deviate from the default system settings in the control system (inch or mm), then these can be entered directly in the program. The control system then converts them to the basic system. Programming G70 G71 ;Inch dimension ;Metric dimension Programming example N10 G70 X10 Z30 N20 X40 Z50 ... N80 G71 X19 Z17.3 ... ;Inch dimension system ;G70 still active Information ;Metric dimension system from here Depending on the current default settings, the control system interprets all geometric values as metric or inch dimensions. "Geometric values" also include tool offsets and settable zero offsets including the display as well as feed F in mm/min or inch/min. The basic setting can be changed in the machine data. All examples in this Guide assume that the default setting is metric. G70 and G71 affect all geometric data that refer directly to the workpiece: z Position information X, Z with G0, G1, G2, G3, G33 z Interpolation parameters I, K (incl. lead). z Circle radius CR z Programmable zero offset (G158) Any other geometric data not relating directly to the workpiece, such as feedrates, tool offsets, settable zero offsets, are not affected by G70/G71. 8-14 SINUMERIK 801 Operation and Programming-- Turning Programming 8.2.3 Radius/diameter dimensions: G22, G23 Functionality When parts are machined on turning machines, it is normal practice to program the position data for the X axis (facing axis) as a diameter dimension. The specified value is interpreted as a diameter for this axis only by the control. It is possible to switch over to radius dimension in the program if necessary. Programming G22 G23 ;Radius dimension ;Diameter dimension W X Facing axis G22 Z Longitudinal axis R10 D20 D30 D40 Radius dimension R20 X Facing axis G23 R15 Diameter dimension W Z Longitudinal axis Fig.8-4 Diameter and radius dimensions for facing axis Information When G22 or G23 is active, the specified end point for the X axis is interpreted as a radius or diameter dimension. The actual value is displayed correspondingly in the workpiece coordinate system. A programmable offset with G158 X... is always interpreted as a radius dimension. See the following section for a description of this function. Programming example N10 G23 X44 Z30 N20 X48 Z25 N30 Z10 ... N110 G22 X22 Z30 N120 X24 Z25 N130 Z10 ... SINUMERIK 801 Operation and Programming-- Turning ;Diameter for X axis ;G23 still active ;Changeover to radius dimension for X axis from here 8-15 Programming 8.2.4 Programmable zero offset: G158 Functionality Use the programmable zero offset for frequently repeated shapes/arrangements in different positions on a workpiece or when you simply wish to choose a new reference point for the dimension data. The programmable offset produces the current workpiece coordinate system. The newly programmed dimension data then refer to this system. The offset can be applied in all axes. A separate block is always required for the G158 instruction. W o rk p ie c e o rig in a l X W o rk p ie c e X c u rre n t Z c u rre n t Z W W o rk p ie c e O ffs e t X ...Z ... W o rk p ie c e "o ffs e t" Fig.8-5 Example of programmable offset Offset G158 A zero offset can be programmed for all axes with instruction G158. A newly entered G158 instruction replaces any previous programmable offset instruction. Delete offset If the instruction G158 without axes is inserted in a block, then any active programmable offset will be deleted. Programming Example N10 ... N20 G158 X3 Z5 ;Programmable offset N30 L10 ;Subroutine call, contains the geometry to be offset ... N70 G158 ;Offset deleted ... Subroutine call - see Section 8.10 "Subroutine System" 8-16 SINUMERIK 801 Operation and Programming-- Turning Programming 8.2.5 Workpiece clamping - settable zero offset: G54 to G57, G500, G53 Functionality The settable zero offset specifies the position of the workpiece zero point on the machine (offset between workpiece zero and machine zero). This offset is calculated when the workpiece is clamped on the machine and must be entered by the operator in the data field provided. The value is activated by the program through selection from four possible groups: G54 to G57. See Section 3.2 "Enter/Modify Zero Offset" for operating sequence. Programming G54 G55 G56 G57 G500 ;1st settable zero offset ;2nd settable zero offset ;3rd settable zero offset ;4th settable zero offset ;Settable zero offset OFF modal G53 ;Settable zero offset OFF non-modal, also suppresses programmable offset X M a c h in e W o rk p ie c e X W o rk p ie c e M W Z M a c h in e Z W o rk p ie c e e .g . G 54 S p e c ify o ffs e t in Z a x is o n ly ! Fig.8-6 Settable zero offset Programming Example N10 G54 ... ;Call first settable zero offset N20 X... Z... ;Machine workpiece ... N90 G500 G0 X... ;Deactivate settable zero offset SINUMERIK 801 Operation and Programming-- Turning 8-17 Programming 8.3 Axis movements 8.3.1 Linear interpolation at rapid traverse: G0 Functionality The rapid traverse motion G0 is used to position the tool rapidly, but not to machine the workpiece directly. All axes can be traversed simultaneously resulting in a linear path. The maximum speed (rapid traverse) for each axis is set in the machine data. If only one axis is moving, it traverses at its own rapid traverse setting. If two axes are traversed simultaneously, then the path speed (resultant speed) is selected so as to obtain the maximum possible path speed based on the settings for both axes. A programmed feed (F word) is irrelevant for G0. G0 remains effective until it is canceled by another instruction from the same group (G1, G2, G3,...). X M P2 P1 W Z Fig.8-7 Linear interpolation with rapid traverse from point P1 to P2 Programming example N10 G0 X100 Z65 Information A further group of G functions is provided for programming the approach to the position (see Section 8.3.9 "Exact Stop/Continuous Path Control: G60, G64"). G60 (exact stop) is linked to another group which allows various accuracy settings to be selected in a window. There is also a non-modal instruction, i.e. G9, for the exact stop function. You should note these options when considering how to adapt the control to your positioning tasks. 8-18 SINUMERIK 801 Operation and Programming-- Turning Programming 8.3.2 Linear interpolation at feedrate: G1 Functionality The tool moves from the start point to the end point along a straight path. The path speed is defined by the programmed F word. All axes can be traversed simultaneously. G1 remains effective until it is canceled by another instruction from the same G group (G0, G2, G3, ...). X M W Z Fig.8-8 Linear interpolation with G1 Programming N05 G54 G0 G90 X40 Z200 S500 M3 spindle example N10 G1 Z120 F0.15 N15 X45 Z105 N20 Z80 N25 G0 X100 N30 M2 SINUMERIK 801 Operation and Programming-- Turning ;tool is moving at rapid traverse, speed = 500 rpm, CW rotation ;Linear interpolation with feed 0.15 mm/rev ;Traverse clear at rapid traverse ;End of program 8-19 Programming 8.3.3 Circular interpolation: G2, G3 Functionality The tool moves from the start point to the end point on a circular path. The direction is determined by the G function: G2 - in clockwise direction G3 - in counterclockwise direction The path speed is determined by programmed F word. The required cycle can be described in different ways: -- Center point and end point -- Circle radius and end point -- Center point and aperture angle -- Aperture angle and end point G2/G3 remain effective until they are canceled by another instruction from the same G group (G0, G1, ...). X G2 G3 In clockwise direction In counterclockwise direction Z Fig.8-9 Definition of direction of rotation around circle with G2/G3 G2/G3 and input of center point (+end point): X G2/G3 and radius spoecification (+end point): X End point X,Z End point X,Z e.g. G2 X...Z...I...K... e.g. G2 X...Z...CR=... Circle radius Start point X,Z Center point I, J CR Start point X,Z Z Z G2/G3 and input of aperture angle G2/G3 and input of aperture angle X (+center point): (+end point): X End point X, Z Start point X,Z e.g. G2 AR=... I...K... e.g. AR=... X...Z... Angle AR Angle AR Center point I, K Start point X,Z Z Z Fig.8-10 Circle programming options 8-20 SINUMERIK 801 Operation and Programming-- Turning Programming Programming example Center point and end point specification: X S ta rt p o in t E n d p o in t I 33 40 C e n te r p o in t K 30 Z 40 50 Fig.8-11 Example of center and end point specification N5 G90 Z30 X40 G22 G0 N10 G2 Z50 X40 K10 I-7 Programming example ;Circle start point for N10 ;End point and center point End point and radius specification: X S ta rt p o in t E n d p o in t 40 C e n te r p o in t 30 Z 50 Fig.8-12 Example of end point and radius input N5 G90 Z30 X40 G22 G0 N10 G2 Z50 X40 CR=12.207 ;Circle start point for N10 ;End point and radius Note: When the value for CR =-... has a negative sign, a circle segment larger than a semi-circle is selected. SINUMERIK 801 Operation and Programming-- Turning 8-21 Programming Programming example End point and aperture angle: X S ta rt E n d p o in t 105 C e n te r p o in t 40 Z 30 50 Fig.8-13 Example of end point and aperture angle specification N5 G90 Z30 X40 G22 G0 N10 G2 Z50 X40 AR=105 Programming example ;Circle start point for N10 ;End point and aperture angle Center point and aperture angle: X Start point 105 I End point Center point 40 33 K Z 30 40 Fig.8-14 Example of center point and aperture angle specification N5 G90 Z30 X40 G22 G0 N10 G2 K10 I-7 AR=105 Input tolerances for circle ;Circle start point for N10 ;Center point and aperture angle The control system will only accept cricles within a certain dimensional tolerance. The circle radius at the start and end points are compared for this purpose. If the difference is within the tolerance limits, the center point is set internally in the control. Otherwise, an alarm message is output. The tolerance value can be set via the machine data. 8-22 SINUMERIK 801 Operation and Programming-- Turning Programming 8.3.4 Circular interpolation via intermediate point: G5 Functionality If you know three contour points around the circle instead of center point or radius or aperture angle, you should preferably use the G5 function. The direction of the circle in this case is determined by the position of the intermediate point (between start and end positions). G5 remains effective until it is canceled by another instruction from the same G group (G0, G1, G2, ...). Note: The dimension setting G90 or G91 applies to both the end point and intermediate point! In te rm e d ia te p o in t X E n d p o in t 40 45 S ta rt p o in t 30 Z 40 50 Fig.8-15 Circle with end and intermediate point specification with G90 active Programming example N5 G90 G23 G0 Z30 X80 N10 G5 Z50 X80 KZ=40 IX=45 ;Circle start point for N10 ;End and intermediate points, IX must be programmed as a radius dimension SINUMERIK 801 Operation and Programming-- Turning 8-23 Programming 8.3.5 Thread cutting with constant lead: G33 Functionality Function G33 can be used to cut the following types of threads with constant lead: z Thread on cylindrical bodies z Thread on tapered bodies z External/internal threads z Single-start/multiple-start threads z Multi-block threads (thread "chaining") This function requires a spindle with position measuring system. G33 remains effective until it is canceled by another instruction from the same G group (G0, G1, G2,G3,...). external internal Fig.8-16 Example of external /internal thread on cylindrical body RH or LH threads When Z axis is traversing from right to left, the direction of the thread, i.e. right-hand or left-hand, is determined by the setting for the direction of rotation of the spindle (M3 - clockwise rotation, M4 - counterclockwise rotation; see Section 8.4 "Spindle Movements"). To this aim, the speed setting must be programmed under address S, or a speed must be set. Note: The approach and run-out paths must be taken into account with respect to the thread length. Top view Side view End point Thread length Start point Zero degree mark of spindle encoder Offset SF=... Lead Lead: I or K (Value is constant over the entire thread length of a G33 block) Further start point possible (for multiple-start threads) RH or LH thread (M3 / M4) Fig.8-17 Programmable quantities for thread cutting with G33 8-24 SINUMERIK 801 Operation and Programming-- Turning Programming Lead: Programming: K X Cylindrical thread G33 Z... K... Tapered thread G33 Z... X... K... Z Angle at taper is less than 45 degrees X (Lead K, since Z axis has the longer path) G33 Z... X... I... Angle at taper is greater than 45 degrees G33 K Z Lead: X I (Lead I, since X axis has the longer path) Transversal thread Lead: Z Lead: X I X... I... Z Fig.8-18 Lead assignment on the example of Z/X axis In the case of tapered threads (2 axes must be specified), the lead address I or K of the axis with the longer path (greater thread length) must be used. A second lead is not specified. Start-point offset SF= A start-point offset of the spindle is required for machining multiple-start threads or threads in offset cuts. The start-point offset is programmed under address SF in the thread block with G33 (absolute position, specified in Degree). If a start point is not included in the block, the value from the setting data is activated. Note: Any value programmed for SF= is always entered in the setting data as well. Programming example Cylindrical thread, two-start, start-point offset 180 degrees, thread length (including approach and run-out) 100 mm, thread lead 4 mm/rev. RH thread, cylinder premachined: N10 G54 G0 G90 X50 Z0 S500 M3 ;Approach start point, CW spindle rotation N20 G33 Z-100 K4 SF=0 ;Lead:4 mm/rev. N30 G0 X54 N40 Z0 N50 X50 N60 G33 Z-100 K4 SF=180 ;2nd start, 180 degrees offset N70 G0 X54 ... Multi-block thread If several thread blocks are programmed in succession (multi-block thread), it makes only sense to program a start-point offset in the 1st thread block since this is the only block in which the function is effective. Multi-block threads are automatically linked by G64 (continuous path mode, see Section 8.3.9 "Exact Stop/Continuous Path Control: G60, G64"). SINUMERIK 801 Operation and Programming-- Turning 8-25 Programming X 3rd block with G33 N10 G33 Z... K... SF=... N20 Z.... X.... K... N30 Z.... X... K... 1st block with G33 Z Fig.8-19 Example of multi-block thread (thread "chaining") Axis velocities For thread cuts with the G33 function, the velocity of the axes for the thread length is determined by the spindle speed and the thread lead. Feed F is not relevant in this respect. However, it remains stored. The maximum speed defined in the machine data (rapid traverse) must not be exceeded. Information Important 8-26 -- The setting of the spindle speed override switch (override spindle) should not be changed for thread machining operations. -- The feed override switch has no function in this block. SINUMERIK 801 Operation and Programming-- Turning Programming 8.3.6 Fixed-point approach: G75 Functionality G75 can be used to approach to a fixed point on the machine, such as the tool change point. The position is fixed for all axes in the machine data. No offset is applied. The speed of each axis is its own rapid traverse setting. G75 requires a separate block and is non-modal. The G command from the Interpolation Type group (G0, G1,G2, ...) which was active prior to the block with G75 is activated after the block with G75. Programming example N10 G75 X0 Z0 Note: The programmed numerical values for X, Z are ignored. 8.3.7 Reference point approach: G74 Functionality G74 is used to execute the reference-point approach in the NC program. Direction and speed of each axis are stored in machine data. G74 requires a separate block and is non-modal. The G command for the Interpolation Type group (G0, G1,G2, ...) active prior to the block with G74 is activated again after the block with G74. Programming example N10 G74 X0 Z0 Note: The programmed numerical values for X, Z are ignored. SINUMERIK 801 Operation and Programming-- Turning 8-27 Programming 8.3.8 Feedrate F Functionality The feedrate F is the path speed and represents the absolute value of the geometric total of the speed components of all axes involved. The axis speeds are determined by the axis path distance in relation to the total path distance. The feedrate F is effective in interpolation modes G1, G2, G3 and G5 and remains active until a new F word is inserted in the program. Programming F... Note: Decimal points can be omitted in case of integer values, e.g. F300. Unit for F-G94, G95 The unit of measurement for the F word is defined by G functions: z G94 F as feedrate in mm/min z G95 F as feedrate in mm/rev of spindle (only makes sense if spindle is in operation!) Programming example N10 G94 F310 ... N110 S200 M3 N120 G95 F1.5 ;Feedrate in mm/min ;Spindle operation at a speed of 200rev/min ;Feedrate in mm/rev Note: Enter a new F word if you change from G94 to G95. Information 8-28 The group with G94 and G95 has additional functions G96 and G97 for constant cutting rate for turning machines. These functions also influence the S word (see Section 8.5.1 "Constant Cutting Rate"). SINUMERIK 801 Operation and Programming-- Turning Programming 8.3.9 Exact stop / continuous path mode: G9, G60, G64 Functionality These G functions enable you to set the traversing behavior at block limits and to control program advance to the next block, thus allowing you to adapt your program optimally to various requirements. For example, you want to position quickly with the axes or process path contours over several blocks. Programming G60 G64 ;Exact stop - (modal) ;Continuous path mode G9 ;Exact stop - (non-modal) G601 G602 ;Exact stop window fine ;Exact stop window coarse Exact stop G60, G9 If the exact stop function (G60 or G9) is active, the speed for reaching the exact target position is reduced towards zero at the end of the program block. Another modally active G group can be set in conjunction with these functions to determine the moment at which the traversing motion in this block is finished so that processing of the next block can commence. z G601 Exact stop window fine Processing of the next block commences as soon as all axes have reached the "Exact stop window fine" (value in machine data). z G602 Exact stop window coarse Processing of the next block commences as soon as all axes have reached the "Exact stop window coarse" (value in machine data). The selection of the exact stop window significantly affects the total machining time if many positioning operations need to be carried out. Fine adjustments require more time. A d v a n c e to n e x t b lo c k fo r "c o a rs e " a n d fo r "fin e " X G 6 0 (c o a rs e ) G 6 0 (fin e ) S S Z Fig.8-20 Coarse or fine exact stop window, effective with G60/G9, zoomed view of window SINUMERIK 801 Operation and Programming-- Turning 8-29 Programming Programming example N5 G602 N10 G0 G60 Z... N20 X... Z... ... N50 G1 G601 ... N80 G64 Z... ... N100 G0 G9 Z... N111 ... ... ;Exact stop coarse ;Exact stop modal ;G60 still active ;Exact stop window fine ;Switchover to continuous path ;Exact stop acts only in this block ;Return to continuous path mode Note: The command G9 generates an exact stop only for the block in which it is programmed; in contrast, G60 remains active until it is canceled by G64. Continuous path mode G64 The purpose of continuous path mode is to prevent braking of the axes at block limits to make the transition to the next block at the most constant possible speed (in the case of tangential transitions). The function operates with lookahead speed control to the next block. In the case of non-tangential path transitions (corners), the speed is reduced to such an extent in some cases that none of the axes is capable of making a speed step change that is higher than the maximum acceleration rate. In such cases, speed-dependent rounding at corners occurs. X Advance to next block with feed F2 Advance to next block with feed F1 Feed F2 is greater than F1 S Z Fig.8-21 Rounding at contour corners with G64 Programming example 8-30 N10 G64 G1 Z... F... N20 X.. ... N180 G60 ... ;Continuous path mode ;Continuous path control mode still active ;Switching to exact stop SINUMERIK 801 Operation and Programming-- Turning Programming Programmed feed F F1 Programmed speed cannot be reached because block paths too short G64 - continuous path mode G60 - exact stop N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 Block Fig.8-22 Comparison between speed responses with G60 and G64 with short block paths 8.3.10 Dwell time: G4 Functionality You can interrupt machining between two NC blocks for a defined time period by inserting a separate block with G4, e.g. for relief cutting operations. The words with F... or S... are used for time specifcations only in this block. Any previously programmed feed F or spindle speed S remain unaffected. Programming G4 F... G4 S... Programming example N5 G1 F200 Z-50 S300 M3 ;Feed F, spindle speed S N10 G4 F2.5 ;Dwell time 2.5 s N20 Z70 N30 G4 S30 ;Dwell for 30 spindle revolutions, corresponds to t = 0.1 when S = 300 rev/min and 100% speed override N40 X... ;Feed and spindle speed values remain effective Note ;Dwell time in seconds ;Dwell time in spindle revolutions G4 S.. can only be programmed if the machine has a controlled spindle (if the speed has also been programmed under address S... ). SINUMERIK 801 Operation and Programming-- Turning 8-31 Programming 8.4 Spindle movements 8.4.1 Spindle speed S, directions of rotation Functionality The spindle speed is programmed under address S in revolutions per minute, if the machine has a controlled spindle. The direction of rotation and the start or end of the movement are specified by means of M commands (see Section "Miscellaneous Function M"). Note: A decimal point may be omitted in the case of integer S values, e.g. S270. Information If you insert M3 or M4 in a block with axis movements, then the M commands will take effect before the axis movements. Default setting: The axis movements will only start after the spindle has run up (M3, M4). M5 is also output prior to the axis movement. However, the axes will not wait for the spindle being stopped. The axis movements will already start before the spindle has come to a standstill. The spindle is stopped with program end or RESET. Note: Other settings can be configured via machine data. Programming example N10 G1 X70 Z20 F300 S270 M3 ;Spindle powers up to 270 rev/min in clockwise rotation before axis traversal X, Z ... N80 S450 ... ;Speed change ... N170 G0 Z180 M5 ;Z movement in block, spindle stop 8-32 SINUMERIK 801 Operation and Programming-- Turning Programming 8.4.2 Spindle speed limitation: G25, G26 Functionality You can restrict the speed limit values that otherwise apply by programming a speed limit value using G25 or G26 and spindle address S. These functions also overwrite the values entered in the setting data. G25 or G26 each requires a separate block. Any previously programmed speed S remains effective. Programming G25 S... G26 S... Information The maximum upper and lower spindle speed limits are set in a machine data. Setting data can be activated via the operator panel to limit the speed range still further. ;Lower spindle speed limitation ;Upper spindle speed limitation The special function G96 (constant cutting rate) can be used to program an additional upper limit on turning machines. Programming example N10 G25 S12 N20 G26 S700 SINUMERIK 801 Operation and Programming-- Turning ;Lower spindle limit speed: 12 rev/min ;Upper spindle limit speed: 700 rev/min 8-33 Programming 8.4.3 Spindle positioning: SPOS Functionality Precondition: The spindle must be technically designed for operation under closed-loop position control. The SPOS= function allows you to position the spindle in a specific angular position. It is then held in this position by a closed-loop position control function. The speed of the positioning operation is defined in a machine data. The applicable direction of rotation is maintained from the M3/M4 movement until the positioning process is complete. When the spindle is positioned from standstill, the position is approached via the shortest possible path. In this case, the direction is determined by the start and end positions. Exception: Initial movement of spindle, i.e. if the measuring system is not yet synchronized. In such cases, the direction is specified by a machine data. The spindle movements are executed in parallel to any axis movements that are programmed in the same block. Processing of the block is complete when both movements have been executed. Programming SPOS=... Programming example N10 SPOS=14.3 :Spindle position 14.3 degrees ... N80 G0 X89 Z300 SPOS=25.6 ;Position spindle with axis movements. The block is complete once all movements have been executed. N81 X200 Z300 ;N81 block does not start until spindle position from N80 is reached. 8-34 ;Absolute position: 0 ... <360 Grad SINUMERIK 801 Operation and Programming-- Turning Programming 8.5 Special turning functions 8.5.1 Constant cutting rate: G96, G97 Functionality Precondition: The machine must have a controlled spindle. When the G96 function is active, the spindle speed is adjusted to the diameter of the workpiece currently being machined (facing axis) such that a programmed cutting rate S remains constant at the tool edge (spindle speed times diameter = constant). The S word is interpreted as the cutting rate from the block with G96 onwards. G96 is active as a modal command until it is cancelled by another G function in the same group (G94, G95, G97). Programming G96 S... LIMS=... F... G97 STL S LIMS= F ;Constant cutting rate ON ;Constant cutting rate OFF Explanation Cutting rate, unit m/min Upper limit speed of spindle, effective only with G96 Feed in mm/rev unit of measurement - as for G95 Note: In this case, feed F is always interpreted in the unit of measurement mm/revolution. If G94 was active instead of G95 beforehand, then a suitable F word must be inserted again in the program! X (F a c in g a xis ) M D2 D1 W S D = S p in d le s p e e d D 1 , D 2 = D ia m e te r D 1 x S D 1 = D 2 x S D 2 = D n x S D n = c o n s ta n t Fig.8-23 Constant cutting rate G96 Traversing at rapid traverse No speed changes take place during rapid traversal with G0. Exception: If the contour is approached in rapid traverse mode and the next block contains an interpolation type G1 or G2, G3, G5 (contour block), then the speed is adjusted to the value for the contour block while the approach block with G0 is being processed. SINUMERIK 801 Operation and Programming-- Turning 8-35 Programming Upper limit speed LIMS= The spindle speed may rise sharply when large diameters are machined down to small diameters. For such applications, it is advisable to specify the upper spindle speed limitation by means of LIMS=... . LIMS is effective only in conjunction with G96. When LIMS=... is programmed, the value entered in the setting data is overwritten. The upper speed limit programmed with G26 or via machine data cannot be overwritten by the LIMS= function. Deactivate constant The "Constant cutting rate" function is deactivated with G97. If G97 is active, a subsequently programmed S word is interpreted again as the spindle speed in cutting rate: G97 revolutions per minute. If no further S word is inserted in the program, then the spindle continues to rotate at the speed that was recorded when the G96 function was last active. Programming example N10 ... M3 ;Direction of rotation of spindle N20 G96 S120 LIMS=2500 ;Activate constant cutting rate, 120 m/min, limit speed 2,500 rev/min N30 G0 X150 ;No speed change because block N31 includes G0 N31 X50 Z... ;No speed change because block N32 includes G0 N32 X40 ;Approach contour, new speed is automatically set to value required for start of block N40 N40 G1 F0.2 X32 Z... ;Feed 0.2 mm/rev ... N180 G97 X... Z... ;Deactivate constant cutting rate N190 S... ;New spindle speed, rev/min Information The G96 function can also be deactivated by G94 or G95 (same G group). In this case, the last programmed spindle speed S applies for the remainder of the machining operation provided no new S word is programmed. 8-36 SINUMERIK 801 Operation and Programming-- Turning Programming 8.5.2 Rounding, chamfer Functionality You can insert the elements "chamfer" and "rounding" at contour corners. The appropriate instruction, i.e. CHF=... or RND=... is programmed in the block with axis motions that leads into the corner. Programming CHF=... RND=... Chamfer CHF= A linear section is inserted between linear and circular contours in any combination. The edge is chamfered. ;Insert chamfer, value: Length of chamfer ;Insert rounding, value: Rounding radius CHF= N 1 0 G 1 ...C H F = ... C h a m fe r N 2 0 G 1 ... B is e c to r X Z Fig.8-24 Insertion of a chamfer between two linear contours (example) Programming example for chamfer N10 G1 Z... CHF=5 N20 X... Z... Rounding RND= A circular contour element is inserted with tangential transitions between linear and circular contours in any combination. Straight line/straight line ;Insert 5 mm chamfer Straight line/straight line N10 G1 ...RND=... N50 G1 ...RND=... Rounding Rounding RND=... N20 G1 ... N60 G3 ... RND=... X X Z Z Fig.8-25 Examples of rounding insertion SINUMERIK 801 Operation and Programming-- Turning 8-37 Programming Programming example for rounding Information N10 G1 Z... RND=8 N20 X... Z... ... N50 G1 Z... RND=7.3 N60 G3 X... Z... ;Insert rounding with 8 mm radius ;Insert rounding with 7.3 mm radius Note: The programmed value for the chamfer or rounding is automatically reduced when the contour programmed in one of the blocks involved is not sufficiently long. No chamfer/rounding is inserted if more than one of the subsequently programmed blocks does not contain any information about traversal of the axes. 8-38 SINUMERIK 801 Operation and Programming-- Turning Programming 8.6 Tool and tool offset 8.6.1 General notes Functionality When you are creating programs for workpiece machining, you need not take tool lengths or cutter radii into account. Program the workpiece dimensions directly, e.g. as given in the workpiece drawing. The tool data are entered separately in a special data area. You merely call the tool you need together with its offset data in the program. On the basis of this data, the control executes the necessary path compensations in order to produce the workpiece you have defined. F F -to o l c a rrie r re fe re n c e p o in t M -m a c h in e z e ro W -w o rk p ie c e z e ro M T2 F T1 W Fig.8-26 Machining of a workpiece with various tool dimensions SINUMERIK 801 Operation and Programming-- Turning 8-39 Programming 8.6.2 Tool T Functionality You select a tool by programming the T word. A machine data defines whether the T word represents a tool change or merely a preselection. z Tool change (tool call) is implemented directly by T word (e.g. normal practice for tool revolver on turning machines) or z the tool is changed through additional instruction M6 after preselection by T word (see also Section "Miscellaneous Functions M"). Please note: If a certain tool has been activated, this will remain stored as the active tool even across the program end and after POWER ON of the control system. If you change a tool manually, then enter the change into the control system also manually to make sure that the control system detects the right tool. For example, you can start a block with a new T word in the MDA mode. Programming T... ;Tool number: 1 ... 32 000 Note A maximum of 8 tools can be stored in the control at a time. Programming example 8-40 Tool change without M6: N10 T1 ;Tool 1 ... N70 T588 ;Tool 588 SINUMERIK 801 Operation and Programming-- Turning Programming 8.6.3 Tool offset number D Functionality You can assign between 1 and 9 data fields with various tool offset blocks (for several tool edges) to each specific tool. If a special edge is required, it can be programmed by means of D plus a corresponding number. D1 is the automatic default if no D word is programmed. When D0 is programmed, then the offsets for the tool are not active. Note A maximum of 16 data fields with tool offset blocks can be stored in the control at a time. Programming D... ;Tool offset number: 1 ... 9 D0: No offsets active D2 D3 T3 D1 T6 D1 D2 D3 T9 D1 D2 T... D1 D2 T1 D1 T2 D1 D9 Fig.8-27 Example assignment of tool offset numbers to tool Information Tool length compensations take immediate effect when the tool is active. The values of D1 are applied if no D number has been programmed. The tool length is compensated when the first programmed traversal of the relevant length compensation axis is executed. A tool radius compensation must also be activated by means of G41/G42. Programming example Contents of an offset memory Tool change: N10 T1 N11 G0 X... Z... N50 T4 D2 ... N70 G0 Z... D1 ;Tool 1 is activated with associated T1D1 ;The length compensation is superimposed here ;Change to tool 4, D2 of T4 becomes active ;T4D1 for tool 4 is active, only edge changed Enter the following in the offset memory: z Geometric quantities: Length, radius These consist of several components (geometry, wear). The control computes the component data to produce a resultant quantity (e.g. total length 1, total radius). The total dimension calculated in each case takes effect when the offset memory is activated. SINUMERIK 801 Operation and Programming-- Turning 8-41 Programming The method used to compute these values in the axes depends on the tool type and commands G17, G18 (see diagrams below). z Tool type The tool type determines which geometry data are necessary and how they are computed (drills or turning tools). The hundreds place is the only distinguishing digit: -- Type 2xy: Drills -- Type 5xy: Turning tools z Tool point direction You must also specify the tool point direction for tool type 5xy (turning tools). Tool parameters The value for the relevant tool parameters is entered next to DP... . The tool type determines which parameters are required. Any tool parameters not needed must be set to "0". DP1 DP2 Geometry DP3 DP4 DP6 Tool type: Edge length: Length 1: Length 2: Radius: Wear DP12 DP13 DP15 The following diagrams show which tool parameters are needed for which tool type. Entries in tool parameters 5xy DP1 DP3 Length 1 DP4 Length 2 Turning tool F X Z Length 1 (X) Wear values acc. to requirements Effect Set all other values to 0 1 in X G18: Length Length 2 in Z Tool tip P (tool nose) Length 2 (Z) F - Tool carrier reference point Fig.8-28 Length compensation values required for turning tools 8-42 SINUMERIK 801 Operation and Programming-- Turning Programming Entries in tool parameters DP1 5xy DP3 Length 1 DP4 Length 2 DP1 5xy DP3 Length 1 DP4 Length 2 Wear values acc. To requirements Set all other values to 0 X D1 F - Tool carrier Grooving tool reference point Z D1: Length 1 (X) D2: Length 1 (X) D2 D2: Length 2 Effect Tool tip P Length 1 in X G18: Length 2 in Z (edge 1 =D1) (Z) D1: Length 2 (Z) Tool tip P (edge 2 =D2) Fig.8-29 Turning tool with length compensation for two edges SINUMERIK 801 Operation and Programming-- Turning 8-43 Programming F - Tool carrier reference point Turning tool F S X Length 1 (X) P Length 2 (Z) Tool tip P (tool nose) R -Edge radius (tool radius) S -Position of tool nose center point Z The tool parameter DP2 specifies the tool point direction. Direction value 1 to 9 can be programmed: X Tool point direction DP2: 1 P 2 3 4 S S S 6 S S S 5 Z X 7 8 9 P=S S S Z Entries in tool parameters DP1 5xx DP2 1...9 DP3 Length1 DP4 Length 2 DP6 Radius Note: Parameters length 1 and length 2 refer to point P with tool point directions 1..8, but to S (S=P) with 9. Effect Wear values acc. to requirements Length 1 in X G18: Length 2 in Z Set all other values to 0 Fig.8-30 Offset data required for turning tools with tool radius compensation 8-44 SINUMERIK 801 Operation and Programming-- Turning Programming Entries in tool parameters DP1 2xy DP3 Length 1 Wear values acc. to requirements Set all other values to 0 F Length 1 Effect G17: Length 1 in Z F - Tool carrier reference point G18: Turning tools Fig.8-31 Offset data required for drills Centre hole To drill a center hole, switch over to G17. The length compensation then acts on the drill in the Z axis. After drilling, switch back to G18 for the normal turning tool offset. Example: N10 T200 ;Drill, =tool type 200 N20 G17 G1 F... Z... ;Length compensation acts in Z axis N30 Z... N40 G18 .... ;Drilling completed X M F Z Fig.8-32 Drilling a center hole SINUMERIK 801 Operation and Programming-- Turning 8-45 Programming 8.6.4 Selection of tool radius compensation: G41, G42 Functionality A tool with a corresponding D number must be active. The tool radius compensation (tool nose radius compensation) is activated by G41/G42. The control then automatically calculates the necessary tool paths equidistant from the programmed contour for the current tool radius. Note: G18 must be active. Tool nose radius M Fig.8-33 Tool (nose) radius compensation Programming G41 X... Z... G42 X... Z... ;Tool radius compensation to left of contour ;Tool radius compensation to right of contour Note: You may only select the function for linear interpolation (G0, G1). Program both axes. If you only specify one axis, then the last programmed value is automatically set for the second axis. G42 G41 Fig. 8-34 Compensation to right/left of contour Begin compensation 8-46 The tool approaches the contour on a linear path and positions itself perpendicular to the path tangent at the start of the contour. Select the start point such that the tool can traverse safely with no risk of collision. SINUMERIK 801 Operation and Programming-- Turning Programming First contour section: Straight line First contour section: Circle P0 -Start point Compensated tool path S R S P0 -Start point G42 Circle radius Compensated tool path MP P1 R -Tool nose radius S S R G42 P1 -First contour section: Circle P1 Tangent Fig.8-35 Beginning of tool radius compensation -example shows G42, tool point direction =3 Information The block containing G41/G42 is generally followed by the first block with the workpiece contour. The contour definition may, however, be interrupted by an intermediate block that does not contain any contour information, e.g. by a block with just an M command. Programming example N10 T... F... N15 X... Z... ;P0 start point N20 G1 G42 X... Z... ;Select compensation to the right of the contour, P1 N30 X... Z... ;Initial contour section, circle or straight line SINUMERIK 801 Operation and Programming-- Turning 8-47 Programming 8.6.5 Behavior at corners: G450, G451 Functionality Functions G450 and G451 are provided to allow you to set the response in the case of discontinuous transition from one contour element to another (behavior at corners) when G41/G42 is active. The control itself detects inside and outside corners. The point at which the equidistant paths intersect is always approached in the case of inside corners. Programming Outside corner G450 G450 G451 ;Transition circle ;Intersection Transition circle (radius = tool radius) Outside corner G451 Intersection S S Fig.8-36 Behavior at an outside corner Inside corner Intersection S S Fig 8-37 Behavior at an inside corner Transition circle G450 The tool center point traverses round the workpiece outer corner along an arc with the same radius as the tool radius. In processing terms, the transition circle belongs to the next block that contains traversing movements, e.g. relating to feed value. Intersection G451 With function G451 (intersection of equidistant paths), the tool approaches the point at which the center point paths (circle or straight line) intersect. 8-48 SINUMERIK 801 Operation and Programming-- Turning Programming 8.6.6 Tool radius compensation OFF: G40 Functionality Function G40 is used to canceled compensation mode G41/G42. This G function is also preset for program start. The tool ends the block before G40 in normal position (i.e. compensation vector perpendicular to tangent at end point), independently of retraction angle. Always select the end point of the G40 block such that the tool can traverse safely with no risk of collision. Programming G40 X... Z... ;Tool radius compensation OFF Note: Tool radius compensation can be canceled only in linear interpolation mode (G0, G1). Program both axes. If you only specify one axis, then the last programmed value is automatically set for the second axis. Final contour section: Straight line Final contour section: Circle S G40 G40 P2 R S Tangent P2 P1 P1 MP Circle radius R - Tool nose radius R P1 - End point, last block with e.g. G42 P2 - End point, block with G40 Fig.3-38 Cancelation of tool radius compensation using G40, example shows G42, tool point direction=3 Programming example ... N100 X... Z... N110 G40 G1 X... Z... SINUMERIK 801 Operation and Programming-- Turning ;Last block on contour, circle or straight line, P1 ;Deactivate tool radius compensation, P2 8-49 Programming 8.6.7 Special cases of tool radius compensation Change in compen- The compensation direction G41 <-> G42 can be changed without inserting sation direction G40 instruction in-between. The last block with the old compensation direction ends with the compensation vector in the normal position at the end point. The new compensation direction is executed as start of compensation (position at start point). Repetition of G41, G41 or G42, G42 The same contour can be programmed again without inserting a G40 instruction beforehand. The last block before the new compensation call ends with the compensation vector in the normal position at the end point. The repeat compensation process is executed as described under "Change in compensation direction" above. Change in offset number D The offset number D can be changed in compensation mode. In this case, an altered tool radius becomes effective at the beginning of the block in which the new D number is programmed. The full change in radius is not achieved until the end of the block, i.e. the change is implemented continuously over the entire block. This also applies to circular interpolation. Cancellation of com pensation using M2 If compensation mode is aborted by means of M2 (program end) without a programmed G40 instruction, then the last block ends with coordinates corresponding to the compensation vector in normal position. No compensatory movement is executed. The program ends with this tool position. Critical machining operations When programming machining operations, watch out for cases where the contour path at inner corners is smaller than the tool radius and, with two consecutive inner corners, smaller than the diameter. This type of programming error must be avoided! Check sequences of several blocks to make sure that the contour does not contain any "bottlenecks". When you carry out a test/dry run, use the largest available tool radius. B<R R - Tool nose radius B - Contour path S R S B Programmed contour Collision Remedy: Switch from G450 to G451 in this case Fig.3-39 Critical maching operation, example shows transition circle 8-50 SINUMERIK 801 Operation and Programming-- Turning Programming Example of tool radius compensation R30 R55 8.6.8 R20 45 X W Z 20 40 8 30 20 5 Fig.8-40 Example of tool radius compensation, tool nose radius magnified Programming example N1 ; N2 T1 N10 G22 F... S... M... N15 G54 G0 G90 X100 Z15 N20 X0 Z6 N30 G1 G42 G451 X0 Z0 N40 G91 X20 CHF=(5* 1.41) N50 Z-25 N60 X10 Z-30 N70 Z-8 N80 G3 X20 Z-20 CR=20 N90 G1 Z-20 N95 X5 N100 Z-25 N110 G40 G0 G90 X100 N120 M2 SINUMERIK 801 Operation and Programming-- Turning ;Contour section ;Tool 1 with offset D1 ;Radius dimension specification, technological values ;Begin compensation mode ;Insert chamfer ;End compensation mode 8-51 Programming 8.7 Miscellaneous function M Functionality Miscellaneous function M can be used, for example, to initiate switching operations such as "Coolant ON/OFF", among other tasks. The control system manufacturer preassigns certain functions to a small number of the M functions. The others can be freely assigned to functions by the user. A block may contain a maximum of 5 M functions. Note You will find an overview of all M functions reserved and used in the control system in Section 8.1.5. "List of instructions" Programming M... Activation Activation in blocks with axis movements: If functions M0, M1 and M2 are programmed in a block that includes axis movements, then they take effect after the traversing movements have been executed. Functions M3, M4 and M5 are transferred to the internal interface control before the traversing movements. The axis movements are not executed until the spindle has run up in M3 or M4. In the case of M5, however, the axis movements commence before the spindle has reached a standstill. All the other M functions are transferred to the internal interface control at the same time as the traversing movements. If you wish to program an M function specifically before or after an axis movement, then insert a separate block with the M function. Remember: This block will interrupt G64 continuous path mode and generate an exact stop! Programming example 8-52 N10 S... N20 X... M3 ;M function in block with axis movement Spindle runs up before X axis movement N180 M78 M67 M10 M12 M37 ;Max. 5 M functions in block SINUMERIK 801 Operation and Programming-- Turning Programming 8.8 Arithmetic parameters R Functionality If you want an NC program in which you can vary the values to be processed, or if you simply needed to compute arithmetic values, then you can use R (arithmetic) parameters. The control system will calculate or set the values you need when the program is executed. An alternative method is to input the arithmetic parameter values directly. If the R parameters already have value settings, then they can be assigned in the program to other NC addresses that have variable values. Programming R0=... to R249=... (to R299=..., if there are no machining cycles) Explanation 250 arithmetic parameters with the following classification are available: R0 ... R99 - for free assignment R100 ... R249 - transfer parameters for machining cycles. R250 ... R299 - internal arithmetic parameters for machining cycles. If you do not intend to use machining cycles (see Section NO TAG "Machining Cycles"), then this range of arithmetic parameters is also available for your use. Value assignment You can assign values in the following range to the R parameters: (0.000 0001 ... 9999 9999) (8 decimal places and sign and decimal point). The decimal point can be omitted for integer values. A positive sign can also be omitted. Example: R0=3.5678 R1=-37.3 R2=2 R3=-7 R4=-45678.1234 You can assign an extended numerical range using exponential notation: ( 10-300 ... 10+300 ). The value of the exponent is typed after the characters EX. Maximum number of characters: 10 (including sign and decimal point). Value range of EX: -300 to +300. Example: R0=-0.1EX-5 R1=1.874EX8 ;Meaning: R0 = -0,000 001 ;Meaning: R1 = 187 400 000 Note: Several assignments (including arithmetic expressions) can be programmed in one block. Assignment to other addresses You can obtain a flexible NC program by assigning arithmetic parameters or arithmetic expressions with R parameters to other NC addresses. Values, arithmetic expressions or R parameters can be assigned to any NC address with the exception of addresses N, G and L. SINUMERIK 801 Operation and Programming-- Turning 8-53 Programming When making assignments of this kind, type the character "=" after the address character. Assignments with a negative sign are also permitted. If you wish to make assignments to axis addresses (traversal instructions), then you must do so in a separate program block. Example: N10 G0 X=R2 ;Assignment to X axis Arithmetic operations / functions Operators/arithmetic functions must be programmed using the normal mathematical notation. Processing priorities are set by means of round brackets. Otherwise the "multiplication/division before addition/subtraction" rule applies. Degrees are specified for trigonometric functions. Programming example: R parameter N10 R1= R1+1 ;The new R1 is product of old R1 plus 1 N20 R1=R2+R3 R4=R5-R6 R7=R8* R9 R10=R11/R12 N30 R13=SIN(25.3) ;R13 is the sine of 25.3 degrees N40 R14=R1*R2+R3 ;"Multiplication/division before addition/subtraction" rule R14=(R1*R2)+R3 N50 R14=R3+R2*R1 ;Result as for block N40 N60 R15=SQRT(R1*R1+R2*R2) ;Meaning: R15= Programming example: Assignment to axes 8-54 R12 +R22 N10 G1 G91 X=R1 Z=R2 F300 N20 Z=R3 N30 X=-R4 N40 Z=-R5 ... SINUMERIK 801 Operation and Programming-- Turning Programming 8.9 Program branches 8.9.1 Labels - destination for program branches Functionality Labels are used to mark blocks as the branch destination for branches in the program sequence. Labels can be selected freely, but must have a minimum of 2 and a maximum of 8 letters or digits. However the first two characters must be letters or underscore characters. Labels end in a colon in the block that is to act as a branch destination. They are always positioned at the beginning of the block. If the block also has a block number, then the label is positioned after the number. Labels must be unique within the same program. Programming example N10 MARKE1: G1 X20 ;MARKE1 is label, branch destination ... TR789: G0 X10 Z20 ;TR789 is label, branch destination No block number SINUMERIK 801 Operation and Programming-- Turning 8-55 Programming 8.9.2 Unconditional program branches Functionality NC programs process the blocks they contain in the same order as they were typed by the programmer. The processing sequence can be altered through the insertion of program branches. The only possible branch destination is a block with label. This block must be included in the program. An unconditional branch instruction must be programmed in a separate block. Programming GOTOF Label GOTOB Label STL GOTOF GOTOB Label Program sequence ;Branch forwards ;Branch backwards Explanation Branch direction forwards (towards last block in program) Branch direction backwards (towards first block in program) Selected character string for label G0 X... ... ... Z... N20 GOTOF MARKE0 ; Branch to label0 ... ... ... ... ... N50 MARKE0: R1 = R2+R3 N51 GOTOF MARKE1 ; Branch to label1 ... ... MARKE2: X... Z... N100 M2 MARKE1: X... Z... ... N150 GOTOB MARKE2 ;End of program ; Branch to label2 Fig.8-41 Example of unconditional branches 8-56 SINUMERIK 801 Operation and Programming-- Turning Programming 8.9.3 Conditional branches Functionality Branch conditions are formulated after the IF instruction. If the branch condition is fulfilled (value not equal to zero), then the program branches. The branch destination can only be a block with corresponding label. This block must be contained within the program. Conditional branch instructions must be programmed in a separate block. Several conditional branch instructions can be programmed in the same block. You can reduce program processing times significantly by using conditional program branches. Programming IF condition GOTOF Label ;Branch forwards IF condition GOTOB Label ;Branch backwards STL GOTOF GOTOB Label IF Condition Explanation Branch direction forwards (towards last block in program) Branch direction backwards (towards first block in program) Selected character string for label Introduction of branch condition Arithmetic parameter, arithmetic expression in comparison for formulation of condition Comparison operations Operators == <> > < >= <= Meaning Equal to Not equal to Greater than Less than Greater than or equal to Less than or equal to The comparison operations are used to formulate branch conditions. Arithmetic expressions can also be compared. The result of comparison operations is either "fulfilled" or "not fulfilled". "Not fulfilled" is equivalent to a value of zero. Programming example for comparison operators R1>1 1 < R1 R1<R2+R3 R6>=SIN( R7*R7) ;R1 greater than 1 ;1 less than R1 ;R1 less than R2 plus R3 ;R6 greater than or equal to SIN (R7)2 Programming example N10 IF R1 GOTOF MARKE1 ;If R1 is not zero, branch to block with MARKE1 ... N100 IF R1>1 GOTOF MARKE2 ;If R1 is greater than 1, branch to block with MARKE2 ... SINUMERIK 801 Operation and Programming-- Turning 8-57 Programming N1000 IF R45==R7+1 GOTOB MARKE3 ;If R45 is equal to R7 plus 1, branch to block with MARKE3 ... Several conditional branches in block: ... N20 IF R1==1 GOTOB MA1 IF R1==2 GOTOF MA2 ... ... Note: The program branches at the first fulfilled condition. 8-58 SINUMERIK 801 Operation and Programming-- Turning Programming 8.9.4 Example of program with branches Objective of program Approach points on an circle segment: Let us assume the following values: Start angle: 30 Circle radius: 32 mm Position spacing: 10 Number of points: 11 Position of circle center point in Z: 50 mm Position of circle center point in X: 20 mm in R1 in R2 in R3 in R4 in R5 in R6 X R4 = 11 (No. of points) Pnt.3 Pnt.10 Pnt.2 Pnt.11 R3 R3 R3 Pnt.1 R1 R6 20 Z R5 50 Fig.8-42 Approaching points along a circle segment Programming example N10 R1=30 R2=32 R3=10 R4=11 R5=50 R6=20 ;Assignment of start values N20 MA1: G0 Z=R2 *COS (R1)+R5 X=R2*SIN(R1)+R6 ;Computation and assignment to axis addresses N30 R1=R1+R3 R4= R4-1 N40 IF R4 > 0 GOTOB MA1 N50 M2 Explanation The initial conditions are assigned to the appropriate arithmetic parameters in block N10. The coordinates in X and Z are calculated in N20 and processed. In N30, R1 is increased by the angle R3 and R4 is decremented by 1. If R4 > 0, N20 is processed again. Otherwise the program continues with N50 and end of program. SINUMERIK 801 Operation and Programming-- Turning 8-59 Programming 8.10 Subroutine technique Application There is no essential difference between a main program and a subroutine. Subroutines contain frequently recurring machining sequences, for example, certain contour shapes. This type of subroutine is called at the appropriate locations in the main program and then processed. One type of subroutine is the machining cycle. Machining cycles contain generally applicable machining operations (e.g. thread cutting, stock removal, etc.). By supplying these cycles with values by means of the arithmetic parameters provided, you can adapt the program to your specific application (see Section "Machining Cycles"). Structure Subroutines are structured in exactly the same way as main programs (see Section "Program structure"). M2 (end of program) is programmed in the last block of the subroutine sequence in exactly the same way as for main programs. In this case, program end means a return to the program level that called the subroutine. Program end The M2 end-of-program instruction can be substituted by the end instruction RET in subroutines. RET must be programmed in a separate block. An RET instruction must be used when it is necessary to avoid an interruption in continuous path mode G64 when the program branches back to main program level from the subroutine. If an M2 instruction is programmed, G64 mode is interrupted and an exact stop generated. Main program Sequence MAIN123 ... Subroutine ... N20 L10 ;Call N21 ... Return L10 ... N10 R1=34 ... ... N20 X...Z... ... ... ... ... N80 L10 ;Call ... ... ... M2 Return M2 Fig. 8-43 Example of program sequence in which subroutine is called twice 8-60 SINUMERIK 801 Operation and Programming-- Turning Programming Subroutine name A subroutine is given its own specific name so that it can be selected from all the others. The name can be chosen freely subject to the following conditions when the subroutine is generated: -- The first two characters must be letters -- The others may be letters, digits or underscore -- Maximum of 8 characters in total -- No dashes (see Section "Character set") The same rules apply as for main program names. Example: BUCHSE7 There is the additional option of using the address word L... for subroutines. This value may have 7 decimal places (integers only). Please note: Leading zeros are interpreted as distinguishing digits in the L address. Example: L128 is not L0128 or L00128! These are 3 different subroutines! Subroutine call Subroutines are called by their name in a program (main program or subroutine). These calls must be programmed in separate blocks. Example: N10 L785 ;Call subroutine L785 N20 WELLE7 ;Call subroutine WELLE7 Program repeat P... If a subroutine must be repeated several times in succession, then enter the number of runs under address P after the subroutine name in the block containing the subroutine call. A maximum of 9999 runs can be programmed (P1 ... P9999). Example: N10 L785 P3 ;Call subroutine L785, 3 runs Nesting depth It is not only possible to call subroutines in main programs, but also in other subroutines. There is a total of 4 program levels (including the main program level) available for programming this type of nested call. Note: If you are working with machining cycles, please remember that these also need one of the four program levels. 1st level 2nd level 3rd level 4th level Main program Subroutine Subroutine Subroutine Fig.8-44 Sequence with four program levels SINUMERIK 801 Operation and Programming-- Turning 8-61 Programming Information It is possible to change modal G functions, e.g. G90 -> G91, in subroutines. Make sure that all modal functions are set in the way you require when the program branches back to the level on which the subroutine was called. The same applies to the arithmetic (R) parameters. Make sure that the arithmetic parameters you are using in the upper program levels do not change to different settings in lower levels. 8-62 SINUMERIK 801 Operation and Programming-- Turning 9 Cycles Preface Cycles are process-related subroutines that support general implementation of specific machining processes such as, for example, drilling, stock removal or thread cutting. The cycles are adapted to the specific problem in hand by means of supply parameters. Standard cycles for turning applications are provided in the system. 9.1 General Information about Standard Cycles This section provides general programming notes for SIEMENS standard cycles. 9.1.1 Overview of Cycles LCYC82 LCYC83 LCYC840 LCYC85 LCYC93 LCYC94 LCYC95 LCYC97 Supply parameters Drilling, spot-facing Deep hole drilling Tapping with compensation chuck Boring Recess Undercut (forms E and F to DIN) Stock removal with relief cuts Thread cutting The arithmetic parameters in the R100 to R249 range are used as supply parameters for cycles. Before a cycle is called, values must be assigned to its transfer parameters. These value settings are unchanged after the cycle has been executed. Arithmetic parameters If you intend to use machining cycles, you must ensure that arithmetic parameters R100 to R249 are reserved for this purpose, and are not used for other functions within the program. The cycles use R250 to R299 as internal arithmetic parameters. SINUMERIK 801 Operation and Programming-- Turning 9-1 Cycles Call and return conditions G23 (for LCYC93, 94, 95, 97) or G17 (for LCYC82, 83, 840, 85) (diameter programming) must be active before a cycle is called. Otherwise, the error message 17040 illegal axis index is output. The appropriate values for feedrate, spindle speed and spindle direction of rotation must be programmed in the part program if there are no supply parameters for these quantities in the cycle. G0 G90 G40 are always effective at the end of a cycle. 9.1.2 Error messages and error handling in cycles Error handling in cycles Alarms with numbers between 61001 and 62999 are generated in the cycles. In turn, this number range is subdivided into alarm reactions and reset criteria. Table 9-1 Alarm numbers, reset criteria, alarm reactions Alarm number 61001...61999 62000...62999 Program continued by Block preparation in the NC is aborted NC RESET Block preparation is interrupted, can be Reset key continued with NC start after alarm reset Reaction The error text that is displayed at the same time as the alarm number provides further details about the cause of the error. Overview of cycle alarms 9-2 The following Table gives an overview of errors that can occur in cycles, the location of their origin and guidance on how to eliminate them. SINUMERIK 801 Operation and Programming-- Turning Cycles Table 9-2 Cycle alarms Alarm Alarm Text Source (Cycle) Remedial Action Number 61001 Thread lead incorrectly LCYC840 Check parameter R106 (R106=0). defined 61002 "Machining type incorrectly LCYC93, 95, 97 The value of parameter R105 for the programmed" machining type is incorrectly set and must be altered. 61102 No spindle direction defined LCYC840 Value in parameter R107 is greater than 4 or less than 3. 61107 "First drilling depth incorrectly LCYC83 Change the value for 1st drilling depth defined" (first drilling depth is in opposition to total drilling depth) 61601 "Finished part diameter too LCYC94 A finished part diameter of < 3mm is small" programmed. This setting is illegal. 61602 "Tool width incorrectly LCYC93 The tool width (parameter R107) does defined" not match the programmed recess type. 61603 "Recess form incorrectly LCYC93 The recess form is incorrectly defined" programmed. 61606 "Error when preparing the LCYC95 Check contour subroutine. contour" Check machining type parameter (R105) 61608 "Incorrect tool point direction LCYC94 A tool point direction 1 ... 4 that matches programmed" the undercut form must be programmed. 61609 "Form incorrectly defined" LCYC94 Check parameters for undercut form. 61610 "No infeed depth LCYC95 The parameter for infeed depth R108 programmed" must be set >0 for roughing. SINUMERIK 801 Operation and Programming-- Turning 9-3 Cycles 9.2 Drilling, counter boring - LCYC82 Function The tool drills with the spindle speed and feedrate programmed down to the entered final depth. When the final drilling depth is reached, a dwell time can be programmed. The drill is retracted from the drill hole at rapid traverse rate. Call LCYC82 Z G1 G4 R101 R103+R102 R103 X R104 Fig.9-1 Motional sequence and parameters in the cycle Precondition The spindle speed and the direction of rotation, as well as the feed of the drilling axis must be defined in the higher-level program. The drilling position must be approached before calling the cycle in the higher-level program. The required tool with tool offset must be selected before calling the cycle. Parameters Parameter R101 R102 R103 R104 R105 Meaning, Value Range Retract plane (absolute) Safety clearance Reference plane (absolute) Final drilling depth (absolute) Dwell time in seconds Information R101 The retract plane determines the position of the drilling axis at the end of the cycle. R102 The safety clearance acts on the reference plane, i.e. the reference plane is shifted forward by an amount corresponding to the safety clearance. The direction in which the safety clearance acts is automatically determined by the cycle. 9-4 SINUMERIK 801 Operation and Programming-- Turning Cycles R103 The starting point of the drill hole shown in the drawing is programmed under the reference plane parameter. R104 The drilling depth is always programmed as an absolute value with refer to workpiece zero. R105 The dwell time at drilling depth (chip breakage) is programmed in seconds under R105. Motional sequence Position reached prior to beginning of cycle: last position in the higher-level program (drilling position) The cycle produces the following motional sequence: Example 1. Approach reference plane shifted forward by an amount corresponding to the safety clearance using G0. 2. Traverse to final drilling depth with G1 and the feedrate programmed in the higher-level program. 3. Execute dwell time to final drilling depth. 4. Retract to retract plane with G0. Drilling - counter boring The program produces a 27 mm deep drill hole in the position X0 in G17 plane using the cycle LCYC82. The dwell time is 2 s, and the safety clearance in the drilling axis (here: Z) amounts to 4 mm. On completion of the cycle, the tool stands on X0 Z110. X Z 75 102 Fig.9-2 Example drawing N10 G0 G17 G90 F500 T2 D1 S500 M4 ; Define technology values N20 X0 ; Approach drilling position N25 G17 N30 R101=110 R102=4 R103=102 R104=75 ; Supply parameters N35 R105=2 ; Supply parameters N40 LCYC82 ; Call cycle N50 M2 ; End of program SINUMERIK 801 Operation and Programming-- Turning 9-5 Cycles 9.3 Deep hole drilling - LCYC83 Function The deep-hole drilling cycle produces center holes down to the final drilling depth by repeated, step-by-step deep infeed whose maximum amount can be parameterized. The drill can be retracted either to the reference plane for swarf removal after each infeed depth or by 1 mm in each case for chip breakage. Call LCYC83 T h is m o tio n a l s e q u e n c e is re p e a te d fo r e a c h d rillin g d e p th G0 G4 G1 G0 e tc . G1 G4 G0 R 101 R 103 + R 102 R 103 C le a ra n c e d is ta n c e c u rre n t d rill. d e p th 1 s t d rillin g d e p th R 110 2 n d d rillin g d e p th G4 N e xt d rillin g d e p th ... R104 G0 N o te In th e d ia g ra m , th e c le a ra n c e d is ta n c e to th e c u rre n t d rillin g d e p th is s h o w n o n ly fo r th e 1 s t d rillin g d e p th . In re a lity , it's e ffe c tiv e fo r e v e ry d rillin g d e p th . Fig.9-3 Motional sequence and parameters in the cycle Precondition The spindle speed and the direction of rotation must be defined in the higher-level program. The drilling position must be approached before calling the cycle in the higher-level program. Before calling the cycle, a tool offset for the drill must be selected. G17 must be active. 9-6 SINUMERIK 801 Operation and Programming-- Turning Cycles Parameters Parameter R101 R102 R103 R104 R105 R107 R108 R109 R110 R111 R127 Meaning, Value Range Retract plane (absolute) Safety clearance, enter without sign Reference plane (absolute) Final drilling depth (absolute) Dwell time to drilling depth (chip breakage) Feed for drilling Feed for first drilling depth Dwell time at starting point and for swarf removal First drilling depth (absolute) Absolute degression, enter without sign Machining type: Chip breakage = 0 Swarf removal = 1 Information R101 The retract plane determines the position of the drilling axis at the end of the cycle. The cycle is programmed on the assumption that the retract plane positioned in front of the reference plane, i.e. its distance to the final depth is greater. R102 The safety clearance acts on the reference plane, i.e. the reference plane is shifted forward by an amount corresponding to the safety clearance. The direction in which the safety clearance acts is automatically determined by the cycle. R103 The starting point of the drill hole shown in the drawing is programmed under the reference plane parameter. R104 The drilling depth is always programmed as an absolute value regardless of how G90/91 is set prior to cycle call. R105 The dwell time at drilling depth (chip breakage) is programmed in seconds under R105. R107, R108 The feed for the first drilling stroke (under R108) and for all subsequent drilling strokes (under R107) are programmed via the parameters. R109 A dwell time at the starting point parameter R109. can be programmed in seconds under The dwell time at the starting point is executed only for the "with swarf removal" variant. R110 Parameter R110 determines the depth of the first drilling stroke. SINUMERIK 801 Operation and Programming-- Turning 9-7 Cycles R111 Parameter R111 for the absolute degression value determines the amount by which the current drilling depth is reduced with subsequent drilling strokes. The second drilling depth corresponds to the stroke of the first drilling depth minus the absolute degression value provided that this value is greater than the programmed absolute degression value. Otherwise, the second drilling depth also corresponds to the absolute degression value. The next drilling strokes correspond to the absolute degression value provided that the remaining degression depth is still greater than twice the absolute degression value. The remainder is then distributed evenly between the last two drilling strokes. If the value for the first drilling depth is in opposition to the total drilling depth, the error message 61107 "First drilling depth incorrectly defined" is displayed, and the cycle is not executed. R127 Value 0: The drill travels 1 mm clear for chip breakage after it has reached each drilling depth. Value 1: The drill travels to the reference plane, which is shifted forward by an amount corresponding to the safety clearance for swarf removal after each drilling depth. Motional sequence Position reached prior to beginning of cycle: last position in the higher-level program (drilling position) The cycle produces the following motional sequence: 1. Approach reference plane shifted forward by an amount corresponding to the safety clearance using G0. 2. Traverse to first drilling depth with G1; the feedrate results from the feedrate programmed prior to cycle call after it has been computed with the setting in parameter R109 (feedrate factor). Execute dwell time at drilling depth (parameter R105). With chip breakage selected: Retract by 1 mm from the current drilling depth with G1 for chip breakage. With swarf removal selected: Retract for swarf removal to reference plane shifted forward by an amount corresponding to the safety clearance with G0 for swarf removal, executing the dwell time at starting point (parameter R106), approach last drilling depth minus clearance distance calculated in the cycle using G0. 9-8 3. Traverse to next drilling depth with G1 and the programmed feed; this motional sequence is continued as long as the final drilling depth is reached. 4. Retract to retract plane with G0. SINUMERIK 801 Operation and Programming-- Turning Cycles Example: Deep-hole drilling X 5 145 20 20 1 100 Z Fig. 9-4 Example drawing ;This program executes the cycle LCYC83 at position X0. N100 G0 G18 G90 T4 S500 M3 ;Define technology values N110 Z155 N120 X0 ;Approach first drilling position N125 G17 R101=155 R102=1 R103=150 R104=5 R105=0 R109=0 R110=100 ;Parameter assignment R111=20 R107=500 R127=1 R108=400 N140 LCYC83 ;1st call of cycle N199 M2 SINUMERIK 801 Operation and Programming-- Turning 9-9 Cycles 9.4 Tapping with compensating chuck - LCYC840 Notice: This cycle function can be active only when a servo spindle is used. Function The tool drills with the programmed spindle speed and direction of rotation down to the entered thread depth. The feed of the drilling axis results from the spindle speed. This cycle can be used for tapping with compensating chuck and spindle actual-value encoder. The direction of rotation is automatically reversed in the cycle. The retract can be carried out at a separate speed. M5 acts after the cycle has been executed (spindle stop). Call LCYC840 Z G0 G33 G33 R101 X R103+R102 R103 R104 Fig.9-5 Precondition This cycle can only be used with a speed-controlled spindle with position encoder. The cycle does not check whether the actual-value encoder for the spindle really exists. The spindle speed and the direction of rotation must be defined in the higher-level program. The drilling position must be approached before calling the cycle in the higher-level program. The required tool with tool offset must be selected before calling the cycle. G17 must be active. Parameters Parameter R101 R102 R103 R104 R106 R126 9-10 Meaning, Value Range Retract plane (absolute) Safety clearance Reference plane (absolute) Final drilling depth (absolute) Thread lead as value value range: 0.001 .... 2000.000 mm Direction of rotation of spindle for tapping SINUMERIK 801 Operation and Programming-- Turning Cycles Value range: 3 (for M3), 4 (for M4) SINUMERIK 801 Operation and Programming-- Turning 9-11 Cycles Information R101 -R104 See LCYC84 R106 Thread lead as value R126 The tapping block is executed with the direction of rotation of spindle programmed under R126. The direction of rotation is automatically reversed in the cycle. Motional sequence Position reached prior to beginning of cycle: - last position in the higher-level program (drilling position) The cycle produces the following motional sequence: Example 1. Approach reference plane shifted forward by an amount corresponding to the safety clearance using G0 2. Tapping down to final drilling depth with G33 3. Retract to reference plane shifted forward by an amount corresponding to the safety clearance with G33 4. Retract to retract plane with G0 This program is used for tapping on the position X0; the Z axis is the drilling axis. The parameter for the direction of rotation R126 must be parameterized. A compensating chuck must be used for machining. The spindle speed is defined in the higher-level program. X Z 15 56 Fig.9-6 Example drawing N10 G0 G17 G90 S300 M3 D1 T1 ; Define technology values N20 X0 Z60 ; Approach drilling position G17 N30 R101=60 R102=2 R103=56 R104=15 ; Parameter assignment 9-12 N40 R106=0.5 R126=3 ; Parameter assignment N40 LCYC840 ; Cycle call N50 M2 ; End of program SINUMERIK 801 Operation and Programming-- Turning Cycles 9.5 Boring - LCYC85 Function The tool drills with the spindle speed and feedrate programmed down to the entered final drilling depth. When the final drilling depth is reached, a dwell time can be programmed. The approach and retract movements are carried out with the feedrates programmed under the respective parameters. Call LCYC85 Z G0 G1 G4 R101 R103+R102 R103 R104 Fig.9-7 Motional sequence and parameters of the cycle Precondition The spindle speed and the direction of rotation must be defined in the higher-level program. The drilling position must be approached before calling the cycle in the higher-level program. Before calling the cycle, the respective tool with tool offset must be selected. Parameters Parameter R101 R102 R103 R104 R105 R107 R108 Meaning, Value Range Retract plane (absolute) Safety clearance Reference plane (absolute) Final drilling depth (absolute) Dwell time at drilling depth in seconds Feed for drilling Feed when retracting from drill hole Information Parameters R101 - R105 see LCYC82 R107 The feed value defined here acts for drilling. R108 The feed value entered under R108 acts for retracting from the drill hole. SINUMERIK 801 Operation and Programming-- Turning 9-13 Cycles Motional sequence Position reached prior to beginning of cycle: last position in the higher-level program (drilling position) The cycle produces the following motional sequence: Example 1. Approach reference plane shifted forward by an amount corresponding to the safety clearance using G0 2. Traverse to final drilling depth with G1 and the feed programmed under parameter R106. 3. Execute dwell time at final drilling depth. 4. Retract to reference plane shifted forward by an amount corresponding to the safety clearance with G1 and the retract feed programmed under R108. The cycle LCYC85 is called in X0 in G17 plane. The Z axis is the drilling axis. No dwell time is programmed. The workpiece upper edge is at Z=102. X Z 77 102 Fig.9-8 Example drawing 9-14 N10 G0 G90 G17 F1000 S500 M3 T1 D1 ; Define technology values N20 Z102 X0 ; Approach drilling position N30 R101=105 R102=2 R103=102 R104=77 ; Define parameters N35 R105=0 R107=200 R108=400 ; Define parameters N40 LCYC85 ; Call drilling cycle N50 M2 ; End of program SINUMERIK 801 Operation and Programming-- Turning Cycles 9.6 Recess cycle - LCYC93 Fuction The recess cycle is designed to produce symmetrical recesses for longitudinal and face machining on cylindrical contour elements. The cycle is suitable for machining internal and external recesses. Call LCYC93 X R101 R108 R117 R116 R116 R114 R115 R100 R118 Z Fig.9-9 Parameters in the recess cycle in longitudinal machining Precondition The recess cycle can only be called if G23 (diameter programming) is active. The tool offset of the tool whose tool nose width has been programmed with R107 must be activated before the recess cycle is called. The zero position of the tool nose faces machine zero. Parameters Table 9-3 Parameters for LCYC93 cycle Parameter R100 R101 R105 R106 R107 R108 R114 R115 R116 R117 R118 R119 Meaning, Value Range Starting point in facing axis Starting point in longitudinal axis Machining method, Value range 1 ... 8 Finishing allowance, without sign Tool nose width, without sign Infeed depth , without sign Recess width, without sign Recess width, without sign Flank angle, without sign, between 0 <= R116 < = 89.999 degrees Chamfer on rim of recess Chamfer on recess base Dwell time on recess base Information R100 The recess diameter in X is specified in parameter R100. SINUMERIK 801 Operation and Programming-- Turning 9-15 Cycles R101 R101 determines the point at which the recess starts in the Z axis. R105 R105 defines the recess variant: Table 9-4 Recess variants Value Longitudinal/Facing 1 L 2 P 3 L 4 P 5 L 6 P 7 L 8 P External/Internal A A I I A A I I Starting Point Position Left Left Left Left Right Right Right Right If the parameter is set to any other value, the cycle is aborted with the alarm 61002 "Machining type incorrectly programmed". R106 Parameter R106 determines the finishing allowance for roughing of the recess. R107 Parameter R107 determines the tool nose width of the recessing tool. This value must correspond to the width of the tool actually used. If the tool nose of the active tool is wider, the contour of the programmed recess will be violated. Such violations are not monitored by the cycle. If the programmed tool nose width is wider than the recess width at the base, the cycle is aborted with the alarm G1602 "Tool width incorrectly defined". R108 By programming an infeed depth in R108, it is possible to divide the axis-parallel recessing process into several infeed depths. After each infeed, the tool is retracted by 1 mm for chip breakage. Recess form Parameters R114 ... R118 determine the form of the recess. The cycle always bases its calculation on the point programmed under R100, R101. R114 The recess width programmed in parameter R114 is measured on the base. The chamfers are not included in the measurement. R115 Parameter R115 determines the depth of the recess. R116 The value of parameter R116 determines the angle of the flanks of the recess. When it is set to "0", a recess with axis-parallel flanks (i.e. rectangular form) is machined. R117 R117 defines the chamfers on the recess rim. R118 R118 defines the chamfers on the recess base. 9-16 SINUMERIK 801 Operation and Programming-- Turning Cycles If the values programmed for chamfers do not produce a meaningful recess contour, then the cycle is aborted with the alarm 61603 "Recess form incorrectly defined". R119 The dwell time on the recess base to be entered in R119 must be selected such that at least one spindle revolution can take place during the dwell period. It is programmed to comply with an F word (in seconds). Motional Sequence Position reached prior to beginning of the cycle: z Any position from which each recess can be approached without risk of collision. The cycle produces the following motional sequence: z Approach with G0 starting point cacluated internally in the cycle. z Execute depth infeeds: Roughing in parallel axes down to base, taking finishing allowance into account. Tool travels clear for chip breakage after each infeed. z Execute width infeeds: Width infeeds are executed perpendicular to the depth infeed with G0, the roughing process for machining the depth is repeated. The infeeds both for depth and width are distributed evenly with the highest possible value. z Rough the flanks. Infeed along the recess width is executed in several steps if necessary. z Finish-machine the whole contour, starting at both rims and working towards center of recess base, at the feedrate programmed before the cycle call. Example X Starting point (95, 60) R108=10 20 20 25 mm Chamfers 2mm 30 Z Fig.9-10 Example diagram ;A recess is machined that starts at point (95.60), 47mm in depth ;and 30 mm in width. ;Two chamfers of 2 mm in length are programmed on the base. ;The finishing allowance is 1 mm. SINUMERIK 801 Operation and Programming-- Turning 9-17 Cycles N10 G0 G90 Z100 X100 T2 D1 S300 M3 G23 ;Select start position N20 G95 F0.3 ;and technology values R100=60 R101=95 R105=5 R106=1 R107=12 ;Parameters for cycle call R108=10 R114=30 R115=47 R116=20 R117=0 R118-2 R119=1 N60 LCYC93 ;Call recess cycle N70 G90 G0 Z100 X50 ;Next position N100 M2 Note on example 9-18 The tool offset of the recessing tool must be stored in D1 of tool T2. The tool nose width must be 12 mm. SINUMERIK 801 Operation and Programming-- Turning Cycles 9.7 Undercut cycle - LCYC94 Function This cycle machines undercuts of forms E and F in compliance with DIN 509 for normal stressing on finished part diameters > 3 mm. A tool offset must be activated before the cycle is called. Call LCYC94 X R101 FORM E FORM F X R100 Z For workpieces with one machining surface Z For workpieces with two mutually perpendicular machining surfaces Fig.9-11 Undercut forms E and F Condition G23 (diameter programming) must be active for this cycle. Parameters Table 9-5 Parameters for LCYC94 cycle Parameter R100 R101 R105 R107 Meaning, Value Range Starting point in facing axis, without sign Starting point in longitudinal axis Definition of form: Value 55 for form E Value 56 for form F Definition of tool point direction: Values 1...4 for directions 1...4 Information R100 The finished part diameter for the undercut is specified in parameter R100. If the value programmed for R100 corresponds to a final diameter of <= 3 mm, then the cycle is aborted with the alarm 61601 "Finished part diameter too small". R101 R101 determines the finished part dimension in the longitudinal axis. R105 Forms E and F are defined in DIN509 and must be selected using one of these parameters. SINUMERIK 801 Operation and Programming-- Turning 9-19 Cycles If parameter R105 is set to a value other than 55 or 56, then the cycle is aborted and generates the alarm 61609 "Form incorrectly defined". R107 This parameter defines the tool point direction and thus the undercut position. The value set here must correspond to the actual point direction of the tool selected prior to cycle call. Tool nose radius +X SL 4 SL 3 P Theoretical nose tip +Z SL 1 SL 2 Fig.9-12 Tool point directions 1...4 If the parameter is set to any other value, the alarm 61608 "Incorrect tool point direction programmed" is output and the cycle is aborted. Motional sequence Position reached prior to beginning of cycle: z Any position from which undercut can be approached without risk of collission. The cycle produces the following motional sequence: Example z Approach with G0 starting point calculated internally in the cycle. z Select tool nose radius compensation in accordance with active tool nose direction and traverse undercut contour at feedrate programmed prior to cycle call. z Return to starting point with G0 and deselect tool nose radius compensation with G40. ;This program machines an undercut of form E. N50 G0 G90 G23 Z100 X50 T25 D3 S300 M3 ;Select starting position N55 G95 F0.3 R100=20 R101=60 R105=55 R107=3 ;and enter technology values ;Parameters for cycle call N60 LCYC94 ;Call undercut for cycle N70 G90 G0 Z100 X50 ;Next position N99 M02 9-20 SINUMERIK 801 Operation and Programming-- Turning Cycles 9.8 Stock removal cycle - LCYC95 Function This cycle can machine a contour, which is programmed in a subroutine, in a longitudinal or face machining process, externally or internally, through axis-parallel stock removal. The technology (roughing/finishing/complete machining) can be selected. The cycle can be called from any chosen collision-free position. A tool offset must have been activated in the program with the cycle call. Call LCYC95 Contour shifted by finishing allowance Original contour 4 X 5 1 Infeed 3 2 1 Infeed 2 Roughing 3 Cut residual corners 4 Lift 5 Return Z Fig.9-13 Motional sequence with LCYC 95 cycle Condition Parameters z The cycle requires an active G23 (diameter programming). z The file SGUD.DEF, which is supplied on the cycles diskette, must be available in the control system. z The stock removal cycle can be called to the 3rd program level. Table 9-6 Parameters for the LCYC95 cycle Parameter R105 R106 R108 R109 R110 R111 R112 SINUMERIK 801 Operation and Programming-- Turning Meaning, Value Range Machining type, value range 1 ... 12 Finishing allowance, without sign Infeed depth, without sign Infeed angle for roughing, it should be zero at face machining. Contour clearance distance for roughing Feedrate for roughing Feedrate for finishing 9-21 Cycles Information R105 The machining types: z longitudinal/facing z internal/external z roughing/finishing/complete machining are defined by the parameter determining the type of machining. When longitudinal machining is selected, the infeed always takes place in the facing axis, and vice versa. Table 9-7 Variants of stock removal Value 1 2 3 4 5 6 7 8 9 10 11 12 Longitudinal/Facing (P) L P L P L P L P L P L P External/Internal (A/I) A A I I A A I I A A I I Roughing/Finishing/ Complete Machining Roughing Roughing Roughing Roughing Finishing Finishing Finishing Finishing Complete Complete Complete Complete If any other value is programmed for the parameter, the cycle is aborted and the following alarm output 61002 "Machining type incorrectly programmed". R106 A finishing allowance can be programmed in parameter R106. The workpiece is always rough-machined down to this finishing allowance. In this case, the residual corner produced in the course of each axis-parallel roughing process is immediately cut away in parallel with the contour at the same time. If no finishing allowance is programmed, the workpiece is rough-machined right down to the final contour. R108 The maximum possible infeed depth for the roughing process is entered under parameter R108. However, the cycle itself calculates the current infeed depth that is applied in rough-machining operations. R109 The infeed motion for roughing can be executed at an angle which can be programmed in parameter R109. In the face machining process a slanting immerse is not possible, R109 must be programmed to ZERO. R110 Parameter R110 specifies the distance by which the tool is lifted from the contour in both axes after each roughing operation so that it can be retracted by G0. 9-22 SINUMERIK 801 Operation and Programming-- Turning Cycles R111 The feedrate programmed under R111 applies to all paths on which stock is removed during roughing operations. If finishing is the only machining type selected, then this parameter has no meaning at all. R112 The feedrate programmed under R112 is applied for finishing operations. If roughing is the only machining type selected, then this parameter has no meaning at all. Contour definition The contour to be machined by stock removal is programmed in a subroutine. The name of the subroutine is transferred to the cycle via the _CNAME variable. The contour may consist of straight lines and circle segments; radii and chamfers can be inserted. The programmed circle sections can be quarter circles as a maximum. Undercuts may not be contained in the contour. If an undercut element is detected, the cycle is aborted, and the alarm 61605 "Contour incorrectly defined" is output. The contour must always be programmed in the direction that is traversed when finishing according to the selected machining direction. Example of contour programming X P 8 (3 5 ,1 2 0 ) P 7 (5 0 ,1 2 0 ) P 6 (6 2 ,9 6 ) P 5 (6 2 ,8 0 ) P 3 (7 7 ,7 0 ) P 4 (6 7 ,7 0 ) P 2 (8 5 ,5 4 ) P 0 (1 0 0 ,4 0 ) P 1 (8 5 ,4 0 ) Z P 0 = p ro g ra m m e d s ta rtin g p o in t o f c o n to u r P 8 = p ro g ra m m e d e n d p o in t Fig.9-14 Example of contour programming With the coordinates given in the program, the contour must be programmed for longitudinal external machining as follows: N10 G1 Z100 X40 ;Starting point N20 Z85 ;P1 N30 X54 ;P2 N40 Z77 X70 ;P3 SINUMERIK 801 Operation and Programming-- Turning 9-23 Cycles N50 Z67 ;P4 N60 G2 Z62 X80 CR=5 ;P5 N70 G1 Z62 X96 ;P6 N80 G3 Z50 X120 CR=12 ;P7 N90 G1 Z35 ;P8 M2 For external facing, the contour must be programmed starting at P8 (35,120) and finishing at P0 (100,40). Motional sequence Position reached prior to beginning of cycle: z Any position from which the contour starting point can be approached without risk of collision. The cycle produces the following motional sequence Roughing z Approach cycle starting point (calculated internally) with G0 in both axes simultaneously. z Perform depth infeed with the angle programmed under R109 to the next roughing depth. z Approach roughing cut point in parallel axes with G1 and at a feedrate programmed in R111. z Travel in parallel with contour along contour + finishing allowance up to the last roughing cut point with G1/G2/G3 and at feedrate R111. z Lift in each axis by the clearance (in mm) programmed in R110 and retract with G0. z Repeat this sequence until the final roughing depth is reached. z Approach the cycle starting point in individual axes with G0 z Approach the contour starting point in both axes simultaneously with G0. z Finish-machine along the contour with G1/G2/G3 and at the feedrate programmed in R112. z Retract to cycle starting point in both axes with G0. Finishing When finishing is selected, the tool radius compensation is automatically activated internally in the cycle. Starting point The cycle automatically calculates the point at which machining must start. The starting point is always approached in both axes simultaneously for roughing and in individual axes for finishing. In this case, the infeed axis approaches the starting point first. When complete machining is selected, the tool does not return to the internally calculated starting point after the last roughing cut. 9-24 SINUMERIK 801 Operation and Programming-- Turning Cycles Example The cycle requires the following two programs: z program with cycle call z contour subroutine (TESTK1.MPF) ;The contour shown in the example must be machined externally ;in a complete machining operation in the longitudinal axis. ;The maximum infeed is 5 mm, the finishing allowance is 1.2 mm, ;and the infeed angle is 7 degrees. N10 T1 D1 G0 G23 G95 S500 M3 F0.4 N20 Z125 X162 ;Definition of technology values ;Collision-free approach position prior to the call _CNAME= "TESTK1" ;Name of contour subroutine R105=9 R106=1.2 R108=5 R109=7 R110=1.5 R111=0.4 R112=0.25 N60 LCYC95 N70 G0 G90 X162 Z125 ;Set further parameters for ;cycle call ;Cycle call ;Re-approach starting position of X162 Z125 by different axes N99 M2 Subroutine "TESTK1" N10 G1 Z100 X40 N20 Z85 N30 X54 N40 Z77 X70 N50 Z67 N60 G2 Z62 X80 CR=5 N70 G1 Z62 X96 N80 G3 Z50 X120 CR=12 N90 G1 Z35 ;Starting point ;P1 ;P2 ;P3 ;P4 ;P5 ;P6 ;P7 ;P8 M2 SINUMERIK 801 Operation and Programming-- Turning 9-25 Cycles 9.9 Thread cutting - LCYC97 Function The thread cutting cycle is suitable for cutting external and internal, single-start or multiple-start threads on cylindrical and tapered bodies in the facing or longitudinal axis. Depth infeed is an automatic function. Whether a right-hand or left-hand thread is produced is determined by the direction of rotation of the spindle, which must be programmed before calling the cycle. Feed and spindle override are not effective in the traversing blocks containing thread cutting operations. Call LCYC97 R103 R101 R109 R110 R111 R100 = R102 R104 R106 External thread cutting Z Effect of parameters for lead, infeed angle and finishing allowance Fig.9-15 Schematic diagram of parameters for thread cutting Parameters Table 9-8 Parameters for LCYC97 cycle Parameter R100 R101 R102 R103 R104 R105 R106 R109 R110 R111 R112 R113 R114 9-26 Meaning, Value Range Diameter of thread at starting point Thread starting point in longitudinal axis Diameter at end point Thread end point in longitudinal axis Thread lead as value, without sign Definition of thread cutting method: Value range: 1, 2 Finishing allowance, without sign Approach path, without sign Run-out path, without sign Thread depth, without sign Starting point offset, without sign Number of rough cuts, without sign Number of threads, without sign SINUMERIK 801 Operation and Programming-- Turning Cycles Information R100, R101 These parameters define the thread starting point in X and Z. R102, R103 The thread end point is programmed under R102 and R103. In the case of cylindrical threads, one of these parameters has the same value as R100 or R101. R104 The thread lead is an axis-parallel value and is specified without sign. R105 Parameter R105 defines whether the thread is machined internally or externally. R105 = 1: External thread R105 = 2: Internal thread If the parameter is set to any other value, the cycle is aborted with the alarm 61002 "Machining type incorrectly programmed". R106 The programmed finishing allowance is subtracted from the specified thread depth. The remainder is divided into rough cuts. The finishing allowance is removed in one cut after roughing. R109, R110 Parameters R109 and R110 specifiy the internally calculated thread approach and run-out paths. The cycle shifts the programmed starting point forward by the approach distance. The run-out path extends the length of the thread beyond the programmed end point. R111 Parameter R111 defines the total depth of the thread. R112 An angle value can be programmed in this parameter. This value defines the point at which the first thread cut starts on the circumference of the turned part, i.e. it is a starting point offset. Possible values for this parameter are between 0.0001 ... + 359.9999 degrees. If no starting point offset is specified, the first thread automatically starts at the zero-degree marking. R113 Parameter R113 determines the number of roughing cuts for thread cutting operations. The cycle independently calculates the individual, current infeed depths as a function of the settings in R105 and R111. R114 This parameter specifies the number of threads. These are arranged symmetrically around the circumference of the turned part. Longitudinal or face thread The cycle itself decides whether a thread must be machined in the longitudinal or facing axis. If the angle on the taper is less than or equal to 45 degrees, then the thread is machined as a longitudinal thread, otherwise as a face thread. SINUMERIK 801 Operation and Programming-- Turning 9-27 Cycles Motional sequence Position reached prior to beginning of cycle: z Any position from which the programmed thread starting point + approach path can be approached without risk of collision. The cycle produces the following motional sequence: z Approach starting point at the beginning of the approach path (calculated internally in the cycle) to cut first thread with G0. z Infeed for rough cutting according to the infeed method defined under R105. z Repeat thread cuts according to the programmed number of rough cuts. z Remove the finishing allowance with G33. z Repeat the whole sequence for every further thread. Example X M42x2 Z 35 Fig.9-16 Example diagram ;A two-start thread, M42x2, must be machined. N10 G23 G95 F0.3 G90 T1 D1 S1000 M4 ;Define technology values N20 G0 Z100 X120 ;Program start position R100=42 R101=80 R102=42 R103=45 R104=4 ;Parameters for cycle call R105=1 R106=1 R109=12 R110=6 R111=1.083 R112=0 R113=3 R114=2 N50 LCYC97 ;Cycle call N100 G0 Z100 X60 ;Position after cycle end N110 M2 9-28 SINUMERIK 801 Operation and Programming-- Turning Cycles SINUMERIK 801 Operation and Programming-- Turning 9-29 SINUMERIK 801 Operation and Programming - Turning Usual Manual Order No.: A5E00702070 Edition: 11. 2005 A5E00702070