Serial No. 340839 Original Instructions er ve d MAZATROL SmoothAi ri H747PB1006E 34 08 C 39 O R PO R A TI O N .A ll Manual No.: gh ts re s (for Machining Centers) EIA/ISO Program . PROGRAMMING MANUAL N o. Serial No.: K ZA A ZA K IM Se ri al Before using this machine and equipment, fully understand the contents of this manual to ensure proper operation. Should any questions arise, please ask the nearest Technical Center or Technology Center. A IMPORTANT NOTICE Be sure to observe the safety precautions described in this manual and the contents of the safety plates on the machine and equipment. Failure may cause serious personal injury or material damage. Please replace any missing safety plates as soon as possible. 2. No modifications are to be performed that will affect operation safety. 3. For the purpose of explaining the operation of the machine and equipment, some illustrations may not include safety features such as covers, doors, etc. Before operation, make sure all such items are in place. 4. This manual was considered complete and accurate at the time of publication, however, due to our desire to constantly improve the quality and specification of all our products, it is subject to change or modification. If you have any questions, please contact the nearest Technical Center or Technology Center. C op yr ig ht (c )2 01 3 YA M 1. 5. Always keep this manual near the machinery for immediate use. 6. If a new manual is required, please order from the nearest Technical Center or Technology Center with the manual No. or the machine name, serial No. and manual name. 7. The export of machining programs may be restricted to prevent them from being used for military purposes. The machining programs you prepared are your property, so you should manage them yourself in accordance with the law. Issued by Manual Publication Section, YAMAZAKI MAZAK CORPORATION, Japan 06.2022 Copyright (C) 2017 YAMAZAKI MAZAK CORPORATION. All Rights Reserved. ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 Serial No. 340839 SAFETY PRECAUTIONS SAFETY PRECAUTIONS Preface Safety precautions relating to the CNC unit (in the remainder of this manual, referred to simply as the NC unit) that is provided in this machine are explained below. Not only the persons who create programs, but also those who operate the machine must thoroughly understand the contents of this manual to ensure safe operation of the machine. . Read all these safety precautions, even if your NC model does not have the corresponding functions or optional units and a part of the precautions do not apply. er ve d Rules This section contains the precautions to be observed as to the working methods and states usually expected. Of course, however, unexpected operations and/or unexpected working states may take place at the user site. During daily operation of the machine, therefore, the user must pay extra careful attention to its own working safety as well as to observe the precautions described below. 2. Although this manual contains as great an amount of information as it can, since it is not rare for the user to perform the operations that overstep the manufacturer-assumed ones, not all of “what the user cannot perform” or “what the user must not perform” can be fully covered in this manual with all such operations taken into consideration beforehand. It is to be understood, therefore, that functions not clearly written as “executable” are “inexecutable” functions. 3. The meanings of our safety precautions to DANGER, WARNING, and CAUTION are as follows: K ZA Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s 1. K IM A : Failure to follow these instructions could result in loss of life. ZA DANGER M A : Failure to observe these instructions could result in serious harm to a human life or body. 01 3 YA WARNING (c )2 : Failure to observe these instructions could result in minor injuries or serious machine damage. C op yr ig ht CAUTION HGENPA0105E S-1 Serial No. 340839 SAFETY PRECAUTIONS Basics After turning power on, keep hands away from the keys, buttons, or switches of the operating panel until an initial display has been made. Before proceeding to the next operations, fully check that correct data has been entered and/or set. If the operator performs operations without being aware of data errors, unexpected operation of the machine will result. WARNING er ve d . Before machining workpieces, perform operational tests and make sure that the machine operates correctly. No workpieces must be machined without confirmation of normal operation. Closely check the accuracy of programs by executing override, single-block, and other functions or by operating the machine at no load. Also, fully utilize tool path check, Virtual Machining, and other functions, if provided. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s Make sure that the appropriate feed rate and rotational speed are designated for the particular machining requirements. Always understand that since the maximum usable feed rate and rotational speed are determined by the specifications of the tool to be used, those of the workpiece to be machined, and various other factors, actual capabilities differ from the machine specifications listed in this manual. If an inappropriate feed rate or rotational speed is designated, the workpiece or the tool may abruptly move out from the machine. Before executing correction functions, fully check that the direction and amount of correction are correct. Unexpected operation of the machine will result if a correction function is executed without its thorough understanding. K ZA A ZA K IM Se ri al N o. Parameters are set to the optimum standard machining conditions prior to shipping of the machine from the factory. In principle, these settings should not be modified. If it becomes absolutely necessary to modify the settings, perform modifications only after thoroughly understanding the functions of the corresponding parameters. Modifications usually affect any program. Unexpected operation of the machine will result if the settings are modified without a thorough understanding. M A Remarks on the Cutting Conditions Recommended by the NC YA Before using the following cutting conditions: 01 3 • Cutting conditions that are the result of the MAZATROL Automatic Cutting Conditions Determination Function )2 WARNING ht (c • Cutting conditions for tools that are suggested to be used by the Machining Navigation Function or the Cutting Adviser C op yr ig Confirm that every necessary precaution in regards to safe machine setup has been taken – especially for workpiece fixturing/clamping and tool setup. Confirm that the machine door is securely closed before starting machining. Failure to confirm safe machine setup may result in serious injury or death. S-2 Serial No. 340839 SAFETY PRECAUTIONS Programming Fully check that the settings of the coordinate systems are correct. Even if the designated program data is correct, errors in the system settings may cause the machine to operate in unexpected places and the workpiece to abruptly move out from the machine in the event of contact with the tool. WARNING During surface velocity hold control, as the current workpiece coordinates of the surface velocity hold control axes approach zeroes, the spindle speed increases significantly. For the lathe, the workpiece may even come off if the chucking force decreases. Safety speed limits must therefore be observed when designating spindle speeds. gh ts re s er ve d . Even after inch/metric system selection, the units of the programs, tool information, or parameters that have been registered until that time are not converted. Fully check these data units before operating the machine. If the machine is operated without checks being performed, even existing correct programs may cause the machine to operate differently from the way it did before. N .A ll ri If a program is executed that includes the absolute data commands and relative data commands taken in the reverse of their original meaning, totally unexpected operation of the machine will result. Recheck the command scheme before executing programs. o. 34 08 C 39 O R PO R A TI O If an incorrect plane selection command is issued for a machine action such as arc interpolation or fixed-cycle machining, the tool may collide with the workpiece or part of the machine since the motions of the control axes assumed and those of actual ones will be interchanged. (This precaution applies only to NC units provided with EIA/ISO functions.) K ZA A Se ri al N The mirror image, if made valid, changes subsequent machine actions significantly. Use the mirror image function only after thoroughly understanding the above. (This precaution applies only to NC units provided with EIA/ISO functions.) YA M A ZA K IM If machine coordinate system commands or reference position returning commands are issued with a correction function remaining made valid, correction may become invalid temporarily. If this is not thoroughly understood, the machine may appear as if it would operate against the expectations of the operator. Execute the above commands only after making the corresponding correction function invalid. (This precaution applies only to NC units provided with EIA/ISO functions.) (c )2 01 3 The barrier function performs interference checks based on designated tool data. Enter the tool information that matches the tools to be actually used. Otherwise, the barrier function will not work correctly. C op yr ig ht The system of G-code and M-code commands differs, especially for turning, between the machines of INTEGREX i/e-Series and the other turning machines. Issuance of the wrong G-code or M-code command results in totally non-intended machine operation. Thoroughly understand the system of G-code and M-code commands before using this system. Sample program S1000M3 S1000M203 Machines of INTEGREX i/e-Series Turning machines –1 The milling spindle rotates at 1000 min . The turning spindle rotates at 1000 min–1. –1 The milling spindle rotates at 1000 min–1. The turning spindle rotates at 1000 min . S-3 Serial No. 340839 SAFETY PRECAUTIONS For the machines of INTEGREX i/e-Series, programmed coordinates can be rotated using an index unit of the MAZATROL program and a G68 command (coordinate rotate command) of the EIA/ISO program. However, for example, when the B-axis is rotated through 180 degrees around the Y-axis to implement machining with the turning spindle No. 2, the plus side of the X-axis in the programmed coordinate system faces downward and if the program is created ignoring this fact, the resulting movement of the tool to unexpected positions may incite collisions. To create the program with the plus side of the X-axis oriented in an upward direction, use the mirror function of the WPC shift unit or the mirror imaging function of G-code command (G50.1, G51.1). WARNING N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . After modifying the tool data specified in the program, be sure to perform the tool path check function, the Virtual Machining function, and other functions, and confirm that the program operates properly. The modification of tool data may cause even a field-proven machining program to change in operational status. If the user operates the machine without being aware of any changes in program status, interference with the workpiece could arise from unexpected operation. For example, if the cutting edge of the tool during the start of automatic operation is present inside the clearance-including blank (unmachined workpiece) specified in the common unit of the MAZATROL program, care is required since the tool will directly move from that position to the approach point because of no obstructions being judged to be present on this path. For this reason, before starting automatic operation, make sure that the cutting edge of the tool during the start of automatic operation is present outside the clearance-including workpiece specified in the common unit of the MAZATROL program. K ZA CAUTION A Se ri al If axis-by-axis independent positioning is selected and simultaneously rapid feed selected for each axis, movements to the ending point will not usually become linear. Before using these functions, therefore, make sure that no obstructions are present on the path. C op yr ig ht (c )2 01 3 YA M A ZA K IM Before starting the machining operation, be sure to confirm all contents of the program obtained by conversion. Imperfections in the program could lead to machine damage and operator injury. S-4 Serial No. 340839 SAFETY PRECAUTIONS Operations Single-block, feed hold, and override functions can be made invalid using system variables #3003 and #3004. Execution of this means the important modification that makes the corresponding operations invalid. Before using these variables, therefore, give thorough notification to related persons. Also, the operator must check the settings of the system variables before starting the above operations. WARNING re s er ve d . If manual intervention during automatic operation, machine locking, the mirror image function, or other functions are executed, the workpiece coordinate systems will usually be shifted. When making machine restart after manual intervention, machine locking, the mirror image function, or other functions, consider the resulting amounts of shift and take the appropriate measures. If operation is restarted without any appropriate measures being taken, collision with the tool or workpiece may occur. ri gh ts Use the dry run function to check the machine for normal operation at no load. Since the feed rate at this time becomes a dry run rate different from the program-designated feed rate, the axes may move at a feed rate higher than the programmed value. 34 08 C 39 O R PO R A TI O N .A ll After operation has been stopped temporarily and insertion, deletion, updating, or other commands executed for the active program, unexpected operation of the machine may result if that program is restarted. No such commands should, in principle, be issued for the active program. During manual operation, fully check the directions and speeds of axial movement. o. For a machine that requires manual homing, perform manual homing operations after turning power on. Since the software-controlled stroke limits will remain ineffective until manual homing is completed, the machine will not stop even if it oversteps the limit area. As a result, serious machine damage will result. K ZA Se ri al N CAUTION C op yr ig ht (c )2 01 3 YA M A ZA K IM A Do not designate an incorrect pulse multiplier when performing manual pulse handle feed operations. If the multiplier is set to 1000 times and the handle operated inadvertently, axial movement will become faster than that expected. S-5 Serial No. 340839 REQUEST TO THE USER REQUEST TO THE USER Request for Saving Data of Machining Programs Machining programs saved on the local disk of the NC unit may not be read out in the event of accidental local disk trouble. The user, therefore, is earnestly requested to back up and store every machining program of importance at regular intervals onto an external memory (USB memory, SD card, etc.). er ve d . • The procedure for data storage is detailed in the Operating Manual, Part 3 (OPERATING NC UNIT AND PREPARATION FOR AUTOMATIC OPERATION), Chapter 10, (DISPLAYS RELATED TO DATA STORAGE). ri gh ts re s • Always use an initialized USB memory or SD card. The USB connector and the SD card slot are located on the right side of the machine operating panel. SD card K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll USB memory CAUTION On machines with a random ATC feature, each actual ATC operation changes the tool data (in pocket numbers). Be sure not to run the machine after loading the externally stored data of the TOOL DATA display without having confirmed the data’s correspondence to the current tooling on the magazine. Otherwise the machine cannot be be guaranteed to operate normally. S-6 Serial No. 340839 BEFORE USING THE NC UNIT BEFORE USING THE NC UNIT Limited Warranty The warranty of the manufacturer does not cover any trouble arising if the NC unit is used for its non-intended purpose. Take notice of this when operating the unit. Examples of the trouble arising if the NC unit is used for its non-intended purpose are listed below. Trouble associated with and caused by the use of any commercially available software products (including user-created ones) 2. Trouble associated with and caused by the use of any Windows operating systems 3. Trouble associated with and caused by the use of any commercially available computer equipment ts re s er ve d . 1. Ambient temperature 2. 34 08 C 39 O R PO R A TI O During machine operation: 0° to 50°C (32° to 122°F) N 1. .A ll ri gh Operating Environment Relative humidity During machine operation: 10 to 75% (without bedewing) As humidity increases, insulation deteriorates causing electrical component parts to deteriorate quickly. K A Se ri Network Setting ZA al N o. Note : K IM The NC unit operates using dedicated network adapters. ZA Note 1: Do not change the settings of the following two network adapters. Any changes will prevent the NC unit from operating normally. C op yr ig ht (c )2 01 3 YA M A • Ethernet_NC (IP address:192.168.100.2) • NC Trainer Virtual Network (IP address:192.168.202.10) S-7 Serial No. 340839 BEFORE USING THE NC UNIT Note 2: Use “Ethernet_PC” to connect the NC to an intra-factory network and other systems. Do not use, however, the following network addresses: “192.168.100.xxx” and “192.168.202.xxx” • If the setting of the network adapter “Ethernet_PC” is changed, other systems connected to the network may not operate normally. So, be sure to check the settings of the other systems on the network as well. Here are some examples of systems connected to the network. Other systems Sections describing how to configure network settings Operating Manual of the Smooth PMC “Network Setting for the MAZATROL at the Machine” TOOL HIVE Operating Manual & Maintenance Manual of the Extended TOOL HIVE “How to Change Network Settings” Magazine display unit for Tool ID (touch panel) Operating Manual of the Visual Tool ID/Data Management “CONNECTING TO THE LOCAL AREA NETWORK” Mazak iCONNECT/ MAZA-CARE 4.0 The network settings for communication devices are made by Mazak. If the settings are to be changed, contact Mazak Technical Center or Technology Center. .A ll ri gh ts re s er ve d . Smooth PMC o. ZA K N A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri 21 683 43816 55555 55556 55580 55590 to 55599 57400 al • • • • • • • • 34 08 C 39 O R PO R A TI O N Note 3: If you configure network settings for the NC unit, using Internet Information Services (IIS) on Windows, do not use the following port numbers. S-8 E Serial No. 340839 CONTENTS 1 CONTROLLED AXES ......................................................................... 1-1 1-1 UNITS OF PROGRAM DATA INPUT .................................................. 2-1 2-1 Units of Program Data Input ............................................................................... 2-1 2-2 Units of Data Setting........................................................................................... 2-1 2-3 Ten-Fold Program Data ...................................................................................... 2-1 .A ll DATA FORMATS ................................................................................ 3-1 Tape Codes ........................................................................................................ 3-1 3-2 Program Formats................................................................................................ 3-5 3-3 Tape Data Storage Format ................................................................................. 3-7 3-4 Optional Block Skip ............................................................................................ 3-7 3-5 Program Number, Sequence Number and Block Number: O, N ........................ 3-8 3-6 Parity-H/V ........................................................................................................... 3-9 3-7 List of G-Codes ................................................................................................ 3-11 o. 34 08 C 39 O R PO R A TI O N 3-1 K ZA A YA 01 3 )2 BUFFER REGISTERS......................................................................... 4-1 Input Buffer ......................................................................................................... 4-1 op Preread Buffer .................................................................................................... 4-2 C 4-2 yr ig 4-1 ht (c 4 M A ZA K IM Se ri al N 3 ri gh ts re s er ve d . 2 Coordinate Words and Controlled Axes ............................................................. 1-1 5 POSITION PROGRAMMING ............................................................... 5-1 5-1 Dimensional Data Input Method ......................................................................... 5-1 5-1-1 5-2 Absolute/Incremental data input: G90/G91 ............................................................ 5-1 Inch/Metric Selection: G20/G21 .......................................................................... 5-3 C-1 Serial No. 340839 5-3 INTERPOLATION FUNCTIONS .......................................................... 6-1 Positioning (Rapid Traverse): G00 ..................................................................... 6-1 6-2 One-Way Positioning: G60 ................................................................................. 6-4 6-3 Linear Interpolation: G01 .................................................................................... 6-5 6-4 Circular Interpolation: G02, G03 ......................................................................... 6-6 6-5 Radius Designated Circular Interpolation: G02, G03 .......................................... 6-9 6-6 Spiral Interpolation: G2.1, G3.1 ........................................................................ 6-11 6-7 Plane Selection: G17, G18, G19 ...................................................................... 6-19 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 6-1 Outline ................................................................................................................ 6-19 6-7-2 Plane selection methods ..................................................................................... 6-20 N o. 6-7-1 6-9 Virtual-Axis Interpolation: G07 .......................................................................... 6-24 ZA A ri K IM Se K Polar Coordinate Interpolation ON/OFF: G12.1/G13.1 (Option) ....................... 6-21 al 6-8 A ZA 6-10 Spline Interpolation: G06.1 (Option) ................................................................. 6-25 01 3 YA M 6-11 Modal Spline Interpolation: G61.2 (Option) ...................................................... 6-36 )2 6-12 NURBS Interpolation: G06.2 (Option)............................................................... 6-37 ig ht (c 6-13 Cylindrical Interpolation: G07.1 (Option)........................................................... 6-44 op yr 6-14 Helical Interpolation: G02, G03 ........................................................................ 6-55 C 6 Decimal Point Input ............................................................................................ 5-4 6-15 Fixed Gradient Control for G0 (Option)............................................................. 6-57 6-16 Rapid Traverse Overlap ................................................................................... 6-58 6-17 Involute Interpolation (Option) .......................................................................... 6-60 6-18 Circle Cutting: G12, G13 .................................................................................. 6-66 C-2 Serial No. 340839 FEED FUNCTIONS ............................................................................. 7-1 7-1 Rapid Traverse Rates......................................................................................... 7-1 7-2 Cutting Feed Rates............................................................................................. 7-1 7-3 Asynchronous/Synchronous Feed: G94/G95 ..................................................... 7-2 7-4 Selecting a Feed Rate and Effects on Each Control Axis ................................... 7-3 7-5 Automatic Acceleration/Deceleration .................................................................. 7-6 7-6 Limitation of Speed ............................................................................................. 7-7 7-7 Exact-Stop Check: G09 ...................................................................................... 7-7 7-8 Exact-Stop Check Mode: G61 .......................................................................... 7-10 7-9 Automatic Corner Override: G62 ...................................................................... 7-11 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 7 N o. 7-10 Tapping Mode: G63 .......................................................................................... 7-17 K ZA A Se ri al 7-11 Cutting Mode: G64 ........................................................................................... 7-17 K IM 7-12 Geometry Compensation: G61.1/,K/P/R ........................................................... 7-18 A ZA 7-12-1 Geometry compensation function: G61.1 ............................................................ 7-18 YA M 7-12-2 Specification of accuracy coefficient (,K) ............................................................. 7-19 )2 01 3 7-12-3 Specification of SMC data No. (P) ....................................................................... 7-19 ht (c 7-12-4 Smooth corner control (R) ................................................................................... 7-20 DWELL FUNCTIONS .......................................................................... 8-1 C 8 op yr ig 7-13 Inverse Time Feed: G93 ................................................................................... 7-24 8-1 Dwell Command in Time: (G94) G04.................................................................. 8-1 8-2 Dwell Command in Number of Revolutions: (G95) G04 ..................................... 8-2 C-3 Serial No. 340839 9 MISCELLANEOUS FUNCTIONS ........................................................ 9-1 9-1 Miscellaneous Functions (M3-Digit).................................................................... 9-1 9-2 No. 2 Miscellaneous Functions (A8/B8/C8-Digit) ................................................ 9-2 9-3 Output of Auxiliary Function Codes during Axis Movement: G117/G118 ........... 9-3 er ve d . 10 SPINDLE FUNCTIONS ..................................................................... 10-1 re s 10-1 Spindle Function ............................................................................................... 10-1 gh ts 10-1-1 Binary output of spindle speed ............................................................................ 10-1 .A ll ri 10-1-2 Spindle speed command with decimal digits ....................................................... 10-1 34 08 C 39 O R PO R A TI O N 10-2 Spindle Speed Range Setting: G92 .................................................................. 10-2 11 TOOL FUNCTIONS ........................................................................... 11-1 al N o. 11-1 Tool Function (for ATC Systems) ..................................................................... 11-1 K ZA A Se ri 11-2 Tool Function (T3-Digit) .................................................................................... 11-1 K IM 11-3 Tool Function (8-Digit T-Code) ......................................................................... 11-2 M A ZA 11-4 Tool Function [with Tool Identifiers] .................................................................. 11-2 01 3 YA 11-4-1 Programming format............................................................................................ 11-2 )2 11-4-2 Spare tool selection ............................................................................................. 11-2 ig ht (c 11-4-3 Precautions ......................................................................................................... 11-2 C op yr 12 TOOL OFFSET FUNCTIONS ............................................................ 12-1 12-1 Tool Offset ........................................................................................................ 12-1 12-2 Tool Length Offset/Cancellation: G43, G44, or T-Code/G49 ............................ 12-5 12-3 Tool Length Offset in Tool-Axis Direction: G43.1 (Option)................................ 12-7 12-4 Tool Position Offset: G45 to G48 .................................................................... 12-14 C-4 Serial No. 340839 12-5 Tool Radius Compensation: G40, G41, G42 .................................................. 12-20 12-5-1 Overview ........................................................................................................... 12-20 12-5-2 Tool radius compensation ................................................................................. 12-20 12-5-3 Tool radius compensation using other commands............................................. 12-29 12-5-4 Corner movement ............................................................................................. 12-36 er ve d . 12-5-5 Interruptions during tool radius compensation ................................................... 12-36 re s 12-5-6 General precautions on tool radius compensation ............................................. 12-38 ri gh ts 12-5-7 Offset number updating during the offset mode ................................................. 12-39 .A ll 12-5-8 Excessive cutting due to tool radius compensation ........................................... 12-41 34 08 C 39 O R PO R A TI O N 12-5-9 Interference check ............................................................................................. 12-43 12-6 Three-Dimensional Tool Radius Compensation ............................................. 12-50 N o. 12-6-1 Function description .......................................................................................... 12-50 K ZA ri al 12-6-2 Programming methods ...................................................................................... 12-51 A K IM Se 12-6-3 Correlationships to other functions .................................................................... 12-55 ZA 12-6-4 Miscellaneous notes on three-dimensional tool radius compensation................ 12-55 YA M A 12-7 Programmed Data Setting: G10 ..................................................................... 12-56 01 3 12-8 Tool Offsetting Based on MAZATROL Tool Data ........................................... 12-64 ht (c )2 12-8-1 Selection parameters ........................................................................................ 12-64 yr ig 12-8-2 Tool length offsetting ......................................................................................... 12-65 C op 12-8-3 Tool radius compensation ................................................................................. 12-66 12-8-4 Tool data update (during automatic operation) .................................................. 12-67 12-9 Shaping Function (Option) .............................................................................. 12-68 12-9-1 Overview ........................................................................................................... 12-68 12-9-2 Programming format.......................................................................................... 12-69 C-5 Serial No. 340839 12-9-3 Detailed description ........................................................................................... 12-69 12-9-4 Remarks............................................................................................................ 12-76 12-9-5 Relationship to other functions .......................................................................... 12-77 12-9-6 Sample program................................................................................................ 12-79 . 13 PROGRAM SUPPORT FUNCTIONS ................................................ 13-1 er ve d 13-1 Hole Machining Pattern Cycles: G34.1/G35/G36/G37.1................................... 13-1 ts re s 13-1-1 Overview ............................................................................................................. 13-1 ri gh 13-1-2 Holes on a circle: G34.1 ...................................................................................... 13-2 N .A ll 13-1-3 Holes on a line: G35 ............................................................................................ 13-3 34 08 C 39 O R PO R A TI O 13-1-4 Holes on an arc: G36 .......................................................................................... 13-4 13-1-5 Holes on a grid: G37.1 ........................................................................................ 13-5 N o. 13-2 Fixed Cycles ..................................................................................................... 13-6 K ZA A Se ri al 13-2-1 Outline ................................................................................................................ 13-6 K IM 13-2-2 Fixed-cycle machining data format ...................................................................... 13-7 A ZA 13-2-3 G71.1 (Chamfering cutter CW) .......................................................................... 13-12 YA M 13-2-4 G72.1 (Chamfering cutter CCW) ....................................................................... 13-13 )2 01 3 13-2-5 G73 (High-speed deep-hole drilling) .................................................................. 13-14 ht (c 13-2-6 G74 (Reverse tapping) ...................................................................................... 13-15 yr ig 13-2-7 G75 (Boring) ..................................................................................................... 13-16 C op 13-2-8 G76 (Boring) ..................................................................................................... 13-17 13-2-9 G77 (Back spot facing) ...................................................................................... 13-18 13-2-10 G78 (Boring) ..................................................................................................... 13-19 13-2-11 G79 (Boring) ..................................................................................................... 13-20 13-2-12 G81 (Spot drilling) ............................................................................................. 13-20 C-6 Serial No. 340839 13-2-13 G82 (Drilling) ..................................................................................................... 13-21 13-2-14 G83 (Deep-hole drilling) .................................................................................... 13-22 13-2-15 G84 (Tapping) ................................................................................................... 13-23 13-2-16 G85 (Reaming).................................................................................................. 13-24 13-2-17 G86 (Boring) ..................................................................................................... 13-24 er ve d . 13-2-18 G87 (Back boring) ............................................................................................. 13-25 re s 13-2-19 G88 (Boring) ..................................................................................................... 13-26 gh ts 13-2-20 G89 (Boring) ..................................................................................................... 13-26 .A ll ri 13-2-21 Synchronous tapping (Option) ........................................................................... 13-27 34 08 C 39 O R PO R A TI O N 13-2-22 G82.2 [Automatic pecking cycle] (Option).......................................................... 13-31 13-2-23 Punch tapping (Option) ..................................................................................... 13-33 N o. 13-3 Suppression of Single-Block Stop for Fixed Cycles ........................................ 13-38 K ZA ri al 13-3-1 Function description .......................................................................................... 13-38 A K IM Se 13-3-2 Examples of operation....................................................................................... 13-38 ZA 13-4 Initial Point and R-Point Level Return: G98 and G99 ..................................... 13-39 YA M A 13-5 Scaling ON/OFF: G51/G50 ............................................................................. 13-40 )2 01 3 13-6 Mirror Image ON/OFF by G-Code: G51.1/G50.1 ............................................ 13-53 ht (c 13-7 Mirror Image ON/OFF by M-Code: M91, M92, M93/M90 ............................... 13-55 op yr ig 13-8 Subprogram Control: M98, M99 ..................................................................... 13-56 C 13-9 End Processing: M02, M30, M998, M999 ....................................................... 13-63 13-10 Linear Angle Commands ................................................................................ 13-64 13-11 Macro Call Function: G65, G66, G66.1, G67 .................................................. 13-65 13-11-1 User macros...................................................................................................... 13-65 13-11-2 Macro call instructions ....................................................................................... 13-66 C-7 Serial No. 340839 13-11-3 Variables ........................................................................................................... 13-75 13-11-4 Types of variables ............................................................................................. 13-77 13-11-5 Arithmetic operation commands ...................................................................... 13-108 13-11-6 Control commands .......................................................................................... 13-112 13-11-7 External output commands (Output via RS-232C) ........................................... 13-121 er ve d . 13-11-8 External output command (Output onto the local disk) .................................... 13-123 ts Specific examples of programming using user macros................................ 13-127 ri gh 13-11-10 re s 13-11-9 Precautions ..................................................................................................... 13-125 .A ll 13-12 Geometric Commads.................................................................................... 13-131 34 08 C 39 O R PO R A TI O N 13-13 Corner Chamfering and Corner Rounding Commands................................. 13-133 13-13-1 Corner chamfering ( ,C_) ................................................................................. 13-133 N o. 13-13-2 Corner rounding ( ,R_) .................................................................................... 13-134 K ZA A Se ri al 14 COORDINATE SYSTEM SETTING FUNCTIONS ............................. 14-1 ZA K IM 14-1 Fundamental Machine Coordinate System, Workpiece Coordinate Systems, and Local Coordinate Systems ......................................................... 14-1 YA M A 14-2 Machine Zero Point and Second, Third, and Fourth Reference Points............. 14-2 )2 01 3 14-3 Fundamental Machine Coordinate System Selection: G53 .............................. 14-3 ht (c 14-4 Coordinate System Setting: G92 ...................................................................... 14-4 op yr ig 14-5 Automatic Coordinate System Setting .............................................................. 14-5 C 14-6 Reference Point Return: G28, G29................................................................... 14-6 14-7 Second, Third, or Fourth Reference Point Return: G30.................................... 14-8 14-8 Reference Point Check Command: G27 ........................................................ 14-10 14-9 Programmed Coordinate Rotation: G68/G69 ................................................. 14-11 14-10 Workpiece Coordinate System Setting and Selection: (G92) G54 to G59 ...... 14-13 C-8 Serial No. 340839 14-11 Additional Workpiece Coordinate System Setting and Selection: G54.1 ........ 14-18 14-12 Local Coordinate System Setting: G52........................................................... 14-24 14-13 Reading/Writing of MAZATROL Program Basic Coordinates ......................... 14-29 14-13-1 Rewriting ........................................................................................................... 14-30 er ve d . 14-14 Workpiece Coordinate System Rotation ......................................................... 14-32 re s 14-15 Three-Dimensional Coordinate Conversion ON/OFF: G68/G69 (Option) ....... 14-45 gh ts 15 MEASUREMENT SUPPORT FUNCTIONS ....................................... 15-1 .A ll ri 15-1 Skip Function: G31 ........................................................................................... 15-1 34 08 C 39 O R PO R A TI O N 15-1-1 Function description ............................................................................................ 15-1 15-2 Skip Coordinate Reading.................................................................................. 15-2 N o. 15-3 Amount of Coasting in the Execution of a G31 Block ....................................... 15-3 K ZA Se ri al 15-4 Skip Coordinate Reading Error ......................................................................... 15-4 K IM A 15-5 Multi-Step Skip: G31.1, G31.2, G31.3, G04 ..................................................... 15-5 M A ZA 16 PROTECTIVE FUNCTIONS .............................................................. 16-1 01 3 YA 16-1 Pre-move Stroke Check ON/OFF: G22/G23 .................................................... 16-1 (c )2 17 THREADING: G33............................................................................. 17-1 yr ig ht 17-1 Equal-Lead Threading ...................................................................................... 17-1 C op 17-2 Continuous Threading ...................................................................................... 17-4 17-3 Inch Threading ................................................................................................. 17-4 18 DYNAMIC OFFSETTING: M173, M174 (OPTION) ............................ 18-1 19 HOB MILLING (OPTION) .................................................................. 19-1 19-1 Hob Milling Mode ON/OFF: G114.3/G113 ........................................................ 19-1 C-9 Serial No. 340839 19-2 Hob Milling Mode II (Hob Milling with Positioning Control) .............................. 19-9 20 HIGH-SPEED SMOOTHING CONTROL FUNCTION ........................ 20-1 20-1 Programming Format........................................................................................ 20-2 20-2 Commands Available in the High-Speed Smoothing Control Mode ................. 20-2 er ve d . 20-3 Additional Functions in the High-Speed Smoothing Control Mode ................... 20-4 re s 20-4 Related Parameters.......................................................................................... 20-4 gh ts 20-5 Restrictions ....................................................................................................... 20-5 .A ll ri 20-6 Related Alarms ................................................................................................. 20-5 34 08 C 39 O R PO R A TI O N 21 TORNADO TAPPING (G130) ............................................................ 21-1 22 HIGH-SPEED MACHINING MODE FEATURE .................................. 22-1 K al N o. 22-1 Programming Format........................................................................................ 22-2 ZA A K IM Se ri 22-2 Commands Available in the High-Speed Machining Mode ............................... 22-2 ZA 22-3 Additional Functions in the High-Speed Machining Mode ................................ 22-4 YA M A 22-4 Restrictions ....................................................................................................... 22-6 01 3 23 AUTOMATIC TOOL LENGTH MEASUREMENT: G37 ...................... 23-1 yr ig ht (c )2 24 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) .......................................................................................... 24-1 C op 25 COMPENSATION FOR DEVIATION OF THE AXIS OF ROTATION OF THE TILTING TABLE ............................................... 25-1 26 FIVE-AXIS MACHINING FUNCTION................................................. 26-1 26-1 Tool Tip Point Control (Option) ......................................................................... 26-1 26-1-1 Function outline ................................................................................................... 26-1 C-10 Serial No. 340839 26-1-2 Detailed description ............................................................................................. 26-3 26-1-3 Relationship to other functions .......................................................................... 26-23 26-1-4 Restrictions ....................................................................................................... 26-33 26-1-5 Related parameters ........................................................................................... 26-35 26-2 Cutting Point Command (Option) ................................................................... 26-39 er ve d . 26-2-1 Function outline ................................................................................................. 26-39 re s 26-2-2 Detailed description ........................................................................................... 26-40 ri gh ts 26-2-3 Relationship to other functions .......................................................................... 26-52 .A ll 26-2-4 Restrictions ....................................................................................................... 26-56 34 08 C 39 O R PO R A TI O N 26-2-5 Related parameters ........................................................................................... 26-59 26-3 Inclined-Plane Machining: G68.2, G68.3, G68.4, G53.1................................. 26-60 N o. 26-3-1 Function description for type A .......................................................................... 26-61 K ZA Se ri al 26-3-2 Restrictions for type A ....................................................................................... 26-77 K IM A 26-3-3 Function description for type B .......................................................................... 26-84 ZA 26-3-4 Restrictions for type B ....................................................................................... 26-86 YA M A 26-3-5 Related parameters ........................................................................................... 26-91 01 3 26-4 Tool Radius Compensation for Five-Axis Machining (Option) ........................ 26-92 (c )2 26-4-1 Function outline ................................................................................................. 26-92 yr ig ht 26-4-2 Function description .......................................................................................... 26-92 C op 26-4-3 Operation of tool radius compensation for five-axis machining .......................... 26-94 26-4-4 Method of computing the offset vector ............................................................... 26-94 26-4-5 Relationship to other functions .......................................................................... 26-96 26-4-6 Restrictions ....................................................................................................... 26-98 26-5 Workpiece Setup Error Correction: G54.4P0, G54.4P1 to G54.4P7 (Option) ........................................................................................................ 26-101 C-11 Serial No. 340839 26-5-1 Function outline ............................................................................................... 26-101 26-5-2 Function description ........................................................................................ 26-101 26-5-3 Relationship to other functions ........................................................................ 26-109 26-5-4 Restrictions ..................................................................................................... 26-110 er ve d . 26-5-5 Compensation for misalignment of axes A and C (only for VARIAXIS i-1050 series) ............................................................................................................. 26-112 re s 26-6 Five-Axis Spline Interpolation (Option) ......................................................... 26-113 gh ts 26-6-1 Function outline ............................................................................................... 26-113 .A ll ri 26-6-2 Function description ........................................................................................ 26-113 34 08 C 39 O R PO R A TI O N 26-6-3 Restrictions ..................................................................................................... 26-121 26-7 Selection from Multiple Sets for Five-Axis Machining (Option) ..................... 26-122 o. 26-7-1 Function outline ............................................................................................... 26-122 K al N 26-7-2 Function description ........................................................................................ 26-122 ZA A Se ri 26-7-3 Restrictions ..................................................................................................... 26-122 ZA K IM 26-7-4 Related parameters ......................................................................................... 26-123 YA M A 27 CHOPPING FUNCTION (OPTION) ................................................... 27-1 01 3 28 ENGRAVING FUNCTION (OPTION) ................................................. 28-1 ht (c )2 29 FUNCTIONS FOR TURNING (ONLY FOR VARIAXIS-i T) ................ 29-1 op yr ig 29-1 Preparatory Functions for Selecting the Turning Plane .................................... 29-1 C 29-1-1 Outline ................................................................................................................ 29-1 29-1-2 Detailed description ............................................................................................. 29-1 29-1-3 Sample programs ................................................................................................ 29-2 29-1-4 Relationship to other preparatory functions ......................................................... 29-3 29-1-5 Remarks on setting the coordinate system .......................................................... 29-5 C-12 Serial No. 340839 29-1-6 Miscellaneous notes ............................................................................................ 29-6 29-1-7 Related alarms .................................................................................................... 29-7 29-2 Selection between Diameter and Radius Data Input: G10.9 ............................ 29-8 29-3 Constant Cutting Speed Control ON/OFF: G96/G97 ...................................... 29-10 . 29-4 Fixed Cycles for Turning................................................................................. 29-12 er ve d 29-4-1 Longitudinal turning cycle: G290 ....................................................................... 29-13 ts re s 29-4-2 Threading cycle: G292 ...................................................................................... 29-15 ri gh 29-4-3 Transverse turning cycle: G294......................................................................... 29-17 N .A ll 29-5 Compound Fixed Cycles for Turning .............................................................. 29-19 34 08 C 39 O R PO R A TI O 29-5-1 Longitudinal roughing cycle: G271 .................................................................... 29-20 29-5-2 Transverse roughing cycle: G272 ...................................................................... 29-25 N o. 29-5-3 Contour-parallel roughing cycle: G273 .............................................................. 29-27 K ZA Se ri al 29-5-4 Finishing cycle: G270 ........................................................................................ 29-31 K IM A 29-5-5 Longitudinal cut-off cycle: G274 ........................................................................ 29-32 A ZA 29-5-6 Transverse cut-off cycle: G275.......................................................................... 29-35 YA M 29-5-7 Compound threading cycle: G276 ..................................................................... 29-38 )2 01 3 29-5-8 General notes on the compound fixed cycles G270 to G276 ............................. 29-44 ht (c 29-6 Tool Nose Point and Compensation Directions .............................................. 29-47 C op yr ig 30 PARALLEL AXES COMPOSITION CONTROL: G124, G125 (OPTION) .......................................................................................... 30-1 30-1 Function Outline ............................................................................................... 30-1 30-2 Function Description ......................................................................................... 30-1 30-3 Restrictions ....................................................................................................... 30-7 30-4 Precautions ...................................................................................................... 30-8 C-13 Serial No. 340839 31 ORBIT MACHINING: G148, G149 (OPTION) .................................... 31-1 31-1 Function Outline ............................................................................................... 31-1 31-2 Function Description ......................................................................................... 31-1 31-3 Restrictions ..................................................................................................... 31-10 er ve d . 31-4 Remarks ......................................................................................................... 31-11 re s 32 EDITING AN EIA/ISO PROGRAM ..................................................... 32-1 ri gh ts 32-1 PROGRAM Display for EIA/ISO Programs ....................................................... 32-1 .A ll 32-1-1 Data display ........................................................................................................ 32-1 34 08 C 39 O R PO R A TI O N 32-1-2 QUICK EIA .......................................................................................................... 32-3 32-2 Editing a Program ............................................................................................. 32-7 N o. 32-2-1 Procedure for creating/editing an EIA/ISO program ............................................. 32-7 K ZA Se ri al 32-2-2 Menu functions for editing a program .................................................................. 32-8 K IM A 32-2-3 Description of editing operations ......................................................................... 32-8 ZA 32-2-4 Entering macro instructions ............................................................................... 32-13 YA M A 32-2-5 Custom display.................................................................................................. 32-14 01 3 32-2-6 Displaying two programs on the screen ............................................................. 32-36 (c )2 32-2-7 Editing programs stored in external memory areas ........................................... 32-38 yr ig ht 32-2-8 Displaying the G-code list and M-code list ......................................................... 32-38 C op 32-3 Add-In EIA Function ....................................................................................... 32-39 32-4 Analysis of Programs (VIEW SURF Function) ................................................ 32-42 32-4-1 Procedure for analysis of programs ................................................................... 32-42 32-4-2 SMC DATA SELECT window ............................................................................ 32-45 32-4-3 Analysis window ................................................................................................ 32-46 C-14 Serial No. 340839 32-4-4 Types of analyses ............................................................................................. 32-47 32-4-5 Analysis setting window .................................................................................... 32-51 32-4-6 Process list display area.................................................................................... 32-52 32-5 Help Display for Orbit Machining (Option) ...................................................... 32-53 32-5-1 Data display ...................................................................................................... 32-53 er ve d . 32-5-2 Reference data for orbit machining.................................................................... 32-54 re s 32-5-3 Calculated data for orbit machining ................................................................... 32-56 ri gh ts 32-5-4 Display mode select buttons.............................................................................. 32-56 .A ll 32-5-5 Graphic column ................................................................................................. 32-57 34 08 C 39 O R PO R A TI O N 32-5-6 Changing the active section .............................................................................. 32-60 N o. 33 PROGRAM OPTIMIZATION, USING 3D CAD MODELS (OPTION) .......................................................................................................... 33-1 K ZA Se ri al 33-1 Starting the Function ........................................................................................ 33-1 K IM A 33-2 Program Optimization Procedure ..................................................................... 33-2 A ZA 33-3 Loadable CAD File Formats ............................................................................. 33-3 YA M 33-4 Displayed Items ................................................................................................ 33-4 )2 01 3 33-4-1 Process selection ................................................................................................ 33-5 ht (c 33-4-2 Display of operation process data ....................................................................... 33-6 op yr ig 33-4-3 3D display operation ........................................................................................... 33-7 C 33-5 Operation Procedure ........................................................................................ 33-8 33-5-1 Initial configuration .............................................................................................. 33-8 33-5-2 Model layout ...................................................................................................... 33-14 33-5-3 Analysis............................................................................................................. 33-17 33-5-4 Tool path optimization ....................................................................................... 33-22 C-15 Serial No. 340839 33-5-5 Program creation............................................................................................... 33-25 33-6 Document ....................................................................................................... 33-26 33-6-1 Data stored ....................................................................................................... 33-26 33-6-2 Time when the document is saved .................................................................... 33-26 33-6-3 Precautions ....................................................................................................... 33-26 er ve d . 33-6-4 Input and output of a document ......................................................................... 33-26 ts re s 33-7 Optimizable Programs .................................................................................... 33-28 ri gh 33-7-1 Applicable programs ......................................................................................... 33-28 .A ll 33-7-2 Applicable tools ................................................................................................. 33-28 34 08 C 39 O R PO R A TI O N 33-7-3 Optimized program ............................................................................................ 33-28 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 33-7-4 Precautions ....................................................................................................... 33-29 C-16 E Serial No. 340839 CONTROLLED AXES 1 CONTROLLED AXES 1-1 Coordinate Words and Controlled Axes 1 Under standard specifications, there are three-dimensional controlled axes. With an added feature and a special option, the machine can control up to a maximum of six axes, including the three fundamental axes. The direction of machining can be designated using a predetermined coordinate word consisting of an alphabetic character. er ve d . For X-Y table re s +Z +Z ts +Y gh +X 34 08 C 39 O R PO R A TI O N .A ll ri Program coordinates Workpiece +X X-Y table +Y Bed K ZA A K IM Se ri al N o. Table moving directions A ZA MEP001 YA M For X-Y table and turntable Workpiece Workpiece +X (c )2 01 3 +Z ht ig +C +Y Table turning direction C op yr +X Program coordinates +C Table moving directions +Y MEP002 1-1 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 1 CONTROLLED AXES 1-2 E Serial No. 340839 UNITS OF PROGRAM DATA INPUT 2 UNITS OF PROGRAM DATA INPUT 2-1 Units of Program Data Input 2 The movements on coordinate axes are to be commanded in the MDI mode or machining program. The movement data are expressed in millimeters, inches or degrees. 2-2 Units of Data Setting er ve d . Various data commonly used for control axes, such as offsetting data, must be set for the machine to perform an operation as desired. The units of data setting and those of program data input are listed below. Linear axis Units of program data input 0.0001 mm 0.00001 in 0.0001 deg Units of data setting 0.0001 mm 0.00001 in re s Inch system ts Rotational axis Metric system gh 0.0001 deg 34 08 C 39 O R PO R A TI O N .A ll ri Note 1: Inch/metric selection can be freely made using either bit 4 of parameter F91 (“0” for metric, “1” for inches; validated through power-off and -on) or G-code commands (G20, G21). Selection using the G-code commands is valid only for program data input. Variables and offsetting data (such as tool offsetting data) should therefore be set beforehand using the appropriate unit (inch or metric) for the particular machining requirements. K ZA ri al Ten-Fold Program Data (c )2 A 01 3 YA M A ZA K IM Se Using a predetermined parameter, machining program data can be processed as set in units of one m. There may be cases that a machining program which has been set in units of one m is to be used with a numerical control unit based on 0.1 m increments. In such cases, use of this parameter allows the machine to perform the required machining operations without rewriting the program. Use bit 0 of user parameter F91 for this purpose. All types of coordinate data (axis movement data) not provided with the decimal point will be multiplied by a factor of 10. This does not apply, indeed, to preset tool-offsetting data designated with addresses H and D. ig ht Controlled axis Moving distance when program commands are executed Program command NC (A) for which the program was prepared Bit 0 of F91 = 1 Program applicability (A) (B) MAZATROL (B) Bit 0 of F91 = 0 X1 (Y1 / Z1) 1 m 0.1 m 1 m Applicable B1 0.001° 0.0001° 0.001° Applicable op yr Linear axis Rotational axis C 2-3 N o. Note 2: Metric data and inch data cannot be used at the same time. 2-1 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 2 UNITS OF PROGRAM DATA INPUT 2-2 E Serial No. 340839 DATA FORMATS 3 DATA FORMATS 3-1 Tape Codes 3 . This numerical control unit (in the remainder of this manual, referred to as the NC unit) uses command information that consists of letters of the alphabet (A, B, C .... Z), numerics (0, 1, 2 .... 9), and signs (+, –, /, and so on). These alphanumerics and signs are referred to collectively as characters. On paper tape, these characters are represented as a combination of a maximum of eight punched holes. Such a representation is referred to as a code. The NC unit uses either the EIA codes (RS-244-A) or the ISO codes (R-840). er ve d Note 1: Codes not included in the tape codes shown in Fig. 3-1 will result in an error when they are read. gh ts re s Note 2: Of all codes specified as the ISO codes but not specified as the EIA codes, only the following codes can be designated using the data I/O (Tape) parameters TAP9 to TAP14: 34 08 C 39 O R PO R A TI O N .A ll ri [ Bracket Open ] Bracket Close # Sharp Asterisk = Equal sign : Colon However, you cannot designate codes that overlap existing ones or that result in parity error. K A ZA Significant information area (LABEL SKIP function) Se 1. ri al N o. Note 3: EIA/ISO code identification is made automatically according to the first EOB/LF code appearing after the NC unit has been reset. (EOB: End Of Block, LF: Line Feed) C op yr ig ht (c )2 01 3 YA M A ZA K IM During tape-based automatic operation, data storage into the memory, or data searching, the NC unit will ignore the entire information up to the first EOB code (;) in the tape when the unit is turned on or reset. That is, significant information in a tape refers to the information contained in the interval from the time a character or numeric code appears, following the first EOB code (;) after the NC unit has been reset, until a reset command is given. 3-1 Serial No. 340839 3 DATA FORMATS 2. Control Out, Control In The entire information in the area from Control Out “(” to Control In “)” will be ignored in regard to machine control, while they will surely be displayed on the data display unit. Thus, this area can be used to contain information, such as the name and number of the command tape, that is not directly related to control. On condition that bit 2 of parameter F332 is set to 1, the alarm 807 ILLEGAL FORMAT occurs if a Control Out “(” is not terminated by a Control In “)” in one and the same block. This does not apply when F332 bit 2 is set to 0. er ve d . During tape storage, however, the information in this area will also be stored. The NC unit will enter the Control In status when power is turned on. Example of EIA Code Control Out re s Control In 34 08 C 39 O R PO R A TI O N .A ll ri gh ts ECN N CE O U P R OG R AM U N O . 1 0 1 O BOL L I B Name of tape is printed out K ZA A A ZA K IM Se ri al N o. ECN D ND N N D N DNNCE O U 1 1 E 1 1 U ERRRUORR / U 1 1 E 1 1 U 2 EUU O BO L L L L L L L L L L L I B M Name of tape is punched in captital letters. 01 3 YA MEP003 Control Out Control In EC S E O G 0 0 X – 8 5 0 0 0 Y – 6 4 0 0 0 ( C U T T E R RE T U R N ) O BR P B C op yr ig ht (c )2 Example of ISO Code Operator information is printed out. The information at this portion is ignored and nothing is executed. 3-2 MEP004 Serial No. 340839 DATA FORMATS 3. 3 EOR code (%) In general, the EOR (End Of Record) code is punched at both ends of a tape and has the following functions: To stop rewinding (only when a rewinding device is provided) To start rewinding during tape data search (only when a rewinding device is provided) To terminate the storage of tape data. Tape creation method for tape operation (Only when a rewinding device is used) EOB 2m EOB % 2m Last block ri gh First block EOB 10 cm re s 10 cm EOB ts % er ve d . 4. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll The two meters of dummy at both ends and the EOR (%) at the head are not required when a rewinding device is not used. 3-3 Serial No. 340839 3 DATA FORMATS EIA/ISO identification is made automatically by detecting whether EOB or LF initially appears after the NC unit has been reset. ts gh ri .A ll YA Definable in parameters The codes asterisked above are not EIA codes, but may be used for the convenience’s sake. LF or NL acts as EOB and % acts as EOR. 01 3 DEL (Delete) AS (All Space=Feed)* AM (All Mark=EOB+DEL)* = [ ] BS (Back Space) HT (Horizontal Tab) SP (Space) & CR (Carriage Return) $ ’ (Apostrophe) ; < > ? @ ” DEL (Delete) NULL DEL (Delete) op yr ig ht (c )2 BS (Back Space) TAB SP (Space) & C * 1 2 3 4 5 6 7 8 9 0 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 + – . , / % LF (Line Feed) or NL ( (Control Out) ) (Control In) : # N K ZA A M A ZA K IM Se ri al N o. 1 2 3 4 5 6 7 8 9 0 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 + – . , / EOR (End of Record) EOB (End of Block) or CR CO (2+4+5) CI (2+4+7) Channel number 3 2 1 re s 8 7 6 5 4 . Channel number 3 2 1 34 08 C 39 O R PO R A TI O 8 7 6 5 4 ISO code (R-840) Feed holes er ve d EIA code (RS-244-A) Feed holes [1] [2] MEP006 Fig. 3-1 Tape codes 3-4 Serial No. 340839 DATA FORMATS 3 Codes in section [1] will only be stored as tape data when they are present in a comment section, and ignored elsewhere in the significant information area. Codes in section [2] are non-operative and will always be ignored (but undergo the parity-V check). A dotted area indicates that the EIA Standard provides no corresponding codes. Program Formats A format predetermined for assigning control information to the NC unit is referred to as a program format. The program format used for our NC unit is word address format. Words and addresses er ve d . 1. A word is a set of characters arranged as shown below, and information is processed in words. ri gh ts re s Word .A ll Numeral 34 08 C 39 O R PO R A TI O N Alphabet (address) Word configuration The alphabetic character at the beginning of a word is referred to as an address, which defines the meaning of its succeeding numeric information. N o. Table 3-1 Type and format of words N5 A K IM Preparatory function Inch command O8 ZA ri Se Sequence No. Metric command K al Item Program No. 0.0001 mm (deg.), 0.00001 in Auxiliary axis 0.0001 mm (deg.), 0.00001 in G3 or G21 X+54 ZA Moving axis Y+54 Z+54 +54 X+45 Y+45 Z+45 +45 I+45 J+45 K+45 A I+54 J+54 K+54 M Input unit 0.001 mm (rev), 0.0001 in X54 YA Dwell )2 01 3 Feed (c Fixed cycle P8 U54 0.0001 mm (deg.), 0.00001 in F54 (per minute) F33 (per revolution) F45 (per minute) F24 (per revolution) 0.0001 mm (deg.), 0.00001 in R+54 R+45 Q54 P8 L4 H3 or D3 Miscellaneous function M3 × 4 yr ig ht Tool offset T4 or T8 Tool function No. 2 miscellaneous function B8, A8 or C8 Subprogram P8 H5 L4 Variables number 1. Q45 P8 L4 S5 op Spindle function C 3-2 #6 Code O8 here indicates that program number can be set as an unsigned integer of eight digits following O, and for X+54, “+” indicates that the value can be signed (negative) and the two-digit number (54) indicates that the decimal point can be used and that five digits before and four after the decimal point are effective (5 + 4 = 9 digits are effective for a designation without decimal point). 3-5 Serial No. 340839 3 DATA FORMATS 2. The alpha sign () denotes additional axis address. +44 will be used when is specified for rotational axis. 3. The number of digits in the words is checked by the maximum number of digits in the addresses. 4. When data with decimal point is used for address for which decimal input is not available, decimal figures will be ignored. 5. If the number of integral digits exceeds the specified format, an alarm will result. 6. If the number of decimal digits exceed the specified format, the excess will be rounded. 7. Bit 3 of parameter F36 determines the type of processing for a ‘word’ without any numerical value (address only), as described below. er ve d . When F36 bit 3 = 0: Zero (0) is automatically added to a word without any numerical value. GX10.Y10. ............. Processed as G0X10.Y10. ri gh When F36 bit 3 = 1: ts G28XY ...................... Processed as G28X0.Y0. re s Example : N GX10.Y10. ............. Alarm 807 ILLEGAL FORMAT 34 08 C 39 O R PO R A TI O Example : .A ll A word without any numerical value (address only) causes the alarm 807 ILLEGAL FORMAT. G28XY ...................... Alarm 807 ILLEGAL FORMAT N o. Note 1: An EIA/ISO program into which a MAZATROL program is converted by the [EIA/ISO CONVERT] menu function may contain some words without any numerical value (by an omission method). Running such a program will lead to alarm 807 ILLEGAL FORMAT, therefore, when F36 bit 3 = 1. K ZA A Se ri al Note 2: The detailed information on the block number that is added to the alarm message (807 ILLEGAL FORMAT) refers to a block immediately preceding the block in question. ZA K IM Note 3: A word with a macro variable as numerical value (e.g. G#10) is simply ignored in its entirety if the variable is not yet defined. A word with an undefined variable, therefore, does not cause the alarm in question even when F36 bit 3 = 1. YA M A Note 4: A word with a point ( . ) alone as numerical value is processed as that with zero as digits unit, without causing the alarm in question, even when F36 bit 3 = 1. Blocks )2 2. G0X. ........................ Processed as G0X0. 01 3 Example : op yr ig ht (c A block, unit of instruction, contains a number of words which constitute information necessary for the NC machine to perform an operation. The end of each block must be indicated by an EOB (End Of Block) code. Programs C 3. 4. A number of blocks form one program. Program end M02, M30, M99, M998, M999 or % is used as program end code. 3-6 Serial No. 340839 DATA FORMATS 3-3 3 Tape Data Storage Format As with tape operation, tape data to be stored into the memory can be either of ISO or EIA code. The first EOB code read in after resetting is used by the NC unit for automatic identification of the code system ISO or EIA. The area of tape data to be stored into the memeory is, if the NC unit has been reset, from the character immediately succeeding the first EOB code the EOR code, and in all other cases, from the current tape position to the EOR code. Usually, therefore, start tape data storage operation after resetting the NC unit. 1. er ve d . Optional Block Skip Function and purpose Operating notes Blocks that have already been read into the pre-read buffer cannot be skipped. 2. This function is valid even during sequence number search. 3. During tape data storage (input) or output, all blocks, including those having a “/” code, are in- or outputted, irrespective of the status of the [BLOCK SKIP] menu function. o. 1. K ZA A op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N 2. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s Optional block skip is a function that selectively ignores that specific block within a machining program which begins with the slash code “/”. Any block beginning with “/” will be ignored if the [BLOCK SKIP] menu function is set to ON, or will be executed if the menu function is set to OFF. For example, if all blocks are to be executed for a type of parts but specific blocks are not to be executed for another type, then different parts can be machined using one and the same program that contains the “/” code at the beginning of the specific blocks. C 3-4 3-7 Serial No. 340839 3 DATA FORMATS Program Number, Sequence Number and Block Number: O, N re s er ve d . Program numbers, sequence numbers, and block numbers are used to monitor the execution status of a machining program or to call a machining program or a specific process within a machining program. Program numbers are assigned to command blocks as required. A program number must be set using the letter O (address) and a numeric of a maximum of eight digits that follow O. Sequence numbers identify command blocks forming a machining program. A sequence number must be set using the letter N (address) and a numeric of a maximum of five digits that follow N. Block numbers are counted automatically within the NC unit, and reset to 0 each time a program number or a sequence number is read. These numbers will be counted up by one if the block to be read does not have an assigned program number or sequence number. All blocks of a machining program, therefore, can be uniquely defined by combining program number, sequence number, and block number as shown in the table below. NC monitor display NC input machining program Sequence No. O1234 (DEMO. PROG) 1234 0 G92X0Y0 1234 0 G90G51X–150. P0.75 1234 0 N100G00X–50. Y–25. 1234 100 0 N110G01X250. F300 1234 110 0 1234 110 1 1234 110 2 1234 110 3 1234 120 0 1234 130 0 1234 140 0 1234 140 1 1234 140 2 1234 140 3 1234 150 0 1234 160 0 X–50. Y–25. N N130G00X–100. Y–75. K IM X–100. ZA Se Y–175. A ri al N140G01X–200. Y–75. ZA N150G00G50X0Y0 N160M02 K o. N120G51Y–125. P0.5 op yr ig ht (c )2 01 3 YA M A % gh ri .A ll N 34 08 C 39 O R PO R A TI O Y–225. 3-8 Block No. ts Program No. C 3-5 0 1 2 Serial No. 340839 DATA FORMATS Parity-H/V One method of checking if the tape is correctly created is by parity checks. Parity checks are performed to check a tape for errors in punched codes, that is, for punching errors. There are two types of parity checks: parity-H and parity-V. 1. Parity-H check Parity-H checks are intended to check the quantity of punched holes which form one character, and performed during tape operation, tape loading, and sequence-number searching. A parity-H error occurs in the following cases: er ve d . ISO Codes If a code with an odd number of punched holes is present in the significant information area. ts re s EIA Codes If a code with an even number of punched holes is present in the significant information area or if non-punched holes (sprockets only) are present after a significant code in one block. 34 08 C 39 O R PO R A TI O N .A ll ri gh Example 1: Parity-H error (for EIA codes) K ZA A YA M A ZA K IM Se ri al N o. This character leads to a Parity-H error. One block 01 3 This non-punched character will result in a Parity-H error. )2 These non-punched characters will not result in a Parity-H error. ht (c MEP007 op yr ig If a parity-H error occurs, the tape will stop at the position next to the error code. C 3-6 3 3-9 Serial No. 340839 3 DATA FORMATS 2. Parity-V check Parity-V checks will be performed during tape operation, tape loading, or sequence-number searching, if parity-V check item on the PARAMETER display is set to ON. Parity-V during memory operation, however, will not be checked. A parity-V error occurs in the following case: If an odd number of codes are present in the significant information area from the first significant code in the vertical direction to the EOB code (;), that is, if an odd number of characters are present in one block. In the event of a parity-V error, the tape stops at a code next to the EOB (;). .A ll ri gh ts re s er ve d . Example 2: An example of parity-V error 34 08 C 39 O R PO R A TI O N 1 2 3 4 5 6 7 This block leads to a Parity-V error. MEP009 Note 1: During a parity-V check, some types of code are not counted as characters. K ZA Se ri al N o. See Fig. 3-1, “Tape codes” for further details. C op yr ig ht (c )2 01 3 YA M A ZA K IM A Note 2: Space codes in the area from the first EOB code to the first address code or slash code “/” are not subjected to counting for parity-V check. 3-10 Serial No. 340839 DATA FORMATS List of G-Codes G functions are described in the list below. Function G-code Group ■G00 01 Linear interpolation ■G01 01 Circular interpolation (CW) G02 01 Circular interpolation (CCW) G03 01 Spiral interpolation (CW) G02.1 01 Spiral interpolation (CCW) G03.1 01 Involute interpolation (CW) G02.2 01 Involute interpolation (CCW) G03.2 Dwell G04 High-speed machining mode G05 Fine spline interpolation G06.1 NURBS interpolation G06.2 Virtual-axis interpolation G07 Cylindrical interpolation G07.1 G09 00 01 Circle cutting (CW) Circle cutting (CCW) X-Y plane selection al Y-Z plane selection Pre-move stroke check OFF ZA 01 00 00 G11 00 G12 00 G13 00 ■G17 02 ■G18 02 ■G19 02 ■G20 06 ■G21 06 00 00 G29 00 Return to 2nd, 3rd and 4th reference points G30 00 Skip function G31 00 Multi-step skip 1 G31.1 00 Multi-step skip 2 G31.2 00 Multi-step skip 3 G31.3 00 G33 01 Variable lead thread cutting G34 01 Hole machining pattern cycle (on a circle) G34.1 00 Hole machining pattern cycle (on a line) G35 00 Hole machining pattern cycle (on an arc) G36 00 Hole machining pattern cycle (on a grid) G37.1 00 Automatic tool length measurement G37 00 Vector selection for tool radius compensation G38 00 Corner arc for tool radius compensation G39 00 Tool radius compensation OFF ▲G40 07 Tool radius compensation (left) G41 07 Tool radius compensation for five-axis machining (left) G41.2/G41.4/G41.5 07 Tool radius compensation (right) G42 07 01 3 M A G28 Return from reference point YA 04 G27 )2 04 (c G22 ▲G23 ht ZA Reference point check A Pre-move stroke check ON K IM Metric command Se ri Inch command K N o. Z-X plane selection 01 G10 N Data setting mode OFF 00 .A ll ri gh ts re s 00 00 34 08 C 39 O R PO R A TI O Data setting mode ON Reference point return er ve d . Positioning Exact-stop check op yr ig Thread cutting (straight, taper) C 3-7 3 3-11 Serial No. 340839 3 DATA FORMATS Group Tool radius compensation for five-axis machining (right) G42.2/G42.4/G42.5 07 Tool length offset (+) G43 08 Tool tip point control (Type 1) ON G43.4 08 Tool tip point control (Type 2) ON G43.5 08 Cutting point command (Type 1) ON G43.8 08 Cutting point command (Type 2) ON G43.9 08 Tool length offset (–) G44 08 Tool position offset, extension G45 00 Tool position offset, reduction G46 00 Tool position offset, double extension G47 00 Tool position offset, double reduction G48 00 ▲G49 Scaling OFF ▲G50 G51 11 11 ▲G50.1 Mirror image ON G51.1 Local coordinate system setting G52 00 G53 00 G53.1 00 .A ll ri gh Mirror image OFF Machine coordinate system selection 34 08 C 39 O R PO R A TI O N Tool-axis direction control Selection of workpiece coordinate system 1 Selection of workpiece coordinate system 2 Selection of workpiece coordinate system 3 Selection of workpiece coordinate system 4 N o. Selection of workpiece coordinate system 5 Workpiece setup error correction One-way positioning ZA 19 19 ▲G54 12 G55 12 G56 12 G57 12 G58 12 G59 12 G54.1 12 G54.2 23 G54.4 27 G60 00 G61 13 ■G61.1 13 G61.2 13 Automatic corner override G62 13 Tapping mode G63 13 Cutting mode ZA Exact stop mode A Selection of fixture offset K IM Se ri Additional workpiece coordinate systems K al Selection of workpiece coordinate system 6 M A High-accuracy mode (Geometry compensation) 01 3 13 User macro single call G65 00 User macro modal call A G66 14 User macro modal call B G66.1 14 ig ht (c ■G64 )2 YA Modal spline interpolation 14 Programmed coordinate rotation ON G68 16 Programmed coordinate rotation OFF G69 16 3-D coordinate conversion ON G68 16 Inclined-plane machining ON G68.2 16 Inclined-plane machining (by specifying tool-axis direction) ON G68.3 16 Incremental coordinate system establishment for inclined-plane machining G68.4 16 yr ▲G67 op User macro modal call OFF C 08 ts Scaling ON er ve d Tool position offset OFF . G-code re s Function ▲G69 3-D coordinate conversion OFF 16 Fixed cycle (Chamfering cutter 1, CW) G71.1 09 Fixed cycle (Chamfering cutter 2, CCW) G72.1 09 Fixed cycle (High-speed deep-hole drilling) G73 09 3-12 Serial No. 340839 DATA FORMATS Function G-code Group Fixed cycle (Reverse tapping) G74 09 Fixed cycle (Boring 1) G75 09 Fixed cycle (Boring 2) G76 09 Fixed cycle (Back spot facing) G77 09 Fixed cycle (Boring 3) G78 09 Fixed cycle (Boring 4) G79 09 ▲G80 09 Fixed cycle (Spot drilling) G81 09 Chopping mode ON G81.1 00 Fixed cycle (Drilling) G82 09 Fixed cycle (Deep-hole drilling) G83 Fixed cycle (Tapping) G84 Fixed cycle (Synchronous tapping) G84.2 Fixed cycle (Synchronous reverse tapping) G84.3 Fixed cycle (Reaming) G85 Fixed cycle (Boring 5) G86 09 09 09 09 09 .A ll ri gh ts re s 09 G87 09 G88 09 G89 09 ■G90 03 ■G91 03 Coordinate system setting/Spindle speed range setting G92 00 Workpiece coordinate system rotation G92.5 00 Fixed cycle (Back boring) N Fixed cycle (Boring 6) 34 08 C 39 O R PO R A TI O Fixed cycle (Boring 7) Absolute data input 05 05 ■G95 05 10 G99 10 Output of auxiliary function codes during axis movement G117/G118 00 G124 00 Parallel axes composition control OFF G125 00 Measurement macro, workpiece/coordinate measurement G136 Compensation macro G137 Engraving function G140 K IM Initial point level return in fixed cycles A ▲G98 R-point level return in fixed cycles ZA G93 ■G94 A Se Feed per revolution (synchronous) ZA ri al Feed per minute (asynchronous) K N Inverse time feed o. Incremental data input )2 G148 00 Orbit machining mode OFF G149 00 ht 01 3 YA M Parallel axes composition control ON G270 09 Longitudinal roughing cycle G271 09 Transverse roughing cycle G272 09 Contour-parallel roughing cycle G273 09 Longitudinal cut-off cycle G274 09 Transverse cut-off cycle G275 09 Compound thread-cutting cycle G276 09 Longitudinal turning cycle G290 09 Threading cycle G292 09 Transverse turning cycle G294 09 (c Orbit machining mode ON op yr ig Finishing cycle C er ve d . Fixed cycle OFF 3 3-13 Serial No. 340839 3 DATA FORMATS Notes: The codes marked with ▲ are automatically selected in each group upon switching-on or resetting with initializing the modal conditions. 2. The codes marked with are able to be selected by a parameter as an initial modal condition which is to become valid upon switching-on or resetting with initializing the modal conditions. Changeover of inch/metric system, however, can be made valid only by switching-on. 3. G-codes of group 00 are those which are not modal, and they are valid only for blocks in which they are entered. 4. If a G-code not given in the G-code list is used, an alarm is displayed. And if a G-code without corresponding option is used, an alarm is displayed (808 MIS-SET G CODE). 5. If G-codes belong to different groups each other, any G-code can be used in the same block. The G-codes are then processed in order of increasing group number. If two or more G-codes belonging to the same group are given in the same block, the G-code entered last is valid. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 1. 3-14 E Serial No. 340839 BUFFER REGISTERS 4 BUFFER REGISTERS 4-1 Input Buffer 1. 4 Overview er ve d . During tape operation or RS-232C operation, when the preread buffer becomes empty, the contents of the input buffer will be immediately shifted into the pre-read buffer and, following this, if the memory capacity of the input buffer diminuishes to 248 × 4 characters or less, next data (up to 248 characters) will be preread from the tape and then stored into the input buffer. The input buffer makes block-to-block connections smooth by eliminating any operational delays due to the tape-reading time of the tape reader. Preread buffer 5 Input buffer N Tape .A ll ri gh ts re s These favorable results of prereading, however, will be obtained only if the execution time of the block is longer than the tape-reading time of the next block. 34 08 C 39 O R PO R A TI O Buffer 4 Mode selection Buffer 3 Buffer 2 o. Memory K Arithmetic operation process A K IM Se ri MDI data Buffer 1 ZA al N Keyboard A ZA Note: One block of data is stored in one buffer. YA M TEP010 Detailed description 01 3 2. )2 The memory capacity of the input buffer is 248 × 5 characters (including the EOB code). ht (c The contents of the input buffer register are updated in 248-character units. ig Only the significant codes in the significant information area are read into the buffer. C op yr Codes, including “(” and “)”, that exist between Control Out and Control In, are read into the input buffer. Even if optional block skip is valid, codes from / to EOB will also be read into the input buffer. The contents of the buffer are cleared by a reset command. 4-1 Serial No. 340839 4 BUFFER REGISTERS Preread Buffer 1. Overview During automatic operation, one block of data is usually preread to ensure smooth analysis of the program. During tool radius compensation, however, maximal 23 blocks of data are preread to calculate crossing point or to check the interference. In the high-speed machining mode (G05P2), moreover, up to 8 blocks of data are preread, and in the mode of high-speed smoothing control up to 20 blocks of data are stored with the currently executed block in the middle (i. e. 10 blocks being preread). Detailed description er ve d . 2. One block of data is stored into the prepared buffer. re s Only the significant codes in the significant information area are read into the pre-read buffer. gh ts Codes existing between Control Out and Control In are not read into the pre-read buffer. If optional block skip is valid, codes from / to EOB will not also be read into the pre-read buffer. ri The contents of the buffer are cleared by a reset command. N .A ll If the single block operation mode is selected during continuous operation, processing will stop after pre-reading the next block data. K ZA A op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O If commands given in a preread block are analysed and judged to cause an alarm, that argument of the alarm displayed which indicates the number of the block in question refers to the block being currently executed, but not to the preread one. C 4-2 4-2 E Serial No. 340839 POSITION PROGRAMMING 5 POSITION PROGRAMMING 5-1 Dimensional Data Input Method 5-1-1 5 Absolute/Incremental data input: G90/G91 1. Function and purpose 1. gh N Detailed description 34 08 C 39 O R PO R A TI O 3. ri G90 (or G91) Xx1 Yy1 Zz1 1 ( : Additional axis) where G90: Absolute data input G91: Incremental data input ts Programming format .A ll 2. re s er ve d . Setting of G90 or G91 allows succeeding dimensional data to be processed as absolute data or incremental data. Setting of arc radius (with address R) or arc center position (with addresses I, J, K) for circular interpolation, however, must always refer to incremental data input, irrespective of preceding G90 command. In the absolute data mode, axis movement will be performed to the program-designated position within the workpiece coordinate system, irrespective of the current position. o. N1 G90G00X0 Y0 K ZA ri al N In the incremental data mode, axis movement will be performed through the programdesignated distance as relative data with respect to the current position. A K IM Se N2 G91G01X200. Y50. F100 ZA N2 G90G01X200. Y50. F100 A Y 01 3 YA M 200. Tool (c )2 100. N2 X ht ig yr op C N1 W 100. 200. 300. MEP011 Commands for a movement from the origin of the workpiece coordinate system are given with the same values, irrespective of whether the absolute data mode or the incremental data mode is used. 5-1 Serial No. 340839 5 POSITION PROGRAMMING 2. The last G90 or G91 command works as a modal one for the following blocks. (G90) N3 X100. Y100. This block will perform a movement to the position of X = 100 and Y = 100 in the workpiece coordinate system. (G91) N3 X-100. Y50. This block will perform a movement of –100 on the X-axis and +50 on the Y-axis, and thus result in a movement to the position of X = 100 and Y = 100. er ve d . Y re s 200. 100. 200. 300. W 34 08 C 39 O R PO R A TI O 3. MEP012 N X 100. .A ll ri gh ts N3 Multiple G90 or G91 commands can be set in one block, and thus only a specific address can be set as absolute data or incremental data. o. N4 G90X300. G91Y100. K ZA A K IM Se ri al N In this example, dimensional data X300 preceded by G90 will be processed as an absolute data input, and Y100 preceded by G91 as an incremental data input. Therefore, this block will result in a movement to the position of X = 300 and Y = 200 (100 + 100) in the workpiece coordinate system. ZA Y YA M A 200. W 100. 200. 300. X MEP013 C op yr ig ht (c )2 01 3 100. N4 Moreover, G91 (incremental data input mode) will work for the succeeding blocks. 4. Either the absolute data mode or the incremental data mode can be freely selected as initial mode by setting the bit 2 of user parameter F93. 5. Even in the MDI (Manual Data Input) mode, G90 and G91 will also be handled as modal commands. 5-2 Serial No. 340839 POSITION PROGRAMMING Inch/Metric Selection: G20/G21 1. Function and purpose Inch command/metric command selection is possible with G-code commands. 2. Programming format G20: G21: 3. Inch command selection Metric command selection Detailed description Changeover between G20 and G21 is effective only for linear axes; it is meaningless for rotational axes. er ve d . 1. ts Initial Inch (parameter) ON Example G21 G20 G21 X X100 0.0100 mm 0.0254 mm 0.00039 inches Y Y100 0.0100 mm 0.0254 mm 0.00039 inches 0.00100 inches Z Z100 0.0100 mm 0.0254 mm 0.00039 inches 0.00100 inches B B100 0.0100 deg 0.0100 deg 0.0100 deg 0.0100 deg G20 34 08 C 39 O R PO R A TI O .A ll ri 0.00100 inches To perform G20/G21 changeover in a program, you must first convert variables, parameters, and offsetting data (such as tool length/tool position/tool radius compensation data) according to the unit of data input for the desired system (inch or metric) and then set all these types of data either on each data setting display or using the programmed parameter input function. al N o. 2. gh Axis N Initial Inch (parameter) OFF re s Example : Preset unit of data input and G20/G21 (for decimal-point input type ) K ZA A K IM Se ri Example : If Initial inch selection is OFF and offsetting data is 0.05 mm, the offsetting data must be converted to 0.002 (0.05 ÷ 25.4 0.002) before changing the G21 mode over to the G20 mode. In principle, G20/G21 selection should be done before machining. If you want this changeover to be performed in the middle of the program, temporarily stop the program by an M00 command after G20 or G21 and convert the offsetting data as required. G92 Xx1 Yy1 Zz1 G20 G92 Xx2 Yy2 Zz2 op yr ig ht (c )2 01 3 YA M Example : G21 A ZA 3. C 5-2 5 4. Note: M00 F10 Convert offsetting data here. Set an F (Feed rate) command anew. Do not fail to give an F command appropriate to the new unit system after changeover between G20 and G21. Otherwise, axis movements would be performed using the last F value before the changeover, without any conversion, on the basis of the new unit system. Whether G20 or G21 is to be selected upon switching-on can be specified by the bit 4 of user parameter F91 (Initial Inch parameter). 5-3 Serial No. 340839 5 POSITION PROGRAMMING Decimal Point Input 1. Function and purpose The decimal point can be used to determin the units digit (mm or inch) of dimensional data or feed rate. 2. Programming format . Metric system . Inch system er ve d . Detailed description Decimal-point commands are valid only for the distance, angle, time, speed, and scaling factor (only after G51) that have been set in the machining program. 2. As listed in the table below, the meaning of command data without the decimal point differs between decimal-point input types and according to the type of command unit system. re s 1. 0.0001 (mm, inches, deg) ON 0.0010 (mm, inches, deg) Type .A ll OFF 1.0000 (mm, inches, deg) 1.0000 (mm, inches, deg) 34 08 C 39 O R PO R A TI O X1 ri Type Command unit × 10 N Command gh ts 3. Decimal-point commands are only valid for addresses X, Y, Z, U, V, W, A, B, C, I, J, K, E, F, P, Q, R and S (as detailed later in the table concerned), where address P only refers to a scaling factor. As for address S, decimal digits are only effective when the decimal point is valid for an S-code (spindle speed command). o. 3. Move command (Linear) K ZA K IM The number of effective digits for each type of decimal-point command is as follows: ZA 4. A Se ri al N See Table 5-2 “Validity of decimal point for each address” for further details. Move command (Rotational) Feed rate Dwell inch 0. - 9999. .0000 - .9999 0. - 99999. .0000 - .9999 0. 99999999. .0000 - .9999 0. - 99999. .000 - .999 .00000 .99999 0. - 99999. .0000 - .9999 (359.) 0. 9999999. .00000 .99999 0. - 99999. .000 - .999 YA 0. - 99999. )2 01 3 mm M A Integral part Decimal part Integral part Decimal part Integral part Decimal part Integral part Decimal part Decimal-point commands are also valid for definition of variables data used in subprograms. 6. For data which can be, but is not specified with the decimal point, either the minimum program data input unit or mm (or in) unit can be selected using bit 5 of parameter F91. yr ig ht (c 5. op 7. C 5-3 A decimal-point command issued for an address which does not accept the decimal point will be processed as data that consists of an integral part only. That is, all decimal digits will be ignored. Addresses that do not accept the decimal point are D, H, L, M, N, O, S and T. As for address S, however, decimal digits can be processed as effective data when the decimal point is valid for an S-code (spindle speed command). All types of variables command data are handled as the data having the decimal point. 5-4 Serial No. 340839 POSITION PROGRAMMING 5 Table 5-1 Sample programs for addresses accepting the decimal point Command category For 1 = 1 m Program example For 1 = 0.1 m 1 = 1 mm X123.450 mm X123.450 mm X123.450 mm G0X12345 X12.345 mm* X1.2345 mm** X12345.000 mm*** #113=#111+#112 (ADD) #113 = 128.550 #114=#111–#112 (SUBTRACT) #114 = 117.450 #115=#111 #112 (MULTIPLY) #115 = 682.650 #116=#111/#112 #117=#112/#111 (DIVIDE) #116 = 22.162 #117 = 0.045 er ve d X123.000 mm Y5.550 mm re s #111=123 #112=5.55 X#111 Y#112 . G0X123.45 (With the decimal point always given as the millimeter point) K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts * The least significant digit is given in 1 m. ** The least significant digit is given in 0.1 m. *** The least significant digit is given in 1 mm. 5-5 Serial No. 340839 5 POSITION PROGRAMMING Table 5-2 Validity of decimal point for each address Address Decimal point command A Application Remarks Address Valid Coordinate position data Invalid Application Remarks Invalid Program number Rotary table Miscellaneous function code Invalid Dwell time Valid Linear angle data Valid Subprogram call number Valid Coordinate position data Invalid Number of helical pitches Invalid Offset amount (in G10) B O Decimal point command P Rotary table Miscellaneous function code Valid Coordinate position data Valid Scaling factor Invalid Rotary table Miscellaneous function code Valid Rank for NURBS curve Valid Corner chamfering amount Valid Cutting depth for deep-hole drilling cycle D Invalid Offset number (tool position, tool length and tool radius) Valid Shift amount for back boring E Valid Valid Shift amount for fine boring F Valid Rate of feed Valid R point in fixed cycle G Valid Preparatory function code Valid re s ts gh ri .A ll N Radius of an arc for circular interpolation Radius of an arc for corner rounding Offset amount (in G10) Valid Weight for NURBS curve S Invalid Spindle function code T Invalid Tool function code U Valid Coordinate position data o. Valid Valid Vector component for tool radius compensation Valid Coordinate of arc center Valid Vector component for tool radius compensation Valid Coordinate of arc center V Valid Coordinate position data Valid Vector component for tool radius compensation W Valid Coordinate position data Valid Knot for NURBS curve Valid Coordinate position data Valid Dwell time N Invalid ZA A ri Se A YA 01 3 Invalid Miscellaneous function code Y Valid Coordinate position data Sequence number Z Valid Coordinate position data C op yr ig Remark X )2 M Fixed cycle/Subprogram repetition (c Invalid ht L ZA J K Coordinate of arc center I al Valid M Invalid R N H 34 08 C 39 O R PO R A TI O Valid Offset number (tool postion, tool length and tool radius) Intra-subprogram sequence number Invalid K Q K IM C er ve d . Invalid Note : The decimal point is valid in all the arguments for a user macroprogram. Remark : Decimal digits can be entered at address S when the decimal point is valid for an Scode (spindle speed command). 5-6 E Serial No. 340839 INTERPOLATION FUNCTIONS 6 INTERPOLATION FUNCTIONS 6-1 Positioning (Rapid Traverse): G00 1. 6 Function and purpose Positioning command G00 involves use of a coordinate word. This command positions a tool by moving it linearly to the ending point specified by a coordinate word. 2. Programming format (: Additional axis) er ve d . G00 Xx Yy Zz ; ts Detailed description Once this command has been given, the G00 mode will be retained until any other G-code command that overrides this mode, that is, either G01, G02, G03, or G32 of command group 01 is given. Thus, a coordinate word will only need be given if the next command is also G00. This function is referred to as the modal function of the command. 2. In the G00 mode, acceleration/deceleration always takes place at the starting/ending point of a block and the program proceeds to the next block after confirming that the pulse command in the present block is 0 and the tracking error of the acceleration/deceleration cycle is 0. The width of in-position can be changed using a parameter (S13). 3. The G-code functions (G71.1 to G89) of command group 09 are canceled by the G00 command (G80). 4. The tool path can be made either linear or nonlinear using a parameter (F91 bit 6) but the positioning time remains unchanged. gh 1. K ZA K IM Linear path A Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri 3. re s The command addresses are valid for all additional axis. The absolute or the incremental data input is used according to the status of G90/G91 existing at the particular time. ZA As with linear interpolation (G01), the tool speed is limited according to the rate of rapid traverse of each axis. A Polygonal line path YA M The tool is positioned according to the separate rate of rapid traverse of each axis. When no number follows G address, this is treated as G00. C op yr ig ht (c )2 01 3 5. 6-1 Serial No. 340839 6 INTERPOLATION FUNCTIONS 4. Sample programs Z Unit: mm (Tool) +300 Ending point (–120, +200, +300) +150 –120 –100 . +200 +150 Y re s ts gh Remarks N 5. Absolute data command Incremental data command .A ll The diagram above is for: G90 G00 X-120.000 Y200.000 Z300.000; G91 G00 X-270.000 Y300.000 Z150.000; MEP014 ri X er ve d Starting point (+150, –100, +150) If bit 6 of user parameter F91 is 0, the tool will take the shortest path connecting the starting and ending points. The positioning speed will be calculated automatically to give the shortest allocation time within the limits of the rapid feed rate of each axis. For example, if a rapid feed rate of 9600 mm/min is preset for both X- and Y-axes, then the command 34 08 C 39 O R PO R A TI O 1. N o. G91 G00 X–300.000 Y200.000 K ZA K IM Se F91 bit 6 = 0 A ri al will move the tool as shown in the figure below. Ending point A ZA Y-axis effective feedrate: 6400 mm/min M 200 YA 01 3 )2 ht (c fx X-axis effective feedrate: 9600 mm/min X Starting point 300 Unit: mm MEP015-1 C op yr ig Y fy 6-2 Serial No. 340839 INTERPOLATION FUNCTIONS 2. 6 If bit 6 of user parameter F91 is 1, the tool will move from the starting point to the ending point according to the rapid feed rate of each axis. For example, if a rapid feed rate of 9600 mm/min is preset for both X- and Y-axes, then the command G91 G00 X–300.000 Y200.000 will move the tool as shown in the figure below. F91 bit 6 = 1 Ending point 200 Y ts MEP015-2 34 08 C 39 O R PO R A TI O N X-axis effective feedrate: 9600 mm/min X Unit: mm .A ll ri fx gh Starting point re s fy 300 er ve d . Y-axis effective feedrate: 9600 mm/min 3. The rapid feed rate that you can set for each axis using the G00 command varies from machine to machine. A ZA K IM Se ZA Rapid feed (G00) deceleration check When processing of rapid feed (G00) is completed, the next block will be executed after the deceleration check time (Td) has passed. The deceleration check time (Td) is calculated by following expressions depending on the acceleration/deceleration type. ri 4. K al N o. Refer to the relevant manual of the machine for further details. 01 3 YA M A Linear acceleration/linear deceleration .............................. Td = Ts + Exponential acceleration/linear deceleration ..................... Td = 2 × Ts + Exponential acceleration/exponential deceleration ............ Td = 2 × Ts + (Where Ts is the acceleration time constant, = 0 to 14 ms) C op yr ig ht (c )2 The time required for the deceleration check during rapid feed is the longest among the rapid feed deceleration check times of each axis determined by the rapid feed acceleration/ deceleration time constants and by the rapid feed acceleration/deceleration mode of the axes commanded simultaneously. 6-3 Serial No. 340839 6 INTERPOLATION FUNCTIONS One-Way Positioning: G60 1. Function and purpose Highly accurate positioning free from any backlash error can be performed when the axis movement is controled by the G60 command so that the final access always takes place in one determined direction. Programming format G60 Xx Yy Zz ; Detailed description The direction of final access and its creeping distance must be set in parameter I1. 2. After rapid approach to a position away from the ending point by the creeping distance, the final access is performed in the predetermined direction at a speed corresponding with the rapid feed. er ve d 1. gh ts re s 3. (: Additional axis) . 2. .A ll ri Positioning point G60 a 34 08 C 39 O R PO R A TI O N Final access direciton (–) Ending point Starting point Starting point (+) ZA G60 –a MEP018 A Se ri al G60 creeping distance K N o. Temporary stop The positioning pattern described above also applies during machine locking or for a Z-axis command with the Z-axis cancellation activated. 4. In the dry run mode (G00 mode), the whole positioning is carried out at the dry-running speed. 5. The creeping to the einding point can be halted with Reset, Emergency stop, Interlock, or Feed hold, or by setting the rapid feed override to 0 (zero). The creeping is performed according to the setting of the rapid feed, and the rapid feed override function is also effective for the creeping. 6. One-way positioning is automatically invalidated for the hole-drilling axis in hole-drilling fixed-cycle operations. ht (c )2 01 3 YA M A ZA K IM 3. One-way positioning is automatically invalidated for shifting in fine-boring or back-boring fixed-cycle operations. op yr ig 7. C 6-2 8. Usual positioning is performed for an axis not having a parameter-set creeping distance. 9. One-way positioning is always of non-interpolation type. 10. An axis movement command for the same position as the ending point of the preceding block (movement distance = 0) will cause reciprocation through the creeping distance so that the final access can be performed in the predetermined direction for an accurate positioning to the desired point. 6-4 Serial No. 340839 INTERPOLATION FUNCTIONS Linear Interpolation: G01 1. Function and purpose This command moves (interpolates) a tool from the current position to the ending point specified by a coordinate word, at the feed rate specified with address F. The specified feed rate acts here as the linear velocity relative to the direction of movement of the tool center. 2. Programming format G01 Xx Yy Zz Ff; (: Additional axis) Detailed description re s 3. er ve d . where x, y, z, and each denote a coordinate. The absolute or the incremental data input is used according to the status of G90/G91 existing at the particular time. 4. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts Once this command has been given, the G01 mode will be retained until any other G-code command that overrides this mode, that is, either G00, G02, G03 or G33 of command group 01 is given. Thus, it is merely required to input coordinate words for linear interpolations in the succeeding blocks unless the feed rate must be changed. The alarm 816 FEEDRATE ZERO will result if no F-code command has been given to the first G01 command. The feed rates for rotational axes must be set in deg/min. (Example: F300 = 300 deg/min) The G-code functions (G71.1 to G89) of command group 09 are cancelled by G01 (set to G80). Sample program K ZA A K IM Se ri al N o. The following shows a program for moving the tool at a cutting feed rate of 300 mm/min on the route of P1 P2 P3 P4 P1 (where the section from P0 P1 forms a positioning route for the tool): 30 Y P3 A ZA P2 X YA M 30 20 P4 20 20 Unit: mm P0 yr ig ht (c )2 01 3 P1 op G91 C 6-3 6 MEP019 G00 X20. Y20. G01 X20. Y30. P0 P1 P1 P2 F300 P2 P3 X30. X–20. P3 P4 Y–30. P4 P1 X–30. 6-5 Serial No. 340839 6 INTERPOLATION FUNCTIONS Circular Interpolation: G02, G03 1. Function and purpose Commands G02 and G03 feed the tool along an arc. 2. Programming format G02 (G03) Xx Yy (Zz) Ii Jj (Kk) Ff ; Coordinates of the Coordinates of ending point the arc center Counterclockwise (CCW) Clockwise (CW) gh ts re s Arc ending point coordinate, X-axis Arc ending point coordinate, Y-axis Arc ending point coordinate, Z-axis Arc center, X-axis Arc center, Y-axis Arc center, Z-axis Feed rate ri : : : : : : : .A ll X Y Z I J K F er ve d . Example: Example: Feedrate N o. Detailed description 2. The direction of circular movement is determined by G02/G03. ZA A K IM Se K Once the G02 (or G03) command has been given, this command mode will be retained until any other G-code command used to override the G02 (or G03) command mode, that is, G00 or G01 of command group 01 is given. al 1. ri 3. 34 08 C 39 O R PO R A TI O N Use addresses X, Y and Z (or their parallel axes) to specify the coordinates of the ending point of arc, and addresses I, J and K for the coordinates of arc center. Combined use of absolute and incremental data input is available for setting the coordinates of the ending point of arc. For the coordinates of the arc center, however, incremental data relative to the starting point must always be set. M A ZA G02: CW (Clockwise) G03: CCW (Counterclockwise) YA Z )2 01 3 G02 G03 G03 (c G03 Y ht G02 op yr ig G02 C 6-4 X Y X Z G03 G03 G02 G02 X G17 (X-Y) plane G03 G02 Z G18 (Z-X) plane 6-6 Y G19 (Y-Z) Plane MEP020 Serial No. 340839 INTERPOLATION FUNCTIONS 3. Interpolation of an arc that spans multiple quadrants can be defined with one block. 4. To perform circular interpolation, the following information is required: 6 - Rotational direction ...................... CW (G02) or CCW (G03) - Arc ending point coordinates ....... Given with address X, Y, Z. - Arc center coordinates ................. Given with address I, J, K. (Incremental dimension) - Feed rate ...................................... Given with address F. If none of the addresses I, J, K and R is specified, an alarm will occur. 6. Addresses I, J and K are used to specify the coordinates of the arc center in the X, Y and Z directions respectively as seen from the starting point, therefore, care must be taken for signs. Sample programs Complete-circle command gh ts Example 1: re s 4. er ve d . 5. +Y 34 08 C 39 O R PO R A TI O N .A ll ri Y-axis Circle center J = 50 mm K ZA MEP021 Three-quarter circle command +Y Y-axis )2 01 3 YA M A ZA Example 2: Starting / Ending point K IM G02 J50.000 F500 +X A Se ri al X-axis N o. Feedrate F = 500 mm/min (c Feedrate F = 500 mm/min Ending point (x+50, y+50) C op yr ig ht Circle center J = 50 mm +X X-axis Starting point G91 G02 X50.000 Y50.000 J50.000 F500 6-7 MEP022 Serial No. 340839 6 INTERPOLATION FUNCTIONS 5. Notes on circular interpolation 1. Clockwise (G02) or Counterclockwise (G03) during circular interpolation refers to the rotational direction in the right-handed coordinate system when seen from the plus side toward the minus side of the coordinate axis perpendicular to the plane to be interpolated. 2. If the coordinates of the ending point are not set or if the starting and ending points are set at the same position, designating the center using address I, K or J will result in an arc of 360 degrees (true circle). 3. The following will result if the starting-point radius and the ending-point radius are not the same. re s er ve d . If error R is larger than the parameter F19 (tolerance for radial value difference at ending point), an alarm (817 INCORRECT ARC DATA) will occur at the starting point of the arc. Radius at starting point Starting point Ending point 34 08 C 39 O R PO R A TI O Center N Alarm stop .A ll ri gh ts G02 X80. I50. Radius at ending point R MEP023 K Spiral interpolation ZA A K IM Se ri G02 X90. I50. ZA al N o. If error R is equal to or smaller than the parameter data, interpolation will take a spiral form heading for the programmed ending point of the arc. M A Center Radius at starting point Radius at ending point R MEP024 )2 01 3 YA Starting point Ending point In a combined use with the cylindrical interpolation, the machining contour of circular interpolation on the cylindrical surface may be unexpectedly reversed due to a particular configuration of the machine’s controlled axes. C op yr ig 4. ht (c The examples shown above assume that excessively large parameter data is given to facilitate your understanding. See “4. Remarks” in Section 6-13 for more information. 6-8 Serial No. 340839 INTERPOLATION FUNCTIONS Radius Designated Circular Interpolation: G02, G03 1. Function and purpose Circular interpolation can be performed by designating directly the arc radius R as well as specifying conventional arc center coordinates (I, J, K). 2. Programming format G02 (G03) Xx Yy Rr Ff; er ve d Detailed description re s 3. . where x : X-axis coordinate of the ending point y : Y-axis coordinate of the ending point r : Radius of the arc f : Feed rate 34 08 C 39 O R PO R A TI O N .A ll ri gh ts The arc center is present on the mid-perpendicular to the segment which connects the starting point and the ending point. The crossing point of the mid-perpendicular and that circle of the designated radius r that has the center set at the starting point gives the center coordinates of the designated arc. A semi-circle or smaller will be generated if R is a positive value. An arc larger than the semi-circle will be generated if R is a negative value. N o. Path of an arc with a negative-signed R K ZA K IM Path of an arc with a positive R O1 O1, O2 : Center point ZA L r M A Starting point Ending point A Se ri al O2 YA TEP023 )2 01 3 To use the radius-designated arc interpolation commands, the following requirement must be met: ht (c L 1 2r yr ig where L denotes the length of the line from the starting point to the ending point. If radius data and arc center data (I, J, K) are both set in the same block, the circular interpolation by radius designation will have priority in general. For complete-circle interpolation (the ending point = the starting point), however, use centerdesignation method with addresses I, J and K, since the radius-specification command in this case will immediately be completed without any machine operation. op C 6-5 6 6-9 Serial No. 340839 6 INTERPOLATION FUNCTIONS Sample programs - G02 Xx1 Yy1 Rr1 Ff1 XY-plane, radius-designated arc - G03 Zz1 Xx1 Rr1 Ff1 ZX-plane, radius-designated arc - G02 Xx1 Yy1 Jj1 Rr1 Ff1 XY-plane, radius-designated arc (If radius data and center data (I, J, K) are set in the same block, circular interpolation by radius designation will have priority.) - G17 G02 Ii1 Ji1 Rr1 Ff1 XY-plane, center-designated arc (Radius-specification is invalid for complete circle) K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 4. 6-10 Serial No. 340839 INTERPOLATION FUNCTIONS Spiral Interpolation: G2.1, G3.1 1. Function and purpose Commands G2.1 and G3.1 provide such an interpolation that the starting and ending points are connected smoothly for an arc command where the radii of the both points differ from each other. (Normal circular interpolation) Ending point er ve d . re = rs (Spiral interpolation) re s Ending point re rs gh ts rs Starting point 34 08 C 39 O R PO R A TI O Programming format Xp_ Yp_ I_ J_ (_) F_ P_ o. G17 G2.1 (or G3.1) Arc center coordinates Arc ending point coordinates Zp_ Xp_ K_ I_ (_) F_ P_ G19 G2.1 (or G3.1) Yp_ Zp_ J_ K_ (_) F_ P_ K ZA Se ri al N G18 G2.1 (or G3.1) A 2. MEP031 N .A ll ri Center M Detailed description Circular movement directions of G2.1 and G3.1 correspond with those of G02 and G03, respectively. 2. Radius designation is not available for spiral interpolation. (The starting and ending points must lie on the same arc for a radius designation.) 01 3 YA 1. (c )2 3. A ZA K IM P : Number of pitches (revolutions) (P can be omitted if equal to 0.) : Any axis other than circular interpolation axes (For helical cutting only) F : Rate of feed along the tool path yr ig ht Note: op 3. C 6-6 6 4. When a radius is designated, this command will be regarded as a radius-designated circular interpolation. Conical cutting or tapered threading can be done by changing the radii of the arc at its starting and ending points and designating a linear-interpolation axis at the same time. Even for normal circular command G2 or G3, spiral interpolation will be performed if the difference between the radii of the starting point and the ending point is smaller than the setting of parameter F19. 6-11 Serial No. 340839 6 INTERPOLATION FUNCTIONS Example: Y E A C X A B C D E 3000 mm/min 2500 2000 1500 1000 . D er ve d B re s MEP032 .A ll ri gh ts G28 X0 Y0 G00 Y–200. G17 G3.1 X–100. Y0 I–150. J0 F3000 P2 M30 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N When the above program data are executed, the feed rates for each of the points will be as shown in the diagram above. 6-12 Serial No. 340839 INTERPOLATION FUNCTIONS 4. 6 Sample programs Example 1: Spiral cutting Shown below is an example of programming for spiral contouring with incremental data input of the arc center (X = 0, Y = 45.0) and absolute data input of the arc ending point (X = 0, Y = –15.0). Y er ve d . X 15 ri gh ts re s 45 .A ll D735PB001 G91 G28 Z0 N Zero point return on the Z-axis 34 08 C 39 O R PO R A TI O G80 G40 Fixed-cycle cancellation T15 T00 M06 Tool change G54.1 P40 Coordinate system setting G94 G00 X0 Y-45.0 Approach in the XY-plane to the starting point (0, –45.0) M50 K K IM G01 Z-1.0 F150 A Se ri S1500 M03 ZA al Z3.0 ZA A YA )2 End of machining (c M30 Command for spiral interpolation with arc ending point = (0, –15.0), arc center = (0, 0)*, and pitch = 2. * I- and J-values refer to increments to the starting point. Spindle stop and Air blast OFF 01 3 M05 M09 Air blast ON Return on the Z-axis M G00 Z3.0 Normal rotation of the spindle Infeed on the Z-axis G2.1 X0 Y-15.0 I0 J45.0 F450 P2 Z30.0 Positioning on the Z-axis to the initial point N o. G43 Z30.0 H01 yr ig ht The rate of feed at the starting point is 450 mm/min, as specified in the block of G2.1, and the rate of feed at the ending point can be calculated as follows: (Ending point’s radius/Starting point’s radius) × Command value of the rate of feed. C op As the radius of the starting point = 45.0, that of the ending point = 15.0, and the command rate of feed (F) = 450, the rate of feed results in (15.0/45.0) × 450 = 150 mm/min at the ending point. Note 1: Take care not to use radius designation (argument R) for spiral interpolation; otherwise a normal circular interpolation (by G02 or G03) will be executed. Note 2: It is not possible to give the command for a spiral interpolation the starting and ending points of which should have different centers specified. 6-13 Serial No. 340839 6 INTERPOLATION FUNCTIONS Example 2: Heart-shaped cam (by absolute data input) Y 1 X er ve d . 70 ts re s D735PB002 Zero point return on the Z-axis G80 G40 Fixed-cycle cancellation T15 T00 M06 Tool change G54.1 P40 Coordinate system setting G94 G00 X0 Y-70.0 Approach in the XY-plane to the starting point (0, –70.0) 34 08 C 39 O R PO R A TI O N .A ll ri gh G91 G28 Z0 G43 Z30.0 H01 Positioning on the Z-axis to the initial point S1500 M03 Normal rotation of the spindle Z3.0 o. M50 K IM G00 Z3.0 Command for the left-hand half curve ZA Se X0 Y-70.0 I 0 J-1.0 Infeed on the Z-axis A ri G2.1 X0 Y1.0 I0 J70.0 F450 K al N G01 Z-1.0 F150 M05 M09 Return on the Z-axis End of machining C op yr ig ht (c )2 01 3 YA M A M30 Command for the right-hand half curve Spindle stop and Air blast OFF ZA Z30.0 Air blast ON 6-14 Serial No. 340839 INTERPOLATION FUNCTIONS Example 3: 6 Heart-shaped cam (by incremental data input) Y X 0 a b (30.) (100.) er ve d . Starting and Ending points MEP033 ri gh ts re s The difference (b–a) between the radii of the starting point and ending point denotes a displacement for heart shape. Use two blocks for programming separately the right-half and the left-half shape. ZA A ri C op yr ig ht (c )2 01 3 YA M A ZA K IM Se K N o. N (Minimum arc radius) (Maximum arc radius) (Ending-point coordinate of the right half-circle) (Ending-point coordinate of the left half-circle) al a = 30. b = 100. a + b = 130. –a – b = –130. 34 08 C 39 O R PO R A TI O G3.1 Y130. J100. F1000............... (Right half) a+b b G3.1 Y–130. J–30 ........................ (Left half) –a–b –a .A ll A sample program in incremental data input: 6-15 Serial No. 340839 6 INTERPOLATION FUNCTIONS Example 4: Large-size threading To perform large-size threading, use three heilical-interpolation blocks for programming separately infeed section, threading section and upward-cutting section. Spiral interpolation is required to designate the amounts of diameter clearance for both the infeed block and the upward-cutting block. (The starting and ending points are shifted through the designated clearance amounts from the circumference of threading section.) Clearance er ve d . X i1 re s i3 0 Z gh ts i2 .A ll ri Y 34 08 C 39 O R PO R A TI O z2 z1 Infeed Threading z3 Upward cutting MEP034 o. (Infeed block, half-circle) (Threading block, complete circle) (Upward-cutting block, half-circle) K ZA A The number of pitches, p2, in the threading block is given by dividing the stroke z2 by the pitch . Note that the value p2 must be an integer. C op yr ig ht (c )2 01 3 YA M A ZA K IM * Se ri al N G3.1 X–i1–i2 Y0 Zz1 I–i1 J0 Ff1 G03 X0 Y0 Zz2 Ii2 J0 Pp2 G3.1 Xi2+i3 Y0 Zz3 Ii2 J0 N 6-16 Serial No. 340839 INTERPOLATION FUNCTIONS Example 5: 6 Tapered threading As shown in the figure below, tapered helical cutting that begins at any angle can be performed. e = Ending point s = Starting point X e 0 x1 er ve d . i1 Z Y j1 gh ts y1 re s s ri p1 MEP035 34 08 C 39 O R PO R A TI O N .A ll z1 K N al G3.1 Xx1 Yy1 Zz1 Ii1 Jj1 Pp1 Ff1 o. Data with addresses X, Y and Z must be the increments x 1, y1 and z1 respectively, from the starting point s to the ending point e; data of I and J must be the increments i1 and j1 respectively, from the starting point s to the circular center, and data of P must be equal to the number of pitches p1. ZA K IM i12 + j12 , re = (x1 – i1)2 + (y1 – j1)2 ; ZA where rs = A 2(re – rs) x1 Se t= ri The amount of taper t and the pitch are calculated as follows: A z1 (2 p1 + ) / 2 YA M = 01 3 where = e – s = –1 tan j1 – y1 i1 – x1 –1 – tan –j1 –i1 C op yr ig ht (c )2 where rs and re denote the radii at the starting point and the ending point respectively, and qs and qe denote the angles at the starting point and the ending point respectively. 6-17 Serial No. 340839 6 INTERPOLATION FUNCTIONS Example 6: Conical cutting Conical cutting is an application of tapered threading, and have its starting or ending point on the center line. Tapering results from gradually increasing or decreasing the arc diameter. The pitch is determined by z1/p1. Z er ve d . p1 gh ts re s z1 .A ll ri Y N X 34 08 C 39 O R PO R A TI O 0 x1 A ZA K N al ri K IM Se x1 : Radius of the base z1 : Height p1 : Number of pitches f1 : Feed rate o. G2.1 X–x1 Y0 Zz1 I–x1 Pp1 Ff1 MEP036 Note 1: Use the TRACE display to check the tool path during spiral interpolation. M A ZA Note 2: In a combined use with the cylindrical interpolation, the machining contour of spiral interpolation on the cylindrical surface may be unexpectedly reversed due to a particular configuration of the machine’s controlled axes. C op yr ig ht (c )2 01 3 YA See “4. Remarks” in Section 6-13 for more information. 6-18 Serial No. 340839 INTERPOLATION FUNCTIONS 6-7 6 Plane Selection: G17, G18, G19 6-7-1 Outline 1. Function and purpose Commands G17, G18 and G19 are used to select a plane for motion control. Registering the three fundamental axes as parameters allows you to select a plane generated by any two non-parallel axes. Use these G-codes to select the plane for the following: - Circular interpolation er ve d . - Polar coordinate interpolation - Chamfering re s - Positioning for fixed cycle operation - Corner rounding/chamfering ts Programming format gh 2. G17; (XY-plane selection) G18; (ZX-plane selection) G19; (YZ-plane selection) Y 34 08 C 39 O R PO R A TI O N .A ll ri X, Y, and Z denote respective coordinate axes or their corresponding parellel axes. X Z G03 G03 o. G03 G02 ZA K G02 Z Y G19 (YZ) plane A G18 (ZX) plane K IM Se ri X G17 (XY) plane al N G02 C op yr ig ht (c )2 01 3 YA M A ZA TEP024’ 6-19 Serial No. 340839 6 INTERPOLATION FUNCTIONS 6-7-2 Plane selection methods Plane selection by parameter setting is explained in this section. Which of the fundamental axes or their parallel axes are to form the plane you want to select is determined by the type of plane selection command (G17, G18 or G19) and the axis address specified in the same block. Z G18X Z; G03 G19Y Z; G03 G02 G03 G02 . X G17X Y; G02 Z Y gh ts X er ve d Y re s 1. ri TEP025’ Automatic plane selection does not occur for blocks that do not have an issued plane-selection command (G17, G18 or G19) 3. ZX-plane ZX-plane (No plane change) 34 08 C 39 O R PO R A TI O G18 X_ Z_; Y_ Z_; N .A ll 2. If axis addresses are not set for blocks having an issued plane-selection command (G17, G18 or G19), the fundamental three axes will be regarded as set. (ZX-plane = G18 XZ ;) N o. G18_; K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al Note 1: Use bits 0 and 1 of parameter F92 to set the initial plane which is to be selected upon power-on or resetting. Note 2: The G-codes for plane selection (G17, G18 or G19) should be commanded in a block independently. If such a G-code is commanded in a block containing the axis move command, a movement independent from the selected plane can be caused. 6-20 Serial No. 340839 INTERPOLATION FUNCTIONS Polar Coordinate Interpolation ON/OFF: G12.1/G13.1 (Option) 1. Function and purpose Polar coordinate interpolation is a function to convert a command programmed by the rectangular coordinate system into the linear axis movement (tool movement) and the rotational axis movement (workpiece rotation) to give contouring control. 2. Programming format The polar coordinate interpolation is commanded by the following G-codes (group 19). Polar coordinate interpolation mode (Mode by which the polar coordinate is interpolated) G13.1: Polar coordinate interpolation cancel mode (Mode by which the polar coordinate is not interpolated) re s er ve d . G12.1: ri Detailed description When turning on the power and resetting, the polar coordinate interpolation cancel mode (G13.1) is provided. Commanding G12.1 provides a plane selected by G17. 2. The polar coordinate interpolation uses the zero point of workpiece coordinate system as that of the coordinate system. A plane (hereinafter referred to as “polar coordinate interpolation plane”) is selected using the linear axis as the 1st axis of the plane and the virtual axis perpendicular to the linear axis as the 2nd axis of the plane. The polar coordinate interpolation is given on that plane. 3. The program during polar coordinate interpolation mode is commanded by the rectangular coordinate value on the polar coordinate interpolation plane. The axis address of the rotational axis (C) is used for that of the command of the 2nd axis of the plane (virtual axis). ZA ri Se K N o. 34 08 C 39 O R PO R A TI O N .A ll 1. al 3. gh ts These G-codes should be commanded in an independent block. K IM A A command is given in mm or inches as with the 1st axis of the plane (command by the axis address of the linear axis), and not in degrees. Absolute command and incremental command for the linear interpolation (G01) and the circular interpolation (G02, G03) can be commanded during the polar coordinate interpolation mode. The tool radius compensation can also be made for the program command, and the polar coordinate interpolation is given to the path after the tool radius compensation. However, the polar coordinate interpolation mode (G12.1, G13.1) cannot be changed during the tool radius compensation mode (G41, G42). G12.1 and G13.1 must be commanded in G40 mode (Tool radius compensation cancel mode). 5. The feed rate is commanded using tangential speed (relative speed of the workpiece and a tool) on the polar coordinate interpolation plane (rectangular coordinate system) as F (mm/min or in/min is used for a unit of F). op yr ig ht (c )2 01 3 YA M A ZA 4. 6. C 6-8 6 The coordinate value of the virtual axis when G12.1 is commanded provides “0”. That is, the polar coordinate interpolation is started taking the position where G12.1 is commanded as the angle = 0. 6-21 Serial No. 340839 6 INTERPOLATION FUNCTIONS G17: X-C (virtual axis) plane X C Z C (Virtual axis) Sample programs re s 4. er ve d . D732S0008 N070 N060 .A ll X K ZA A N090 YA M Programmed path A ZA Tool center path N050 N100 K IM Se ri al N o. N080 34 08 C 39 O R PO R A TI O N C ri gh ts C (Virtual axis) 01 3 )2 G00 G97 G98; G28 U0 W0; M200; T01T00M06; G00 X100.0 Z10.0 C0.0; G12.1; G42; G01 X50.0 F500; C10.0; G03 X-50.0 C10.0 I-25.0; G01 C-10.0; G03 X50.0 C-10.0 R25.0; G01 C0.0; G00 X100.0; G40; G13.1; M202; C op yr ig ht (c N001 N004 N008 N010 N020 N030 N040 N050 N060 N070 N080 N090 N100 N110 N120 N130 N140 D732S0009 6-22 Positioning to the start point Polar coordinate interpolation ON Contour program (Program with rectangular coordinate values on the XC-plane) Polar coordinate interpolation OFF Serial No. 340839 INTERPOLATION FUNCTIONS Remarks 1. Before G12.1 is commanded, a workpiece coordinate system must be set using the center of rotational axis as the zero point of the coordinate system. The coordinate system must not be changed during G12.1 mode. 2. The plane before G12.1 is commanded (plane selected by G17, G18 or G19) is temporarily cancelled, and it is restored when G13.1 (polar coordinate interpolation cancel) is commanded. The polar coordinate interpolation mode is cancelled in resetting, and the G17 plane is provided. 3. The method of commanding the circular radius (which address of I, J and K is used) when the circular interpolation (G02, G03) is given on the polar coordinate interpolation plane depends on which axis of the basic coordinate system the 1st axis of the plane (linear axis) corresponds to. er ve d . 5. 6 Command is given by I and J taking the linear axis as the X-axis of Xp-Yp plane. re s Command is given by J and K taking the linear axis as the Y-axis of Yp-Zp plane. gh ts Command is given by K and I taking the linear aixs as the Z-axis of Zp-Xp plane. ri The circular radius can also be designated by R command. G-codes capable of command during G12.1 mode are G04, G65, G66, G67, G00, G01, G02, G03, G98, G99, G40, G41 and G42. 5. Move command of an axis other than those on the selected plane during G12.1 mode is executed independently of the polar coordinate interpolation. 6. Tool offset must be commanded in the polar coordinate interpolation cancel mode before G12.1 is commanded. It cannot be commanded during the polar coordinate interpolation mode. Offset amount must not be changed during the polar coordinate interpolation mode. 7. Current position display during G12.1 mode Every current position during the polar coordinate interpolation mode is displayed with an actual coordinate value. However, only “residue moving distance” (REMAIN) is displayed with the residue moving distance on the polar coordinate command plane. 8. Program restart cannot be made for a block during G12.1 mode. 9. The machining contour of polar coordinate interpolation may be unexpectedly reversed due to a particular configuration of the machine’s controlled axes. K ZA A A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll 4. C op yr ig ht (c )2 01 3 YA M See “4. Remarks” in Section 6-13 for more information. 6-23 Serial No. 340839 6 INTERPOLATION FUNCTIONS Virtual-Axis Interpolation: G07 1. Function and purpose Specify with G07 code one of the two circular-interpolation axes for helical or spiral interpolation with synchronous linear interpolation as a virtual axis (a pulse-distributed axis without actual movement), and an interpolation on the plane defined by the remaining circular axis and the linear axis can be obtained along the sine curve which corresponds with the side view of the circular interpolation with synchronous linear interpolation. Programming format G07 0 G07 1 . er ve d ts Detailed description Only helical or spiral interpolation can be used for the virtual-axis interpolation. 2. In the program section from G070 to G071, the “alpha” axis is processed as a virtual axis. If, therefore, the alpha axis is included independently in this section, the machine will remain in dwell status until pulse distribution to the virtual axis is completed. 3. The virtual axis is valid only for automatic operation; it is invalid for manual operation. 4. Protective functions, such as interlock, stored stroke limit, etc., are valid even for the virtual axis. 5. Handle interruption is also valid for the virtual axis. That is, the virtual axis can be shifted through the amount of handle interruption. ri gh 1. ZA al Sample program ri 4. Sets the Y-axis as a virtual axis. Sine interpolation on the XZ-plane Resets the Y-axis to an actual axis. A ZA K IM A G07 Y0 G17G2.1X0Y–5.I0J–10.Z40.P2F50 G07 Y1 Se K N o. 34 08 C 39 O R PO R A TI O N .A ll 3. To set a virtual axis To interpolate with the virtual axis To cancel the virtual axis re s 2. X-axis YA M X-axis )2 01 3 10. Z-axis 20. ig ht (c 5. –5. –10. Y-axis yr op 40. –5. C 6-9 –10. MEP037 6-24 Serial No. 340839 INTERPOLATION FUNCTIONS 6 6-10 Spline Interpolation: G06.1 (Option) 1. Function and purpose The spline interpolation automatically creates a curve that smoothly traces specified points, and thus enables a high-speed and high-accuracy machining for free shapes along smoothly curved tool path. 2. Programming format G06.1 Xx1 Yy1 Detailed description Setting and cancellation of spline interpolation mode re s A. er ve d . 3. gh ts The spline interpolation mode is set by the preparatory function G06.1, and cancelled by another Group 01 command (G00, G01, G02 or G03). P1 P2 P3 P4 P5 N Pn 34 08 C 39 O R PO R A TI O N100 G00 X_Y_ N200 G06.1 X_Y_ N201 X_Y_ N202 X_Y_ N203 X_Y_ N290 X_Y_ N300 G01 X_Y_ .A ll ri Example 1: Pn Pn+1 P3 P5 P4 ZA K P1 A Se ri al N o. P2 Pn+1 K IM Fig. 6-1 Interpolated line by spline interpolation M A ZA In the above example, the spline interpolation is activated at N200 (block for movement from P 1 to P2) and it is cancelled at N300. Therefore, a spline curve is created for a group of ending points from P1 to Pn, and interpolation is applied along the created curve. 01 3 YA For creating a spline interpolation curve, it is generally required to specify two or more blocks (at least three points to be traced) in the mode. If the spline interpolation mode is set just for one block, the path to the ending point of the block is interpolated in a straight line. C op yr ig ht (c )2 Example 2: N100 N200 N300 G01 X_Y_ G06.1 X_Y_ G01 X_Y_ P1 P2 P3 Linear interpolation for the single spline-interpolation block P1 P2 P3 Fig. 6-2 Spline interpolation applied to a single block 6-25 Serial No. 340839 6 INTERPOLATION FUNCTIONS B. Division of spline curve in spline-interpolation mode The spline interpolation mode generally creates a continuous curve that smoothly connects all specified points from the beginning of the mode to the end of it. However, the spline curve is divided into two discontinuous curves as often as one of the following conditions is satisfied: - When the angle between linear movement lines of two neighboring blocks is beyond the spline-cancel angle, - When the movement distance of a block exceeds the spline-cancel distance, or - When there is a block without any movement command in the spline-interpolation mode. 1. When the relative angle of two neighboring blocks is beyond the spline-cancel angle er ve d . Spline-cancel angle Parameter F101 re s As to the sequence of points P1, P2, P3, Pn in a spline interpolation mode, when the angle ts i made by two continuous vectors Pi–1 Pi and PiPi+1 is larger than F101, the point Pi is F101 = 80 deg 34 08 C 39 O R PO R A TI O N Example 1: .A ll ri gh regarded as a corner. In that event, the point group is divided into two sections of P 1 to Pi and Pi to Pn at Pi, and spline curve is individually created for each section. When the spline-cancel angle is not set (F101 = 0), this dividing function is not available. P4 3 P3 4 2 N 5 4 > F101 P6 ZA K IM 6 P1 P5 A Se ri P6 Forms a corner P2 K al P2 o. P5 P4 P3 P1 P7 ZA P7 M A P4 P5 F101 not set P2 )2 01 3 YA P3 ig ht (c P6 C op yr P1 Fig. 6-3 Spline cancel depending on angle 6-26 P7 Serial No. 340839 INTERPOLATION FUNCTIONS 6 When there are more than one point where i > F101, such points are treated as corners to divide the point group and multiple spline curves are created for respective sections. i > F101 ts re s er ve d . i > F101 ri gh Fig. 6-4 Multiple-cornered spline curve depending on angle Example 2: 34 08 C 39 O R PO R A TI O N .A ll When any two corner points (where i > F101) successively exist, the block for the second point is automatically set under control of linear interpolation. Therefore, it can be omitted to specify G01 code in each intermediate block of pick feed, for example, during 2.5dimensional machining, which considerably simplifies the programming. F101 < 90 (deg) M A 01 3 YA (G01) (G06.1) (G01) (G06.1) (c ht K ZA A P1 P2 P3 Pj+1 G01 Pi Pi+1 Pi+2 P1 Pj Z Pj Pj+1 Pj+2 Y Pn X Pn Pi+1 Pi C op yr ig X_Y_Z_ X_Z_ X_Z_ X_Z_ Y_ X_Z_ X_Z_ Y_ X_Z_ X_Z_ ZA G00 G06.1 )2 N100 N200 N210 N300 N310 N320 N400 N410 N420 N700 N710 K IM Se ri al N o. In the following program (shown in Fig. 6-5), the angle of the Y-directional pick feed to the X-Z plane (of spline interpolation) is always 90°. If F101 is set slightly smaller than 90°, spline interpolation is automatically cancelled in the pick-feed blocks (N310, N410, ), which are then linearly interpolated each time. If no value is set for F101, it is required to specify G-codes parenthesized in the program below to change the mode of interpolation. Fig. 6-5 Linear interpolation for pick feed in spline-interpolation mode 6-27 Serial No. 340839 6 INTERPOLATION FUNCTIONS 2. When the movement distance of a block exceeds the spline-cancel distance Spline-cancel distance Parameter F100 As to the sequence of points P1, P2, P3, Pn in a spline interpolation mode, when the length PiPi+1 of the vector PiPi+1 is longer than F100, the block for point Pi+1 is automatically set under control of linear interpolation, while the preceding and succeeding sections P 1 to Pi and Pi+1 to Pn are individually interpolated in spline curves. In this case, the inclination of the tangent vector at P i (at the end of spline P1 to Pi) and the inclination of the tangent vector at Pi+1 (at the beginning of spline Pi+1 to Pn) do not er ve d . correspond to that of the line segment PiPi+1 in general. re s When the spline-cancel distance is not set (F100 = 0), this dividing function is not available. (a) P4P5 > F100, PiPi+1 F100 for other blocks ts P4 ri P6 P3 P7 P2 P1 P8 P1 P7 P8 34 08 C 39 O R PO R A TI O P2 P6 .A ll P4P5 > F100 P5 N P3 P5 gh P4 (b) F100 is not specified Interpolated as follows: P1 to P4: Spline curve, P4 to P5: Straight line, P5 to P8: Spline curve. o. The whole path P1 to P8 is interpolated in one spline curve. K al N Fig. 6-6 Spline cancel depending on movement distance of a block K IM A undergo the linear interpolation. ZA Se ri When there are more than one block where PiPi+1 > F100, all those blocks will individually When there is a block without any movement command in the spline-interpolation mode Any block without movement command temporarily cancels the spline interpolation, and the sections before and after such a block will independently be spline-interpolated. 01 3 G01 X_Y_ G06.1 X_Y_ X_Y_ )2 N100 N110 N120 YA M A ZA 3. X_Y_ X0 X_Y_ N500 N510 X_Y_ X_Y_ C op yr ig ht (c N300 N310 N320 G01 P1 P2 P7 P8 P6 P5 P5 (Not moved) P6 P5 P4 Spline from P5 to P8 P3 Forms a corner P2 P8 Spline from P1 to P5 P1 Fig. 6-7 Spline cancel by a block without movement command 6-28 Serial No. 340839 INTERPOLATION FUNCTIONS C. 6 Fine spline function (curved shape correction) The fine spline function works with spline interpolation and automatically corrects the shape of a spline curve, as required, to make the path of the curve smoother. More specifically, the fine spline function works in the following two cases: - The case that the curve errors in blocks are significant - The case that an unusually short block exists (automatic correction in this case is referred to as fairing.) Automatic correction in the above cases is explained below. 1. Automatic correction for significant curve errors in blocks re s er ve d . When the curve data in CAD undergoes micro-segmentation with CAM, approximation using a polygonal line is usually executed with a curve tolerance (chord error) of about 10 microns. At this time, if any inflection points are included in the curve, the micro-segment block including the inflection points may increase in length (see P3 P4 . in the figure below) .A ll ri gh ts Also, if the length of this block becomes unbalanced against those of the immediately preceding and succeeding blocks, the spline curve in this zone may have a significant error with respect to the original curve. N P2 Tolerance 34 08 C 39 O R PO R A TI O P1 P3 Tolerance (minus side) P0 Spline curve (deviation from the CAD curve is significant) K P7 A P4 K IM Se ri CAD curve Tolerance (plus side) ZA al N o. Inflection point in the original curve P6 ZA P5 A Fig. 6-8 Spline curve having a significant chord error (inflection points present) Curve error 1 Parameter F102 C op yr ig ht (c )2 01 3 YA M This function detects the sections whose chord errors in the curve due to the presence of inflection points become significant, and corrects the shape of the spline curve in that zone automatically so that the chord errors in the curve fall within the data range of the specified parameter. 6-29 Serial No. 340839 6 INTERPOLATION FUNCTIONS If a block in the spline interpolation mode is judged to have inflection points in the spline curve and the maximum chord error of the spline curve from the segment is greater than the value of F102, the shape of that spline curve will be corrected for a maximum chord error not exceeding the value of F102. Uncorrected spline curve Corrected spline curve A er ve d . B ts re s F102 or less gh Fig. 6-9 Shape correction 1 for spline curve 34 08 C 39 O R PO R A TI O N .A ll ri The shape of a curve can also be corrected if the chord error in the spline curve increases due to an imbalance in the lengths of adjoining blocks occurs for any reasons other than the presence of inflection points or for other reasons. Curve error 2 Parameter F104 K ZA A K IM Se ri al N o. If a blocks in the spline interpolation mode is judged to have no inflection points in the spline curve and the maximum chord error in the spline curve and block is greater than the value of F104, the shape of that spline curve will be corrected for a maximum chord error not exceeding the value of F104. Uncorrected spline curve ZA Correction F104 or less ht (c )2 01 3 YA M A Corrected spline curve yr ig Fig. 6-10 Spline curve having a significant chord error (no inflection points) C op Remark 1: In all types of spline curve correction, the curve correction function works only for the corresponding block. Therefore, the tangential vectors at the boundaries with the immediately preceding and succeeding blocks become discontinuous. Remark 2: If parameter F102 is set to 0, all blocks regarded as including inflection points will become linear. If parameter F104 is set to 0, all blocks regarded as including no inflection points will become linear. Remark 3: Curved-shape correction based on parameter F102 or F104 usually becomes necessary when adjoining blocks are unbalanced in length. If the ratio of the adjoining block lengths is very large, however, spline interpolation may be temporarily cancelled between the blocks prior to evaluation of the chord error. 6-30 Serial No. 340839 INTERPOLATION FUNCTIONS 2. 6 Automatic correction of the spline curve in an unusually short block (Fairing) When CAD data is developed into micro-segments by CAM, a very small block may be created in the middle of the program because of internal calculation errors. Such a block is often created during creation of a tool radius compensation program which requires convergence calculation, in particular. Since this unusually small block usually occurs at almost right angles to the direction of the spline curve, this curve tends not to become smooth. re s er ve d . Distorted spline curve .A ll ri gh ts Very small block N Fig. 6-11 Distortion of a spline curve due to the effects of a very small block 34 08 C 39 O R PO R A TI O If it detects such an extremely small block during spline interpolation, the shape correction function will remove that block and then connect the preceding and succeeding blocks directly (this is referred to as fairing) to create a smooth spline curve free from distortion. N o. Block fairing length Parameter F103 K ZA ZA K IM li – 1 > F103 × 2 li F103 li + 1 > F103 × 2 A Se ri al Assume that the length of the i-th block in spline interpolation mode is taken as li and that the following expressions hold: 01 3 YA M A In the above case, the ending point of the (i–1)-th block and the starting point of the i+1 block are moved to the mid-point of the ith block and as a result, the ith block is deleted. Spline interpolation is executed for the sequence of points that has thus been corrected. li F103 li–1 F103 × 2 C op yr ig ht (c )2 li+1 F103 × 2 Correction of the passing point Created spline curve Fig. 6-12 Correction of spline curve passing points by fairing 6-31 Serial No. 340839 6 INTERPOLATION FUNCTIONS Assume that the first block in spline interpolation mode is very small and that the following expressions hold: l1 F103 l2 > F103 × 2 In the above case, the starting point of the second block is changed to that of the first block and as a result, the first block is deleted. l1 F103 Non-spline block gh .A ll ri Created spline curve ts re s er ve d . l2 F103 × 2 34 08 C 39 O R PO R A TI O N Deletion of the passing point Fig. 6-13 Fairing at the starting point of a spline curve Assume that the last block in spline interpolation mode is very small and that the following expressions hold: o. ln–1 F103 × 2 al N ln F103 K ZA A K IM Se ri In the above case, the ending point of the (n–1)-th block is changed to that of the nth block and as a result, the nth block is deleted. ln F103 ZA ln–1 F103 × 2 )2 01 3 YA M A Non-spline block Created spline curve C op yr ig ht (c Deletion of the passing point Fig. 6-14 Fairing at the ending point of a spline curve This function is executed preferentially over the curve slitting function based on the angle of spline cancellation. 6-32 Serial No. 340839 INTERPOLATION FUNCTIONS D. 6 Feed-rate limitation in spline-interpolation mode The modal cutting feed rate F remains valid in general for the spline interpolation; however, if the feed rate should be kept constant, it would yield excessively high acceleration at portions where the curvature is big (the curvature radius is small) as shown in Fig. 6-15. Acceleration: High Curvature: Small F er ve d . Acceleration: Low ts re s Curvature: Big gh Fig. 6-15 Change of acceleration depending on curvature A Pj+1 F : Modal feed rate (mm/min) Rs : Curvature radius at the starting point of block (mm) Re : Curvature radius at the ending point of block (mm) R : Reference curvature radius for the block (mm) R = min {Rs, Re} V : Maximum of pre-interpolation acceleration F’ : Limit feed rate (mm/min) K IM Se ZA ri F’ Pi K al N o. 34 08 C 39 O R PO R A TI O N .A ll ri In the spline-interpolation mode of our NC, the feed rate can be controlled so that it does not exceed the allowable limit, calculated from the related parameters, for pre-interpolation acceleration. To obtain an appropriate feed rate for each block of spline interpolation, the limit feed rate F' is calculated by the equation [1] shown below where the smaller between two radii Rs (curvature radius at the starting point of the block) and Re (curvature radius at its ending point) will be regarded as the reference radius R for the block. The modal feed rate F will then be temporarily overridden by F' for the respective block if F>F', so that the whole spline curve can be interpolated block-by-block at the appropriate feed rate according to the curvature radius. Re ht (c )2 01 3 YA M A ZA Rs C op yr ig Fig. 6-16 Feed-rate limitation for spline interpolation F' = R × V × 60 × 1000 V = G1bF (mm/min) G1btL (ms) ......... [1] 6-33 Serial No. 340839 6 INTERPOLATION FUNCTIONS E. Spline interpolation during tool radius compensation The spline interpolation can be performed during tool radius compensation as follows. 1. Tool radius compensation (2-dimensional) Shown in Fig. 6-17 is an example that the command route is straight in the section P 0P1, polygonal line in the section P1P2 . . . Pn that is the object of spline interpolation, and straight in the section PnPn+1. The interpolation route with tool radius compensation is created by the following procedure. 1) In the first step is created a polygonal line P0'P1'P2' . . . Pn'Pn+1' that is offset by the radius compensation value r compared with the original polygonal line P0P1P2 . . . PnPn+1. 2) Next, a point Pi'' where PiPi'' = r on the vector er ve d . PiPi' is determined for all the pass ts Spline interpolation is now conducted for the polygonal line P 1'P2''P3'' . . . Pn–1''Pn' and the curve thus created will act an offset path of tool center for the commanded spline curve. .A ll ri gh 3) re s points Pi (i = 2, 3, . . . n–1) other than the starting point P1 and the ending point Pn of the spline curve. N P2' 1) r P1' P0 ' 34 08 C 39 O R PO R A TI O P3' P2 r r P1 Pn Pn-1' Pn+1 P1' A ZA Pn-1 r P3 ’ P2 P3'' A M P 1 Pn-1'' Spline curve for commanded points offset P2'' Pn-1 ig ht P3'' P2 P0 ' P1' C P0 P Spline curve for commanded points Pn+1' Pn ' P3 op yr Pn+1 r )2 (c 3) Pn Pn-1' 01 3 YA P 0 Pn+1' Pn' r P3 ZA P0 ' K IM Se P2'' P2' 2) K ri al N o. P0 Pn+1' Pn' P3 Pn-1'' Pn Pn+1 Pn-1 Fig. 6-17 Spline interpolation during tool radius compensation The spline curve created in the above-mentioned procedure is not the strict offset, indeed, of the commanded spline curve, but an approximation of it. 6-34 Serial No. 340839 INTERPOLATION FUNCTIONS 2. 6 3-dimensional tool radius compensation In the 3-dimensional tool radius compensation, each point defined with programmed coordinates is first offset through the tool radius “r” in the direction of the specified normal vector (i, j, k) and then, the serial points thus offset in the spline-interpolation section are connected in a smooth curve, which will act as the path of tool-radius center for the 3dimensional spline interpolation. F. Others The spline interpolation targets the basic coordinate axes of X, Y and Z; however, it is not always required to specify objective axes on commanding the spline interpolation. Moreover, the spline-interpolation command code (G06.1) can be given in a block without any movement command. N100 N200 N300 X_Y_Z_ X_Y_Z_ N200 N300 X_Y_ X_Y_Z_ X_Y_Z_ ri F_ ( No movement commands) G06.1 N200 X_Y_Z_ N300 X_Y_Z_ .A ll N100 G06.1 re s ts X_Y_Z0 gh G06.1 N N100 34 08 C 39 O R PO R A TI O Example: er ve d . 1. The spline-interpolation command (G06.1) falls under the G-code group 01. 3. In the single-block operation mode, the spline interpolation is cancelled and all the respective blocks will individually undergo the linear interpolation. 4. In tool-path check, the blocks of spline interpolation are not actually displayed in a spline curve but in a polygonal line that connects linearly the repective points, which, in case of tool radius compensation, will have been offset in the same manner as described in the foregoing article E. 5. During spline interpolation, when feed hold is executed, the block for which the feed hold function has been executed will be interpolated, at the beginning of the restart operation along the spline curve existing before the feed hold function was executed, and then the spline curve in the next block onward will be re-created and interpolation executed. 6. Althouth spline interpolation can also be executed in the high-speed maching mode (G05P2 mode), curve shape correction by fairing becomes invalid in the G05P2 mode. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 2. 6-35 Serial No. 340839 6 INTERPOLATION FUNCTIONS 6-11 Modal Spline Interpolation: G61.2 (Option) 1. Function and purpose The modal preparatory function G61.2 is used to select a geometry compensation mode which is in general equivalent to G61.1 with a particular difference in that all blocks of G1 (linear interpolation) are processed as those of fine spline interpolation. This function is especially useful in applying fine spline interpolation to a programm with microsegment blocks created by a CAM. 2. Programming format er ve d Detailed description re s 3. . G61.2 ............. Modal spline interpolation ON : G64 ................ Modal spline interpolation OFF G0 G61.1 + G0 G61.1 + G0 G1 G61.1 + G06.1 G2/G3 G61.1 + G2/G3 G06.1 G61.1 + G06.1 G64 N G61.1 34 08 C 39 O R PO R A TI O G61.2 .A ll ri gh ts The mode of fine spline interpolation for G1 blocks under G61.2 is temporarily cancelled by any other G-code of group 01, and the mode of G61.2 is cancelled by any other G-code of group 13. The table below is given to show how various interpolation types are processed under different modal states of group 13. For example, G1 under G61.2 is equivalent to G06.1 under G61.1. G0 G1 G61.1 + G2/G3 G2/G3 G61.1 + G06.1 G06.1 ZA A ri 01 3 YA M A ZA K IM Se K Sample program al 4. N o. G61.1 + G1 (c )2 D740PB0026 C op yr ig ht N099 G61.2 N100 G00 X_Y_Z_ N200 G01 X_Y_Z_ N201 X_Y_Z_ N202 X_Y_Z_ N203 G00 X_Y_Z_ N204 G01 X_Y_Z_ P1 P2 P3 P4 P5 P6 N205 X_Y_Z_ N206 X_Y_Z_ : N290 G01 X_Y_Z_ N300 G00 X_Y_Z_ P7 P8 Pn Pn+1 A simple insertion of G61.2 allows fine spline interpolation to be applied to the linear interpolation blocks without having to replace the G01 codes in the blocks N200, N204 etc. with G06.1. 6-36 Serial No. 340839 INTERPOLATION FUNCTIONS 6 6-12 NURBS Interpolation: G06.2 (Option) 1. Function The NURBS interpolation function provides interpolation by performing NURBS-defined CNCinternal computations on the command issued from the CAD/CAM system in the NURBS format. With this optional function, a very smooth interpolation path can be obtained since the interpolation process is performed directly without dividing a NURBS-formatted free-form curve into minute line segments. 2. Definition of the NURBS curve re s er ve d . NURBS, short for Non-Uniform Rational B-Spline, provides rationalization of the B-spline function. The NURBS curve is defined as follows: P(t) = (xm–1 t xn+1) N P2 n Ni,m(t)wi i=0 .A ll Pn–1 ri n Ni,m(t)wiPi i=0 gh ts Pn Ni,1(t) = 1 (xi t xi+1) 0 (t xi, xi+1 t) Ni,k(t) = (t – xi) Ni,k–1(t) (xi+k – t) Ni+1,k–1(t) + xi+k–1 – xi xi+k – xi+1 34 08 C 39 O R PO R A TI O P1 P(t) K MEP300 ZA ri Se Fig. 6-18 NURBS curve al N o. P0 K IM A - “Pi” and “wi” denote respectively a control point and the weight on the control point. - “m” denotes the rank, and the NURBS curve of rank “m” is a curve of the (m–1)-th order. A ZA - “xi” denotes a knot (xi xi+1), and an array of knots [x0 x1 x2 ... xn+m] is referred to as the knot vector. YA M - A variation in parameter “t” from xm–1 to xn+1 produces NURBS curve P(t). 01 3 - Ni, k(t) is the B-spline basis function expressed by the above recurrence equation. Programming format (c 3. )2 Thus the NURBS curve is uniquely defined from the weighted control points and the knot vector. C op yr ig ht G6.2[P] K_X_Y_Z_[R_][F_] NURBS interpolation ON K_X_Y_Z_[R_] K_X_Y_Z_[R_] K_X_Y_Z_[R_] K_X_Y_Z_[R_] K_ K_ K_ K_ NURBS interpolation OFF 6-37 P : Rank (omissible) X, Y, Z : Coordinates of the control point R : Weight on the control point (omissible) K : Knot F : Speed of interpolation (omissible) Serial No. 340839 6 INTERPOLATION FUNCTIONS 4. Detailed description Set the G6.2 code to select the NURBS interpolation mode. Subsequently, designate the rank, the coordinates and weights of the control points, and the knots to determine the shape of the NURBS curve. The modal code G6.2, which belongs to group 1 of G-codes, is of temporary validity and the modal function relieved by a G6.2 code will automatically be retrieved upon cancellation (termination) of the NURBS interpolation. The G6.2 code can only be omitted for an immediately subsequent setting of the next NURBS curve. Address P is used to set the rank, and the NURBS curve of rank “m” is of the (m–1)-th order, that is, set as the rank re s er ve d . - P2 for a straight line (curve of the first order), - P3 for a quadratic curve (of the second order) or - P4 for a cubic curve (of the third order). N .A ll ri gh ts Setting another value than 2, 3 and 4 will cause an alarm, and P4 will be used in default of argument P. The rank, moreover, should be specified in the first block (containing the G6.2 code). Designate the control points in as many sequential blocks as required by specifying their respective coordinates and weights at addresses X, Y, Z and R. Argument R denotes the weight proper to each control point (R1.0 will be used in default), and the more the weight is applied, the closer will be drawn the NURBS curve to the control point. K ZA K IM Remarks Only the fundamental axes X, Y and Z can undergo the NURBS interpolation. 2. Do not fail to explicitly designate all the required axes X, Y and/or Z in the first block (containing G6.2). Designating a new axis in the second block onward will cause an alarm. 3. Since the first control point serves as the starting point of the NURBS curve, set in the first block (with G6.2) the same coordinates as the final point of the previous block. Otherwise, an alarm will be caused. 4. The setting range for the weight (R) is from 0.0001 to 99.9999. For a setting without decimal point, the least significant digit will be treated as units digit (for example, 1 = 1.0). A ZA 1. (c ht The knot (K) must be designated for each block. Omission results in an alarm. yr ig 5. )2 01 3 YA M 5. A Se ri al N o. 34 08 C 39 O R PO R A TI O Address K is assigned to knots, and the NURBS curve of rank “m” for an “n” number of control points requires an (n+m) number of knots. The required array of knots, referred to as knot vector, is to be designated in sequential blocks, namely: the first knot in the same block as the first control point, the second knot in the same block as the second control point, and so forth. Following the “n” blocks entered thus, designate the remaining “m” knots in single-command blocks. The leading single-command block of argument K also notifies the NC of the completion of entering the control points, and the NURBS interpolation function itself will be terminated with the last block for the “m” knots. Knots, as with the weight, can be set down to four decimal digits, and the least significant digit of a setting without decimal point will be regarded as units digit. 7. Knots must be monotonic increasing. Setting a knot smaller than that of the previous block will result in an alarm. 8. The order of addresses in a block can be arbitrary. C op 6. 6-38 Serial No. 340839 INTERPOLATION FUNCTIONS 9. 6. 6 The shape of the NURBS curve can theoretically be modified very flexibly by changing the rank, the positions and weights of the control points, and the knot vector (the relative intervals of knots). In practice, however, manual editing is almost impossible, and a special CAD/CAM system should be used to edit the NURBS curve and create the program for the interpolation. Generally speaking, do not edit manually the program created by a CAD/CAM system for the NURBS interpolation. Variation of curve according to knot vector gh Rank : 4 Number of control points : 6 Knot vector : [ 0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 ] The starting point of the curve differs from the first control point. 34 08 C 39 O R PO R A TI O N .A ll ri Example 1: ts re s er ve d . The NURBS curve, which in general passes by the control points, can be made to pass through a specific control point by setting a certain number of knots in succession with the same value. In particular, setting as many leading and trailing knots as the rank (value of P) with the respective identical values will cause the NURBS curve to start from the first control point (P 0) and to end in the last one (P5). The examples given below exhibit a variation of the NURBS curve according to the knot vector with the control points remaining identical. P2 P5 The final point of the curve differs from the last control point. N o. P1 P3 K A ZA P4 MEP301 K IM Se ri al P0 Fig. 6-19 NURBS curve for continuously increasing knots ZA Rank : 4 Number of control points : 6 Knot vector : [ 0.0 0.0 0.0 0.0 1.0 2.0 3.0 3.0 3.0 3.0 ] [1] [2] YA M A Example 2: ig ht (c )2 01 3 Point [1]: The first four (=rank) knots have the same value assigned. Point [2]: The last four (=rank) knots have the same value assigned. yr The curve starts from the first control point. P2 P5 The curve ends in the last control point. C op P1 P0 P3 P4 MEP302 Fig. 6-20 NURBS curve for some identical knots 6-39 Serial No. 340839 6 INTERPOLATION FUNCTIONS Note 1: The NURBS interpolation can be performed only for the NURBS curve that starts and ends from the first and in the last control point. Do not fail, therefore, to set as many leading and trailing knots as the rank with the respective identical values. Note 2: The NURBS interpolation is executed at the designated feed rate (F-code). During the shape correction mode, however, the interpolation speed is controlled in order that the maximum available acceleration may not be exceeded in the section of a considerable curvature. 7. Compatibility with the other functions A. er ve d . The tables in this section specify the compatibility of the NURBS interpolation with the other functions. Pay attention to the incompatible functions, especially G-codes. Preparatory, feed and auxiliary functions re s The table below enumerates the G-codes, F-, M-, S-, T- and B-codes with regard to their availability before, with and after G6.2. before G6.2 with G6.2 after G6.2 all × × G-codes of group 01 all G18 G19 G22 G-codes of group 04 G23 × × × × × × × × × al G99 G20 × × G41 × × × G42 × × × G80 × × the others × × × G54 - G59 × G61.1 × × G61.2 × × G61 × × × G62 × × × G63 × × × G64 × × G66 × × × G66.1 × × × G66.2 × × × G67 × × G68.5 × × × G69.5 × × G54.2P0 × × G54.2P1 - P8 × × × G5P0 × × G5P2 × × × F × MSTB × × G40 01 3 ZA YA M A G-codes of group 09 yr ig ht (c )2 G-codes of group 13 C op G-codes of group 14 G-codes of group 16 G-codes of group 23 High-speed machining mode Feed function Auxiliary function A K IM Se G21 G-codes of group 07 G-codes of group 12 ZA ri G-codes of group 06 K N G98 o. G93 G-codes of group 05 (*) 34 08 C 39 O R PO R A TI O G-codes of group 02 .A ll G17 ri Code G-codes of group 00 N Function gh ts : available ×: not available (*) The G-code given last in the block takes priority in group 01. 6-40 Serial No. 340839 INTERPOLATION FUNCTIONS B. 6 Skip instructions The table below enumerates the skip instructions with regard to their availability before, with and after G6.2. : available Instruction before G6.2 with G6.2 after G6.2 Optional block skip × Control Out/In × Note: Designating another address than X, Y, Z, R and K in the mode of (i. e. after) G6.2 will cause an alarm. . Interruption and restart er ve d C. ×: not available with G6.2 after G6.2 Single-block operation × Feed hold × Reset Programmed stop × Optional stop × Manual interruption (Pulse feed and MDI) × × Restart × × Comparison stop × × ri (Note) N .A ll × o. × The single-block stop only occurs between blocks with different knots. K ZA Se Tool path check A ri al N Note: D. ts before G6.2 34 08 C 39 O R PO R A TI O Function ×: not available gh : available re s The table below enumerates the functions for interrupting and restarting the program flow with regard to their availability before, with and after G6.2. C op yr ig ht (c )2 01 3 YA M A ZA K IM The tool path in a section of the NURBS interpolation can only be displayed as if the control points were linearly interpolated (in the mode of G01). 6-41 Serial No. 340839 6 INTERPOLATION FUNCTIONS 8. Sample program The program section below refers to a NURBS interpolation of rank 4 (cubic curve) for seven control points. 4.0 ] gh ts re s er ve d . 4.0 A ZA NURBS interpolation for the control points K IM Se ri al P1 P0 K N o. 34 08 C 39 O R PO R A TI O G90 G01 X0 Y120.F3000 Y100. .............................. P0 G6.2 P4 X0 Y100.R1.K0 ...... P0 X10.Y100.R1.K0 ..................... P1 X10.Y60.R1.K0 ....................... P2 X60.Y50.R1.K0 ....................... P3 X80.Y60.R1.K1. ..................... P4 X100.Y40.R1.K2. ................... P5 X100.Y0 R1.K3. ..................... P6 K4. K4. K4. K4. G01 X120. ................................ P7 4.0 ri 4.0 .A ll 3.0 N Control points: P0 P1 P2 P3 P4 P5 P6 Knot vector: [ 0.0 0.0 0.0 0.0 1.0 2.0 ZA Linear interpolation for the control points A M YA P2 P4 P5 Y X op yr ig ht (c )2 01 3 P3 P7 C P6 MEP303 Fig. 6-21 NURBS interpolation and linear interpolation 6-42 Serial No. 340839 INTERPOLATION FUNCTIONS 9. 6 Related alarms The table below enumerates the alarms related to the NURBS interpolation. Alarm list Alarm No. Alarm message 806 ILLEGAL ADDRESS Another address than those for the nominated axes (X, Y and/or Z), the weight (R) and the knot (K) is set in the G6.2 mode. Clear the inadequate address. 807 ILLEGAL FORMAT 1. The modal condition is not appropriate to set G6.2. 1. Satisfy the modal condition with reference to item 7-A. 2 A block in the G6.2 mode is set without knot (K). 2. Do not fail to set a knot in each block in the G6.2 mode. 3. The number of blocks with the same knot in succession does not reach the rank. 3. Set an appropriate knot vector with reference to example 2 given in item 6. 1. The number of digits exceeds the specification of axis commands (X, Y or Z). 1. Specify the axis command within eight digits. 2. The rank (P) is not admissible. 2. Set 2, 3 or 4 at address P. 3. The value of a knot is not admissible. 3. Set a value in a range of 0.0001 to 99.9999. . er ve d re s ts gh ri .A ll ILLEGAL NUMBER INPUT Remedy 34 08 C 39 O R PO R A TI O N 809 Cause 4. The knot vector is not monotonic increasing. 4. Check the blocks for a decreasing knot. FEEDRATE ZERO The feed rate (F-code) has not yet been designated. Set an F-code before or in the same block as the G6.2 code. 936 OPTION NOT FOUND The system is not equipped with the optional function of the NURBS interpolation. Purchase and install the optional function. 955 START AND END POINT NOT AGREE The axis coordinates designated in the block of G6.2 do not correspond to the final point of the previous block. 956 RESTART OPERATION NOT ALLOWED 957 MANUAL INTERRUPT NOT ALLOWED The designated restart block falls within the mode of G6.2. Restart operation is not allowed from the midst of the NURBS interpolation. An interruption by pulse handle or MDI operation is commanded in the midst of the G6.2 mode. Manual interruption is not allowed in the midst of the NURBS interpolation. A ri C op yr ig ht (c )2 01 3 YA M A ZA K IM Se K Designate in the first block of the NURBS interpolation the same position as the final point of the previous block. al ZA N o. 816 6-43 Serial No. 340839 6 INTERPOLATION FUNCTIONS 6-13 Cylindrical Interpolation: G07.1 (Option) 1. Function and purpose Cylindrical interpolation refers to a function by which the cylindrical surface of a workpiece can be machined according to a program prepared on its development plane. This function is among others very efficient in the creation of a cam grooving program. Programming format A. Selection and cancellation of the cylindrical interpolation mode er ve d When the A-axis functions as the rotational axis: G07.1 Ar; Cylindrical interpolation mode ON (r = radius of cam groove bottom) . 2. re s G07.1 A0; Cylindrical interpolation mode OFF gh ts When the B-axis functions as the rotational axis: G07.1 Br; Cylindrical interpolation mode ON (r = radius of cam groove bottom) ri G07.1 B0; Cylindrical interpolation mode OFF K ZA A K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll Note 1: The above preparatory function (G-code) must be given in a single-command block. Note 2: Enter a precise value for the radius of the cam groove bottom (r), which is used for the internal calculation of the dimensions and the rate of feed in the developed plane. Note 3: Enter a positive value for the radius of the cam groove bottom (r). Note 4: In the mode of cylindrical interpolation the radius of the cam groove bottom (r) cannot be otherwise modified than to zero. That is, the modification must be done after canceling the mode temporarily. Note 5: Cylindrical interpolation is not available for machines with a linear type rotational axis (F85 bit 2 = 1; HV-machines or machines with a tilting table). Note 6: The figure below refers to a vertical machining center. To perform machining on the surface of the cylinder, position the tool on the Y-axis to the axis of the cylinder first, perform an infeed on the Z-axis even to the groove bottom and then select the mode of a cylindrical interpolation with simultaneous control of the X- and A-axis. A ZA Z X r A C op yr ig ht (c )2 01 3 YA M Y Fig. 6-22 Diagrammatic view of cylindrical interpolation (1/2) 6-44 Serial No. 340839 INTERPOLATION FUNCTIONS 6 Note 7: The next figure shows a machining center with the fixture mounted perpendicular to the Y-axis. To use the cylindrical interpolation on such a machine, position the tool on the X-axis to the axis of the cylinder first, perform an infeed on the Z-axis even to the groove bottom and then select the mode of a cylindrical interpolation with simultaneous control of the Y- and B-axis. Y Z Z Y X X re s er ve d . r r 34 08 C 39 O R PO R A TI O N .A ll ri gh ts B B Fig. 6-23 Diagrammatic view of cylindrical interpolation (2/2) Commands in the cylindrical interpolation mode N al K ZA YA M A ZA K IM Se ri Refer to Table 6-2 (in paragraph 1 under 3-B) for the available G-codes. Cylindrical interpolation occurs in the X-A plane or Y-B plane. The values of X (or Y) and A (or B) are of linear and angular dimensions, respectively. Radius for a circular interpolation Abscissa (incremental) of the center for a circular interpolation Ordinate (incremental) of the center for a circular interpolation Offset number for tool radius compensation Dwell time Rate of feed (Refer to the detailed description in paragraph 2 under 3-B.) C op yr ig ht (c )2 01 3 Gg: Xx/Aa: Yy/Bb: Rr: Ii: Jj: Dd: Pp/Xx: Ff: o. GgXxAaRrIiJjDdPpFf; GgYyBbRrIiJjDdPpFf; A B. 6-45 Serial No. 340839 6 INTERPOLATION FUNCTIONS 3. Detailed description A. Conditions necessary for the selection of the cylindrical interpolation mode The G-code modal states required for the cylindrical interpolation mode selection are as follows: Table 6-1 Conditions necessary for the mode selection G-code group Condition G0/G1 (Positioning or Linear interpolation only) G-code group 2 G17 (X-Y plane only) G-code group 3 G90/G91 (Absolute/Incremental programming) [unconditional] G-code group 4 G22/G23 (Stroke check ON/OFF) [unconditional] G-code group 5 G94/G95 (Asynchronous/Synchronous feed) [unconditional] G-code group 6 G20/G21 (Inch/Metric data input) [unconditional] G-code group 7 G40 (Tool radius compensation OFF) G-code group 8 G43/G49 (Tool length offset ON/OFF) [unconditional] G-code group 9 G80 (Fixed cycle OFF) G-code group 10 Invalid (Return level selection [between initial and R-point] is only valid for fixed cycles.) G-code group 11 G50 (Scaling OFF) G-code group 12 G54 to G59,G54.1 (Standard/Additional workpiece coordinate system) [unconditional] G-code group 13 G64 (Cutting mode) G-code group 14 G67 (User macro modal call OFF) G-code group 15 G40.1 (Shaping OFF) G-code group 16 G69 (Programmed coordinates rotation OFF) (Note 2) G-code group 19 G50.1/G51.1 (Mirror image ON/OFF) [unconditional] (Note 3) G-code group 19 No selection of a plane for five-surface machining G-code group 23 G54.2P0 (Dynamic offsetting II OFF) Others G5P0 (High-speed machining OFF) Others G7.1B0 (Cylindrical interpolation OFF) er ve d . G-code group 1 K ZA A Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s (Note 1) K IM Otherwise the selection will only lead to an alarm. M A ZA Note 1: Select and cancel the tool radius compensation as required in the mode of cylindrical interpolation. An alarm will be caused if the cylindrical interpolation is selected in the mode of tool radius compensation. 01 3 YA Note 2: The cylindrical interpolation cannot be selected in the mode of G68 (3-dimensional coordinate conversion). On an HV machining center, therefore, the cylindrical interpolation function is not available to an inclined or top surface. C op yr ig ht (c )2 Note 3: To use the cylindrical interpolation with the mirror image function being selected, take the following precautions in order to prevent errors from occurring in the development of the cylindrical surface: [1] Set the mirroring center to 0° for the rotational axis of the cylindrical interpolation. [2] Select the cylindrical interpolation with the rotational axis being positioned at its workpiece origin (0°). [3] Also cancel the cylindrical interpolation with the rotational axis being positioned at its workpiece origin (0°). An example of programming is given later in the sample program under 5-B. 6-46 Serial No. 340839 INTERPOLATION FUNCTIONS B. 6 Commands in the cylindrical interpolation mode 1. The table below enumerates the G-codes available in the cylindrical interpolation mode. Any other G-code will cause an alarm. Table 6-2 Available G-codes G1, G2, G3 Linear and circular interpolation G4 Dwell G9 Exact-stop check G17 Plane selection (Note 1) G40, G41, G42 Tool radius compensation (Note 2) . Function Rapid positioning er ve d G-code G0 2. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s Note 1: After the mode selection by a block of G7.1, do not fail to give a plane selection command of the following format in order to specify the cylindrical interpolation plane determined by the corresponding linear and rotational axes: G17X_A_ when the A-axis functions as the rotational axis. G17Y_B_ when the B-axis functions as the rotational axis. Note 2: Select and cancel the tool radius compensation as required in the mode of cylindrical interpolation. An alarm will be caused if the cylindrical interpolation is selected in the mode of tool radius compensation. In the mode of the cylindrical interpolation the rate of feed refers to a resultant speed (of Fx and Fa, or Fy and Fb) in the plane onto which the surface of the cylinder is developed. The speed on each component axis is calculated for a block of G1XxAaFf; as follows: x •f o. Fx = N a x +( 2 r ) 2 360 K A K IM Se a 2 r 360 •f a 2 2 x +( 2 r ) 360 x: metric (0.001 mm) a: degree (0.001°) r: radius of cam groove bottom f: command value of speed A ZA Fa = ZA ri al 2 YA M The speed on each component axis is calculated for a block of G1YyBbFf; as follows: Fy = y •f C op yr ig ht (c )2 01 3 b y +( 2 r ) 2 360 Fb = 2 b 2 r 360 •f b 2 2 y +( 2 r ) 360 y: metric (0.001 mm) b: degree (0.001°) r: radius of cam groove bottom f: command value of speed The speed of rapid traverse and the upper limit of cutting feed, both specified in a parameter, are expressed in an angular velocity (°/min) for a rotational axis. The actual linear speed on the rotational axis of the cylindrical interpolation is therefore allowed to increase in the developed plane just in proportion to the radius of the groove bottom. 6-47 Serial No. 340839 6 INTERPOLATION FUNCTIONS 4. Remarks A. Positioning accuracy (on the rotational axis) Each angular dimension entered is internally converted into linear one on the circumference, which is to be used in the calculation of the interpolation with the other linear axis. The actual angular motion is then determined by the results of that calculation. As a result, depending on the cylinder radius, positioning errors on the rotational axis may occur in the level of the least significant digit, but they are not cumulative. 0.002 mm Error: 0.0009 0.001 mm re s 0.001 Radius of cylinder gh 114.432 114.592 B. N 34 08 C 39 O R PO R A TI O Fig. 6-24 Positioning error according to the angle and radius Unit: mm .A ll ri 85.944 ts 0.001° 57.296 er ve d . Error: 0.0005 Changing the radius of the groove bottom N o. In the mode of cylindrical interpolation, as mentioned before, the radius of the cam groove bottom cannot be otherwise modified than to zero. That is, the modification must be done after canceling the mode temporarily. K ZA al Rotational axis of the cylindrical interpolation ri C. Manual interruption A ZA D. K IM Se Only one rotational axis can be used for the cylindrical interpolation. It is not possible to designate multiple rotational axes in a command of G7.1. Restart operation )2 E. 01 3 YA M A Refer to the example given later under 5-D “Operation examples with manual interruption”. op yr ig ht (c For restarting in the middle of the cylindrical interpolation, follow the normal restart procedure to ensure normal operation by retrieving the necessary modal information (on the radius of groove bottom, etc.). Never use the [RESTART 2] menu function that skips the preceding blocks. Resetting C F. Resetting (by on the operating panel) cancels the cylindrical interpolation mode. 6-48 Serial No. 340839 INTERPOLATION FUNCTIONS G. 6 Relationship to other functions The programmed contour is machined on the cylindrical surface, as well as on the top surface, according to the particular configuration of the machine’s controlled axes and the currently selected machining plane. If the motion on a rotational axis is required for the execution of the functions enumerated below, the machining plane’s vertical axis (A-axis, as converted from the angular motion) may be directed inversely to that of the corresponding (orthogonal) Y-axis, and thus the contour obtained will be reversed accordingly. ts re s er ve d . Circular interpolation Helical interpolation Spiral interpolation Involute interpolation Cylindrical interpolation Circle cutting Polar coordinate interpolation Engraving of text gh <Example> Configuration of controlled axes (including C-axis) K A ZA (G68X0Y0Z0I0J1K0R90.) M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O Configuration of controlled axes (including A-axis) N .A ll ri Given below is an example of engraving the text “ENGRAVING” in the mode of cylindrical interpolation. +C’: Tool’s motion with respect to the cylindrical surface by a positive rotation on the C-axis. )2 01 3 YA +A’: Tool’s motion with respect to the cylindrical surface by a positive rotation on the A-axis. Selection of XC-plane (Horizontal: X, Vertical: C) C op yr ig ht (c Selection of XA-plane (Horizontal: X, Vertical: A) Text engraved in the (developed) XA-plane. Text engraved in the (developed) XC-plane. D747PB0083 As shown in the example on the left side, “ENGRAVING” is unexpectedly reversed due to a particular configuration of controlled axes. As a countermeasure against the problem, give a command of 3-D coordinate conversion (with G68, as shown in the right-side example) before the command of cylindrical interpolation (with G07.1). 6-49 Serial No. 340839 6 INTERPOLATION FUNCTIONS Shown below is a programming technique for correctly engraving the text on a machine of the configuration of controlled axes (including A-axis), as shown in the left-side example above. Programming example: G68 I0 J0 K1.R180. ................................................................. Coordinate conversion G7.1 A0 ....................................................................................... Cylindrical interpolation G17 X0 A0 ................................................................................... Selection of XA-plane G140 X20.Y0.Z0.K30.P0D.02H10.R25.L3[ENGRAVING] .......... Engraving of text K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . Machining contour, as obtained in the converted XA-plane 6-50 Serial No. 340839 INTERPOLATION FUNCTIONS Sample programs Note: Cam grooving program Y N09 N17 50. N10 N08 N06 . A. The examples in this section are all given for a cylindrical interpolation in the Y-B plane (with respect to a machining center as shown in Fig. 6-23). Replace the axis names X, Y and B with Y, X and A, respectively, for a cylindrical interpolation in the X-A plane (on a vertical machining center as shown in Fig. 6-22). N16 N11 re s 0 N18 N07 ts N14 er ve d 5. 6 gh N19 135° 180° 270° 315° N 45° 34 08 C 39 O R PO R A TI O 0° .A ll ri N15 B 360° Groove width K ZA A Se ri al N o. Tool radius Programmed contour K IM [Offset amount] = [Groove width] – [Tool radius] ZA Fig. 6-25 Cam grooving program N13 G1G42Y0B360.; N02 Z0S800M3; M N15 G3B135.R60.; N04 G7.1B63.662; ........ Cylindrical interpolation ON N16 G1Y50.B180.; N05 G17G1G41Y0B0D1; N17 G2B270.R60.; N06 G2B45.R30.; )2 N18 G1Y0B315.; N07 G3B135.R60.; N19 G3B360.R30.; N08 G1Y50.B180.; N20 G1G40; N21 G7.1B0; .......... Cylindrical interpolation OFF ht (c 01 3 YA N14 G2B45.R30.; N03 G1Z-5.F2000; ........ Infeed to the groove bottom ig A N01 G54G0G90X0Y0B0; .. Positioning to the cylinder axis yr N09 G2B270.R60.; C op N10 G1Y0B315.; N11 G3B360.R30.; N12 G1G40; 6-51 Serial No. 340839 6 INTERPOLATION FUNCTIONS Use of mirror image function Y Y N103 3 Y 50. 45. 3 N103 3 0 N104 3 45. 3 60° 3 G54 3 B 3 90° 3 N104 300° 3 0° M 135° 3 . B 3 G55 3 er ve d 270° 3 re s –50. 225° 3 ts B. ri gh Fig. 6-26 Use of mirror image function Subprogram N01 G54G0G17G90X0Y0B0; N100 G7.1 B47.746 ; N02 Z0S800M3; N101 G17 G0 Y45.B0 ; 34 08 C 39 O R PO R A TI O N .A ll Main program N03 M98P2000; N102 G1 Z-5.F1000 ; N04 G55G0G17G90X0Y0B0; N103 G2 B60.R25.; N05 Z0S800M3; N104 G3 B90.R12.5 ; N105 G0 Z0 ; N07 M98P2000; N106 G0 B0 ; o. N06 G51.1B0; .................. Mirror image ON 0. 225. K 0. 135. C op yr ig ht (c )2 01 3 YA Z B 0. –50. ZA 0. A 0. Y M X G55 K IM G54 ZA Se Table 6-3 Workpiece origin data A ri al N N08 G50.1B0; .................. Mirror image OFF 6-52 N107 G7.1 B0 ; N108 M99 ; B 3 Serial No. 340839 INTERPOLATION FUNCTIONS C. 6 Use of circular interpolation commands Y (mm) (47.5 – 10)2 + 502 r= Radius of groove bottom = 63.662 mm = 62.5 mm N04 85. r N03 47.5 N05 r 10. N06 50. 90° 100 135° 180° 200 225° 250 270° 300 360° 400 (mm) ts re s 45° 50 er ve d . 50. gh Fig. 6-27 Use of circular interpolation commands ri N01 G90 G1 Y47.5 F1000 ; .A ll N02 G7.1 B63.662 ; N N03 G17 G1 Y47.5 B45.; 34 08 C 39 O R PO R A TI O N04 G2 B90.R62.5 ; N05 G1 B180.; N06 G3 B270.I50.J37.5 ; With “manual absolute” ON 1. o. Operation examples with manual interruption N D. K ZA A K IM Se ri al The “manual absolute” function is suspended during cylindrical interpolation, and the first motion block after the cancellation of cylindrical interpolation is executed for the very target position as programmed by canceling the amount of manual interruption. ZA N1 - N6: N2 - N4: N3: N3 - N4: N5: YA M A Y 01 3 N3’ N4’ Manual interruption ht (c )2 Programmed contour Programmed contour In the mode of cylindrical interpolation Manual interruption “Manual absolute” function ignored (N3’ and N4’) “Manual absolute” function retrieved (N5’) N2 N3 op C N5’ N4 yr ig N1 N6 Cylindrical interpolation ON Cylindrical interpolation OFF N5 B 3 Fig. 6-28 With “manual absolute” ON 6-53 Serial No. 340839 6 INTERPOLATION FUNCTIONS With “manual absolute” OFF 2. The amount of manual interruption remains intact, irrespective of the selection and cancellation of cylindrical interpolation. N1 - N6: N2 - N4: N3: N3 - N6: Y Programmed contour In the mode of cylindrical interpolation Manual interruption “Manual absolute” function OFF (N3’ to N6’) N3’ Programmed contour N4’ er ve d . Manual interruption N6’ N5’ N3 N2 re s N1 N4 ts B 3 N .A ll Cylindrical interpolation OFF ri Cylindrical interpolation ON N6 gh N5 Related parameters 1. Set the type of the rotational axis (A or B) as “rotational” (with short-cut approach) in order that the initial angular movement should not occur on the roundabout route for a command of tool radius compensation given in the vicinity of the 0° position. N21 bit 0 = 0: Setting the type of the rotational axis as rotational = 1: Short-cut approach valid 2. Set the B- and A-axis as the primary parallel ones to the axis of abscissa and that of the ordinate, respectively. SU2 = 66: Setting the B-axis as parallel axis 1 for the axis of abscissa SU5 = 65: Setting the A-axis as parallel axis 1 for the axis of the ordinate Related alarms K ZA A YA 7. M A ZA K IM Se ri al N o. 6. 34 08 C 39 O R PO R A TI O Fig. 6-29 With “manual absolute” OFF 01 3 Table 6-4 Related alarms Description Remedy ILLEGAL ADDRESS The address of argument in the block of selecting the cylindrical interpolation does not refer to any rotational axis. Use the correct address. ILLEGAL FORMAT The necessary conditions for the selection of cylindrical interpolation are not yet all satisfied. Refer to Table 6-1. 808 MIS-SET G CODE An unavailable G-code is given in the mode of cylindrical interpolation. Refer to Table 6-2. 936 OPTION NOT FOUND (7, 0, 0) The optional function for cylindrical interpolation is not provided. Equip the machine with the option as required. ig ht 806 Alarm message (c )2 Alarm No. C op yr 2110 6-54 Serial No. 340839 INTERPOLATION FUNCTIONS 6 6-14 Helical Interpolation: G02, G03 1. Function and purpose Command G02 or G03 with a designation for the third axis allows synchronous circular interpolation on the plane specified by plane-selection command G17, G18 or G19 with the linear interpolation on the third axis. Programming format G17 G02 Xx1 Yy1 Zz1 Ii1 Jj1 Pp1 Ff1 ; Feed rate Number of pitches Arc center coordinates Linear axis ending point coordinate Arc ending point coordinates er ve d (G03) . 2. Rr2 Pp2 Ff2 ; ts G17 G02 Xx2 Yy2 Zz2 re s or gh Feed rate Number of pitches Arc radius Linear axis ending point Arc ending point coordinates 34 08 C 39 O R PO R A TI O Detailed description 2nd 1st N p1-th X ZA A K IM Se ri al X o. z1 K 3. N .A ll ri (G03) e s YA M A ZA Y 01 3 )2 H734P0001 For helical interpolation, movement designation is additionally required for one to two linear axes not forming the plane for circular interpolation. yr ig 1. ht (c Y Z The velocity in the tangential direction must be designated as the feed rate F. 3. The pitch is calculated as follows: C op 2. z1 = (2 p + )/2 1 –1 = e – s = tan where 4. ye –1 ys – tan (0 < 2) xe xs (xs, ys): relative coordinates of starting point with respect to the arc center (xe, ye): relative coordinates of ending point with respect to the arc center Address P can be omitted if the number of pitches is 1. 6-55 Serial No. 340839 6 INTERPOLATION FUNCTIONS 5. Plane selection As with circular interpolation, the circular-interpolation plane for helical interpolation is determined by the plane-selection code and axis addresses. The basic programming procedure for helical interpolation is: selecting a circular-interpolation plane using a planeselection command (G17, G18 or G19), and then designating the two axis addresses for circular interpolation and the address of one axis (perpendicular to the circular-interpolation plane) for linear interpolation. Sample programs ri 4. gh ts re s er ve d . XY-plane circular, Z-axis linear After setting G02 (or G03) and G17 (plane-selection command), set the axis addresses X, Y and Z. ZX-plane circular, Y-axis linear After setting G02 (or G03) and G18 (plane-selection command), set the axis addresses Z, X and Y. YZ-plane circular, X-axis linear After setting G02 (or G03) and G19 (plane-selection command), set the axis addresses Y, Z and X. .A ll Example 1: 34 08 C 39 O R PO R A TI O N G91 G28 X0 Y0 Z0; G92 X0 Z0 Y0; G17 G03 X50. Y50. Z-50. R50. F1000; 50. –50. Z o. Ending point Starting point N K 50. A ZA al ri K IM Se Example 2: X H734P0002 Y ZA G91 G28 X0 Y0 Z0; G92 X0 Z0 Y0; G17 G03 X50. Y50. Z-50. R50. P2 F1000; YA M A X 01 3 50. )2 Ending point (c –50. Z ht Starting point op yr ig 50. C Y H734P0003 Note : In a combined use with the cylindrical interpolation, the machining contour of helical interpolation on the cylindrical surface may be unexpectedly reversed due to a particular configuration of the machine’s controlled axes. See “4. Remarks” in Section 6-13 for more information. 6-56 Serial No. 340839 INTERPOLATION FUNCTIONS 6 6-15 Fixed Gradient Control for G0 (Option) 1. Function and purpose Fixed gradient control for G0 refers to a method of executing rapid traverse commands (under G00) using linear acceleration and deceleration of a fixed gradient. The gradient in question denotes an acceleration and corresponds to the quotient of the rapid traverse rate (parameter M1) and the time constant concerned (parameter N1). As compared with the control using the fixed time constant, positioning time can be reduced for a distance traveled which is shorter than is required for acceleration up to the rapid traverse rate and immediately succeeding deceleration to zero. . Example for comparison with the control using the fixed time constant er ve d 2. re s Given below is an example to illustrate the difference in positioning time by rapid traverse over distance L between the two control methods. gh ts Rapid traverse rate (M1) = 30000 mm/min, Time constant for rapid traverse (N1) = Ts = 0.3 s Control using the fixed gradient ri Control using the fixed time constant 30000 mm/min 34 08 C 39 O Speed R PO R A TI O N L = 100 L = 20 L = 20 L = 10 Ts = 0.3 0.32 0.34 L = 10 Positioning time 0.155 0.219 ZA K IM Remarks Ts = 0.3 A ri al N o. Positioning time Se 3. L = 100 K Speed .A ll 30000 mm/min A ZA The optional function in question works on the correspondingly executed machines when rapid traverse of interpolation type by G0 and the fixed gradient control for G0 are made valid by the corresponding parameter settings (F91 bit 6 = 0, and K96 bit 7 = 1). C op yr ig ht (c )2 01 3 YA M As for the operation during five-axis machining (in the mode of tool tip point control, inclined-plane machining, and workpiece setup error correction), see the description given under the restrictions for the relevant control modes. 6-57 Serial No. 340839 6 INTERPOLATION FUNCTIONS 6-16 Rapid Traverse Overlap 1. Function and purpose This function allows the in-position width (positioning tolerance) to be programmed for an overlapping circular motion of transition between two linear motion blocks of G0 (rapid traverse) and G1 (cutting feed) or G0. 2. Programming format G00 / G01 Xx Yy Zz ,Ii er ve d . i: In-position width re s Commanded position Tool path 34 08 C 39 O R PO R A TI O N .A ll ri gh ts Programmed path In-position width Detailed description N o. 3. ZA ri K Use bit 1 of parameter F169, as shown below, to specify whether the function of rapid traverse overlap is to be enabled or disabled. al 1. A K IM Se F169 bit 1 = 0: Function of specifying the in-position width is disabled, = 1: Function of specifying the in-position width is enabled. Argument ,I is only effective in a block in which it is programmed. 3. The setting range of argument ,I is from 0 to 20.0000 mm (or 2.00000 in). Entering a lower value than the lower limit (0) with ,I has the same result as entering zero (0), and entering a higher value than the upper limit just as entering that limit. The value entered is always processed according to the current mode (G20 or G21) for length data input (in inches or mm). 4. Argument ,I can be omitted if the default value is desired. Two different default values are provided in parameters as shown below according as the two successive blocks are both in the mode of G0 or one under G1 and the other under G0. C op yr ig ht (c )2 01 3 YA M A ZA 2. 5. G0 G0: Parameter S49 G0 G1: Parameter S50 Enter zero (0) with ,I to temporarily cancel the function of rapid traverse overlap. 6-58 Serial No. 340839 INTERPOLATION FUNCTIONS 6 <Example of programming for changing the in-position width> G00X_Y_,I1. G00X_Y_ G01X_Y_ G00X_Y_,I0. G00X_Y_ G01X_Y_ M30 Use of 1.0 as in-position width ................ Use of S49 as in-position width ................ Use of S50 as in-position width ................ Temporary cancellation of the function of rapid traverse overlap ................ Use of S49 as in-position width ................ Use of S50 as in-position width 1. . Remarks er ve d 4. ................ The function of rapid traverse overlap is implicitly cancelled in the following cases: re s Change between geometry compensation (G61.1) and cutting mode (G64), gh ts Change to high-speed machining mode (G5P2) or SSS (Super Smooth Surface) control, .A ll ri In the motion for the selection and cancellation of tool tip point control (by G43.4/G43.5 and G49). 34 08 C 39 O R PO R A TI O N In the motion for the selection and cancellation of cutting point command (by G43.8/G43.9 and G49). In the mode of single-block operation. 2. N o. Related parameters F169 bit 1 Function of rapid traverse overlap OFF/ON S50 In-position width for G1 ZA K IM In-position width for G0 A ri Se S49 K Description al Parameter C op yr ig ht (c )2 01 3 YA M A ZA 5. The function of rapid traverse overlap is ignored during tool path check. 6-59 Setting range Setting unit 0/1 — 0 to 32767 0.001 mm (Linear axis) 0.001° (Rotational axis) 0 to 32767 0.001 mm (Linear axis) 0.001° (Rotational axis) Serial No. 340839 6 INTERPOLATION FUNCTIONS 6-17 Involute Interpolation (Option) 1. Function and purpose Involute interpolation enables the tool to be fed along an involute curve smoothly without having to approximate the curve with micro line segments, in which case acceleration and deceleration would be repeated in too formal a response to minute steps or to unevenness of line length, causing deterioration in machining accuracy. Y Starting point F er ve d . I re s J ri gh ts Base circle 2. N X 34 08 C 39 O R PO R A TI O (XX,YY) Ending point .A ll R Programming format D749PB0017 N o. G02.2 (G03.2) Xx Yy (Zz) Ii Jj (Kk) Rr Ff K al Xx, Yy, Zz : Coordinates of the ending point of the involute curve Rr : Radius of the base circle (evolute circle) Ff : Rate of feed A K IM Se ZA : Position of the center of the base circle, incremental from the starting point ri Ii, Jj, Kk A ZA Note 1: Give an involute interpolation command according to the currently selected plane (G17, G18, or G19). YA M Note 2: See the description of circular interpolation for information on the plane selection and the rotational direction (CW [G02.2] or CCW [G03.2]). )2 01 3 Note 3: Arguments I, J and K are always to be specified in incremental data, irrespective of the currently active mode (absolute or incremental data input). ht (c Note 4: Specify the arguments I, J and K with a correct sign according to the relative position of the base circle center with respect to the starting point. C op yr ig Note 5: The alarm 1906 G2.2/G3.2 FORMAT ERROR will be caused if any of the required arguments I, J, K, and R is not specified. Note 6: An involute interpolation command without arguments X, Y and Z will immediately be completed (as is the case with a circular interpolation command of the same type), and the modal condition concerned will be replaced with G1 (Positioning). Note 7: The alarm 1906 G2.2/G3.2 FORMAT ERROR will be caused if the required pair of arguments I, J and K are both specified with zero (0). Note 8: The alarm 1906 G2.2/G3.2 FORMAT ERROR will be caused if the argument R is specified with zero (0). Note 9: The alarm 1906 G2.2/G3.2 FORMAT ERROR will be caused if an argument I, J or K is specified which does not belong to the currently selected plane. 6-60 Serial No. 340839 INTERPOLATION FUNCTIONS 3. 6 Commands available in the mode of involute interpolation Giving any other command than those enumerated below in the mode of involute interpolation will lead to the alarm 1904 ILLEGAL CMD DURING G2.2/G3.2 or another alarm related to the function concerned. Function Code Function Code G00 Fixed cycle (Back spot facing) G77 Linear interpolation G01 Fixed cycle (Boring 3) G78 Circular interpolation G02/G03 Fixed cycle (Boring 4) G79 Spiral interpolation G02.1/G03.1 Fixed cycle OFF G80 Dwell G04 Fixed cycle (Spot drilling) G81 High-speed machining mode OFF G05P0 Chopping cycle mode ON G81.1 Spline/NURBS interpolation G06.1/G06.2 Fixed cycle (Drilling) G82 Exact stop G09 Fixed cycle (Pecking) G82.2 Programmed data setting ON/OFF G10/G11 Fixed cycle (Deep-hole drilling) G83 Radius data input for X-axis ON/OFF G10.9X0/G10.9X1 Fixed cycle (Tapping) Polar coordinate interpolation OFF G13.1 Fixed cycle (Synchronous tapping) Polar coordinate input OFF G15 Fixed cycle (Synchronous reverse tapping) Plane selection G17/G18/G19 Absolute data input Inch/Metric data input G20/G21 Incremental data input Pre-move stroke check ON/OFF G22/G23 Spindle speed range setting G92 Reference point return check G27 Inverse time feed G93 Reference point return G28 Return from reference point G29 Return to 2nd, 3rd, 4th reference point G30 Return to floating reference point G30.1 Thread cutting/Variable lead thread cutting G33/G34 re s er ve d . Positioning ts G84 G84.3 G90 G91 G94 Constant surface speed control OFF G97 Initial point/R-point level return G98/G99 Single program multi-process control G109 Cross machining control axis setting G110/G110.1 Hole machining pattern cycle G34.1, G35, G36, G37.1 Cross machining control OFF G111 Tool radius compensation OFF G40 M, S, T, B output to opposite system G112 Hob milling mode ON/OFF G114.3/G113 Se Tool position offset OFF G49 Superposition control ON/OFF G126/G127 Scaling OFF G50 Tornado cycle G130 Mirror image by G-code OFF G50.1 Measurement/Compensation macro G136/G137 G51.2/G50.2 Finishing cycle G270 G54-G59/G54.1 Longitudinal roughing cycle G271 G54.4 Transverse roughing cycle G272 G61 Contour-parallel roughing cycle G273 G61.1 Longitudinal cut-off cycle G274 Modal spline interpolation G61.2 Transverse cut-off cycle G275 Cutting mode G64 Compound thread-cutting cycle G276 Macro call/Modal macro call A/B G65, G66/G66.1 Face driling cycle G283 Modal macro call OFF yr G67 Face tapping cycle G284 3-D coordinate conversion OFF G69 Face synchronous tapping cycle G274.2 Fixed cycle (Chamfering cutter CW/CCW) G71.1/G72.1 Face boring cycle G285 Fixed cycle (High-speed deep-hole drilling) G73 Outside driling cycle G287 Fixed cycle (Reverse tapping) G74 Outside tapping cycle G288 Fixed cycle (Boring 1) G75 Outside synchronous tapping cycle G288.2 Fixed cycle (Boring 2) G76 Outside boring cycle G289 Polygonal machining mode ON/OFF Exact stop mode C ig ht (c )2 Geometry compensation 01 3 Workpiece setup error correction YA M Workpiece coordinate system/Additional workp. coord. system selection A ZA K IM G43/G44 A Tool length offset +/– op ZA K al N o. Feed per minute (asynchronous) ri 34 08 C 39 O R PO R A TI O N .A ll ri gh G84.2 6-61 Serial No. 340839 6 INTERPOLATION FUNCTIONS 4. Modes in which involute interpolation is selectable Giving a G02.2 or G02.3 command in a mode other than those enumerated below will lead to the alarm 1905 THIS MODE CANNOT CMD G2.2/G3.2 or another alarm related to the function concerned. Function Code Function Code G00 Fixed cycle (Chamfering cutter CW/CCW) G71.1/G72.1 Linear interpolation G01 Fixed cycle (High-speed deep-hole drilling) G73 Circular interpolation G02/G03 Fixed cycle (Reverse tapping) G74 Spiral interpolation G02.1/G03.1 Fixed cycle (Boring 1) G75 Dwell G04 Fixed cycle (Boring 2) G76 High-speed machining mode OFF G05P0 Fixed cycle (Back spot facing) G77 Spline/NURBS interpolation G06.1/G06.2 Fixed cycle (Boring 3) G78 Exact stop G09 Fixed cycle (Boring 4) G79 Programmed data setting ON/OFF G10/G11 Fixed cycle OFF G80 Radius data input for X-axis ON/OFF G10.9X0/G10.9X1 Fixed cycle (Spot drilling) Polar coordinate interpolation ON/OFF G12.1/G13.1 Chopping cycle mode ON Polar coordinate input OFF G15 Fixed cycle (Drilling) Plane selection G17/G18/G19 Fixed cycle (Pecking) Milling mode selection G18.1 Fixed cycle (Deep-hole drilling) G83 Turning plane selection (VARIAXIS) G18.2-G18.4 Fixed cycle (Tapping) G84 Inch/Metric data input G20/G21 Fixed cycle (Synchronous tapping) G84.2 Pre-move stroke check ON/OFF G22/G23 Fixed cycle (Synchronous reverse tapping) G84.3 Reference point return check G27 Absolute data input G90 Reference point return G28 Incremental data input G91 Return from reference point G29 Spindle speed range setting G92 Return to 2nd, 3rd, 4th reference point G30 Inverse time feed G93 Return to floating reference point G30.1 Feed per minute (asynchronous) G94 Skip/Multi-step skip G31/G31.1 Constant surface speed control OFF G97 Thread cutting/Variable lead thread cutting G33/G34 er ve d re s ts G81 N .A ll ri gh G81.1 34 08 C 39 O R PO R A TI O o. N ZA K al ri Se . Positioning Initial point/R-point level return G82 G82.2 G98/G99 Single program multi-process control Vector for tool radius compensation G38 Cross machining control axis setting G110/G110.1 Corner arc for tool radius compensation G39 Cross machining control OFF G111 G40 M, S, T, B output to opposite system G112 G41/G42 Hob milling mode ON/OFF G114.3/G113 G43/G44 Superposition control ON/OFF G126/G127 Tool length offset in tool-axis direction G43.1 Tornado cycle G130 Tool position offset G45-G48 Measurement/Compensation macro G136/G137 G49 Finishing cycle G270 G50 Longitudinal roughing cycle G271 Mirror image by G-code OFF G50.1 Transverse roughing cycle G272 Polygonal machining mode ON/OFF G51.2/G50.2 Contour-parallel roughing cycle G273 G52 Longitudinal cut-off cycle G274 Workpiece coordinate system/Additional workp. coord. system selection G54-G59/G54.1 Face synchronous tapping cycle Dynamic offsetting II G54.2 Transverse cut-off cycle G275 Workpiece setup error correction G54.4 Compound thread-cutting cycle G276 Exact stop mode G61 Face driling cycle G283 Geometry compensation G61.1 Face tapping cycle G284 Modal spline interpolation G61.2 Face boring cycle G285 Cutting mode G64 Outside driling cycle G287 Macro call/Modal macro call A/B G65, G66/G66.1 Outside tapping cycle G288 Modal macro call OFF G67 Outside synchronous tapping cycle G288.2 3-D coordinate conversion OFF G69 Outside boring cycle G289 ZA YA M Tool radius compensation to the left/right A Tool radius compensation OFF K IM Hole machining pattern cycle )2 Tool position offset OFF 01 3 Tool length offset +/– yr ig ht (c Scaling OFF C op Local coordinate system setting A G34.1, G35, G36, G37.1 6-62 G109 G274.2 Serial No. 340839 INTERPOLATION FUNCTIONS 5. 6 Starting and ending points of involute interpolation The curve for involute interpolation is drawn from the starting point, i.e. the current position where the command is given. The involute of a circle can be expressed by the following parametric equation: Y er ve d . (Xθ, Yθ) re s 0 ts Y0 X D749PB0018 34 08 C 39 O R PO R A TI O X0 N Base circle .A ll ri gh R X = R {cos ( + 0) + ·sin ( + 0)} + X0 Y = R {sin ( + 0) – ·cos ( + 0)} + Y0 K al N o. There are two involute curves to be drawn for a given starting point and based on a given evolute circle (base circle). According as the explicitly specified ending point is closer to, or more distant from, the base circle than the starting point, 2. the involute curve is extended away from the base circle. A Se ZA the involute curve is retracted towards the base circle, or ri 1. K IM The alarm 818 MISSING CENTER (NO DATA) will be raised in the folowing cases: the starting and ending points are equidistant from the center of the base circle, or A ZA the starting or ending point lies within the base circle. C op yr ig ht (c )2 01 3 YA M The alarm 809 ILLEGAL NUMBER INPUT will be raised if the total curve length (from a point on the circumference of the base circle up to the starting or ending point) should exceed hundred times the circumference of the base circle (100 × 2R). 6-63 Serial No. 340839 6 INTERPOLATION FUNCTIONS 6. Tool radius compensation for involute interpolation As with the circular interpolation, tool radius compensation can be applied to involute interpolation in the following manner. First, the involute curve is approximated with circular arcs at the starting and ending points. Then the tool radius compensation is applied to the arcs, and the points of intersection are obtained on both sides between the circular offset path and the offset path of the preceding and succeeding motion blocks. Finally, recalculation is conducted for the two pints of intersection to be interpolated with a new involute curve as tool center path. Note 1: The required command of tool radius compensation must be given before a command of involute interpolation (with G02.2 or G03.2). re s er ve d . Note 2: The alarm 818 MISSING CENTER (NO DATA) will be raised if the tool radius compensation causes the starting or ending point of the offset curve to enter the base circle. .A ll ri gh ts Note 3: During involute interpolation, the axis motion can be controlled in order that the rate of feed of tool center may be as specified with an F-code, indeed, but the motion speed at the cutting point cannot be kept constant due to a change in curvature. A special overriding function is provided for involute interpolation to keep a constant motion speed at the cutting point. 34 08 C 39 O R PO R A TI O N See the description below under 7 for more information on the overriding function. K ZA A Overriding for involute interpolation Se 7. ri al N o. Note 4: During involute interpolation, the function of automatically preventing the interference caused by tool radius compensation cannot be executed at all (even if it is enabled by the corresponding setting in bit 5 of parameter F92) and the alarm 837 TOOL OFFSET INTERFERENCE ERROR will always be raised if an interference is foreseen. ZA K IM Set parameter K249 (Lower limit of overriding for involute interpolation) to a significant value, and the rate of feed of tool center can automatically be overridden according to the curvature radius so that the motion speed at the cutting point may be kept as specified with an F-code. YA M A <Calculation of overriding value> For tool radius compensation by offsetting the tool inwards (towards the base circle) Overriding value = R / (R + r) 01 3 For tool radius compensation by offsetting the tool outwards (away from the base circle) (c )2 Overriding value = R / (R – r) ht R : Radius of curvature of the tool center path ig r : Amount of tool radius compensation C op yr The overriding function for involute interpolation is disabled when K249 is set to zero (0). In the case of tool radius compensation by offsetting inwards, the internal calculation may cause a minute overriding value close to zero (0) to be applied near the base circle. Set K249 to an appropriate value to be used as the lowest permissible value of overriding the rate of feed of tool center during involute interpolation. In the case of tool radius compensation by offsetting outwards, the actual rate of feed of tool center is higher than the speed specified with an F-code. 6-64 Serial No. 340839 INTERPOLATION FUNCTIONS 8. 6 Limitation on the acceleration for involute interpolation An enhancement of acceleration is required near the base circle (where the curvature is considerably small) in order that the rate of feed of tool center along the tangent to the involute curve should be kept constant. Set parameter K247 (Upper limit of acceleration for involute interpolation) to a significant value, and the rate of feed along the tangent can automatically be modified in adaptation to the curvature radius so that the acceleration may not exceed the maximum permissible value. Limitation on the acceleration for involute interpolation is disabled when K247 is set to zero (0). er ve d . The smaller the curvature radius, the lower the minimum permissible rate of feed along the tangent. Therefore, the smaller the base circle, the lower the minimum permissible rate of feed in the vicinity of the base circle. ri Erroneous setting of the ending point for involute interpolation .A ll 9. gh ts re s Set parameter K248 (Lower limit of the rate of feed for involute interpolation) to a significant value below which the rate of feed should not fall during involute interpolation. (The K248 setting is only valid when the limitation on the acceleration for involute interpolation is enabled, i.e. when K247 > 0.) 34 08 C 39 O R PO R A TI O N The specified ending point may not precisely lie on an involute curve that passes through the starting point. The alarm 817 INCORRECT ARC DATA will be raised if the deviation between the respective involute curves passing through the starting point and ending point is greater than its tolerance (parameter K246). 10. Restrictions and remarks The involute interpolation cannot be represented correctly for tool path check. o. 1. K ZA The involute interpolation cannot be represented correctly by the QUICK EIA function. K IM 2. A Se ri al N The execution of an involute interpolation command cannot precisely be represented on the TOOL PATH CHECK display: only in a path of semi-circle (in 3D display mode), or in a path of circular arc and linear segment (in 2D display mode), up to the specified ending point. ZA An involute interpolation command can only be represented by the QUICK EIA function in a linear path between the starting and ending points. The involute interpolation cannot correctly undergo a tool path check for estimating the machining time. The estimation of machining time on the TOOL PATH CHECK display is performed for an involute interpolation command using the programmed rate of feed without fine speed control being taken into account, and the estimated machining time may differ more or less from the actual one. 4. As for a ‘helical’ involute interpolation, the speed of simultaneous axial movement on the third orthogonal axis (Z) is obtained according to the specified rate of feed along the tangent to the involute curve on the selected plane (XY). The resulting speed of motion at the cutting point, therefore, is not the same as programmed and the machining accuracy may not be so high as can be expected. C op yr ig ht (c )2 01 3 YA M A 3. 5. The machining contour of involute interpolation on the cylindrical surface may be unexpectedly reversed due to a particular configuration of the machine’s controlled axes. See “4. Remarks” in Section 6-13 for more information. 6-65 Serial No. 340839 6 INTERPOLATION FUNCTIONS 6-18 Circle Cutting: G12, G13 1. Function and purpose A single block command of G12 or G13 causes a cycle of cutting a full circle to be executed around the current position with a lead-in and lead-out semicircle. 2. Programming format G12 (or G13) Ii Dd Ff G12: Clockwise (CW) f: Rate of feed re s er ve d Circle radius No. of the compensation amount registered on the TOOL OFFSET display ts Detailed description gh 3. i: d: . G13: Counterclockwise (CCW) .A ll ri The figure below illustrates the motion of the tool for circle cutting. 34 08 C 39 O R PO R A TI O N Solid line graphs the circumference of the circle with the radius specified with argument I, and broken line does the tool path (path of the tool axis) as offset from the programmed contour by the compensation amount specified with argument D. Y G13 4 ZA 2 K ZA A X 1 3 Compens. amount M A Compens. amount 4 Radius X K IM Se ri 1 Radius al N 3 Programmed contour Tool path 2 o. G12 Y YA In the mode of single block operation, the block stop occurs at the end of each division as follows: )2 01 3 1. 2. division: 2 3 (Full circle) 3. division: 4 (Semicircle) (c 1. division: 1 (Semicircle) ht Note that the execution of G12 and G13 command is completed, respectively, with the modal conditions of circular interpolation G2 and G3 being established automatically. yr ig 2. D747PB0066 C op 3. The alarm 807 ILLEGAL FORMAT is raised if argument I or D is missing. Argument F can be omitted (if no change in the rate of feed is required). 4. The alarm 809 ILLEGAL NUMBER INPUT is raised if the radius of the circle to be cut (argument I) should be smaller than the compensation amount the number of which is specified as argument D. 5. Note that the circular tool path is offset to the outside of the programmed circle if the compensation amount specified with argument D should be a negative value. 6. Note that the path that is offset by the amount specified with argument D is further offset accordingly if the command of circle cutting (G12 or G13) should be given under the condition of tool radius compensation. 6-66 Serial No. 340839 INTERPOLATION FUNCTIONS Restrictions and remarks 1. The alarm 807 ILLEGAL FORMAT is raised if a command of G12 or G13 is given in the mode of G5P2 (high-speed machining). 2. The alarm 808 MIS-SET G CODE is raised if a command of G12 or G13 is given in the mode of G07.1 (cylindrical interpolation). 3. The alarm 817 INCORRECT ARC DATA is raised if a command of G12 or G13 is given in the mode of G10.9X1 (diameter data input for X-axis). 4. Circle cutting is always executed in the XY-plane (G17), irrespective of the currently selected plane. 5. Circle cutting cannot be taken into account by the function of QUICK EIA. 6. The machining contour of circle cutting on the cylindrical surface may be unexpectedly reversed due to a particular configuration of the machine’s controlled axes. re s er ve d . 4. 6 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts See “4. Remarks” in Section 6-13 for more information. 6-67 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 6 INTERPOLATION FUNCTIONS 6-68 E Serial No. 340839 FEED FUNCTIONS 7 FEED FUNCTIONS 7-1 Rapid Traverse Rates 7 A separate rapid traverse rate can be set for each axis. The maximum rate of rapid traverse, however, is limited according to the particular machine specifications. Refer to the relevant manual of the machine for rapid traverse rates. ri Cutting Feed Rates 34 08 C 39 O R PO R A TI O N .A ll A cutting feed rate must be designated using address F and an twelve-digit number (F12-digit direct designation). The F12 digits must consist of eight integral digits and four decimal digits, with the decimal point. Cutting feed rates become valid for commands G01, G02, G03, G33 and G34. N o. Example : Asynchronous feed G01 X100. Y100. F200* G01 X100. Y100. F123.4 G01 X100. Y100. F56.789 Feed rate 200.0 mm/min 123.4 mm/min 56.789 mm/min K ZA op yr ig ht (c )2 01 3 YA M A ZA K IM A The alarm 713 SEQUENCE DATA NOT FOUND will result if a feed rate command is not set for the first cutting command (G01, G02, G03, G33 or G34) that is read firstly after power-on. Se Note : ri al * It means the same if F200. or F200.000 is set in stead of F200. C 7-2 gh ts re s er ve d . Two types of tool paths are available for positioning: an interpolation type, which uses a line to perform interpolation from the starting point through the ending point, and a non-interpolation type, which moves the tool at the maximum speed of each axis. Use a parameter to select the interpolation type or the non-interpolation type. The positioning time is the same for both types. 7-1 Serial No. 340839 7 FEED FUNCTIONS Asynchronous/Synchronous Feed: G94/G95 1. Function and purpose Command G95 allows a feed rate per revolution to be set using an F-code. Command G94 retrieves the mode of asynchronous feed (per minuite). 2. Programming format G94: Feed per minute (/min) [Asynchronous feed] G95: Feed per revolution (/rev) [Synchronous feed] Detailed description 1. Feed rates that can be set using F-codes are listed in the table below. re s 3. er ve d . Since command G95 is modal, it will remain valid until command G94 is issued. Decimal point Min. value Max. value Speed by min. value G94 (Feed per minute) Omitted F1 F200000 1 [mm/min] Given F0.001 F200000. G95 (Feed per revolution) Omitted F1 G94 (Feed per minute) .A ll Given F0.0001 F200000. 0.0001 [mm/rev] F1 F20000 0.01 [in/min] Given F0.0001 F20000. 0.0001 [in/min] Omitted F1 F20000 0.0001 [in/rev] F0.00001 F20000. 0.00001 [in/rev] N al Given K ZA K IM A ri Specifying an F-code with a value larger and smaller than the maximum and minimum permissible ones causes the alarm 809 ILLEGAL NUMBER INPUT and 816 FEEDRATE ZERO, respectively. Se Note : 0.01 [mm/rev] Omitted o. inches G95 (Feed per revolution) 0.001 [mm/min] F200000 34 08 C 39 O R PO R A TI O mm ri Mode of feed N Input in gh ts The table below also lists synchronous feed rates, which are to be set in millimeters (or inches) per spindle revolution using F-codes. The effective feed rate per revolution, that is, the actual moving speed of the machine, can be calculated as follows: ZA 2. A FC = F × N × OVR (Expression 1) )2 01 3 YA M where FC: Effective feed rate (mm/min or in/min) F: Designated feed rate (mm/rev or in/rev) –1 N: Spindle speed (min ) OVR: Overriding value for cutting feed yr Remarks op 4. ig ht (c If multiple axes are selected at the same time, effective feed rate FC given by expression 1 above will become valid for the corresponding vectorial direction. 1. On the POSITION display, FEED denotes an effective feed rate that is expressed in a feed rate per minute (mm/min or in/min), based on the selected feed rate, the spindle speed, and the cutting feed override. 2. If the effective feed rate should become larger than the cutting feed limit speed, that limit speed will govern. 3. In the dry run mode, feed will become asynchronous and the machine will operate at an externally preset feed rate (mm/min or in/min). 4. According to the setting of bit 1 of parameter F93, synchronous or asynchronous feed mode (G95 or G94) is automatically made valid upon power-on or by execution of M02 or M30. C 7-3 7-2 Serial No. 340839 FEED FUNCTIONS Selecting a Feed Rate and Effects on Each Control Axis As mentioned earlier, the machine has various control axes. These control axes can be broadly divided into linear axes, which control linear motions, and rotational axes, which control rotational motions. Feed rates for control axes have different effects on the tool speed, which is of great importance for machining quality, according to the particular type of axis controlled. The amount of displacement must be designated for each axis, whereas the feed rate is to be designated as a single value for the intended tool movement. Before letting the machine control two or more axes at the same time, therefore, you must understand how the feed rate designated will act on each axis. In terms of this, selection of a feed rate is described below. Controlling linear axes er ve d . 1. re s The feed rate that has been selected using an F-code acts as a linear velocity in the moving direction of the tool, irrespective of whether only one axis is to be controlled or multiple axes simultaneously. If linear axes (X- and Y-axes) are to be controlled using a feed rate of f: gh ts Example: 34 08 C 39 O R PO R A TI O P2 (Tool ending point) y N .A ll ri Y “f” denotes the velocity in this direction. o. X N x K MEP038 ZA ri al P1 (Tool starting point) K IM A Se When only linear axes are to be controlled, setting of a cutting feed rate itself is only required. The feed rate for each axis refers to that component of the specified feed rate which corresponds with the ratio of movement stroke on the respective axis to the actual movement distance. ZA In the example shown above: YA M A X-axis feed rate = f × z x2 + y2 op yr ig ht (c )2 01 3 Y-axis feed rate = f × x x2 + y2 C 7-4 7 7-3 Serial No. 340839 7 FEED FUNCTIONS 2. Controlling a rotational axis When a rotational axis is to be controlled, the selected feed rate acts as the rotating speed of the rotational axis, that is, as an angular velocity. Thus, the cutting speed in the moving direction of the tool, that is, a linear velocity varies according to the distance from the rotational center to the tool. This distance must be considered when setting a feed rate in the program. Example 1: If a rotational axis (C-axis) is to be controlled using a feed rate of f (deg/min): “f” denotes the angular velocity. re s The linear velocity is obtainable from rf 180 ts c Center of rotation er ve d . P2 (Tool ending point) gh P1 (Tool starting point) MEP034 34 08 C 39 O R PO R A TI O N .A ll ri r o. In this case, the cutting speed in the moving direction of the tool (linear velocity) “fc” is calculated by: r fc = f × 180 K K IM If linear axes (X- and Y-axes) are to be controlled at a feed rate of f using the circular interpolation function: YA M A Example 2: A If the tool is to be moved by controlling linear axes along the circumference using the circular interpolation function, the feed rate programmed is the velocity acting in the moving direction of the tool, that is, in the tangential direction. ZA Note: ZA Se ri al N Hence, the feed rate to be programmed for the required value fc is: 180 f = fc × r y P2 “f” denotes this linear speed. C op yr ig ht (c )2 01 3 Y P1 x X i MEP040 In this case, the X- and Y-axis feed rates will change with the movement of the tool. The resultant velocity, however, will be kept at the constant value, f. 7-4 Serial No. 340839 FEED FUNCTIONS 3. 7 Controlling a linear axis and a rotational axis at the same time er ve d . The NC unit controls linear axes and rotational axes in exactly the same manner. For control of rotational axes, data given as a coordinate word (with A, B or C) is handled as an angle, and data given as a feed rate (F) is handled as a linear velocity. In other words, an angle of one degree for a rotational axis is handled as equivalent to a moving distance of 1 mm for a linear axis. Thus, for simultaneous control of a linear axis and a rotational axis, the magnitudes of the individual axis components of the data that has been given by F are the same as those existing during linear axis control described previously in Subparagraph 1. above. In this case, however, the velocity components during linear axis control remain constant in both magnitude and direction, whereas those of rotational axis control change in direction according to the movement of the tool. Therefore, the resulting feed rate in the moving direction of the tool changes as the tool moves. If a linear axis (X-axis) and a rotational axis (C-axis) are to be controlled at the same time at a feed rate of f: ts re s Example: - “fx” is constant in both size and direction. - “fc” is constant in size, but varies in direction. - “ft” varies in both size and direction. fx N P2 fc 34 08 C 39 O R PO R A TI O r .A ll ri gh ft fc P1 ft fx c x MEP041 ZA Se ri al Center of rotation K N o. [1] A x x2 + c2 =f× M fx = f × ZA K IM A X-axis incremental command data is expressed here as x, and that of C-axis as c. The X-axis feed rate (linear velocity), fx, and the C-axis feed rate (angular velocity), , can be calculated as follows: c x2 + c2 [2] YA The linear velocity “fc” that relates to C-axis control is expressed as: [3] )2 01 3 r fc = 180 C op yr ig ht (c If the velocity in the moving direction of the tool at starting point P1 is taken as “ft”, and its X- and Y-axis components as “ftx” and “fty” respectively, then one can express “ftx” and “fty” as follows: ftx = –r sin (180 ) × 180 + fx [4] fty = –r cos (180 ) × 180 [5] where r denotes the distance (in millimeters) from the rotational center to the tool, and q denotes the angle (in degrees) of starting point P1 to the X-axis at the rotational center. 7-5 Serial No. 340839 7 FEED FUNCTIONS From expressions [1] through [5] above, the resultant velocity “ft” is: ft = 2 2 ftx + fty ) + ( r c )2 2 x – x c r sin ( =f× 180 2 90 180 [6] 2 x +c The feed rate f that is to be set in the program must be therefore: 2 f = ft × 2 x +c [7] ) + ( r c )2 x – x c r sin ( 2 180 . 90 er ve d 180 .A ll ri Automatic Acceleration/Deceleration N o. 34 08 C 39 O R PO R A TI O N The rapid traverse and manual feed acceleration/deceleration pattern is linear acceleration and linear deceleration. Time constant T R can be set independently for each axis using parameters in 1 ms steps within a range from 1 to 500 ms. The cutting feed (not manual feed) acceleration or deceleration pattern is exponential acceleration/deceleration. Time constant T C can be set independently for each axis using parameters in 1 ms steps within a range from 1 to 500 ms. (Normally, the same time constant is set for each axis.) f ZA A Continuous command ZA K IM Se ri Continuous command K al f TR Td t t Tc YA M A TR 01 3 Rapid traverse acceleration/deceleration pattern (TR = Rapid traverse time constant) (Td = Deceleration check time) Tc Cutting feed acceleration/deceleration pattern (Tc = Cutting feed time constant) (c )2 TEP037 yr ig ht During rapid traverse and manual feed, the following block is executed after the command pulse of the current block has become “0” and the tracking error of the acceleration/deceleration circuit has become “0”. During cutting feed, the following block is executed as soon as the command pulse of the current block becomes “0” and also the following block can be executed when an external signal (error detection) can detect that the tracking error of the acceleration/deceleration circuit has reached “0”. When the in-position check has been made valid (selected by machine parameter) during the deceleration check, it is first confirmed that the tracking error of the acceleration/deceleration circuit has reached “0”, then it is checked that the position deviation is less than the parameter setting, and finally the following block is executed. op C 7-5 gh ts re s In expression [6], “ft” is the velocity at starting point P1 and thus the value of ft changes with that of which changes according to the rotational angle of the C-axis. To keep cutting speed “ft” as constant as possible, the rotational angle of the C-axis in one block must be minimized to ensure a minimum rate of change of . 7-6 Serial No. 340839 FEED FUNCTIONS 7-6 7 Limitation of Speed This function exercises control over the actual rate of cutting feed in which override has been applied to the programmed rate so that the speed limit preset independently for each axis is not exceeded. Note : Exact-Stop Check: G09 1. Function and purpose G09 ri Programming format G01 (G02, G03) ; .A ll 2. gh ts re s er ve d . Only after the in-position status has been checked following machine deceleration and stop or after deceleration checking time has been passed, may you want to start the next block command in order to reduce possible machine shocks due to abrupt changes in tool feed rate and to minimize any rounding of workpieces during corner cutting. An exact-stop check function is provided for these purposes. 3. 34 08 C 39 O R PO R A TI O N Exact-stop check command G09 is valid only for the cutting command code (G01, G02, or G03) that has been set in that block. Sample program N001 G09 G01 X-axis K ZA Tool With G09 K IM Se f (Selected feed rate) A ri al N o. N002 X100.000 F150; The next block is executed after an in-position status check following machine deceleration and stop. Y100.000 ; N001 ZA N001 YA M A Without G09 N002 Time N002 )2 01 3 Y-axis (c The solid line indicates a feedrate pattern with the G09 available. The dotted line indicates a feedrate pattern without the G09. Fig. 7-1 Validity of exact-stop check op yr ig ht TEP038 C 7-7 Speed limitation is not applied to synchronous feed and threading. 7-7 Serial No. 340839 7 FEED FUNCTIONS 4. Detailed description A. Continuous cutting feed commands Next block er ve d . Preceding block Ts: Cutting feed acceleration/deceleration time constant .A ll 34 08 C 39 O R PO R A TI O N Cutting feed commands with in-position status check ri gh Fig. 7-2 Continuous cutting feed commands B. TEP039 ts re s Ts Next block o. Preceding block K ZA Ts Ts: Cutting feed acceleration/deceleration time constant Lc: In-position width TEP040 A Ts ZA K IM Se ri al N Lc A Fig. 7-3 Block-to-block connection in cutting feed in-position status check mode YA M As shown in Fig. 7-3, in-position width Lc represents the remaining distance within the block immediately preceding the next block to be executed. Lc Next block (c )2 01 3 The in-position width helps keep any rounding of workpieces during corner cutting within a fixed level. C op yr ig ht If rounding of workpieces at corners is to be completely suppressed, include dwell command G04 between cutting blocks. Preceding block TEP041 7-8 Serial No. 340839 FEED FUNCTIONS C. 7 With deceleration check With linear acceleration/deceleration Ts er ve d Ts : Acceliration/deceleration time constant Td : Deceleration check time Td = Ts + (0 to 14 ms) . Next block Preceding block re s Td ts TEP042 34 08 C 39 O R PO R A TI O N .A ll ri gh With exponential acceleration/deceleration Next block o. Preceding block Ts : Acceleration/deceleration time constant Td : Deceleration check time Td = 2 × Ts + (0 to 14 ms) A ZA K Td TEP043 K IM Se ri al N Ts YA M A ZA With exponential acceleration/linear deceleration 01 3 Preceding block 2 × Ts Td Ts Ts : Acceleration/deceleration time constant Td : Deceleration check time Td = 2 × Ts + (0 to 14 ms) C op yr ig ht (c )2 Next block TEP044 The time required for the deceleration check during cutting feed is the longest among the times of each axis determined by the time constants and types of cutting feed acceleration and deceleration of the axes concerned. 7-9 Serial No. 340839 7 FEED FUNCTIONS Exact-Stop Check Mode: G61 1. Function and purpose Unlike exact-stop check command G09 which performs an in-position status check on that block only, command G61 functions as a modal command. That is, this command acts on all its succeeding cutting commands (G01, G02, and G03) so that deceleration occurs at the end of each block, followed by an in-position status check. Command G61 is cleared by geometry compensation command G61.1, automatic corner override command G62, tapping mode command G63, or cutting mode command G64. Programming format er ve d . 2. K ZA A op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s G61; C 7-8 7-10 Serial No. 340839 FEED FUNCTIONS Automatic Corner Override: G62 1. Function and purpose Automatic corner override refers to a function for decreasing the rate of feed automatically at corners on the tool path so as to reduce the tool load. The function contributes toward enhancing the surface quality in inner-corner cutting, or automatic inner-corner rounding (,R), in the mode of tool radius compensation. “Inner corner” denotes an inside corner made of linear or circular segments. . “Automatic corner rounding (,R)” denotes a corner which is made of linear segments only and to be rounded with a radius specified using a special address ,R. Programming format ri 2. gh ts re s er ve d Once command G62 has been issued, the automatic corner override function will remain valid until it is cancelled by tool radius compensation cancellation command G40, exact-stop check mode command G61, geometry compensation command G61.1, tapping mode command G63, or cutting mode command G64. A. N Detailed description 34 08 C 39 O R PO R A TI O 3. .A ll G62; Inner-corner cutting K ZA A K IM Se ri al N o. When inner corner is cut by a tool moving from position [1] through [2] to [3] as shown in Fig. 7-4 below, the load on the tool increases because the cutting amount at position [3] is larger than that of position [2] by the area of hatched section S. Using G62 in such a case allows the rate of cutting feed to be automatically decreased within the preset zone, and thus the tool load to be reduced in order to accomplish appropriate cutting. This function, however, should only be used for programming a finishing contour. A ZA Finishing allowance S [1] Programmed path (Finishing contour) Workpiece surface shape [2] [3] Tool center path Finish. allow. Ci (c )2 01 3 YA M Workpiece op yr ig ht Tool : Maximum inner-corner angle Ci : Deceleration zone (IN) MEP046 C 7-9 7 Fig. 7-4 Inner-corner cutting 1. Machine operation In Fig. 7-4 above, if angle of the inner corner is smaller than the value preset in a parameter, the rate of feed is automatically overriden according to another parameter for movement through deceleration zone Ci. 7-11 Serial No. 340839 7 FEED FUNCTIONS 2. Setting parameters Set the following user parameters as required: F29: Override ......................................... 0 to 100 (%) F21: Maximum inner-corner angle ...... 0 to 179 (deg) F22: Deceleration zone Ci ...................... 0 to 9999.9999 (mm) or 999.99999 (in) For further details of parameter setting, refer to the separate Parameter List/ Alarm List/M-code List. 3. Operation examples Programmed path gh ts re s er ve d . Linear-to-linear corner ri Tool center path 34 08 C 39 O R PO R A TI O N .A ll Ci Tool MEP047 al N o. The rate of feed is automatically overridden with a value preset by parameter F29 through deceleration zone Ci. K ZA A K IM Se ri Linear-to-circular (external compensation) corner A ZA Programmed path Tool center path Ci Tool ht (c )2 01 3 YA M C op yr ig MEP048 The rate of feed is automatically overridden with a value preset by parameter F29 through deceleration zone Ci. 7-12 Serial No. 340839 FEED FUNCTIONS 7 Circular(internal compensation)-to-linear corner Programmed path Ci Tool center path Tool er ve d . Tool MEP049 gh Deceleration zone Ci for automatic corner override is used as an arc length for circular interpolation. ri Note : ts re s The rate of feed is automatically overridden with a value preset by parameter F29 through deceleration zone Ci. 34 08 C 39 O R PO R A TI O N .A ll Circular(internal compensation)-to-circular(external compensation) corner N2 Programmed path Tool center path A ZA K Ci ZA K IM Se ri al N o. N1 A MEP050 C op yr ig ht (c )2 01 3 YA M The rate of feed is automatically overridden with a value preset by parameter F29 through deceleration zone Ci. 7-13 Serial No. 340839 7 FEED FUNCTIONS B. Automatic corner rounding (,R) When automatic inner-corner rounding (,R) is performed by a tool moving from position [1] through [2] to [3] as shown in Fig. 7-5 below, the load on the tool increases because the cutting amount at position [3] is larger than that of position [2] by the area of shaded section S. Using G62 in such a case allows the rate of cutting feed to be automatically decreased within the preset zone, and thus the tool load to be reduced in order to accomplish appropriate cutting. er ve d . For details of automatic corner rounding (,R), refer to Subsection 13-12-2. re s Programmed path Corner rounding section Workpiece surface shape [1] S 34 08 C 39 O R PO R A TI O N Ci Workpiece ri [2] .A ll [3] gh ts Tool center path D740PB0154 ZA ri Machine operation Se 1. al Fig. 7-5 Automatic corner rounding (,R) K N o. Finishing allowance ZA K IM A For inner corner cutting with automatic corner rounding, the rate of feed is automatically overriden according to a parameter for movement through deceleration zone Ci and corner rounding section (independently of corner angle). Setting parameters F29: Override ......................................... 0 to 100 (%) M A 2. YA F22: Deceleration zone Ci ...................... 0 to 9999.9999 (mm) or 999.99999 (in) Operation examples C op yr ig 3. ht (c )2 01 3 For further details of parameter setting, refer to the separate Parameter List/ Alarm List/M-code List. <Programming> G0G54 M3S100 G94 G42G90G0X200.Y0.Z0. G62 G0X100. G1X80.,R5.F100 Y20. M30 7-14 Serial No. 340839 FEED FUNCTIONS 7 <Machine operation> Y Programmed path Tool center path X Corner rounding ending point re s er ve d . Ci ts Corner rounding starting point ri gh D740PB0155 34 08 C 39 O R PO R A TI O Correlationships to other command functions Function Override at corners Automatic corner override is applied after cutting feed override. Override cancel Automatic corner override is not cancelled by override cancel. Feed rate clamp Valid (for the feed rate after automatic corner override) Dry run Automatic corner override is invalid. Synchronous feed A synchronous feed rate is automatically corner-overridden. Skip (G31) During tool radius compensation, G31 will result in an alarm. Valid ZA K IM Machine lock A Se ri al N o. Cutting feedrate override K 4. N .A ll The rate of feed is automatically overridden with a value preset by parameter F29 through deceleration zone Ci up to the ending point of corner rounding. Invalid G01 Valid ZA G00 Valid Precautions Automatic corner override is valid only during the G01, G02 or G03 modes; it is invalid during the G00 mode. Also, when the command mode is changed over from G00 to G01, G02, or G03 (or vice versa) at a corner, automatic corner override is not performed on the G00-containing block at that corner. Even in the automatic corner override mode, automatic corner override is not performed until the tool radius compensation mode has been set. C op yr ig 2. ht (c )2 01 3 1. YA 5. M A G02, G03 7-15 Serial No. 340839 7 FEED FUNCTIONS 3. Automatic corner override does not occur at corners where tool radius compensation is to start or to be cancelled. Cancel block Programmed path Startup block Tool center path Automatic corner override remains invalid. er ve d . MEP051 Automatic corner override does not occur at corners where I, J and K vector commands for tool radius compensation are to be executed. gh ts re s 4. .A ll ri Programmed path N Tool center path 34 08 C 39 O R PO R A TI O Block including I and J vector commands Automatic corner override remains invalid. MEP052 o. (G41X_Y_I_J_;) Automatic corner override occurs only when crossing points can be calculated. Crossing points can not be calculated in the following case: K ri al N 5. ZA A Se Four or more blocks that do not include move command appear in succession. For circular interpolation, the deceleration zone is represented as the length of the arc. 7. The parameter-set angle of an inner corner is applied to the angle existing on the programmed path. 8. Setting the maximum angle to 0 degrees in the angle parameter results in an automatic corner override failure. 9. Setting the override to 0 or 100 in the override parameter results in an automatic corner override failure. C op yr ig ht (c )2 01 3 YA M A ZA K IM 6. 7-16 Serial No. 340839 FEED FUNCTIONS 7 7-10 Tapping Mode: G63 1. Function and purpose Command G63 enters the NC unit into a control mode suitable for tapping. This mode has the following features: The cutting feed override is fixed at 100%. Commands for deceleration at block-to-block connections are invalidated. The feed hold function is invalidated. The single-block function is invalidated. . Tapping-mode signal is output. re s er ve d The G63 command mode will remain valid until it is cancelled by exact-stop check mode command G61, geometry compensation command G61.1, automatic corner override command G62 or cutting mode command G64. ts Programming format gh 2. .A ll ri G63 ; 1. 34 08 C 39 O R PO R A TI O N 7-11 Cutting Mode: G64 Function and purpose K ZA A Programming format K IM 2. Se ri al N o. Command G64 enters the NC unit into a control mode proper to obtain smoothly cut surfaces. Unlike the exact-stop check mode (G61 command mode), the cutting mode allows the next block to be executed without decelerating/stopping the machine between cutting feed blocks. The G64 command mode is cleared by exact-stop check mode command G61, geometry compensation command G61.1, automatic corner override command G62 or tapping mode command G63. C op yr ig ht (c )2 01 3 YA M A ZA G64 ; 7-17 Serial No. 340839 7 FEED FUNCTIONS 7-12 Geometry Compensation: G61.1/,K/P/R 7-12-1 Geometry compensation function: G61.1 1. Function and purpose ts re s Pre-interpolation acceleration/deceleration Feed forward control Optimum corner deceleration Precise vector compensation gh 1. 2. 3. 4. er ve d The geometry compensation function is composed of the following four functions: . The geometry compensation function (G61.1) is provided to reduce conventional geometry errors caused by delayed follow-up of smoothing circuits and servo systems. The geometry compensation function is canceled, or replaced, by the functions of exact stop check mode (G61), automatic corner override (G62), tapping mode (G63) and cutting mode (G64). Programming format G61.1; ZA A K IM Se ri al N Selection of the geometry compensation function Cancellation of the geometry compensation function Remarks The geometry compensation function cannot be selected or canceled for EIA/ISO programs by the setting of the parameter F72 (which is only effective for MAZATROL programs). 2. The geometry compensation function is suspended during execution of the following operations: Rapid traverse of non-interpolation type (according to bit 6 of parameter F91), Synchronous tapping, Measurement (skipping), Threading. 3. The pre-interpolation acceleration/deceleration is effective from the block of G61.1 onward. C op ig ht (c )2 01 3 1. yr 4. YA M A N001 G61.1 G01X100.F1000 X100.Y–100. X–100.Y–100. X–100. X–100.Y100. X100.Y100. G64 o. Sample program ZA 3. K 2. 34 08 C 39 O R PO R A TI O N .A ll ri Refer to Section 11-2 “Geometry Compensation Function” in PART 3 of the Operating Manual for the description of the above functions. 7-18 Serial No. 340839 FEED FUNCTIONS 7 7-12-2 Specification of accuracy coefficient (,K) 1. Function and purpose In the mode of geometry compensation (G61.1) the feed of the tool is automatically decelerated at relevant corners and for circular motions by the optimal corner deceleration and the circular feed limitation, respectively, in order to enhance the machining accuracy. Specifying an accuracy coefficient in the machining program can further improve the accuracy by additionally decelerating the feed for the sections concerned. 2. Programming format Specify the rate of reduction of the corner deceleration speed and the circular feed rate limitation in percentage terms. er ve d . ,K_; Sample program ts N <Example 1> 34 08 C 39 O R PO R A TI O N001 G61.1 The rate of feed for a corner deceleration or circular motion in the section from this block onward will be reduced to 70% of the value applied in default of the accuracy coefficient command. N200 G1X_Y_,K30 N300 gh .A ll 3. ri - Resetting is performed, - The geometry compensation function is canceled (by G64), - A command of “,K0” is given. re s The accuracy coefficient is canceled in the following cases: X_Y_ N400 … ri al N001 G61.1 N200 G2I-10.,K30 ZA Se Deceleration to 70% occurs for this block only. N300 G1X10.,K0 K IM A The accuracy coefficient is canceled from this block onward. N400 … A ZA Remarks The accuracy coefficient cannot be specified in a MAZATROL program. 2. Specifying an accuracy coefficient 1 to 99 at address “,K” increases the machining time according to the additional deceleration at relevant corners and for circular motions. YA M 1. 01 3 4. K N o. <Example 2> (c )2 7-12-3 Specification of SMC data No. (P) ht Function and purpose ig 1. C op yr The desired set of SMC data (prepared and stored on the corresponding display) to be used in the mode of geometry compensation can be specified as required in the program. 2. See the corresponding section in PART 3 of the Operating Manual for the details on the display for setting SMC data. Programming format G61.1 Pp; p: SMC data No. Setting range: 0 to 41 Argument P can be omitted if the SMC data set specified last is to be used further. 7-19 Serial No. 340839 7 FEED FUNCTIONS Argument P with a decimal point will be processed by simply deleting the decimal point and decimal digits. The processing for an erroneous argument P (a number that falls outside of the setting range, or under which no data are prepared) depends upon a parameter setting as follows: F329 bit 0 = 0: Operation is continued with the alarm 965 DESIGNATED PNo NOT FOUND displayed on the screen, = 1: Operation is stopped with the alarm 964 DESIGNATED PNo NOT FOUND displayed on the screen. Function and purpose er ve d 1. . 7-12-4 Smooth corner control (R) gh Programming format .A ll ri G61.1 Rr; G61.2 Rr; r: Tolerable error distance 34 08 C 39 O R PO R A TI O Setting range: 0.0000 to 10.0000 mm (for metric input) 0.00000 to 1.00000 in (for inch input) N 2. ts re s This function allows the tolerable error distance to be programmed for a smooth cornering (circular motion) between two cutting-feed blocks by appropriate motion speed control. Commanded position A ZA K Programmed path ZA K IM Se ri al N o. Tool path 01 3 Detailed description Enter inch or metric data for argument R according to the current mode (G20 or G21). 2. Enter zero (0) with R to temporarily cancel the SCC function (so as to bring the motion of the block to an exact stop at the commanded position). )2 1. Entering a lower value than the lower limit (0) with R has the same result as entering zero (0), and entering a higher value than the upper limit just as entering that limit. C op yr ig 3. ht (c 3. YA M A Tolerable error distance 4. Argument R can be omitted if the default value (provided in parameter F270) is desired. 5. The SCC function is canceled by the following functions (belonging to the same group of modal G-codes as G61.1 and G61.2): Exact stop check mode (G61), Automatic corner override (G62), Tapping mode (G63), Cutting mode (G64). 7-20 Serial No. 340839 FEED FUNCTIONS 7 <Example of programming for changing the tolerable error distance> ................ Use of F270 as tolerable error distance ................ Use of 0.2 as tolerable error distance ................ Cancellation of the SCC function ................ Use of 0.3 as tolerable error distance ................ Temporary exact stop ................ Use of F270 as tolerable error distance Relationship to other G-codes re s 4. er ve d . G61.1 G61.1R0.2 G64 G61.1R0.3 G61.1R0 G61.1 M30 ts The modal conditions compatible with the SCC function are as enumerated below. Linear interpolation G01 Circular and Helical interpolation G02/G03 High-speed machining mode G05 Cylindrical interpolation (Note) Function N G-code G07.1 G11 Polar coordinate interpolation OFF G13.1 Plane selection G17/G18/G19 Se Pre-move stroke check OFF M A Tool radius compensation YA Shaping OFF Workpiece setup error correction G54.4 Dynamic offsetting G54.2 User macro modal call OFF G67 3-D coordinate conversion OFF G69 Hole-machining fixed cycle OFF G80 G93 G20/G21 Feed per minute (asynchronous) G94 G23 Feed per revolution (synchronous) G95 G40/G41/G42 Constant cutting speed control OFF G97 G40.1 Initial point level return in hole-machining fixed cycles G98 R-point level return in hole-machining fixed cycles G99 A G90/G91 Inverse time feed G41.2/G41.5 Tool radius compensation for five-axis machining (right) G42.2/G42.5 01 3 G54-G59, G54.1 Absolute/Incremental data input Tool radius compensation for five-axis machining (left) G109 Cross machining control axis cancellation G111 Tool tip point control G43.4/G43.5 Hob milling mode OFF G113 Head offset for five-surface machining OFF yr G49.1 Polar coordinate input OFF G15 Scaling OFF G50 Radius data input for the X-axis ON G10.9X0 Mirror image OFF G50.1 Superposition control OFF G127 Polygonal machining mode OFF G50.2 Compound fixed cycles G274-G276 op ig ht Tool length offset (c Single program multi-process control G43/G44/G49 C )2 Selection of workpiece coordinate system, Selection of additional workp. coord. system G18.1 ZA Inch/Metric data input G52.2 K ri Turning plane selection OFF G17.9 ZA Temporary cancelation of machining surface selection (for five-surface machining) K IM al N o. Programmed data setting OFF G-code Offsetting for the ram spindle OFF 34 08 C 39 O R PO R A TI O Function .A ll ri gh In case a G61.1 or G61.2 command is given under incompatible conditions or an incompatible modal command is given in the mode of G61.1 or G61.2, the SCC function remains canceled temporarily until the required conditions are satisfied (anew). Note : The combined use of G07.1 (Cylindrical interpolation) or G12.1 (Polar coordinate interpolation) with G61.1 (Geometry compensation) requires that the optional function of geometry compensation for rotational axes may be enabled by a parameter setting (F96 bit 6 = 1). The mode of G61.1 is canceled temporarily if the optional function is not provided or the named parameter is set to 0. 7-21 Serial No. 340839 7 FEED FUNCTIONS Moreover, the SCC function is canceled by the following functions (belonging to the same group of modal G-codes as G61.1 and G61.2): Exact stop check mode (G61), Automatic corner override (G62), Tapping mode (G63), Cutting mode (G64). Remarks 1. With the SCC function enabled, always give the G61.1 and G61.2 command in a singlecommand block. If a block of G61.1 and G61.2 should contain any other G-codes or an M-, S-, T- or B-code, an alarm will be raised (807 ILLEGAL FORMAT). 2. The tolerable error distance may be shorter than the specified value in actual operation if the feed hold function is applied during automatic operation with the SCC function being selected. 3. The SCC function is implicitly canceled in the mode of single-block operation. 4. The SCC function is ignored during tool path check. 5. The tolerable error distance specified in the main program will remain intact in a subprogram, indeed, but will be canceled for a new main program to be executed continuously by the program-chaining function. 6. A considerably low rate of feed may result in the tolerable error distance being reduced in actual operation. 7. An excessively large setting of the tolerable error distance may implicitly be reduced in actual operation. ri ZA Description Se Parameter K Related parameters al 6. N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 5. Setting range Setting unit For Smooth Corner Control function: Tolerable error distance 0 to 999999 0.0001 mm or 0.00001 in F271 For Smooth Corner Control function: Circular-motion speed limit coefficient 0 to 500 % F272 For Smooth Corner Control function: Circular-motion speed limit coefficient for high-speed smoothing control (applied to a curve approximated with micro linear segments in the mode of G00, G02 or G03) 0 to 500 % F273 For Smooth Corner Control function: Cancel angle 0 to 90 ° For Smooth Corner Control function: Circular-motion speed limit coefficient for high-speed smoothing control (applied to a curve approximated with micro linear segments in the mode of G01) 0 to 500 % (c )2 01 3 YA M A ZA K IM A F270 C op yr ig ht F281 7-22 Serial No. 340839 FEED FUNCTIONS 7. 7 SCC function in relationship to SMC (Smooth Machining Configuration) Smooth Machining Configuration refers to a function which allows the optimum sets of relevant parameters for the type of machining and workpiece (SMC data) to be prepared beforehand and to be selected as required in the flow of automatic operation. The tolerable error distance for the SCC function can be specified by choosing an SMC data set in the programming format shown below. A. Programming format G61.1 Pp; G61.2 Pp; er ve d . p: SMC data No. Setting range: 0 to 41 Tolerable error distance (argument R) and SMC data (argument P) re s B. N .A ll ri gh ts The tolerable error distance (for the SCC function) selected through argument P (for choosing an SMC data set) can temporarily be replaced with the value specified explicitly by argument R. Under the modal condition of an SMC data selection, however, omission of argument R always retrieves the tolerable error distance according to the selected SMC data, instead of the default value for argument R (provided in parameter F270). Use of F270 as tolerable error distance ................ Use of 0.2 as tolerable error distance ................ Use of the value according to the SMC data No. 1 ................ Use of 0.3 as tolerable error distance o. ................ K A Use of the value according to the SMC data No. 1 K IM ................ ZA Se ri al N G61.1 G61.1R0.2 G61.1P1 G61.1R0.3 G61.1 M30 34 08 C 39 O R PO R A TI O <Example of programming for changing the tolerable error distance> C op yr ig ht (c )2 01 3 YA M A ZA See the corresponding section in PART 3 of the Operating Manual for the procedures for registering and editing the SMC data. 7-23 Serial No. 340839 7 FEED FUNCTIONS 7-13 Inverse Time Feed: G93 1. Function and purpose gh ts re s er ve d . When tool radius compensation is performed for a smooth linear or circular small-line-segment command, differences will occur between the contour defined in the program and that existing after tool radius compensation. The feed commands with G94 and G95 only apply for the tool path existing after compensation, and the tool speed at the point of cutting (that is, along the programmed contour), therefore, will not be kept constant so that the resulting speed fluctuations will cause seams on the surface machined. Setting of an Inverse Time Feed command code makes constant the processing time for the corresponding block of the machining program, and thus provides control to ensure a constant machining feed rate at the point of cutting (along the programmed contour). Setting of command code G93 specifies the inverse time assignment mode. In G93 mode, the reciprocal of the machining time for the block of cutting command code G01, G02 or G03 is to be assigned using an F-code. Data that can be assigned with address F is from 0.0001 to 99999.9999. For linear interpolation (G01) [Speed] : mm/min (for metric system) or in/min (for inch system) [Distance] : mm (for metric system) or in (for inch system) 34 08 C 39 O R PO R A TI O [Speed] [Distance] F-code value = N .A ll ri The feed rate for the corresponding block is calculated (by NC) from the commanded length of the program block and the value of the F-code. [Speed] [Arc radius] Programming formats ZA : mm/min (for metric system) or in/min (for inch system) A [Arc radius] : mm (for metric system) or in (for inch system) G93 G01 Xx1 Yy1 Ff1 A Linear interpolation: [Speed] ZA 2. K IM Se ri al F-code value = K N o. For circular interpolation (G02 or G03) YA M Circular interpolation: G93 G02 Xx1 Yy1 Rr1 Ff1 Precautions )2 3. 01 3 (Code G03 can be used, instead of G02, and code I, J and/or K instead of R.) ht (c Code G93, which belongs to the same G-code group as that of G94 (feed per minute) and G95 (feed per revolution), is a modal G-code. C op yr ig In G93 mode, since F codes are not handled as modal codes, they must be set for each block. The absence of F-code results in alarm 816 FEEDRATE ZERO. Setting of F0 during G93 mode results in alarm 816 FEEDRATE ZERO. For a corner insertion block during tool radius compensation, the F-code value in the previous block is regarded as the inverse time command value. A modal F-code must be set if the G93 mode is changed over to G94 or G95. 7-24 Serial No. 340839 FEED FUNCTIONS 4. 7 Description of alarms No. Message 941 Description G93 MODE An illegal G-code* has been set during G93 mode. * Illegal G-codes are: G31 Threading G7, G8, G2 Fixed cycle Sample program Y G94 G40 M02 er ve d re s ts F500 X 200 Y-200.R100. Y-400.R100. Y-600.R100. X0 Y0 Y80. X-80. F5 F5 F5 F500 gh G02 G03 G02 G01 Y80. Y0 D11 –200 ri G93 X-80. X0 X200. .A ll G00 G41 200 N G90 G01 34 08 C 39 O R PO R A TI O N01 N02 N03 N04 N05 N06 N07 N08 N09 N10 200 . 5. Skip G32, G33 –400 200 K ZA A ZA K IM Se ri al N o. –600 D11 = 10 mm D11 = 20 mm M A MEP053 C op yr ig ht (c )2 01 3 YA In this example, set data as follows if the machining speed in the circular-interpolation blocks is to be made equal to 500 mm/min that is specified for the linear-interpolation block of G01: [Speed] 500 F-code value = = [Arc radius] 100 7-25 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 7 FEED FUNCTIONS 7-26 E Serial No. 340839 DWELL FUNCTIONS 8 8 DWELL FUNCTIONS The start of execution of the next block can be delayed using a G04 command. Dwell Command in Time: (G94) G04 1. Function and purpose Setting command G04 in the feed-per-second mode (command G94) delays the start of execution of the next block for the specified time. Programming format er ve d . 2. re s G94 G04 X_; or G94 G04 P_; Detailed description The setting range for dwell time is as follows: 34 08 C 39 O R PO R A TI O N 1. .A ll 3. ri gh ts Data must be set in 0.001 seconds. For address P, the decimal point is not available. Setting a decimal point will cause an alarm. Unit of data setting Range for address X Range for address P 0.001 mm 0.001 to 99999.999 (s) 1 to 99999999 (× 0.001 s) 0.0001 inches 0.001 to 99999.999 (s) 1 to 99999999 (× 0.001 s) The count for the dwell command which is preceded by a block with cutting-feed command is not started until the movement of the preceding block has been brought to a complete stop. K ZA A K IM Se ri al N o. 2. A ZA Cutting command in the preceding block YA M Next block )2 01 3 Dwell command ht (c Dwell time TEP053 ig yr op C 8-1 3. If the dwell command is given in one block together with an M-, S-, T- or B-code, the dwell count and the execution of the respective code will be started at the same time. If the bit 2 of parameter F92 is set to 1, dwell command value is always processed in time specification irrespective of G94 and G95 modes. 8-1 Serial No. 340839 8 DWELL FUNCTIONS 4. Sample programs - When data is to be set in 0.01 mm, 0.001 mm or 0.0001 inches: G04 X 500 ;.......................................... Dwell time = 0.5 s G04 X 5000 ;........................................ Dwell time = 5.0 s G04 X 5. ;............................................. Dwell time = 5.0 s G04 P 5000 ;........................................ Dwell time = 5.0 s G04 P 12.345 ; .................................... Alarm - When data is to be set in 0.0001 inches and dwell time is included before G04: X5. G04 ;.............................................. Dwell time = 50 s (Equivalent to X50000G04.) er ve d Function and purpose re s 1. . Dwell Command in Number of Revolutions: (G95) G04 Programming format .A ll 2. ri gh ts Setting command G04 in the feed-per-revolution mode (command G95) suspends the start of execution of the next block until the spindle has rotated the specified number of revolutions. 34 08 C 39 O R PO R A TI O N G95 G04 X_ ; or G95 G04 P_ ; Data must be set in 0.001 revolutions. For address P, the decimal point is not available. Setting a decimal point will cause an alarm. N o. Detailed description Se 0.0001 inches Range for address P 1 to 99999999 (× 0.001 rev) 1 to 99999999 (× 0.001 rev) A 0.001 to 99999.999 (rev) 0.001 to 99999.999 (rev) The count for the dwell command which is preceded by a block with cutting-feed command is not started until the movement of the preceding block has been brought to a complete stop. Cut command in the preceding block ht (c )2 01 3 YA M A ZA 2. ZA Range for address X ri Unit of data setting 0.001 mm K The setting range for number of dwell revolutions is as follows: al 1. K IM 3. op yr ig Next block Dwell command C 8-2 Revolutions for dwell (12.345 rev) TEP053 If the dwell command is given in one block together with an M-, S-, T- or B-code, the dwell count and the execution of the respective code will be started at the same time. 3. The dwell function is also valid during the machine lock mode. 8-2 Serial No. 340839 DWELL FUNCTIONS 8 During rest of the spindle, dwell count is also halted. When the spindle restarts rotating, dwell count will also restart. 5. If the bit 2 of parameter F92 is set to 1, dwell command value is alway processed in time specification. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 4. 8-3 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 8 DWELL FUNCTIONS 8-4 E Serial No. 340839 MISCELLANEOUS FUNCTIONS 9 MISCELLANEOUS FUNCTIONS 9-1 Miscellaneous Functions (M3-Digit) 9 Miscellaneous functions, which are also referred to as M-code functions, give spindle forward/ backward rotation and stop commands, coolant on/off commands, and other auxiliary commands to the NC machine. For the NC unit, these functions must be selected using M3-digit data (three-digit data preceded by address M). Up to four sets of M3-digit data can be included in one block. er ve d If five or more sets of M3-digit data are set, only the last four sets will become valid. . Example : G00 Xx1 Mm1 Mm2 Mm3 Mm4; ts re s Refer to the separate Parameter List/Alarm List/M-code List for more specific relationships between available data and functions. 34 08 C 39 O R PO R A TI O N .A ll ri gh For M-codes M00, M01, M02, M30, M998 and M999, the next block of data is not read into the input buffer since pre-reading is disabled automatically. The M-codes can be included in any block that contains other command codes. If, however, the M-codes are included in a block that contains move commands, then the execution priority will be either the M-code functions are executed after completion of movement, or the M-code functions are executed together with movement. K IM A ZA Programmed Stop: M00 When this M-code is read, the tape reader will stop reading subsequent block. Whether the machine function such as spindle rotation and coolant will also stop depends on the Se 1. K ri al N o. It depends on the machine specifications which type of processing is applied. Processing and completion sequences are required in each case for all M commands except M98 and M99. The following lists six types of special M-code functions: M A ZA machine specifications. The machine operation is restarted by pressing the button on the operation panel. Whether resetting can be initiated by M00 or not also depends on the machine specifications. Optional Stop: M01 When the M01 code is read with the [OPTIONAL STOP] menu function set to ON, the tape reader will stop operating to perform the same function as M00. The M01 command will be ignored if the [OPTIONAL STOP] menu function is set to OFF. (c )2 01 3 YA 2. C op yr ig ht Example : N10 G00 X1000; N11 M01; N12 G01 X2000 Z3000 F600; <[OPTIONAL STOP] menu function status and operation> If the menu function is on, operation stops at N11. If the menu function is off, operation does not stop at N11 and N12 is executed. 3. Program End: M02 or M30 Usually, the program end command is given in the final block of machining program. Use this command mainly for reading data back to the head of the program during memory operation, or rewinding the tape in the tape operation mode (use an M30 command to rewind the tape). The NC unit is automatically reset after tape rewinding and execution of other command codes included in that block. 9-1 Serial No. 340839 9 MISCELLANEOUS FUNCTIONS Automatic resetting by this command cancels both modal commands and offsetting data, but the designated-position display counter is not cleared to zero. The NC unit will stop operating when tape rewinding is completed (the automatic run mode lamp goes out). To restart the NC unit, the button must be pressed. Beware that if, during the restart of the NC unit following completion of M02 or M30 execution, the first movement command has been set in a coordinate word only, the valid mode will be the interpolation mode existing when the program ended. It is recommended, therefore, that the first movement command be given with an appropriate G-code. Subprogram Call/End: M98, M99 Use M98 or M99 to branch the control into a subprogram or to recall it back to the calling program. As M99 and M99 are internaly processed by the NC M-code signals ans strobe signals are not output. er ve d . 4. ri gh ts re s <Internal processing by the NC unit when M00, M01, M02 or M30 is used> After M00, M01, M02 or M30 has been read, data pre-reading is automatically aborted. Other tape rewinding operations and the initialization of modals by resetting differ according to the machine specification. .A ll Note 1: M00, M01, M02 and M30 output independent signals, which will be cancelled by No. 2 Miscellaneous Functions (A8/B8/C8-Digit) N o. The No. 2 miscellaneous functions are used for positioning an index table. For the NC unit, these functions must be designated using an eight-digit value (form 0 to 99999999) preceded by address A, B or C. K ZA Se ri al The address assigned to No. 2 miscellaneous functions depends upon the setting of parameter K56. K IM A A, B or C codes can be included in any block that contains other command codes. If, however, the A, B or C codes can be included in a block that contains move commands, then the execution priority will be either ZA the A, B or C code functions are performed after completion of movement, or M A the A, B or C code functions are performed together with movement. )2 01 3 YA It depends on the machine specifications which type of processing is applied. Processing and completion sequences are required in each case for all No. 2 miscellaneous functions. ht (c Address combinations are shown below. The same address for both additional axis and the No. 2 miscellaneous functions cannot be used. ig Additional axis B C A × B × C × yr A op No. 2 miscellaneous functions C 9-2 34 08 C 39 O R PO R A TI O N pressing the key. Note 2: Tape rewinding is performed only when the tape reader has a rewinding function. Note : When A has been designated as the No. 2 miscellaneous function address, linear angle commands cannot be used. 9-2 Serial No. 340839 MISCELLANEOUS FUNCTIONS Output of Auxiliary Function Codes during Axis Movement: G117/G118 1. Function and purpose Miscellaneous function (M-code), spindle function (S-code), tool function (T-code) for specifying the next tool, and No. 2 miscellaneous function (A-, B- or C-code) ― hereinafter, these are collectively referred to as “auxiliary functions” ― can be output during axis movement. 2. Programing format G117 Xx Yy Zz Aa Cc Mm Ss Tt Bb; er ve d . The position for outputting the desired auxiliary functions is to be specified with reference to the programming coordinate system. re s x, y, z, a, c: Programming coordinates for specifying the position at which to output the auxiliary functions. The position can be specified with absolute as well as incremental data. gh ts The positional specification can be made for all the NC-controlled axes. .A ll ri G118 Xx Yy Zz Aa Cc Mm Ss Tt Bb; N The position for outputting the desired auxiliary functions is to be specified in distances from the desired position to the ending point of axis movement. 34 08 C 39 O R PO R A TI O x, y, z, a, c: Distances from the output position to the ending point of axis movement. The positional specification can be made for all the NC-controlled axes. A Ending point Position for outputting auxiliary functions )2 01 3 YA M A ZA K IM Se ZA al Detailed description ri 3. K N o. Remark : The programming format shown above refers to a machine which has the controlled rotational axes A and C and for which address B is to be used for No. 2 miscellaneous function. Starting point ht (c D747PB0067 Commands of G117 or G118 must be given in a single-command block. yr ig 1. op 2. C 9-3 9 The output position must lie on each axis within the range from the starting to the ending points of the axis movement command concerned. 3. Up to four miscellaneous functions (M-codes) can be specified in a block of G117 or G118 together with a single spindle function (S-code), tool function (T-code) for specifying the next tool, and No. 2 miscellaneous function (A-, B- or C-code). 4. The axis movement is continued up to the ending point without stopping at the specified output position. 5. The execution of the block next to the axis motion block does not start at the ending point until all the specified auxiliary functions are completed. 9-3 Serial No. 340839 9 MISCELLANEOUS FUNCTIONS 4. Programming examples Example 1: Commands of G117 and G118 with absolute data Y 100 M03 (Spindle start Fwd.) 50 25 er ve d . M05 (Spindle stop) X 100 200 re s 50 ts D747PB0068 gh G90 G00 X0. Y0.; ............. Axis movement. N G01 X200.F100; ................. Axis movement. .A ll ri G117 X50. Y50. M03; ...... Specification of the position at which to output M03. G00 X100.Y100.; ............... Axis movement. *1 34 08 C 39 O R PO R A TI O G118 X50.Y25.M05; ........... Specification of the position at which to output M05. G00 X50.Y25; ...................... Axis movement. *2 M30; According to the preceding command of G117, output of M03 occurs as soon as the position of (x, y) = (50, 50) is passed during the axis movement. *2: According to the preceding command of G118, output of M05 occurs as soon as the position of (x, y) = (100, 50) is passed during the axis movement. K ZA A Se ri al N o. *1: M03 (Spindle start Fwd.) 50 25 ig ht (c )2 01 3 YA M A 100 ZA Y K IM Example 2: Command of G117 with incremental data X yr 25 50 100 C op D747PB0069 G90 G00 X0. Y0.; G91 X25.Y25.; ................... Axis movement. G117 X25. Y25. M03; ...... Specification of the position at which to output M03. G00 X75.Y75.; ................... Axis movement. * M30; * According to the preceding command of G117, output of M03 occurs as soon as the position of (x, y) = (50, 50) is passed during the axis movement. 9-4 Serial No. 340839 MISCELLANEOUS FUNCTIONS 9 Example 3: Command of G117 between axis movement commands with absolute and incremental data Y 100 M03 (Spindle start Fwd.) 50 er ve d . 25 X 50 25 100 re s D747PB0069 gh ts G90 G00 X0. Y0.; ri G00 X25. Y25.; ................. Axis movement. .A ll G117 X50. Y50. M03; ...... Specification of the position at which to output M03. G91 G00 X75.Y75.; ........... Axis movement. * 34 08 C 39 O R PO R A TI O * N M30; According to the preceding command of G117, output of M03 occurs as soon as the position of (x, y) = (50, 50) is passed during the axis movement. A M04 (Spindle start Rev.) K IM Se 75 ri 100 ZA al Y K N o. Example 4: Successive commands of G117/G118 M05 (Spindle stop) ZA 50 YA M A M03 (Spindle start Fwd.) 01 3 X 100 150 200 )2 D747PB0070 ht (c G90 G00 X0. Y0.; ....................... Axis movement. C op yr ig G117 X100. Y50. M05; .............. Specification of the position at which to output M05. G117 X150. Y75. M04; .............. Specification of the position at which to output M04. G01 X200. Y100. F100 M03; ... Axis movement (Output of M03 at the beginning). * M30; * According to the first and second command of G117, output of M05 and M04 occurs, respectively, as soon as the position of (x, y) = (100, 50) and (150, 75) is passed during the axis movement. 9-5 Serial No. 340839 9 MISCELLANEOUS FUNCTIONS Remarks 1. In a block of G118, do not enter a negative value as the distance from the position for outputting the auxiliary functions to the ending point of axis movement; otherwise the alarm 807 ILLEGAL FORMAT is raised. 2. The alarm 807 ILLEGAL FORMAT is raised if the axis movement command following a G117/G118 block is not of linear motion (under G00 or G01). 3. Auxiliary functions will be output at the very beginning of executing the succeeding command of axis movement if they are entered in a block of G117/G118 without specification of their output position. 4. The alarm 807 ILLEGAL FORMAT is raised if the specified position for outputting the auxiliary functions should fall outside the range of the axis movement programmed in the succeeding block. 5. The next block to a block of G117/G118 is always processed as that of axis movement with the exception of a block of optional block skip, a block composed of comment only, or an empty block. If a move-free block of any other type, e.g. a block of sequence number only, as shown in the sample program below, should follow a G117/G118 block, then the starting and ending points of the ‘axis movement command’ are judged to be at one and the same position. The alarm 807 ILLEGAL FORMAT is raised, therefore, in such a case if the starting point of the next command of axis movement should differ from the specified position for outputting the auxiliary functions. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 5. Y M03 (Spindle start Fwd) K ZA A K IM Se ri al N o. 100 ZA X 100 200 YA M A D747PB0071 ig ht (c )2 01 3 G90 G00 X0. Y0.; G00 X100.Y100.; ......................... Axis movement. G117 X100. Y100. M03; ............ Specification of the position at which to output M03. N1 G01 X200.F100; M30; C op yr 6. 7. Do not fail to give an axis movement command within the succeeding four blocks (inclusive of a block of optional block skip, a block composed of comment only, and an empty block); otherwise the alarm 807 ILLEGAL FORMAT is raised. Do not give a command of G117/G118 in more than two blocks in succession; otherwise the alarm 807 ILLEGAL FORMAT is raised. 9-6 Serial No. 340839 MISCELLANEOUS FUNCTIONS 8. 9 Precautions for giving two commands of G117/G118 in succession The output of the auxiliary functions specified in the second block is suspended at the specified output position if those specified in the first block have not yet been completed. The output of auxiliary functions occurs in order of the command blocks if the specified output position is the same in both blocks. The alarm 807 ILLEGAL FORMAT is raised if the output position specified in the second block should lie before that of the first block on the path of the axis movement. If the specified output position should not lie on the path of the axis movement concerned, then the output does not occur until the specified position has been reached on all the specified axes. er ve d . 9. ts re s Y .A ll ri gh Specified output position 34 08 C 39 O R PO R A TI O N Actual output position X D747PB0072 K ZA A Broken line: Programmed path Solid line: Interpolated path Actual output position YA M A ZA Y K IM Se ri al N o. 10. If the specified path of axis movement is modified, for example, by an interpolation function, then, on the linear segment between the starting and ending point of the axis movement, a point is first generated by calculation at which the specified position is reached on all the axes and, finally, with that point as reference, a similar point on the interpolated path is determined as the actual position of outputting auxiliary functions. Generated output position ht (c )2 01 3 Specified output position ig X C op yr D747PB0073 9-7 Serial No. 340839 9 MISCELLANEOUS FUNCTIONS 6. Relationship to other functions A. Miscellaneous functions unavailable in a G117/G118 block As tabulated below, it is not allowed to specify those miscellaneous functions in a G117/G118 block which interfere with the axis movement or cause an independent axis movement to be executed. Nor can be used auxiliary functions for calling a macroprogram. <Examples of unavailable miscellaneous functions> Code Function Code Function Programmed stop M98 Subprogram call M01 Optional stop M99 Subprogram end M02 Program end M153 Geometry compensation ON M06 Tool change M154 Geometry compensation OFF M30 Reset and rewind M197 Reset M96 Branching mode ON M998, M999 Program chain M97 Branching mode OFF gh ts re s er ve d . M00 ri Use of an unavailable function will cause the alarm 807 ILLEGAL FORMAT to be raised. N G-code G00 Linear interpolation G01 Dwell G04 High-speed machining mode OFF G-code Multi-step skip 3 G31.3 Hole machining pattern cycle (on a circle) G34.1 Hole machining pattern cycle (on a line) G35 G05P0 Hole machining pattern cycle (on an arc) G36 Virtual-axis interpolation G07 Automatic tool length measurement G37 Cylindrical interpolation G07.1 Hole machining pattern cycle (on a grid) G37.1 Exact-stop check G09 Vector selection for tool radius compens. G38 Corner arc for tool radius compensation G39 Nose/Tool radius compensation OFF G40 Polar coordinate interpolation ON A Shaping OFF G40.1 G11 Nose/Tool radius compensation (left) G41 G12.1 Shaping (to the left) ON G41.1 G13.1 Tool radius compensation for five-axis machining (left) G41.2 G41.4 G41.5 Nose/Tool radius compensation (right) G42 Shaping (to the right) ON G42.1 Tool radius compensation for five-axis machining (right) G42.2 G42.4 G42.5 M G15 G17 G17.9 Selection of ZX-plane G18 Milling mode selection G18.1 Turning plane selection (VARIAXIS) G18.2-G18.4 Turning plane selection OFF G18.9 Tool length offset (+) G43 yr ig ht (c 01 3 Temporary cancelation of machining surface selection (for 5-surfc. maching.) )2 Selection of XY-plane YA Polar coordinate input OFF A Polar coordinate interpolation OFF ZA Data setting mode OFF G10.9 K IM Selection between diameter and radius data input K G10 Se Data setting mode ON ZA ri al o. Positioning Function N Function .A ll G-codes available after a G117/G118 block 34 08 C 39 O R PO R A TI O B. G19 Tool length offset in tool-axis direction G43.1 Inch command G20 Tool tip point control (Type 1) ON G43.4 Metric command G21 Tool tip point control (Type 2) ON G43.5 Pre-move stroke check ON G22 Tool length offset (–) G44 Pre-move stroke check OFF G23 Tool position offset, extension G45 Reference point check G27 Tool position offset, reduction G46 Reference point return G28 Tool position offset, double extension G47 Return from reference point G29 Tool position offset, double reduction G48 Return to 2., 3. and 4. reference points G30 Tool position offset OFF G49 Skip function G31 Head offset for five-surfc. machining OFF G49.1 Multi-step skip 1 G31.1 Scaling OFF G50 Multi-step skip 2 G31.2 Mirror image by G-code OFF G50.1 C op Selection of YZ-plane 9-8 Serial No. 340839 MISCELLANEOUS FUNCTIONS Function G-code G50.2 Fixed cycle (Pecking) G82.2 Scaling ON G51 Fixed cycle (Deep-hole drilling) G83 Mirror image by G-code ON G51.1 Fixed cycle (Tapping) G84 Polygonal machining mode ON G51.2 Fixed cycle (Synchronous tapping) G84.2 Local coordinate system setting G52 Fix. cycle (Synchronous reverse tapping) G84.3 Ram spindle offset OFF G52.2 Fixed cycle (Reaming) G85 Machine coordinate system selection G53 Fixed cycle (Boring 5) G86 Tool-axis direction control G53.1 Fixed cycle (Back boring) G87 Workpiece coordinate system 1 G54 Fixed cycle (Boring 6) G88 Additional workpiece coordinate systems G54.1 Fixed cycle (Boring 7) G89 Selection of fixture offset G54.2 Absolute data input G90 Workpiece setup error correction G54.4 Incremental data input G91 Workpiece coordinate system 2 G55 Workpiece coordinate system 3 G56 Coordinate system setting/Spindle speed range setting Workpiece coordinate system 4 G57 Workpiece coordinate system rotation Workpiece coordinate system 5 G58 Inverse time feed Workpiece coordinate system 6 G59 Feed per minute (asynchronous) One-way positioning G60 Feed per revolution (synchronous) G95 Exact stop mode G61 Constant surface speed control ON G96 High-accuracy mode (Geometry comp.) G61.1 Constant surface speed control OFF G97 Modal spline interpolation G61.2 Initial point level return in fixed cycles Automatic corner override G62 R-point level return in fixed cycles G99 Tapping mode G63 Single program multi-process control G109 Cutting mode G64 Cross machining control axis selection G110/G110.1 User macro single call G65 Cross machining control axis cancellation G111 User macro modal call A G66 M, S, T, B output to opposite system G112 User macro modal call B Hob milling mode OFF G113 Hob milling mode ON G114.3 Tornado cycle G130 Measurement macro G136 G68.2 Compensation macro G137 Inclined-plane machining (by specifying tool-axis direction) ON G68.3 Finishing cycle G270 Longitudinal roughing cycle G271 Incremental coordinate system establishment for inclined-plane machining G68.4 Transverse roughing cycle G272 Contour-parallel roughing cycle G273 G68 K K IM A Se 3-D coordinate conversion ON G68 ZA G67 Programmed coordinate rotation ON ri User macro modal call OFF YA M A ZA Inclined-plane machining ON er ve d G92 re s ts gh ri N 34 08 C 39 O R PO R A TI O o. al G66.1 G92.5 G93 G94 G98 Programmed coordinate rotation OFF G69 Longitudinal cut-off cycle G274 3-D coordinate conversion OFF G69 Transverse cut-off cycle G275 Inclined-plane machining OFF 01 3 . Polygonal machining mode OFF .A ll G-code N Function 9 Compound thread-cutting cycle G276 G71.1 Face driling cycle G283 Fixed cycle (Chamfering cutter 2, CCW) G72.1 Face tapping cycle G284 Fix. cycle (High-speed deep-hole drilling) G73 Face synchronous tapping cycle G284.2 Fixed cycle (Reverse tapping) G74 Face boring cycle G285 Outside driling cycle G287 yr ig ht (c )2 G69 Fixed cycle (Chamfering cutter 1, CW) G75 Fixed cycle (Boring 2) G76 Outside tapping cycle G288 Fixed cycle (Back spot facing) G77 Outside synchronous tapping cycle G288.2 Fixed cycle (Boring 3) G78 Outside boring cycle G289 Fixed cycle (Boring 4) G79 Fix cycle A (Longitudinal turning cycle) G290 Fixed cycle OFF G80 Threading cycle G292 Fixed cycle (Spot drilling) G81 Fix cycle B (Transverse turning cycle) G294 Fixed cycle (Drilling) G82 C op Fixed cycle (Boring 1) 9-9 Serial No. 340839 9 MISCELLANEOUS FUNCTIONS C. Modes in which a G117/G118 command can be given G-code Function G-code Nose/Tool radius compensation (right) G42 Linear interpolation G01 Shaping (to the right) ON G42.1 Dwell G04 High-speed machining mode OFF G05P0 Tool radius compensation for five-axis machining (right) Fine spline interpolation G06.1 G42.2 G42.4 G42.5 NURBS interpolation G06.2 Tool length offset (+) G43 Virtual-axis interpolation G07 Tool length offset in tool-axis direction G43.1 Cylindrical interpolation G07.1 Tool tip point control (Type 1) ON G43.4 Exact-stop check G09 Tool tip point control (Type 2) ON G43.5 Data setting mode ON G10 Tool length offset (–) G44 Selection between diameter and radius data input G10.9 Tool position offset, extension Data setting mode OFF G11 Tool position offset, double extension Polar coordinate interpolation ON G12.1 Tool position offset, double reduction G48 Polar coordinate interpolation OFF G13.1 Head offset for five-surfc. machining OFF Polar coordinate input OFF G15 Scaling OFF Selection of XY-plane G17 Scaling ON Temporary cancelation of machining surface selection (for 5-surfc. maching.) G17.9 Mirror image by G-code ON Selection of ZX-plane G18 Milling mode selection G18.1 Turning plane selection (VARIAXIS) er ve d . G00 re s Function Positioning G45 G46 G47 G49.1 G50 G51 G51.1 Local coordinate system setting G52 Ram spindle offset OFF G52.2 G18.2-G18.4 Machine coordinate system selection G53 Turning plane selection OFF G18.9 Tool-axis direction control G53.1 Selection of YZ-plane G19 Workpiece coordinate system 1 G54 Inch command Additional workpiece coordinate systems G54.1 Selection of fixture offset G54.2 Workpiece setup error correction G54.4 Workpiece coordinate system 2 G55 G27 Workpiece coordinate system 3 G56 G28 Workpiece coordinate system 4 G57 G29 Workpiece coordinate system 5 G58 G30 Workpiece coordinate system 6 G59 G31 One-way positioning G60 G31.1 Exact stop mode G61 G31.2 High-accuracy mode (Geometry comp.) G61.1 Reference point check Reference point return ZA Return from reference point M A Return to 2., 3. and 4. reference points YA Skip function Multi-step skip 3 Modal spline interpolation G61.2 G32/G33 Automatic corner override G62 Variable lead thread cutting G34 Tapping mode G63 Hole machining pattern cycle (on a circle) G34.1 Cutting mode G64 Hole machining pattern cycle (on a line) G35 User macro single call G65 G36 Programmed coordinate rotation ON G68 Automatic tool length measurement G37 3-D coordinate conversion ON G68 Hole machining pattern cycle (on a grid) G37.1 Inclined-plane machining ON G68.2 Vector selection for tool radius compens. G38 G68.3 Corner arc for tool radius compensation G39 Inclined-plane machining (by specifying tool-axis direction) ON Nose/Tool radius compensation OFF G40 G68.4 Shaping OFF G40.1 Incremental coordinate system establishment for inclined-plane machining Nose/Tool radius compensation (left) G41 Programmed coordinate rotation OFF G69 Shaping (to the left) ON G41.1 3-D coordinate conversion OFF G69 Tool radius compensation for five-axis machining (left) G41.2 G41.4 G41.5 Fixed cycle (Chamfering cutter 1, CW) G71.1 Fixed cycle (Chamfering cutter 2, CCW) G72.1 Fix. cycle (High-speed deep-hole drilling) G73 ig ht (c )2 G31.3 Constant lead threading (straight, taper) yr Multi-step skip 2 01 3 Multi-step skip 1 G23 K IM Pre-move stroke check OFF G22 A Se Pre-move stroke check ON ZA G21 ri Metric command K o. G20 34 08 C 39 O R PO R A TI O G51.2 al Polygonal machining mode ON N N .A ll ri gh ts Tool position offset, reduction C op Hole machining pattern cycle (on an arc) 9-10 Serial No. 340839 MISCELLANEOUS FUNCTIONS G-code Function G-code G74 Initial point level return in fixed cycles Fixed cycle (Boring 1) G75 R-point level return in fixed cycles G99 Fixed cycle (Boring 2) G76 Single program multi-process control G109 Fixed cycle (Back spot facing) G77 Cross machining control axis selection G110/G110.1 Fixed cycle (Boring 3) G78 Cross machining control axis cancellation G111 Fixed cycle (Boring 4) G79 M, S, T, B output to opposite system G112 Fixed cycle OFF G80 Hob milling mode OFF G113 Fixed cycle (Spot drilling) G81 Hob milling mode ON G114.3 Fixed cycle (Drilling) G82 Tornado cycle G130 Fixed cycle (Pecking) G82.2 Measurement macro G136 Fixed cycle (Deep-hole drilling) G83 Compensation macro G137 Fixed cycle (Tapping) G84 Finishing cycle G270 Fixed cycle (Synchronous tapping) G84.2 Longitudinal roughing cycle Fix. cycle (Synchronous reverse tapping) G84.3 Transverse roughing cycle Fixed cycle (Reaming) G85 Contour-parallel roughing cycle Fixed cycle (Boring 5) G86 Longitudinal cut-off cycle Fixed cycle (Back boring) G87 Transverse cut-off cycle Fixed cycle (Boring 6) G88 Compound thread-cutting cycle Fixed cycle (Boring 7) G89 Face driling cycle Absolute data input G90 Face tapping cycle Incremental data input G91 Face synchronous tapping cycle G284.2 Coordinate system setting/Spindle speed range setting G92 Face boring cycle G285 Outside driling cycle G287 Workpiece coordinate system rotation G92.5 Outside tapping cycle G288 Inverse time feed G93 Outside synchronous tapping cycle G288.2 Feed per minute (asynchronous) G94 Outside boring cycle G289 Feed per revolution (synchronous) Fix cycle A (Longitudinal turning cycle) G290 Threading cycle G292 Fix cycle B (Transverse turning cycle) G294 er ve d G271 re s G272 N .A ll ri gh ts G273 34 08 C 39 O R PO R A TI O C op yr ig ht (c )2 01 3 YA M A ZA K IM A G97 ZA G96 Se Constant surface speed control OFF ri Constant surface speed control ON K o. al G95 9-11 G98 . Fixed cycle (Reverse tapping) N Function 9 G274 G275 G276 G283 G284 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 9 MISCELLANEOUS FUNCTIONS 9-12 E Serial No. 340839 SPINDLE FUNCTIONS 10 10 SPINDLE FUNCTIONS 10-1 Spindle Function 10-1-1 Binary output of spindle speed . By designating a 6-digit number at address S (as an S-code), this function enables the appropriate gear signals, voltages corresponding to the commanded spindle speed (rpm) and start signals to be output. Processing and completion sequences are required for all S commands. The analog signal specifications are given below. er ve d Output voltage .........................0 to 10V or –8 to +8V re s Resolution ...............................1/4096 (2 to the power of –12) Load conditions .......................10 kiloohms gh ts Output impedance ...................220 ohms N 34 08 C 39 O R PO R A TI O Parameters corresponding to individual gears .A ll ri If the parameters for up to 4 gear range steps are set in advance, the gear range corresponding to the S command will be selected by the NC unit and the gear signal will be output. The analog voltage is calculated in accordance with the input gear signal. Limit speed, maximum speed, gear shift speed and maximum speed during tapping. Parameters corresponding to all gears Orient speed, minimum speed K ri al N o. An S-code composed of a six-digit integral part and a three-digit decimal part can be used when the decimal point is valid for a spindle speed command. ZA A Se 10-1-2 Spindle speed command with decimal digits K IM A spindle speed command (S-code) can be given with up to the third decimal place. ZA Decimal point for spindle speed command Invalid 6 integral + 3 decimal digits 6 integral digits A Valid YA M Number of digits C op yr ig ht (c )2 01 3 It depends upon the specifications of the machine whether the decimal point is valid or invalid for spindle speed command. 10-1 Serial No. 340839 10 SPINDLE FUNCTIONS 10-2 Spindle Speed Range Setting: G92 1. Function and purpose The code G92 can be used to set the maximum and minimum spindle speeds at addresses S and Q, respectively. 2. Programming format Detailed description re s 3. er ve d s: Maximum spindle speed q: Minimum spindle speed r: Spindle for speed limitation (to be specified with 3 for the milling spindle) . G92 Ss Qq Rr; K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts For gear change between the spindle and spindle motor, four steps of gear range can be set by –1 the related parameters in steps of 1 min . In range defined by two ways, parameter setting and G92 SsQq setting, the smaller data will be used for the upper limit and the larger data for the lower limit. Do not fail to designate the spindle with argument “R3” in the G92 command block. 10-2 E Serial No. 340839 TOOL FUNCTIONS 11 11 TOOL FUNCTIONS 11-1 Tool Function (for ATC Systems) A next tool can be designated for the machine provided with ATC function by commanding T-code in the format shown below. The next tool refers to a tool used for the next machining, which can be assigned when it is currently accomodated in the magazine. The next tool in the magazine can be indexed at the ATC position beforehand by commanding the next tool, thus permitting reduced ATC time. er ve d . As for machines equipped with the function for allowing multiple sets of tool data to be registered under one tool number, use the tool ID code to select a desired data set for the particular tool. The tool ID code is not required at all for machines without the function mentioned above, or can be omitted if it concerns the tool data set registered on the first line for the tool in question. It depends upon the specifications of the machine whether or not multiple sets of tool data can be registered under one and the same tool number. gh ts re s Note : ri T .◇◇ T△△△.◇◇ M6 ; 34 08 C 39 O R PO R A TI O N .A ll : Number of the tool to be changed for ◇◇: Tool ID code △△△: Number of the tool to be used next Use two digits after the decimal point as follows to designate the tool ID code with reference to the settings on the TOOL DATA display: ID CODE w/o A B C D E F G H J K L M ◇◇ 00 01 02 03 o. <Normal tools> 05 06 07 08 09 11 12 13 Q R al S 15 16 17 18 U V W X Y Z 21 22 23 24 25 26 A B C D E F G H J K L M ◇◇ K IM A ID CODE 61 ZA <Heavy tools> T 19 K P 14 ZA N ◇◇ Se ID CODE ri N 04 63 64 65 66 67 68 69 71 72 73 Q A R S T U V W X Y Z M N P ◇◇ 74 75 76 77 78 79 81 82 83 84 85 86 01 3 YA ID CODE 62 )2 11-2 Tool Function (T3-Digit) C op yr ig ht (c Tool function is also referred to as T-code function. This function is used to select tool numbers. For our NC unit, T function allows you to select a maximum of 1000 numbers (0 to 999) using three-digit command data preceded by address T. Selection of an illegal T-code results in the alarm 294 NO TOOL SELECT (INCORRECT TNo.). Refer to the relevant manual of the machine for the actually available range of T-codes. The T-code can be given with any other commands in one block, and the T-code given together with an axis motion command is executed, depending upon the machine specifications, in one of the following two timings: The T-code is not executed till completion of the motion command, or The T-code is executed simultaneously with the motion command. 11-1 Serial No. 340839 11 TOOL FUNCTIONS 11-3 Tool Function (8-Digit T-Code) This function allows you to select a tool number (from 0 to 99999999) using eight-digit command data preceded by address T. Only one T-code can be included in a block. Set bit 4 of parameter F94 to 0 to select the group-number designation for T-code funciton, or set this bit to 1 to select the tool-number designation. 11-4 Tool Function [with Tool Identifiers] . It is also possible to use tool identifiers (TOOL IDENT settings in up to 32 characters on the TOOL DATA display) for programming Tool functions (T-codes). er ve d 11-4-1 Programming format For ATC systems gh 1. ts re s T-codes are to be programmed with tool identifiers enclosed in brackets (< and >), as shown below. .A ll ri T <> T<△△△> M6 34 08 C 39 O R PO R A TI O 2. N : Identifier of the tool to be changed for △△△: Identifier of the tool to be used next For group-number designation with 8-digit T-codes Specify tools with a tool identifier enclosed in brackets (< and >) at address T. N o. 11-4-2 Spare tool selection K ZA A K IM When F329 bit 7 = 0 Se ri al A spare tool is automatically selected if the tool specified with a tool identifier is found to have reached its life. The method of spare tool selection depends upon the setting in bit 7 of parameter F329, as follows. ZA According to the settings in F94 bit 4 and F84 bit 2, spare tool selection occurs with reference to tool names or tool group numbers. F84 bit 2 Selection by YA M A F94 bit 4 0 )2 01 3 Setting 1 0 Tool group numbers 1 Tool names 0 Tool group numbers 1 Tool names ht (c When F329 bit 7 = 1 yr ig Spare tool selection occurs with reference to tool identifiers. C op 11-4-3 Precautions Characters available for setting tool identifiers are: letters (capital and small: A to Z and a to z), numerals and symbols (“+” “–” “_” and “.”). Do not use a tool ID code setting as tool identifier; otherwise an alarm is raised (806 ILLEGAL ADDRESS). Tools of the same identifier are all regarded as spare ones, and tools are automatically selected in order with the smallest tool number (TNo.) first. Alarm 841 DESIGNATED TOOL NOT FOUND is raised if the specified tool identifier is not yet registered in the memory. 11-2 Serial No. 340839 TOOL FUNCTIONS 11 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . Alarm 807 ILLEGAL FORMAT is raised if the specified tool identifier consists of more than 32 characters (inclusive of spaces). 11-3 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 11 TOOL FUNCTIONS 11-4 E Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12 TOOL OFFSET FUNCTIONS 12-1 Tool Offset 1. Overview re s er ve d . As shown in the diagram below, three types of basic tool offset functions are available: tool position offset, tool length offset, and tool radius compensation. These three types of offset functions use offset numbers for designation of offset amount. Set the amount of offset directly using the operation panel or by applying the function of programmed parameter input. MAZATROL tool data can also be used for tool length offset or tool radius compensation operations according to the parameter setting. L2 34 08 C 39 O R PO R A TI O N .A ll ri gh ts Tool position offset L1 r L1 – r (Contraction) ZA Tool length Side view YA M A ZA K IM Se Tool length offset Reference point A ri al Plan K o. L2 + 2r (Double extension) N r Offset to the right ht (c )2 01 3 Tool radius compensaiton Offset to the left C op yr ig Plan MEP055 12-1 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 2. Selecting the amounts of tool offset The amounts of tool offset corresponding to the offset numbers must be prestored on the TOOL OFFSET display by manual data input method or programmed data setting function (G10). The mounts of tool offset can be selected using one of the following two types: A. Type A The same amount of offset will be set if identical offset numbers are selected using commands D and H. er ve d . Reference point (Dn) = an re s (Hn) = an .A ll ri gh ts a1 34 08 C 39 O R PO R A TI O B. N a2 Type B MEP056 K ZA (Hn) = bn+cn K IM Reference point A Se ri al N o. Set an H-code and D-code, respectively, to use the total sum of the geometric offset amount and the wear compensation amount for tool length offset and tool radius compensation. M 01 3 YA b1 A ZA (Dn) = dn+en d1 e1 MEP057 C op yr ig ht (c )2 c1 12-2 Serial No. 340839 TOOL OFFSET FUNCTIONS 3. 12 TOOL OFFSET display types As a data storage area for tool offsetting functions, two types of the TOOL OFFSET display are provided: Type A and Type B. A. Type Length/Radius distinguished? Geometric/Wear distinguished? A No No B Yes Yes Type A Offset amount 1 a1 2 a2 3 a3 B. ts gh ri an 34 08 C 39 O R PO R A TI O n re s Offset No. .A ll (H1) = a1 (H2) = a2 (Hn) = an N (D1) = a1, (D2) = a2, (Dn) = an, er ve d . As listed in the table below, one offset data is given for one offset number. No distinction is drawn between length, radius, geometric and wear compensation amounts. That is, one set of offset data comprises all these four factors. Type B A K ZA Tool length (H) Geometric offset YA 2 )2 3 01 3 1 (c ht Geometric offset Wear compensation b1 c1 d1 e1 b2 c2 d2 e2 b3 c3 d3 e3 bn cn dn en C op yr ig n Tool radius (D) / (Position offset) Wear compensation M Offset No. ZA K IM Se (H1) = b1 + c1, (D1) = d1 + e1 (H2) = b2 + c2, (D2) = d2 + e2 (Hn) = bn + cn, (Dn) = dn + en A ri al N o. As listed in the table below, two types of offset data can be set for one offset number. That is, different amounts of geometric offset and wear compensation can be set for each of the selected tool length and the selected tool radius. Use command H to select offset data concerning the tool length, and use command D to select offset data concerning the tool radius. 12-3 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 4. Tool offset numbers (H/D) Tool offset numbers can be selected using address H or D. Use address H to offset the selected tool length. Use address D to offset the selected tool position or the selected tool radius. Once a tool offset number has been selected, it will remain unchanged until a new H or D is used. Offset numbers can be set only once for one block. If offset numbers are set more than once for one block, only the last offset number will be used. ±84.50000 in TOOL OFFSET Type B Length Wear ±99.9999 mm ±9.99999 in TOOL OFFSET Type B Dia. Geom. ±999.9999 mm ±84.50000 in TOOL OFFSET Type B Dia. Wear ±9.9999 mm ±0.99999 in re s ±1999.9999 mm ts TOOL OFFSET Type B Length Geom. gh ±84.50000 in ri ±1999.9999 mm .A ll TOOL OFFSET Type A N Inch 34 08 C 39 O R PO R A TI O Metric er ve d . The offset data range is as listed in the table below. Offset data for each offset number must be set beforehand on the TOOL OFFSET display. H-code with a numeric value of zero (H0) cancels the mode of tool length offset if bit 1 of parameter F170 is set to “1.” This does not apply when F170 bit 1 = 0. o. The tool offset number (H- or D-code) cannot be made effective if it is not designated in the corresponding offset mode. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N Note : 12-4 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-2 Tool Length Offset/Cancellation: G43, G44, or T-Code/G49 1. Function and purpose Commands G43 and G44 allow the ending point of move commands to be shifted through the previously set offset amount for each axis. Any deviations between programmed tool size and actual length or radius can be set as offset data using these commands to make the program more flexible. 2. Programming format er ve d Detailed description re s 3. . G43 Zz Hh .......... Tool length offset + G44 Zz Hh .......... Tool length offset – G49 Zz ................ Cancellation of tool length offset .A ll Z-axis motion distance ±z + {±h1 – (±h0)} Positive-direction offset by length offset amount G44Z±zHh1 ±z + {±h1 – (±h0)} Negative-direction offset by length offset amount G49Z±z ±z – (±h1) Cancellation of the offset amount N G43Z±zHh1 34 08 C 39 O R PO R A TI O 1. ri gh ts The following represents the relationship between the programming format and the stroke of movement after offsetting. h1: BA62 + Value of offset No. h1 h0: Offset amount existing before the G43 or G44 block K ZA G80 YA M G94 G00 G40 G28 Z0 X0 T00 M06 G54 X0 Y0 Z5. H01 Z-50. F100 01 3 G90 G91 T01 G90 G43 G01 C op yr ig ht (c )2 N001 N002 N003 N004 N005 N006 A ZA For absolute data input (H01: Z = 95.) A Sample programs K IM 2. Se ri al N o. Irrespective of whether absolute or incremental programming method is used, the actual ending point coordinates are calculated by offsetting the programmed end point coordinate through the offset amount. The initial state (upon turning-on or after M02) is of G49 (tool length offset cancellation). 12-5 Serial No. 340839 12 TOOL OFFSET FUNCTIONS Supplement 1) Use bit 3 of parameter F92 to select the axes to which tool length offset is to be applied. Offsetting (by G43H or G44H) is applied to the Z-axis only and to all the three orthogonal axes (X, Y, and Z), respectively, when F92 bit 3 is set to 1 and 0. 2) Offsetting through the specified amount is always performed for a block of G43H or G44H, irrespective of whether or not an axis motion command is given in the same block. When F92 bit 3 = 0 Programming example Motion by the offset amount on the X-, Y-, and Z-axis. Motion by the offset amount on the Z-axis only. G43 Xx2 Hh2 G49 X-axis movement to the commanded position shifted by the offset amount, along with the motion on the Y- and Z-axis by the same offset amount. X-axis movement to the commanded position, along with the motion on the Z-axis by the offset amount. G43 Yy3 Hh3 G49 Y-axis movement to the commanded position shifted by the offset amount, along with the motion on the X- and Z-axis by the same offset amount. Y-axis movement to the commanded position, along with the motion on the Z-axis by the offset amount. G43 Xx4 Yy4 Zz4 Hh4 G49 Simultaneous movement on the three axes (X, Y, and Z) to the commanded position uniformly shifted by the offset amount. Simultaneous movement on the three axes (X, Y, and Z) to the commanded position that is shifted only on the Z-axis by the offset amount. er ve d re s ts gh ri .A ll N If reference point (zero point) return is performed in the offsetting mode, the mode is cancelled after completion of the returning operation. o. Programming example G43 Hh1 G28 Zz2 ZA ri al N Upon completion of return to the reference point (zero point), the offset amount is cleared. K IM A Reference point return after a Z-axis motion at the current position for clearing the offset amount. Se G43 Hh1 G49 G28 Zz2 If command G49 or H00 is executed, length offsetting will be immediately cancelled (the corresponding axis will move to clear the offset amount to zero). When using MAZATROL tool data, do not use G49 as a cancellation command code; otherwise interference with the workpiece may result since automatic cancellation moves the tool on the Z-axis in minus direction through the distance equivalent to the tool length. Use an H00 command, rather than a G49 command, if G43/G44 mode is to be cancelled temporarily. The alarm 839 ILLEGAL OFFSET No. will occur if an offset number exceeding the machine specifications is set. 6) When tool offset data and MAZATROL tool data are both validated, offsetting is executed by the sum of the two data items concerned. C op yr ig ht (c 5) )2 01 3 YA M A ZA 4) . G43 Hh1 G49 34 08 C 39 O R PO R A TI O 3) When F92 bit 3 = 1 K 3. 12-6 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-3 Tool Length Offset in Tool-Axis Direction: G43.1 (Option) 1. Function and purpose The preparatory function G43.1 refers to offsetting the tool, in whatever direction it may be inclined three-dimensionally, in the direction of its axis through the length offset amount. In the G43.1 mode the tool length offsetting is always performed in the tool-axis direction, in accordance with the motion command for a rotational axis concerned, through the relevant offset amount. Programming format Tool length offset in tool-axis direction ON . A. er ve d 2. re s G43.1 (XxYyZz) Hh h: Number of length offset amount .A ll ri gh ts - A block of G43.1 can contain movement commands for the orthogonal axes (X, Y, and Z), but those for rotational axes, any other G-code and an M-, S-, T- or B-code must not be entered in the same block; otherwise an alarm is caused. B. 34 08 C 39 O R PO R A TI O N - The argument H (for specifying the number of length offset amount) can be omitted when parameter F93 bit 3 = 1 (use of LENGTH data prepared on the TOOL DATA display for executing EIA/ISO programs). Tool length offset in tool-axis direction OFF G49 N o. - The execution of a G49 command does not cause any axis motion. K ZA A Offset amount selection K IM C. Se ri al - The cancellation command G49 must be given independently (without any other instruction codes); otherwise an alarm is caused. M A ZA The table below indicates those usage patterns [1] to [4] of the externally stored tool offset data items which are applied to the tool length offset in tool-axis direction according to the settings of the relevant parameters (F93 bit 3 and F94 bit 7). YA Data items used (Display and Data item names) 01 3 Pattern TOOL OFFSET (c TOOL DATA ig ht [2] )2 [1] C op yr [3] [4] Offset data items Parameter F94 bit 7 F93 bit 3 0 0 1 1 LENGTH Programming method G43.1 with H-code T-code + G43.1 LENGTH + LENG. No. LENGTH + LENG. CO. T-code + G43.1 with H-code TOOL DATA LENG. No. LENG. CO. 1 0 G43.1 with H-code TOOL OFFSET + TOOL DATA Offset data items + LENGTH 0 1 T-code + G43.1 with H-code 12-7 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 3. On the processing of offset amount for the axis of rotation According to the definition of the tool length there are two types of tool length offset in the direction of the tool axis as described below. Type Inclusion of offset amount for the axis of rotation Exclusion of offset amount for the axis of rotation F168 bit 2 = 0 F168 bit 2 = 1 Description Tool length is defined as a distance between the tool tip and the axis of rotation of the tool axis. This is the initial setting. Tool length is defined as a distance between the tool tip and the tool mounting edge. (The distance of the tool mounting edge [spindle nose] from the axis of rotation of the tool axis is excluded.) ri : Tool length offset amount Operation of startup 34 08 C 39 O R PO R A TI O 4. N .A ll : Tool length offset amount : Offset amount for the axis of rotation gh ts re s er ve d . Parameter The operation at the selection of the tool length offset in tool-axis direction depends upon whether or not the motion command for an orthogonal axis is given in the G43.1 block as follows: Motion commands for orthogonal axes given A ZA G90; G43.1XxYyZzHh; YA M A ZA K IM Se ri al G43.1Hh; K N o. not given Operation Z 01 3 (c )2 X No motions occur at all. (A motion by the offset amount does not occur.) A motion occurs for a point of the specified coordinates, inclusive of the amount for length offset in tool-axis direction. yr ig ht (x, y, z) Y C op - “Given” is the orthogonal-axis motion command when the G43.1 block contains even only one command for an orthogonal axis. 5. Operation of cancellation The mode of tool length offset in tool-axis direction is cancelled by a G49 command. - The execution of a G49 command does not cause any axis motion. - The cancellation command G49 must be given independently (without any other instruction codes); otherwise an alarm is caused. 12-8 Serial No. 340839 TOOL OFFSET FUNCTIONS 6. 12 Vector components for tool length offset in tool-axis direction When the axes related to rotating the tool axis are A- and C-axis: Vx = L × sin (A) × sin (C) Vy = –L × sin (A) × cos (C) Vz = L × cos (A) 2. When the axes related to rotating the tool axis are B- and C-axis: Vx = L × sin (B) × cos (C) Vy = –L × sin (B) × sin (C) Vz = L × cos (B) er ve d 1. . The orthogonal axis components of the vector for tool length offset in tool-axis direction are internally calculated as follows: X-, Y-, and Z-components of the vector for tool length offset in tool-axis direction L Amount of tool length offset : Amount of angular motion on the rotational axis K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts (A), (B), (C) : re s Vx, Vy, Vz : 12-9 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 7. Operation in the mode of tool length offset in tool-axis direction The following example shows how the path of the tool tip can be shifted as required simply by changing the offset amount for the tool length offset in tool-axis direction. Machining program X-axis N01 G29XYZBC N02 G90G54 N03 G0 B90.C0 N04 G43.1H1 N05 X85.000 Y0.000 Z0.000 N06 G1 F10000. N07 X85.000 Z0.000 B90. N08 X55.000 Z0.000 B90. N09 X54.992 Z0.960 B89. N10 X54.966 Z1.919 B88. N11 X54.925 Z2.878 B87. N12 X54.866 Z3.837 B86. N13 X54.791 Z4.794 B85. N14 X54.699 Z5.749 B84. N15 X54.590 Z6.703 B83. N16 X54.465 Z7.655 B82. N17 X54.323 Z8.604 B81. N18 X54.164 Z9.551 B80. N19 X85.000 N20 G49 M30 Offset amount enlarged Offset amount enlarged N08 (X60.Z0) N18 (X59.088, Z10.419) er ve d N18 (X54.164, Z9.551) . N08 (X55.Z0) N08 (X50.Z0) re s N18 (X49.240, Z8.682) Offset amount reduced 34 08 C 39 O R PO R A TI O N .A ll ri gh ts Offset amount reduced o. Z-axis K al N D740PB0028 YA ZA A M A ZA K IM Se ri The blocks N08 to N18 sequentially describe the points in the ZX-plane, with the Z- and X-components of the position vector, in a distance of 55 mm from the origin [(X, Z) = 0, 0)] according to the angles of rotating the tool axis on the B-axis. Now, an external change of the offset amount (for the offset number H1) allows the tool to be shifted in the direction of the tool axis through the difference in offset amount without having to rewrite the program. Enlarge and reduce the offset amount, respectively, to shift the tool away from, and in the direction of, the origin of the ZX-plane. Initial offset amount + 5 Initial offset amount – 5 X55.000, Z0.000 X60.000, Z0.000 X50.000, Z0.000 X54.992, Z0.960 X59.992, Z1.047 X49.992, Z0.873 01 3 With the initial offset amount N09 X54.966, Z1.919 X59.963, Z2.094 X49.970, Z1.745 N11 X59.918, Z3.140 X49.931, Z2.617 ht N12 X54.866, Z3.837 X59.854, Z4.185 X49.878, Z3.488 N13 X54.791, Z4.794 X59.772, Z5.229 X49.810, Z4.358 N14 X54.699, Z5.749 X59.671, Z6.272 X49.726, Z5.226 N15 X54.590, Z6.703 X59.553, Z7.312 X49.627, Z6.093 N16 X54.465, Z7.655 X59.416, Z8.350 X49.513, Z6.959 N17 X54.323, Z8.604 X59.261, Z9.386 X49.384, Z7.822 N18 X54.164, Z9.551 X59.088, Z10.419 X49.240, Z8.682 C op yr X54.925, Z2.878 ig (c N10 )2 N08 12-10 Serial No. 340839 TOOL OFFSET FUNCTIONS 8. 12 Resetting the tool length offset in tool-axis direction The tool length offset in tool-axis direction is cancelled in the following cases: - The key is pressed, - M02, M30, M998 or M999 is executed, - G49 is executed, or - A command for offset number zero (G43.1H0) is executed. 9. Compatibility with the other functions Commands available in the mode of tool length offset in tool-axis direction Function Code Function Positioning G61 Exact stop check mode G01 Linear interpolation G61.1 Geometry compensation G02 Circular interpolation (CW) (Note 1) G64 Cutting mode G03 Circular interpolation (CCW) (Note 1) G65 User macro single call G04 Dwell G90 Absolute data input G05 High-speed machining mode G91 Incremental data input G09 Exact-stop check G93 Inverse time feed G17 XY-plane selection G94 Feed per minute (asynchronous) G18 ZX-plane selection G112 M, S, T, B output to opposite system (Note 2) G19 YZ-plane selection M98 Subprogram call G40 Nose R/Tool radius compensation OFF M99 Subprogram end G41.5 Tool radius compensation for five-axis machining to the left F Feed function G42.5 MSTB M-, S-, T-, and B-code G49 Tool length offset OFF G50 Scaling OFF Macro instruction Local variable, Common variable, Operation command, Control command .A ll ri gh ts (Note 3) N 34 08 C 39 O R PO R A TI O K ZA A Se ri al N to the right re s G00 o. Code er ve d . A. (Note 2) C op yr ig ht (c )2 01 3 YA M A ZA K IM Note 1: A command for helical or spiral interpolation leads to an alarm (1812 ILLEGAL CMD IN G43.1 MODE). The same alarm will be caused when a block of circular interpolation contains a motion command for a rotational axis. Note 2: Giving a tool change command (T-code) in the mode of tool length offset in tool-axis direction leads to an alarm (1812 ILLEGAL CMD IN G43.1 MODE). Note 3: The use of G61.1 leads to an alarm (1812 ILLEGAL CMD IN G43.1 MODE) when the geometry compensation is made invalid for rotational axes. 12-11 Serial No. 340839 12 TOOL OFFSET FUNCTIONS Modes in which the tool length offset in tool-axis direction is selectable Code Function Code Function Positioning G54.4Pp Workpiece setup error correction G10.9 Radius data input for X G61 Exact stop check mode G13.1 Polar coordinate interpolation OFF G61.1 Geometry compensation G15 Polar coordinate input OFF G64 Cutting mode G17 XY-plane selection G65 User macro single call G18 ZX-plane selection G67 User macro modal call OFF G19 YZ-plane selection G69 3-D coordinate conversion OFF G20 Inch data input G80 Fixed cycle OFF G21 Metric data input G90 Absolute data input G23 Pre-move stroke check OFF G91 Incremental data input G40.1 Control in perpendicular direction OFF G93 Inverse time feed G41.5 to the left G94 Feed per minute (asynchronous) to the right re s er ve d . G00 G97 Constant surface speed control OFF G43 Tool length offset (+) G98 Initial point level return in fixed cycles G44 Tool length offset (–) G99 R-point level return in fixed cycles G49 Tool length offset OFF G109 Two-system control by one program G50 Scaling OFF G110 Cross machining control ON G50.1 Mirror image OFF G111 Cross machining control OFF G50.2 Polygonal machining mode OFF G113 Hob milling mode OFF G54 Selection of workpiece coordinate system gh ri .A ll N 34 08 C 39 O R PO R A TI O N Tracing al 1. o. 10. Restrictions and precautions ts G42.5 Tool radius compensation for five-axis machining K B. Tool path check ZA A ZA 2. K IM Se ri It is not the movement of the actual tool tip, but of the point shifted from the spindle nose through the length offset amount, that is traced in the mode of tool length offset in tool-axis direction. It depends on the parameter setting concerned whether or not the offset amount used in tracing includes the “axis-of-rotation offset” amount. 01 3 YA M A As with tracing, the motion path of the point shifted from the spindle nose through the length offset amount (not of the tool tip) is drawn in the mode of tool length offset in tool-axis direction. It also depends on the parameter setting concerned whether or not the offset amount used in tool path check includes the “axis-of-rotation offset” amount. Measurement )2 3. Tool change command (T-code) C op yr ig 4. ht (c The use of a measuring cycle or the skip function in the mode of tool length offset in tool-axis direction leads to an alarm (1812 ILLEGAL CMD IN G43.1 MODE). 5. Giving a tool change command (T-code) in the mode of tool length offset in tool-axis direction leads to an alarm (1812 ILLEGAL CMD IN G43.1 MODE). Interruption Do not attempt to interrupt the operation in the mode of tool length offset in tool-axis direction (be it by using manual operation mode, MDI operation mode, or using the pulse handle); otherwise an alarm is caused (1812 ILLEGAL CMD IN G43.1 MODE). 6. Circular interpolation Do not enter any motion command for a rotational axis in a block of circular interpolation in the mode of tool length offset in tool-axis direction; otherwise an alarm is caused (1812 ILLEGAL CMD IN G43.1 MODE). 12-12 Serial No. 340839 TOOL OFFSET FUNCTIONS 7. 12 Others K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . Do not give a command for corner rounding/chamfering, a linear angle command, or a geometric command; otherwise an alarm is caused (1812 ILLEGAL CMD IN G43.1 MODE). 12-13 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-4 Tool Position Offset: G45 to G48 1. Function and purpose Command G45 or G46 allows the axis movement distance set previously in that block to be increased or decreased, respectively, according to the offset data. Likewise, command G47 or G48 extends or contracts the previously set distance by twice the offset stroke, respectively. G46 command Extended through offset stroke only Contracted through offset stroke only Moving stroke Ending point Starting point Ending point ts Starting point er ve d Moving stroke re s Internal calculation gh Internal calculation . G45 command G48 command Contracted through twice the offset stroke 34 08 C 39 O R PO R A TI O Internal calculation N Internal calculation .A ll ri G47 command Extended through twice the offset stroke Moving stroke Moving stroke Starting point Ending point N o. Ending point Starting point K ri ZA Function ZA Programming format (Moving stroke after offset) A K IM Programming format = (Offset stroke) Se 2. al ± (Program command value) To extend a moving stroke by the offset stroke which has been set in the offset memory. G46 Xx Dd To contract a moving stroke by the offset stroke which has been set in the offset memory. 01 3 YA M A G45 Xx Dd )2 G47 Xx Dd To contract a moving stroke by twice the offset stroke which has been set in the offset memory. C op yr ig ht (c G48 Xx Dd To extend a moving stroke by twice the offset stroke which has been set in the offset memory. 12-14 Serial No. 340839 TOOL OFFSET FUNCTIONS 3. 12 Detailed description - Programming based on incremental data is shown below. Stroke of movement by equivalent tape command (selected offset stroke = ) = 10 = –10 X = 1010 X = 990 G45 X–x Dd X – {x + } = 10 = –10 X = –1010 X = –990 G46 Xx Dd X {x – } = 10 = –10 X = 990 X = 1010 G46 X–x Dd X – {x – } = 10 = –10 X = –990 X = –1010 G47 Xx Dd X {x + 2} = 10 = –10 X = 1020 X = 980 G47 X–x Dd X – {x + 2} = 10 = –10 X = –1020 X = –980 G48 Xx Dd X {x – 2} = 10 = –10 X = 980 X = 1020 G48 X–x Dd X – {x – 2} = 10 = –10 er ve d X {x + } .A ll ri gh ts G45 Xx Dd . Example (with x = 1000) re s Tape command 34 08 C 39 O R PO R A TI O N X = –980 X = –1020 - Even if no offset numbers are set in the same block as that which contains commands G45 to G48, offsetting will be performed, based on previously stored tool position offset numbers. o. - An alarm 839 ILLEGAL OFFSET No. will occur if the designated offset number is an unavailable one. K ZA ri al N - These G-code commands are not modal ones, and thus they are valid only for the designated block. A K IM Se - These commands must be used in modes other than the fixed-cycle mode. They will be ignored if used in the fixed-cycle mode. A ZA - The axis will move in reverse if internal calculation for changing the movement distance results in inversion of the direction of movement. M Starting point YA Program command: G48 X20.000 + 15.000 Real movement: X–10.000 Ending point ht (c )2 01 3 Offset stroke: yr ig MEP060 C op - The following lists how the machine operates if a movement distance of 0 using the incremental data command mode (G91) is programmed: NC command G45 X0 D01 G45 X–0 D01 G46 X0 D01 G46 X–0 D01 Equivalent command X1234 X–1234 X–1234 X1234 D01: Offset number 1234: Offset amount for D01 For absolute data commands, if the movement distance is set equal to 0, the block will be immediately completed and no movement through the offset distance will occur. 12-15 Serial No. 340839 12 TOOL OFFSET FUNCTIONS - When absolute data commands are used, each axis will also move from the ending point preset in the preceding block to the position set in the block that contains commands G45 through G48. That is, when absolute data commands are used, offsetting will be performed according to the movement distance (increments in distance) set in that block. Sample programs During circular interpolation, tool radius compensation using commands G45 to G48 can be done only for a 1/4, 1/2, or 3/4 circle whose starting and ending points are present on a coordinate axis passing through the arc center. Y (D01 = 200) G91 G45 G03 X–1000 Y1000 I–1000 F1000 D01 Ending point Programmed path gh ts re s Tool center path ri 200 .A ll 1000 34 08 C 39 O R PO R A TI O X N Tool 1000 Programmed arc center . 1. er ve d 4. Starting point Tool position offset, with 1/4 arc command given MEP061 If an “n” number of axes are designated at the same time, the same amount of offsetting will be performed on all designated axes. This also applies to additional axes, but within the limits of the simultaneously controllable axis quantity. ZA K ZA A K IM Se ri al N o. 2. YA 01 3 110. ht (c )2 60. Starting point 50. 50. Programmed ending point X 220. 270. MEP062 C op yr ig Ending point after offset M A Y G01 G45 X220. Y60. D20 (D20 = +50.000) 12-16 Serial No. 340839 TOOL OFFSET FUNCTIONS Note: 12 Use tool radius compensation commands G40, G41, or G42 if simultaneous offsetting of two axes is likely to result in excessive or insufficient cutting as shown below. Programmed path Tool center path Desirable shape er ve d . G01 G45 Xx1 Dd1 Xx2 Yy2 G45 Yy3 Workpiece Y ts re s Machining shape X .A ll ri gh Insufficient cutting 34 08 C 39 O R PO R A TI O N Tool MEP063 K ZA K IM Programmed path A Se ri al N o. : Set value of offset stroke Tool center path ZA G01 Xx1 G45 Xx2 Yy2 Dd2 Yy3 01 3 YA M A Machining shape Workpiece Y Excessive cutting X C op yr ig ht (c )2 Desirable shape Tool : Set value of offset stroke MEP064 12-17 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 3. Cornering in a 1/4 circle N4 Tool center path G46 G45 G45 G01 G00 G01 G03 Xx4 Xx1 Yy2 Xx3 Yy1 Ff2 Yy3 Dd1 Ii3 er ve d N1 N2 N3 N4 re s Programmed path . N3 ts Y K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N1 N X .A ll ri gh N2 12-18 MEP065 Serial No. 340839 TOOL OFFSET FUNCTIONS 4. 12 When commands G45 to G48 are set, each of the corresponding amounts of offsetting will become those designated by the offset numbers; unlike the tool length offset command (G43), these commands will not move the axes through the difference from the previous offset amount. Tool center path Programmed path N111 N107 N112 N106 N108 N110 N104 N105 30 R10 N113 R20 er ve d . N109 N114 re s N103 R10 .A ll ri gh N115 ts 40 40 34 08 C 39 O R PO R A TI O N116 N100 30 10 30 30 40 10 K al N o. Starting point G48 C op yr ig ht (c )2 01 3 G45 G45 G45 G46 M02 ZA Y40. X–20. Y20. Y0 J20. A G00 X40. X100. F200 X10. Y10. Y40. A ZA K IM G46 G01 G03 G01 X0 G02 G01 X–30. Y–30. X–30. Y30. X–30. G03 G01 X10. Y–40. X–40. M YA G91 G45 G45 G45 G46 G46 G45 G47 Se ri Offset stroke: D01 = 10.000 mm (Tool radius compensation stroke) N100 N101 N102 N103 N104 N105 N106 N107 N108 N109 N110 N111 N112 N113 N114 N115 N116 N117 % J10. X–10. Y–10. J–10. Y–20. Y–40. 12-19 N102 N N101 D01 MEP066 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-5 Tool Radius Compensation: G40, G41, G42 12-5-1 Overview 1. Function and purpose Offsetting in any vectorial direction can be done according to the tool radius preselected using G-codes (G38 to G42) and D-codes. This function is referred to as tool radius compensation. For turning tools, nose-R compensation can be performed according to the designated direction (only when TOOL OFFSET type C is selected). G38 I_J_ To change and hold an offset vector G39 To interpolate a corner arc These commands can be given in the mode of tool radius compensation. N Detailed description re s To compensate a tool radius (to the right) ts To compensate a tool radius (to the left) G42X_Y_ gh G41X_Y_ Remarks 34 08 C 39 O R PO R A TI O 3. Function To cancal a tool radius compensation ri Programming format G40X_Y_ er ve d . Programming format .A ll 2. K al N o. For tool radius compensation, all H-code commands are ignored and only D-code commands become valid. Also, tool radius compensation is performed for the plane that is specified by either the plane selection G-code command or two-axis address code command appropriate for tool radius compensation. No such compensation is performed for axes other than those corresponding or parallel to the selected plane. ZA A ZA K IM Se ri See Section 6-7 to select a plane using a G-code command. Cancellation of tool radius compensation YA 1. M A 12-5-2 Tool radius compensation 01 3 Tool radius compensation is automatically cancelled in the following cases: )2 - After power has been turned on (c - After the key on the NC operation panel has been pressed ig ht - After M02 or M30 has been executed (these two codes have a reset function) C op yr - After G40 (offsetting cancellation command) has been executed In the offsetting cancellation mode, the offset vector becomes zero and the tool center path agrees with the programmed path. Programs containing the tool radius compensation function must be terminated during the compensation cancellation mode. Give the G40 command in a single-command block (without any other G-code). Otherwise it may be ignored. 12-20 Serial No. 340839 TOOL OFFSET FUNCTIONS 2. 12 Startup of tool radius compensation Tool radius compensation will begin during the compensation mode when all the following three conditions are met: - Command G41 or G42 has been executed. - The offset number for tool radius compensation is larger than zero, but equal to or smaller than the maximum available offset number. - The command used with the compensation command is a move command other than those used for circular interpolation. ts re s er ve d . Compensation will be performed only when reading of three motion blocks, if possible within a range of 23 blocks (inclusive of the startup block), is completed, irrespective of whether the single-block operation mode is used. During compensation, 23 blocks are pre-read and then calculation for compensation is performed. ri gh Control status G00_ G41_ G01_ G02_ 34 08 C 39 O R PO R A TI O N S_ .A ll T_ Machining program Start of pre-reading 23 blocks G01_ G02_ G41_ G01_ G02_ G41_ G01_ T_ ZA A S_ G00_ ZA K IM Se G00_ K Blocks executed S_ al T_ ri Pre-read buffer N o. Offset buffer G02_ C op yr ig ht (c )2 01 3 YA M A There are two types of compensation startup operation: Type A and Type B. It depends on the setting of bit 4 of parameter F92 whether Type A or Type B is automatically selected. These two types of startup operation are similar to those of compensation cancellation. In the descriptive diagrams below, “s” signifies the ending point of single-block operation. 12-21 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 3. Startup operation of tool radius compensation A. For the corner interior Linear Linear Linear Arc Programmed path Programmed path r r (Offset stroke) Tool center path s G42 G42 re s Tool center path Starting point MEP068 ri gh Arc center ts Starting point For the corner exterior (obtuse angle) [90° < 180°] .A ll B. er ve d . s 34 08 C 39 O R PO R A TI O N (Type A/B selection is possible with a predetermined parameter.) Linear Linear (Type A) Linear Arc (Type A) s Programmed path ZA G41 K IM Se K N r A G41 ri al r (Offset stroke) Tool center path Tool center path o. s ZA Starting point Arc center Programmed path M A Starting point YA MEP069 Linear Arc (Type B) ig yr op C Point of intersection s Point of intersection s ht (c )2 01 3 Linear Linear (Type B) r r Tool center path r Tool center path r Programmed path G41 Starting point G41 Starting point Arc center Programmed path MEP070 12-22 Serial No. 340839 12 TOOL OFFSET FUNCTIONS C. For the corner exterior (sharp angle) [ < 90°] (Type A/B selection is possible with a predetermined parameter.) Linear Linear (Type A) Linear Arc (Type A) Arc center s Tool center path r s Programmed path er ve d . r G41 re s G41 Linear Linear (Type B) Starting point .A ll ri gh ts Starting point Linear Arc (Type B) Arc center 34 08 C 39 O R PO R A TI O N s Tool center path Programmed path s r o. r r ZA A Se ri al N G41 K r K IM Starting point G41 A ZA Starting point Operation during the compensation mode 01 3 4. YA M MEP071 ht (c )2 Compensaiton is performed for linear or arc interpolation commands and positioning commands. Identical compensation commands G41 or G42 will be ignored if they are used in the compensation mode. C op yr ig Successive setting of 22 or more move-free blocks during the compensation mode may result in excessive or insufficient cutting. See Subsection 12-5-3 for a description of ‘move-free’ blocks. 12-23 Serial No. 340839 12 TOOL OFFSET FUNCTIONS A. For the corner exterior Linear Linear (90° < 180°) Linear Linear (0° < < 90°) Tool center path r s s r Programmed path Programmed path Tool center path er ve d Tool center path re s r s s N 34 08 C 39 O R PO R A TI O Arc center Arc Linear (90° < 180°) o. Arc center Arc Linear ( 0° < < 90° ) ZA A K IM Programmed path K N al Se ri Programmed path r r r A ZA r Arc center Tool center path YA M s 01 3 s Arc Arc (90° < 180°) (c )2 Arc Arc (0° < < 90°) Arc center Programmed path yr ig ht Programmed path .A ll Tool center path Arc center Tool center path r ri r ts Programmed path gh r . Linear Arc (0° < < 90°) Linear Arc (90° < 180°) op Programmed path C r r Tool center path r r s Tool center path Arc center Arc center s Arc center MEP072 12-24 Serial No. 340839 12 TOOL OFFSET FUNCTIONS B. For the corner interior Linear Linear (Obtuse angle) Linear Linear (Obtuse angle) r Programmed path r Programmed path r s s Tool center path r Linear Arc (Obtuse angle) re s Linear Arc (Obtuse angle) er ve d . Tool center path gh ts Arc center .A ll ri Programmed path Programmed path r r ZA A Arc center K IM Programmed path K N al ri Se r Arc Linear (Obtuse angle) o. Arc center Arc Linear (Obtuse angle) s 34 08 C 39 O R PO R A TI O Tool center path N s Tool center path Programmed path ZA s Tool center path A s M r YA r Tool center path 01 3 Arc center )2 Arc Arc (Sharp angle) Arc center Tool center path s yr ig ht (c Arc Arc (Obtuse angle) op r C Arc center Programmed path Arc center s Arc center Tool center path r Programmed path MEP073 12-25 Serial No. 340839 12 TOOL OFFSET FUNCTIONS C. For an arc that does not have the ending point on it The area from the starting point of the arc to the ending point is interpolated as a spiral arc. Virtual circle Tool center path Programmed path Arc ending point er ve d . r s r ts re s R Arc center D. .A ll ri gh MEP074 For arcs that do not have their inner crossing point 34 08 C 39 O R PO R A TI O N In cases such as those shown in the diagram below, there may or may not be a crossing point of arcs A and B, depending on the particular offset data. In the latter case, the program terminates at the ending point of the preceding block after an alarm 836 NO INTERSECTION has been displayed. K ZA K IM Se r Center of Arc A A ri al Tool center path N o. Stop with an alarm r A B Line of intersection points between Arcs A and B MEP075 Cancellation of tool radius compensation ht 5. (c )2 01 3 YA M A ZA Programmed path C op yr ig During the tool radius compensation mode, tool radius compensation will be cancelled in any of the two cases listed below. - Command G40 has been executed. - Offset number code D00 has been executed. At this time, however, the move command should not be given under the mode of circular interpolation. An alarm 835 G41, G42 FORMAT ERROR will occur if an attempt is made to cancel the compensation using a circular interpolation command. After the compensation cancellation command has been read into the offset buffer, the cancellation mode is set automatically and subsequent blocks of data are read into the pre-read buffer, not the offset buffer. 12-26 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 6. Cancellation operation of tool radius compensation A. For the corner interior Linear Linear Arc Linear Programmed path Programmed path r r (Offset stroke) Tool center path s Tool center path G40 Ending point re s G40 er ve d . s MEP076 For the corner exterior (obtuse angle) .A ll B. ri gh Arc center ts Ending point 34 08 C 39 O R PO R A TI O N (Type A/B selection is possible with a predetermined parameter) Linear Linear (Type A) Arc Linear (Type A) s s o. Tool center path r K ZA K IM Se ri Ending point ZA Ending point G40 Programmed path Tool center path A G40 al N r (Offset stroke) Programmed path YA M A Arc center s ht ig yr Point of intersection s Tool center path r r r r Programmed path G40 Tool center path C op G40 Arc Linear (Type B) Point of intersection (c )2 01 3 Linear Linear (Type B) Ending point Ending point Arc center Programmed path MEP078 12-27 Serial No. 340839 12 TOOL OFFSET FUNCTIONS C. For the corner exterior (sharp angle) (Type A/B selection is possible with a predetermined parameter) Arc Linear (Type A) Linear Linear (Type A) Arc center s Tool center path r s Programmed path er ve d . r ts re s G40 gh G40 N .A ll ri Ending point 34 08 C 39 O R PO R A TI O Linear Linear (Type B) Arc center s Tool center path o. r r K IM A ZA al ri Se G40 Arc Linear (Type B) s K N Programmed path r Ending point ZA r G40 YA M A Ending point 01 3 Ending point C op yr ig ht (c )2 MEP079 12-28 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-5-3 Tool radius compensation using other commands 1. Interpolation of the corner arc When command G39 (corner-arc interpolation) is used, the coordinates of the crossing points at workpiece corners will not be calculated and an arc with offset data as its radius will be interpolated. Point of intersection Interpolated arc Interpolated arc Programmed path Tool center path Programmed path Tool center path er ve d r . (r = Offset stroke) (r = Offset stroke) re s r Outside Offset Changing/retaining offset vectors N Inside Offset MEP080 o. 2. (Without G39 command) (G39 command given) 34 08 C 39 O R PO R A TI O (Without G39 command) (G39 command given) .A ll ri gh ts Point of intersection N Using command G38, you can change or retain offset vectors during tool radius compensation. K al Retaining vectors ZA A K IM Se ri Setting G38 in a block that contains move commands allows crossing-point calculation at the ending point of that block to be cancelled and the vectors in the preceding block to be retained. This can be used for pick and feed operations. ZA G38 Xx Yy A Changing vectors 01 3 YA M The directions of new offset vectors can be designated using I, J, and K (I, J, and K depend on the selected type of plane), and offset data can be designated using D. (These commands can be included in the same block as that which contains move commands.) (c )2 G38 Ii Jj Dd i2 + j 2 j × r1 yr ig ht r2 = r1 C op Tool center path r1 i N15 N13 N14 Programmed path j N16 N12 N11 N11G1Xx11 N12G38Yy12 N13G38Xx13 N14G38Xx14Yy14 N15G38Xx15IiJjDd2 N16G40Xx16Yy16 Vector held Vector changed NEP081 12-29 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 3. Changing the offset direction during tool radius compensation The offset direction is determined by the type of tool radius compensation command (G41 or G42) and the sign (plus or minus) of the offset data. Offset stroke sign + – G41 Left side offset Right side offset G42 Right side offset Left side offset G-code er ve d . The offset direction can be changed by updating the offset command without having to cancel the compensation mode. This can, however, be done only for blocks other than the compensation startup block and the next block. ts re s See Subsection 12-5-6, General precautions on tool radius compensation, for NC operation that will occur if the sign is reversed. gh Linear Linear .A ll ri Tool center path r N Programmed path 34 08 C 39 O R PO R A TI O r Point of intersection G41 G41 o. r G42 r N r A G42 M G41 r r ZA K IM A ZA K al ri Se Linear Arc G41 G42 YA r )2 01 3 Programmed path r (c r Tool center path ht ig G41 Tool center path G42 Arc center C op yr Arc Arc This figure shows an example in which no points of intersection are present during offset direction change. r Programmed path G41 G42 G41 r G41 G41 G42 Arc center MEP082 12-30 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 Linear turnaround G41 Tool center path G42 r er ve d . Programmed path MEP083 re s The arc of more than 360 degrees may result in the following cases: gh ts - The offset direction has been changed by G41/G42 selection. Arc of 360° or more (depends on the offsetting method used) 34 08 C 39 O R PO R A TI O N G42 .A ll ri - Commands I, J, and K have been set for G40. K ZA Tool center path MEP084 A Cases where the offset vector is temporarily cancelled M 4. G41 ZA K IM Se G42 A ri al N o. Programmed path C op yr ig ht (c )2 01 3 YA If the command listed below is used during compensation mode, the current offset vector will be cancelled temporarily and then the NC unit will re-enter the compensation mode. In that case, a movement will occur from the crossing point to a vector-less point, that is, to the programmed point, without movements for cancelling the compensation mode. The next movement will also occur directly to the next crossing point when the compensation mode is restored. 12-31 Serial No. 340839 12 TOOL OFFSET FUNCTIONS A. Reference-point return command s s s N6 N7 N8 re s N5 er ve d . Intermediate point ts (G41) N5 G91 G01 X–60. Y–30. N6 G28 X–50. Y+40. N7 X–30. Y+60. N8 X–70. Y–40. gh Temporary vector 0 as offset at the intermediate MEP085 5. 34 08 C 39 O R PO R A TI O N .A ll ri point (reference point when the intermediate point is not available) Move-free Blocks (that do not include movement) The blocks listed below are referred to as move-free ones: K ZA A When a mve-free block is set at the start of compensation 01 3 A. YA M A ZA K IM Se ri al N o. M03 ................................................. M command S12 ................................................. S command T45 ................................................. T command G04 X500 ...................................... Dwell G22 X200. Y150. Z100........... To set a machining-prohibited area Move-free G10 P01 R50 ............................... To set an offset stroke G92 X600. Y400. Z500........... To set a coordinate system (G17) Z40. .................................... To move outside the offsetting plane G90 ................................................. G-code only G91 X0 .......................................... Moving stroke 0 ...........Moving stroke is 0. (c )2 Vertical offsetting will be performed on the next move block. X30. Y60. G41 D10 X20. Y–50. X50. Y–20. Move-free block N02 N03 C op yr ig ht N01 N02 N03 N04 N01 N04 MEP086’ 12-32 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 Offset vectors, however, will not be generated if 22 or more blocks that do not include move commands appear in succession. X30. Y60. G41 D10 G4 X1000 F100 S500 M3 N02 to N23 Move-free blocks N24 (Point of intersection) N01 X20. Y–50. X50. Y–20. N25 er ve d . N01 N02 N03 N04 N05 N06 N24 N25 G41 X30. Y60. D10 G4 X1000 F100 S500 Move-free blocks M3 34 08 C 39 O R PO R A TI O N24 N .A ll N02 to N23 (Point of intersection) N01 X20. Y–50. X50. Y–20. N25 K ZA When a move-free block is set in the compensation mode K IM B. MEP088’ A Se ri al N o. N01 N02 N03 N04 N05 N24 N25 ri gh ts re s MEP087’ YA M A ZA Usual crossing-point vectors will be generated unless 22 or more blocks that do not include movement appear in succession. 01 3 N06 G91 X100. Y200. Move-free block N07 G04 P1000 N08 X200. N08 N06 N08 op yr ig ht (c )2 N07 Block N07 is executed here. C N06 MEP089’ Vertical offset vectors will be generated at the end point of preceding block if 22 or more blocks that do not include movement appear in succession. 12-33 Serial No. 340839 12 TOOL OFFSET FUNCTIONS N06 N07 N08 N09 N10 N29 X100. Y200. G4 X1000 F100 S500 Move-free blocks M4 N29 X100. N29 N06 N07 to N28 In this case, excessive cutting may occur. er ve d When a move-free block contains a cancellation command re s C. MEP090’ . N06 .A ll ri gh ts Only offset vectors will be cancelled if the block that does not include movement contains G40. N6 X100. Y200. N7 G40 G04P1000 N8 X100. Y50. N N8 34 08 C 39 O R PO R A TI O N7 K ZA A If I, J, and K are set with G40 ZA 6. MEP091 K IM Se ri al N o. N6 ig ht (c )2 01 3 YA M A When the last of the four move command blocks which immediately precede the G40 command block contains G41 or G42, movement will be handled as if it had been programmed to occur in the vectorial direction of I, J, and K from the ending point of that last move command. That is, the area up to the crossing point with the virtual tool center path will be interpolated and then compensation will be cancelled. The offset direction will remain unchanged. Virtual tool center path C op yr (a, b) (i, j) N2 A Tool center path G41 r r N1 N2 N1 (G41) G1 X_ G40XaYbIiJj Programmed path MEP092 12-34 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 In this case, beware that irrespective of the offset direction, the coordinates of the crossing point will be calculated even if wrong vectors are set as shown in the diagram below. (a, b) N2 Tool center path A G41 r N1 Programmed path re s Virtual tool center path er ve d Where I and J in the sample program shown above have wrong signs (i, j) . r gh ts MEP093 34 08 C 39 O R PO R A TI O N .A ll ri Also, beware that a vertical vector will be generated on the block before that of G40 if crossingpoint calculation results in the offset vector becoming too large. (a, b) G40 Tool center path A o. G41 r K r A ZA (i, j) K IM Se ri al N Programmed path Virtual tool center path ZA MEP094 Part of the workpiece will be cut twice if the I/J/K command in a G40 block preceded by a circular interpolation command generates an arc of more than 360 degrees. (G42, G91) G01X200. G02 J150. G40 G1X150. Y–150.I–100. J100. r ig ht (c )2 N1 N2 N3 01 3 YA M A Note: N2 C op yr (i, j) Programmed path Tool center path r N1 r G42 G40 N3 MEP095 12-35 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-5-4 Corner movement Programmed path . If multiple offset vectors are generated at a connection between move command blocks, a linear (polygonal) movement will occur through the end points of the vectors. This action is referred to as corner movement. When two different vectors are required for the connection, a linear interpolation will occur around the corner as an addition to the first connecting movement. In the single-block operation, therefore, the first section of “Preceding block + Corner movement” is executed as one block and the second section of “Connecting movement + Next block” as the next one. er ve d N1 re s N2 r Arc center .A ll ri r gh ts Tool center path N This movement and its rate of feed belong to Block N2. 34 08 C 39 O R PO R A TI O Stopping point in the single block operation mode MEP096 N Interruption by MDI al 1. o. 12-5-5 Interruptions during tool radius compensation K ZA A ZA Interruption without movement 01 3 YA M No change in tool path A A. K IM Se ri Tool radius compensation is valid during automatic operation, whether it is based on the tape, memory, or MDI operation mode. The following diagrams show what will occur if tape or memory operation is interrupted using the MDI function following termination of the program at a block: )2 N1 G41D1 N2 X–20. Y–50. MDI interruption (c N3 G3 X–40. Y40. R70. S1000 M3 C op yr ig ht s (Stop position in the single block operation mode) N2 N3 MEP097 12-36 Serial No. 340839 TOOL OFFSET FUNCTIONS B. 12 Interruption with movement The offset vectors are recalculated automatically at the first effective move block after interruption. Linear interruption N1 G41D1 s MDI interruption N2 X–20. Y–50. N3 G3 X–40. Y40. R70. X–50. Y30. X–30. Y–50. er ve d . s N2 re s N3 Circular interruption N1 G41D1 s N3 G3 X–40. Y40. R70. N MDI interruption N2 X–20. Y–50. .A ll ri gh ts MEP098 s Manual interruption K N3 ZA MEP099 K IM 2. N2 A Se ri al N o. 34 08 C 39 O R PO R A TI O G2 X–40. Y–40. R70. G1 X–40. ZA - For the incremental data command mode, the tool path shifts through the interruption amount. C op yr ig ht (c )2 01 3 YA M A - For the absolute data command mode, the intended tool path is restored at the ending point of the block immediately following that at which interruption has been performed. This state is shown in the diagram below. Interruption Interruption 12-37 MEP100 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-5-6 General precautions on tool radius compensation 1. Selecting the amounts of offset The amounts of offset are selected by specifying an offset number using a D-code. Once a D-code has been used, it will remain valid until a second D-code is used. No H-codes can be used to make these selections. D-codes are also used to select tool position offset data. 2. Updating the selected amounts of offset The sign of offset data and the tool center path ts 3. re s er ve d . Updating of the selected amounts of offset is usually to be done after a different tool has been selected during the radius compensation cancellation mode. If such updating is done during the compensation mode, vectors at the ending point of a block will be calculated using the offset data selected for that block. K ZA A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh Minus-signed (–) offset data generates the same figure as that obtained when G41 and G42 are exchanged each other. Therefore, the tool center will move around the inside of the workpiece if it has been moving around the outside. Conversely, the tool center will move around the outside of the workpiece if it has been moving around the inside. Sample programs are shown below. Usually, offset data is to be programmed as plus (+) data. If the tool center has been programmed to move as shown in diagram (a) below, the movement can be changed as shown in diagram (b) below by changing the sign of the offset data to minus (–). Conversely, if the tool center has been programmed to move as shown in diagram (b) below, the movement can be changed as shown in diagram (a) below by changing the sign of the offset data to plus (+). One tape for machining of both inside and outside shapes can be created in this way. Also, a dimensional tolerance between both shapes can be freely set by selecting appropriate offset data (however, Type A is to be used during the start of offsetting or during its cancellation). M A Workpiece Tool center path G41 offset stroke positive or G42 offset stroke negative (a) Tool center path G41 offset stroke negative or G42 offset stroke positive (b) op yr ig ht (c )2 01 3 YA Workpiece C MEP101 12-38 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-5-7 Offset number updating during the offset mode In principle, offset numbers should not be updated during the offset mode. If updating is done, the tool center will move as shown below. If an offset number (offset data) is updated Dr1 N101 G0 Xx1 N102 G0 Xx2 N103 Xx3 Yy1 Yy2 Yy3 = 0, 1, 2, 3 To change an offset number er ve d . Dr2 Line-to-line movement re s 1. G41 G01 gh ts The offset stroke selected in N102 will be used. .A ll N Tool center path ri The offset stroke selected in N101 will be used. 34 08 C 39 O R PO R A TI O r2 r1 r1 N102 r2 N103 o. N101 K ZA A K IM Se ri al N Programmed path r1 ZA Tool center path A r1 YA M Programmed path r1 N101 01 3 r1 r2 N103 r2 C op yr ig ht (c )2 N102 MEP102 12-39 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 2. Line-to-arc movement Tool center path r2 Programmed path N102 G02 r1 r1 er ve d . N101 Arc center Tool center path r1 re s r1 Programmed path ts N101 gh r1 r1 ri N102 .A ll G03 34 08 C 39 O R PO R A TI O N r2 Arc center o. Arc-to-arc movement A Tool center path K IM r1 N101 r1 ZA Programmed path K ZA Se ri al N 3. MEP103 r2 Arc center (c )2 01 3 YA M A N102 ht Arc center ig r1 C op yr r1 N102 Tool center path r1 r1 N101 r2 Arc center Programmed path Arc center MEP104 12-40 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-5-8 Excessive cutting due to tool radius compensation If an interference check function is not provided, excessive cutting may result in the following three cases: 1. Machining of the inside of an arc smaller than the tool radius If the radius of the programmed arc is smaller than that of the tool, excessive cutting may result from offsetting of the inside of the arc. Tool center er ve d . path re s Programmed path R .A ll ri gh ts Programmed arc MEP105 2. 34 08 C 39 O R PO R A TI O N Excessive cutting Machining of a groove smaller than the tool radius Programmed path A ZA K Tool center path Opposite direction 01 3 YA M A ZA K IM Se ri al N o. Excessive cutting may result if tool radius compensation makes the moving direction of the tool center opposite to that of the program. ht Machining of a stepped section smaller than the tool radius ig 3. MEP106 (c )2 Excessive cutting C op yr Tool center path Programmed path Excessive cutting 12-41 MEP107 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 4. Relationship between the start of tool radius compensation and the cutting operation in the Z-axis direction It is generally done that radius compensation (usually, on the XY-plane) is done at a suitable distance from the workpiece during the start of cutting and then the workpiece is cut along the Z-axis. At this time, incorporate the following programming considerations if you want to split the Z-axis action into rapid feed and cutting feed which is to follow only after the Z-axis has moved close to the workpiece: If you make a program such as that shown below: G01 Z–300. F1 Y100. F2 Tool center path N24 N24 er ve d . G91 G00 G41 X500. Y500. D1 S1000 M3 re s N01 N02 N03 N22 N24 ts N02 to N21 ri 34 08 C 39 O R PO R A TI O X .A ll N01 N01 N N22: Z-axis moves downward Y (1 block) gh N22 Y Z MEP108’ K ZA A G91 G00 G41 X500. Y500. D1 S1000 M3 A N22 YA N23 N24 )2 Y Excessive cutting Z N01 ht (c N02 to N21 N24 M Z–250. G01 Z–50. F1 Y100. F2 ZA K IM N01 01 3 N01 N02 N03 N22 N23 N24 Se ri al N o. With this program, all blocks up to N24 can be read during the start of offsetting based on N01. Thus, the NC unit will judge the relationship between N01 and N24 and correctly perform the offset operation as shown in the diagram above. A sample program in which the N22 block in the program shown above has been split into two parts is shown below. X X yr ig MEP109’ C op In this case, successive 22 blocks (N02 to N23) do not have any motion command corresponding to the XY-plane and the relevant block N24 cannot be read during the start of offsetting based on N01. As a result, offsetting will be based only on the information contained in the N01 block and thus the NC unit will not be able to create offset vectors during the start of offsetting. This will cause excessive cutting as shown in the diagram above. Even in such a case, however, excessive cutting can be prevented if a command code that moves the tool in exactly the same direction as that existing after the Z-axis has moved downward is included immediately before the Z-direction cutting block. 12-42 Serial No. 340839 TOOL OFFSET FUNCTIONS N01 G91 G00 G41 X500. Y400. D1 N02 Y100. S1000 N03 M3 N22 Z–250. N23 G01 Z–50. F1 N24 Y100. F2 12 N24 N24 N24 N03 to N21 N22 N03 to N21 N02 N02 N23 Y Y N01 N01 er ve d . Z X re s MEP110’ gh ts For the sample program shown above, correct offsetting is ensured since the moving direction of the tool center at N02 is the same as at N24. .A ll Overview N 1. ri 12-5-9 Interference check o. 34 08 C 39 O R PO R A TI O Even a tool that has been offset radially by usual tool radius compensation based on two-block pre-reading may move into the workpiece to cut it. This status is referred to as interference, and a function for the prevention of such interference is referred to as interference check. The following two types of interference check are provided and their selection is to be made using bit 5 of parameter F92. Parameter Operation Interference check and prevention Interference check and prevention on A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ZA Interference check and prevention off ri Interference check and alarm The system will stop, with an alarm resulting before executing the cutting block. K al N Function 12-43 The path is changed to prevent cutting from taking place. Serial No. 340839 12 TOOL OFFSET FUNCTIONS Example: (G41) N1 G90 G1 X–50. Y–100. N2 X–70. Y–100. N3 X–120. Y0 Interference prevention path Tool outside diameter N3 re s er ve d . N1 gh ts N2 ri Cutting by N2 MEP111 34 08 C 39 O R PO R A TI O N .A ll Cutting by N2 o. - For the alarm function An alarm occurs before N1 is executed. Machining can therefore be proceeded with by updating the program into, for example, N1 G90 G1 X–20. Y–40. using the buffer correction function. K ZA A K IM Se ri al N - For the prevention function Interference prevention vectors are generated by N1 and N3 crossing-point calculation. [4]’ [3]’ ZA [2] + N3 [2]’ [3] YA M A [1] [1]’ N1 ht (c )2 01 3 [4] ig N2 C op yr MEP112 Vector [1] [4]' check No interference Vector [2] [3]' check No interference Vector [3] [2]' check Interference Vector [3] [2]' deletion Vector [4] [1]' deletion The above process is performed to leave vectors [1] [2] [3]' and [4]' as effective ones. Resultantly, the route that connects vectors [1] [2] [3]' and [4] is taken as a bypass for the prevention of interference. 12-44 Serial No. 340839 TOOL OFFSET FUNCTIONS 2. 12 Detailed description A. The case where interference is regarded as occurring When move commands are present in three of the 23 command blocks to be pre-read, interference will be regarded as occurring, if the offset calculation vectors at the block connections of the individual move commands intersect. Tool center path Programmed path N1 er ve d . r re s N3 N2 gh ts Vectors intersect. B. Cases where interference check cannot be performed .A ll ri MEP113 34 08 C 39 O R PO R A TI O N - When pre-reading of three move command blocks within 23 blocks to be pre-read is not possible (since 21 or more blocks do not contain move commands). - When the fourth and subsequent move command blocks themselves interfere. o. Tool center path K N6 K IM N5 Interference cannot be checked for. N3 N4 01 3 YA M A ZA N2 A Se N1 ZA ri al N Programmed path )2 (c Movements during the prevention of interference ht C. MEP114 yr ig The following shows the movements occurring when interference prevention is provided: C op Tool center path Programmed path N3 N1 N2 MEP115 12-45 Serial No. 340839 12 TOOL OFFSET FUNCTIONS Solid-line indicated vector: Valid Dotted-line indicated vector: Invalid Tool center path with interference prevented Tool center path without interference check Programmed path N3 N2 er ve d . N1 Tool center path without interference check .A ll ri Programmed path gh ts r re s Tool center path with interference prevented Linear move N3 N2 N Arc center N1 34 08 C 39 O R PO R A TI O r MEP116 K ZA A N2 K IM Se ri al N o. Prevention vector N3 ZA Tool center path A N1 Prevention vector YA M Programmed path Once all interference prevention linear vectors have been erased, a new prevention vector is made as shown at right. Thus, interference is prevented. 01 3 N4 )2 r2 N3 (c r1 C op yr ig ht Prevention vector 1 N2 Prevention vector 2 Tool center path 2 Tool center path 1 r1 r2 N1 Programmed path MEP117 12-46 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 In the diagram shown below, part of the groove is left uncut: Interference prevention path Tool center path er ve d . Programmed path gh Interference alarm ri 3. ts re s MEP118 N 34 08 C 39 O R PO R A TI O When interference check and alarm is selected .A ll Cases that an interference alarm 837 TOOL OFFSET INTERFERENCE ERROR occurs are listed below. If all vectors at the ending point of the current block are erased: Prior to execution of N1, an alarm will result if vectors 1 through 4 at the ending point of the N1 block are all erased as shown in the diagram below. K ZA K IM Se N1 A ri al N o. 1) ZA 1 2, 3 N3 4 01 3 YA M A N2 C op yr ig ht (c )2 MEP119 12-47 Serial No. 340839 12 TOOL OFFSET FUNCTIONS When interference check and prevention is selected 2) If all vectors at the ending point of the current block are erased but an effective vector(s) remains at the ending point of the next block: - For the diagram shown below, interference checking at N2 will erase all vectors existing at the ending point of N2, but leave the vectors at the ending point of N3 effective. At this time, an alarm will occur at the ending point of N1. 4 er ve d 3 . N4 N3 Alarm stop re s N2 1 gh ts 2 MEP120 34 08 C 39 O R PO R A TI O N .A ll ri N1 A ZA K 1, 2, 3, 4 ZA K IM Se ri al N o. - For the diagram shown below, the direction of movement becomes opposite at N2. At this time, an alarm will occur before execution of N1. N4 N2 N3 YA M A N1 C op yr ig ht (c )2 01 3 MEP121 12-48 Serial No. 340839 TOOL OFFSET FUNCTIONS When prevention vectors cannot be generated: Prevention vectors may not be generated even when the conditions for generating them are satisfied. Or even after generation, the prevention vectors may interfere with N3. An alarm will therefore occur at the ending point of N1 if those vectors cross at angles of 90 degrees or more. Alarm stop N1 Alarm stop N1 N2 . N2 N4 re s N4 er ve d 3) 12 N3 ri gh ts : Intersection angle MEP122 .A ll N3 When the after-offsetting moving direction of the tool is opposite to that of the program: For a program for the machining of parallel or downwardly extending grooves narrower than the tool diameter, interference may be regarded as occurring even if it is not actually occurring. o. 34 08 C 39 O R PO R A TI O N 4) A ZA K Stop 01 3 YA M A ZA K IM Se ri al N Tool center path Programmed path C op yr ig ht (c )2 MEP123 12-49 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-6 Three-Dimensional Tool Radius Compensation Three-dimensional tool radius compensation is performed to offset a tool in three-dimensional space according to the previously designated three-dimensional vectors. 12-6-1 Function description Tool . (I, J, K) Plane-normal vector Programmed coordinates (x, y, z) N .A ll ri gh Z (K) r Tool radius Workpiece ts re s er ve d Tool center coordinates (x’, y’, z’) 34 08 C 39 O R PO R A TI O 3-dimensional offset vector Y (J) X (I) MEP124 I r 2 2 J 2 2 YA 2 K ZA A A I +J +K Hy = ZA 2 M Hx = K IM Se ri al N o. As shown in the diagram above, the tool is moved through the tool radius r in the plane-normal vectorial direction of (I, J, K) from the program coordinates (x, y, z) to the offset tool center coordinates (x’, y’, z’). Also, unlike two-dimensional tool radius compensation, which generates vectors perpendicular to the direction of (I, J, K), three-dimensional tool radius compensation generates vectors in the direction of (I, J, K). (The vectors are generated at the ending point of that block.) The axis components of three-dimensional offset vectors become: r K )2 Hz = 01 3 I +J +K 2 2 r 2 (c I +J +K ig ht Hence, the tool center coordinates (x’, y’, z’) are expressed as C op yr x’ = x + Hx y’ = y + Hy z’ = z + Hz where (x, y, z) denote the programmed coordinates. Note 1: The three-dimensional vectors (Hx, Hy, Hz) refer to plane-normal vectors that are identical to the plane-normal vectors (I, J, K) in direction and have a magnitude of r (tool radius). Note 2: If parameter F11 is set to a value other than 0, the value of F11 will be used as 2 2 2 I +J +K . 12-50 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-6-2 Programming methods 1. G-codes and their functions Parameter and feature G-code Offset stroke positive Offset stroke negative Offset No. D00 To cancel the 3-dimensional tool radius compensation To cancel To cancel G41 To compensate in (I, J, K) direction To compensate in the direction opposite to (I, J, K) To cancel G42 To compensate in the direction opposite to (I, J, K) To compensate in (I, J, K) direction To cancel 2. er ve d . G40 Offset data Space in which offsetting is to be performed ri 3. gh ts re s For the tool radius r that is to be offset, the offset number under which that offset amount has been registered must be selected using D. ZA Se A Starting a three-dimensional tool radius compensation operation K IM 4. XYZ space XYZ space XVZ space XYW space K N o. Xx1 Yy1 Zz1 Ii1 Jj1 Kk1 Yy2 Ii2 Jj2 Kk2 Xx3 Vv3 Zz3 Ii3 Kk3 Ww4 Ii4 Jj4 Kk4 al G41 G41 G41 G41 ri Example: 34 08 C 39 O R PO R A TI O N .A ll The space in which offsetting is to be performed is determined by the axis address commands (X, Y, Z, U, V, W) that are contained in the starting block of three-dimensional tool radius compensation. When the U-, V-, and W-axes are taken as additions to the X-, Y-, and Z-axes, respectively, priority will be given to the X-, Y-, or Z axis if the X-axis and the U-axis (or Y and V, or Z and W) are selected at the same time. Coordinate axes that have not been addressed will be interpreted as the X-axis, the Y-axis, and the Z-axis, respectively. 01 3 YA M A ZA Offset number D and the plane-normal vectors (I, J, K) must be set in the same block as that which contains three-dimensional tool radius compensation command code G41 (or G42). In that case, (I, J, K) must be set for each of the X-, Y-, and Z-axes. If this vector setting is not complete (setting of zero for I, J or K is effective), the usual tool radius compensation mode will be set. If, however, the machine does not have the three-dimensional tool radius compensation function, an alarm 838 3-D OFFSET OPTION NOT FOUND will result. Yy1 Zz1 Ii1 Jj1 Kk1 Dd1 )2 G41 (G42) Xx1 (c G41 (G42) : 3-dimensional tool radius compensation command C op yr ig ht X, Y, Z : Command to move each axis and to determine an offsetting space I, J, K : To indicate the offsetting direction in plane-normal vectors D : Offset number Use the G00 or G01 mode to start the three-dimensional tool radius compensation operation. Use of the G02 or G03 mode results in an alarm 835 G41, G42 FORMAT ERROR. 12-51 Serial No. 340839 12 TOOL OFFSET FUNCTIONS Example 1: If move commands are present: G41 Xx1 Yy1 Zz1 Ii1 Jj1 Kk1 Dd1 3-dimensional offset vector Tool center path er ve d . Programmed path Starting point re s MEP125 ts If move commands are not present: ri gh Example 2: 34 08 C 39 O R PO R A TI O N .A ll G41 Ii2 Jj2 Kk2 Dd2 Tool center path 3-dimentional offset vector ZA K MEP126 A During three-dimensional tool radius compensation K IM 5. Se ri al N o. Starting point Set move commands and new plane-normal vector commands as follows: Ii3 Jj3 Kk3 If move commands and plane-normal vector commands are present: YA M Example 1: Zz3 ZA Yy3 A Xx3 )2 01 3 Xx3 Yy3 Zz3 Ii3 Jj3 Kk3 ht (c Tool center path Old vector C op yr ig New vector Programmed path Starting point MEP127 12-52 Serial No. 340839 TOOL OFFSET FUNCTIONS Example 2: 12 If plane-normal vector commands are not present: The new vector is the same as the old one. Xx4 Yy4 Zz4 Tool center path New vector er ve d . Old vector Programmed path re s Starting point ri .A ll 34 08 C 39 O R PO R A TI O G02 Xx5 Yy5 (Zz5) Ii0 Jj0 I and J(K) represent the center of an arc. or G02 Xx5 Yy5 (Zz5) Rr0 (Radius-selected arc). gh For arc or helical cutting: The new vector is the same as the old one. N Example 3: ts MEP128 K ZA A ri New vector Programmed path K IM Se Old vector al N o. Tool center path Starting point ZA MEP129 M For changing the offset data: Set offset number D in the same block as that of three-dimensional tool radius compensation command G41 or G42. Use the G00 or G01 mode to change the offset data. Use of the arc mode results in an alarm (835 G41, G42 FORMAT ERROR). ht (c )2 01 3 YA Example 4: A The arc shifts through the amount of vector. C op yr ig G41 Xx0 Yy0 Zz0 Ii0 Jj0 Kk0 Dd1 G41 Xx6 Yy6 Zz6 Ii6 Jj6 Kk6 Dd2 Tool center path New vector Old vector Starting point Programmed path MEP130 12-53 Serial No. 340839 12 TOOL OFFSET FUNCTIONS Example 5: For changing the offset direction: G41 Xx0 Yy0 Zz0 Ii0 Jj0 Kk0 Dd1 G42 Xx0 Yy0 Zz0 Ii0 Jj0 Kk0 Tool center path Programmed path Old vector er ve d . New vector Starting point re s MEP131 Cancelling the three-dimensional tool radius compensation operation .A ll 6. ri gh ts Use the G00 or G01 mode to change the offset direction. Use of the arc mode results in an alarm (835 G41, G42 FORMAT ERROR). Xx7 Yy7 Zz7 34 08 C 39 O R PO R A TI O G40 N Make the program as follows: Use the G00 or G01 mode to cancel three-dimensional tool radius compensation. Use of the G02 or G03 mode results in an alarm (835 G41, G42 FORMAT ERROR). If move commands are present: ZA A K IM Se ri al G40 Xx7 Yy7 Zz7 K N o. Example 1: Tool center path Starting point Programmed path Ending point 01 3 YA M A ZA Old vector )2 MEP132 If move commands are not present: G40 (or D00) C op yr ig ht (c Example 2: Old vector Programmed path 12-54 Tool center path MEP133 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-6-3 Correlationships to other functions Tool radius compensation The usual tool radius compensation mode will be selected if setting of plane-normal vectors (I, J, K) in the starting block of three-dimensional tool radius compensation is not done for each of the X-, Y-, and Z-axes. 2. Tool length offset Tool length offsetting is performed according to the coordinates existing after execution of three-dimensional tool radius compensation. 3. Tool position offset Tool position offsetting is performed according to the coordinates existing after execution of three-dimensional tool radius compensation. 4. Selection of fixed-cycle operation results in an alarm (901 INCORRECT FIXED CYCLE COMMAND). 5. Scaling Three-dimensional tool radius compensation is performed according to the coordinates existing after execution of scaling. 6. Home position check (G27) The current offset data is not cancelled. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 1. 12-6-4 Miscellaneous notes on three-dimensional tool radius compensation Although they can be used to select offset numbers, D-code commands are valid only after command G41 or G42 has been set. If a D-code command is not present, the previous Dcode command becomes valid. 2. Use the G00 or G01 mode to change the offset mode, the offset direction or the offset data. An alarm (835 G41, G42 FORMAT ERROR) will occur if an attempt is made to perform these changes in an arc mode. 3. During the three-dimensional tool radius compensation mode using a space, threedimensional tool radius compensation cannot be done using any other space. The cancel command code (G40 or D00) must be executed to select some other offset space. K ZA A A M X_ Y_ Z_ I_ J_ K_ To start offsetting in XYZ space U_ Y_ Z_ I_ J_ K_ To offset in XYZ space while a U-axis movement occurs as specified )2 01 3 YA Example: G41 G41 ZA K IM Se ri al N o. 1. ht Only the G40 or D00 command code can be used to cancel three-dimensional tool radius C op yr ig 5. Selection of an offset number falling outside the range from 1 to the maximum available number results in an alarm (839 ILLEGAL OFFSET No.). (c 4. 6. compensation. Cancellation is not possible with the key or external reset functions. An alarm will result if the vectorial magnitude specified by (I, J, K), that is overflows. 12-55 2 2 2 I +J +K , Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-7 Programmed Data Setting: G10 1. Function and purpose The G10 command allows tool offset data, workpiece offset data and parameter data to be set or modified in the flow of program. 2. Programming formats A. Programming workpiece offsets - Programming format for the workpiece origin data er ve d . G10 L2 P_ Xp_ Yp_ Zp__ (: Additional axis) gh ts re s P0: Coordinate shift (Added feature) P1: G54 P4: G57 P2: G55 P5: G58 P3: G56 P6: G59 al N o. 34 08 C 39 O R PO R A TI O G10 L20 P_ Xp_ Yp_ Zp__ (: Additional axis) P1: G54.1 P1 P2: G54.1 P2 P299: G54.1 P299 P300: G54.1 P300 N - Programming format for the additional workpiece origin data .A ll ri Data of P-commands other than those listed above are handled as P = 1. If P-command setting is omitted, the workpiece offsets will be handled as currently effective ones. K ZA K IM Metric A Se ri The setting ranges of the data at axial addresses are as follows: Inch ±99999.9999 mm ±9999.99999 in Rotational axis ±99999.9999° ±99999.9999° M Programming tool offsets YA B. A ZA Linear axis - Programming format for the tool offset data of Type A 01 3 G10 L10 P_R_ (c )2 P: Offset number R: Offset amount ig ht - Programming format for the tool offset data of Type B C op yr G10 L10 P_R_ G10 L11 P_R_ G10 L12 P_R_ G10 L13 P_R_ Geometric offset concerning the length Wear compensation concerning the length Geometric offset concerning the diameter Wear compensation concerning the diameter 12-56 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 The setting ranges for programming tool offset amount (R) are as follows: TOOL OFFSET Type A ±1999.9999 mm ±84.50000 in TOOL OFFSET Type B Length Geom. ±1999.9999 mm ±84.50000 in TOOL OFFSET Type B Length Wear ±99.9999 mm ±9.99999 in TOOL OFFSET Type B Dia. Geom. ±999.9999 mm ±84.50000 in TOOL OFFSET Type B Dia. Wear ±9.9999 mm ±0.99999 in . Inch Programming parameter data er ve d C. Metric ri gh ts re s G10 L50................ Parameter input mode ON N_P_R_ N_R_ G11 ..................... Parameter input mode OFF 34 08 C 39 O R PO R A TI O Specify the parameters with address N as indicated below: Parameter N: Number 1 to 200 B 1 to 200 C 1 to 200 D 1 to 144 E 1 to 144 F 1 to 168 (47 to 66 excluded) I 1 to 36 J 1 to 576 K 1 to 288 L 1 to 288 M 1 to 72 N 1 to 72 P 1 to 5 S SV P: Axis No. 1001 to 1200 — 2001 to 2200 — 3001 to 3200 — 4001 to — 5144 — 6001 to 6168 — 9001 to 9036 1 to 32 10001 to 10576 — 11001 to 11288 — 12001 to 12288 — 13001 to 13072 1 to 32 14001 to A ZA K 4144 5001 to 1 to 32 1 to 32 1 to 72 01 3 16001 to 16072 1 to 32 1 to 384 17001 to 17384 1 to 32 1 to 256 18001 to 18256 1 to 8 1 to 250 19001 to 19250 1 to 8 BA ht 1 to 264 20001 to 20264 — TC 1 to 308 21001 to 21308 — SU 1 to 168 22001 to 22168 — SD 1 to 168 23001 to 23168 — MS 1 to 132 25001 to 25132 — US 1 to 90 26001 to 25090 — op yr )2 (c SA YA 14072 150001 to 150005 ig M A ZA K IM Se ri al N o. A SP C N .A ll N: Parameter number P: Axis number (for axis type parameter) R: Data of parameter As for the setting ranges of parameter data, refer to the separate Parameter List/Alarm List/M-code List. 12-57 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 3. Detailed description Workpiece origin data input 1. The G10 command is not associated with movement. However, do not use this command in the same block with a G-code command other than: G21, G22, G54 to G59, G90 and G91. 2. Do not use the G10 command in the same block with a fixed cycle command or a subprogram call command. This will cause a malfunctioning or an alarm. 3. Irrespective of workpiece offset type (G54 - G59 and G54.1), the data to the axial addresses have to refer to the origin of the fundamental machine coordinate system. 4. Depending upon the data input mode — absolute (G90) or incremental (G91) — the designated data will overwrite, or will be added to, the existing data. 5. L-code and P-code commands can be omitted, indeed, but take notice of the following when omitting them: Omit both L-code and P-code commands only when ts 1) re s er ve d . A. ri The L-code command only may be omitted when the intended axial data refer to a coordinate system of the same type (in terms of L-code: L2 or L20) as the last selected one; give a P-command in such a case as follows: N .A ll 2) gh The axial data should refer to the coordinate system that was last selected. 34 08 C 39 O R PO R A TI O - Set an integer from 0 to 6 with address P to specify the coordinate shift data or one of the coordinate systems from G54 to G59. - Set an integer from 1 to 300 with address P to specify one of the additional workpiece coordinate systems of G54.1. o. If the P-code command only is omitted: N 3) K al An alarm will result if the value of L mismatches the coordinate system last selected. A ri K IM Se Example: ZA Axial data without a decimal point can be entered in the range from –99999999 to +99999999. The data settings at that time depend upon the data input unit. 6. G10 L2 P1 X–100. Y–1000 Z–100 B–1000 Y –1. Y –0.1 Y –0.1 Y –0.01 Z –0.1 Z –0.01 Z –0.01 Z –0.001 B –1. B –0.1 B –1. B –0.1 01 3 YA M A ZA The above command sets the following data: Metric system X –100. Metric system (up to 4 dec. places) X –100. Inch system X –100. Inch system (up to 5 dec. places) X –100. The origin data updated by a G10 command are not indicated as they are on the WORK OFFSET display until that display has been selected anew. 8. Setting an illegal L-code value causes an alarm. (c ht Setting an illegal P-code value causes an alarm. ig 9. )2 7. C op yr 10. Setting an illegal axial value causes an alarm. B. 11. The G10 command is invalid (or skipped) during tool path check. Tool offset data input 1. The G10 command is not associated with movement. However, do not use this command in the same block with a G-code command other than: G21, G22, G54 to G59, G90 and G91. 2. Do not use the G10 command in the same block with a fixed cycle command or a subprogram call command. This will cause a malfunctioning or an alarm. 3. Depending upon the data input mode — absolute (G90) or incremental (G91) — the designated data will overwrite, or will be added to, the existing data. 12-58 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 Offset data (R) without a decimal point can be entered in the range from –999999 to +999999 for geometric offset, or in the range from –99999 to +99999 for wear compensation. The data settings at that time depend upon the data input unit. 4. Example: G10 L10 P1 R1000 The above command sets the following data: Metric system 1. Metric system (up to 4 dec. places) 0.1 Inch system 0.1 Inch system (up to 5 dec. places) 0.01 The offset data updated by a G10 command are not indicated as they are on the TOOL OFFSET display until that display has been selected anew. 6. Setting an illegal L-code value causes an alarm. 7. A command of “G10 P_ R_” without an L-code is also available for tool offset data input. 8. Setting an illegal P-code value causes an alarm. 9. Setting an illegal offset value (R) causes an alarm. ri N Parameter data input The G10 command is not associated with movement. However, do not use this command in the same block with a G-code command other than: G21, G22, G54 to G59, G90 and G91. 2. Do not use the G10 command in the same block with a fixed cycle command or a subprogram call command. This will cause a malfunctioning or an alarm. 3. Other NC statements must not be given in the parameter input mode. 4. No sequence number must be designated with address N in the parameter input mode. 5. Irrespective of the data input mode — absolute (G90) or incremental (G91) — the designated data will overwrite the existing parameter. Moreover, describe all the data in decimal numbers (hexadecimal and bit type data, therefore, must be converted). K ZA K IM Example: A ri al N o. 34 08 C 39 O R PO R A TI O 1. Se C. .A ll 10. The G10 command is invalid (or skipped) during tool path check. gh ts re s er ve d . 5. For changing a bit type data of 00110110 to 00110111: M A ZA Since (00110111)2 = (55)10 [a binary number of 00110111 corresponds to “55” in decimal notation], set 55 with address R. All decimal places, even if inputted, are ignored. 7. Some specific bit-type parameters require selection of one of multiple bits. For the parameter shown as an example below, set data that turns on only one of bits 2 to 5. Example: Parameter K107 (c )2 01 3 YA 6. bit 6 5 4 3 2 1 0 ig ht 7 C op yr S-shaped speed filter S-shaped speed filter S-shaped speed filter S-shaped speed filter 7.1 ms 14.2 ms 28.4 ms 56.8 ms Setting “1” for bits 2 and 3, for example, could not make valid a speed filter of 21.3 ms (= 7.1 + 14.2). 8. The parameter data updated by a G10 L50 command are not made valid till the execution of a G11 command. 9. The parameter data updated by a G10 L50 command are not indicated as they are on the PARAMETER display until that display has been selected anew. 10. Setting an illegal L-code value causes an alarm. 11. Setting an illegal N-code value (parameter No.) causes an alarm. 12-59 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12. Omission of P-code for an axis type parameter causes an alarm. 13. Setting an illegal parameter value with address R causes an alarm. 14. The G10 command is invalid (or skipped) during tool path check. 15. As for parameters (BA, SU and MS) with separate values for each system, a G10 command is only effective for the values of the system to which the current program section belongs. 4. Sample programs A. Entering tool offset data from tape H10 = –12345 re s H40 = 2468 Updating tool offset data Example 2: gh (Z = –101000) ri G90 G43 Z–100000 H10 Z0 G10 L10 P10 R–500 G90 G43 Z–100000 H10 .A ll G01 G28 G91 G01 (–500 is added in the G91 mode.) (Z = –101500) 34 08 C 39 O R PO R A TI O N1 N2 N3 N4 ts Assumes that H10 has already been set equal to –1000. Example 1: N B. H05 = 98765 er ve d . G10L10P10R–12345 G10L10P05R98765 G10L10P40R2468 Assumes that H10 has already been set equal to –1000. N o. Main program N1 G00 X100000 ........................................ a N2 #1=–1000 N3 M98 P1111L4 ........................................ b1, b2, b3, b4 A K ZA K IM A Se ZA ri al Subprogram O1111 N1 G01 G91 G43 Z0 H10 F100 ........ c1, c2, c3, c4 N2 G01 X1000 ............................................ d1, d2, d3, d4 N3 #1=#1–1000 N4 G90 G10 L10 P10 R#1 N5 M99 (b1) M (a) (b2) (b3) (b4) 1000 d1 c2 1000 d2 c3 1000 d3 c4 d4 1000 op yr ig ht (c )2 01 3 YA c1 C Note: Final offset stroke: H10 = –5000 1000 1000 1000 1000 12-60 MEP134 Serial No. 340839 TOOL OFFSET FUNCTIONS Example 3: 12 The programs in Example 2 above can be rewritten as follows: Main program N1 G00 X100000 N2 M98 P1111 L4 Subprogram O1111 N1 G01 G91 G43 Z0 H10 N2 G01 X1000 N3 G10 L10 P10 R–1000 N4 M99 Even when the command code is displayed on <Next Command>, the current offset number and variables will remain unupdated until that command is executed. N1 G10 L10 P10 R–100 N2 G43 Z–10000 H10 N3 G0 X–10000 Y–10000 N4 G10 L10 P10 R–200 Executing block N4 will cause an offset stroke in H10 to be updated. Updating the workpiece coordinate system offset data .A ll C. ri gh ts re s er ve d . Note: F100 N100 N101 N102 M02 Y = –10.000 34 08 C 39 O R PO R A TI O X = –10.000 N Assume that the previous workpiece coordinate system offset data is as follows: Y–15.000 –20. K ZA –10. M Fundamental machine coordinate system zero point YA M A ZA –X A K IM Se ri al N o. G00 G90 G54 X0 Y0 G10 L2 P1 X–15.000 X0 Y0 01 3 )2 –X N100 Coordinate system of G54 before change (c ht Coordinate system of G54 after change –X yr ig N102 W1 C op –10. N101 (W1) –20. –Y –Y –Y MEP135 12-61 Serial No. 340839 12 TOOL OFFSET FUNCTIONS Note 1: Changes in the display of the workpiece position at N101 At N101, the display of tool position in the G54 coordinate system changes before and after workpiece coordinate system updating with G10. X = +5.000 X=0 Y = +5.000 Y=0 Programming for using one workpiece coordinate system as multiple workpiece coordinate systems ri .A ll #1=–50. #2=10. M98 P200 L5 M02 % N1 G90 G54 G10 L2 P1 X#1 N2 G00 X0 Y0 N3 X–5. F100 N4 X0 Y–5. N5 Y0 N6 #1=#1+#2 N7 M99 % gh ts D. re s er ve d . Note 2: Prepare the following program to set workpiece coordinate system offset data in G54 to G59: G10L2P1X–10.000 Y–10.000 G10L2P2X–20.000 Y–20.000 G10L2P3X–30.000 Y–30.000 G10L2P4X–40.000 Y–40.000 G10L2P5X–50.000 Y–50.000 G10L2P6X–60.000 Y–60.000 34 08 C 39 O R PO R A TI O N Main program –60. –50. –40. K ZA A –30. –20. M 01 3 YA G54'''' (c )2 G54''' W W M ig G54' G54 W W W –10. Fundamental machine coordinate system zero point 5th cycle –20. 4th cycle –30. ht G54'' yr op C –10. A –X ZA K IM Se ri al N o. Subprogram (O200) Y#1 3rd cycle –40. 2nd cycle –50. 1st cycle –Y MEP136 12-62 Serial No. 340839 TOOL OFFSET FUNCTIONS E. Programming for parameter data input G10L50 N4017R10 N6088R96 N12067R–1000 N12072R67 N150004P1R50 G11 5. 12 Parameter input mode ON D17 is set to “10”. F88 is set to “01100000”. [ (01100000)2 = (96)10 ] L67 is set to “–1000”. L72 is set to “0x43”. [ (43)16 = (67)10 ] P4 data for the 1st axis (X-axis) is set to “50”. Parameter input mode OFF Related alarms Alarm message Cause Remedy re s gh Parameter input: An illegal parameter number is set. Review the program data. ts ILLEGAL FORMAT N .A ll Work offset input: The setting range of the coordinate system number or the offset data is overstepped. ri 807 Work offset input: P-command is omitted in a block of G10 L20 (or L2) although the last selected coordinate system is one of the systems from G54 to G59 (or of the G54.1 systems). er ve d . Alarm No. 34 08 C 39 O R PO R A TI O Tool offset input: The setting range of the offset data is overstepped. ILLEGAL NUMBER INPUT Review the program data. Parameter input: The axis number is not specified for an axis type parameter. The setting range of the axis number or the parameter data is overstepped. N o. 809 A ZA al ri C op yr ig ht (c )2 01 3 YA M A ZA K IM Se K Tool offset input: The specified offset number is greater than the number of available data sets. ILLEGAL OFFSET No. 839 12-63 Correct the offset number according to the number of available data sets. Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-8 Tool Offsetting Based on MAZATROL Tool Data Parameter selection allows both tool length offset and tool radius compensation to be performed using MAZATROL tool data (tool diameter and tool length data). 12-8-1 Selection parameters Using the following parameters, select whether or not MAZATROL tool data is to be used: User parameters F92 bit 7 = 1: Tool radius compensation uses the MAZATROL tool data ACT- (tool diameter data). er ve d . F93 bit 3 = 1: Tool length offsetting uses the MAZATROL tool data LENGTH (tool length data). re s F94 bit 2 = 1: Tool length offsetting using the MAZATROL tool data is prevented from being cancelled by a reference-point return command. TOOL OFFSET Tool offset No. LENGTH 0 G43/G44 H_ 0 T_ + H_ - Length offset cancellation not required for tool change. - G43 not required. 1 G43/G44 H_ Length offset cancellation required for tool change. [*] 0 (G43/G44 H_) + (T_) Length offset cancellation required for tool change. [*] 1 1 0 1 o. LENGTH + OFFSET No. or LENGTH + LENG CO. K ZA Se ri al or K IM A Tool offset No. + LENGTH - Set G49 before tool change command. - Set G28/G30 before tool change command (when F94 bit 2 = 0). M Tool radius compensation YA 2. A ZA [*] Canceling method Remarks T_ OFFSET No. LENG CO. TOOL OFFSET + TOOL DATA Programming format N TOOL DATA (MAZATROL) Parameter F93 F94 bit 3 bit 7 34 08 C 39 O R PO R A TI O Data items used .A ll Tool length offsetting N 1. ri gh ts F94 bit 7 = 1: Tool offsetting uses the MAZATROL tool data ACT- CO. (or No.) and LENG CO. (or No.). (Set F94 bit 7 to 0 to use the data stored on the TOOL OFFSET display.) )2 01 3 Parameter ht (c TOOL OFFSET C op yr ig TOOL DATA (MAZATROL) TOOL OFFSET + TOOL DATA Data items used F92 bit 7 F94 bit 7 Tool offset No. 0 0 G41/G42 D_ ACT- + ACT- CO. or ACT- + OFFSET No. 1 1 G41/G42 T_ ACT- CO. or OFFSET No. 0 1 G41/G42 T_ 1 0 G41/G42 D_ + T_ Tool offset No. + ACT- 12-64 Programming format Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-8-2 Tool length offsetting 1. Function and purpose Even when offset data is not programmed, tool length offsetting will be performed according to the MAZATROL tool data LENGTH that corresponds to the designated tool number. 2. Parameter setting Set both bit 3 of parameter F93 and bit 2 of parameter F94 to 1. Detailed description Tool length offsetting is performed automatically, but its timing and method differ as follows: - After a tool change command has been issued, offsetting is performed according to the LENGTH data of the tool mounted in the spindle. (A tool change command code must be set in the program before tool length offsetting can be done.) - After command G43 has been set, offsetting is performed according to the LENGTH data of the tool mounted in the spindle. 2. Tool length offsetting is cancelled in the following cases: - When a command for tool change with some other tool is executed - When M02 or M30 is executed - When the key is pressed - When command G49 is issued - When a reference-point return command is executed with bit 2 of parameter F94 set to 0 3. Tool length offsetting becomes valid for the block onward that first involves Z-axis movement after tool change. This does not apply, however, if the first motion block in question is of G28, G30, or G53. 4. If this offset function is used with a G43 H-command, offsetting will use as its offset data the sum total of the MAZATROL tool data LENGTH and the offset amount specified by the G43 H (or G44 H) command. . 1. K ZA A K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d 3. C op yr ig ht (c )2 01 3 YA M A ZA Note 1: Set G43 H0 if tool length offsetting is to be done using a G43 H-command and only the offset amount specified by H is to be cancelled. Note 2: With a G44 command, tool length offsetting based on MAZATROL tool data is not performed. Note 3: The restart operation must begin from a position before a G43 command code or a tool change command code. Even when the spindle has a mounted tool, G43 or the tool change command must be executed before offsetting based on MAZATROL tool data can take place. Note 4: Offsetting will fail if registered MAZATROL tool data LENGTH is not present. Note 5: For an EIA/ISO program, to carry out tool length offset operations using the tool length data included in MAZATROL tool data, it becomes necessary to set data in the validation parameter for the tool length data of the MAZATROL tool data and to insert a tool change T- and M-code command block. It is to be noted that the tool change command block may not be missed particularly in the following cases: - During automatic operation, if the first tool to be used has already been mounted in the spindle. - During call of an EIA/ISO program as a subprogram from the MAZATROL main program, if the tool to be used immediately prior to call of the subprogram is the same as that which is to be designated in that subprogram as the first tool to be used. 12-65 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 4. Sample programs Machine zero point Workpiece coordinate Z (G54) Offsetting values: (LENGTH = 95.) +5.00 . er ve d 34 08 C 39 O R PO R A TI O N .A ll ri Workpiece zero point re s T01: LENGTH =95. G94 G00 G40 G80 G28 Z0 T00 M06 G54 X-100. Y0 Z5. Z-50. F100 ts N001 G90 N002 G91 N003 T01 N004 G90 N005 G0 N006 G01 BA62 gh Length offset amount =100. 12-8-3 Tool radius compensation 1. Function and purpose Detailed description K ZA ZA 3. K IM Set bit 7 of parameter F92 to 1. A Parameter setting Se 2. ri al N o. Tool radius compensation by a G41 or G42 command uses MAZATROL tool data ACT- for the calculation of offset amount. YA M A - Tool radius compensation uses as its offset amount the half of the diameter data of the tool which is mounted in the spindle at the issuance of G41/G42. 01 3 - Tool radius compensation is cancelled by G40. (c )2 - If the tool radius compensation function is used with a D-command, the sum total of the data indicated by the corresponding offset number (D) and the radius of the tool will be used as the offset data. C op yr ig ht Note 1: The tool used must be mounted in the spindle before restarting the program. Note 2: Offsetting based on tool diameter data will not occur if registered MAZATROL tool diameter data is not present or if a tool for which tool diameter data cannot be entered is to be used. Note 3: To carry out for an EIA/ISO program the tool radius compensation operations using the tool diameter data included in MAZATROL tool data, it is necessary to insert tool change command blocks, as it is the case for tool length offsetting (refer to Note 5 in Subsection 12-8-2). 12-66 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-8-4 Tool data update (during automatic operation) 1. Function and purpose Tool Data Update allows MAZATROL tool data to be updated during automatic operation based on an EIA/ISO program. 2. Parameter setting Set parameter L57 to 1. 3. Detailed description MAX. ROT. ts TOOL NOM- ACT- LENGTH LENG COMP. THRUST F/ HORSE PW LIFE TIME CUT TIME L57 = 0 No No No No No No Yes Yes No Yes L57 = 1 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes ri re s MAT. gh Parameter er ve d . This function allows the entire tool data, except for spindle tools, to be updated during automatic operation based on an EIA/ISO program. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll Note 1: In the table given above, “Yes” indicates that you can update the data, and “No” indicates that you cannot update the data. Identification between MAZATROL programs and EIA/ISO programs is automatically made by whether the program currently being executed, is MAZATROL or EIA/ISO, irrespective of whether it is a main program or subprogram. If, however, the main program is MAZATROL and its subprograms are EIA/ISO, then the currently active set of programs is regarded as a MAZATROL program. Note 2: An alarm 428 MEMORY PROTECT (AUTO OPERATION) will occur if the spindle tool data is modified during automatic operation based on an EIA/ISO program. 12-67 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-9 Shaping Function (Option) 12-9-1 Overview The shaping function is provided to control the rotational axis concerned in order to keep the tool set normal (perpendicular) to the direction of the movement in the XY-plane. This optional function permits free-form shapes such as the rubber oil-seal surface to be cut out for a better surface finish than with an end-milling tool. Note : The name of the rotational axis to be controlled for the shaping function depends on the construction of the machine in question. The description in this section assumes that the rotational axis concerned is named V-axis. re s er ve d . The V-axis control is automatically performed at block connections to keep the tool normally oriented. ri gh ts Rotational axis (V-axis) N K A MEP304 K IM Se ri Tool nose ZA al N o. 34 08 C 39 O R PO R A TI O Rotation on the V-axis .A ll Tool 01 3 YA M A ZA During circular interpolation, the V-axis is continuously controlled in synchronization with the tool movement. Rotation on the V-axis Rotation on the V-axis Tool C op yr ig ht (c )2 Arc center Tool nose 12-68 MEP305 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-9-2 Programming format G40.1 G41.1 G42.1 X x Yy Ff G40.1: Cancellation of shaping G41.1: Selection of shaping to the left (normal orientation on the left side) G42.1: Selection of shaping to the right (normal orientation on the right side) x: X-axis position of ending point y: Y-axis position of ending point f : Feed rate er ve d . Note 1: The codes G40.1, G41.1 and G42.1 belong to group 15 of G-codes. ts re s Note 2: The shaping control (orientation of the tool) can only be performed in the XY-plane, regardless of the plane currently selected. gh Tool nose path Axis of rotation N Programmed contour 34 08 C 39 O R PO R A TI O Programmed contour .A ll ri Tool nose path K ZA A MEP306 A ZA 12-9-3 Detailed description M Definition of the V-axis angle YA 1. G42.1: Shaping to the right K IM Se G41.1: Shaping to the left ri al N o. Axis of rotation (c )2 01 3 The V-axis angle with the tool oriented in the +X direction is defined as 0°, and counterclockwise rotation is defined as positive (+). Z V-axis angle +X direction +Y direction –X direction –Y direction 0° 90° 180° 270° (–90°) Tool C op yr ig ht Tool orientation Axis of rotation Y 90° + direction – direction 180° 0° X Tool 270° (–90°) Definition of the V-axis angle 12-69 MEP307 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 2. Movement A. Start up The V-axis rotation is performed at the starting point of the first shaping block and then the Xand Y-axis movement is carried out with the tool normally oriented. The direction of the preparatory rotation is automatically selected for the smallest angel ( 180°). Selection in a single-command block N3 N1 N1 G01 Xx1 Yy1 Ff1 N2 G41.1 N3 Xx2 Yy2 . N3 er ve d Tool nose path G41.1 execution re s (x1, y1) gh ts Programmed contour (x2, y2) N MEP308 34 08 C 39 O R PO R A TI O Selection in a block containing motion command .A ll ri No movement for N2 G41.1 execution Tool nose path N2 N2 N o. N1 N1 G01 Xx1 Yy1 Ff1 N2 G41.1 Xx2 Yy2 K K IM A Se Programmed contour ZA ri al (x1, y1) ZA MEP309 A Cancellation M B. (x2, y2) YA After cancellation of shaping, the X- and Y-axis movement is carried out without V-axis rotation. (c )2 01 3 Cancellation in a single-command block G40.1 execution N3 N1 (x1, y1) N1 Xx1 Yy1 N2 G40.1 N3 Xx2 Yy2 C op yr ig ht Tool nose path Programmed contour (x2, y2) No movement for N2 MEP310 12-70 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 Cancellation in a block containing motion command Tool nose path G40.1 execution N2 N1 N1 Xx1 Yy1 N2 G40.1 Xx2 Yy2 (x1, y1) Programmed contour er ve d . (x2, y2) MEP311 Movement in the shaping mode re s C. gh ts Execution of a block N Block of circular interpolation .A ll The tool moves linearly without V-axis rotation. ri Block of linear interpolation 34 08 C 39 O R PO R A TI O The angular position on the V-axis is continuously controlled in synchronization with the circular movement of the tool. K ZA K IM Arc center (i, j) A Se ri al N o. Tool nose path N2 (x1, y1) MEP312 C op yr ig ht (c )2 01 3 YA M A ZA Programmed contour N1 G41.1 N2 G02 Xx1 Yy1 Ii Jj 12-71 Serial No. 340839 12 TOOL OFFSET FUNCTIONS Connection between blocks Without tool radius compensation An independent V-axis rotation is performed at the end of the preceding block to orient the tool in the normal direction with respect to the starting motion of the next block. er ve d . Tool nose path <linear—linear> ts re s Programmed contour <circular—circular> ri gh <linear—circular> .A ll With tool radius compensation MEP313 34 08 C 39 O R PO R A TI O N The tool radius compensation automatically inserts linear segments for connection between blocks whose paths cross each other at a sharp angle. The shaping function controls the V-axis so as to orient the tool in accordance with the offset tool path. K ZA A A ZA K IM Se ri al N o. Tool nose path YA M Programmed contour Radially offset path <linear—circular> 01 3 <linear—linear> <circular—circular> C op yr ig ht (c )2 MEP314 12-72 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 Direction of V-axis rotation at block connections The rotation on the V-axis occurs in the negative direction (clockwise) in the mode of G41.1, or in the positive direction (counterclockwise) in the mode of G42.1, at block connections. Parameter K2 (: minimum allowable angle of V-axis rotation) is provided to suppress the rotation as described below. Direction of V-axis rotation at block connections For G41.1: negative (CW) For G42.1: positive (CCW) Suppression or prohibition of V-axis rotation at block connections er ve d . : Rotational angle required : Parameter K2 (minimum allowable angle of V-axis rotation) re s < The V-axis rotation is suppressed. ri gh ts In the mode of G41.1: < 180° – Alarm No. 147 SHAPING AXIS TURNING ANGLE OVER will be caused. 34 08 C 39 O R PO R A TI O N .A ll In the mode of G42.1: 180° + < 360° – Alarm No. 147 SHAPING AXIS TURNING ANGLE OVER will be caused. 90° K ZA A ri ZA A YA MEP315 01 3 The V-axis rotation is suppressed if the angle of rotation required is smaller than parameter K2 ( < ). The rotational angle thus ignored will surely be added to the angle of the next rotation required, which will then be actually performed or further suppressed according to the result of the accumulation. C op yr ig ht (c )2 Note : 0° – Alarm 147 SHAPING AXIS TURNING ANGLE OVER M 270° + Rotation suppressed K IM Se 180° 180°+ al N o. V-axis rotation 12-73 Serial No. 340839 12 TOOL OFFSET FUNCTIONS Angle at a block connection: G41.1 G42.1 V-axis rotation suppressed V-axis rotation suppressed 1. – < < + 90° + 180° – 0° er ve d . 270° re s 2. + < < (180° – ) ri gh ts 90° .A ll + 180° – 180° 34 08 C 39 O R PO R A TI O N 0° Alarm 147 SHAPING AXIS TURNING ANGLE OVER 270° 180° – 180° 180° + K A K IM Se ri 90° ZA al N o. 3. (180° – ) (180° + ) YA 01 3 270° M A ZA 0° (c )2 4. (180° + ) (360° – ) op yr ig ht 90° 0° 360° – C 180° 180° + 270° Alarm 147 SHAPING AXIS TURNING ANGLE OVER 12-74 Serial No. 340839 TOOL OFFSET FUNCTIONS 3. 12 Speed of V-axis rotation for shaping At block connection The V-axis rotation is performed at such a speed that the tool nose will move at the speed specified by the F-code. The V-axis rotational speed Fc is calculated as follows: F R er ve d . Fc F MEP316 ts F re s R 34 08 C 39 O R PO R A TI O If parameter K1 (radius of V-axis rotation) = 0 N 180 (deg/min) Fc = F × R .A ll ri gh If parameter K1 (radius of V-axis rotation) 0 Fc = F (deg/min) o. F: Feed rate (mm/min) R: Parameter K1 (mm) [radius of V-axis rotation (distance between V-axis and tool nose)] K ZA K IM During circular interpolation A Se ri al N The V-axis rotation, however, is controlled in order that the preset maximum allowable cutting speed of the V-axis should not be exceeded, regardless of the result Fc of the above calculation. Rapid traverse occurs according to parameter M1 (rapid traverse speed [for the V-axis]). F R Fr r yr ig ht (c )2 01 3 YA M A ZA The circular interpolation is performed at such a speed that the tool nose will move at the speed specified by the F-code. The cutting feed rate of the circular interpolation (Fr) is calculated as follows: C op MEP317 r Fr = F × R + r (mm/min) F: Feed rate (mm/min) r : Radius of circular interpolation (mm) R: Parameter K1 (mm) [radius of V-axis rotation (distance between V-axis and tool nose)] The speed of the circular interpolation (F), however, is automatically controlled in order that the preset maximum allowable cutting speed of the V-axis should not be exceeded. 12-75 Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-9-4 Remarks 1. If the axis of the work spindle is to be used for shaping control, the spindle axis must be changed over to a servoaxis (V-axis). The following M-codes are provided to select the control mode of the work spindle. M193: Selection of spindle as the V-axis (Servo On) M194: Selection of spindle as the milling spindle (Servo Off) 2. In the mode of single-block operation, interlocking at the start of cutting block or each block, the operation will be stopped before the preparatory rotation on the V-axis. ri gh ts re s er ve d . Block stop position .A ll MEP318 The V-axis motion command is ignored in the mode of shaping. 4. The workpiece origin offsetting for the V-axis (G92 Vv) cannot be set in the mode of shaping (G41.1 or G42.1). Setting such a command will only result in alarm 807 ILLEGAL FORMAT. 5. With the mirror image selected for the X- or Y-axis, the direction of the V-axis rotation is reversed. al N o. 34 08 C 39 O R PO R A TI O N 3. Mirror image OFF A ZA K Y A ZA K IM Se ri Mirror image on the X-axis ON Mirror image on the Xand Y-axes ON ig ht (c )2 01 3 YA M X Mirror image on the Y-axis ON 6. The indication for the V-axis under BUFFER on the POSITION display refers to an absolute value. 7. For the connection between blocks, the BUFFER area on the POSITION display indicates the angle of the V-axis rotation in addition to the distance of the X- and Y-axis movement. C op yr MEP319 12-76 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-9-5 Relationship to other functions A. Commands available in the mode of shaping control Function Code Function Code G00 Tool radius compensation (to the left) G41 Linear interpolation G01 Tool radius compensation (to the right) G42 Threading with C-axis interpolation G01.1 Tool length offset (+) G43 Circular interpolation (CW) G02 Tool length offset (–) G44 Circular interpolation (CCW) G03 Helical interpolation (CW) G02 Tool position offset G45, G46, G47, G48 Helical interpolation (CCW) G03 Tool position offset OFF G49 Spiral interpolation (CW) (*1) G02.1 Mirror image by G-code OFF Spiral interpolation (CCW) (*1) G03.1 Mirror image by G-code ON Dwell G04 Local coordinate system setting (*4) Fine spline interpolation G06.1 Selection of machine coordinate system NURBS interpolation G06.2 Virtual-axis interpolation G07 Cylindrical interpolation G07.1 One-way positioning (*3) Exact-stop check (*2) G09 Exact stop mode (*2) Programmed data setting ON G10 Modal spline interpolation G61.2 Programmed data setting OFF G11 Cutting mode G64 Polar coordinate interpolation ON G12.1 User macro single call G65 Polar coordinate interpolation OFF G13.1 User macro modal call A G66 Selection of XY-plane G17 User macro modal call B G66.1 Selection of ZX-plane G18 User macro modal call OFF G67 Selection of YZ-plane G19 3-D coordinate conversion OFF G69 Hole-machining fixed cycles G71.1 - G89 Pre-move stroke check ON YA Return from reference point (*3) M Return to reference point (*3) A Reference point check er ve d re s ts gh ri .A ll N 34 08 C 39 O R PO R A TI O K ZA G54/G55/G56/ G57/G58/G59 G60 G61 G93 G23 Feed per minute (asynchronous) G94 G27 Feed per revolution (synchronous) (*5) G95 G28 Initial point level return in hole-machining fixed cycles G98 R-point level return in hole-machining fixed cycles G99 A G90/G91 G29 Skip function G31 01 3 G53 Inverse time feed G30 G40 (c )2 G52 Absolute/Incremental data input Return to 2nd, 3rd and 4th reference points Tool radius compensation OFF G51.1 G22 ZA Pre-move stroke check OFF Shaping cannot be realized correctly since the starting and ending point do not lie on one and the same circumference. ht *1 Deceleration up to stop does not occur for the rotation on the V-axis. Shaping control is suppressed. The rotation on the V-axis is performed with reference to the coordinate system established in the shaping mode. The designated rate of feed per revolution cannot be obtained since the spindle is controlled as the V-axis. C op yr ig *2 *3 *4 *5 o. N G21 K IM Metric command G50.1 Selection of workpiece coordinate systems al ri G20 Se Inch command . Positioning Giving any other command than those enumerated above in the mode of shaping control will lead to various alarms (according to the unavailable commands given). 12-77 Serial No. 340839 12 TOOL OFFSET FUNCTIONS B. Modes in which shaping control is selectable (with G41.1 or G42.1) Function Code Function Code G00 Tool length offset (+) G43 Linear interpolation G01 Tool length offset (–) G44 Threading with C-axis interpolation G01.1 Tool position offset OFF G49 Circular interpolation (CW) G02 Mirror image by G-code OFF G50.1 Circular interpolation (CCW) G03 Mirror image by G-code ON G51.1 Helical interpolation (CW) G02 Helical interpolation (CCW) G03 Selection of workpiece coordinate systems G54/G55/G56/ G57/G58/G59 Spiral interpolation (CW) (*1) G02.1 Exact stop mode (*2) G61 Spiral interpolation (CCW) (*1) G03.1 Geometry compensation (*3) G61.1 Fine spline interpolation G06.1 Modal spline interpolation NURBS interpolation G06.2 Cutting mode Cylindrical interpolation G07.1 User macro modal call A Programmed data setting ON G10 User macro modal call B Programmed data setting OFF G11 User macro modal call OFF Polar coordinate interpolation ON G12.1 3-D coordinate conversion ON Polar coordinate interpolation OFF G13.1 3-D coordinate conversion OFF G69 Selection of XY-plane G17 Hole-machining fixed cycles G71.1 - G89 Selection of ZX-plane G18 Absolute/Incremental data input G90/G91 Selection of YZ-plane G19 Inverse time feed G93 Inch command G20 Feed per minute (asynchronous) G94 Metric command G21 Feed per revolution (synchronous) (*4) G95 Pre-move stroke check ON G22 Pre-move stroke check OFF G23 Initial point level return in hole-machining fixed cycles G98 Tool radius compensation OFF G40 R-point level return in hole-machining fixed cycles G99 er ve d re s G64 N .A ll ri gh ts G66 34 08 C 39 O R PO R A TI O o. G66.1 G67 G68 A ZA K N al ri G42 G61.2 K IM Tool radius compensation (to the right) G41 Se Tool radius compensation (to the left) . Positioning Shaping cannot be realized correctly since the starting and ending point do not lie on one and the same circumference. Deceleration up to stop does not occur for the rotation on the V-axis. Shaping cannot be realized correctly since fixed gradient control cannot be applied to the rotation on the V-axis. Use the following parameter as required to specify whether or not to raise an alarm if shaping control should be selected in the mode of geometry compensation. F331 bit 5 = 0: No alarm is raised. = 1: Alarm 822 ILLEGAL MODAL is raised. ZA *1 01 3 YA M A *2 *3 The designated rate of feed per revolution cannot be obtained since the spindle is controlled as the V-axis. )2 *4 C op yr ig ht (c Giving a G41.1 or G42.1 command in a mode other than those enumerated above will lead to various alarms (according to the improper modes). 12-78 Serial No. 340839 TOOL OFFSET FUNCTIONS 12 12-9-6 Sample program Subprogram WNo. 1001 O1000 G91G28 X0 Y0 Z0 M193 G28 C0 G90 G92 G53 X0 Y0 Z0 G00 G54 G43 X35.Y0.Z100.H1 G00 Z3. G01 Z0.1 F3000 O1001 G17 G91 G01 Y20.,R10.Z-0.01 X-70.,R10. Y-40.,R10. X70. ,R10. Y20. M99 % G42.1 M98 P1001 L510 M98 P1002 L2 WNo. 1002 G91 G01 Y10.Z0.05 G40.1 G90 G00 Z100. G28 X0 Y0 Z0 G00 C0 M194 M30 % O1002 G17 G91 G01 Y20.,R10. X-70.,R10. Y-40.,R10. X70.,R10. Y20. M99 % ts gh ri .A ll N 34 08 C 39 O R PO R A TI O o. A ZA K N al ri Se K IM R10 20 A 10 5 W R10 YA M 0.1 01 3 R10 20 )2 W: Workpiece origin of G54 35 MEP321 C op yr ig ht (c Spindle (V-axis) Tool ZA R10 35 re s er ve d . Main program WNo. 1000 12-79 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 12 TOOL OFFSET FUNCTIONS 12-80 E Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13 PROGRAM SUPPORT FUNCTIONS 13-1 Hole Machining Pattern Cycles: G34.1/G35/G36/G37.1 13-1-1 Overview 1. Function and purpose Hole machining patterns are used to arrange on a predetermined pattern hole positions at which to execute a hole-machining cycle. er ve d . Give beforehand a command of the desired hole-machining cycle without any axis positioning data (which only causes storage of the hole-machining data to be executed at the arranged hole positions). ts re s The execution of this command begins with the positioning to the first one of the arranged holes. The type of hole machining depends on the corresponding cycle designated last. .A ll ri gh The current mode of hole-machining cycle will remain active over the execution of this command till it is cancelled explicitly. N This command will only activate positioning when it is given in any other mode than those of hole-machining cycle. List of hole machining pattern cycles Argument addresses o. Description Remarks N G-code X, Y, I, J, K G35 Holes on a line G36 Holes on an arc G37.1 Holes on a grid Note : In order that it may function correctly, do not give a command of hole machining pattern cycle in one block together with any one for the following functions (described in this chapter): ZA X, Y, I, J, K X, Y, I, J, P, K X, Y, I, P, J, K M A ZA K IM A ri K Holes on a circle al G34.1 Se 2. 34 08 C 39 O R PO R A TI O These commands only cause positioning at the speed of the current modal condition (of G-code group 01) in default of any preceding hole-machining cycle. YA Fixed cycle Subprogram control C op yr ig ht (c )2 01 3 Macro call 13-1 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-1-2 Holes on a circle: G34.1 As shown in the format below, a command of G34.1 determines a circle of radius “r” around the center designated by X and Y. The circumference is then divided, beginning from the point of the central angle “”, regularly by “n”, and the hole machining designated beforehand by a fixed cycle (G81 etc.) will be done around all the vertices of the regular n-gon. The movement in the XY-plane from hole to hole occurs rapidly (under G00). The argument data of the G34.1 command will be cleared upon completion of its execution. 1. Programming format G34.1 Xx Yy Ir J Kn; er ve d . X, Y : Coordinates of the center of the circle. : Radius (r) of the circle. Always given in a positive value. J : Central angle () of the first hole. Positive central angles refer to counterclockwise measurement. K : Number (n) of holes to be machined (from 1 to 9999). The algebraic sign of argument K refers to the rotational direction of the sequential machining of “n” holes. Set a positive and a negative number respectively for counterclockwise and clockwise rotation. Sample programes 34 08 C 39 O R PO R A TI O 2. N .A ll ri gh ts re s I Given below is an example of G81 hole machining with a figure representing the hole positions. N001 G91; N002 G81 Z-10. R5. L0. F200; K ZA A x = 200 ZA K IM Se ri al N004 G80; N005 G90 G0 X500. Y100.; N o. N003 G90 G34.1 X200. Y100. I100. J20. K6; = 20° YA M A r = 100 01 3 y = 100 ht (c )2 n=6 Last position before (500, 100) G34.1 execution Notes C op 3. yr ig D740PB0007 Give a G90 or G91 command as required to designate the axis position in absolute or incremental values. As shown in the above example, the last position of the G34.1 command is on the last one of the arranged holes. Use the method of absolute data input, therefore, to specify the movement to the position for the next operation desired. (An incremental command would require a more or less complicated calculation with respect to that last hole.) 13-2 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-1-3 Holes on a line: G35 As shown in the format below, a command of G35 determines a straight line through the starting point designated by X and Y at the angle “” with the X-axis. On this line “n” holes will be machined at intervals of “d”, according to the current mode of hole machining. The movement in the XY-plane from hole to hole occurs rapidly (under G00). The argument data of the G35 command will be cleared upon completion of its execution. 1. Programming format G35 Xx Yy Id J Kn; X, Y : Coordinates of the starting point. J K : Angle () of the line. Positive angles refer to counterclockwise measurement. : Number (n) of holes to be machined (from 1 to 9999), inclusive of the starting point. ts re s er ve d . : Interval (d) between holes. Change of sign for argument I causes a centrically symmetric hole arrangement with the starting point as the center. gh Sample programes ri 2. I .A ll Given below is an example of G81 hole machining with a figure representing the hole positions. N001 G91; 34 08 C 39 O R PO R A TI O N N002 G81 Z-10. R5. L0. F100; K ZA = 30° K IM ZA y = 100 n=5 d = 100 A Se ri al N o. N003 G35 X200. Y100. I100. J30. K5; N004 G80; x = 200 YA M A Last position before G35 execution 01 3 Notes )2 3. D740PB0008 ht (c Give a G90 or G91 command as required to designate the axis position in absolute or incremental values. C op yr ig Omission of argument K or setting “K0” will result in an alarm. A setting of K with five or more digits will lead to the lowest four digits being used. In a block with G35 any words with addresses other than G, L, N, X, Y, I, J, K, F, M, S, T and B will simply be ignored. Giving a G-code of group 00 in the same block with G35 will cause an exclusive execution of either code which is given later. In a block with G35 a G22 or G23 command will simply be ignored without affecting the execution of the G35 command. 13-3 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-1-4 Holes on an arc: G36 As shown in the format below, a command of G36 determines a circle of radius “r” around the center designated by X and Y. On the circumference “n” holes will be machined, starting from the point of the central angle “”, at angular intervals of “”, according to the current mode of hole machining. The movement in the XY-plane from hole to hole occurs rapidly (under G00). The argument data of the G36 command will be cleared upon completion of its execution. 1. Programming format G36 Xx Yy Ir J P Kn; er ve d . X, Y : Coordinates of the center of the arc. : Radius (r) of the arc. Always given in a positive value. J : Central angle () of the first hole. Positive central angles refer to counterclockwise measurement. P : Angular interval () between holes. The algebraic sign of argument P refers to the rotational direction of the sequential machining of “n” holes. Set a positive and a negative value respectively for counterclockwise and clockwise rotation. : Number (n) of holes to be machined (from 1 to 9999). Sample programes 34 08 C 39 O R PO R A TI O 2. N K .A ll ri gh ts re s I Given below is an example of G81 hole machining with a figure representing the hole positions. N001 G91; N002 G81 Z–10. R5. F100; K ZA A ZA K IM Se ri al N o. N003 G36 X300. Y100. I300. J10. P15. K6; N004 G80; n=6 M A = 15° YA = 10° 01 3 y = 100 x = 300 (c )2 Last position before G36 execution yr Notes Give a G90 or G91 command as required to designate the axis position in absolute or incremental values. C op 3. ig ht D740PB0009 13-4 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-1-5 Holes on a grid: G37.1 As shown in the format below, a command of G37.1 determines a grid pattern of [x][nx] by [y][ny] with the point designated by X and Y as starting point. On the grid points the hole machining designated beforehand by a fixed cycle will be done “nx” in number along the X-axis at intervals of “x”, and “ny” in number along the Y-axis at intervals of “y”. The main progression of machining occurs in the X-axis direction. The movement in the XY-plane from hole to hole occurs rapidly (under G00). The argument data of the G37.1 command will be cleared upon completion of its execution. 1. Programming format er ve d . G37.1 Xx Yy Ix Pnx Jy Kny; X, Y : Coordinates of the starting point. : Hole interval (x) on the X-axis. Set a positive and a negative value to arrange holes in respective directions from the starting point on the X-axis. P : Number (nx) of holes to be arranged on the X-axis (from 1 to 9999). J : Hole interval (y) on the Y-axis. Set a positive and a negative value to arrange holes in respective directions from the starting point on the Y-axis. : Number (ny) of holes to be arranged on the Y-axis (from 1 to 9999). Sample programs 34 08 C 39 O R PO R A TI O 2. N K .A ll ri gh ts re s I K ZA K IM y = 100 A Se ri al N o. Given below is an example of G81 hole machining with a figure representing the hole positions. N001 G91; N002 G81 Z–10. R5. F20; N003 G37.1 X300. Y-100. I50. P10 J100. K8; N004 G80; ny = 8 A ZA Last position before G37.1 execution x = 50 x = 300 (c )2 01 3 YA M y = 100 yr Notes C op 3. D740PB0010 ig ht nx = 10 Give a G90 or G91 command as required to designate the axis position in absolute or incremental values. Omission of argument P or K, or setting “P0” or “K0” will result in an alarm. A setting of K or P with five or more digits will lead to the lowest four digits being used. In a block with G37.1 any words with addresses other than G, L, N, X, Y, I, J, K, F, M, S, T and B will simply be ignored. Giving a G-code of group 00 in the same block with G37.1 will cause an exclusive execution of either code which is given later. In a block with G37.1 a G22 or G23 command will simply be ignored without affecting the execution of the G37.1 command. 13-5 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2 Fixed Cycles 13-2-1 Outline 1. Function and purspose High-speed deep-hole drilling [X Y] Z Q R F [P D K I J(B)] G74 Reverse tapping [X Y] Z R F [P D J(B) H] G74.5 Left-hand Punch tapping, PT1.0 [X Y] Z R F I [J ,D P L] G74.6 Left-hand Punch tapping, PT1.5 G74.8 Left-hand Punch tapping, PT2.0 G75 Boring G76 Boring G77 Back spot facing G78 Boring G79 Boring G81 Spot drilling G82 Drilling G83 Deep-hole drilling G84 Tapping G84.5 Right-hand Punch tapping, PT1.0 G84.6 Right-hand Punch tapping, PT1.5 [X Y] Z R F I [J ,D P L] G84.8 Right-hand Punch tapping, PT2.0 [X Y] Z R F I [J ,D P L] G85 Reaming [X Y] Z R F [P D E] G86 Boring [X Y] Z R F [P] G87 Back boring [X Y] Z R F [Q P D J(B)] Boring [X Y] Z R F [P] Boring [X Y] Z R F [P] [X Y] Z R F I [J ,D P L] [X Y] Z R F [Q P D K I J(B)] [X Y] Z R F [Q P D J(B)] Return to initial point only. [X Y] Z R F [Q P D K] ZA K [X Y] Z R F [Q P D K E] A [X Y] Z R F A ZA K IM Se ri al N o. [X Y] Z R F [Q P E J(B)] M YA )2 Dwell in seconds [X Y] Z R F I [J ,D P L] [X Y] Z R F [P D I J(B)] [X Y] Z Q R F [P D K I J(B)] [X Y] Z R F [P D J(B) H] Dwell in seconds [X Y] Z R F I [J ,D P L] ig ht G89 re s G73 ts [X Y] Z Q R F [P D] gh [X Y] Z Q R F [P D] Chamfering cutter (CCW) ri Chamfering cutter (CW) G72.1 Notes .A ll G71.1 G88 Arguments N Description 34 08 C 39 O R PO R A TI O G-code 01 3 List of fixed cycles (c 2. er ve d . The fixed-cycle functions allow positioning, hole-drilling, boring, tapping, or other machining programs to be executed according to the predetermined job sequence by the commands of a single block. The available job sequences for machining are listed below. The fixed-cycle function mode is cancelled on reception of G80 or a G-command (G00, G01, G02, G03, G2.1, or G3.1) of group G01. All related types of data are also cleared to zero at the same time. ]) can be omitted. C op yr Note 1: The arguments enclosed in brackets ([ Return to initial point only. Note 2: Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command Note 3: In order that it may function correctly, do not give a command of fixed cycle in one block together with any one for the following functions (described in this chapter): Hole machining pattern cycle Subprogram control Macro call 13-6 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 Note 4: As for the fixed tapping cycles enumerated below, the controlled axis of tapping motion is determined, as is the case in general with the hole machining axis, according to the plane selected for describing the tool’s radial positioning. If the direction of feed on the tool axis is reversed, then the right- and left-handedness of the thread is inversed for each tapping cycle. G74 (Reverse tapping) G84.2 (Synchronous normal tapping) G84 (Normal tapping) G84.3 (Synchronous reverse tapping) 13-2-2 Fixed-cycle machining data format Setting fixed-cycle machining data . 1. er ve d Set fixed-cycle machining data as follows: re s G X_Y_ Z_Q_R_P_D_K_I_J(B)_E_H_F_,D_ L_ Repeat times gh ts Hole-machining data ri Hole position data .A ll Hole-machining mode N Hole-machining mode (G-code) 34 08 C 39 O R PO R A TI O See the list of the fixed cycles under 2 in Subsection 13-2-1. Hole position data (X, Y) K ZA A ZA Hole-machining data K IM Se ri al N o. Specify the position of the (first) hole to be machined using incremental or absolute data. When the hole position is specified by the incremental data input method, hole machining will be so often repeated as instructed with argument L at regular intervals as specified with the increments. When the absolute data input method is used, hole machining will be so often repeated as instructed with argument L at one and the same place as specified with the absolue coordinates. YA M A Z ....... Set the distance from R-point to the hole bottom using incremental data, or set the position of the hole bottom using absolute data. 01 3 Q ...... Set this address code using incremental data. (This address code has different uses according to the type of hole-machining mode selected.) (c )2 R ....... Set the distance from the initial point of machining to R-point using incremental data, or set the position of R-point using absolute data. ig ht P ....... Set the desired time or the number of spindle revolutions, for dwell at the hole bottom. (Set the overlapping length for the chamfering cutter cycles G71.1 and G72.1.) C op yr D ....... Set this address code using incremental data. (This address code has different uses according to the type of hole-machining mode selected.) K ....... Set this address code using incremental data. (This address code has different uses according to the type of hole-machining mode selected.) I ........ Set the feed override distance for the tool to be decelerated during the last cutting operation of drilling with a G73, G82, or G83 command code. Specify the cycle operation mode for synchronous tapping (G84.2 or G84.3). Specify the rate of cutting feed for helical or axial grooving for Punch tapping (G74.5, G74.6, G74.8, G84.5, G84.6 or G84.8). J(B) ... For G74 or G84, set the timing of dwell data output; for G75, G76, or G87, set the timing of M3 and M4 output, or; for G73, G82, or G83, set the feed override ratio for deceleration during the last cutting operation. 13-7 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS J ....... Specify the spindle speed for retracting the tool for Punch tapping (G74.5, G74.6, G74.8, G84.5, G84.6 or G84.8). E ....... Set a cutting feed rate (for G77, G79 and G85). H ....... Select synchronous/asynchronous tapping cycle and set the return speed override during a synchronous tapping cycle. F ....... Set a cutting feed rate. Specify the pitch of thread forming for Punch tapping (G74.5, G74.6, G74.8, G84.5, G84.6 or G84.8). ,D ...... Specify the helical return distance for relieving the tool for Punch tapping (G74.5, G74.6, G74.8, G84.5, G84.6 or G84.8). .A ll ri gh ts re s er ve d . Repeat times (L) Specify the number of repetitions of the same cycle for machining holes at equal intervals. As for hole positioning data, use the incremental data input method to specify the first place of hole machining. When the absolute data input method is used, hole machining will be so often repeated as instructed with argument L at one and the same place as specified with the absolue coordinates. This number can be omitted if “L1” is desired. When L0 is deisgnated, the hole machining data are stored in the memory but no holes will be machined. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N The differences between the G90 mode data setting method and the G91 mode data setting method are shown in the diagram below. 13-8 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS G90 G91 Initial point Initial point R Z=0 er ve d . R R-point R-point D D Point D re s Point D Z Point Z MEP138 34 08 C 39 O R PO R A TI O : Signifies signed distance data that begins at . : Signifies unsigned distance data. N Point Z .A ll ri gh ts Z o. Note 1: The initial point refers to the Z-axis position existing at the moment of the fixed-cycle mode selection. K ZA ri al N Note 2: Point D is that at which positioning from R-point can be done further at a rapid feed rate. A M Programming format YA 2. A ZA K IM Se Note 3: When the hole position is specified by the incremental data input method, hole machining will be so often repeated as instructed with argument L at regular intervals as specified with the increments. When the absolute data input method is used, hole machining will be so often repeated as instructed with argument L at one and the same place as specified with the absolue coordinates. 01 3 As shown below, the fixed-cycle command consists of a hole-machining mode section, a hole position data section, a hole-machining data section, and a repeat instruction section. (c )2 G X_Y_ Z_Q_R_P_D_K_I_J(B)_E_H_F_,D_ L_ ht Repeat times ig Hole-machining data yr Hole position data C op Hole-machining mode 13-9 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Detailed description 1. The hole-machining mode refers to a fixed-cycle mode used for drilling, counterboring, tapping, boring, or other machining operations. Hole position data denotes X- and Y-axis positioning data. Hole-machining data denotes actual machining data. Hole position data and repeat times are non-modal, whereas hole-machining data are modal. 2. If M00 or M01 is set either in the same block as a fixed-cycle command or during the fixed-cycle mode, then the fixed-cycle command will be ignored and then after positioning, M00 or M01 will be outputted. The fixed-cycle command will be executed if either X, Y, Z, or R is set. 3. During fixed-cycle operation, the machine acts in one of the following seven types of manner: er ve d . 3. For positioning on the X-, and Y-axes, the machine acts according to the current G-code of group 01 (G02 and G03 will be regarded as G01). Action 2 M19 is sent from the NC unit to the machine at the positioning complete point (initial point) in the G87 mode. After execution of this M-command, the next action will begin. In the single-block operation mode, positioning is followed by block stop. N .A ll ri gh ts re s Action 1 Initial point 34 08 C 39 O R PO R A TI O 2 1 7 3 N o. R-point 5 A ZA K 6 MEP139 K IM Se ri al 4 Positioning to R-point by rapid motion. Action 4 Hole-machining by cutting feed. Action 5 Depending on the selected fixed-cycle type, spindle stop (M05), spindle reverse rotation (M04), spindle normal rotation (M03), dwell, or tool shift is performed at the hole bottom. YA M A ZA Action 3 )2 01 3 Action 6 Return to the initial point is performed by rapid motion. ht (c Action 7 Tool relief to R-point is performed by cutting feed or rapid motion (according to the selected fixed-cycle type). C op yr ig Whether fixed-cycle mode operation is to be terminated at action 6 or action 7 can be selected with the following G-codes: G98: Return to the initial point level G99: Return to the R-point level Both commands are modal. Once G98 has been given, for example, the G98 mode remains valid until G99 is given. The G98 mode is the initial state of the NC. For a block without positioning data, the hole-machining data are only stored into the memory and fixed-cycle operation is not performed. 13-10 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 4. Feed function (F-code) for fixed cycles The feed function (F-code) specified for a fixed cycle is processed as follows according to the type of the cycle. Description Chamfering cutter (CW) Chamfering cutter (CCW) G73 High-speed deep-hole drilling G74 Reverse tapping (asynchronous) G75 Boring G76 Boring G77 Back spot facing G78 Boring G79 Boring G81 Spot drilling G82 Drilling G83 Deep-hole drilling G84 Tapping (asynchronous) G85 Reaming G86 Boring G87 Back boring G88 Boring G89 Boring G74 Reverse tapping (synchronous) in Omitted Given F1 F1.0 1 [mm/min] 1 [mm/min] 1 [in/min] 1 [in/min] G95 (Feed per revolution) Omitted Given F1 F1.0 0.01 [mm/rev] 1 [mm/rev] 0.0001 [in/rev] 1 [in/rev] .A ll ri gh ts re s er ve d . G72.1 Operation speed mm G94 (Feed per minute) Se K ri al N o. 34 08 C 39 O R PO R A TI O N As above (described for G71.1) ZA G71.1 F-code (with decimal point omitted/given) Mode of feed G94 (Feed per minute) Omitted Given F1 F1.0 1 [mm/rev] 1 [mm/rev] 1 [in/rev] 1 [in/rev] G95 (Feed per revolution) Omitted Given F1 F1.0 1 [mm/rev] 1 [mm/rev] 1 [in/rev] 1 [in/rev] Left-hand Punch tapping, PT1.0 G74.6 Left-hand Punch tapping, PT1.5 G74.8 Left-hand Punch tapping, PT2.0 G84 Tapping (synchronous) G84.2 YA 01 3 )2 Synchronous tapping ht As above (described for G74 [synchronous]) Synchronous reverse tapping yr ig G84.3 M A G74.5 (c ZA K IM A G-code C op G84.5 Right-hand Punch tapping, PT1.0 G84.6 Right-hand Punch tapping, PT1.5 G84.8 Right-hand Punch tapping, PT2.0 Note : Argument E (rate of feed for return motion) is always processed as a value for feed per minute, independently of the current mode of feed (G94 [feed per minute] or G95 [feed per revolution]). “E1” or “E1.0”, for example, sets the return speed to 1 mm/min or 1 in/min. 13-11 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2-3 G71.1 (Chamfering cutter CW) G71.1 [Xx Yy] Rr Zz Qq0 [Pp0 Dd0] Ff0 Initial point G98 R-point G99 d0 er ve d . Point D 3 2 34 08 C 39 O R PO R A TI O gh N q0 .A ll ri Point Z ts re s f0 5 1 4 o. p0 d0 : Distance from R-point f0 : Feed rate K ZA Se - X, Y, P, and/or D can be omitted. A ri al N q0 : Radius p0 : Overlapping length (in arc) C op yr ig ht (c )2 01 3 YA M A ZA K IM - Omission of Q or setting “Q0” results in an alarm. 13-12 MEP140 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-2-4 G72.1 (Chamfering cutter CCW) G72.1 [Xx Yy] Rr Zz Qq0 [Pp0 Dd0] Ff0 Initial point G98 R-point G99 d0 er ve d . Point D 3 2 34 08 C 39 O R PO R A TI O gh N q0 .A ll ri Point Z ts re s f0 5 1 4 N o. p0 K ZA - X, Y, P, and/or D can be omitted. d0 : Distance from R-point f0 : Feed rate A Se ri al q0 : Radius p0 : Overlapping length (in arc) C op yr ig ht (c )2 01 3 YA M A ZA K IM - Omission of Q or setting “Q0” results in an alarm. 13-13 MEP141 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2-5 G73 (High-speed deep-hole drilling) G73 [Xx Yy] Rr Zz Qtz [Ptc] Ff0 [Dd0 Kk0 Ii0 Jj0(Bb0)] Initial point G98 R-point k0 Point D . [1] f0 f2 G99 d0 f0 er ve d tz re s tz + d0 [2] f2 Point Z o. j0 : Feed override ratio (%) (b0) f0 : Feed rate f1 : Feed overridden f1 = f0×j0(b0)/100 f2 : Return speed (fixed) Max. speed: 9999 mm/min (for metric spec.) 999.9 in/min (for inch spec.) K ZA ri al N tz : Depth of cut per pass tc : Dwell (in time or No. of revolutions) d0 : Return distance k0 : Distance from R-point to the starting point of cutting feed i0 : Feed override distance MEP142 34 08 C 39 O R PO R A TI O N .A ll Dwell (tc) ri Dwell (tc) gh ts i0 f1 A Se - The feed rate will remain unchanged if either I or J(B) is omitted. K IM - X, Y, P, D, K, I, and/or J(B) can be omitted. If D is omitted or set to 0, the machine operates according to the value of parameter F12. ZA - The alarm 809 ILLEGAL NUMBER INPUT will occur if Q is set to 0. YA M A - Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. yr ig ht (c )2 01 3 Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command Note: For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. - The feed rate is f1 only if the starting point of a cutting pass is within the range of i 0. C op Example: In the diagram shown above, during the second cutting operation, since pecking return point [1] falls outside the range of feed override distance i 0, feeding does not decelerate and cutting is performed at feed rate f 0; during the third cutting operation, since pecking return point [2] falls within the range of i0, feeding decelerates and cutting is performed at feed rate f 1. 13-14 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-2-6 G74 (Reverse tapping) G74 [Xx Yy] Rr Zz [Ptc] Ff0 [Jj0(Bb0) Dd0 Hh0 Kk0] Initial point G98 M04 Point R’ d0 G99 R-point er ve d Point D f1 re s f1 f0 . k0 Point Z Dwell M03 gh ts MEP143’ h0 : Flag for synchronous/asynchronous tapping and ri tc : Dwell (always in time) f0 : Feed rate Asynchronous tapping Synchronous tapping 34 08 C 39 O R PO R A TI O h0 = 0 h0 > 0 N j0 : 1…M03 after dwell at hole bottom (b0) 2…M03 before dwell at hole bottom 4…M04 after dwell at R-point d0 : Distance from R-point .A ll the return speed override (%) for synchronous tapping k0 : Distance from R-point (Tap lifting distance) al N o. - X, Y, P, J(B), D, H, and/or K can be omitted. If, however, J(B) is omitted or set to 0, the setting of J(B) will be regarded as 2. If H is omitted, synchronous tapping method is automatically selected. K ZA A K IM Se ri For synchronous tapping, see Subsection 13-2-21. ZA - Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. C op yr ig ht (c )2 01 3 YA M A Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command Note: For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. 13-15 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2-7 G75 (Boring) G75 [Xx Yy] Rr Zz [Ptc Qq0] Ff0 [Dd0 Jj0(Bb0) Kk0 Ii0] M03 q0 Initial point G98 M03 q0 R-point . d0 er ve d Point D G99 ts q0 gh M19 re s f0 .A ll k0 ri i0 Point Z 34 08 C 39 O R PO R A TI O N Dwell Feed and Spindle speed 70% N o. MEP144 A ZA K j0 : 0 or omitted ········· M03 after machining (b0) Value except 0 ····· M04 after machining k0 : Distance from point Z i0 : Distance from point Z K IM Se ri al tc : Dwell (in time or No. of revolutions) q0 : Amount of relief on the XY-plane (Direction determined by bits 3 & 4 of I14) f0 : Feed rate d0 : Distance from R-point ZA - X, Y, P, Q, D, J(B), K, and/or I can be omitted. M A - Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. C op yr ig ht (c )2 01 3 YA Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command Note: For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. 13-16 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-2-8 G76 (Boring) G76 [Xx Yy] Rr Zz [Ptc Qq0] Ff1 [Dd0 Jj0(Bb0)] M03 q0 Initial point G98 er ve d . M03 q0 R-point Point D re s d0 ts G99 .A ll ri gh f1 q0 N Point Z 34 08 C 39 O R PO R A TI O M19 Dwell K f1 : Feed rate j0 : 0 or omitted ········· M03 after machining (b0) Value except 0 ····· M04 after machining ZA ri al N o. tc : Dwell (in time or No. of revolutions) q0 : Amount of relief on the XY-plane (Direction determined by bits 3 & 4 of I14) MEP145 A Se - X, Y, P, Q, D, and/or J(B) can be omitted. K IM - Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. C op yr ig ht (c )2 01 3 YA M A ZA Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command Note: For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. 13-17 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2-9 G77 (Back spot facing) G77 [Xx Yy] Rr Zz [Ptc Qtz] Ff0 [Ef1 Jj0(Bb0) Dd0] Initial point er ve d . tz Point R’ d0 f0 ri f0 gh Point Z (z) ts Dwell f1 () re s Point D f1 MEP146’ o. j0(b0) : Output order of M03 and M04 at hole bottom. 0: M03, then M04 (for normal spindle rotation) 1: M04, then M03 (for reverse spindle rotation) d0 : Distance from point R’ ZA ri al f1 : Feed rate 1 K N tc : Dwell (in time or No. of revolutions) tz : Distance from the initial point f0 : Feed rate 0 34 08 C 39 O R PO R A TI O N M04 .A ll R-point (r) M03 A K IM Se - Normally, asynchronous feed (G94) is used for the pass marked with (). If f1 = 0, or if f1 is omitted, however, synchronous feed (G95) is used (feed rate = 0.5 mm/rev). - X, Y, P, Q, E, J (B), and/or D can be omitted. M A ZA - Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. (c )2 01 3 YA Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command Note: For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. C op yr ig ht - In G91 (incremental data input) mode, the direction of hole machining is automatically determined according to the sign of Z data (the sign of data at address R will be ignored). 13-18 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-2-10 G78 (Boring) G78 [Xx Yy] Rr Zz [Ptc] Ff0 [Dd0 Kk0 Qi0] Initial point G98 . R-point G99 er ve d d0 re s Point D i0 N Point Z .A ll k0 ri gh ts f0 o. k0 : Distance from point Z i0 : Distance from point Z al d0 : Distance from R-point K N tc : Dwell (in time or No. of revolutions) 34 08 C 39 O R PO R A TI O Dwell ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri X, Y, P, D, K, and/or Q can be omitted. 13-19 MEP147 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2-11 G79 (Boring) G79 [Xx Yy] Rr Zz [Ptc] Ff0 [Dd0 Kk0 Qi0 Ef1] Initial point G98 R-point d0 G99 er ve d . Point D f1 gh ts re s f0 .A ll ri i0 k0 Point Z 34 08 C 39 O R PO R A TI O N Dwell k0 : Distance from point Z i0 : Distance from point Z f1 : Feed rate 1 o. tc : Dwell (in time or No. of revolutions) f0 : Feed rate 0 d0 : Distance from R-point MEP148 K ZA ri al N - Asynchronous feed is used for f1. If, however, f1 is set equal to 0 or is not set, then the tool is fed at the setting of f0. A K IM Se - X, Y, P, D, K, Q, and/or E can be omitted. 13-2-12 G81 (Spot drilling) YA M A ZA G81 [Xx Yy] Rr Zz )2 01 3 Initial point ht (c G98 C op yr ig R-point G99 Point Z MEP149 - X and/or Y can be omitted. 13-20 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-2-13 G82 (Drilling) G82 [Xx Yy] Rr Zz [Ptc] Ff0 [Dd0 Ii0 Jj0(Bb0)] Initial point G98 er ve d . R-point d0 ts re s Point D gh f0 34 08 C 39 O R PO R A TI O N i0 f1 .A ll ri G99 Point Z j0 : Feed override ratio (%) (b0) f0 : Feed rate f1 : Feed overridden f1 = f0×j0(b0)/100 point of cutting feed ZA ri al i0 : Feed override distance K N tc : Dwell (in time or No. of revolutions) d0 : Distance from R-point to the starting MEP150 o. Dwell (tc) A Se - The feed rate will remain unchanged if either I or J(B) is omitted. K IM - X, Y, P, D, I, and/or J(B) can be omitted. A ZA - Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. C op yr ig ht (c )2 01 3 YA M Parameter F84 bit 1 = 1 : Argument J-command = 0 : Argument B-command Note: For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. 13-21 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2-14 G83 (Deep-hole drilling) G83 [Xx Yy] Rr Zz Qtz Ff0 [Dd0 Kk0 Ii0 Jj0(Bb0)] Initial point R-point k0 Point D f0 G99 G98 . [1] er ve d tz d0 re s f0 ts tz + d0 gh [2] i0 .A ll ri f1 34 08 C 39 O R PO R A TI O N Point Z tz : Depth of cut per pass d0 : Rapid motion stopping allowance k0 : Distance from R-point to the starting j0 : Feed override ratio (%) (b0) f0 : Feed rate f1 : Feed overridden f1 = f0 × j0(b0)/100 point of cutting feed N o. i0 : Feed override distance MEP151 K ZA ri al The feed rate will remain unchanged if either I or J(B) is omitted. A K IM Se X, Y, P, D, K, I, and/or J(B) can be omitted. If D is omitted or set to 0, the machine will operate according to the value of parameter F13. yr ig ht (c )2 01 3 YA M A ZA When F165 bit 4 = 1: Setting of “Q0” or omission of argument Q causes the hole to be drilled in a single pass up to the depth specified with Z. Set argument Q with a positive value to be used as “Depth of cut per pass.” When F165 bit 4 = 0 and F332 bit 6 = 0: Setting of “Q0” causes an alarm to be raised (809 ILLEGAL NUMBER INPUT). Omission of argument Q causes the currently active modal value to be applied. Set argument Q with a positive value to be used as “Depth of cut per pass.” When F165 bit 4 = 0 and F332 bit 6 = 1: Setting of “Q0” causes the hole to be drilled in a single pass up to the depth specified with Z. Omission of argument Q causes the currently active modal value to be applied. Set argument Q with a positive value to be used as “Depth of cut per pass.” C op Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command Note : For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. 13-22 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 The feed rate is f1 only if the starting point of a cutting pass is within the range of i 0. Example : In the diagram shown above, during the second cutting operation, since rapid feed positioning point [1] falls outside the range of feed override distance i0, feeding does not decelerate and cutting is performed at feed rate f 0; during the third cutting operation, since rapid feed positioning point [2] falls within the range of i0, feeding decelerates and cutting is performed at feed rate f 1. 13-2-15 G84 (Tapping) G84 [Xx Yy] Rr Zz [Ptc] Ff0 [Jj0(Bb0) Dd0 Hh0 Kk0] er ve d . Initial point re s Dwell M03 Point R’ ri R-point gh ts d0 k0 .A ll Point D G99 34 08 C 39 O R PO R A TI O N G98 Point Z Dwell M04 MEP152’ h0 : Flag for synchronous/asynchronous tapping and o. tc : Dwell (always in time) f0 : Feed rate K ZA Asynchronous tapping Synchronous tapping k0 : Distance from R-point K IM (Tap lifting distance) h0 = 0 h0 > 0 A Se ri al N j0 : 1…M04 after dwell at hole bottom (b0) 2…M04 before dwell at hole bottom 4…M03 after dwell at R-point d0 : Distance from R-point the return speed override (%) for synchronous tapping M A ZA X, Y, P, J(B), D, H, and/or K can be omitted. If, however, J(B) is omitted or set to 0, the setting of J(B) will be regarded as 2. If H is omitted, synchronous tapping method is automatically selected. )2 01 3 YA For synchronous tapping, see Subsection 13-2-21. ht (c Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. op yr ig Parameter F84 bit 1 = 1 : Argument J-command = 0 : Argument B-command C Note : For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. 13-23 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2-16 G85 (Reaming) G85 [Xx Yy] Rr Zz [Ptz] Ff0 [Ef1 Dd0] Initial point er ve d . R-point re s d0 G98 .A ll ri G99 gh f0 ts f1 Point Z tz : Dwell (in time or No. of revolutions) f0 : Feed rate 0 MEP153 34 08 C 39 O R PO R A TI O N Dwell f1 : Feed rate 1 d0 : Distance from R-point o. - Asynchronous feed is used for f1. If, however, f1 is set equal to 0 or is not set, then the tool is fed at the setting of f0. K ZA A Initial point YA M A ZA G86 [Xx Yy] Rr Zz [Ptc] K IM 13-2-17 G86 (Boring) Se ri al N - X, Y, P, E, and/or D can be omitted. 01 3 G98 )2 M03 ig ht (c R-point C op yr G99 Point Z Dwell M05 tc : Dwell (in time or No. of revolutions) - X, Y, and/or P can be omitted. 13-24 MEP154 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-2-18 G87 (Back boring) G87 [Xx Yy] Rr Zz [Ptc Qq0] Ff0 [Dd0 Jj0(Bb0)] M03 Initial point M19 Dwell Point Z er ve d . d0 re s M19 MEP155 .A ll ri gh q0 ts R-point M03 d0 : Distance from point Z j0 : 0 or omitted ········· M03 at R-point (b0) Value except 0 ····· M04 at R-point N tc : Dwell (in time or No. of revolutions) q0 : Amount of relief on the XY-plane 34 08 C 39 O R PO R A TI O (Direction determined by bits 3 & 4 of I14) f0 : Feed rate - X, Y, P, Q, D, and/or J(B) can be omitted. - Initial-point return is always used for G87 (even if the current modal is of G99). K al N o. - Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. ZA A ZA K IM Se ri Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command Note: For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. C op yr ig ht (c )2 01 3 YA M A - In G91 (incremental data input) mode, the direction of hole machining is automatically determined according to the sign of Z data (the sign of data at address R will be ignored). 13-25 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2-19 G88 (Boring) G88 [Xx Yy] Rr Zz [Ptc] Initial point G98 er ve d . R-point re s G99 MEP156 .A ll ri gh ts Point Z Dwell, M05, M00 N tc : Dwell (in time or No. of revolutions) 34 08 C 39 O R PO R A TI O - X, Y, and/or P can be omitted. - At the hole bottom, M05 and M00 are outputted. 13-2-20 G89 (Boring) K ZA A Initial point G98 M A ZA K IM Se ri al N o. G89 [Xx Yy] Rr Zz [Ptc] 01 3 YA R-point Point Z Dwell MEP157 yr ig ht (c )2 G99 C op tc : Dwell (in time or No. of revolutions) - X, Y, and/or P can be omitted. 13-26 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-2-21 Synchronous tapping (Option) In an EIA/ISO program, synchronous tapping can be selected by additionally setting data at the address H in the tapping cycle block of G74 or G84. Address H is used to select between a synchronous and asynchronous tapping cycle and to designate the override of return speed. Special preparatory functions G84.2 and G84.3 are also provided for both types of synchronous tapping. Moreover, addresses Q and I are provided for specifying a deep-hole tapping and high-speed deep-hole tapping cycle. Arguments Q and I are used respectively to specify the depth of cut per pass for pecking and to select between a standard and high-speed deep-hole tapping cycle. 1. G74 [Reverse tapping]/G84.3 [Synchronous reverse tapping] er ve d High-speed deep-hole tapping cycle re s Deep-hole tapping cycle . G74 [Xx Yy] Rr Zz [Ptc Qq0] Ff0 [Ii0 Jj0(Bb0) Dd0 Hh0 Kk0] G84.3 [Xx Yy] Rr Zz [Ptc Qq0] Ff0 [Ii0] Spindle stop G98 gh Spindle stop Initial point ts Initial point ri G98 N G99 k0 Point D o. Dwell M03 G99 R-point Point D Dwell M03 N q0 k0 Dwell M04 Parameter F10 q0 q0 q0 d0 34 08 C 39 O R PO R A TI O R-point Dwell M04 Point R’ .A ll Point R’ d0 Point Z K ZA Se ri al Point Z d0 : Distance from R-point (Tap lifting distance) h0 : Return speed override (%) h0 = 0..... Asynchronous tapping h0 1 .... Synchronous tapping k0 : Distance from R-point 01 3 YA M A ZA K IM A tc : Dwell (always in time) q0 : Depth of cut per pass for pecking f0 : Feed rate (Set the pitch for synchronous tapping) i0 : 0 ... Deep-hole tapping cycle 1 ... High-speed deep-hole tapping cycle j0 : 1 ... M03 after dwell at hole bottom (b0) 2 ... M03 before dwell at hole bottom 4 ... M04 after dwell at R-point ht (c )2 X, Y, P, Q, I, J(B), D, H, and/or K can be omitted. If, however, J(B) is omitted or set to 0, the setting of J(B) will be regarded as 2. If H is omitted, synchronous tapping method is automatically selected. C op yr ig Arguments Q and I are not effective at all for an asynchronous tapping method (for which standard tapping cycle only is available). Moreover, the tapping operation depends upon the setting in bit 3 of parameter F155 as well as upon whether or not and how the arguments Q and I are specified, as shown below. Argument Q: Given Argument Q: Omitted (or Q0) Argument I 1 0 H.S. deep-hole tapping cycle Deep-hole tapping cycle Omitted F155 bit 3 = 1 F155 bit 3 = 0 H.S. deep-hole tapping cycle Deep-hole tapping cycle 13-27 Tapping cycle Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS H is used to select whether synchronous tapping cycle operation or asynchronous tapping cycle operation is to be performed using a machine capable of synchronous tapping. This code is also used to override the return speed for synchronous tapping cycle operation. As for a machine not capable of synchronous tapping, explicitely enter ‘H0’ to select asynchronous tapping method. Otherwise, i.e. omission or specification with an effective value for synchronous tapping method will cause an alarm (952 NO SYNCHRONIZED TAP OPTION). Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. er ve d . Note : gh ts re s In the mode of single-block operation, the stop of operation occurs after each pecking return per pass and only after final return to the initial point or R-point, respectively, in the case of deep-hole and high-speed deep-hole tapping cycles. N .A ll ri In a high-speed deep-hole tapping cycle, the tool is returned for pecking after each cutting feed by the distance externally set in parameter F10 unless the return point should unnecessarily overstep point D, at which the pecking return is always completed. 34 08 C 39 O R PO R A TI O During gear selection for tapping, due consideration must be given to ensure the minimum spindle acceleration/deceleration time. The overriding ratio (%) of the return speed to the rate of cutting feed for G84.3 is externally set in parameter K90. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. Refer to the Operating Manual of the machine for more information on gear selection for tapping. 13-28 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 2. G84 [Normal tapping]/G84.2 [Synchronous normal tapping] G84 [Xx Yy] Rr Zz [Ptc Qq0] Ff0 [Ii0 Jj0(Bb0) Dd0 Hh0 Kk0] G84.2 [Xx Yy] Rr Zz [Ptc Qq0] Ff0 [Ii0] Deep-hole tapping cycle High-speed deep-hole tapping cycle Initial point Spindle stop G98 G98 Point R’ Point R’ d0 G99 G99 R-point Dwell M03 R-point k0 Point D re s ts Dwell M04 gh q0 Point D Dwell M03 Parameter F10 q0 Dwell M04 er ve d k0 q0 q0 d0 . Spindle stop Initial point Point Z .A ll ri Point Z d0 : Distance from R-point (Tap lifting distance) h0 : Return speed override (%) h0 = 0..... Asynchronous tapping h0 1 .... Synchronous tapping k0 : Distance from R-point K al N o. 34 08 C 39 O R PO R A TI O N tc : Dwell (always in time) q0 : Depth of cut per pass for pecking f0 : Feed rate (Set the pitch for synchronous tapping) i0 : 0 ... Deep-hole tapping cycle 1 ... High-speed deep-hole tapping cycle j0 : 1 ... M04 after dwell at hole bottom (b0) 2 ... M04 before dwell at hole bottom 4 ... M03 after dwell at R-point ZA A K IM Se ri X, Y, P, Q, I, J(B), D, H, and/or K can be omitted. If, however, J(B) is omitted or set to 0, the setting of J(B) will be regarded as 2. If H is omitted, synchronous tapping method is automatically selected. YA M A ZA Arguments Q and I are not effective at all for an asynchronous tapping method (for which standard tapping cycle only is available). Moreover, the tapping operation depends upon the setting in bit 3 of parameter F155 as well as upon whether or not and how the arguments Q and I are specified, as shown below. 01 3 Argument Q: Given )2 0 H.S. deep-hole tapping cycle Deep-hole tapping cycle Omitted F155 bit 3 = 1 F155 bit 3 = 0 H.S. deep-hole tapping cycle Deep-hole tapping cycle yr ig ht (c 1 Tapping cycle H is used to select whether synchronous tapping cycle operation or asynchronous tapping cycle operation is to be performed using a machine capable of synchronous tapping. This code is also used to override the return speed for synchronous tapping cycle operation. As for a machine not capable of synchronous tapping, explicitely enter ‘H0’ to select asynchronous tapping method. Otherwise, i.e. omission or specification with an effective value for synchronous tapping method will cause an alarm (952 NO SYNCHRONIZED TAP OPTION). op C Argument Q: Omitted (or Q0) Argument I 13-29 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Whether argument J or B is to be used depends on the value that has been set in bit 1 of parameter F84. Parameter F84 bit 1 = 1: Argument J-command = 0: Argument B-command Note : For a horizontal machining center, if the value of bit 1 of parameter F84 is 1 (argument J-command), setting a B-command will cause the table to rotate. Be careful in that case to ensure no interference between the workpiece and the tool. In the mode of single-block operation, the stop of operation occurs after each pecking return per pass and only after final return to the initial point or R-point, respectively, in the case of deep-hole and high-speed deep-hole tapping cycles. er ve d . In a high-speed deep-hole tapping cycle, the tool is returned for pecking after each cutting feed by the distance externally set in parameter F10 unless the return point should unnecessarily overstep point D, at which the pecking return is always completed. ts re s During gear selection for tapping, due consideration must be given to ensure the minimum spindle acceleration/deceleration time. .A ll ri gh The overriding ratio (%) of the return speed to the rate of cutting feed for G84.2 is externally set in parameter K90. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N Refer to the Operating Manual of the machine for more information on gear selection for tapping. 13-30 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-2-22 G82.2 [Automatic pecking cycle] (Option) G82.2 [Xx Yy] Rr Zz Qq0 Ff0 [Dd0 Kk0 Ptc Ii0 Hh0] Initial point G98 R-point k0 er ve d . G99 re s f0 ts d0 gh f0 D747PB0011 N Point Z .A ll ri [1] f0 : Feed rate tc : Automatic identification time (ms) i0 : Breakage detection distance h0 : Maximum number of pecking operations 34 08 C 39 O R PO R A TI O d0 : Rapid motion stopping allowance k0 : Distance from R-point to the starting point of cutting feed q0 : Threshold X, Y, and/or D can be omitted. N o. If D is omitted or set to 0, the machine will operate according to the value of parameter F13. K ZA ri al The cutting feed is reversed by a pecking movement up to the R-point when the cutting load reaches the threshold specified as argument Q (at point [1]). A ZA K IM Se Use argument P to specify the period of time for which the identification should be carried out in order to absorb (not to take into account) that change in the no-load torque which is caused by a change in the current feedback due to a rise in the spindle temperature. Once obtained, the identification value will be used until it is cleared by resetting. YA M A It is necessary for automatic identification to be done correctly that the spindle rotates at the command speed. 01 3 Use argument I to specify the distance for the detection of tool breakage based on the cutting load. ig ht (c )2 The cutting load is monitored during the first axial movement from the R-point up to the position determined by argument I. If the cutting load should not change according to the setting in parameter SA133, then the tool will be judged to be broken and returned to the initial point without being used actually for hole machining. op yr The result can be read at bit 0 of system variable #3108. C Use argument H to specify the maximum permissible number of pecking operations per hole. The pecking operation the execution of which would cause the specified maximum number to be exceeded will be replaced with a return motion up to the initial point without the hole machining being continued any more. The result can be read at bit 1 of system variable #3108. Arguments P, I, and H are modal values. 13-31 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS The value of argument I depends upon whether or not the decimal point is used. System variables used for setting argument I are always processed as values with decimal point. Argument I 1 (w/o dec. pt.) 1. (with dec. pt.) #100 = 1 I#100 #100 = 1. I#100 Unit 0.0001 mm 1 mm 1 mm 1 mm The value of argument Q depends upon whether or not the decimal point is used. System variables used for setting argument Q are always processed as values with decimal point. Moreover, the value of argument Q depends upon whether it is entered in the mode of G20 (Inch data input) or G21 (metric data input), as shown below. 1. (with dec. pt.) #100 = 1 Q#100 #100 = 1. Q#100 Setting range Inch (G20) 0.00001 N·m 10 N·m 10 N·m 10 N·m 0 to 9999.9999 Metric (G21) 0.0001 N·m 1 N·m 1 N·m 1 N·m 0 to 99999.999 re s er ve d . 1 (w/o dec. pt.) Argument Q N .A ll ri gh ts A value below zero (0) as argument Q will cause the alarm 958 AUTO PECKING IMPOSSIBLE. Note, moreover, that automatic pecking operations can only be inserted actually when a threshold of 0.01 N·m or greater is specified as argument Q. A positive value below 0.01 N·m will only set the threshold to zero (0) and no pecking operations can occur. 34 08 C 39 O R PO R A TI O The table below enumerates the system variables related to the automatic pecking cycle. System variable Description Workpiece coordinate of the bottom of the hole to be machined with G82.2. (Subtract the length of the tool concerned to obtain the corresponding value specified in the program.) #3108 Tool breakage flag. bit 0: Is set to “1” if the predetermined change in the cutting load has not been detected during movement over the distance (specified with argument I). bit 1: Is set to “1” if the maximum permissible number of pecking operations (specified with argument H) has been exceeded. #3109 Cumulative number of machined holes. Holes machined with G82.2 are counted up. Holes that are not machined completely up to the bottom are excluded from counting. The variable is always initialized (zeroized) upon switching-on, and can be changed manually as required. K ZA A Number of pecking operations per hole. Maximum cutting torque per hole. [Unit: 0.01 N·m] C op yr ig ht (c )2 01 3 #3111 YA #3110 M A ZA K IM Se ri al N o. #3113 13-32 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-2-23 Punch tapping (Option) Punch tapping refers to a revolutionary technology for forming internal threads which uses a special type of tool, named Punch Tap, to establish an entirely new dimension of time saving as compared to the conventional tapping or thread-forming technologies. There are three patterns of Punch tapping provided, as shown below, to be selected with their respective G-codes. Punch Tap is a registered trademark of Emuge Co., Ltd. Pattern Feature G74.5/G84.5 PT1.0 Fastest machining process G74.6/G84.6 PT1.5 Supplement of a deburring process to PT1.0 G74.8/G84.8 PT2.0 Supplement of a deburring and a rethreading process to PT1.0 . G-code er ve d Remark : ts G74.5/G84.5 (Left-hand/Right-hand Punch tapping, PT1.0) gh 1. re s The optional function requires another optional one for synchronous tapping to be provided. .A ll ri G74.5 [Xx Yy] Zz Rr Ff0 Ii0 [Jj0 ,Dd0 Pp Lk] G84.5 [Xx Yy] Zz Rr Ff0 Ii0 [Jj0 ,Dd0 Pp Lk] 34 08 C 39 O R PO R A TI O N Initial point p i0 i0 (G99) (G98) R-point o. p K ZA (Tg) A f0 K IM Se ri al N i0 i0 (d0) Point Z ZA p YA R-point position Pitch of thread forming Pitch of helical grooving Helical return distance for relieving the tool 01 3 r : f0 : i0 : d0 : M A D747PB0075 Tg : p : k : j0 : Axial distance for thread forming Dwell command Number of repetitions Spindle speed for retracting the tool (c )2 The stop of operation during cutting feed in the mode of single-block operation mode or caused by the feed hold function only occurs after final return to the initial point or R-point. ig ht (Suspension of stop at positions until at in the figure above) C op yr The function for overriding the spindle speed and the rate of cutting feed cannot be applied at all during the cycle of Punch tapping. Alarming in relation to the settings of feed distances and pitches (Arguments F and I) An alarm is raised (809 ILLEGAL NUMBER INPUT) in the following cases: [Distance betw. R-point and Hole bottom] < [Argument ,D (d0)] [Distance betw. R-point and Hole bottom] < [Argument ,D (d0)] + [Thread forming distance (Tg)] [Argument ,D (d0)] + [Thread forming distance (Tg)] < [Deburring adjustment distance (D)] [Argument F (f0)] [Argument I (i0)] 13-33 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Argument F Use argument F to specify the rate of axial feed for thread forming. According as bit 1 of parameter F331 is set to 0 or 1, specify the rate of feed always in “feed per revolution” or in accordance with the current mode concerned (of G94 or G95). F331 bit 1 (Use of Feed per minute for tapping cycles) Modal G-code 0 (invalid) G94 (Feed per minute) Specify the rate of feed per minute. The “Lead of thread” is, therefore, to be the division of “Argument F” by “Spindle speed.” A code of spindle function (S-code) must be given beforehand; otherwise an alarm will be raised (906 NO S DIRECTIVE IN FIXED CYCLE). Specify the rate of feed per revolution, irrespective of the modal condition of the Gcodes concerned. G95 (Feed per revolution) Specify the rate of feed per revolution. The value of argument F is, therefore, to be the lead of thread itself. re s er ve d . 1 (valid) Metric system Inch system ri Modal G-code gh ts Setting range 0.0001 to 99999.9999 mm/min 0.00001 to 9999.99999 in/min G95 (per revolution) 0.0001 to 32.767 mm/rev 0.00001 to 3.2767 in/rev 34 08 C 39 O R PO R A TI O N .A ll G94 (per minute) The alarm 909 ILLEGAL PITCH IN FIXED CYCLE will be raised if the lead of thread should fall outside the range shown below. Metric system Inch system 0 to 32.767 0 to 3.2767 o. Lead of thread With decimal point 0 to 3 ZA ri Argument I 0 to 32 K al N Without decimal point A Se Use argument I to specify the rate of axial feed for plunging into the workpiece. ZA K IM According as helical grooves or axial grooves are to be made, enter argument I in positive or negative values. Argument I must, as a matter of course, correspond to the Punch Tap tool to be used. )2 01 3 YA M A <Positive values of argument I (for helical grooving)> Use argument I to specify the rate of axial feed for helical grooving by plunging. According as bit 1 of parameter F331 is set to 0 or 1, specify the rate of feed always in “feed per revolution” or in accordance with the current mode concerned (of G94 or G95). Modal G-code G94 (Feed per minute) Specify the rate of feed per minute. The “Lead of helical groove” is, therefore, to be the division of “Argument I” by “Spindle speed.” A code of spindle function (S-code) must be given beforehand; otherwise an alarm will be raised (906 NO S DIRECTIVE IN FIXED CYCLE). Specify the rate of feed per revolution, irrespective of the modal condition of the Gcodes concerned. G95 (Feed per revolution) Specify the rate of feed per revolution. The value of argument I is, therefore, to be the lead of helical groove itself. yr ig ht (c 0 (invalid) C op F331 bit 1 (Use of Feed per minute for tapping cycles) 1 (valid) Setting range Modal G-code Metric system Inch system G94 (per minute) 0.0001 to 99999.9999 mm/min 0.00001 to 9999.99999 in/min G95 (per revolution) 0.0001 to 9999.999 mm/rev 0.00001 to 999.9999 in/rev 13-34 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 The alarm 909 ILLEGAL PITCH IN FIXED CYCLE will be raised if the lead of helical groove should fall outside the range shown below. Lead of helical groove Metric system Inch system With decimal point 0 to 32.767 0 to 3.2767 Without decimal point 0 to 32 0 to 3 er ve d . <Negative values of argument I (for axial grooving)> Use argument I to specify the rate of axial feed for axial grooving by plunging in a value of overriding the argument F (rate of feed for thread forming). The setting can range from –1000 to –1 (1 to 1000 times), and the alarm 909 ILLEGAL PITCH IN FIXED CYCLE will be raised if the value of argument I should fall outside the setting range. Example : G84.5 X0.Y0.Z–14.R2. F1.0 I–30. S400 (F specified in feed per revolution) ts re s The rate of feed for axial grooving is set as follows: (F)1.0 × (S)400 × (I)30 = 12000. .A ll –1 ri Use argument J to specify the spindle speed for retracting the tool. gh Argument J Setting range: 0 to 999999.999 min Spindle speed for retraction (Argument J) Spindle speed (S-code value) × 100 34 08 C 39 O R PO R A TI O N Overriding ratio (%) = Argument J Overriding ratio Within Given The value corresponding to the argument J is used. the range of 100 to 999% Outside Automatically replaced with 100%. A ZA al ri Se Argument ,D K N o. Parameter K90 is used. (K90: Overriding ratio (%) of the retraction speed to the thread forming speed in synchronous tapping cycles) Omitted K IM Use argument ,D to specify the helical return distance for relieving the tool. A ZA Setting range: –99999.9999 to 99999.9999 mm or –9999.99999 to 9999.99999 in YA M The alarm 809 ILLEGAL NUMBER INPUT is raised if argument ,D should fall outside the setting range. )2 01 3 The setting is always used, by ignoring the sign, as an incremental value from position Z in the returning direction. Simply omit, or enter 0, as argument ,D if no retracting step is required. C op yr ig ht (c Note 1: When bit 1 of parameter F331 is set to 1, that is, when the feed command of a tapping cycle is to be processed in accordance with the current mode concerned (of G94 [Feed per minute] or G95 [Feed per revolution]), do not execute a tapping cycle by using the [RESTART 2 NONMODAL] menu function before checking the current mode for the appropriateness. F331 bit 1 = 0: Feed command is processed as that of synchronous tapping, = 1: Feed command is processed according to the current mode. Note 2: Parameters SA33 to SA40 (Time constants of cutting feed for synchronous tapping) are also applied to Punch tapping cycles. Use parameter SA238 (Reduction ratio of time constants for Punch tapping), as required, to reduce the time constants especially for Punch tapping cycles as shown below. (100 – SA238) Time constant for Punch tapping = Time constant for synchr. tapping × 100 13-35 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Note 3: The maximum permissible rate of cutting feed for Punch tapping cycles is determined in accordance with parameter M64. Any excessive command of the rate of feed is automatically processed so as to use the value according to M64. Note 4: As for a Punch tapping cycle of repetition at multiple hole machining positions, the positioning for radial transition to the next hole position is checked for the admissibility with different parameters according as the transition is to take place in the level of the initial point or in that of the R-point: with S64 (Positioning tolerance for point-to-point positioning control in transition between holes) or S13 (Positioning tolerance for rapid traverse by G0). G74.6/G84.6 (Left-hand/Right-hand Punch tapping, PT1.5) re s 2. er ve d . Note 5: Movements of cutting feed by G01 in a Punch tapping cycle are checked for the admissibility with an especially provided parameter (S65: Positioning tolerance for movements by G01 in Punch tapping cycles). ri gh ts G74.6 [Xx Yy] Zz Rr Ff0 Ii0 Jj0 [,Dd0 Pp Lk] G84.6 [Xx Yy] Zz Rr Ff0 Ii0 Jj0 [,Dd0 Pp Lk] .A ll Initial point N (Tg) N i0 i0 (G99) (G98) ZA A K IM D Point Z D747PB0076 YA M A ZA R-point position Pitch of thread forming Pitch of helical grooving Helical return distance for relieving the tool Axial distance for thread forming 01 3 r : f0 : i0 : d0 : Tg : R-point K al ri Se i0 (d0) p p 34 08 C 39 O R PO R A TI O o. i0 f0 p p : k : j0 : D: Dwell command Number of repetitions Spindle speed for retracting the tool Deburring adjustment distance (parameter F325) C op yr ig ht (c )2 Refer to “1. G74.5/G84.5 (Left-hand/Right-hand Punch tapping, PT1.0)” for a detailed description of the respective arguments. 13-36 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 3. 13 G74.8/G84.8 (Left-hand/Right-hand Punch tapping, PT2.0) G74.8 [Xx Yy] Zz Rr Ff0 Ii0 Jj0 [,Dd0 Pp Lk] G84.8 [Xx Yy] Zz Rr Ff0 Ii0 Jj0 [,Dd0 Pp Lk] Initial point R-point p p i0 i0 (G99) (G98) (Tg) i0 i0 f0 D Point Z gh i0 (d0) p ts re s f0 er ve d . i0 p : k : j0 : D: Dwell command Number of repetitions Spindle speed for retracting the tool Deburring adjustment distance (parameter F325) N R-point position Pitch of thread forming Pitch of helical grooving Helical return distance for relieving the tool Axial distance for thread forming 34 08 C 39 O R PO R A TI O r : f0 : i0 : d0 : Tg : .A ll ri D747PB0077 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. Refer to “1. G74.5/G84.5 (Left-hand/Right-hand Punch tapping, PT1.0)” for a detailed description of the respective arguments. 13-37 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-3 Suppression of Single-Block Stop for Fixed Cycles 13-3-1 Function description This function allows point-machining (i.e. hole-machining) operation to be checked efficiently in the mode of single-block operation by reducing the number of words, the frequency of operation stop). button operations (in other When this suppression function is valid, the single-block stop is reduced to the following three positions: er ve d ts Remark 1: Use the following parameter to make this function valid or invalid: Suppression of single-block stop for fixed cycles: F87 bit 4 = 1 (Valid) / 0 (Invalid) . Completion position of positioning, Completion position of approaching to R-point, Completion position of successive hole-machining operations and return. re s 1. 2. 3. ri gh Remark 2: This function is available for both EIA/ISO and MAZATROL program types. .A ll 13-3-2 Examples of operation 34 08 C 39 O R PO R A TI O N The changes made by this function to the single-block operation are described below taking the deep-hole drilling cycle (G83) as an example. G83 [Xx Yy] Rr Zz Ff0 Qq0 [Dd0 Kk0 Ptc Ii0 Hh0] K ZA F87 bit 4 = 1 K IM F87 bit 4 = 0 A Se ri al N o. In the deep-hole drilling cycle, the tool is to return repeatedly after drilling through a certain depth in order to avoid an increase in load due to clogging with chips. As shown in Figure 1, there are a number of positions at which the operation stops in the machining cycle. The number of stopping positions can be reduced as in Figure 2 by the single-block stop suppression. Initial point R-point R-point k0 k0 D-point D-point YA M A ZA Initial point G99 G98 G99 G98 d0 )2 01 3 d0 i0 Z-point Z-point : Single-block stop position : Single-block stop position Figure 1 Figure 2 C op yr ig ht (c i0 13-38 D735P0562 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-4 Initial Point and R-Point Level Return: G98 and G99 1. Function and purpose Commands G98 or G99 can be used to select whether the return level of the final sequence during fixed-cycle operation is to be set at R-point or at the initial point of machining. 2. Programming format G98: Initial point level return G99: R-point level return . Detailed description er ve d 3. G98 (At power-on or after cancellation G99 key) Initial point 34 08 C 39 O R PO R A TI O Only one Initial point N G81 X100. Y100. .A ll ri using M02, M30, or ts Sample program gh Number of holes re s The following represents the relationship between the G98/G99 mode and repeat times: R-point Z–50. R25. F1000 Return to R-point level. ZA K al ri A K IM Se A ZA G81 X100. Y100. Z–50. R25. L5 F1000 Two or more N o. Return to initial point level. R-point 1st hole 2nd hole C op yr ig ht (c )2 01 3 YA M Always return to initial point. 13-39 Last hole 1st hole 2nd hole Last hole MEP158 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-5 Scaling ON/OFF: G51/G50 1. Function and purpose The shape specified in a machining program can be enlarged or reduced in size using scaling command G51. The range of scaling (enlargement/reduction) factors is from 0.000001 to 99.999999. Use command G51 to specify a scaling axis, the center of scaling, and a scaling factor. Use command G50 to specify scaling cancellation. 2. Programming format er ve d gh Specifying a scaling axis .A ll A. ts Detailed description ri 3. Scaling cancel re s G50 . G51 Xx Yy Zz Pp Scaling on (specify a scaling axis, the center of scaling (incremental/absolute), and a scaling factor) 34 08 C 39 O R PO R A TI O N The scaling mode is set automatically by setting G51. Command G51 does not move any axis; it only specifies a scaling axis, the center of scaling, and a scaling factor. Scaling becomes valid only for the axis to which the center of scaling has been specified. o. Center of scaling The center of scaling must be specified with the axis address according to the absolute or incremental data command mode (G90 or G91). This also applies even when specifying the current position as the center. K ZA ri al N Scaling factor Use address P to specify a scaling factor. Specifiable range of factors: 1 to 99999999 or 0.000001 to 99.999999 (times) (Although both are valid, the latter with a decimal point must be preceded by G51.) A ZA K IM A 0.000001 Se Minimum unit of specification: )2 01 3 YA M Scaling factor: b/a ig ht (c b C op yr Machining shape a Programmed shape Scaling center MEP177 13-40 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 The scaling factor set in parameter F20 will be used if you do not specify any scaling factor in the same block as that of G51. The current setting of this parameter will be used if it is updated during the scaling mode. That is, the parameter setting existing when G51 is set is valid. Data will be calculated at a scaling factor of 1 if neither the program nor the parameter has a specified scaling factor. Alarms occur in the following cases: - If scaling is specified for a machine not capable of scaling (Alarm 872 G51 OPTION NOT FOUND) Cancellation of scaling re s B. er ve d . - If a scaling factor exceeding its maximum available value is specified in the same block as that of G51 (Alarm 809 ILLEGAL NUMBER INPUT) (All scaling factors less than 0.000001 are processed as 1.) N Precautions Scaling does not become valid for tool radius compensation, tool length offsetting, or tool position offsetting. Offsets and other corrections are calculated only for the shape existing after scaling. 2. Scaling is valid only for move commands associated with automatic operation (tape, memory, or MDI); it is not valid for manual movement. 3. After-scaling coordinates are displayed as position data. 4. Scaling is performed on the axis for which the center of scaling is specified by G51. In that case, scaling becomes valid for all move commands associated with automatic operation, as well as for the parameter-set return strokes of G73 and G83 and for the shift strokes of G76 and G87. 5. If only one axis of the plane concerned is selected for scaling, circular interpolation is performed with the single scaling on that axis. 6. Scaling will be cancelled if either M02, M30, or M00 (only when M0 contains reset) is issued during the scaling mode. Scaling is also cancelled by an external reset command or K Data P, which specifies a scaling factor, can use a decimal point. The decimal point, however, becomes valid only if scaling command code G51 precedes data P. (c ht G51P0.5 P0.5G51 P500000G51 G51P500000 ig yr op key during the reset/initial status. )2 7. C A K IM Se ZA A M YA 01 3 pressing the 8. ZA al N o. 34 08 C 39 O R PO R A TI O 1. ri 4. .A ll ri gh ts The scaling cancel mode is set automatically by setting G50. Setting this command code offsets any deviation between the program coordinates and the coordinates of the actual machine position. Even for axes that have not been designated in the same block as that of G50, the machine moves through the offset amount specified by scaling. 0.5 time 1 time (regarded as P = 0) 0.5 time 0.5 time The center of scaling is shifted accordingly if the coordinate system is shifted using commands G92 or G52 during scaling. 13-41 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 5. Sample programs Basic operation I 1. ts re s er ve d . N01 G92X0Y0Z0 N02 G90G51X–100.Y–100.P0.5 N03 G00G43Z–200.H02 N04 G41X–50.Y-50.D01 N05 G01Z–250.F1000 N06 Y–150.F200 N07 X–150. N08 G02Y–50.J50. N09 G01X–50. N10 G00Z0 N11 G40G50X0Y0 N12 M02 –150. –100. –50. X W 34 08 C 39 O R PO R A TI O N .A ll ri –200. gh Y N09 –50. N11 K M –100. A N06 N07 –150. Tool path after 1/2 scaling Program path after 1/2 scaling Tool path without scaling Program path without scaling 01 3 YA D01 = 25.000 M: Scaling center M A ZA K IM Se ri N08 ZA al N o. N04 C op yr ig ht (c )2 MEP178 13-42 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 Basic operation II 2. [2] If scaling is to be done for X, Y N02 G90G51X–100.Y–100.P0.5 [3] If scaling is to be done for X only N02 G90G51X–100.P0.5 [4] If scaling is to be done for Y only N02 G90G51Y–100.P0.5 er ve d N02 G90G51P0.5 –50. .A ll –100. ri Y –150. gh ts re s [1] Without scaling . N01 G92X0Y0 N02 G90G51P0.5 ........ See [1] to [4] below. N03 G00X–50.Y–50. N04 G01X–150.F1000 N05 Y–150. N06 X–50. N07 Y–50. N08 G00G50 N09 M02 X 34 08 C 39 O R PO R A TI O N W [3] K ZA K IM [2] A Se ri al N o. [4] –50. –100. M A ZA M YA [1] )2 01 3 –150. C op yr ig ht (c MEP179 13-43 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Basic operation III 3. er ve d . N01 G92X0Y0 N02 G90G51P0.5 .................. See [1] to [4] below. N03 G00X–50.Y–50. N04 G01Y–150.F1000 N05 G02X–100.I–25. N06 G01X–150. N07 G02X–200.I–25. N08 G01X–250.Y–100. N09 Y–50. N10 X–50. N11 G00G50 N12 M02 Without scaling N02 G90G51P0.5 [2] If scaling is to be done for X, Y N02 G90G51X–125.Y–100.P0.5 [3] If scaling is to be done for X only N02 G90G51X–125.P0.5 [4] If scaling is to be done for Y only N02 G90G51Y–100.P0.5 gh ri .A ll N 34 08 C 39 O R PO R A TI O –150. –200. –125. –100. Y –50. X W K A ZA –50. ZA K IM Se ri al N o. –250. ts re s [1] [2] M –100. 01 3 YA M A [4] [3] –150. ig ht (c )2 [1] C op yr MEP180 13-44 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 4. 13 Reference-point (zero point) check (G27) during scaling Setting G27 during scaling cancels the scaling mode after G27 has been executed. N01 G28X0Y0 N02 G92X0Y0 N03 G90G51X–100.Y–100.P0.5 N04 G00X–50.Y–50. N05 G01X–150.F1000 N06 G27X0Y0 er ve d . If a program is constructed in the manner that the reference point is reached under normal mode, it will also be reached even under scaling mode. –100. –50. X ts –150. re s Y .A ll ri gh W 34 08 C 39 O R PO R A TI O N N06* N06** –50. K ZA A –100. M YA M A ZA N06* ............. Without scaling N06**............ During scaling K IM Se ri al N N05 o. N04 C op yr ig ht (c )2 01 3 MEP181 13-45 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 5. Reference-point (zero point) return (G28, G29, or G30) during scaling Setting G28 or G30 during scaling cancels the scaling mode at the middle point and then executes the reference-point (zero point) return command. If the middle point has not been set, the reference-point (zero point) return command is executed with the point where scaling has been cancelled as middle point. If G29 is set during the scaling mode, scaling will be performed for the entire movement after the middle point. N01 G28X0Y0 N02 G92X0Y0 N03 G90G51X–100.Y–150.P500000 N04 G00X–50.Y–100. N05 G01X–150.F1000 N06 G28X–100.Y–50. N07 G29X–50.Y–100. –100. –50. 34 08 C 39 O R PO R A TI O N –150. Y .A ll ri gh ts re s er ve d . 0.5 X W N06 N o. N07 K ZA A N07* ZA N06* –50. N04 K IM Se ri al Intermediate point N07** M A N06** 01 3 YA –100. C op yr ig ht (c )2 N05 –150. N06* N07* Without scaling N06** N07** During scaling M MEP182 13-46 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 6. One-way positioning (G60) during scaling Setting G60 during the scaling mode executes scaling at the final point of positioning, and thus no scaling is performed for the parameter l1 of creeping. That is, the amount of creeping remains constant, irrespective of whether scaling is valid. N01 G92X0Y0 N02 G91G51X–100.Y–150.P0.5 N03 G60X–50.Y–50. N04 G60X–150.Y–100. –100. –50. X W .A ll ri gh ts re s –150. er ve d . Y 34 08 C 39 O R PO R A TI O N Without scaling –50. K ZA –100. A N04 ZA K IM Se ri al N o. N03 M –150. (c )2 01 3 YA M A During scaling C op yr ig ht MEP183 13-47 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 7. Workpiece coordinate system updating during scaling Updating of the workpiece coordinate system during scaling causes the center of scaling to be shifted according to the difference in offset amount between the new workpiece coordinate system and the old one. Subprogram N01 G90G54G00X0Y0 N02 G51X–100.Y–100.P0.5 N03 G65P100 N04 G90G55G00X0Y0 N05 G65P100 G54 W1 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . O100 G00X–50.Y–50. G01X–150.F1000 Y–150. X–50. Y–50. M99 % G55 K ZA A ZA K IM Se ri al N o. W2 M YA M A M’ ’ C op yr ig ht (c )2 01 3 MEP184 13-48 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 8. Figure rotation during scaling Setting a figure rotate command during scaling executes scaling for both the center and radius of rotation of the figure. Subprogram N01 G92X0Y0 N02 G90G51X0Y0P0.5 N03 G00X–100.Y–100. N04 M98P200I–50.L8 –150. –100. –50. X re s –200. Y er ve d Scaling center . O200 G91G01X–14.645Y35.355F1000 M99 % –50. K ZA After scaling A –100. ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts W YA M A Machining program ht (c )2 01 3 –150. C op yr ig MEP185 13-49 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 9. Scaling using a figure rotation subprogram Setting a scaling command in a figure rotation subprogram executes scaling only for the shape predefined in the subprogram. Scaling is not executed for the radius of rotation of the figure. Subprogram G92X0Y0 G90G00X100. M98P300I–100.L4 G90G00X0Y0 M02 K A ZA Machining program K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . O300 G91G51X0Y0P0.5 G00X–40. G01Y–40.F1000 X40. G03Y80.J40. G01X–40. Y–40. G00G50X40. X–100.Y100. M99 % M A ZA W yr ig ht (c )2 01 3 YA After scaling C op MEP186 13-50 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 10. Scaling during coordinate rotation If scaling during coordinate rotation is programmed the center of scaling will rotate and scaling will be performed at that rotated center of scaling. er ve d . (Coordinate rotation data setting) –100. –50. ri –150. Y X W 34 08 C 39 O R PO R A TI O N .A ll –200. gh ts re s N01 G92X0Y0 N02 M00 N03 G90G51X–150.Y–75.P0.5 N04 G00X–100.Y–50, N05 G01X–200.F1000 N06 Y–100. N07 X–100. N08 Y–50. N09 G00G50X0Y0 Scaling only –50. K ZA A ZA K IM Se ri al N o. Machining program –100. YA N05 N08 N06 –150. N07 yr ig ht (c )2 01 3 Shift of scaling center by coordinate rotation Coordinate rotation only M A N04 C op Coordinate rotation and scaling MEP187 13-51 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 11. Setting G51 during scaling If command G51 is set during the scaling mode, the axis for which the center of scaling is newly specified will also undergo scaling. The scaling factor specified by the latest G51 command becomes valid in that case. N01 G92X0Y0 N02 G90G51X–150.P0.75 N03 G00X–50.Y–25. N04 G01X–250.F1000 N05 Y–225. N06 X–50. N07 Y–25. N08 G51Y–125.P0.5 N09 G00X–100.Y–75. N10 G01X–200. N11 Y–175. N12 X–100. N13 Y–75. N14 G00G50X0Y0 Scaling axis X; P = 0.75 gh ts re s er ve d . Scaling axes X and Y; P = 0.5 –200. –150. N ZA M N03 N14 –50. ZA –100. N11 N13 N12 –150. )2 01 3 YA X W A N10 A Machining program –50. K N09 K IM Se ri al N05 –100. Y N04 o. –250. 34 08 C 39 O R PO R A TI O N .A ll ri Cancel –200. N06 C op yr ig ht (c N07 MEP188 13-52 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-6 Mirror Image ON/OFF by G-Code: G51.1/G50.1 1. Function and purpose Mirror image mode can be turned on and off for each axis using G-codes. Higher priority is given to the mirror image setting with the G-codes over setting by any other methods. 2. Programming format G51.1 Xx1 Yy1 Zz1 Cc1 Bb1 G50.1 Xx2 Yy2 Zz2 Cc2 Bb2 Detailed description er ve d . 3. Mirror image ON Mirror image OFF re s Use the address and coordinates in a G51.1 block to specify the mirroring axis and mirroring center (using absolute or incremental data), respectively. gh ts If the coordinate word is designated in G50.1, then this denotes the axis for which the mirror image is to be cancelled. Coordinate data, even if specified, is ignored in that case. .A ll ri If mirror image is turned on for only one of the axes forming a plane, the rotational direction and the offset direction become reverse during circular interpolation, tool radius compensation, or coordinate rotation. Programming example for linear axes (X- and Y-axis) [1] A ZA K Y K IM Se ri [2] al N o. 4. 34 08 C 39 O R PO R A TI O N Since the mirror image function works with reference to the currently active local coordinate system, the center of mirror image processing moves according to the particular counter preset data or the change in workpiece coordinate offsetting data. [3] [4] MEP189 (c )2 01 3 YA M A ZA X X Y ht (Main program) C op yr ig G00G90G40G49G80 M98P100 G51.1X0 M98P100 G51.1Y0 M98P100 G50.1X0 M98P100 G50.1Y0 M30 [1] OFF OFF [2] ON OFF [3] ON ON [4] OFF ON OFF OFF 13-53 (Subprogram O100) G91G28X0Y0 G90G00X20.Y20. G42G01X40.D01F120 Y40. X20. Y20. G40X0Y0 M99 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 5. Programming example for a rotational axis (C-axis) Without mirror image With mirror image (Absolute programming) With mirror image (Incremental programming) C = 0° C = 0° C = 0° [1] [3] [3] [1] [1] [2] [2] [2] er ve d . [3] re s D740PB0160 (With mirror image) * Absolute programming (With mirror image) * Incremental programming G00G90G40G49G80 M200 C0 C45. ...................[1] C90. ...................[2] C-45. .................[3] M30 G00G90G40G49G80 M200 C0 G51.1C0 C45. .................. [1] C90. .................. [2] C-45. ................ [3] G50.1C0 M30 G00G90G40G49G80 M200 C0 G51.1C0 G91C45. ............ [1] C90. ................... [2] C-45. ................. [3] G50.1C0 M30 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts (Without mirror image) 13-54 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-7 Mirror Image ON/OFF by M-Code: M91, M92, M93/M90 1. Function and purpose Mirror image mode can be turned on and off for linear and rotational axes using M-codes. Programming format 3. Mirror image ON for the X-axis Mirror image ON for the Y-axis Mirror image ON for the B-axis Mirror image OFF . M91 M92 M93 M90 Detailed description er ve d 2. re s The center of mirror image processing is implicitly the origin (X = 0, Y = 0, B = 0°) of the currently active workpiece or local coordinate system. gh ts Use M90 to cancel all the mirror image functions selected with M91 to M93. M90 Mirror image OFF. N To cancel all the mirror image functions selected with M91 to M93. Mirror image ON for the X-axis. 34 08 C 39 O R PO R A TI O M91 .A ll ri Do not give more than one mirror image M-code in one and the same block. To turn on the mirror image mode for the X-axis, i.e. to reverse the sign (+ and –) of the motion amount on the X-axis. M92 Mirror image ON for the Y-axis. o. To turn on the mirror image mode for the Y-axis, i.e. to reverse the sign (+ and –) of the motion amount on the Y-axis. Mirror image ON for the B-axis. N M93 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al To turn on the mirror image mode for the B-axis, i.e. to reverse the sign (+ and –) of the motion amount on the B-axis. 13-55 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-8 Subprogram Control: M98, M99 1. Function and purpose Fixed sequences or repeatedly used programs can be stored in the memory as subprograms which can then be called from the main program when required. M98 serves to call subprograms and M99 serves to return from the subprogram. Furthermore, it is possible to call other subprograms from particular subprograms and the nesting depth can include as many as 8 levels. Subprogram Subprogram Subprogram Subprogram O0010; O1000; O1200; O2000; O5000; M98P1000; M98P1200 Q20; N20; M98P2000; M98P2500; M02; M99; N60; M99; M99P60; re s ts gh ri (Level 2) M99; (Level 3) (Level 8) .A ll (Level 1) er ve d . Main program 34 08 C 39 O R PO R A TI O N Nesting depth TEP161 The table below shows the functions which can be executed by adding and combining the tape storing and editing functions, subprogram control functions and fixed cycle functions. o. (: available ×: not available) Case 4 Yes Yes Yes Yes No Yes × × × × × × × × K A M A ZA 2. Tape editing (main memory) 4. Subprogram nesting (*) Case 3 Yes Yes No ZA al ri 1. Memory operation 3. Subprogram call Case 2 Yes No No K IM Se Function Case 1 N 1. Tape storing and editing 2. Subprogram control 3. Fixed cycles YA 5. Fixed cycles 01 3 6. Fixed cycle subprogram editing * The nesting depth can include as many as 8 levels. )2 In order that it may function correctly, do not give a command of subprogram control in one block together with any one for the following functions (described in this chapter): (c Note : Fixed cycle Macro call C op yr ig ht Hole machining pattern cycle 13-56 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 2. 13 Programming format Subprogram call M98 <_> H_ L_; Number of subprogram repetitions (L1 if omitted) Sequence number in subprogram to be called (head block if omitted) Program name of subprogram to be called [up to 32 characters] (calling program if omitted) Alternatively, M98 P_ H_ L_; Number of subprogram repetitions (L1 if omitted) er ve d . Sequence number in subprogram to be called (head block if omitted) re s Program number [composed of numerals only] of subprogram to be called [up to 8 digits] (calling program if omitted) P can only be omitted during memory operation. M99 P_ L_; ri Number of times after repetition number has been changed gh ts Return to main program from subprogram N Creating and entering subprograms 34 08 C 39 O R PO R A TI O 3. .A ll Sequence number of return destination (returned to block following block of call if omitted) Subprograms have the same format as machining programs for normal memory operation except that the subprogram completion instruction M99 (P_ L_) is entered as an independent block at the last block. O ; ............... ; ............... ; K al N o. Program number as subprogram ZA A Se ri Main body of subprogram ............... ; M99; %(EOR) K IM Subprogram return command End of record code (% with ISO code and EOR with EIA code) A ZA The above program is registered by editing operations. 01 3 YA M See Chapter 32 for more information. C op yr ig ht (c )2 Only those subprograms numbers ranging from 1 through 99999999 designated by the optional specifications can be used. When there are no program numbers on the tape, the setting number for “program input” is used. Up to 8 nesting levels can be used for calling programs from subprograms, and an alarm (842 SUB PROGRAM NESTING EXCEEDED) occurs if this number is exceeded. Main programs and subprograms are registered in order in which they were read because no distinction is made between them. This means that main programs and subprograms should not be given the same numbers. (If the same numbers are given, error occurs during entry.) 13-57 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS ; O ; ................. ; Subprogram A M99; % ; O ; ................. ; Subprogram B er ve d . M99; ts Subprogram C gh ; O ; ................. ; re s % ri .A ll M99; N % 34 08 C 39 O R PO R A TI O Note 1: Main programs can be used during memory and tape operation but subprograms must have been entered in the memory. Note 2: The following commands are not the object of subprogram nesting and can be called even beyond the 8th nesting level. o. Fixed cycles K ZA A Subprogram execution Se 4. ri al N Pattern cycles K IM M98: Subprogram call command M99: Subprogram return command A M98 P_ H_ L_; YA Name of the subprogram to be called (up to 32 characters) Number of the subprogram to be called (up to 8 digits) Any sequence number within the subprogram to be called (up to 5 digits) Number of repetitions from 1 to 9999 with numerical value of four figures; if L is omitted, the subprogram is executed once ; with L0, there is no execution. C op yr ig ht (c )2 01 3 Where < > : P : H : L : or M M98 <_> H_ L_; ZA Programming format For example, M98 P1 L3; is equivalent to the following : M98 P1; M98 P1; M98 P1; 13-58 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 Example 1: When there are 3 subprogram calls (known as 3 nesting levels) Main program Subprogram 1 Subprogram 2 Subprogram 3 O1; O10; O20; [1] [2] M98P1; [3] M98P10; M98P20; [1]’ [2]’ [3]’ M99; M99; M99; Sequence of execution: [1][2][3][3]’[2]’[1]’ er ve d . M02; re s TEP162 N .A ll ri gh ts For nesting, the M98 and M99 commands should always be paired off on a 1 : 1 basis [1]' for [1], [2]' for [2], etc. Modal information is rewritten according to the execution sequence without distinction between main programs and subprograms. This means that after calling a subprogram, attention must be paid to the modal data status when programming. commands designate the sequence numbers in a 34 08 C 39 O R PO R A TI O Example 2: The M98 Q_ ; and M99 P_ ; program with a call instruction. M99P_; K IM N3__; N100__; M98P123; N200__; N300__; N400__; O123; M99P100; YA M A ZA M99; K Search A Se ri M98Q3; ZA al N o. M98Q_; C op yr ig ht (c )2 01 3 TEP163 13-59 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Example 3: Main program M98 P2 ; O1; M99; % O2; N200 M99; % O3; N200 M99; % Subprogram 1 er ve d . Subprogram 2 .A ll ri gh ts re s Subprogram 3 N When the O2 N200 block is searched with the memory search function, the modal data are updated according to the related data of O2 to N200. 34 08 C 39 O R PO R A TI O The same sequence number can be used in different subprograms. When the subprogram (No. p1) is to be repeatedly used, it will be repeatedly executed for I1 times provided that M98 Pp1 Ll1 ; is programmed. o. Other precautions N 5. K al An alarm occurs when the designated program number (P) is not found. ZA A K IM Se ri Single block stop does not occur in the M98P _ ; and M99 ; block. If any address except O, N, P, Q or L is used, single block stop can be executed. (With X100. M98 P100 ; operation branches to O100 after X100. is executed.) ZA When M99 is commanded in the main program, operation returns to the head. YA M A Operation can branch from tape or PTR operation to a subprogram by M98P_ but the sequence number of the return destination cannot be designated with M99P_ ;. (P_ is ignored.) C op yr ig ht (c )2 01 3 Care should be taken that the search operation will take time when the sequence number is designated by M99P_ ; 13-60 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 6. 13 MAZATROL program call from EIA/ISO program A. Overview MAZATROL machining program can be called as a subprogram from the machining program described with EIA/ISO codes. EIA/ISO MAZATROL (Program call) MAZATROL (WNo. 1000) EIA/ISO MAZATROL machining program is called from EIA/ISO program, and entire machining program can be used. gh ts re s er ve d . M98P1000; 34 08 C 39 O R PO R A TI O N .A ll ri Note 1: When the execution of MAZATROL machining program is completed, the execution is returned again to EIA/ISO program. It should be noted that the used tool, current position and others are changed though EIA/ISO modal information is not changed. ZA M98 P_ L_; A or ri M98 <_> L_; al Programming format Se B. K N o. Note 2: A MAZATROL program should be called up as a subprogram always in the mode of radius data input (G10.9X0) from an EIA/ISO program; otherwise (called in the mode of diameter data input) the MAZATROL program cannot be executed correctly in that the programmed values concerned are used just in half their dimensions for axis motion control. ZA K IM < > or P: Name, or number, of the MAZATROL machining program to be called. When omitted, the alarm 844 PROGRAM No. NOT FOUND will be displayed. A The same alarm will occur when the specified program is not stored. YA M L: Number of repetitions of program execution (1 to 9999). C op yr ig ht (c )2 01 3 When omitted or L = 0, the called program will be executed one time (as if L = 1). 13-61 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS C. Detailed description 1. END unit of the MAZATROL program The END unit of the MAZATROL program to be called must have “1” specified under CONTI. for correct return to the EIA/ISO main program. As for the END unit’s items other than CONTI.: Even if WORK No. is specified, program chain cannot be made with the MAZATROL program called from an EIA/ISO program. MAZATROL EIA/ISO M98 Ignored Impossible er ve d . UNIT CONTI. WORK No. END 1 MAZATROL program execution .A ll 2. ri gh ts re s MAZATROL N When MAZATROL program is called from an EIA/ISO program, the MAZATROL program is executed like automatic operation of MAZATROL. o. The END unit of the MAZATROL program to be called from an EIA/ISO program must have “1” specified under CONTI. for correct return to the EIA/ISO main program. Never use an M99 command for the return. K ZA A K IM Remarks MDI interruption and macro interruption signal during MAZATROL program execution are ignored. 2. MAZATROL program cannot be restarted halfway. 3. MAZATROL program call in the mode of a fixed cycle results in an alarm. 4. MAZATROL program call in the mode of tool radius compensation results in an alarm. 5. MAZATROL program call is not available in the MDI operation mode (results in an alarm). 6. A MAZATROL program called by M98 cannot be executed but in its entirety (from the head to the end). )2 01 3 YA M A ZA 1. Commands to addresses other than O, N, P, Q, L and H in a block of M98 for MAZATROL program call will not be processed till completion of the called program. C op yr ig 7. ht (c D. Se ri al N Note : 34 08 C 39 O R PO R A TI O MAZATROL program is executed independently of EIA/ISO program which has made the call. In other words, it performs the same machining as MAZATROL program alone is executed. When calling MAZATROL program, always place a tool outside the safety profile beforehand. Failure to do this may cause interference of a workpiece with the tool. 13-62 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-9 End Processing: M02, M30, M998, M999 If the program contains M02, M30, M998, M999 or EOR (%), the block containing one of these codes will be executed as the end of the program in the NC unit. The program end processing will not be commanded by M98 or M99. In end processing, tool life processing, parts count, and work No. search will be executed. 1. M02, M30 Tool life processing only will be executed. 2. M998, M999 Tool life processing, parts count, and work No. search will be executed. <111> Q1; . M998(999) re s er ve d Specification of execution or non-execution of parts count (counting updated on POSITION display) 0: Parts count non-execution 1: Parts count execution ts Name of the program to be executed next .A ll ri gh M-code for program chain M998: Continuous execution after parts count and work No. search M999: Ending after parts count and work No. search M998(999) S111 34 08 C 39 O R PO R A TI O N As shown below, the next program can be designated alternatively with address S if its “name” consists of numerals only. Q1; o. Specification of execution or non-execution of parts count (counting updated on POSITION display) 0: Parts count non-execution 1: Parts count execution N Number of the program to be executed next K ZA A MAZATROL program or EIA/ISO program YA M A EIA/ISO program ZA - M998<> K IM Se ri al M-code for program chain M998: Continuous execution after parts count and work No. search M999: Ending after parts count and work No. search )2 01 3 M998<> ht (c MAZATROL or EIA/ISO program is called from EIA/ISO program and executed as the next program. EIA/ISO program C op yr ig - M999<> M999<> MAZATROL program or EIA/ISO program MAZATROL or EIA/ISO program is only called from EIA/ISO program and the operation is terminated. 13-63 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Note 1: In order to prevent the machine operation from being inconveniently stopped, the NC will process a block of M998Q1 automatically as that of M999Q1 in case the total number of machined parts should amount to, or exceed, the preset number of parts required. Note 2: Omission of the designation of the next program, be it by name or number, will result in the current main program being called up as the next one. 13-10 Linear Angle Commands 1. Function and purpose Programming format re s 2. er ve d . Programming the linear angle and one of the coordinates of the ending point makes the NC unit automatically calculate the coordinates of that ending point. N .A ll ri * A and ,A (with a prefixed comma) can be used for angle designation. gh ts N1 G01 Aa1 Zz1 (Xx1); Designate the angle and the coordinates of the X-axis or the Z-axis. N2 G01 A–a2 Zz2 (Xx2); (Setting Aa3 means the same as setting A–a2.) 34 08 C 39 O R PO R A TI O X (z1, x1) x1 –a2 K (z2, x2) K IM Se ri x2 N2 a3 A a1 ZA al N o. N1 Z M YA Detailed description 1. The angle denotes that relative to the plus (+) direction of the first axis (horizontal axis) on the selected plane. Assign the sign + for a counterclockwise direction (CCW) or the sign – for a clockwise direction (CW). 2. Set the ending point on one of the two axes of the selected plane. ht Angle data will be ignored if the coordinates of both axes are set together with angles. yr ig 3. (c )2 01 3 3. A ZA MEP190 If angles alone are set, the command will be handled as a geometric command. 5. For the second block, the angle at either the starting point or the ending point can be specified. 6. Always give a linear angle command using A with a prefixed comma (,A) if address A is to be used for an axis name or for the No. 2 miscellaneous function. 7. This function is valid only for the G01 command; it is not valid for other interpolation or positioning commands. C op 4. 13-64 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-11 Macro Call Function: G65, G66, G66.1, G67 13-11-1 User macros Macroprogram call, data calculation, data input to/output from a personal computer, data control, judgment, branching, and various other instructions can be used with variables commands to perform measurements and other operations. Macroprogram er ve d . Main program ri M99 .A ll M30 gh ts re s Macro call instruction N MEP164 34 08 C 39 O R PO R A TI O A macroprogram is a subprogram which is created using variables, calculation instructions, control instructions, etc. to have special control features. These special control features (macroprograms) can be used by calling them from the main program as required. These calls use macro call instructions. o. Detailed description K ZA ri al N When command G66 is entered, the designated user macro subprogram willbe called every time after execution of the move commands within a block until G67 (cancellation) is entered. A In order that it may function correctly, do not give a command of macro call in one block together with any one of the following commands (described in this chapter): ZA Note : K IM Se Command codes G66 and G67 must reside in the same programm in pairs. A Hole machining pattern cycle M Fixed cycle C op yr ig ht (c )2 01 3 YA Subprogram control 13-65 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-11-2 Macro call instructions Two types of macro call instructions are provided: single-call instructions used to call only at the designated block, and modal call instructions used to call at each block within a macro call mode. Modal call instructions are further divided into type A and type B. 1. Single call Subprogram (O 01) Main program O01 er ve d . to subprogram re s G65P01L1 <argument> gh ts M99 .A ll ri to main program 34 08 C 39 O R PO R A TI O N The designated user macro subprogram ends with M99. Instruction G65 calls the designated user macro subprogram only once. o. Format: G65 <__> L__ <argument> K A ZA Program Name (When omitted, own program will be repeated.) K IM Se ri al N Repeat times Alternatively, Repeat times Program No. (When P is omitted, own program will be repeated.) )2 01 3 YA M A ZA G65 P__ L__ <argument> C op yr ig ht (c <Argument> When argument is to be delivered to the user macro subprogram as a local variable, designate the required data with the respective addresses. (Argument designation is not available for a user macro subprogram written in MAZATROL language.) In such a case, the argument can have a sign and a decimal point, irrespective of the address. Arguments can be specified using method I or II, as shown below. 13-66 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS A. Argument specification I Format: A_B_C_ X_Y_Z_ Detailed description An argument can be specified using all addresses, except G, L, N, O, and P. Except for I, J, and K, addresses does not need be specified in an alphabetical order. Addresses I, J, and K must be specified in an alphabetical order. I_J_K_ ....... Correct J_I_K_ ........ Wrong Addresses whose specification is not required can be omitted. Call commands and usable addresses Address specified using method I Variable in macroprogram G65, G66 A #1 D #7 E #8 F #9 G #10 H #11 I #4 J N o. ts gh ×* × ×* #13 #14 × ×* #15 × × #16 × ×* #17 #18 #19 T #20 U #21 V #22 W #23 X #24 Y #25 Z #26 K IM ZA A P ig ht 01 3 YA M Q S A Se N O R ZA ri #6 #12 K )2 × (c al #5 M yr ri .A ll #3 N #2 G66.1 34 08 C 39 O R PO R A TI O B C L op re s Relationship between address and variables number K C er ve d . The relationship between addresses that can be specified using argument specification I, and variables numbers in a user macro unit, is shown in the following table: : Usable 13-67 ×: Unusable *: Usable in G66.1 modal Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS B. Argument specification II Format: A_B_C_I_J_K_I_J_K_ Detailed description Up to a maximum of 10 sets of arguments that each consist of addresses I, J, and K, as well as A, B, and C, can be specified. If identical addresses overlap, specify them in the required order. Addresses whose specification is not required can be omitted. Argument specification II addresses Variables in macroprograms A #1 K5 #18 K6 #5 I7 K1 #6 J7 I2 #7 K7 J2 #8 I8 K2 #9 I3 #10 #11 #12 I4 #13 #14 I5 #22 #23 #24 #25 J8 #26 K8 #27 I9 #28 J9 #29 K9 #30 I10 #31 J10 #32 K10 #33 #17 ZA In the table above, the numerals 1 through 10 have been added to addresses I, J, and J just to denote the order of arrangement of the designated sets of arguments: these numerals are not included in actual instructions. Combined use of argument specification I and II 01 3 C. YA M A Note : #16 #21 K IM J5 A Se ri #15 ZA al J4 K4 K N o. J3 K3 ts #4 #20 34 08 C 39 O R PO R A TI O I1 J1 #19 gh J6 ri I6 #3 .A ll #2 N B C . Variables in macroprograms er ve d Argument specification II addresses re s The relationship between addresses that can be specified using argument specification II, and variables numbers in a user macro unit, is shown in the following table: )2 When both method I and method II are used to specify arguments, only the latter of two arguments which have an address corresponding to the same variable will become valid. C op yr ig ht (c Example : Call command G65 A1.1 B–2.2 D3.3 I4.4 I7.7 Variables #1: 1.1 #2: –2.2 #3: #4: 4.4 #5: #6: #7: 7.7 If two arguments (D3.3 and I7.7) are designated for the variable of #7, only the latter argument (I7.7) will be used. 13-68 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 2. 13 Modal call, type A (Move command call) Subprogram Main program O01 to subprogram G66P01L1 <argument> M99 to main program . G67 re s er ve d to subprogram gh ts For a block that has a move command code between G66 and G67, the designated user macro subprogram is executed after that move command has been executed. The subprogram is 34 08 C 39 O R PO R A TI O N .A ll ri executed an 1 number of times for the first call, or once for subsequent calls. For modal call of type A, the methods of specifying <argument> are the same as used for single call. Format: G66 <__> L__ <argument> o. Repeat times ZA K IM G66 P__ L__ <argument> A Se ri Alternatively, K al N Program name Program No. YA M A ZA Repeat times 01 3 Detailed description ht (c )2 When command G66 is entered, the designated user macro subprogram will be called every time after execution of the move commands within a block until command G67 (cancellation) is entered. C op yr ig Command codes G66 and G67 must reside in the same program in pairs. Entry of a G67 command without a G66 command results in an alarm (857 INCORRECT USER MACRO G67 PROG). 13-69 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Example : Hole-machining cycle Main program N1 G90 G54 G0 X0Y0Z0 Subprogram N2 G91 G00 X-50.Y-50.Z-200. N3 G66 P9010 R-10.Z-30.F100 O9010 N4 X-50. Y-50. N10 G00 Z#18M03 N5 X-50. N6 G67 To subprogram after axis motion N20 G09 G01 Z#26F#9 To subprogram after axis motion N30 G00 Z-[#18+#26] M99 –100. –50. W N2 N3 re s N1 N10 Argument R ts –50 N4 N5 N30 .A ll Argument F N Y Argument Z ri N20 –100 gh –150. X er ve d . Return Z-axis movement 34 08 C 39 O R PO R A TI O To subprogram Modal call, type B (Block-to-block call) K al 3. N o. Note 1: The designated subprogram is executed after the axis commands in the main program have been executed. Note 2: No subprograms are executed for the G67 block and its successors. ZA A K IM Se ri The designated user macro subprogram is called unconditionally for each of the command blocks present between G66.1 and G67. Execution of the macro program is repeated as specified with L for the first call, and only once for each of subsequent calls. Repeat times Program name )2 01 3 YA M A ZA Format: G66.1 <__> L__ <argument> ht (c Alternatively, C op yr ig G66.1 P__ L__ <argument> Repeat times Program No. Detailed description During the G66.1 mode, only the codes O, N, and G in each of the read command blocks are executed. No other codes in those blocks are executed; codes other than O, N, and G are handled as arguments. However, only the last G-code and the N-codes following a code other than O or N become arguments. 13-70 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 All significant blocks in the G66.1 mode are regarded as preceded by the command G65P_. For example, the block of N100G01G90X100. Y200. F400R1000 in the G66.1P1000 mode is handled as equivalent to N100G65P1000G01G90X100. Y200. F400R1000. Note : Call is executed even for the G66.1 command block of the G66.1 mode, with the relationship between the addresses of the arguments and the variables numbers being the same as for G65 (single call). G-code macro call re s 4. er ve d Sequence number N, modal G-codes, and O are all updated as modal information. . The data range of the G, L, P, and N commands that you can set as new variables using the G66.1 mode is the same as the data range of usual NC commands. ri gh ts The user macro subprograms of the required program number can be called just by setting G-codes. N .A ll Format: G×× <argument> 34 08 C 39 O R PO R A TI O G-code which calls macro-subprogram Detailed description K ZA K IM G65P <argument> A Se ri al N o. The instruction shown above performs the same function as those of the instructions listed below. Which of these listed instructions will apply is determined by the parameter data to be set for each G-code. M98P G66P <argument> ZA G66.1P <argument> M A Use parameters to set the relationship between G ×× (macro call G-code) and P (program number of the macro to be called). 01 3 YA Of G00 through G255, up to a maximum of 10 command codes can be used with this instruction unless the uses of these codes are clearly predefined by EIA/ISO Standards, such as G00, G01, G02, etc. C op yr ig ht (c )2 The command code cannot be included in user macro subprograms that have been called using G-codes. 13-71 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 5. Auxiliary command macro call (M-, S-, T-, or B-code macro call) The user macro subprograms of the required program number can be called just by setting M-, S-, T-, or B-codes. Format: Mm (or Ss, Tt and Bb) M (or S, T and B) code which calls macro-subprogram er ve d . Detailed description (The following description also applies to S-, T-, and B-codes.) ts re s The instruction shown above performs the same function as those of the instructions listed below. Which of these listed instructions will apply is determined by the parameter data to be set for each M-code. M98P gh G65PMm .A ll ri G66PMm G66.1PMm 34 08 C 39 O R PO R A TI O N Use parameter to set the relationship between Mm (macro call M-code) and P (program number of the macro to be called). Up to a maximum of 10 M-codes, ranging from M00 to M95, can be registered. Do not register the M-codes that are fundamentally required for your machine, nor M0, M1, M2, M30, and M96 through M99. K ZA A Differences in usage between commands M98, G65, etc. K IM 6. Se ri al N o. If registered auxiliary command codes are set in the user macro subprograms that have been called using M-codes, macro calls will not occur since those special auxiliary command codes will be handled as usual ones (M-, S-, T-, or B-codes). Arguments can be designated for G65, but cannot be designated for M98. A ZA Sequence numbers can be designated for M98, but cannot be designated for G65, G66, or G66.1. 01 3 YA M Command M98 executes a subprogram after M98 block commands other than M, P, H, and L have been executed, whereas G65 just branches the program into a subprogram without doing anything. (c )2 Single-block stop will occur if the block of command M98 has addresses other than O, N, P, H, and L. For G65, however, single-block stop will not occur. C op yr ig ht The level of local variables is fixed for M98, but for G65 does change according to the depth of nesting. (For example, #1s, if present before and after M98, always mean the same, but if present before and after G65, they have different meanings.) 13-72 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 7. 13 Multiplexity of macro call commands The maximum available number of levels of singel and modal macro subprogram call is eight and four, respectively. Arguments in macro call instructions become valid only on the level of the called macro and, therefore, can be included in a program as independent local variables each time a macro call is made. Note 1: When a G65, G66, or G66.1 macro call or an auxiliary command macro call is made, nesting will be regarded as single-level and thus the level of local variables will also increase by 1. er ve d . Note 2: For modal call of type A, the designated user macro subprogram is called each time a move command is executed. If, however, multiple G66s are present, the next user macro subprogram will be called even for the move commands in the macro each time axis movement is done. re s Note 3: User macro subprograms are cancelled in a reverse order to that in which they have been arranged. .A ll User macroprogram operation Main program After z1 execution G66Pp2 x1 w1 x2 M99 x1 w1 x2 M99 34 08 C 39 O R PO R A TI O (p1 call-out) Zz1 N Macro p1 G66Pp1 ri gh ts Example : Macro p1 (p2 call-out) Zz2 G67 ZA A M C op yr ig ht (c )2 01 3 Zz5 (p1 cancel) YA Zz4 x1 ZA After z3 execution G67 Macro p2 Macro p2 A (p1 call-out) Zz3 Macro p2 Macro p1 K IM Se ri al (p2 cancel) K N o. After z2 execution 13-73 w1 x2 M99 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 8. User macro call based on interruption Outline Prior creation of special user macros for interrupt processing allows the user macros to be executed during automatic operation when a user macro interrupt signal is input. After the user macro has been executed, the program can also be returned to the interrupted program block and then started from this block. Detailed description Format for selecting the user macro branching destination M96<_>L_ (or M96P_L_) er ve d . (Branching mode on) When user macroprogram interruption signal is input during this space, the branch into the specified user macroprogram will be applied. re s M97 (Branching mode off) ts .A ll ri gh It depends upon the specifications of the machine whether user macro interrupt signal is available or not. 34 08 C 39 O R PO R A TI O N If a user macro interrupt signal is input during execution of an axis movement block, the user macroprogram will be executed immediately by interrupting the movement without holding (storing) the remaining motion amount. N o. User macro interruption can be processed when the number of levels of macro call multiplexity during the occurrence of an interrupt is seven or lower. The local variables’ level of the user macros used for interruption depends upon the setting of a parameter as follows: K al F95 bit 1 = 0 : Type of interruption (on the same level, as shown in the figure below) ZA A Se ri F95 bit 1 = 1 : Type of subprogram call (on an independent level) ZA K IM Interruption branch Interruption return O2000 O2100 O5100 A YA M M96P5100 G1X_ Interruption 01 3 op yr ig ht (c )2 G65P2100 C G1Y_ Interruption M97 M99 (Level 3) Local variable M99 (Level 4) Local variable 13-74 M99 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-11-3 Variables Of all types of variables available for the NC unit, only local variables, common variables, and part of system variables are retained even after power-off. 1. Multiplexing of variables Under user macro specifications, variables can have their identifiers (identification numbers) either transformed into variables, which is referred to as multiplexing, or replaced with <expression>. For <expression>, only one arithmetic expression (for either multiplication, division, addition, or subtraction) can be used. re s er ve d . Example 1: Multiplexing variables #1=10 #10=20 #20=30 From #1 = 10, #[#[#1]] = #[#10] will result. #5=#[#[#1]] From #10 = 20, #[#10] = #20 will result. Therefore #5 = #20, i.e. #5 = 30 will result. #1=10 #10=20 #20=30 #5=1000 #[#[#1]]=#5 o. N Undefined variables al 2. 34 08 C 39 O R PO R A TI O N Example 2: Replacing variables identifiers with <expression> #10=5 #[#10+1]=1000 #6 = 1000 will result. #[#10–1]=–1000 #4 = –1000 will result. #[#103]=100 #15 = 100 will result. #[#10/2]=100 #2 = –100 will result. .A ll ri gh ts From #1 = 10, #[#[#1]] = #[#10] will result. From #10 = 20, #[#10] = #20 will result. Therefore #20 = #5, i.e. #20 = 1000 will result. K ZA A A Arithmetic expression M A. ZA K IM Se ri Under user macro specifications, variables remaining unused after power-on or local variables that are not argument-specified by G65, G66, or G66.1 can be used as <empty>. Also, variables can be forcibly made into <empty>. Variable #0 is always used as <empty> one, and this variable cannot be defined on the left side of the expression. YA #1=#0................. #1 = <empty> 01 3 #2=#0+1 ............ #2 = 1 )2 #3=1+#0 ............ #3 = 1 (c #4=#010 .......... #4 = 0 ht #5=#0+#0 .......... #5 = 0 C op yr ig Note: Be careful that <empty> is handled the same as 0 during processing of expressions. <empty> + <empty> = 0 <empty> + <constant> = constant <constant> + <empty> = constant B. Applying variables Application of an undefined variable alone causes even the address to be ignored. If #1 = <empty> G0X#1Y1000 G0X[#1+10]Y1000 is equivalent to G0Y1000, and is equivalent to G0X10Y1000. 13-75 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS C. Conditional expression Only for EQ and NE, does <empty> differ from 0 in meaning. If #101 = <empty> If #101 = 0 #101EQ#0 <empty> = <empty> holds. #101EQ#0 0 = <empty> does not hold. #101NE0 <empty> 0 holds. #101NE0 0 0 does not hold. #101GE#0 <empty> <empty> holds. #101GE#0 0 <empty> holds. #101GT0 <empty> > 0 does not hold. #101GT0 0 > 0 does not hold. Left side NE GT LT GE LE er ve d EQ Right side . Hold-conditions and not-hold-conditions list (For conditional expressions including undefined variables) Empty Constant Empty Constant Empty Constant Empty Constant Empty Constant Empty Constant H H H H H H H ts H re s Empty Constant K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh H: Holds (The conditional expression holds.) Blank: The conditional expression does not hold. 13-76 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-11-4 Types of variables 1. Common variables (#100 to #199, and #500 to #999) Common variables refer to the variables to be used in common at any position. The identifiers of common variables which can be used are from #100 to #199, or from #500 to #999. 2. Local variables (#1 to #33) er ve d . Local variables refer to variables that can be defined as <argument> when calling a macro subprogram, or those which can be used locally within the main program or a subprogram. There is no relationship between macros. Thus, these variables can be overlapped on each other, but up to a maximum of eight levels of overlapping. where re s G65Pp1L1 <argument> p1 : Program number gh ts 1 : Number of repeat times ri <Argument> must be: Aa1 Bb1 Cc1 Zz1. 34 08 C 39 O R PO R A TI O A B C D E G H I × ×* #1 R #18 #2 S #19 #3 T #20 #7 U #21 K V #22 W #23 #10 X #24 #11 Y #25 #4 Z #26 ZA al ri #9 #8 #28 L #12 – #29 M #13 – #30 ×* N #14 – #31 × O #15 – #32 ×* P #16 – #33 Q #17 01 3 YA A #27 – M – #6 )2 J (c yr ig Local variable #5 ht × Argument address K × × G66.1 A ×* ZA × G65 G66 K IM F Argument addresses marked as × in the table above cannot be used. Only during the G66.1 mode, however, can argument addresses marked with an asterisk (*) in this table be additionally used. Also, the dash sign (–) indicates that no address is crosskeyed to the local variables number. op C Call commands o. G66.1 Local variable N G65 G66 Argument address Se Call commands N .A ll The following represents the relationship between the address specified by <argument> and the local variables number used in the user macro unit: 13-77 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 1. Local variables for a subprogram can be defined by specifying <argument> when calling a macro. Subprogram (O9900) Main program To subprogram G65P9900A60.S100.F800 M02 #5=#4010 G91G01 X[#19COS[#1]] Y[#19SIN[#1]]F#9 M99 Control of move and others with reference to local variables. er ve d . A (#1)=60.000 Local variable setting by argument F (#9)=800 Local variable data table Within a subprogram, local variables can be freely used. .A ll ri 2. gh ts re s S (#19)=100.000 Subprogram (O1) #30=FUP[#2/#5/2] #5=#2/#30/2 M98H100L#30 X#1 M99 N100G1X#1F#9 Y#5 X–#1 X#5 M99 N Main program 34 08 C 39 O R PO R A TI O To subprogram ZA K IM A Se ri al Example of face milling Local variable set by argument A J Local variable data table A B F J (#1) (#2) (#9) (#5) (#30) Local variables can be changed in the subprogram 100.000 50.000 500 10.000 8.333 3. (c )2 01 3 YA M A ZA B K N o. G65P1A100.B50.J10.F500 C op yr ig ht In the sample program for face-milling that is shown above, although the argument J has initially been programmed as a machining pitch of 10 mm, it has been changed into 8.333 mm to ensure equal-pitched machining. Also, local variable #30 contains the calculated data about the number of times of reciprocal machining. 13-78 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 3. 13 Local variables can be used for each of the eight levels of macro call separately. For the main program (macro level 0), separate local variables are also provided. The local variables of level 0, however, cannot be designated with arguments. O1 (Macro level 1) O10 (Macro level 2) P65P1A1.B2.C3. G65P10A10.B20.C30. G65P100A100.B200. M02 M99 M99 M99 Local variable (1) A(#1) 1.000 B(#2) 2.000 C(#3) 3.000 D(#7) Local variable (2) A(#1) 10.000 B(#2) 20.000 C(#3) 30.000 D(#7) Local variable (3) A(#1) 100.000 B(#2) 200.000 C(#3) Z(#26) Z(#26) Main (Level 0) O100 (Macro level 3) #33 ts gh ri .A ll N Local variable (0) 0.100 0.200 0.300 34 08 C 39 O R PO R A TI O #1 #2 #3 re s er ve d . #1=0.1#2=0.2#3=0.3 #33 #33 Z(#26) #33 N o. How the local variables are currently being used is displayed on the screen. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al For further details, refer to the corresponding section in PART 3 of the Operating Manual. 13-79 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 3. Macro interface input system variables (#1000 to #1035) You can check the status of an interface input signal by reading the value of the appropriate variables number (#1000 to #1035). The read value of the variables number is either 1 (contact closed) or 0 (contact open). You can also check the status of all input signals of the variables from #1000 to #1031 by reading the value of variables number 1032. Variables from #1000 to #1035 can only be read; they cannot be placed on the left side of an arithmetic expression. Points Interface input signal System variable Points Interface input signal #1000 1 Register R72, bit 0 #1016 1 Register R73, bit 0 #1001 1 Register R72, bit 1 #1017 1 Register R73, bit 1 #1002 1 Register R72, bit 2 #1018 1 Register R73, bit 2 #1003 1 Register R72, bit 3 #1019 1 Register R73, bit 3 #1004 1 Register R72, bit 4 #1020 1 Register R73, bit 4 #1005 1 Register R72, bit 5 #1021 1 Register R73, bit 5 #1006 1 Register R72, bit 6 #1022 1 Register R73, bit 6 #1007 1 Register R72, bit 7 #1023 1 #1008 1 Register R72, bit 8 #1024 1 #1009 1 Register R72, bit 9 #1025 #1010 1 Register R72, bit 10 #1026 #1011 1 Register R72, bit 11 #1027 #1012 1 Register R72, bit 12 #1013 1 #1014 1 #1015 gh ts re s er ve d . System variable .A ll ri Register R73, bit 7 Register R73, bit 8 Register R73, bit 9 1 Register R73, bit 10 1 Register R73, bit 11 #1028 1 Register R73, bit 12 Register R72, bit 13 #1029 1 Register R73, bit 13 Register R72, bit 14 #1030 1 Register R73, bit 14 1 Register R72, bit 15 #1031 1 Register R73, bit 15 System variable Points Interface input signal #1032 32 Register R72 and R73 #1033 32 #1034 32 Register R76 and R77 #1035 32 Register R78 and R79 K ZA Se ri al N o. 34 08 C 39 O R PO R A TI O N 1 ZA K IM A Register R74 and R75 The following interface input signals are used exclusively in the NC system operation (cannot be used for other purposes). YA M A Note: 01 3 Interface input signal Description Touch sensor mounted in the spindle Register R72, bit 4 X- and Y-axis machine lock ON Register R72, bit 5 M-, S-, T-code lock ON Register R72, bit 6 Z-axis machine lock ON C op yr ig ht (c )2 Register R72, bit 0 13-80 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 4. Macro interface output system variables (#1100 to #1135) Points Interface output signal System variable Points Interface output signal #1100 1 Register R172, bit 0 #1116 1 Register R173, bit 0 #1101 1 Register R172, bit 1 #1117 1 Register R173, bit 1 #1102 1 Register R172, bit 2 #1118 1 Register R173, bit 2 #1103 1 Register R172, bit 3 #1119 1 Register R173, bit 3 #1104 1 Register R172, bit 4 #1120 1 Register R173, bit 4 #1105 1 Register R172, bit 5 #1121 1 Register R173, bit 5 #1106 1 Register R172, bit 6 #1122 1 Register R173, bit 6 #1107 1 Register R172, bit 7 #1123 1 gh #1108 1 Register R172, bit 8 #1124 1 #1109 1 Register R172, bit 9 #1125 #1110 1 Register R172, bit 10 #1126 #1111 1 Register R172, bit 11 #1127 #1112 1 Register R172, bit 12 #1113 1 #1114 1 #1115 ts re s er ve d . System variable .A ll You can send an interface output signal by assigning a value to the appropriate variables number (#1100 to #1135). All output signals can take either 0 or 1. You can also send all output signals of the variables from #1100 to #1131 at the same time by assigning a value to variables number 1132. In addition to the data writing for offsetting the #1100 to #1135 output signals, the reading of the output signal status can be done. ri Register R173, bit 7 1 Register R173, bit 10 1 Register R173, bit 11 #1128 1 Register R173, bit 12 Register R172, bit 13 #1129 1 Register R173, bit 13 Register R172, bit 14 #1130 1 Register R173, bit 14 1 Register R172, bit 15 #1131 1 Register R173, bit 15 System variable Points Interface output signal #1132 32 Register R172 and R173 #1133 32 #1134 32 Register R176 and R177 #1135 32 Register R178 and R179 K ZA ri al N o. 34 08 C 39 O R PO R A TI O N Register R173, bit 9 Se Register R173, bit 8 1 ZA K IM A Register R174 and R175 01 3 YA M A Note 1: Data of the system variables from #1100 to #1135 is saved according to the logical level (1 or 0) of the signal that has been lastly sent. The saved data is cleared by power-on/off automatically. Note 2: The following applies if a data other than 1 or 0 is assigned to the variables from #1100 to #1131: (c )2 <empty> is regarded as equal to 0. Data less than 0.00000001, however, is regarded as undefined. C op yr ig ht Data other than 0 and <empty> is regarded as equal to 1. 13-81 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS #1132 (R172, R173) #1000 #1100 #1001 #1101 #1002 #1102 #1028 #1128 #1029 #1129 Macro- #1030 instruction #1130 #1131 gh ts #1031 (R174, R175) 32 bit #1133 (R76, R77) #1034 (R176, R177) #1134 (R78, R79) #1035 (R178, R179) #1135 34 08 C 39 O R PO R A TI O N .A ll ri (R74, R75) #1033 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 32 bit #1103 . Read and write Read only #1003 Output signal er ve d (R72, R73) #1032 re s Input signal 13-82 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 5. Tool offset Use the relevant variables to read and write tool offset data items. Usable are variables numbered from #100001, #10001, and #2001. 200, 999, and 4000 sets of offset data items can be used, respectively, for variables numbered from #2001, #10001, and #100001. The last three digits of variables numbered from #2001 or #10001 denote tool offset data numbers. As for variables numbered from #100001, the last four digits correspond to tool offset data numbers. The number of tool offset data sets available depends upon the specifications of the machine. (“n” in the following tables = Number of tool offset data sets available) . Type A Item #2001 - #2000+n Tool offset amounts Type B Range of variable Nos. .A ll ri B. gh ts #10001 - #10000+n re s Range of variable Nos. #100001 - #100000+n er ve d A. Item #10001 - #10000+n #2001 - #2000+n #110001 - #110000+n #11001 - #11000+n #2201 - #2200+n Length Geometric offset #160001 - #160000+n *(#120001 - #120000+n) #16001 - #16000+n *(#12001 - #12000+n) #2401 - #2400+n Diameter Geometric offset #170001 - #170000+n *(#130001 - #130000+n) #17001 - #17000+n *(#13001 - #13000+n) #2601 - #2600+n Diameter Wear compensation N #100001 - #100000+n o. 34 08 C 39 O R PO R A TI O Length Wear compensation Set bit 0 of parameter F96 to “1” to use the variables in parentheses with a leading asterisk. F96 bit 0 = 0: #160001 - #160000+n, and #170001 - #170000+n #16001 - #16000+n, and #17001 - #17000+n = 1: #120001 - #120000+n, and #130001 - #130000+n #12001 - #12000+n, and #13001 - #13000+n K ZA A A Type C M C. ZA K IM Se ri al N Note : #10001 - #10000+n #2001 - #2000+n Geometric offset Z #110001 - #110000+n 01 3 #11001 - #11000+n #2201 - #2200+n Wear compensation Z #160001 - #160000+n #16001 - #16000+n #2401 - #2400+n Geometric offset, Nose R #170001 - #170000+n #17001 - #17000+n #2601 - #2600+n Wear compensation, Nose R #120001 - #120000+n #12001 - #12000+n Geometric offset X #130001 - #130000+n #13001 - #13000+n Wear compensation X #140001 - #140000+n #14001 - #14000+n Geometric offset Y #150001 - #150000+n #15001 - #15000+n Wear compensation Y #180001 - #180000+n #18001 - #18000+n Offsetting direction ig ht (c #100001 - #100000+n yr op C Item )2 YA Range of variable Nos. Note : Set bit 0 of parameter F96 to “0” to use the TOOL OFFSET type C data. The maximum number of tool offset data sets available (n) depends upon the ranges of variable numbers as follows. Range of variable Nos. Maximum of “n” #100001 - #184000 4000 #10001 - #18999 999 #2001 - #2800 200 13-83 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS As with other variables, tool offset data is to contain the decimal point. The decimal point must therefore be included if you want to set data that has decimal digits. Program example Common variables After execution #101=1000 #10001=#101 #102=#10001 Tool offset data #101=1000.0 H1=1000.000 #102=1000.0 er ve d re s ts gh G00 #5063 H1 G31 34 08 C 39 O R PO R A TI O N #1 ri Return to zero point Tool change (for T01) Starting point memory Rapid traverse to safe position Measurement with skip feed Measuring distance calculation and tool offset data setting .A ll G28Z0T01 M06 #1=#5003 G00Z–500. G31Z–100.F100 #10001=#5063–#1 . Example : Tool offset data measuring The example shown above does not allow for any skip sensor signal delay. Also, #5003 denotes the position of the starting point of the Z-axis, and #5063 denotes the skip coordinate of the Z-axis, that is, the position at which a skip signal was input during execution of G31. K ZA A Workpiece coordinate system offset K IM 6. Se ri al N o. Note : Sensor ZA Using variables numbers from 5201 to 5336, you can read workpiece coordinate system offset data or assign data. The number of controllable axes depends on the machine specifications. 2nd axis 3rd axis 16th axis #5201 #5202 #5203 #5216 G54 #5221 #5222 #5223 #5236 (c G55 #5241 #5242 #5243 #5256 #5261 #5262 #5263 #5276 G57 #5281 #5282 #5283 #5296 G58 #5301 #5302 #5303 #5316 G59 #5321 #5322 #5323 #5336 op yr ig G56 C YA ht )2 SHIFT 1st axis 01 3 Axis No. Data name M A Note : 13-84 Remarks An external data input/output optional spec. is required. A workpiece coordinate system offset feature is required. Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS (Example 1) N1 N2 N3 N1 M –90. G28X0Y0Z0 #5221=–20.#5222=–20. G90G00G54X0Y0 N3 W1 –10. –20. N11 W1 Workpiece coordinate system of G54 specified by N10 N10 #5221=–90.#5222=–10. N11 G00G54X0Y0 Workpiece coordinate system of G54 specified by N2 re s er ve d . M02 (Example 2) ri C G55 W2 (G55) M G54 W1 (G54) 34 08 C 39 O R PO R A TI O N N100 #5221=#5221+#5201 #5222=#5222+#5202 #5241=#5241+#5201 #5242=#5242+#5202 #5201=0 #5202=0 .A ll Coord. sys. before change gh Coordinate shift ts Fundamental machine coordinate system Fundamental machine coordinate system M C G55 G54 o o W2 (G55) W1 (G54) r d i MEP166 n a The example 2 shown above applies only when coordinate shift data is to be added to the offset t data of a workpiece coordinate system (G54 or G55) without changing the position of the e workpiece coordinate system. K ZA A YA M A ZA K IM Se ri al N o. Coord. sys. after change (c )2 01 3 [Additional workpiece coordinate system offset] s Variables numbered 70001 to 75996 can ybe used to read or assign additional workpiece coordinate system offsetting dimensions. Thes variable number for the k-th axis origin of the “Pn” coordinate system can be calculated as follows: t 70000 + (n – 1) × 20 + k ig ht e m depends on the machine specifications. The total number of controllable axes C op yr Note : Axis No. Data name 1st axis 2nd axis G54.1P1 #70001 #70002 G54.1P2 #70021 #70022 G54.1P299 #75961 #75962 G54.1P300 #75981 #75982 a 4th f axis #70003 t #70004 #70023 e #70024 r #70016 #75963 #75976 3rd axis #75964 c #75983 #75984 h a n g e 13-85 16th axis #70036 #75996 Remarks Only available with the optional function for additional coordinate system offset. Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Alternatively, variables numbered 7001 to 7956 can be used to read or assign additional workpiece coordinate system offsetting dimensions. The variable number for the k-th axis origin of the “Pn” coordinate system can be calculated as follows: 7000 + (n – 1) × 20 + k The total number of controllable axes depends on the machine specifications. 2nd axis 3rd axis 4th axis 16th axis G54.1P1 #7001 #7002 #7003 #7004 #7016 G54.1P2 #7021 #7022 #7023 #7024 #7036 G54.1P3 #7041 #7042 #7043 #7044 #7056 G54.1P48 #7941 #7942 #7943 #7944 #7956 Remarks Only available with the optional function for additional coordinate system offset. re s 1st axis NC alarm (#3000) ts 7. Data name . Axis No. er ve d Note : ri gh The NC unit can be forced into an alarm status using variables number 3000. N Alarm message 34 08 C 39 O R PO R A TI O Alarm No. .A ll #3000 = 70 (CALL#PROGRAMMER#TEL#530) The setting range for the alarm No. is from 1 to 6999. The maximum available length of the alarm message is 31 characters. The type of alarm message displayed on the screen depends on the designated alarm number, as indicated in the following table. al N o. Note: ZA [Designated alarm No.] + 979 [Designated alarm No.] + 3000 K IM A 1 to 20 21 to 6999 Se Displayed alarm message K Displayed alarm No. ri Designated alarm No. Message preset for the displayed alarm No. *1 Designated alarm message as it is *2 *1 Refers to alarm Nos. 980 to 999 whose messages are preset as indicated in Alarm List. A ZA *2 Display of a message as it is set in the macro statement. 01 3 YA M Program ex. 1 (Command for display of “980 MACRO USER ALARM 1” on condition of #1=0) Operation stop by NC alarm 980 MACRO USER ALARM 1 C op yr ig ht (c )2 IF[#1NE0]GOTO100 #3000=1 N100 Program ex. 2 (Command for display of “3021#ORIGINAL#ALARM#1” on condition of #2=0) IF[#2NE0]GOTO200 #3000=21(#ORIGINAL#ALARM#1) N200 Operation stop by NC alarm 13-86 3021#ORIGINAL#ALARM#1 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 8. Integrated time Using variables #3001 and #3002, you can read the integrated time existing during automatic operation or assign data. Type Variable No. Integrated time 1 3001 Integrated time 2 3002 Unit Data at power-on Same as at power-off ms Initialization Counting Data is assigned in variables. Always during power-on During auto-starting The integrated time is cleared to 0 after having reached about 3.6 × 10 11 ms. #3001=0 WHILE[#3001LE#20]DO1 re s G65P9010T (Allowable time [ms]) er ve d To subprogram . O9010 T#20______ 34 08 C 39 O R PO R A TI O Into local variable #20 Execution of blocks from DO1 to END1 is repeated until the allowable time has elapsed, and then the control jumps to the end block of M99. N Local variable .A ll ri gh ts END1 M99 AUTO CUT. 3042 TOTAL CUT. 3043 TOTAL TIME 3044 K IM Counting Power being turned on Automatic operation (from start to end) Same as at power-off ZA ms K 3041 Initialization ZA 3040 AUTO OPE. Data at power-on A POWER ON Unit ri Variable No. Se Item al N o. Using variables #3040 to #3044, moreover, it is possible to read various types of cumulative time data displayed in the ACCUMULATED TIME window. TOTAL TIME denotes the cumulative time for which the power has been turned on. — Automatic operation (with the start button lamp lighting) M A Execution of G1, G2 or G3 commands YA Power being turned on C op yr ig ht (c )2 01 3 Note 1: Variable #3001 can be used to replace POWER ON item in the ACCUMULATED TIME window with the desired value, on condition that bit 7 of parameter F151 is set to 0. According to the parameter setting, variable #3001 is processed as shown below in relation to POWER ON item. F151 bit 7 Effect of writing data into #3001 on POWER ON item Value of #3001 at power-on 0 Replacement by the written value Same as at power-off 1 No effect Reset to zero (0) Note 2: Variable #3002 can be used to replace the AUTO CUT. item in the ACCUMULATED TIME window with the desired value. Note 3: #3040, #3041, #3042, #3043 and #3044 are read-only variables. See the section on the DIAGNOSIS (USER) - ALARM display in PART 3 of the Operating Manual for more information on the respective data items. 13-87 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 9. Validation/invalidation of single-block stop or auxiliary-function finish signal wait (#3003) Assigning one of the values listed in the table below to variables number 3003 allows singleblock stop to be made invalid at subsequent blocks or the program to be advanced to the next block without ever having to wait for the arrival of an auxiliary-function code (M, S, T, or B) execution finish signal (FIN). Single block stop Auxiliary-function completion signal 0 Effective Wait 1 Ineffective Wait 2 Effective No wait 3 Ineffective No wait Note: er ve d . #3003 Variable #3003 is cleared to 0 by resetting. re s 10. Validation/invalidation of feed hold, feed rate override, or G09 (#3004) Contents (Value) Bit 0 Bit 1 Bit 2 Feed rate override Effective Effective 1 Ineffective Effective 2 Effective 3 Ineffective 4 Effective 5 Ineffective 6 Effective 7 Ineffective 34 08 C 39 O R PO R A TI O G09 check Effective Effective Effective Ineffective Effective Effective Ineffective Effective Ineffective Ineffective Ineffective Ineffective Ineffective K N o. Ineffective al ri N Feed hold 0 .A ll #3004 ri gh ts Feed hold, feed rate override, or G09 can be made valid or invalid for subsequent blocks by assigning one of the values listed in the table below to variables number 3004. ZA A Se Note 1: Variable #3004 is cleared to 0 by resetting. C op yr ig ht (c )2 01 3 YA M A ZA K IM Note 2: Each of the listed bits makes the function valid if 0, or invalid if 1. 13-88 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 11. Program stop, Message box A. Program stop (#3006) Use of variables number 3006 allows the program to be stopped after execution of the immediately preceding block. Format: #3006 = 1 (CHECK OPERAT) . Character string to be displayed gh ts re s er ve d Additional setting of a character string (in 31 characters at maximum) in parentheses allows the required stop message to be displayed on the screen. It depends upon the setting of bit 3 of parameter F37 when the stop message is cleared from the screen. F37 bit 3 = 0: The message does not disappear till completion of automatic operation. ri F37 bit 3 = 1: The message disappears when the execution of the next block is started. N .A ll Note 1: Always set “1” on the right-hand side of equation; otherwise (e.g. #3006 = 2) the operation will not be stopped, nor the message displayed. 34 08 C 39 O R PO R A TI O Note 2: A block of #3006 does not cause the operation to be stopped, nor the message to be displayed when the program is executed on the TOOL PATH CHECK display. As for running on the VIRTUAL MACHINING display, operation is stopped at a block of #3006, but the message does not appear. K ZA ri Message box (#3009/#3010) Se B. al N o. Note 3: Only use one-byte characters to specify the message in parentheses; otherwise the message may not be displayed exactly as specified. ZA K IM A Use of variables number 3009 or 3010 allows a message box to be opened. The message box displays the specified interrogative message for prompting the user to answer in order that the automatic operation may be continued under the desired conditions. M A #3009 = 501 (ALL DONE? [Y/N]) 01 3 YA Character string to be displayed Common variables number #3010 = 501 (ALL DONE? [Y/N]) ig ht (c )2 Character string to be displayed Common variables number C op yr Variable #3009 has the following three functions: 1. Displaying the desired character string in the message box, 2. Assigning the desired value to an arbitrary common variable, and 3. Causing a block stop. Variable #3010 has the following two functions: 1. Displaying the desired character string in the message box, and 2. Assigning the desired value to an arbitrary common variable. Set bit 7 of parameter F331 to “1” in order to use the variables #3009 and #3010; otherwise use of them will only lead to the alarm 846 DESIGNATED NUMBER NOT FOUND. Set the desired character string (in 31 characters at maximum) in parentheses. 13-89 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Characters usable in setting the message are those provided on the screen keyboard (except the symbols “(”, “)” and “%”). Use of an unusable character or more than 31 characters will be rejected with the alarm 807 ILLEGAL FORMAT. Specify a common variable (to be written) within a range between #100 to #199 or #500 to #999; otherwise the alarm 807 ILLEGAL FORMAT will be raised. <Message box> er ve d . [1] Character string, as entered (in a block of #3009 or #3010) in the parentheses added to the number of the variable to be written. Message N [1] Description ri Item .A ll No. gh ts re s [3] [2] Data entry field Remark : 34 08 C 39 O R PO R A TI O [2] Used to enter the desired character string of the data to be written into the specified common variable. Up to 4 characters can be entered. Usable characters are enumerated in the table below. o. Used to definitively write the specified character string into the common variable concerned through conversion in ASCII codes (in decimal notation). N Example : ZA al ri K 1. Give a command of “#3009 = 501” and enter “Y” in the data entry field in order to set the variable #501 to 89. [OK] button [3] A K IM Se 2. Give a command of “#3009 = 501” and enter “AB12” in the data entry field in order to set the variable #501 to 65664950. <List of the characters usable for setting the message> Numerical value Character Numerical value Character Numerical value (Space) M A 65 O 79 YA B 66 P 80 45 C 67 Q 81 46 D 68 R 82 0 )2 48 E 69 S 83 1 49 F 70 T 84 2 50 G 71 U 85 3 51 H 72 V 86 4 52 I 73 W 87 5 53 J 74 X 88 6 54 K 75 Y 89 7 55 L 76 Z 90 8 56 M 77 _ 95 9 57 N 78 ht 01 3 43 - (c 32 + ig yr op A Character . C ZA Character = Usable character, Numerical value = Value to be written into the common variable 13-90 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 Example of use of variable #3009 Shown below is an example of programming to display “ALL DONE? [Y/N]” in the message box for prompting the user to answer with Yes or No in the pause of block stop. Then, in the flow of the example program, the operation will be continued by branching to sequence numbers 10 and 20, respectively, when “Y” and “N” are entered in the pause and the start button is pressed. The message box remains opened to prompt the user again and again if he should give an answer other than required (neither with Y, nore with N). ri gh ts re s N100 N1 #501=0 ................................................... Initialization of the common variable concerned #3009=501(ALL DONE? [Y/N]) ........... Display of a message box (in a pause of block stop) er ve d . M648 ............................................................... Temporary cancelation of Safety Shield (Note 1) IF[#50600 EQ 1] GOTO100 .................. (Note 2) GOTO30 34 08 C 39 O R PO R A TI O N .A ll IF[#501 EQ 89] GOTO10 ....................... Branching command for an answer with “Y” IF[#501 EQ 78] GOTO20 ....................... Branching command for an answer with “N” GOTO1 K ZA A K IM Se ri al N o. N10 GOTO30 N20 GOTO30 N30 M649 ............................................................... Restoration of Safety Shield ZA Example of use of variable #3010 YA M A Shown below is an example of programming to display “ALL DONE? [Y/N]” in the message box for prompting the user to answer with “Y” or “N.” 01 3 The message box remains opened on the screen to wait for an answer while the command in a block between the WHILE and END sentences is executed repeatedly. (c )2 Then, in the flow of the example program, the operation will be continued by branching to sequence numbers 10 and 20, respectively, as soon as “Y” and “N” are entered. yr ig ht The message box remains opened to prompt the user again and again if he should give an answer other than required (neither with Y, nore with N). C op M648 ............................................................... Temporary cancelation of Safety Shield (Note 1) IF[#50600 EQ 1] GOTO100 .................. (Note 2) GOTO30 N100 N1 #501=0 ................................................... Initialization of the common variable concerned #3010=501(ALL DONE? [Y/N]) ........... Display of a message box WHILE[#501 EQ 0] DO1 ......................... Waiting for the common variable to change (Note 5) G94G4X0.5 ................................................... Dwell for 0.5 seconds (Note 3) END1 13-91 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS IF[#501 EQ 89] GOTO10 ....................... Branching command for an answer with “Y” IF[#501 EQ 78] GOTO20 ....................... Branching command for an answer with “N” GOTO1 re s er ve d . N10 GOTO30 N20 GOTO30 N30 M649 ............................................................... Restoration of Safety Shield ri gh ts Note 1: Do not fail to temporarily cancel the Safety Shield function until the common variable concerned is written correctly; otherwise the automatic operation could be stopped without the alarm 1125 SAFETY SHIELD CALCULATING being cleared automatically. N .A ll Do not, moreover, give any cutting commands in a section with the Safety Shield being canceled; otherwise the interference check cannot occur any more correctly after restoration of the Safety Shield. N o. 34 08 C 39 O R PO R A TI O Note 2: In a virtual operation on the TOOL PATH CHECK and VIRTUAL MACHINING displays, the prompting message box cannot be opened at all and, therefore, the suspension of operation or looping cannot be canceled in any way. To solve the problem, insert branching commands, using the variable #50600, to jump to, and jump over, respectively, the section of #3009 or #3010 in the case of real and virtual operations. K ZA A K IM Se ri al Note 3: As for programming with #3010, every repetitive execution of the command for waiting for the common variable to change must be preceded by a dwell for 0.5 seconds; otherwise the sensitivity to screen operation may be decreased because of an increase in the load of program analysis. YA M A ZA Note 4: In the case of large-sized programs, the sensitivity to screen operation may be extremely decreased because of an increase in the load of program analysis when an “IF GOTO ” statement is used as a command for waiting for the common variable to change. (c )2 01 3 Note 5: As for a command for waiting for the common variable to change, do not give a sequence number and the GOTO statement for that N-number in one and the same block; otherwise the sensitivity to screen operation may be extremely decreased because of an increase in the load of program analysis. C op yr ig ht Program example causing a decrease in the sensitivity to screen operation N1 #501=0 #3010=501(ALL DONE? [Y/N]) N5 IF[#501 EQ 0] GOTO5 ..... Increase in the load of program analysis Note 6: If the variable #3009 is used in a block to which the single-block operation is not applicable, then no block stop occurs, as is the case with #3010. Note 7: Do not specify in the block of #3009 or #3010, as the common variable to be written, any one of those variables which are specified by the parameter F109 and F110 as commonly usable for both turrets; otherwise an unexpected branching may occur. 13-92 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 12. Mirror image (#3007) The mirror image status of each axis at one particular time can be checked by reading variables number 3007. Variable #3007 has its each bit crosskeyed to an axis, and these bits indicate that: If 0, the mirror image is invalid. If 1, the mirror image is valid. Bit 15 14 13 12 11 10 9 8 7 6 Axis no. 5 4 3 2 1 0 6 5 4 3 2 1 13. G-command modal status re s er ve d . The G-command modal status in a pre-read block can be checked using variables numbers from 4001 to 4027. For variables numbers from #4201 to #4227, the modal status of the block being executed can be checked in a similar manner to that described above. #4001 #4201 Interpolation mode G0-G3 : 0-3, G2.1 : 2.1, G3.1 : 3.1 #4002 #4202 Plane selection G17 : 17, G18 : 18, G19 : 19 #4003 #4203 Absolute/Incremental programming #4004 #4204 Pre-move stroke check G22 : 22, G23 : 23 #4005 #4205 Feed specification G94 : 94, G95 : 95 #4006 #4206 Inch/metric selection G20/21 : 20/21 #4007 #4207 Tool radius compensation G40 : 40, G41 : 41, G42 : 42 Tool length offset G43/44 : 43/44, G43.4 : 43.4, G43.5 : 43.5, G43.8/43.9 : 43.8/43.9, G49 : 49 .A ll ri gh Block executed #4009 #4209 Fixed cycle #4010 #4210 Returning level #4011 #4211 Scaling OFF/ON #4012 #4212 Workpiece coordinate system G54-G59 : 54-59, G54.1 : 54.1 #4013 #4213 Mode of machining (feed) G61-64 : 61-64, G61.1 : 61.1, G61.4 : 61.4 #4014 #4214 Macro modal call G66 : 66, G66.1 : 66.1, G67 : 67 #4015 #4215 Shaping function G40.1 : 40.1, G41.1 : 41.1, G42.1 : 42.1 #4016 #4216 Programmed coordinate conversion ON/OFF #4017 #4217 #4018 #4218 #4019 G50/51 : 50/51 N K A ZA G98 : 98, G99 : 99 M A ZA K IM Se ri al G80 : 80, G273/274 : 273/274, G276 : 276, G81-G89 : 81-89 G68/69 : 68/69 YA (c )2 #4219 #4220 #4221 #4022 #4222 #4023 #4223 #4024 #4224 #4025 #4225 #4026 #4226 #4027 #4227 ht #4021 ig o. #4208 01 3 34 08 C 39 O R PO R A TI O N G90/91 : 90/91 #4008 yr op Function Block pre-read #4020 C ts Variable Nos. Mirror image by G-codes (5-surf. machining) G17.1-17.9 : 17.1-17.9, G45.1 : 45.1 G49.1 : 49.1, G50.1 : 50.1, G51.1 : 51.1 Cross machining control G110 : 110, G110.1 : 110.1, G111 : 111 Polygonal machining and Hobbing G50.2 : 50.2, G51.2 : 51.2, G113 : 113, G114.3 : 114.3 Dynamic offsetting II 13-93 G54.2 : 54.2 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 14. Other modal information Modal information about factors other than the G-command modal status in the previous block can be checked using variables numbers from 4101 to 4132. For variables numbers from #4301 to #4330, the modal information of the block being executed can be checked in a similar manner to that described above. Moreover, use #4501 to #4530 in an interruption macroprogram to read various modal information items at the moment of macro interruption. Variable Nos. Variable Nos. Modal information Macro Previous Block block executed interrupt. #4315 #4515 #4116 #4316 #4516 #4503 #4117 #4317 #4517 #4504 #4118 #4318 #4518 #4106 #4305 #4505 #4119 #4319 #4519 Spindle functionS #4306 #4506 #4120 #4320 #4520 Tool functionT #4107 #4307 #4507 #4108 #4308 #4508 #4130 #4330 #4530 #4109 #4309 #4509 #4110 #4310 #4510 #4111 #4311 #4511 #4112 #4312 #4512 #4113 #4313 #4513 Radius comp. No.D Rate of feedF Length offset No.H #4131 Miscel. functionM #4132 #4314 #4514 Addt. workp. coord. system G54-G59: 0, G54.1P1-P300: 1-300 Sequence No.N Surface type Upper: 0, 0°/180°: 1, 90°/270°: 2 Machining surface Upper: 5, 0°: 6, 90°: 7, 180°: 8, 270°: 9 N o. #4114 er ve d #4105 re s #4304 ts #4303 #4104 gh #4103 Program No.O . #4115 No. 2 miscell. function ri #4502 .A ll #4501 #4302 N #4301 #4102 34 08 C 39 O R PO R A TI O #4101 Modal information Macro Previous Block block executed interrupt. K ZA ri al Note 1: Use the variable #4315 from the second block of the program. If it is used in the first block, the reading of the program number is not successful. A ZA K IM Se Note 2: The variables #4115 and #4315 are only effective for programs whose ID-number or name consists of numerals only. During execution of a program whose name contains even one single character other than numerals, the reading in question remains zero (0). YA M A Note 3: Do not use #4501 to #4530 elsewhere than in an interruption macroprogram; otherwise an alarm will be caused (846 DESIGNATED NUMBER NOT FOUND). C op yr ig ht (c )2 01 3 Example : Given below is an example to show the difference between variables #4113 and #4313 (for checking modal information about M-codes) in the information that is obtained in the parallel flow of actual execution and internal pre-reading (analysis) for automatic operation. Previous block (#4113) Block being executed (#4313) : : N001 M3 N002 N003 : N006 M200 N007 #100=#4313 N008 N001 M3 N002 N003 : N006 M200 N007 #100=#4113 N008 In execution In analysis Reading the information about M-codes (M200) at the block previous to the currently analyzed one. 13-94 In execution In analysis Reading the information about M-codes (M3) at the block being executed. Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 15. Position information Using variables numbers from #5001 to #5116, you can check the ending-point coordinates of the previous block, machine coordinates, workpiece coordinates, skip coordinates, tool position offset coordinates, and servo deviations. Position information End point coordinates of previous block Machine coordinate Workpiece coordinate Skip coordinate Tool position offset coordinates Servo deviation amount 1 #5001 #5021 #5041 #5061 #5081 #5101 2 #5002 #5022 #5042 #5062 #5082 #5102 3 #5003 #5023 #5043 #5063 #5083 #5103 16 #5016 #5036 #5056 #5076 #5096 Remarks (Reading during move) Possible Impossible Impossible Possible Impossible er ve d . Axis No. #5116 ts re s Possible The number of controllable axes depends on the machine specifications. ri gh Note: The ending-point coordinates and skip coordinates read will be those related to the workpiece coordinate system. 2. Ending-point coordinates, skip coordinates, and servo deviations can be checked even during movement. Machine coordinates, workpiece coordinates, and tool position offset coordinates must be checked only after movement has stopped. 34 08 C 39 O R PO R A TI O N .A ll 1. M o. Fundamental machine coordinate system ZA K W G00 K IM A Se ri al N Workpiece coordinate system End point coordinates Read command (c )2 01 3 YA M A ZA G01 Workpiece coordinate system Workpiece coordinates Machine coordinate system C op yr ig ht W Machine coordinates M MEP167 13-95 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 3. Skip coordinates denote the position at which a skip signal has turned on at the block of G31. If the skip signal has not turned on, skip coordinates will denote the corresponding ending-point position. er ve d . Read command re s Skip coordinate value MEP168 ri gh ts Gauge, etc. The ending-point position denotes the tool tip position which does not allow for any tool offsets, whereas machine coordinates, workpiece coordinates, and skip coordinates denote the tool reference-point position which allows for tool offsets. 34 08 C 39 O R PO R A TI O N .A ll 4. N W K ZA K IM Skip signal input coordinates A Se ri al F (Speed) o. Skip signal Workpiece coordinate system Workpiece coordinates M Machine coordinate system ZA Machine coordinates YA M A Mark : Read after confirmation of stop. Mark : Can be read during move. MEP169 See Chapter 15 for further details. C op yr ig ht (c )2 01 3 The input coordinates of a skip signal denote the position within the workpiece coordinate system. The coordinates stored in variables from #5061 to #5066 are those existing when skip signals were input during movement of the machine. These coordinates can therefore be read at any time after that. 13-96 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 Example 1: Workpiece position measurement: The following shows an example of measuring the distance from a reference measurement point to the workpiece end: #101 #102 #103 Skip signal input X . .A ll X-axis measuring amount Y-axis measuring amount Measuring line linear amount X-axis measuring start point Y-axis measuring start point X-axis skip input point Y-axis skip input point ZA N1 N2 N3 N4 N5 N6 N7 N8 N9, N10 N11 ZA K IM A Se ri al #101 #102 #103 #5001 #5002 #5061 #5062 #102 N Y #103 N5 #101 34 08 C 39 O R PO R A TI O N8 N4 K N3 o. Z N Start point 87.245 87.245 123.383 #180=#4003 #30=#5001#31=#5002 G91G01Z#26F#9 G31X#24Y#25F#9 G90G00X#30Y#31 #101=#30–#5061#102=#31–#5062 #103=SQR[#101 #101+#102 #102] G91G01Z–#26 IF[#180EQ91]GOTO11 G90 M99 er ve d (Common variable) N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 re s To subprogram O9031 ts G65P9031X100.Y100.Z-10.F200 (#9) 200 (#24) 100.000 (#25) 100.000 (#26) –10.000 gh F X Y Z ri Argument (Local variable) Modal data storage of G90/G91 X, Y starting point data storage Z-axis entry X, Y measuring (Stop at skip input) Return to X, Y starting point X, Y measuring incremental data calculation Measuring line linear amount calculation Z-axis escape Modal return of G90/G91 Return from subprogram –X –150 –75 –25 Y X (c G91G28X0Y0 G90G00X0Y0 X0Y–100. G31X–150.Y–50.F80 #111=#5061 #112=#5062 G00Y0 G31X0 #121=#5061 #122=#5062 M02 –50 C op yr ig ht N1 N2 N3 N4 N5 N6 N7 N8 N9 )2 01 3 YA M A Example 2: Skip signal input coordinates reading: –75 –100 –Y Skip signal #111 = –75. + #112 = –75. + #121 = –25. + #122 = –75. + where denotes an error due to response delay. 13-97 MEP171 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS See Chapter 15 for further details. Variable #122 denotes the skip signal input coordinate of N4 since N7 does not have a Ycommand code. 16. Measurement parameters Variable numbers provided for reading measurement parameters are as follows: Variables Description Parameter Specification of tolerance (Lower limit) for measurement K17 #3072 Specification of tolerance (Upper limit) for measurement K18 #3086 Rate of skip feed for measurement K13 #3087 Rate of approach feed for measurement K14 #3088 Rate of skip feed for measurement (for the C-axis) K15 #3089 Rate of approach feed for measurement (for the C-axis) #5501 Stylus eccentricity of touch sensor (X-component) #5502 Stylus eccentricity of touch sensor (Y-component) #5503 Radius of stylus ball of touch sensor (X-component) re s ts gh ri .A ll N #58167 L3 L4 R8164, 8165 Rate of skip feed for measurement K13 R8166, 8167 #58169 Rate of approach feed for measurement K14 R8168, 8169 #58171 Measurement stroke for workpiece measurement K19 R8170, 8171 #58172 Safety contour clearance – Outside diameter (Radius value) TC37 R8172 #58173 Safety contour clearance – Inside diameter (Radius value) TC38 R8173 #58174 Safety contour clearance – Front face TC39 R8174 #58175 Safety contour clearance – Back face TC40 R8175 #58203 Offset amount from the B-axis to the spindle nose BA62 #58205 Measurement stroke for tool nose measurement K20 #58207 Rate of approach feed for laser measurement of tool length K30 #58209 Rate of approach feed for laser measurement of tool diameter K31 #58211 Rate of feed for preliminary laser measurement of tool length K32 #58213 Rate of feed for preliminary laser measurement of tool diameter K33 #58215 Spindle speed for preliminary laser measurement of tool length #58217 Spindle speed for preliminary laser measurement of tool diameter K35 #58221 Width of the tool-nose measurement sensor along the X-axis L22 #58223 Width of the tool-nose measurement sensor along the Z-axis L23 Reference position of the tool-nose measurement sensor in X L24 K ZA A )2 YA M A ZA K IM Se ri al 34 08 C 39 O R PO R A TI O K23 #58227 Reference position of the tool-nose measurement sensor in Z ht K34 Reference position of the tool-nose measurement sensor in Y L26 ig (c #58225 #58231 Position of the laser measurement sensor in X L100 #58233 Position of the laser measurement sensor in Y L101 #58235 Position of the laser measurement sensor in Z L102 #58237 Position of the approach point in X for laser measurement of tool diameter L103 #58239 Position of the approach point in Y for laser measurement of tool diameter L104 #58241 Position of the approach point in Z for laser measurement of tool diameter L105 #58259 Z-axis escape distance from the approach point after TOOL EYE measurement L28 #58261 Maximum allowable tool length for laser measurement of tool length L98 #58271 X-axis escape distance from the approach point for TOOL EYE measurement L78 op yr #58229 C L2 o. Retry frequency for workpiece measurement L1 N Radius of stylus ball of touch sensor (Y-component) K16 01 3 #5504 #58165 er ve d . #3071 Register R 13-98 L25 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 17. TNo. (#51999) and Number of index (#3020) of the spindle tool Variables numbered 51999 and 3020 can be used to read the tool number, and the number of tool data index, of the tool mounted in the spindle. The number of index can be used, instead of TNo., in reading the tool data of a particular tool with the aid of macro variables. System variable Description #51999 Tool number of the spindle tool #3020 Number of tool data index of the spindle tool Note 1: These system variables are read-only variables. er ve d . Note 2: During tool path checking operation both variables (#51999 and #3020) store data with mere reference to the “TNo.” programmed in a T-code and, therefore, remain zero (0) when the program concerned has no T-codes used. re s 18. Number of tool data index (#3022 and #3023) ri gh ts Variables numbered 3022 and 3023 can be used to read the number of tool data index of any desired tool. Description #3022 Designation of the required tool (for writing only). Use the integral and decimal parts respectively for specifying the required tool with its number and suffix. 34 08 C 39 O R PO R A TI O N .A ll Variables #3022 = . ΔΔ : Tool number (TNo.) ΔΔ: Suffix Number of index of the specified tool (for reading only). Use this variable to read out the index line number of the tool specified by the variable #3022. The reading in #3023 is zero (0) if there is no corresponding tool registered in the memory. K #3022 setting Reading in #3023 A 1.01 21 2 B 2.02 24 3 C 3.03 40 4 A 4.61 31 5 B 5.62 34 6 C 6.63 35 7 H 7.08 15 V 8.22 18 Z 9.26 19 : : : : : : – 0 M YA 01 3 )2 ht 9 (c 8 A 1 ZA TNo. yr ig : : Failure C op ZA K IM Se Example: A ri al N o. #3023 Note : The number of tool data index undergoes changes by an exchange of data sets using the [TOOL DATA MOVE] menu function on the TOOL DATA display. It is necessary, therefore, to obtain the number of tool data index in order to correctly fetch a tool’s information item from the TOOL DATA display with the aid of system variables. 13-99 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 19. MAZATROL tool data Using variables tabulated below, MAZATROL tool data can be read or written, as required. Variables from #60001 ............. Tool quantity: 999 (maximum) Variables from #600001 ........... Tool quantity: 4000 (maximum) The maximum applicable tool quantity depends on the machine specifications. (n = Number of index of the tool) System variables MAZATROL tool data #600001 to #600000+n Tool length / Length A #61001 to #61000+n #610001 to #610000+n Tool diameter / Nose R #62001 to #62000+n #620001 to #620000+n Tool life flag (1: ON, 0: OFF) #63001 to #63000+n #630001 to #630000+n Tool damage flag (1: ON, 0: OFF) #64001 to #64000+n #640001 to #640000+n Wear compensation X #65001 to #65000+n #650001 to #650000+n Wear compensation Y #66001 to #66000+n #660001 to #660000+n Wear compensation Z #67001 to #67000+n #670001 to #670000+n Group number #68001 to #68000+n #680001 to #680000+n Length B .A ll ri gh ts re s er ve d . #60001 to #60000+n Note 1: During tool path check, tool data can be read but cannot be written. 34 08 C 39 O R PO R A TI O N Note 2: Tool life flags (variables numbers of the order of #62000 or #620000) and tool damage flags (likewise, the order of #63000 or #630000) can take either 1 or 0 as their logical states (1 for ON, 0 for OFF). K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. Note 3: Tool life flags (variables numbers of the order of #62000 or #620000) only refer to tool life management according to the tool’s application time. 13-100 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 20. EIA/ISO tool data Using variables numbers tabulated below, EIA/ISO tool data (tool life management data) can be read or updated, as required. Variables from #40001 ............. Tool quantity: 960 (maximum) Variables from #400001 ........... Tool quantity: 4000 (maximum) The maximum applicable tool quantity depends on the machine specifications. (n = Number of index of the tool) System variables Corresponding data #40001 to #40000+n #400001 to #400000+n Length offset data No. or Length offset amount #41001 to #41000+n #410001 to #410000+n #42001 to #42000+n #420001 to #420000+n Tool life flag (1: ON, 0: OFF) #43001 to #43000+n #430001 to #430000+n Tool damage flag (1: ON, 0: OFF) #44001 to #44000+n #440001 to #440000+n Tool data flag (See the table below.) #45001 to #45000+n #450001 to #450000+n Tool application time (s) #46001 to #46000+n #460001 to #460000+n Tool life time (s) #47001 to #47000+n #470001 to #470000+n Tool application quantity #48001 to #48000+n #480001 to #480000+n Tool life quantity er ve d . Radius compensation data No. or compensation amount N .A ll ri gh ts re s Offset data No. of a turning tool 34 08 C 39 O R PO R A TI O Tool life flag 0: No expiration of serviceable life 1: Expiration in terms of application quantity 2: Expiration in terms of application time 4: Expiration in terms of X-axis werar amount 8: Expiration in terms of Y-axis werar amount 16: Expiration in terms of Z-axis werar amount #490001 to #490000+n N o. #49001 to #49000+n K ZA ri al Note 1: During tool path check, tool data can be read but cannot be written. K IM A Se Note 2: Tool life flags (variables numbers of the order of #42000 or #420000) and tool damage flags (likewise, the order of #43000 or #430000) can take either 1 or 0 as their logical states (1 for ON, 0 for OFF). bit 0 M bit 1 bit 2 bit 3 Length offset data No. 0 0 – – 01 3 A ZA Note 3: The identification between number and amount of tool length offset or radius compensation is made by referring to the tool data flag. Length offset amount 0 1 – – Radius comp. data No. – – 0 0 Radius comp. amount – – 0 1 ht (c )2 YA Tool data flag yr ig 21. Date and time (Year-month-day and hour-minute-second) C op Variables numbered 3011 and 3012 can be used to read date and time data. Variable Nos. Description #3011 Date (Year-month-day) #3012 Time (Hour-minute-second) Example: If the date is December 15, 1995 and the time is 16:45:10, data is set as follows in the corresponding system variables: #3011 = 951215 #3012 = 164510. 13-101 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 22. Total number of machined parts and the number of parts required Variables numbered 3901 and 3902 can be used to read or assign the total number of machined parts and the number of parts required. Variable Nos. Description #3901 Total number of machined parts #3902 Number of parts required Note 1: These variables must be integers from 0 to 9999. Note 2: Data reading and writing by these variables is surely suppressed during tool path checking. er ve d . 23. Setting and using variables names gh ts re s Any variables name can be assigned to each of common variables #500 through #519. The variables name, however, must be of seven alphanumerics or less that begin with a letter of the alphabet. .A ll ri Format: SETVNn [NAME1, NAME2, .....] 34 08 C 39 O R PO R A TI O N Starting number of the variable to be named Name of #n (Variables name) Name of #n + 1 (Varaibles name) al Detailed description K N o. Each variables name must be separated using the comma (,). ZA Se ri Once a variables name has been set, it remains valid even after power-off. K IM G01X[#POINT1] [#TIMES]=25 A ZA Example : A Variables in a program can be called using the variables names. The variable to be called must, however, be enclosed in brackets ([ ]). Program SETVN500[ABC,EFG] On the display F46 0 F47 ABC F48 EFG F49 F50 Variables name assigned to #500 Variables name assigned to #501 Variables name assigned to #502 C op yr ig ht (c )2 01 3 Example : YA M Variables names can be checked on the USER PARAMETER No. 1 display. The names assigned to variables #500 to #519 are displayed at F47 to F66. 13-102 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 24. Contents of the S12 or S23 parameters (#3200 and #3212 or #3223) Variables numbered 3200, 3212 and 3223 can be used to read the settings of particular S parameters. Use #3200 beforehand to specify the desired axis. #3200 setting Description 1 to 16 Axis number Example : #3200 = 1; Designation of the first significant axis setting (normally: X) within the system. S parameter #3212 S12 #3223 S23 er ve d . Variable Nos. re s Note 1: #3200 is initialized (to “1”) by NC-resetting. gh ts Note 2: It is not necessary to repeat writing into #3200 next time the reading with #3212 or #3223 is to be done for the same axis. ri Note 3: Read #3200 as required to check its last setting. 34 08 C 39 O R PO R A TI O N .A ll Note 4: The setting for #3200 is not checked for the appropriateness (as to whether the designated axis is preset properly) at the block of #3200, but results in an alarm (809 ILLEGAL NUMBER INPUT) being caused at the reading block of #3212 or #3223 when the setting is found inappropriate. 25. Dynamic offsetting II N o. Using variables tabulated below, it is possible to read dynamic offsetting values (X, Y, Z), coordinates of the axis of table rotation (X, Y, Z), and the dynamic offset number. Description K al Variables #5122 Dynamic offsetting value Y #5123 Dynamic offsetting value Z #50700 X-coordinate of the axis of rotation of the turntable (Parameter S5 X) #50705 Y-coordinate of the axis of rotation of the turntable (Parameter S5 Y) #50701 Z-coordinate of the axis of rotation of the turntable (Parameter S5 Z) #3700 X-coordinate of the axis of rotation of the tilting table (Parameter S12 X) #3701 Y-coordinate of the axis of rotation of the tilting table (Parameter S12 Y) #3702 Z-coordinate of the axis of rotation of the tilting table (Parameter S12 Z) #5510 Dynamic offset number (0 to 8) A )2 01 3 YA M A ZA K IM Se ZA Dynamic offsetting value X ri #5121 1st axis 2nd axis ..... 16th axis G54.2P1 #5521 #5522 ..... #5536 G54.2P2 #5541 #5542 ..... #5556 G54.2P3 #5561 #5562 ..... #5576 G54.2P4 #5581 #5582 ..... #5596 G54.2P5 #5601 #5602 ..... #5616 G54.2P6 #5621 #5622 ..... #5636 G54.2P7 #5641 #5642 ..... #5656 G54.2P8 #5661 #5662 ..... #5676 C op yr ig ht (c Moreover, use the following variables to read and write the values of the reference dynamic offset: 13-103 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 26. Workpiece setup error correction values Using variables tabulated below, it is possible to read and write the values used for workpiece setup error correction. Common No. 1 No. 2 No. 3 No. 4 No. 5 No. 6 No. 7 x #5801 #5811 #5821 #5831 #5841 #5851 #5861 #5871 y #5802 #5812 #5822 #5832 #5842 #5852 #5862 #5872 z #5803 #5813 #5823 #5833 #5843 #5853 #5863 #5873 a — #5814 #5824 #5834 #5844 #5854 #5864 #5874 b — #5815 #5825 #5835 #5845 #5855 #5865 #5875 c #5816 #5826 #5836 #5846 #5856 #5866 #5876 #5807 #5817 #5827 #5837 #5847 #5857 #5867 #5877 Rotat. axis coord. 2 #5808 #5818 #5828 #5838 #5848 #5858 #5868 #5878 er ve d . — Rotat. axis coord. 1 gh An attempt to overwrite the system variable #5800 will only lead to an alarm (1821 UNWRITABLE SYSTEM VARIABLE). N 27. Settings in an indexing unit (for VERSATECH series only) .A ll ri Note : ts re s Use #5800 to read the number (1 to 7) of the currently selected data set for workpiece setup error correction. Description TURN POS Z #550616 TURN POS W #550618 ANGLE B #550620 ANGLE C #550698 W-POS 0.0001 mm or 0.00001 in ZA A K IM Se 0.0001 mm or 0.00001 in 0.0001° 0.0001° 0.0001 mm or 0.00001 in These system variables are read-only variables. ZA Note : 0.0001 mm or 0.00001 in K #550614 0.0001 mm or 0.00001 in o. TURN POS Y N TURN POS X #550612 ri #550610 Unit al Variables 34 08 C 39 O R PO R A TI O Using variables tabulated below, it is possible to read the setting items of an indexing unit (INDEX) in a MAZATROL program. M A 28. Work number of the main program (#4000) )2 01 3 YA Use variable #4000 to read the work number of the main program. The reading can also occur in the same manner during execution on the TOOL PATH CHECK display. Subprogram 1000.eia O0010; O1000; #100=#4000 M98P1000; “10” is read out as the work No. of the main program. C op yr ig ht (c Main program 10.eia M99; M30 Note 1: Only 8-digit natural numbers (1 to 99999999) can be read as they are. The reading is always “–1” if there is any character other than arabic numerals (0 to 9) in the work number. Note 2: The reading cannot be done appropriately (is always “–1”) in the mode of tape operation and MDI. 13-104 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Note 3: This system variable is a read-only one. Note 4: In the case of program chain (by M998) the work number of the main program chained can be read as appropriate. Main program 20.eia Main program 10.eia O0020; O0010; #100=#4000 M998S20; M998P2000; Program chain “20” is read out as the work No. of the main program. Subprogram 2000.eia er ve d M30 . O2000; “20” is read out as the work No. of the main program. re s #100=#4000 ri gh ts M99; .A ll 29. Barrel-shaped milling cutter’s compensation amounts in F306 to F311 (#6041 to #6046) 34 08 C 39 O R PO R A TI O N Use variables tabulated below to read and write the settings in parameters F306 to F311. Variables Description Setting range Parameter F306 (For cutting point command: ACT-1) 0 to 99999999 #6042 Parameter F307 (For cutting point command: R1) 0 to 99999999 #6043 Parameter F308 (For cutting point command: R2) 0 to 99999999 #6044 Parameter F309 (For cutting point command: TEETH LG) #6045 Parameter F310 (For cutting point command: ACT-2) #6046 Parameter F311 (For cutting point command: R HEIGHT) K ZA Se ri al N o. #6041 0 to 99999999 0 to 99999999 0 to 99999999 K IM A Note 1: Setting any of the variables above to a value outside the setting range will cause the alarm 809 ILLEGAL NUMBER INPUT. YA M A ZA Note 2: The settings in parameters F306 to F311 are always fetched at the start up of the mode of cutting point command (option). Their change made in the middle of the mode, therefore, cannot become valid until the start up command is given anew. 01 3 30. Number of the currently selected SMC data set (#80001) ig ht (c )2 Use variable #80001 to read the No. of the SMC data set currently selected. During execution on the TOOL PATH CHECK display, the number of the data set selected on the POSITION display is read when there is no command given yet for selecting an SMC data set in the program. yr Note 1: The reading is always “–1” when no SMC data set is yet selected. C op Note 2: The reading is always “–2” when the SMC function is not enabled. Note 3: This system variable is a read-only one. 13-105 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 31. Information about the type of program execution (#50600) Variable numbered 50600 can be used to obtain information as to whether the program is currently being run for the purpose of simulation (on the TOOL PATH CHECK or VIRTUAL MACHINING display) or for actual machining (on the machine). Description Variables 0: Execution for simulation (on the TOOL PATH CHECK or VIRTUAL MACHINING display) 1: Execution for actual machining (on the machine) #50600 re s IF[#50600EQ0]GOTO32 : Branching to sequence N32 in the case of simulation. N31 G65P9031X100. : Calling a measurement macro (to be skipped in simulation) N32 G90X0.Y0.Z0. er ve d . Example : Use of the variable to skip or execute the block for calling a measurement macroprogram according to the type of program execution. gh ts .A ll ri Note 1: This system variable is a read-only one. 34 08 C 39 O R PO R A TI O N Note 2: The reading of #50600 is always zero (0) in searching the program up to the restart position for modal data to be prepared for restart operation. 32. Settings in a five-surface machining unit (for VERSATECH series only) Using variables tabulated below, it is possible to read the setting items of a five-surface machining unit (5F CUT) in a MAZATROL program. Setting range N o. Description #5355 FACE #5356 MACHINING W ZA 0/90/180/270° –99999.9999 to 99999.9999 mm or –9999.99999 to 9999.99999 in K IM Se ri al INDEX W K –99999.9999 to 99999.9999 mm or –9999.99999 to 9999.99999 in #5354 A Variables ZA Note 1: These system variables are read-only variables. C op yr ig ht (c )2 01 3 YA M A Note 2: The reading is always “0” unless the variable is used in a subprogram which is called by a five-surface machining unit. 13-106 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 33. Parameter settings Using variables shown below, various parameter settings can be read, as required. Use variable #800000 as required to specify the axis No. or system No., and then read the desired parameter settings using the corresponding variables as tabulated below. Parameter System variable Axis No./ System No. Parameter System variable Axis No./ System No. 1 to 144 #804001 to #804144 — S 1 to 72 #816001 to #816072 1 to 32 E 1 to 144 #805001 to #805144 — SA 1 to 250 #819001 to #819250 1 to 8 F 1 to 336 #806001 to #806336 — BA 1 to 264 #820001 to #820264 1 to 4 I 1 to 36 #809001 to #809036 1 to 32 TC 1 to 308 #821001 to #821308 — 1 to 4 1 to 576 #810001 to #810576 — SU 1 to 168 #822001 to #822168 1 to 288 #811001 to #811288 — SD 1 to 168 #823001 to #823168 1 to 288 #812001 to #812288 — MS 1 to 132 #826001 to #826132 1 to 72 #813001 to #813072 1 to 32 US 1 to 90 #827001 to #827090 N 1 to 72 #814001 to #814072 1 to 32 — 1 to 4 — gh ts re s L M er ve d J K . D .A ll ri Example : Shown below is an example of programming for reading the settings in parameters K124 and M5 (for the X- and Y-axis) as well as in parameter BA62 (for system 1 and system 2). Specifying the axis No. 1 and system No. 1. #100 = #811124 Storing the setting of K124 into variable #100. #101 = #813005 Storing the setting of M5 for the 1st axis (X) into variable #101. #102 = #820062 Storing the setting of BA62 for system 1 (TR1/HD1) into variable #102. #800000 = 2 Specifying the axis No. 2 and system No. 2. #103 = #813005 Storing the setting of M5 for the 2nd axis (Y) into variable #103. #104 = #820062 Storing the setting of BA62 for system 2 (TR2/HD2) into variable #104. K ri al N o. 34 08 C 39 O R PO R A TI O N #800000 = 1 ZA A ZA K IM Se Note 1: “1” is automatically selected as the initial value of variable #800000 (No. of Axis and System) upon switching-on or resetting. “#800000 = 1” can be omitted, therefore, until the named variable is to be specified with any other value than 1 for the reading macro statements concerned. M A Note 2: Alarm 1821 UNWRITABLE SYSTEM VARIABLE is raised if an attempt is made to write in one of the variables listed in the table above (since they are all read-only variables). C op yr ig ht (c )2 01 3 YA Note 3: Parameters available depend upon the specifications of the machine in question. 13-107 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-11-5 Arithmetic operation commands Various operations can be carried out between variables using the following format. #i = <expression> where <expression> must consist of a constant(s), a variable(s), a function(s), or an operator(s). In the table given below, constants can be used instead of #j and/or #k. #i=#j Definition/replacement [2] Additional-type operations #i=#j+#k #i=#j–#k #i=#jOR#k #i=#jXOR#k Addition Subtraction Logical additon (For each of 32 bits) Exclusive OR (For each of 32 bits) [3] Multiplicative-type operations #i=#j#k #i=#j/#k #i=#jMOD#k #i=#jAND#k Multiplication Division Surplus Logical product (For each of 32 bits) [4] Functions #i=SIN[#k] #i=COS[#k] #i=TAN[#k] #i=ATAN[#j] #i=ACOS[#j] #i=SQRT[#k] #i=ABS[#k] #i=BIN[#k] #i=BCD[#k] #i=ROUND[#k] Sine Cosine Tangent (tanq is used as sinq/cosq.) Arc-tangent (Either ATAN or ATN can be used.) Arc-cosine Square root (Either SQRT or SQR is available.) Absolute value BINARY conversion from BCD BCD conversion from BINARY Rounding to the nearest whole number (Either ROUND or RND is available.) Cutting away any decimal digits Counting any decimal digits as 1s Natural logarithm Exponent with the base of e (= 2.718 ...) 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . [1] Definition/replacement of variables K ri al N o. #i=FIX[#k] #i=FUP[#k] #i=LN[#k] #i=EXP[#k] ZA A K IM Se Note 1: In principle, data without a decimal point is handled as data that has a decimal point. (Example: 1 = 1.000) M A ZA Note 2: Offsets from variable #10001, workpiece coordinate system offsets from variable #5201, and other data become data that has a decimal point. If data without a decimal point is defined using these variables numbers, therefore, a decimal point will also be assigned to the data. YA Example : 01 3 Common variable Execution #101 1000 #102 1.000 yr ig ht (c )2 #101=1000 #10001=#101 #102=#10001 ]). C op Note 3: The <expression> after a function must be enclosed in brackets ([ 1. Operation priority Higher priority is given to functions, multiplicative operations, and additive operations, in that order. #101=#111+#112SIN[#113] [1] Function [2] Multiplicative [3] Additional 13-108 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 2. 13 Specifying an operational priority level The part to which the first level of operation priority is to be given can be enclosed in brackets ([ ]). Up to five sets of brackets, including those of functions, can be used for one expression. #101=SQRT[[[#111–#112]SIN[#113]+#114]#15] One fold Two fold Three fold Examples of operation instructions . 3. G65 P100 A10 B20. #101=100.000 #102=200.000 #1 #2 #101 #102 10.000 20.000 100.000 200.000 [2] Definition, replacement = #1=1000 #2=1000. #3=#101 #4=#102 #5=#5081 #1 #2 #3 #4 #5 1000.000 1000.000 100.000 Data of common variables 200.000 –10.000 Offset amount [3] Addition, subtraction +– #11=#1+1000 #12=#2–50. #13=#101+#1 #14=#5081–3. #15=#5081+#102 #11 #12 #13 #14 #15 2000.000 950.000 1100.000 –13.000 190.000 [4] Logical addition OR #3=100 #4=#3OR14 [5] Exclusive OR XOR #3=100 #4=#3XOR14 [6] Multiplication, Division / #21=100100 #22=100.100 #23=100100. #24=100.100. #25=100/100 #26=100./100 #27=100/100. #28=100./100. #29=#5081#101 #30=#5081/#102 [7] Surplus MOD #31=#19MOD#20 re s ts gh ri .A ll N 34 08 C 39 O R PO R A TI O o. N A ZA K al ri K IM Se ZA A M YA #3 14 #4 = 01100100 = 00001110 = 01101010 = 106 #21 #22 #23 #24 #25 #26 #27 #28 #29 #30 10000.000 10000.000 10000.000 10000.000 1.000 1.000 1.000 1.000 –1000.000 –0.050 #9 15 #10 = 01100100 = 00001111 = 00000100 = 4 #501=SIN[60] #502=SIN[60.] #503=1000SIN[60] #504=1000SIN[60.] #505=1000.SIN[60] #506=1000.SIN[60.] Note: SIN[60] is equal to SIN[60.]. #501 #502 #503 #504 #505 #506 0.866 0.866 866.025 866.025 866.025 866.025 #541=COS[45] #542=COS[45.] #543=1000COS[45] #544=1000COS[45.] #545=1000.COS[45] #546=1000.COS[45.] Note: COS[45] is equal to COS[45.]. #541 #542 #543 #544 #545 #546 0.707 0.707 707.107 707.107 707.107 707.107 )2 01 3 [10] Cosine COS = 01100100 = 00001110 = 01101110 = 110 #9=100 #10=#9AND15 (c ig yr C op [9] Sine SIN #3 14 #4 #19 48 = 5 surplus 3 = #20 9 ht [8] Logical product AND er ve d [1] Main program and argument specification 13-109 Serial No. 340839 1.732 1.732 1732.051 1732.051 1732.051 1732.051 [12] Arc-tangent ATAN #561=ATAN[173205/100000] #562=ATAN[173.205/100.] #563=ATAN[1.732] #561 #562 #563 60.000 60.000 59.999 [13] Arc-cosine ACOS #521=ACOS[100000/141421] #522=ACOS[100./141.421] #523=ACOS[1000/1414.213] #524=ACOS[10./14.142] #525=ACOS[0.707] #521 #522 #523 #524 #525 45.000 45.000 45.000 44.999 45.009 [14] Square root SQRT #571=SQRT[1000] #572=SQRT[1000.] #573=SQRT[10.10.+20.20.] #574=SQRT[#14#14+#15#15] #571 #572 #573 #574 31.623 31.623 22.361 190.444 #576 #577 –1000.000 1000.000 er ve d #551 #552 #553 #554 #555 #556 re s #551=TAN[60] #552=TAN[60.] #553=1000TAN[60] #554=1000TAN[60.] #555=1000.TAN[60] #556=1000.TAN[60.] Note: TAN[60] is equal to TAN[60.]. ts [11] Tangent TAN . 13 PROGRAM SUPPORT FUNCTIONS #580 64 256 #21 #22 #23 #24 #25 #26 #27 #28 5 5 5 5 –5 –5 –5 –5 #21 #22 #23 #24 #25 #26 #27 #28 4.000 4.000 4.000 4.000 –4.000 –4.000 –4.000 –4.000 5.000 5.000 5.000 5.000 –5.000 –5.000 –5.000 –5.000 [18] Cutting away any decimal digits FIX #21=FIX[14/3] #22=FIX[14./3] #23=FIX[14/3.] #24=FIX[14./3.] #25=FIX[–14/3] #26=FIX[–14./3] #27=FIX[–14/3.] #28=FIX[–14./3.] [19] Counting any decimal digits as 1s FUP #21=FUP[14/3] #22=FUP[14./3] #23=FUP[14/3.] #24=FUP[14./3.] #25=FUP[–14/3] #26=FUP[–14./3] #27=FUP[–14/3.] #28=FUP[–14./3.] #21 #22 #23 #24 #25 #26 #27 #28 [20] Natural logarithm LN #101=LN[5] #102=LN[0.5] #103=LN[–5] #101 #102 Alarm [21] Exponent EXP #104=EXP[2] #105=EXP[1] #106=EXP[–2] #104 #105 #106 ig ht K ZA A (c )2 01 3 YA M A ZA K IM Se ri al N o. #21=ROUND[14/3] #22=ROUND[14./3] #23=ROUND[14/3.] #24=ROUND[14./3.] #25=ROUND[–14/3] #26=ROUND[–14./3] #27=ROUND[–14/3.] #28=ROUND[–14./3.] yr ri 120.000 #11 #12 [17] Rounding into the nearest whole number ROUND op .A ll #1=100 #11=BIN[#1] #12=BCD[#1] N [16] BIN, BCD 34 08 C 39 O R PO R A TI O #576=–1000 #577=ABS[#576] #3=70. #4=–50. #580= ABS[#4–#3] C [15] Absolute value ABS gh Note: For enhanced accuracy, perform operations within [ ] as far as possible. 13-110 1.609 –0.693 860 CALCULATION IMPOSSIBLE 7.389 2.718 0.135 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 4. 13 Operation accuracy The errors listed in the table below are generated by one arithmetic operation, and the error rate increases each time an operation is performed. Max. error a=b+c a=b–c 2.33 × 10–10 5.32 × 10–10 a=bc 1.55 × 10–10 4.66 × 10–10 a = b/c 4.66 × 10–10 1.86 × 10–9 b 1.24 × 10–9 3.73 × 10–9 a = sin b a = cos b 5.0 × 10–9 1.0 × 10–8 a = tan–1 b/c 1.8 × 10–6 3.6 × 10–6 b Relative error a Absolute error degree The function TAN (Tangent) is calculated as SIN/COS (Sine/Cosine). gh Notes on deterioration of accuracy Addition/subtraction .A ll A. , ri 5. c re s Note: Min. ts a= Kind of error . Mean error er ve d Operation format 34 08 C 39 O R PO R A TI O N As for additional-type operations, if an absolute value is subtracted from the other, the relative –8 error cannot be reduced below 10 . For example, when the true values (such values, by the way, cannot be substitued directly) of #10 and #20 are as follows: o. #10 = 2345678988888.888 #20 = 2345678901234.567 K ZA K IM #10 = 2345679000000.000 #20 = 2345678900000.000 A Se ri al N then #10 – #20 = 87654.321 would not result from calculation of #10 – #20. This is because, since the effective number of digits of the variable is eight (decimal), the approximate values of #10 and #20 are: A ZA More strictly, internal binary values slightly differ from these values. Actually therefore, a significant error results as follows: Logical relationship 01 3 B. YA M #10 – #20 = 100000.000. ht (c )2 As for EQ, NE, GT, LT, GE and LE, the processing is executed in a similar manner to addition and substraction, so be careful to errors. For example, to judge whether #10 is equal to #20 of the above example, the conditional expression ig IF [#10EQ#20] C op yr is not appropriate due to the errors. In such a case, therefore, give a macro-instruction as shown below to allow for an acceptable tolerance in the judgement on the equality of two values. C. IF [ABS[#10 – #20] LT200000] Trigonometric functions For trigonometric functions, although the absolute error is guaranteed, the relative error is not –8 below 10 . Be careful, therefore, when carrying out multiplication, or division after trigonometric function operations. 13-111 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-11-6 Control commands The flow of a program can be controlled using IF and WHILE DO commands. 1. Branching A. IFGOTO Format: IF [conditional expression] GOTO n er ve d . where n is a sequence number in the same program. The branching will occur to the block headed by sequence number ‘n’ if the condition holds, or if the condition does not hold, the next block will be executed. An independent setting of GOTO statement without IF [conditional expression] will perform unconditional branching to the specified block. re s The available formats of [conditional expression] are as follows: = ( #i is equal to #j.) #i NE #j (#i is not equal to #j.) #i GT #j > (#i is larger than #j.) #i LT #j < (#i is smaller than #j.) #i GE #j (#i is equal to #j, or larger than #j.) #i LE #j (#i is equal to #j, or smaller than #j.) 34 08 C 39 O R PO R A TI O N .A ll ri gh ts #i EQ #j K ZA A Branching to N100 if #2 = 1. 01 3 YA M A ZA N10 #22=#20 #23=#21 IF[#2EQ1] GOTO100 #22=#20–#3 #23=#21–#4 K IM Se ri al N o. For GOTO n, n must be a sequence number within the same program. If the sequence number does not exist in that program, the alarm 843 DESIGNATED SNo. NOT FOUND will occur. An expression or a variable can be used instead of #i, #j, or n. Sequence number designation Nn must be set at the beginning of the destination block. Otherwise, the alarm 843 DESIGNATED SNo. NOT FOUND will result. If, however, the block begins with “/” and Nn follows, the program can branch to that sequence number. Search for N10 to be continued back to the head C op yr ig ht (c )2 N100 X#22 Y#23 #1=#1+1 Search for N100 Note : During search for the branching destination sequence number, if the area from the block after “IF ...” to the program end (% code) is searched (forward search) in vain, then the area from the head down to the block before “IF ...” will be searched next (backward search). It will therefore take more time to execute backward search (searching in the opposite direction to the flow of the program) than to execute forward search. 13-112 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS B. 13 IFTHENELSEENDIF After describing the conditional expression of IF, give commands after THEN or, in succession, after ELSE according as they are to be executed if the conditional expression holds or does not hold. There is a special type of programming format provided to allow multiple macro statements and, moreover, even NC statements to be entered in the section between IFTHEN block and ELSE block as well as in that between ELSE block and ENDIF block (see Type A below). Type er ve d . See Subsection 13-11-9 “Precautions” for a description of NC and macro statements. Programming format re s IF[Cond. expres.]THEN Macro statement or NC statement ts gh ELSE A ri Macro statement or NC statement .A ll ENDIF IF[Cond. expres.]THEN Macro statement ELSE Macro statement ENDIF C IF[Cond. expres.]THEN Macro statement ELSE Macro statement ENDIF 34 08 C 39 O R PO R A TI O N B N o. The available formats of [conditional expression] are as follows: = ( #i is equal to #j.) #i NE #j (#i is not equal to #j.) #i GT #j > (#i is larger than #j.) #i LT #j < (#i is smaller than #j.) #i GE #j (#i is equal to #j, or larger than #j.) #i LE #j (#i is equal to #j, or smaller than #j.) K ZA A YA M <Detailed description> A ZA K IM Se ri al #i EQ #j 1. Omission of THEN or ELSE 01 3 THEN or ELSE commands can be omitted as shown below. )2 Type Macro statm. or NC statm. ENDIF ENDIF B IF[Cond. expres.]ELSE Macro statm. ENDIF IF[Cond. expres.]THEN Macro statm. ENDIF C IF[Cond. expres.]ELSE Macro statm. ENDIF IF[Cond. expres.]THEN Macro statm. ENDIF ht (c Macro statm. or NC statm. ig yr op Omission of ELSE IF[Cond. expres.]THEN A C Omission of THEN IF[Cond. expres.]ELSE Note : THEN and ELSE commands cannot both be omitted. 13-113 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 2. Omission of ENDIF ENDIF can be omitted as shown below. Type Omission of ENDIF A Not to be omitted. The alarm 1919 IF-ENDIF MIS-MATCH is raised if ENDIF is missing. B IF[Cond. expres.]THEN Macro statm. ELSE Macro statm. C IF[Cond. expres.]THEN Macro statm. ELSE Macro statm. Example : Nesting of an instruction of Type B within that of Type A. .A ll ri gh ts re s IF[#100EQ0]THEN IF[#110EQ1]THEN#120=10....................... a ENDIF ............................................................... b ELSE #120=20 ENDIF . Do not omit ENDIF for an instruction of Type B or C if it is to be nested within a section of Type A. er ve d Note : 34 08 C 39 O R PO R A TI O N The IF statement of Type B in block “a” must be terminated by ENDIF in block “b.” The alarm 1919 IF-ENDIF MIS-MATCH is raised if ENDIF in block “b” is missing. 3. The programming formats of Type A and Type B can be used mixedly. Example : Mixed use of Types A and B. K ZA A Se ri al N o. IF[#100EQ0]THEN ............................. Type A #100=2 G00X#101 ELSE#110=10 ...................................... Type B ENDIF YA M A ZA K IM IF[#100EQ0]THEN #100=2 ................ Type B ELSE ........................................................... Type A G00X#101 #110=10 ENDIF Up to 10 IF statements can be given in a nesting manner. 01 3 4. )2 Use of an 11th IF statement causes the alarm 1918 IF-ENDIF NESTING EXCEEDED to be raised. C op yr ig ht (c Example : Use of three IF statements. IF[#100EQ0]THEN IF[#110GT#111]THEN ELSE IF[#120EQ#121]THEN ELSE ENDIF ENDIF ELSE ENDIF 2nd 3rd 13-114 1st Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 5. 13 Branch instruction can be given for a destination outside the section between IF and ENDIF. Example : Branching to an outside destination. IF[#100EQ0]THEN IF[#110GT#111]GOTO100 ENDIF N100 Branch instruction can be given from outside for a destination inside the section between IF and ENDIF, and the commands succeeding the destination block of sequence number are executed, independently of whether or not the conditional expression concerned holds or does not hold. re s er ve d . 6. gh ts Example : Branching from outside to an inside destination. 34 08 C 39 O R PO R A TI O N .A ll ri #100=1 GOTO10 IF[#100EQ0]THEN N10 ELSE N20 ENDIF K A Do not use an IFENDIF section and WHILEDO section in such a manner that they overlap with each other; otherwise the alarm 1919 IF-ENDIF MIS-MATCH is raised. K IM 7. ZA Se ri al N o. Unconditional execution of the succeeding commands ZA Example 1: WHILEDO section in its entirety within an IFENDIF section. Correct (c )2 01 3 YA M A IF[#100EQ0]THEN WHILE[#110GT#111]DO1 END1 ENDIF C op yr ig ht Example 2: WHILEDO section overlaps with an IFENDIF section. #100=0 #110=5 #111=0 IF[#100EQ0]THEN WHILE[#110GT#111]DO1 ENDIF #111=#111+1 END1 Incorrect 13-115 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 8. A command of subprogram call with M98, G65 or G66 a. o. can be given in a section between IF and ENDIF. The subprogram can contain branching commands of IFENDIF, and up to 10 IF statements can be given in a nesting manner within the subprogram. Example : Subprogram call with M98. Main program IF[#100EQ0]THEN To subprogram M98 P100 ENDIF M30 Subprogram re s er ve d . IF[#100EQ0]THEN ENDIF M99 Always give commands of IF and ENDIF in pairs within each program; otherwise the alarm 1919 IF-ENDIF MIS-MATCH is raised. gh ts 9. .A ll 34 08 C 39 O R PO R A TI O N Main program Subprogram IF[#100EQ0]THEN M99 K ZA Se ri al N o. IF[#100EQ0]THEN To subprogram M98 P100 ENDIF M30 ri Example : ENDIF is missing in a subprogram. K IM A 10. Blocks of IF, THEN, ELSE and ENDIF must begin with a slash (/) if it is desired that the function of optional block skip may be applied to them. ZA Example : Optional block skip function can be applied. YA M A /IF[#100EQ0]THEN#100=10; 01 3 11. A command of program end can in some cases prevent an alarm from being caused even if an indispensable ENDIF is missing. C op yr ig ht (c )2 When, in the sample program shown below, the conditional expression does not hold, branch to the ELSE section occurs and, without any alarm being raised, the succeeding program end command, M30, can be executed. If, however, the conditional expression holds, the alarm 1919 IF-ENDIF MIS-MATCH will be raised at the ELSE block after processing the THEN instructions because the indispensable ENDIF is actually missing. IF[#100EQ20]THEN #100=10 #120=20 ELSE #120=30 M30 13-116 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 12. There are some cases where the alarm concerned is not raised even if the THEN section is not correctly programmed, on condition that the conditional expression does not hold in actual operation. The table below indicates whether the alarms concerned are caused or skipped. Alarm No. Message Caused? 807 ILLEGAL FORMAT Skipped 854 INCORRECT USERMACRO PROGRAMMING Skipped IF STATEMENT ERROR Skipped IF-ENDIF NESTING EXCEEDED Caused 1919 IF-ENDIF MIS-MATCH Caused er ve d . 864 1918 re s Example : The alarm 807 ILLEGAL FORMAT is skipped when the conditional expression does not hold. .A ll ri gh ts IF[Cond. expres.]THEN THEN#100=10 THEN#100=10 ENDIF N 13. Enumerated below are the cases in which the alarm 807 ILLEGAL FORMAT is raised. o. N IF[Cond. expres.]THEN THEN THEN#100=10 ENDIF ENDIF 34 08 C 39 O R PO R A TI O When multiple THEN, ELSE or ENDIF are present in succession on one and the same nesting level. K A K IM Se IF[Cond. expres.]THEN#100=10 ELSE#100=20 ENDIF ZA ri al When ENDIF is present in a block headed by IF, THEN or ELSE. ZA When there are more than one ENDIF entered in one and the same block. YA M A IF[Cond. expres.]THEN THEN THEN #100=10 ENDIF ENDIF )2 01 3 When IF and THEN statements are followed by another IF statement without the preceding ENDIF block. ig ht (c IF[Cond. expres.]THEN #100=10 ELSE#100=20 IF[Cond. expres.]ELSE#100=10 C op yr 14. Enumerated below are the cases in which the alarm 854 INCORRECT USERMACRO PROGRAMMING is raised. When an NC statement is entered in an incorrect manner. IF[Cond. expres.]THEN G0Z-10. When a command for calling a macroprogram is given in an incorrect manner. IF[Cond. expres.]THEN G65P1000 When an NC statement immediately succeeds an IF statement. IF[Cond. expres.]G0Z-10. 13-117 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 15. Enumerated below are the cases in which the alarm 864 IF STATEMENT ERROR is raised. When a calculation statement immediately succeeds an IF statement. IF[Cond. expres.]#100=10 When IF is not followed immediately by a conditional expression in one and the same block. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . IF [Cond. expres.]THEN #100=10 ENDIF 13-118 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 2. Looping Format: WHILE [Conditional expression] DOm (m = 1, 2, 3 127) ENDm re s er ve d . The area from the next block to the ENDm block loops while the conditional expression holds. If the conditional expression does not hold, control will be tansferred to the block after ENDm. In the format shown above, DOm can precede WHILE. You must always use WHILE [conditional expression] DOm and ENDm in pairs. If you omit WHILE [conditional expression], the area from DOm to ENDm will endlessly loop. In DOm, m (1 to 127) identifies the number of looping. (DO1, DO2, DO3, and so on up to DO127) The maximum available number of degrees of multiplicity is 27. [2] The identifying No. of WHILE DOm is arbitrary. ts [1] Same identifying No. can be used repeatedly. .A ll ri END1 gh WHILE DO1 WHILE DO1 Usable WHILE DO3 34 08 C 39 O R PO R A TI O N END1 Usable WHILE DO1 N o. Usable K ZA Se ri al END1 K IM WHILE DO1 ZA A M YA WHILE DO27 WHILE DO2 END2 WHILE DO1 END1 [4] The total number of levels of WHILE DOm must not exceed 27. WHILE DO1 DO1 WHILE DO2 WHILE DO2 WHILE DO27 DO2 DO27 WHILE DO28 END27 END28 )2 01 3 Usable A [3] Up to 27 levels of WHILE DOm can be used. m can be 1 to 127, independent of the depth of nesting. END3 END27 (c END2 Unusable ht END2 END1 yr ig END1 For nesting, m once used cannot be used again. op Note : [6] WHILE DOm must correspond to ENDm one-to-one in the same program. C [5] WHILE DOm must precede ENDm. END1 WHILE DO1 Unusable Unusable WHILE DO1 WHILE DO1 END1 13-119 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS [7] WHILE DOm must not overlap. [8] Outward branching from the range of WHILE DOm is possible. WHILE DO1 WHILE DO1 WHILE DO2 Unusable IF GOTOn END1 END1 Usable END2 Nn [9] Branching into WHILE DOm is not allowed. . Main program IF GOTOn WHILE DO1 WHILE DO2 WHILE DO1 ri Nn M99 N M02 .A ll END1 34 08 C 39 O R PO R A TI O END1 END1 END2 To subprogram WHILE DO1 Nn gh G65 P100 ts END1 Usable [12] If WHILE and END are not included in pairs in subprogram (including macro subprogram), an alarm will result at M99. o. [11] The looping can be independently programmed in a subprogram which is called using G65/G66 from the midway of WHILE DOm. Up to 27 levels of nesting for both programs can be done. Main program Subprogram (O100) N Main program K ZA ri al Subprogram (O100) WHILE DO1 To subprogram Usable To subprg. M02 ZA END1 WHILE DO1 G65 P100 A K IM Se WHILE DO1 G65 P100 END1 Subprogram (O100) re s Unusable Usable er ve d WHILE DO1 IF GOTOn Unusable [10] Subprogram can be called using M98, G65, G66, etc. from the midway of WHILE DOm. M99 Alarm 868 DO-END MIS-MATCH C op yr ig ht (c )2 01 3 YA M A M99 13-120 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-11-7 External output commands (Output via RS-232C) 1. Overview In addition to standard user macros, the types of macros listed below are provided as external output commands. These external output macros can be used to output character data or the numerical data in variables to an external unit via an RS-232C interface. The data are outputted in a data length of 7 bits with an even-parity bit added. Types and functions of external output macros Setup processing for data output PCLOS Termination processing of data output BPRNT Printout of character data or binary printout of variable data DPRNT Printout of character data or numerical printout of variable data on a digit-by-digit basis re s er ve d . POPEN Programming order .A ll ri B. gh ts A. POPEN DPRNT Data output commands N o. BPRNT 34 08 C 39 O R PO R A TI O N Open command K ZA POPEN ZA Programming format: A Open command POPEN Close command K IM 2. Se ri al PCLOS A Detailed description M - The command code POPEN must be included before a series of data output command codes. 01 3 YA - The control code for DC2 and the percentage code % are output from the NC unit to an external output unit. (c Close command PCLOS ht 3. )2 - Once POPEN has been set, it will remain valid until PCLOS is set. PCLOS yr ig Programming format: C op Detailed description - The command code PCLOS must be included after all data output command codes. - The control code for DC4 and the percentage code % are outputted from the NC unit to an external output unit. - This command must be used together with POPEN. This command code must be included only after POPEN. - This command must be set at the end of the program even after data output has been aborted using, for example, the NC reset switch. 13-121 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 4. Data output command BPRNT Programming format: BPRNT[1#v1[c1]2#v2[c2]] Effective digits after decimal point Variable number Character string Variable value c × 10 Detailed description - The command BPRNT can be used to output characters or to output variable data in binary form. re s er ve d . - The designated character string is outputted directly in the ISO coded format. Alphanumerics (A to Z, and 0 to 9) and/or special characters (+, –, , /) can be used. Of these characters, only the asterisk () is outputted as a space code. Example 2: If no digits are specified for –100.0, then –100 (FFFFFF9C) will be outputted as binary data. N If three digits are specified for 12.3456, then 3 [12.346 × 10 ] = 12346 (0000303A) will be outputted as binary data. N o. 34 08 C 39 O R PO R A TI O Example 1: .A ll ri gh ts - Since all variables are saved as those having a decimal point, the necessary number of decimal digits must be enclosed in brackets ([ ]). All variables are handled as data of four bytes (32 bits), and each byte is outputted as binary data in the order of the most significant byte first. Minus data is processed as the complement for that data. K ZA ri al - After the specified data has been outputted, the EOB (End Of Block) code is outputted in the format of the appropriate ISO code. 5. A K IM Se - Variables containing <empty> are interpreted as 0s. Data output command DPRNT ZA Programming format: Effective digits below decimal point Effective digits above decimal point Variable number Character string c+d8 (c )2 01 3 YA M A DPRNT[1#v1[d1 c1]2#v2[c2]] ht Detailed description C op yr ig - Output of character data or decimal output of variable data is performed in the format of ISO codes. - The designated character string is outputted directly in the ISO coded format. Alphanumerics (A to Z, and 0 to 9) and/or special characters (+, –, , /) can be used. Of these characters, only the asterisk () is outputted as a space code. - Of the data contained in a variable, the necessary number of digits above the decimal point and that of digits below the decimal point must each be enclosed in brackets ([ ]). The variable data will then have its total specified number of digits, including the decimal point, outputted in the ISO coded format in the order of the most significant digit first. No trailing zeros will be left out in that case. 13-122 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-11-8 External output command (Output onto the local disk) 1. Overview External output macros can also be used to output data in text file format into the predetermined directory on the local disk. 2. Related parameters - DPR14: Selection of an output destination port Set DPR14 to “4” (Output onto the local disk) under OTHER on the DATA I/O PARAMETER display. er ve d . - DPR15: Number of lines in feed section Set the required number of lines to be fed. gh ts Maximum permissible file size: DPR8 × 100 (KB) re s - DPR8: Output file size Use this parameter to specify the maximum permissible output file size. 34 08 C 39 O R PO R A TI O N However, the file size limit is 100 KB if the value in DPR8 is 0. .A ll ri A command for outputting a greater file will cause the alarm 1420 FILE SIZE LIMIT EXCEEDED. Note: Output of a file of smaller size than the limit, however, may not be possible due to a shortage of available area on the local disk. o. The DATA I/O PARAMETER display can be selected by tapping the [DATA I/O PARAM.] menu item on the DATA I/O display. Output file K ZA K IM 3. A Se ri al N For further details of the parameters, refer to the separate Parameter List/ Alarm List/M-code List. A ZA The text file will be automatically outputted with a particular file name into the predetermined directory. M Output directory: c:\ymw\M8Y\data\MC_sdg\print\ C op yr ig ht (c )2 01 3 YA Output file name: print.txt (A file of this name will be automatically created, if required, or the text data will be added to the current contents of the file.) 13-123 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS File contents: Given below on the right is an example of text file contents created by the execution of the program shown on the left under the particular parameter settings. [Program] [Output example] print.txt G28XYZ . % OOOOOOOOOOOO XXXXXXXXXXXX IIIIIIIIIIII % er ve d POPEN DPRNT[OOOOOOOOOOOO] DPRNT[XXXXXXXXXXXX] DPRNT[IIIIIIIIIIII] PCLOS gh ts re s G0X100.Y100.Z100. M30 .A ll N 34 08 C 39 O R PO R A TI O 4. ri [Parameter] DPR14: 4 DPR15: No setting Related alarms Message 887 TAPE I/O ERROR –100 Argument 1 Argument 2 Argument 3 0 0 File write error 0 0 –112 File size too great 0 0 A ZA K File open error –111 C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al No. N o. The alarm given for text file output is described below. 13-124 Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-11-9 Precautions er ve d . Use of user macro commands allows a machining program to be created by combining arithmetic operation, judgment, branchining, or other macro commands with conventional NC commands such as move commands, M-, S-, T-commands, etc. The statement defined by these macro commands and that of conventional NC commands are taken as a macro statement and an NC execute statement, respectively. The treatment of a macro statement has no direct rerations with machine control. Its treatment as short as possible is effective for shortening machining time. Parallel processing of the NC execute statement and the macro statement becomes possible according to the setting of bit 6 of parameter F93. (It becomes possible to process all macro statements in batch form by setting the parameter bit to OFF when machining the workpiece, or to execute the macro statements block-by-block by setting the parameter bit to ON when checking the program. Therefore, set the parameter bit according to your requirements.) 34 08 C 39 O R PO R A TI O N .A ll Macro statements ri gh ts re s Sample program N1 G91G28X0Y0Z0 N2 G92X0Y0Z0 N3 G00X–100.Y–100. N4 #101=100.COS[210.] N5 #102=100.SIN[210.] N6 G01X#101Y#102F800 A macro statement refers to a statement that consists of the following blocks: - Arithmetic operation command block (compassing the equal sign =) - Control command block (compassing GOTO, DO END, etc.) al N o. - Macro call command block (compassing macro call or cancellation G-code commands G65, G66, G66.1, or G67) K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri An NC execute statement refers to a non-macro statement. 13-125 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS The flow of processing of these two types of statements is shown below. N1 N2 Program analysis N3 N4 N4 Macroprogram statement treatment Parameter OFF N5 N2 N6 N7 N5 N3 N6 N7 Next command N1 N2 N4 N5 N4 N1 N3 G00X–100.Y–100. (Next command) N6 G01X#101Y#102F800 K ZA Se ri al N o. (In execution) N4 #101=100.COS[210.] C op yr ig ht (c )2 01 3 YA M A ZA (Next command) A N3 G00X–100.Y–100. K IM (In execution) Parameter ON N3 N6 N 34 08 C 39 O R PO R A TI O Machining program data is displayed as follows: Parameter OFF N2 N7 .A ll In execution ts N3 Next command gh N2 N5 re s N4 N6 N7 . N3 Macroprogram statement treatment NC statement treatment N6 er ve d N1 N2 Program analysis Parameter ON N3 In execution ri NC statement treatment 13-126 N4, N5 and N6 are treated in parallel with NC execution sentence of N3, and N6 is displayed as next command because it is NC execution sentence. When N4, N5, and N6 are analized during NC execution sentence of N3, machine control continues. N4 is treated in parallel with the control of NC execution sentence of N3, and is displayed as next command. After N3 is completed, N5 and N6 are analized so the machine control is forced to wait by the analyzing time of N5 and N6 before N6 can be executed. Serial No. 340839 PROGRAM SUPPORT FUNCTIONS 13 13-11-10 Specific examples of programming using user macros The following three examples of programming are shown here: Example 1: SIN curve Example 2: Bolt-hole circle Example 3: Grid Example 1: SIN curve G65 Pp1 Aa1 Bb1 Cc1 Ff1 er ve d . Y (sin ) re s 100. A: Initial value 0° B: Final value 360° C: R of RSIN F: Feed rate 0 180. 270. 360. .A ll ri 90. gh ts X 34 08 C 39 O R PO R A TI O N –100. O9910 (Subprogram) ZA A K IM Se WHILE[#1LE#2]DO1 #10=#3SIN[#1] Note G90G1X#1Y#10F#9 #1=#1+10. END1 M99 ZA #1 = 0 #2 = 360.000 #3 = 100.000 #9 = 100.000 C op yr ig ht (c )2 01 3 YA M A Local variable set in argument K al To subprogram ri G65P9910A0B360.C100.F100 N o. Main program MEP172 13-127 Note: G90G01X#1Y[#3SIN[#1]]F#9 makes one block command available. Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Example 2: Bolt-hole circle After hole data has been defined using fixed-cycle machining commands G72 to G89, hole positions are to be designated using macro commands. –X Main program x1 W a1 y1 . To subprogram er ve d G81Z–100.R50.F300 G65P9920Aa1Bb1Rr1Xx1Yy1 a1 : Start angle b1 : Hole quantity r1 : Radius x1 : X-axis center position y1 : Y-axis center position –Y O9920 0 #101 G90,G91 - Read-in #102 Preceding coordinate read-in X #103 Y #104 Start angle #111 WHILE[#101LT#2]DO1 o. Note ri .A ll RadiusCOS [#111] + center coordinate X #120 RadiusSIN [#111] + center coordinate Y #121 #120 #122 #121 #123 01 3 Note #120 = Hole position X coordinate #121 = Hole position Y coordinate #122 = X-axis absolute value #123 = Y-axis absolute value Yes Mode judge G90, G91 #102 = 90 No #120 – #103 #122 #122 = X-axis incremental value #121 – #104 #123 #123 = Y-axis incremental value #120 #103 X-axis present position renewal #121 #104 Y-axis present position renewal C op yr ig ht (c )2 END1 M99 N Yes YA N100 X#122Y#123 #101=#101+1 #111=#1+360.#101/#2 END M A ZA #103=#120 #104=#121 No ZA K IM Note #101 Hole quantity #103 = X-axis present position #104 = Y-axis present position #111 = Start angle A Se ri al #122=#120 #123=#121 IF[#102EQ90]GOTO100 #102 = G90 or G91 K N #120=#24+#18COS[#111] #121=#25+#18SIN[#111] #101 = Hole count 34 08 C 39 O R PO R A TI O Note #122=#120–#103 #123=#121–#104 gh ts O9920 (Subprogram) #101=0 #102=#4003 #103=#5001 #104=#5002 #111=#1 re s MEP173 Note: The processing time can be reduced by one-block reduced programming. N100X#122Y#123 #101+1 #101 Y 360°#101/Hole quantity #111 = + #1 #111 Drilling command Hole number count-up #111 = Hole position angle #111 = 13-128 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS G28X Y Z T1 M06 G90 G43 Z100. H01 G54 G00 X0 Y0 To subprogram G81 Z-100. R3. F100 M03 G65 P9920X-500. Y-500. A0 B8R100. G65 P9920X-500. Y-500. A30. B8R200. G65 P9920X-500. Y-500. A60. B8R300. W –500. –X 100. –500. 200. . 300. gh Grid After hole data has been defined using fixed-cycle machining commands G72 to G89, hole positions are to be designated using macro call commands. 34 08 C 39 O R PO R A TI O N .A ll ri Example 3: MEP174 ts re s er ve d –Y G81 Zz1 Rr1 Ff1 G65Pp1 Xx1 Yy1 Ii1 Jj1 Aa1 Bb1 i1 W o. y1 K al N j1 A ZA Subprogram is shown on the next page. ri : X-axis hole position : Y-axis hole position : X-axis distance : Y-axis distance : X direction hole quantity : Y direction hole quantity –Y ZA K IM Se X Y I J A B x1 –X YA M A MEP175 100. 01 3 G28X Y Z T1 M06 G90 G43 Z100. H01 G54 G00 X0 Y0 G81 Z–100. R3. F100M03 G65P9930 X0 Y0 I100. J–75. A5B3 100. W )2 –X 100. ht (c –75. op yr ig –75. To subprogram C G84 Z–90. R3. F250M03 G65P9930 X0 Y0 I–100. J–75. A5B3 –Y –X –100. –Z MEP176 13-129 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS O9930 O9930 (Subprogram) #101=#24 #102=#25 #104=#10 #105=#1 #106=#2–1 #110=0 #111=0 #112=0 Start point X coordinate #101 Start point Y coordinate #102 Y-axis direction distance #104 X-axis hole quantity #105 Y-axis hole quantity –1 #106 0 #110 0 #111 0 #112 Note #101 = X-axis start point #102 = Y-axis start point #104 = Y direction distance #105 = X-axis hole quanty #106 = Y-axis hole quantity – 1 #110 = Y direction line count #111 = Even/odd times judge #112 = X-axis drilling direction reverse switch 0 #113 X direction distance #103 #113 = X-axis distance initial #103 = X direction distance No ri 34 08 C 39 O R PO R A TI O Yes o. N (c ZA A Yes N10 #103 #113 X-axis drilling distance reset N 100 #106 – 1 #106 0 #112 #110 + 1 #110 yr op C Note: The processing time can be reduced by oneblock reduced programming. For even times (#111 = 0), X distance is same as command. For odd times (#111 = 1), X-axis drilling direction reverse switch on 0 – #103 #103 1 #112 Y-axis hole quantity – 1 X-axis drilling direction reverse switch off Y direction line count-up ig ht No #111 = 1 K IM ZA A M 01 3 YA Note X-axis drilling direction reverse switch check No K al ri Se Note )2 GOTO2 Drilling command #112 = 1 IF[#106LT0]GOTO200 #111=#111AND1 X coordinates renewal X direction hole quantity – 1 X#101 Y#102 N10 #113=#103 END1 #105=#1 #102=#102+#104 #111=#110 .A ll #101 + #113 #101 #105 –1 #105 Note N100 #106=#106–1 #112=0 #110=#110+1 X direction hole drilling completion check Yes Note IF[#112EQ1]GOTO10 IF[#111NE1]GOTO10 #103=0–#103 #112=1 N 100 #105 > 0 N WHILE[#105GT0]DO1 #101=#101+#113 #105=#105–1 X#101Y#102 ts re s Note gh N2 #113=0 #103=#9 N200 M99 er ve d . N2 Yes #106 < 0 Y direction hole drilling completion check END No #1 #105 #102 + #104 #102 #110 #111 #111AND 1 #111 13-130 X-axis hole quantity reset Y coordinates renewal Even times = 0 Odd times = 1 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-12 Geometric Commads 1. Function and purpose Even if it is difficult to find the crossing point of two lines using linear interpolation commands, setting the slope of the first line and the absolute coordinates of the ending point of the second line and its slope will allow the NC unit to calculate the coordinates of the ending point of the first line and thus to control move commands. Programming format Specify the intended plane using G17, G18, or G19. N1 G01 Aa1 Ff1 Specify the angle and speed for the first block. N2 Xxe Zze Aa2 (a’2) Ff2 Specify the absolute coordinates of the ending point of the next block, angles, and a speed. er ve d . G18 ri gh ts re s 2. .A ll ? 34 08 C 39 O R PO R A TI O N a’2 N1 N2 a1 a2 Current position (1st axis on the selected plane) Detailed description K ZA K IM 3. MEP191 A Se ri al N o. Ending point (ze, xe) M A ZA The slope of a line denotes an angle relative to the plus (+) direction of the first axis (horizontal axis) on the selected plane. Assign the sign + for a counterclockwise direction (CCW), or the sign – for a clockwise direction (CW). YA The range of the slope a must be –360.000° a +360.000°. 01 3 For the second block, the slope at either the starting point or the ending point can be set. The NC unit will identify whether the specified slope is for the starting point or for the ending point. ht (c )2 The coordinates of the ending point of the second block must be specified using absolute data. Otherwise an alarm will result. ig Any speed can be specified for each block. C op yr An alarm will result if the angle of the crossing point of the two lines is 1 degree or less. An alarm will result if the preselected plane for the first block is changed over at the second block. The geometric command function does not work if address A is to be used for an axis name or for the No. 2 auxiliary function. Single-block stop can be used at the ending point of the first block. An alarm will result if the first block or the second block is not linear. 13-131 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 4. Correlationships to other functions Geometric command can be set following a linear angle command. N1 Xx2Aa1 N2 Aa2 N3 Xx3Zz3Aa3 (x3, z3) a3 N3 ? N2 (x2, z2) a2 N1 a1 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s MEP192 er ve d . (x1, z1) 13-132 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-13 Corner Chamfering and Corner Rounding Commands Automatic chamfering (or rounding) at any angle becomes possible by adding characters “,C_” or “,R_” at the end of the first block of the two blocks that use only lines to generate corners. 13-13-1 Corner chamfering ( ,C_) 1. Function and purpose The sections before and after virtual corners, for which it is assumed that no chamfering is to take place, are chamfered over a distance which is specified in C_. . Programming format er ve d 2. N100 G01 X_Y_,C_ Chamfering will be executed at the crossing point of N100 and N200. re s N200 G01 X_Y_ .A ll Sample program N G91G01X100.,C10. X100.Y100. [1] [2] 34 08 C 39 O R PO R A TI O 3. ri gh ts Distance from the virtual corner to the starting or ending point of chamfering ZA K [2] A Y100.0 K IM Se Virtual corner crossing point ri al N Chamfering ending point o. Y-axis A ZA Chamfering starting point M 10.0 YA [1] 01 3 10.0 X100.0 X100.0 ht (c )2 X-axis op yr ig MEP193 Detailed description C 4. The starting point of the next block of corner chamfering is a virtual corner crossing point. If character C is not preceded by a comma (,), that command will be regarded as a C-code command. If one block contains both “,C_” and “,R_”, only the last issued command will become valid. Tool offset data is calculated for the shape existing after completion of corner chamfering. Scaling, if already set, also works for the amount of corner chamfering. 13-133 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS Alarm 912 NO MOTION COMMAND AFTER R/C results if the command in the block immediately succeeding that of the corner-chamfering command is not a linear-machining command. Alarm 913 INCORRECT R/C COMMAND results if the distance of movement, specified in the corner-chamfering command block, is less than the amount of chamfering. Alarm 914 INCORRECT COMMAND AFTER R/C results if the distance of movement, specified in the block immediately succeeding the corner chamfering command block, is less than the amount of chamfering. . Alarm 911 CORNER R/C OPTION NOT FOUND results if the command in the block immediately succeeding that of the corner chamfering command is an arc-machining command. Function and purpose re s 1. er ve d 13-13-2 Corner rounding ( ,R_) N Programming format N100 G01 X_Y_,R_ Rounding will be executed at the crossing point of N100 and N200. N200 G01 X_Y_ 34 08 C 39 O R PO R A TI O 2. .A ll ri gh ts The virtual corners to be used when it is assumed that no corner rounding is to take place for the corners that each consist of only lines, are rounded using the arcs whose radii are specified using R_. Radius of the arc for corner rounding o. Sample program ZA K IM A ZA ri Se Y-axis K N G91G01X100.,R10. X100.Y100. [1] [2] al 3. M A Corner rounding ending point Y100.0 )2 01 3 YA [2] Virtual corner crossing point R10.0 [1] C op yr ig ht (c Corner rounding starting point X-axis X100.0 X100.0 MEP194 4. Detailed description The starting point of the next block of corner rounding is a virtual corner crossing point. 13-134 Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS If character R is not preceded by a comma (,), that command will be regarded as an R-code command. If one block contains both “,C_” and “,R_”, only the last issued command will become valid. Tool offset data is calculated for the shape existing after completion of corner rounding. Scaling, if already set, also works for the amount of corner rounding. Alarm 912 NO MOTION COMMAND AFTER R/C results if the command in the block immediately succeeding that of the corner-rounding command is not a linear-machining command. Alarm 913 INCORRECT R/C COMMAND results if the distance of movement, specified in the corner-rounding command block, is less than the amount of rounding. re s er ve d . Alarm 914 INCORRECT COMMAND AFTER R/C results if the distance of movement, specified in the block immediately succeeding the corner-rounding command block, is less than the amount of rounding. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts Alarm 911 CORNER R/C OPTION NOT FOUND results if the command in the block immediately succeeding that of the corner-rounding command is an arc-machining command. 13-135 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 13 PROGRAM SUPPORT FUNCTIONS 13-136 E Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 14 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-1 Fundamental Machine Coordinate System, Workpiece Coordinate Systems, and Local Coordinate Systems re s er ve d . The fundamental machine coordinate system, which is a fixed coordinate system for the machine, is used to designate the tool change position, stroke end position, etc. that are predetermined for the machine. Workpiece coordinate systems are the coordinate systems to be used by a programmer when creating programs. These coordinate systems have their origins set at reference points on workpieces. Local coordinate systems are the coordinate systems to be set on the workpiece coordinate systems to facilitate the creating of partial-machining programs. R#1 34 08 C 39 O R PO R A TI O N .A ll ri gh ts (1st) reference point W3 M K ZA A K IM Se ri al N Local coordinate system o. W4 W2 ZA W1 M A Fundamental machine coordinate system YA R#1 W2 ht (c )2 01 3 W1 C op yr ig M W1 to W4: Workpiece coordinate system 1 to 4 MEP195 14-1 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-2 Machine Zero Point and Second, Third, and Fourth Reference Points The machine zero point refers to a position that acts as a reference point for the fundamental machine coordinate system. That is, the machine zero point is a point specific to the machine, determined by return to the reference point (zero point). The second, third, and fourth reference points (zero point) are the points whose positions in the fundamental machine coordinate system are parameter-preset. Fundamental machine coordinate system (G53) Machine zero point er ve d . 2nd ref. point re s x 1st ref. point .A ll ri 3rd ref. point gh ts y (X2, Y2) y 34 08 C 39 O R PO R A TI O N (X1, Y1) x 4th ref. point Local coordinate system (G52) N o. y K ZA A K IM Se ri al Workpiece coordinate system (G54 to G59) x C op yr ig ht (c )2 01 3 YA M A ZA MEP196 14-2 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 14 14-3 Fundamental Machine Coordinate System Selection: G53 1. Function and purpose The fundamental machine coordinate system is used to designate the tool change position, stroke end position, etc. that are predetermined for the machine. Command G53 and its succeeding coordinate words move the tool at the rate of rapid traverse to the designated position on the fundamental machine coordinate system. 2. Programming format er ve d Detailed description re s 3. . Selection of the fundamental machine coordinate system: (G90) G53 Xx Yy Zz (: Additional axis) ri gh ts - When power is turned on, the fundamental machine coordinate system will be set according to the reference point (zero point) return position which is determined by a manual or automatic reference point (zero point) return command. - Command G53 is valid only for designated blocks. .A ll - The fundamental machine coordinate system is not updated by command G92. 34 08 C 39 O R PO R A TI O N - During the incremental data command mode (G91), command G53 moves the tool on the selected coordinate system according to incremental data. - Setting of command G53 does not cancel the tool radius compensation amount of the designated axis. K ZA A (500, 500) K IM Se ri al N o. - The coordinate data of the first reference point represents the distance from point 0 on the fundamental machine coordinate system to the reference point (zero point) return position. –X M Reference point (zero point) return position (#1) M A ZA R#1 –Y First reference point coordinate values: X = +500 Y = +500 (c )2 01 3 YA Zero point of the fundamental machine coordinate system C op yr ig ht MEP197 14-3 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-4 Coordinate System Setting: G92 1. Function and purpose Setting of command G92 allows absolute coordinate system and current position display data to be newly preset exactly as programmed, without ever having to move the machine. 2. Programming format G92 Xx1 Yy1 Zz1 1 3. (: Additional axis) Detailed description ts re s er ve d . - After power-on, return to the reference point is initially performed using watchdogs. Coordinate systems are set automatically on completion of return. R R, M ri gh Fundamental machine coordinate system .A ll Power-on position Reference point return 100. 34 08 C 39 O R PO R A TI O Reference point return completion N Power-on position W(G54) 100. 200. 300. N o. Workpiece Coordinate system [M-Pos.] X 0.000 Y 0.000 [W-Pos.] X 300.000 Y 200.000 K ZA A MEP198 K IM Se ri al M-Pos. : Current position in the Machine coordinate system W-Pos. : Current position in the Workpiece coordinate system ZA Fundamental machine and workpiece coordinate systems are established at predetermined positions. )2 01 3 YA M A - Setting of command G92 allows absolute (workpiece) coordinate system and current position display data to be newly preset exactly as programmed, without ever having to move the machine. (c R, M op yr ig ht 200. Coordinate system setting R, M C 100. 50. Tool 100. [M-Pos.] X –200.000 Y –150.000 [W-Pos.] X 100.000 Y 50.000 –100. Tool [M-Pos.] X 0.000 Y 0.000 [W-Pos.] X 0.000 Y 0.000 P(G54') 100. –50. 200. W(G54) W(G54) 100. 200. 300. For example, if G92X0Y0; is set, a new workpiece coordinate system will be established. MEP199 14-4 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-5 Automatic Coordinate System Setting The automatic coordinate system setting function allows various coordinate systems to be generated according to parameters previously set on the operation panel when the first manual reference point return or watchdog-based reference point return is completed. Use the automatically set coordinate systems when creating machining programs. y1 y2 re s y3 er ve d x1 . Machine zero point Fundamental machine coordinates system (G53) x2 ts First reference point gh W1 (G54) ri W2 (G55) .A ll W3 (G56) N x3 34 08 C 39 O R PO R A TI O y4 W6 (G59) W5 (G58) W4 (G57) K MEP200 ZA Se ri al N o. x4 K IM A - This function generates the following coordinate systems: 1) Fundamental machine coordinate system (G53) ZA 2) Workpiece coordinate systems (G54 through G59) C op yr ig ht (c )2 01 3 YA M A - Parameters for the NC unit must be the distance data from the origin of the fundamental machine coordinate system. You must therefore determine where on the fundamental machine coordinate system the first reference point is to be set, and then set the zero point of the workpiece coordinate system. 14-5 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-6 Reference Point Return: G28, G29 1. Function and purpose G28 command first performs a G00 (rapid) positioning to the specified intermediate position along the specified axes, and then a returning to the first reference point at the rapid feed rate independently along each specified axis. Second reference point (0, 0, 0, 0) er ve d . G29 command first performs a returning to the intermediate point of the last G28 or G30 command at the rapid feed rate independently along each specified axis, and then a G00 (rapid) positioning to the specified position. Machine zero point G30P2 gh ts (x3, y3, z3, 3) re s Reference point ri G28 .A ll G28 34 08 C 39 O R PO R A TI O N G29 (x1, y1, z1, 1) Starting point G30 Interm. point ZA K N al Se ri (x2, y2, z2, 2) G29 o. G30P3 G30P4 Third reference point K IM Programming format (: Additional axis) [Automatic reference point return] M A G28 Xx1 Yy1 Zz1 1 MEP201 ZA 2. A Fourth reference point YA G29 Xx2 Yy2 Zz2 2 Detailed description 01 3 3. (: Additional axis) [Start point return] Command G28 is equivalent to the following commands: )2 1. C op yr ig ht (c G00 Xx1 Yy1 Zz1 1 G00 Xx3 Yy3 Zz3 3 where x3, y3, z3 and 3 denote the coordinates of the reference point, that are parameter-set as the distance from the zero point of the fundamental machine coordinate system. 2. Axes that have not been returned to the reference point in manual mode after power-on are returned using the watchdog method. In that case, the direction of return is regarded as the same as the sign-designated direction. The direction of return will not be checked if it is of the straight-return type. For the second time onward, the axes are returned at high speed to the reference point that was stored into the memory by execution of the first return command the direction is not checked at this time, either. 3. When reference point (zero point) return is completed, a return complete output signal will be output and “#1” will be displayed in the field of the axis name. 14-6 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 4. 14 Command G29 is equivalent to the following commands: G00 Xx1 Yy1 Zz1 1 G00 Xx2 Yy2 Zz2 2 Independent rapid feed on each axis (not the same as for G0). where x1, y1, z1 and 1 are the coordinates of the middle point specified by the last G28 or G30 command. An alarm will result if G29 is executed without any preceding G28 (automatic reference point return command) after turning-on. 6. Under machine locked status or Z-axis cancelled status, any movements of the Z-axis up to the middle point are ignored and only subsequent positioning is performed. 7. The coordinates of the intermediate point (x1, y, z1, 1) must be given according to the type of dimensional data input (G90 or G91). 8. G29 command can refer to both G28 and G30, and the positioning along the specified axes is performed through the intermediate point of the last G28 or G30 command. 9. The tool offset values are temporarily canceled, or used even, in return movement to the reference point according as bit 2 of parameter F94 is set to “0” or “1.” Sample programs N Example : G28Xx1Zz1 From point A to reference point .A ll 4. ri gh ts re s er ve d . 5. 34 08 C 39 O R PO R A TI O G30Xx2Zz2 From point B to second reference point G29Xx3Zz3 From point C to point D Reference point (#1) Current position (x2, z2) N K D B (x3, z3) A ZA al ri G30 G29 R2 C Second reference point (#2) MEP204 ZA K IM Se G28 New interm. point o. R1 A C op yr ig ht (c )2 01 3 YA M A Old interm. point 14-7 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-7 Second, Third, or Fourth Reference Point Return: G30 1. Function and purpose The returning to the second, third, or fourth reference point can be programmed by setting “G30 P2 (P3, P4)”. Second reference point Reference point G30P2 G28 er ve d . G28 (x1, y1, z1, 1) Interm. point G30 ts Starting point re s G29 gh G30P3 .A ll ri G30P4 G29 Programming format G30 P2 (P3, P4) Xx1 Yy1 Zz1 1 o. (: Additional axis) N Detailed description 2. Return to the second, third or fourth reference point is performed through the specified intermediate point like the return to the first reference point. 3. The coordinates of the second, third, or fourth reference point represent the positions specific to the machine. Display machine parameters M5, M6 and M7 on the screen to check the coordinates concerned. 4. A command of G29 after return to the second, third or fourth reference point is carried out through the intermediate point of the last command for return to the reference point. A )2 01 3 YA M A ZA K IM Se K Use address P to specify the number of the required reference point (P2, P3 or P4). Return to the second reference point is automatically selected if P-command is omitted or zero, one, five or a greater integer is set at address P. al 1. ri 3. MEP205 ZA 2. 34 08 C 39 O R PO R A TI O N Fourth reference point Third reference point (c R#1 First reference point ig ht –X C op yr Intermediate point (x1, y1) G30P3Xx1Yy1 R#3 G29Xx2Yy2 (x2, y2) –Y MEP206 Third reference point 14-8 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 5. 14 Tool radius compensation function is temporarily cancelled during return to a reference point in the offsetting plane and made valid again for a return (by G29) from there. The cancellation and resumption of offsetting dimensions occur during movement from the intermediate point to the reference point and vice versa. R#3 –X Third reference point Intermediate point Tool center path Program path G30P3Xx1Yy1 G29Xx2Yy2 ts re s er ve d . (x1, y1) gh –Y (x2, y2) .A ll ri MEP207 The tool offset values are temporarily canceled, or used even, in return movement to the 2nd, 3rd or 4th reference point according as bit 2 of parameter F94 is set to “0” or “1.” 7. For the second, third, or fourth reference point return under machine locked status, movement from the middle point to the reference point is skipped. The next block is executed after the designated axis has arrived at the intermediate point. 8. For the second, third, or fourth reference point return in the mirror image mode, the mirror image is valid for movement from the starting point to the intermediate point and the axis moves in an opposite direction to the designated one. For movement from the intermediate point to the reference point, however, the mirror image becomes invalid and thus the axis moves to the reference point. K ZA A K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N 6. R#3 Third reference point 01 3 YA M A ZA –X –Y G30P3Xx1Yy1 ht (c )2 X axis mirror image yr ig Without mirror image C op MEP208 14-9 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-8 Reference Point Check Command: G27 1. Function and purpose G27 command performs a rapid positioning to the specified position, checks the final position for agreement with the specified reference point and, upon confirmation of the agreement, outputs a reference point return complete signal to the machine side as is the case with G28. For a machining program, therefore, of which the starting and the ending positions are the reference pont, this function is useful for checking whether the returning, i.e. the program itself, has been correctly executed to the end. Programming format G27 er ve d . 2. Xx1 Yy1 Zz1 Pp1 3. ts gh N 34 08 C 39 O R PO R A TI O Check command .A ll ri P1: First reference point check P2: Second reference point check P3: Third reference point check P4: Fourth reference point check Return control axis re s Check No. Detailed description The first reference point check will occur if the P code is omitted. N o. The number of axes for which reference point check can be done at the same time depends on the number of simultaneously controllable axes. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al An alarm will result if the designated reference point is not the final position on completion of this command. 14-10 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 14 14-9 Programmed Coordinate Rotation: G68/G69 Programmed coordinate rotation is performed to rotate the machining shape itself on the workpiece by rotating the workpiece coordinate system. Yp Dm Ym Cm Em Ep Dp Fm Cp er ve d . Fp Bm re s Xm Ap ts Am .A ll ri gh Bp Xp N W 34 08 C 39 O R PO R A TI O Zero point of co- 0 ordinate system (Center of rotation) Programmed coordinate path: MEP162 N o. Ap Bp Cp Dp Ep Fp Ap K ri al Machine coordinate path after coordinate rotation: 1. ZA A K IM Se Am Bm Cm Dm Em Fm Am Correlationships to other functions, and precautions Coordinate rotation is valid only for the automatic operation modes (tape operation, memory operation, and MDI); it is invalid for manual rapid traverse, handle feed, or reference point (zero point) return, whether it is automatic or manual. M A ZA 1. 01 3 YA Note 1: Even in the automatic operation mode, rotation does not occur during creeping feed for one-way positioning. Calculation for offset processing is performed lastly. That is, coordinate rotate processing using the designated program is performed and tool radius compensation, tool length offsetting, tool position offsetting, etc. follow. C op yr ig 2. ht (c )2 Note 2: If manual interruption is made (on the axes related to the coordinate rotation), automatic operation must not be executed for any subsequent absolute data commands. Axis movements may not describe the desired path. 3. Higher priority is given to coordinate rotation than to the mirror image function. If these two functions are selected, therefore, coordinate rotation will precede mirror image processing. 4. The current positions (POSITION items on the screen) represent the movements existing after coordinate rotation. If coordinate rotate processing is carried out for a single-axis command, therefore, simultaneous dual-axis movements will be displayed in general. 14-11 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 2. Programming format GnG68 __R_ re s er ve d . n: Plane selection code 17, 18, or 19 , : Coordinates of the center of rotation [Of the three axes (X, Y, Z), specify any two that correspond to the selected plane.] R: Angle of rotation (positive values for counterclockwise rotation) Set an angle from –360.000 to +360.000 degrees in 0.001 degree steps. ri gh ts +R MEP163 N .A ll (, ) Detailed description 1. The plane selection command code (G17, G18 or G19) need not be included in the block of G68; it will become valid even if given before the G68 block. 2. The position where the G68 command is executed becomes the center of rotation if the coordinates concerned (, ) are omitted. 3. The absolute data input mode must always be used for rotational center coordinates (, ). For the angle of rotation (R), either the absolute data input mode or the incremental data input mode is to be used, depending on whether G90 or G91 has been issued. 4. If coordinate rotation command is given in the mode of coordinate rotation, that command will be processed as a command for changing the center and angle of coordinate rotation. 5. Since program coordinate rotation is a function related to the workpiece coordinate system, the relationship between the fundamental machine coordinate system and the as-rotated workpiece coordinate system is as shown in the diagram below. K ZA Workp. coord. sys. Workp. coord. sys. R op yr ig ht (c )2 01 3 YA M A ZA K IM A Se ri al N o. 3. 34 08 C 39 O R PO R A TI O G69: (Coordinate rotate cancellation) This command code can be included in any block, whether independent from or together with other command codes. C R Workp. coord. sys. R Fundamental machine coordinate system MEP164 6. Do not use G68 (Programmed coordinate rotation) together with M98 (Figure rotation); otherwise the alarm 850 G68 AND M98 COMMANDS SAME BLOCK is raised. 14-12 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 14 14-10 Workpiece Coordinate System Setting and Selection: (G92) G54 to G59 1. Function and purpose - Workpiece coordinate systems are set to facilitate creation of a workpiece machining program having its origin set at a machining reference point for the intended workpiece. Commands G54 through G59 move the designated axis to the designated position on the workpiece coordinate system corresponding to the command code number. These six types of commands generate respective workpiece coordinate systems. 34 08 C 39 O R PO R A TI O Selecting a workpiece coordinate system (G54 to G59) (G90) G54 Xx1 Yy1 Zz1 1 (: Additional axis) .A ll Programming format N 2. ri gh ts re s er ve d . - Command G92 can be used to modify the current workpiece coordinate system in order that the current tool position be indicated by the specified coordinates. (The current tool position refers to a position that has incorporated tool radius compensation, tool length offset, and tool position offset data.) Command G92 also generates a virtual machine coordinate system according to which the current tool position is indicated by the specified coordinates. (The current tool position refers to a position that has incorporated tool radius compensation, tool length offset, and tool position offset data.) Setting the workpiece coordinate system (G54 to G59) (G54) G92 Xx1 Yy1 Zz1 1 (: Additional axis) o. Detailed description Tool radius compensation data for the designated axis is not cancelled by the selection of a new workpiece coordinate system using commands G54 to G59. 2. The coordinate system corresponding to G54 will always be selected upon turning-on. 3. Commands G54 through G59 are modal commands (of group 12). 4. Command G92 only moves the workpiece coordinate system. 5. The workpiece origins (reference points) of G54 to G59 must be externally preset with reference to the fundamental machine coordinate system. N 1. K ZA YA M A ZA K IM A Se ri al 3. 01 3 (#1) Reference point (zero point) Return position M –X (G54) Zero point of the fundamental machine coordinate system W1 –X (G55) G54 reference point –Y (G54) W2 –Y (G55) G55 reference point Setting on the WORK OFFSET display C op yr ig ht (c )2 –X R#1 G54 –Y 6. G55 X = –500 Y = –500 X = –2000 Y = –1000 MEP209 Settings of workpiece origin can be updated repeatedly (manually or by programming “G10 L2 Pp1 Xx1 Yy1 Zz1”). 14-13 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 7. New workpiece coordinate system 1 (G54) can be generated by setting G92 during the mode of G54. At the same time, other workpiece coordinate systems 2 through 6 (G55 through G59) are shifted parallel to the new workpiece coordinate system 1. R#1 (#1) Reference point (zero point) Return position M –X Zero point of the fundamental machine coordinate system [M] –X Virtual machine coordinate zero point by G92 –X (G54) er ve d Old workpiece coordinate system 2 (G55) W2 –X (G54’) –Y (G54) –Y (G55) New workpiece coordinate system 2 (G55) ts [W2] re s New workpiece coordinate system 1 (G54) [W1] –X (G55’) . Old workpiece coordinate system 1 (G54) W1 –X (G55) gh –Y –Y N –Y (G55’) .A ll ri –Y (G54’) 34 08 C 39 O R PO R A TI O MEP210 K A After power has been turned on, the fundamental machine coordinate system and workpiece coordinate systems will be set automatically according to the presettings when the first automatic (G28) or manual reference point return is completed. [1] [2] [3] G28X0Y0 G53X–100.Y–50. G53X0Y0 )2 01 3 YA Example 1: A Sample programs M 4. ZA K IM 8. ZA Se ri al N o. A virtual machine coordinate system is also formed in accordance with shifting of workpiece coordinate system by G92. After power has been turned on, the virtual machine coordinate system will coincide with the fundamental machine coordinate system by the first automatic (G28) or manual reference point return. When a virtual machine coordinate system is generated, new workpiece coordinate systems will be set by using the preset origins with reference to the virtual machine coordiate system. C op yr ig ht (c R#1 –X (#1) Reference point (zero point) Return position [1] [2] [3] M Current position –Y MEP211 If the coordinate data of the first reference point is 0 (zero), the zero point (origin) of the fundamental machine coordinate system and the reference point return position (#1) will agree. 14-14 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS Example 2: [1] G28X0Y0 [2] G90G00G53X0Y0 [3] G54X–500.Y–500. [4] G01G91X–500.F100 [5] Y–500. [6] X+500. 14 [7] Y+500. [8] G90G00G55X0Y0 [9] G01X–500.F200 [10] X0Y–500. [11] G90G28X0Y0 (#1) Reference point (zero point) Return position [1] –1500 –500 W1 [5] [11] –1000 [7] –1500 ri gh [6] MEP212 34 08 C 39 O R PO R A TI O N .A ll –Y (G54) –Y (G55) ts [4] re s [8] [10] –500 [3] W2 [9] er ve d M –X (G54) –X (G55) [2] . Current position Same machining as is given in Example 2 after shifting through (–500, –500) the workpiece coordinate system of G54 (provided that [3] through [10] in Example 2 have been registered in subprogram O1111): K (Not required if #1 ref. pt. = machine origin) Shift amount of workpiece coordinate system New workpiece coordinate system setting A ZA ri al N o. G28X0Y0 G90G00G53X0Y0 G54X–500.Y–500. G92X0Y0 M98P1111 K IM [1] [2] [3] [4] [5] Se Example 3: (#1) Reference point (zero point) Return position ZA [1] [2] Current position M A –X Old G55 coordinate system YA [3] [4] [3] 01 3 –X (G55) –X (G54’) New G55 coordinate system )2 M –X (G54) Old G54 coordinate system New G54 coordinate system W1 W2 –Y (G54) C op yr ig ht (c –X (G55’) –Y (G55’) –Y (G55) –Y (G54’) –Y Note : MEP213 If blocks [3] through [5] are used repeatedly, reference point return command G28 must be set at the end of the program since the workpiece coordinate systems will shift each time those blocks are executed. 14-15 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS Example 4: A. If one and the same machining is to be done for each of six identical workpieces placed on the coordinate systems of G54 through G59: Setting of workpiece origins X = –100.000 X = –100.000 X = –500.000 X = –500.000 X = –900.000 X = –900.000 Workpiece 1 2 3 4 5 6 N K ZA A ZA K IM Se ri al Y–5.Z–150.R–95.F40 Y–125. Y–175. Y–125. A Positioning program (Main program) At power-on (c )2 01 3 YA M G28X0Y0Z0 N1 G90G54M98P100 N2 G55M98P100 N3 G57M98P100 N4 G56M98P100 N5 G58M98P100 N6 G59M98P100 N7 G28X0Y0Z0 N8 M02 % ht ig yr op C .A ll 14-16 er ve d re s ri gh ts Face milling Drilling 1 Drilling 2 Drilling 3 Drilling 4 o. N6G98G84X–125. X–175. X–125. X–75. G80 M99 C. Positioning 34 08 C 39 O R PO R A TI O O100 N1G90G00G43X–50.Y–50.Z–100.H10 N2G01X–200.F50 Y–200. X–50. Y–50. N3G28X0Y0Z0 TM06 N4G98G81X–125. Y–75.Z–150.R–95.F40 X–175. Y–125. X–125. Y–175. X–75. Y–125. G80 N5G28X0Y0Z0 . Machining program (Subprogram) N B. Y = –100.000 ......... G54 Y = –500.000 ......... G55 Y = –100.000 ......... G56 Y = –500.000 ......... G57 Y = –100.000 ......... G58 Y = –500.000 ......... G59 Tapping 1 Tapping 2 Tapping 3 Tapping 4 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 900 mm 500 mm –X –X –X G58 200 mm 175 125 –X G56 W5 0 100 M 100 mm 75 50 G54 W1 W3 75 175 50 1 125 2 200 4 500 mm 3 (Workpiece 1) –Y –Y re s –Y . (Workpiece 3) er ve d (Workpiece 5) G55 W4 W2 34 08 C 39 O R PO R A TI O N .A ll W6 ts –X G57 gh –X G59 ri –X (Workpiece 6) (Workpiece 4) (Workpiece 2) –Y K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. –Y 14-17 14 –Y –Y Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-11 Additional Workpiece Coordinate System Setting and Selection: G54.1 1. Function and purpose In addition to the six standard systems G54 to G59, up to 300 sets of workpiece origin data can be used to facilitate program creation. Note 1: Local coordinate system setting is not available in G54.1 mode. Note 2: Setting a G52-command during G54.1 mode will cause the alarm 949 NO G52 IN G54.1 MODE. Programming format Selection of a workpiece coordinate system G54.1 Pn (n = 1 to 300) re s A. er ve d . 2. G54.1P48 Selection of P48 system ts Example: Omission of P and setting of “P0” function the same as “P1”. Setting a value other than integers from 0 to 300 at address P causes the alarm 809 ILLEGAL NUMBER INPUT. N Movement in a workpiece coodinate system 34 08 C 39 O R PO R A TI O G54.1Pn ( n = 1 to 300) G90 Xx Yy Zz G54.1P1 G90X0Y0Z0 N Setting of workpiece origin data al (n = 1 to 300) ZA ri G10 L20 Pn Xx Yy Zz G90G10L20P30X–255.Y–50. K IM Se Example: A C. Selection of P1 system Movement to P1-system origin (0, 0, 0) o. Example: K B. M Remarks on omission of P and/or L 01 3 A. (c )2 G10 L20 Pn Xx Yy Zz op yr ig ht G10 L20 Xx Yy Zz C Data at addresses X and Y are added to data of P30-system origin. YA Detailed description Data at addresses X and Y are set as data of P30-system origin. A ZA G91G10L20P30X–3.Y–5. 3. .A ll ri gh Note: When n = 1 to 300: Correct setting of data for Pn-system origin Otherwise: Alarm 809 ILLEGAL NUMBER INPUT Correct setting of workpiece origin data for the current system, except for G54- to G59-system (in which case: Alarm 807 ILLEGAL FORMAT) G10 Pn Xx Yy Zz Correct setting of workpiece origin data for the current system G10 Xx Yy Zz Correct setting of workpiece origin data for the current system 14-18 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS B. Precautions for programming Do not set together in a block of G54.1 or L20 any G-code that can refer to address P. Such G-codes are for example: G04 Pp G30 Pp G72 to G89 G65 Pp, M98 Pp Dwell Reference-point return Fixed cycle Subprogram call Local coordinate system setting is not available in G54.1 mode. Setting a G52 command during G54.1 mode will cause the alarm 949 NO G52 IN G54.1 MODE. Related system variables re s C. er ve d . Do not give a command of G49 in the same block with G54.1; otherwise an alam will be raised (822 ILLEGAL MODAL). gh ts The origin data of additional workpiece coordinate systems are assigned to system variables as listed-up in the following table. The total number of controllable axes depends on the machine specifications. ri Note: P1 #70001 to #70016 P2 #70021 to #70036 or 1st axis to 16th axis P1 #7001 to #7016 P2 #7021 to #7036 .A ll 16th axis N to 34 08 C 39 O R PO R A TI O 1st axis : : : : : #75961 to #75976 P300 #75981 to #75996 P47 #7921 to #7936 P48 #7941 to #7956 N P299 o. : K ZA or C op yr ig ht (c )2 01 3 YA M A ZA K IM 70000 + 20 (n – 1) + k (n = 1 to 300, k = 1 to 16) A Se ri al The variable number for the k-th axis origin of the “Pn” coordinate system can be calculated as follows: 14-19 7000 + 20 (n – 1) + k (n = 1 to 48, k = 1 to 16) Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS Sample programs Consecutive setting of origin data for all the 48 sets of additional workpiece coordinate system 480 470 460 30 20 10 P1 10 P2 20 P3 ri gh ts re s 30 . 1. er ve d 4. 460 N .A ll P46 34 08 C 39 O R PO R A TI O P47 480 K ZA Se ri al N o. P48 470 Setting in format “G10L20PpXxYyZz” O100 #100=1 P-No. initial. ZA K IM A Setting in assignment of variables O200 G90 #100=7001 Sys.-var.-No. initial. #101=10. #102=1 Counter initial. Origin setting WHILE[#102LT49]DO1 P-No. count-up #103=0 Counter initial. WHILE[#103LT2]DO2 #[#100]=#101 Sys.-var. Setting #100=#100+1 Sys.-var.-No. count-up #103=#103+1 Counter count-up END2 #100=#100+19 #101=#101+10. #102=#102+1 END1 M30 % C op yr ig ht (c )2 01 3 YA M A #101=10. WHILE[#100LT49]DO1 G90G10L20P#100X#101Y#101 #100=#100+1 #101=#101+10. END1 M30 % 14-20 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 2. 14 Consecutive application of all the 48 sets of additional workpiece coordinate system Provided that preparatory setting of origin data in P1 to P48 is completed in accordance with the 48 workpieces fixed on the table in the arrangement shown in the figure below: P08 P06 P07 P04 P02 P03 P01 P09 P11 P13 P12 P15 P14 P16 P22 P20 P21 P18 P19 P17 P25 P27 P29 P28 P31 P30 P32 P40 34 08 C 39 O R PO R A TI O N P26 .A ll ri P23 gh P24 ts re s P10 er ve d . P05 P38 P37 P39 P41 P43 P36 P34 P35 P45 P44 P47 P46 P48 K ZA A A M 01 3 )2 (c ht ig C op yr Profile ZA K IM Se O1001 (Subprg.) Reference-pt. return G43X–10.Y–0.Z–100.H10 P-No. initial. G01X–0. Absolute data input Y–30. Repeat while P-No.<49 X–10. Wpc. coordn. sys. Setting Y–10. Subprogram call G00G40Z10. P-No. count-up G98G81X–20.Y–15.Z–150.R5.F40 X–25.Y–20. Reset to reference-pt. X–20.Y–25. X–15.Y–20. G80 M99 % YA O1000 (Main prg.) G28XYZ #100=1 G90 WHILE[#100LT49]DO1 G54.1P#100 M98P1001 #100=#100+1 END1 G28Z G28XY M02 % ri al N o. P42 P33 14-21 Drilling Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 3. Application of additional systems via transmission into G54 to G59 Provided that preparatory setting of origin data in P1 to P24 is completed in accordance with the 24 sections of a workpiece fixed on the rotary table as shown in the figure below: P3 P20 P1 P19 P2 P21 P23 Y Z P5 . P6 er ve d P22 P4 P24 re s X N O2001 (Origin-data transference) #2=5221 Init.-var.-No. of 1. G-sys. #3=[#1–1] 20+7001 Init.-var.-No. of 1. P-sys. #5=0 Sys.-qty-counter cleared WHILE[#5LT6]DO1 Check f. sys.-qty. #6=#2 1.-ax.-var.-No. of receiver #7=#3 1.-ax.-var.-No. of transm. #4=0 Axis-qty-counter cleared WHILE[#4LT6]DO2 Check f. axis-qty. #[#6]=#[#7] Transmission of var.-data #6=#6+1 Axis-qty count-up f. recvr. #7=#7+1 Axis-qty count-up f. transm. #4=#4+1 Axis-qty counter up END2 #2=#2+20 Init.-var.-No. of next G-sys. #3=#3+20 Init.-var.-No. of next P-sys. #5=#5+1 Sys.-qty-counter up END1 M99 % 01 3 op yr ig ht (c )2 O2002 (Drilling subprg.) G54 M98 H100 G55 M98 H100 G56 M98 H100 G57 M98 H100 G58 M98 H100 G59 M98 H100 G28 Z0 M99 N100G98G81X–20.Y–15.Z–150.R5.F40 X–25. Y–20. X–20. Y–25. X–15. Y–20. G80 G28Z M99 % C K ZA A YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O O2000 (Main prg.) G28 XYZB Reference-pt. return G90 Absolute data input G00 B0 Table indexed f. 1. surf. G65 P2001A1 Origin-data loading M98 P2002 Drilling-subprg. call G00 B90. Table indexed f. 2. surf. G65 P2001A7 M98 P2002 G00 B180. Table indexed f. 3. surf. G65 P2001A13 M98 P2002 G00 B270. Table indexed f. 4. surf. G65 P2001A19 M98 P2002 G28 XYB Reset to reference-pt. M02 % .A ll ri gh ts B Drilling in G54-system Drilling in G55-system Drilling in G56-system Drilling in G57-system Drilling in G58-system Drilling in G59-system Fixed cycle for drilling 14-22 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 14 Simplified version of Example 3 program in application of “G54.1 Pp” 4. Provided that preparatory setting of origin data in P1 to P24 is completed in accordance with the 24 sections of a workpiece fixed on the rotary table as shown in the figure below: P3 P20 P1 P19 P2 P21 P23 Y Z P5 P6 . P22 er ve d P4 P24 re s X .A ll N Reference-point return Selection of absolut data input Indexing of table for 1st surface 34 08 C 39 O R PO R A TI O O3000 G28 XYZB G90 G00 B0 G65 P3001A1 G00 B90. G65 P3001A7 G00 B180. G65 P3001A13 G00 B270. G65 P3001A19 G28 XYB M30 % O3001 #100=#1 #101=0 WHILE[#101LT6]DO1 G54.1P#100 M98H100 #100=#100+1 #101=#101+1 END1 G28Z0 M99 N100G98G81X–20.Y–15.Z–150.R5.F40 X–25. Y–20. X–20. Y–25. X–15. Y–20. G80 G28Z M99 % ri gh ts B Indexing of table for 2nd surface ZA K Indexing of table for 4th surface A Reset to reference-point Initialization of P-No. Initialization of counter Setting of additional workpiece coordinate system Call for drilling subroutine P-No. count-up Checking counter count-up Fixed cycle for drilling C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. Indexing of table for 3rd surface 14-23 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-12 Local Coordinate System Setting: G52 1. Function and purpose A local coordinate system in which the designated position becomes the program origin can be set on the current workpiece coordinate system by setting command code G52. Command code G52 can also be used instead of G92 to update any positional shift between the machining program origin and the workpiece origin. 2. Programming format Detailed description er ve d 3. . G52 Xx1 Yy1 Zz1 1 (: Additional axis) N .A ll ri gh ts re s Command G52, which causes no machine movement, is valid until a new G52 is issued. Command G52 is therefore convenient for using a new coordinate system without changing the origin of the workpiece coordinate system. The local coordinate system offset data is cleared by execution of either an automatic referencepoint return operation, or a manual reference-point (zero point) return operation using the dog method following power-on. 34 08 C 39 O R PO R A TI O (G91) G52X_ Y_ Incremental value Ln Absolute value Ln Ln (G90) G52 X_ Y_ K al N o. Absolute value ZA Workpiece coordinate system Workpiece coordinate system offset (CRT setting, G10 G54 X_ Y_ ) K IM A Se ri Wn (n = 1 thru 6) Reference point Local coordinate systems R ZA External workpiece coordinate system setting (PC input, CRT setting) Machine coordinate system A M YA M MEP215 C op yr ig ht (c )2 01 3 Coordinates given in the absolute data input mode (G90) refer to the local coordinate system. 14-24 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 4. 14 Sample programs Setting local coordinates in the absolute data input mode (local coordinate system offset data is not integrated) [1] G28X0Y0 [2] G00G90X1.Y1. [3] G92X0Y0 [4] G00X500.Y500 [5] G52X1.Y1. [6] G00X0Y0 [7] G01X500.F100 [8] Y500. [9] G52X0Y0 [10] G00X0Y0 [6] 2000 [5] [4] 1500 [3] [2] [W1] L1 Local coordinate system established by [5] o. 1000 ri 34 08 C 39 O R PO R A TI O [7] .A ll [8] [9] 2500 N Y gh ts re s er ve d . 1. N [10] 500 ZA 1000 1500 ZA R#1 W1 New coordinate system set by [3], which coincides with the local coordinate system set by [9] A [1] K IM Se ri 500 K al [W1] 2500 3000 X M A Current position 2000 YA MEP216 C op yr ig ht (c )2 01 3 The local coordinate system is established by [5] and cancelled by [9], and coincides with the coordinate system of [3]. 14-25 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 2. Setting local coordinates in the incremental data input mode (local coordinate system offset data is integrated) [1] G28X0Y0 (a) O100 [2] G92X0Y0 (b) G90G00X0Y0 [3] G91G52X500.Y500. (c) G01X500. [4] M98P100 (d) Y500. [5] G52X1.Y1. (e) G91 [6] M98P100 (f) M99 [7] G52X–1.5Y–1.5 [8] G00G90X0Y0 re s er ve d . M02 Y’’ ts Y’ 2500 (d) [8] [6] (c) [W1] L2 (d) o. [4] (c) ri 1000 Current position 2000 New coordinate system set by [3] 2500 3000 X Coincides with the local coordinate system set by [7] A ZA R#1 W1 1500 Se 500 [8] K IM [1] al [W1] L1 ZA [3] [2] X’ N 500 A (b) Local coordinate system established by [5] K 1000 YA M MEP217 ig ht (c )2 01 3 Block [3] generates local coordinate system X’-Y’ at the position of (500, 500) in the X-Y coordinate system. Block [5] generates local coordinate system X”-Y” at the position of (1000, 1000) in the X’-Y’ coordinate system. Block [7] generates a local coordinate system at the position (–1500, –1500) in the X”-Y” coordinate system. That is, the local coordinate system and the X-Y coordinate system coincide, which means that the former has been cancelled. C op yr X’’ 34 08 C 39 O R PO R A TI O 1500 N 2000 .A ll ri gh Y 14-26 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 3. 14 Combined use of local coordinate system and workpiece coordinate system [1] G28X0Y0 (a) O200 [2] G00G90G54X0Y0 (b) G00X0Y0 [3] G52X500.Y500. (c) G01X500.F100 [4] M98P200 (d) Y500. [5] G00G90G55X0Y0 (e) M99 [6] M98P200 % [7] G00G90G54X0Y0 G55 X 1000 Y 500 1000 2000 Workpiece origin data re s G54 er ve d . M02 2500 ri (d) .A ll Y gh ts 3000 (b) G55 2000 N (c) [5] 34 08 C 39 O R PO R A TI O W2 (d) 1500 (b) o. 1000 ZA 500 A R#1 W1 1000 K IM [1] Se ri al 500 Local coordinate system established by [3] G54 K N [3] [2] [7] (c) [W1] L1 1500 2000 2500 3000 X ZA Current position A MEP218 YA M Block [3] generates a local coordinate system at the position of (500, 500) in the G54 coordinate system no local coordinate system is generated in the G55 coordinate system. )2 01 3 Block [7] performs a movement to the local coordinate system reference point (zero point) of G54. (c The local coordinate system can be cancelled using this format: C op yr ig ht G90 G54 G52 X0 Y0 14-27 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 4. Combined use of G54 workpiece coordinate system and multiple local coordinate systems [1] G28X0Y0 (a) O300 [2] G00G90G54X0Y0 (b) G00X0Y0 [3] M98P300 (c) G01X500.F100 [4] G52X1.Y1. (d) Y500. [5] M98P300 (e) X0Y0 [6] G52X2.Y2. (f) M99 [7] M98P300 % [8] G52X0Y0 er ve d . M02 Workpiece origin data gh ts 500 500 re s G54 X Y ri 3000 .A ll [7] N 2500 34 08 C 39 O R PO R A TI O Local coordinate system established by [6] [W1] L2 2000 [5] 1500 o. [W1] L1 (b) 1000 G54 A 1500 ZA 500 2000 2500 3000 A R#1 ZA ri [3] (e) (c) W1 K IM [1] [8] [2] Se 500 al 1000 Local coordinate system established by [4] K N (d) M Current position 01 3 YA MEP219 C op yr ig ht (c )2 Block [4] generates a local coordinate system at the position of (1000, 1000) in the G54 coordinate system. Block [6] generates a local coordinate system at the position of (2000, 2000) in the G54 coordinate system. Block [8] makes the local coordinate system coincide with the G54 coordinate system. 14-28 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 14 14-13 Reading/Writing of MAZATROL Program Basic Coordinates The basic coordinates of a MAZATROL program can be read or rewritten by using system variables #5341 to #5349. System variables for MAZATROL basic coordinates (WPC) Variables Function Variables Function #5341 WPC-X #5345 WPC-C #5342 WPC-Y #5347/#5348 WPC-th #5343 WPC-Z #5349 WPC-R.T #5344 WPC-4 er ve d . Note 1: Use the system variable #5348 to read the basic coordinate WPC-th in a macroprogram called by a subprogram unit, since #5347 is ineffective for that purpose. ts re s Note 2: Use the system variable #5347 to rewrite the basic coordinate WPC-th, since #5348 is a read-only variable. .A ll ri gh Note 3: System variable #5349 is only effective for machines equipped with an additional table on condition that bit 4 of parameter D106 is set to “1” (Table selection enabled). 34 08 C 39 O R PO R A TI O N Main program (MAZATROL) UNo. UNIT X 1 WPC-0 –100. o. Macroprogram (EIA/ISO) K ZA A ZA K IM Se ri al N UNo. UNIT . .. . 5 SUB PRO . . . . . . G65P9998X .......... M99 YA M A The WPC coordinates of line UNo. 1 can be read or rewritten. ht (c )2 01 3 Note 4: For updating the basic coordinates, do not forget to select the [MEASURE MACRO] menu function in entering a subprogram unit for the macroprogram concerned (WNo. 9998); otherwise the new coordinates may not always be used in time for the execution of the machining unit immediately following the subprogram unit. C op yr ig Note 5: On the other hand, do not select the [MEASURE MACRO] menu function unless the above macroprogram (WNo. 9998) is to be used. Refer to the section of subprogram unit in the PROGRAMMING MANUAL (MAZATROL Program) for details on data setting for subprogram call. 14-29 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-13-1 Rewriting The basic coordinates cannot be rewritten just by entering the data into #5341 to #5347 and #5349. It is required to create a macroprogram in the following format: 1. Macroprogramming format Macroprogram to be prepared by the user re s er ve d . G65P9998X_Y_Z_D_B_C_ M99 Z: WPC-Z D: WPC-th B: WPC-4 C: WPC-C A: WPC-R.T .A ll Y: WPC-Y N X: WPC-X ri gh ts At the end of macroprogramming, call the rewriting macroprogram (WNo. 9998). At this time, assign new coordinates as arguments. The relationship between each argument and axis is as follows: It is not possible to rewrite, using the macroprogram, the R. T (Rotary Table) setting, a special item in the basic coordinate unit (WPC) if NOT USE is selected under ROT. TABLE in the table selection unit (TABLE). K Rewriting macroprogram al 2. N o. Note : 34 08 C 39 O R PO R A TI O Only the coordinates assigned with the respective argument are rewritten. The argument data is handled as data having the decimal point. A ZA A WPC-X rewritten 01 3 YA M IF[#24EQ#0]GOTO10 #5341=#24 #50449=#24 #50467=#50467OR32 N10 IF[#25EQ#0]GOTO20 Branching to N70 if executed on the TOOL PATH CHECK or VIRTUAL MACHINING display ZA O9998 IF[#50600EQ0]GOTO70 K IM Se ri The rewriting macroprogram (WNo. 9998) is shown below. WPC-Y rewritten yr ig ht (c )2 #5342=#25 #50447=#25 #50467=#50467OR64 N20 IF[#26EQ#0]GOTO30 C op #5343=#26 #50445=#26 #50467=#50467OR128 N30 IF[#7EQ#0]GOTO40 #5347=#7 #50441=#7 #50467=#50467OR512 WPC-Z rewritten WPC-th rewritten 14-30 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 14 N40 IF[#2EQ#0]GOTO45 #5344=#2 #50443=#2 #50467=#50467OR256 N45 IF[#3EQ#0]GOTO50 WPC-4 rewritten #5345=#3 #58161=#3 #50467=#50467OR2048 N50 IF[#1EQ#0]GOTO60 #5349=#1 #58300=#1 #50467=#50467OR16384 N60 er ve d . WPC-C rewritten 34 08 C 39 O R PO R A TI O N .A ll ri Indispensable macro statements for rewriting gh #50467=#50467OR-65536 #50499=#50499OR1 N70 M99 % ts re s WPC-R.T rewritten Note 1: The execution of the macroprogram (O9998) causes an alarm (191 FILE SYSTEM I/O ERROR) if there are no MAZATROL program’s basic coordinates being validated in the flow of program execution. N o. Note 2: The last two macro statements with #50467 and #50499 are indispensable for the execution of the macroprogram, irrespective of the axis coordinates to be rewritten. K ZA A K IM Se ri al Note 3: To write a rotational axis’ coordinate in the mode of inch data input, ― use variable #4206 to check whether inch or metric data input is currently active ― the corresponding system variable should be replaced by the tenth (1/10) of the desired value (angle; in degrees). M A ZA Example : To replace the WPC-C value with 100 degrees (°), the corresponding system variable is to be replaced as follows: #5345=10 or #5345=10. C op yr ig ht (c )2 01 3 YA Note 4: In the execution on the TOOL PATH CHECK display, the command concerned in an EIA/ISO subprogram cannot rewrite the basic coordinates of the MAZATROL main program. 14-31 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-14 Workpiece Coordinate System Rotation 1. Function and purpose The function refers to rotating the workpiece coordinate system around the position of the specified machine coordinates. The machining program can be rotated in its entirety as required for the actual inclination of the workpiece. Programming format Yy Xx Zz Rr Rr Rr Xx Zz Yy Yy Xx Zz Ii Kk Jj X-Y plane Z-X plane Y-Z plane Jj Ii Kk er ve d . Xx Zz Yy X-Y plane Z-X plane Y-Z plane re s (G17) G92.5 (G18) G92.5 (G19) G92.5 or (G17) G92.5 (G18) G92.5 (G19) G92.5 ts 2. Coordinates of the rotational center. The position along the two axes of the previously selected X-Y, Z-X, or Y-Z plane must be designated in machine coordinates. The designation for an axis not corresponding to the plane will be ignored. R: Angle of rotation. Designate the rotational angle for the coordinate system. A positive value refers to a counterclockwise rotation. i, j, k : Axial component vectors. The angle for coordinate system rotation can also be designated in axial component vectors corresponding to the previously selected plane. The designation for an axis not corresponding to the plane will be ignored. 34 08 C 39 O R PO R A TI O N .A ll ri gh x, y, z : A ZA K Workpiece coordinate system ZA K IM Se ri al N o. Y x 01 3 YA M A r Machine coordinate )2 X (c Machine origin y ig ht r i C op yr Rotational center j Workpiece coordinate system rotation Range and unit for angle data setting Setting method Setting range Setting unit Axial component vectors Metric system 0 to ±99999.999 0.001 mm (i, j, k) Inch system 0 to ±9999.9999 0.0001 in 0 to ±99999.999° 0.001° Angle of rotation ( r ) Metric system Inch system 14-32 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS Detailed description 1. Irrespective of the actual mode for incremental or absolute data input, the values at addesses X, Y, Z, or I, J, K as well as R are always referred to the machine coordinate system. 2. Two methods are available to designate a rotational angle: (a) Designation in rotational angle (r), or (b) Designation in axial component vectors (i, j, k). 3. If angle data are entered using both methods (a) and (b) above, the rotational angle (at address R) will govern. 4. If, during rotation of the workpiece coordinate system, a rotational angle of zero degrees is designated (by setting G92.5 R0, for example), the coordinate system rotation will be cancelled, irrespective of the data input mode of G90 (absolute) or G91 (incremental). The next move command will then be executed for the ending point in the original (not rotated) workpiece coordinate system. ts re s er ve d . 3. 14 .A ll ri gh Refer to Article 1 under “5. Precautions” for more information. The rotational center coordinates will be retained and automatically applied for a succeeding rotation command without data designation at addresses X, Y, and/or Z. 34 08 C 39 O R PO R A TI O N 5. N1 G17 Selection of the X-Y plane N2 G92.5X100.Y100.R45. Rotation of the workpiece coordinate system through 45 deg around the point of (X, Y) = (100, 100) N3 G92.5R0 Cancellation of the workpiece coordinate system rotation N4 G17G92.5R90. Rotation of the workpiece coordinate system through 90 deg around the center last programmed (X100, % Y100) K ZA Omission of addresses R and I, J , K is regarded as a rotational angle designation of zero degrees. K IM 6. A Se ri al N o. Example: “G92.5 X0. Y0.” is equivalent to “G92.5 X0. Y0. R0”. A ZA Example: Alarm No. 809 ILLEGAL NUMBER INPUT will be displayed if the specified axial component vectors (i, j, k) or rotational angle (r) oversteps the effective setting range. 8. Plane selection (by codes G17, G18, and G19) need not be included in the block of G92.5, if the rotation shall be performed on the currently active plane. 9. The designation for an axis not corresponding to the selected plane will be ignored. The designations at addresses Z and K in a block of G92.5, for example, will be ignored in the mode of G17 (X-Y plane). ig ht (c )2 01 3 YA M 7. C op yr Example: The second block shown below rotates the workpiece coordinate system through –1 63.435 , calculation from tan (2/1), around the point of (X, Y) = (10, 20) on the X-Y plane, and the values at Z and K are ignored for the rotation. G17 G92.5X10.Y20.Z30.I1.J2.K3. Even the ignored axial values at X, Y, and Z in a G92.5 block are retained as well as the values actually used (see Article 5 above) and, for example, if the G92.5 block shown above is followed by G19 G92.5J2.K3. then the workpiece coordinate system will be rotated around the point of (Y, Z) = (20, –1 30) through 56.301°, calculation from tan (3/2), on the Y-Z plane (G19). 14-33 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS Examples of operation Rotation around the machine origin. G55 (Work Offset) X100. Y100. Rotation around the machine origin through 90 deg gh ts N6 N7 N8 N9 N10 N11 % G28X0Y0 G17 G90 G55 G92.5X0Y0R90. ................................ (or G92.5X0Y0I0J1.) G0X0Y0 G1X100.F1000. Y200. X0. Y0. M30 . N1 N2 N3 N4 N5 er ve d 1. re s 4. ri Workpiece coordinates systems X .A ll Y 34 08 C 39 O R PO R A TI O N Y 300 N N8 al N9 K ZA Se 100 W2 W2' ZA N6 –200 YA M A –300 –100 X Workpiece origin without rotation K IM Workpiece origin after rotation A N10 ri N7 Y Programmed contour without workpiece coordinate system rotation 200 o. Programmed contour after workpiece coordinate system rotation 90° 0 R M X 100 200 300 )2 01 3 Machine coordinate system C op yr ig ht (c The block of G92.5 under N5 rotates the workpiece coordinate system through 90 degrees around the origin of the machine coordinate system. For N6 onward, the machine operates according to the rotated workpiece coordinate system. The above example of the vector setting method for the same 90-deg rotation is based on the following calculation: = tan –1 (J/I) = tan –1 (1/0) = 90°. 14-34 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 2. 14 Rotation around the workpiece origin. G55 (Work Offset) X100. Y100. Rotation through 45 deg around the point of machine coordinates X=100 and Y=100 (that is, the origin of the G55 workpiece coordinate system). er ve d . N1 G28X0Y0Z0 N2 G17 N3 G55 N4 G90 N5 G92.5X100.Y100.R45. ..................... N6 G81X50.Y50.Z–25.R–5.F500 N7 X100. N8 X150. N9 M30 % 300 ts re s Y .A ll ri gh Programmed contour after workpiece coordinate system rotation Workpiece coordinates systems Workpiece coordinate system after rotation 34 08 C 39 O R PO R A TI O Programmed contour without workpiece coordinate system rotation o. 45° ZA K IM A ri al W2 Se R M Workpiece coordinate system without rotation N W2’ X 200 300 M A ZA 100 K 100 N Hole machining 200 )2 01 3 YA The block of G92.5 under N5 rotates the workpiece coordinate system around its own origin through 45 degrees. For N6 onward, the machine operates according to the rotated workpiece coordinate system. C op yr ig ht (c Set the rotational center on the workpiece origin, as shown in this example, to rotate the current workpiece coordinate system around its own origin. 14-35 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS Programmed coordinate rotation (G68) in the mode of G92.5 . G28X0Y0 G55 (Work Offset) G17 X100. G55 Y100. G90 G92.5X0Y0R90. ............................... [1] G68X50.Y50.R45. ........................... [2] G0X0Y0 G1X100.F500 Y100. X0 Y0 M30 er ve d N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 % re s 3. gh ts Y ri Programmed contour without both [1] and [2] G68 rot. ctr. N8 N11 N10 o. N9 34 08 C 39 O R PO R A TI O 200 W2 ZA Programmed contour without [1] ZA X –100 R M 100 200 01 3 YA M A –200 G68 rot. ctr. K 100 K IM Se N7 A ri al N W2’ Programmed contour with both [1] and [2] N .A ll Programmed contour without [2] C op yr ig ht (c )2 In a combined use with G92.5, the center of programmed coordinate rotation by G68 will be a position which corresponds with the workpiece coordinate system rotation designated by the G92.5 command. It will not affect operation even if the order of the program blocks marked [1] and [2] above is reversed. 14-36 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS Figure rotation (M98) in the mode of G92.5 G28X0Y0 G17 G55 G90 G92.5X0Y0R90. ......................... G0X0Y0 M98H10I–50.J50.L4 M30 G55 (Work Offset) X100. Y100. Rotation through 90 deg around the origin of the machine coordinate system er ve d . G1X100.Y50.F500 X0Y100. M99 gh ts N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 % re s 4. 14 .A ll ri Y 300 34 08 C 39 O R PO R A TI O N Programmed contour without workpiece coordinate system rotation 200 K N W2’ ZA ri al N10(1) A Fig. rot. ctr. –200 N10(3) N11(4) W2 N6 N10(4) X –100 R M 100 200 N11(3) Serial number of repetition C op yr ig ht (c )2 01 3 YA M –300 A ZA N11(2) 100 ’ K IM Se N10(2) Fig. rot. ctr. o. N11(1) Programmed contour after workpiece coordinate system rotation In a combined use with G92.5, the center of figure rotation by M98 will be a position which corresponds with the workpiece coordinate system rotation designated by the G92.5 command. 14-37 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 5. Scaling (G51) in the mode of G92.5 ts re s er ve d . N1 G28X0Y0 G55 (Work Offset) N2 G17 X100. N3 G55 Y100. N4 G90 N5 G92.5X0Y0R90. ................................... [1] N6 G51X0Y0P2. .......................................... [2] N7 G0X0Y0 N8 G1X50.F500 N9 Y50. N10 X0 N11 Y0 N12 M30 % ri gh Y Programmed contour without [2] 34 08 C 39 O R PO R A TI O N .A ll Programmed contour with both [1] and [2] 200 N9 N8 N11 W2 Programmed contour without both [1] and [2] A K IM Se Programmed contour without [2] 100 ZA ri al W2’ K N o. N10 A ZA N7 –100 X R M 100 200 )2 01 3 YA M –200 C op yr ig ht (c In a combined use with G92.5, the scaling center will be a position which corresponds with the workpiece coordinate system rotation designated by the G92.5 command. 14-38 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS Mirror image in the mode of G92.5 G-code mirror image Programmed contour without [1] G55 (Work Offset) X100. Y100. . [1] [2] er ve d G28X0Y0 G17 G55 G90 G92.5X0Y0R90. .............................. G51.1X–50. ..................................... G0X0Y0 G1X100.F500 Y100. X0Y0 M30 re s N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 % Y Mirror axis (Without G92.5) .A ll ri 200 ts a) gh 6. 14 34 08 C 39 O R PO R A TI O N Programmed contour without [2] 100 W2’ Programmed contour without both [1] and [2] K ZA –100 M ZA N10 X R N8 M A Programmed contour with both [1] and [2] K IM –200 N7 A Se ri al N o. Mirror axis (Without G92.5) W2 YA N9 C op yr ig ht (c )2 01 3 –100 14-39 100 200 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS M-code mirror image G28X0Y0 G17 G55 G90 G92.5X0Y0R90. ................................. M91. ......................................................... G0X0Y0 G1X100.F500 Y100. X0Y0 M30 G55 (Work Offset) X100. Y100. [1] [2] Programmed contour without [2] re s er ve d . N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 % Programmed contour without both [1] and [2] Y ts b) ri gh 200 Mirror axis (With G92.5) 34 08 C 39 O R PO R A TI O N .A ll Programmed contour without [1] W2’ W2 100 N7 o. N10 –100 K Mirror axis (Without G92.5) R X M 100 200 K IM –200 A Se ri N9 ZA al N N8 01 3 YA M A ZA Programmed contour with both [1] and [2] C op yr ig ht (c )2 In a combined use with G92.5, the axis of symmetry for G-code or M-code mirror image will be set in accordance with the workpiece coordinate system rotation designated by the G92.5 command. 14-40 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS Coordinate system setting (G92) in the mode of G92.5 . G28X0Y0 G55 (Work Offset) G17 X100. G55 Y100. G90 G92.5X0Y0R90. .............................. [1] G92X–100.Y100. ............................ [2] G0X0Y0 G1X100.F500 Y100. X0Y0 M30 er ve d N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 % Programmed contour with both [1] and [2] Y ts 200 ri N N8 .A ll N10 gh N9 Programmed contour without [2] re s 7. 34 08 C 39 O R PO R A TI O W2’ 100 W2 Programmed contour without both [1] and [2] K 200 X M R 100 A ZA K IM Se –100 ZA –200 A ri al N o. N7 M –100 01 3 YA Programmed contour without [1] C op yr ig ht (c )2 Coordinate system setting by a G92 block after G92.5 will be performed in reference to the coordinate system rotation designated by the G92.5 command. 14-41 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS Precautions If, during rotation of the workpiece coordinate system, a rotational angle of zero degrees is designated (by setting G92.5 R0, for example), the coordinate system rotation will be cancelled, irrespective of the data input mode of G90 (absolute) or G91 (incremental). The next move command will then be executed for the ending point in the original (not rotated) workpiece coordinate system. For absolute data input ri Example 2: G28X0Y0 G17G92.5X0Y0R20. G90G01Y50.F1000. X100. G92.5R0 ........................................ Command for 0-deg rotation Y0 ................................................... Motion to (X100, Y0) X0 M30 al N o. 34 08 C 39 O R PO R A TI O N .A ll N1 N2 N3 N4 N5 N6 N7 N8 % K ZA K IM Y A Se ri Programmed contour for Examples 1 and 2 above Programmed contour with N2 (Workpiece coordinate system rotation) A ZA N4 YA M 50 N6 01 3 Programmed contour without N2 (c )2 N3 ht N7 X 0 100 C op yr ig . G28X0Y0 G17G92.5X0Y0R20. G91G01Y50.F1000. X100. G92.5R0 ........................................ Command for 0-deg rotation Y–50.............................................. Motion to (X100, Y0) X–100. M30 ts N1 N2 N3 N4 N5 N6 N7 N8 % For incremental data input er ve d Example 1: re s 1. gh 5. 14-42 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 2. 14 Use a linear motion command (with G00 or G01) for the first movement to be executed after G92.5 command. Circular interpolation in such a case, as shown below, would have to take place from the current position A, which refers to the original workpiece coordinate system, to the ending point B’ to which the point B should be shifted in accordance with the rotation. As a result, the radii of the starting and ending points would differ too significantly and the alarm No. 817 INCORRECT ARC DATA would be caused. Example: er ve d . G28X0Y0 G91G01X50.F1000. G17G92.5X0Y0R20. G02X40.Y40.I40. M30 ts re s N1 N2 N3 N4 N5 % N .A ll ri gh Circular interpolation as the first motion after G92.5 34 08 C 39 O R PO R A TI O B' o. Programmed contour B without N2 K ZA Programmed contour without N3 A 20° ZA K IM Se ri al N 40 A 50 M A 01 3 Re 90 Rs YA 0 Center of arc Rs : Arc radius for the starting point Re : Arc radius for the ending point yr ig ht (c )2 Alarm for incorrect circular command C op 3. Set a G92.5 command in the mode of G40. 4. The machine will operate on the rotated coordinate system for an MDI interruption during the mode of G92.5. 5. For a manual interruption during the mode of G92.5 using the JOG or handle feed mode, the machine will operate independently of the coordinate system rotation. 14-43 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 6. Differences between workpiece coordinate system rotation and programmed coordinate rotation. Function name Workpiece coordinate system rotation Programmed coordinate rotation System to be rotated Workpiece coordinate system Local coordinate system Programming format (G17) G92.5 Xx Yy Rr (G17) G68 Xx Yy Rr (G18) G92.5 Yy Zz Rr (G18) G68 Yy Zz Rr (G19) G92.5 Zz Xx Rr (G19) G68 Zz Xx Rr (Angle) or G92.5 Xx Yy Ii Jj (G18) G92.5 Yy Zz Jj Kk (G19) G92.5 Zz Xx Kk Ii (Vector comp.) . (G17) er ve d Operation r ts re s Workpiece coordinate system gh x Local coordinate system N .A ll ri r 34 08 C 39 O R PO R A TI O y r j i Rotational center Designation at addresses X, Y, Z Rotational center coordinates Designation at R (angle) or at I, J, K (vector components) Machine coordinate system Designation at addresses X, Y, Z Designation at R (angle) Retained Retained ZA Cleared Cleared Cleared Cleared A ZA Retained M Resumption of readiness after emergency stop K IM key A ri al Retained M02/M30 YA Resetting or M02/M30 cancels the G92.5 mode itself, while the information on the rotational center, etc., at related addresses is retained as indicated above. C op yr ig ht (c )2 01 3 Note : Power-off on Se Information on center and angle of rotation cleared? K N o. Angle of rotation Workpiece coordinate system 14-44 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 14 14-15 Three-Dimensional Coordinate Conversion ON/OFF: G68/G69 (Option) 1. Function and purpose The three-dimensional (3D) coordinate conversion mode makes it possible for a new coordinate system to be defined by rotating the X-axis, Y-axis, or Z-axis of the currently valid workpiece coordinate system and moving the workpiece origin in parallel to that axis. Thus, definition of any plane on a space allows creation of a program assuming that the plane is an X-Y plane. Programming format G68 [Xx0 Yy0 Zz0] Ii Jj Kk Rr Where . ............................................. 3D coordinate conversion mode off er ve d G69 ...... 3D coordinate conversion mode on x0, y0, z0 : Rotational center coordinates (Absolute) i, j, k : Axis of rotation (1: Valid, 0: Invalid) gh ri Angle and direction of rotation of the coordinate system (the clockwise rotational direction when the positive side of the rotational axis is seen from the center of rotation, is taken as a plus direction) 34 08 C 39 O R PO R A TI O N .A ll r: ts I : X-axis J : Y-axis K : Z-axis re s 2. Example: G68X0Y0Z0 I1J0K0 R–90. o. Rotates the coordinate system counterclockwise through 90°. al N Sets the X-axis as the axis of rotation of the coordinate system. K ZA A K IM Se ri Sets the workpiece origin as the center of rotation. Z Y X X Z yr ig ht (c )2 01 3 YA M A ZA Y C op NM221-00049 14-45 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS <Precautions> If X, Y, or Z is omitted, the workpiece origin in the currently valid workpiece coordinate system will become rotational center coordinates. The charatcters I, J, and K must all be set. Omission of even one of these three characters results in alarm 807 ILLEGAL FORMAT. Omission of all the three characters makes program coordinate rotation valid, instead of 3D coorinate conversion. G68X0Y0Z0I1K0R–45. Format error G68X0Y0Z0R–45. Program coordinate rotation ON Setting of 0 in all the arguments of I, J, and K also results in alarm 807 ILLEGAL FORMAT. G68X0Y0Z0I1J1K0R–90. er ve d . Setting of 1 in the arguments of two or more of the three characters (I, J, and K) also results in alarm 807 ILLEGEAL FORMAT. Format error ts re s Setting of command G68 in the absence of a 3D coordinate conversion option results in alarm 942 NO 3-D CONVERSION OPTION. .A ll ri gh Setting of an illegal G-code during the 3D coordinate conversion mode results in alarm 943 CONVERTING IN 3-D CORDINATES. G68I1J0K0R-90. G00X0Y0 G43Z50.H01 G01Z-1. Y50. G02X100.R50. G01Y0 G01Z50. G69 G91G28Z0 G28X0Y0 M30 ZA [10] [11] [12] [13] [14] [15] [16] [17] [18] (c )2 01 3 N02 YA M A ZA K IM Se K N [1] [2] [3] [4] [5] [6] [7] [8] [9] A G90G00G40G49G80 G54X0Y-100. G43Z50.H01 G01Z-1.F1200 Y-50. G02X100.R50. G01Y-100. G01Z50. G91G28Z0 G28X0Y0 G90G00G40G49G80 G54G00A90. ri N01 o. Sample program al 3. 34 08 C 39 O R PO R A TI O N See “5. Relationship to other functions” for the listing of illegal G-codes. ht [11] Program origin yr ig [12] Program origin C op [5] [13] [17] X [15] [3] [6] [1] [8] [2] [14] [16] [4] Y Z [10] [18] [7] Z [9] Y Machine origin X Machine origin NM221-00050 14-46 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 4. 14 3D coordinate conversion and a program coordinate system Use of command G68 allows the coordinates of the rotational center in the currently valid coordinate system to be shifted to the designated position (X, Y, Z) and the corresponding graphics to be rotated through the designated angle of rotation (R) in the designated direction of rotational center (I, J, K). Thus, a new program coordinate system can be set. [1] G90 G54 X0 Y0 [2] G68 X10.Y0 Z0 I0 J1 K0 R-30. [3] G68 X0 Y10.Z0 I1 J0 K0 R45. [4] G69 Example: Set a workpiece coordinate system using workpiece offset command G54. [2] The program origin in the workpiece coordinate system that was set during step [1] above shifts to the position of (x, y, z) =(10, 0, 0) and the graphics rotates through 30 degrees in a clockwise direction around the Y-axis. Thus, new program coordinate system A is set. [3] The program origin in the workpiece coordinate system that was set during step [2] above shifts to the position of (x, y, z) = (0, 10, 0) and the graphics rotates through 45 degrees in a counter clockwise direction around the X-axis. Thus, new program coordinate system B is set. [4] Both the program coordinate systems that were set during steps [2] and [3] above are cancelled and the coordinate system that was set during step [1] above becomes valid once again. Program coodinate system B +Y” +Y’ 45° ZA A P (0, 10, 0) ZA +X’ –30° M A P (0, 0, 0) Workpiece coodinate system YA P’ (10, 0, 0) +X Program coodinate system A NM221-00051 C op yr ig ht (c )2 01 3 +X” +Z’ K IM Se ri al +Y K N o. +Z 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . [1] 14-47 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 5. Relationship to other functions 1. The table below indicates the compatibility of each G-code with the three-dimensional coordinate conversion function in the two columns on the right. Group [1] [2] 00 01 Positioning Yes Yes 01 01 Linear interpolation Yes Yes 01.1 01 Threading with C-axis Yes No 02 01 Circular interpolation CW Yes (*1) No 03 01 Circular interpolation CCW Yes (*1) 02.1 00 Spiral interpolation CW No 03.1 00 Spiral interpolation CCW No 04 00 Dwell 05 00 High-speed machining 06.1 01 Spline interpolation 06.2 01 NURBS interpolation 07 00 Virtual-axis interpolation 07.1 00 Cylindrical interpolation 09 00 Exact-stop check 10 00 Programmed parameter input Yes (*4) 11 00 Programmed parameter input cancel Yes (*4) 17 02 Plane selection X-Y 18 02 Plane selection Z-X 19 02 Plane selection Y-Z 20 06 Inch command 21 06 Metric command 22 04 Pre-move stroke check ON No No 23 04 Pre-move stroke check OFF A No Yes 27 00 Reference-point check No 28 00 Reference-point return Yes (*2) 29 00 Starting-point return Yes 30 00 No. 2 through 4 reference-point return Yes (*2) 31 00 Skip Yes 31.1 00 Multi-step skip 1 Yes 31.2 er ve d re s ts gh No No No Yes No ri No No .A ll N 34 08 C 39 O R PO R A TI O o. N ZA K al ri K IM Se ZA M No No Yes No Yes Yes Yes Yes Yes No Yes No Yes Yes 00 Multi-step skip 3 Yes 01 Constant lead threading No No 01 Constant lead threading No No 34 01 Variable lead threading No No 37 00 Automatic tool-length measurement No 38 00 Vector selection for tool radius compensation No 39 00 Corner arc for tool radius compensation No No 40 07 Tool radius compensation OFF Yes Yes 40.1 15 Shaping cancel Yes No 41 07 Tool radius compensation (to the left) Yes No 41.1 15 Shapint to the left Yes No 42 07 Tool radius compensation (to the right) Yes No 42.1 15 Shaping to the right Yes No 43 08 Tool-length offset (+) Yes No 44 08 Tool-length offset (–) Yes No 45 00 Tool-position offset, extension Yes No 45.1 19 Attachment compensation Yes Yes (c yr ig 33 )2 01 3 Yes ht YA No Multi-step skip 2 32 op No Yes (*4) No No 00 31.3 C Function . G-code A [1] Is the G-code available in the mode of three-dimensional coordinate conversion? [2] Is the three-dimensional conversion mode selectable under the condition of the G-code? 14-48 No Serial No. 340839 14 [2] Tool-position offset, reduction Yes No Tool-position offset, double extension Yes No 00 Tool-positon offset, double reduction Yes No 49 08 Tool-length offset cancel Yes Yes 49.1 19 Attachment compensation cancel Yes Yes 50 11 Scaling cancel No Yes 51 11 Scaling on No No 50.1 19 G-command mirror image cancel Yes Yes 50.2 23 Polygonal machining cancel Yes Yes 51.1 19 G-command mirror image on Yes No 51.2 23 Polygonal machining Yes Yes 52 00 Local coordinate system setting Yes Yes 53 00 Machine coordinate system selection 54 12 Workpiece coordinate system 1 selection No 54.1 12 Additional workpiece coordinate system selection No 55 12 Workpiece coordinate system 2 selection No 56 12 Workpiece coordinate system 3 selection 57 12 Workpiece coordinate system 4 selection 58 12 Workpiece coordinate system 5 selection 59 12 Workpiece coordinate system 6 selection 60 00 One-way positioning 61 13 Exact-stop check mode Yes Yes 61.1 13 Geometry compensation mode Yes Yes 61.4 13 Inverse model control Yes Yes 62 13 Automatic corner override Yes Yes 63 13 Tapping mode Yes Yes 64 13 Cutting mode Yes Yes 65 00 User macro simple call 66 14 User macro modal call A Yes 66.1 14 User macro modal call B Yes No 67 14 User macro modal call cancel Yes Yes 68 16 Program coordinates rotation No No 69 16 Cancellation of coordinates rotation/3D conversion 71.1 09 Fixed cycle (chamfering cutter 1) 72.1 09 73 09 er ve d re s ri ts gh Yes No Yes .A ll Yes No Yes No Yes Yes Yes No Yes Yes Yes (*2) Yes Yes No Fixed cycle (chamfering cutter 2) Yes No Fixed cycle (high-speed deep-hole drilling) Yes No Yes No Fixed cycle (boring) Yes No 09 Fixed cycle (boring) Yes No 77 ht 09 Fixed cycle (back facing) Yes No 78 09 Fixed cycle (boring) Yes No 79 09 Fixed cycle (boring) Yes No 80 09 Fixed cycle cancel Yes Yes 81 09 Fixed cycle (drill/spot drill) Yes No 82 09 Fixed cycle (drill) Yes No 82.2 09 Fixed cycle (drill) Yes No 83 09 Fixed cycle (deep hole drill) Yes No 84 09 Fixed cycle (tapping) Yes No 84.2 09 Fixed cycle (synchronous tapping) Yes No 84.3 09 Fixed cycle (synchronous reverse tapping) Yes No 85 09 Fixed cycle (reaming) Yes No 86 09 Fixed cycle (boring) Yes No 87 09 Fixed cycle (back boring) Yes No )2 Fixed cycle (reverse tapping) 09 ig 09 Yes No N K ZA A 3D coordinate conversion Yes yr 74 Yes (*5) 34 08 C 39 O R PO R A TI O o. N al ri Se 48 ZA 00 A 00 47 M 46 Function YA Group 01 3 G-code . [1] K IM COORDINATE SYSTEM SETTING FUNCTIONS C op 76 (c 75 14-49 Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS Group 88 09 89 09 90 Function [1] [2] Fixed cycle (boring) Yes No Fixed cycle (boring) Yes No 03 Absolute data input Yes Yes 91 03 Incremental data input Yes Yes 92 00 Machine coordinate system setting No 92.5 00 Workpiece coordinate system rotation Yes 93 05 Inverse time feed Yes Yes 94 05 Asynchronous feed (feed per minute) Yes (*4) Yes 95 05 Synchronous feed (feed per revolution) Yes (*4) Yes 98 10 Initial level return in fixed cycle Yes Yes 99 10 R-point level return in fixed cycle Yes Yes re s Setting of helical interpolation results in an alarm. Only the intermediate point has its coordinates converted. Setting of program coordinate rotation results in an alarm. The preparatory function is executed independently of the coordinate conversion. The operation is always performed in the original coordinate system (free from any conversion). ts *1: *2: *3: *4: *5: er ve d . G-code Setting of a G-code other than G17, G18, and G19, in the block containing G68 or G69 results in alarm 807 ILLEGAL FORMAT. 3. G28 and G30 commands permit a return to the reference point through the 3D converted intermediate point, whereas a G53 command is performed without any conversion. 4. Codes G41 (Radius comp. to the left), G42 (Radius comp. to the right), G51.1 (G-command mirror image on), and Fixed cycle codes must be present with their cancellation codes between G68 and G69 so that a nested relationship is established. Moreover, give a motion command with G90 (absolute data input) in the next block to that of the G68 command. 34 08 C 39 O R PO R A TI O N .A ll ri gh 2. G68X50.Y100.Z150.I1J0K0R-90. G90G00X0Y0Z0 G41G01X10.F1000 G40 G69 K ZA A ZA K IM Se ri al N o. Example: Tool-length, -radius and -position offset is first processed, and the 3D conversion is conducted on the offset contour. 6. Mirror image can only be applied by G51.1 (the related M-codes are not available). The processing order is: mirror image first, then 3D conversion. 7. In mode G68, code G52 is handled as follows: 01 3 YA M A 5. C op yr ig ht (c )2 If code G68 is set in the coordinates that have been set using G52, that local coordinate system will be overriden with a new workpiece coordinate system by G68. Setting of G69 under that status will make the original local coordinate system valid once again. G68 G69 L L W W M M M: Machine coordinate system W: Workpiece coordinate system L: Local coordinate system NM221-00052 14-50 Serial No. 340839 COORDINATE SYSTEM SETTING FUNCTIONS 14 If code G52 is present in the data set using mode G68, a local coordinate system can be set on the workpiece coordinate system that has been set using G68. Setting of G69 under that status will cancel the local coordinate system and the G68-set workpiece coordinate system and thus the original coordinate system existing before G68 was set will become valid once again. L G69 G68 er ve d . W W M M ts re s M: Machine coordinate system W: Workpiece coordinate system L: Local coordinate system G68: G68-set workpiece coordinate system ri gh NM221-00053 o. 34 08 C 39 O R PO R A TI O N .A ll If code G52 is present in the data set using mode G68, a local coordinate system can be set that starts from the workpiece coordinate system to be set using G68. Setting of G68 under that status will cancel the local coordinate system and then set a G68 program coordinate system. M K A ri Se W G68 ZA al N L G68 W M NM221-00054 M A ZA K IM M: Machine coordinate system W: Workpiece coordinate system L: Local coordinate system G68, G68’: G68-set workpiece coordinate system G68’ G68′ Setting of G68 during figure rotation results in alarm 850 G68 AND M98 COMMANDS SAME BLOCK. 9. Three-dimensional coordinate conversion is not valid for the axis of rotation. 01 3 YA 8. (c )2 10. The G68 mode does not accept any external workpiece origin setting commands. C op yr ig ht 11. Cancel the 3D coordinate conversion mode temporarily if a MAZATROL program is to be called up as a subprogram. 14-51 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 14 COORDINATE SYSTEM SETTING FUNCTIONS 14-52 E Serial No. 340839 MEASUREMENT SUPPORT FUNCTIONS 15 15 MEASUREMENT SUPPORT FUNCTIONS Measurement by an EIA/ISO program is basically the same as that by a MAZATROL program. Information given by a MAZATROL program may be executed by the following preparatory function. G31: Skip function 15-1 Skip Function: G31 Overview er ve d 1. . 15-1-1 Function description Programming format gh 2. ts re s During linear interpolation by G31, when an external skip signal is inputted, the feed will stop, all remaining commands will be cancelled and then the program will skip to the next block. .A ll ri G31 Xx Yy Zz Ff ; : Feed rate (mm/min) 34 08 C 39 O R PO R A TI O F N x, y, z : The coordinates of respective axes. These coordinates are designated using absolute or incremental data. al N Detailed description An asynchronous feed rate commanded previously will be used as feed rate. If an asynchronous feed command is not made previously and if Ff is not commanded, the alarm 922 SKIP SPEED ZERO will be caused. F-modal command data will not be updated by the F-command given in the G31 block. 2. Automatic acceleration/deceleration is not applied to command block G31. 3. If feed rate is specified per minute, override, dry run and automatic acceleration/deceleration will not be allowed. They will be effective when feed rate is specified per revolution. 4. Command G31 is unmodal, and thus set it each time. 5. The execution of command G31 will immediately terminate if a skip signal is inputted at the beginning. Also, if a skip signal is not inputted until the end of command block G31, execution of this command will terminate on completion of execution of move commands. ZA A Setting this command code during tool radius compensation results in an alarm. yr ig 6. ht (c )2 01 3 YA M A ZA K IM Se K 1. ri 3. o. This command starts linear interpolation, and when an external skip signal is inputted, the feed will stop, the remaining distance of movement will be cancelled and the next block will be executed. Under a machine lock status the skip signals will be valid. C op 7. 15-1 Serial No. 340839 15 MEASUREMENT SUPPORT FUNCTIONS 4. Execution of G31 G90 G00 G31 G01 G31 X–100. Y0 X–500. F100 Y–100. X0 Y–200. X–500. Y–300. X0 G31 Y –100 . er ve d G31 –500 0 X G31 gh MEP221 o. 15-2 Skip Coordinate Reading ri .A ll –300 34 08 C 39 O R PO R A TI O G01 –200 N G01 ts –100 G01 G31 re s W G01 G00 X-100. G31 X-200. F60 K ZA Skip signal input coordinate value (in the workpiece coordinates system) is stored into variable #101. YA M A #101=#5061 Skip command ZA G90 K IM A Se ri al N The coordinates of the positions where skip signals are input will be stored into system variables #5061 (first axis) through #5076 (sixteenth axis). These coordinates can be called using user macros. C op yr ig ht (c )2 01 3 15-2 Serial No. 340839 MEASUREMENT SUPPORT FUNCTIONS 15 15-3 Amount of Coasting in the Execution of a G31 Block The amount of coasting of the machine from the time a skip signal is inputted during G31 command to the time the machine stops differs according to the G31-defined feed rate or the F command data contained in G31. Accurate machine stop with a minimum amount of coasting is possible because of a short time from the beginning of response to a skip signal to the stop with deceleration. The amount of coasting is calculated as follows: F F F F × Tp + (t ± t ) = × (Tp + t1) ± × t2 60 60 1 2 60 60 0 = 1 0 : F : Tp : t1 : 2 ts re s er ve d . Amount of coasting (mim) G31 skip rate (mm/min) –1 Position loop time constant (s) = (Position loop gain) Response delay time (s) = (The time from skip signal detection until arrival at NC through PC) Response error time = 0.001 (s) gh t2 : N .A ll ri When using command G31 for measurement purposes, measured data 1 can be corrected. Such corrections, however, cannot be performed for 2. 34 08 C 39 O R PO R A TI O Skip signal inputted F K ZA K IM t1 t2 Time (s) A Se ri al N o. The area of the hatched section denotes the amount of coasting 0. Tp Stop pattern during skip signal inputted A ZA TEP202 0.050 0.040 Max. value Tp = 0.03 t1 = 0.005 Mean. value Min. value C op yr ig ht )2 Amount of coasting () (mm) (c 01 3 YA M The diagram shown below represents the relationship between the feed rate and the amount of coasting that will be established if Tp is set equal to 30 ms and, t1 to 5 ms. 0.030 0.020 0.010 0 10 20 30 40 50 60 70 Feed rate F (mm/min) Relationship between the amount of coasting and the feed rate (Example) 15-3 TEP203 Serial No. 340839 15 MEASUREMENT SUPPORT FUNCTIONS 15-4 Skip Coordinate Reading Error 1. Reading the skip signal input coordinates Skip signal input coordinate data does not include the amounts of coasting defined by position loop time constant Tp and cutting feed time constant Ts. Thus skip signal input coordinates can be checked by reading within the error range shown in the diagram below the workpiece coordinates existing when skip signals were intputted. The amount of coasting that is defined by response delay time t1, however, must be corrected to prevent a measurement error from occurring. F × t2 60 er ve d . : Reading error (mm) F : Rate of feed (mm/min) t2 : Response delay time 0.001 (s) re s =± gh 0 60 Rate of feed (mm/min) ri Reading error (m) ts +1 34 08 C 39 O R PO R A TI O N .A ll –1 The hatched section corresponds to measured data. Skip signal input coordinate reading error K ZA A TEP204 ZA Reading coordinates other than those of skip signal inputs A 2. K IM Se ri al N o. The reading error at a feed rate of 60 mm/min 60 × 0.001 = ±60 = ± 0.001 (mm) and measured data stays within the reading error range of ± 1 m. YA M Coordinate data that has been read includes an amount of coasting. )2 01 3 If, therefore, you are to check the coordinate data existing when skip signals were inputted, perform corrections as directed in Section 15-3 above. C op yr ig ht (c If, however, the particular amount of coasting defined by response delay time t 2 cannot be calculated, then a measurement error will occur. 15-4 Serial No. 340839 MEASUREMENT SUPPORT FUNCTIONS 15 15-5 Multi-Step Skip: G31.1, G31.2, G31.3, G04 1. Function and purpose Conditional skipping becomes possible by previously setting a combination of skip signals that are to be input. Skipping occurs in the same manner as that done with G31. The skip function can be designated using commands G31.1, G31,2, G31.3, or G04. The relationship between each of these G commands and the type of skip signal can be set by the parameters K69 to K73. G31.1 Xx Yy Zz Ff (Same as for G31.2 or G31.3 Ff is not required for G04) . Programming format er ve d 2. Feed rate (mm/min) re s Axis address and target coordinate data Detailed description 1. 34 08 C 39 O R PO R A TI O 3. N .A ll ri gh ts Using this programming format, you can execute linear interpolation in the same manner as that done using command G31. During linear interpolation, the machine will stop when the previously set skip signal input conditions are satisfied, and then all remaining commands will be cancelled and the next block will be executed. For feed rates set by the parameter K42 to K44, the following relationship holds: N o. G31.1 ............ G31.1 skip feed rate G31.2 ............ G31.2 skip feed rate G31.3 ............ G31.3 skip feed rate 3. Except for items other than 1 and 2 above, the description of command code G31 also applies. A ZA ri K IM Se ZA Parameter setting The feed rate appropriate for each of the G31.1, G31.2, and G31.3 command codes can be set by the parameters K42 to K44. 2. The skip conditions appropriate for each of the G31.1, G31.2, G31.3 and G04 command codes are to be set by parameters K69 to K73. (The skip conditions refer to the logical sum of previously set skip signals). A 1. )2 01 3 YA M 4. K The program will skip when the skip signal input conditions appropriate for each of these G commands are satisfied. al 2. ig ht (c A parameter setting of 7 is equivalent to G31. C op yr Parameter setting value 1 Valid skip signals 1 2 2 3 4 5 6 7 3 15-5 Serial No. 340839 15 MEASUREMENT SUPPORT FUNCTIONS 5. Machine action 1. Use of the multi-step skip function allows the following type of machine action control, and hence, reduction of the measurement time with improved measurement accuracy. If parameter settings are as shown below. Skip condition G31.1 = 7 G31.2 = 3 G31.3 = 1 Skip feed rate 20.0 mm/min (f1) 5.0 mm/min (f2) 1.0 mm/min (f3) er ve d . Sample program N10 G31.1X200.0 N20 G31.2X40.0 N30 G31.3X1.0 N10 .A ll N30 t MEP225 N o. 34 08 C 39 O R PO R A TI O (f3) N N20 (f2) Input of skip signal A Input of skip signal B Input of skip signal C ri Measuring distance Skip feed rate ZA A ri K IM Se K During the machine action shown above, if input of skip signal 1 precedes that of skip signal 2, the remaining distance of N20 will be skipped and N30 will also be ignored. al Note: If the skip signal corresponding to the conditions previously set is input during dwell (command G04), the remaining time of dwell will be cancelled and the next block will be executed. C op yr ig ht (c )2 01 3 YA M A ZA 2. gh ts (f1) re s Action f 15-6 E Serial No. 340839 PROTECTIVE FUNCTIONS 16 16 PROTECTIVE FUNCTIONS 16-1 Pre-move Stroke Check ON/OFF: G22/G23 1. Function and purpose ts re s Maker-defined software stroke limit (Upper limit) er ve d . While the user-defined software stroke limit check generates an outside machining prohibit area, the pre-move stroke check function sets an inside machining prohibit area (shaded section in the diagram below). An alarm will occur beforehand for an axis movement command whose execution would cause the tool to touch, or move in or through, the prohibit area. Upper limit for G22 ZA K IM User-defined software stroke limit (Lower limit) A Se ri al (i, j, k) Lower limt for G22 K N o. 34 08 C 39 O R PO R A TI O N (x, y, z) .A ll ri gh User-defined software stroke limit (Upper limit) ZA Maker-defined software stroke limit (Lower limit) YA Programming format 01 3 2. M A MEP220 ig ht (c )2 G22 X_ Y_ Z_ I_ J_ K_ Lower limit specification Upper limit specification (Cancellation) C op yr G23 (Inside machining prohibitarea specification) 16-1 Serial No. 340839 16 PROTECTIVE FUNCTIONS 3. Detailed description 1. Both upper-limit and lower-limit values must be specified with machine coordinates. 2. Use X, Y, Z to set the upper limit of the prohibit area, and I, J, K to set the lower limit. If the value of X, Y, Z is smaller than that of I, J, K, then the former and the latter will be used as the lower-limit and the upper-limit, respectively. 3. No stroke limit checks will be performed if the upper- and lower-limit values that are assigned to one and the same axis are identical. G22X200.Y250.Z100.I200.J-200.K0 er ve d . The X-axis does not undergo the stroke check. Give a G23 command to cancel the pre-move stroke limit check function. 5. A block of G23 X_Y_Z_ will cause the axis motion command X_Y_Z_ to be executed in the current mode of axis movement after cancellation of pre-move stroke limit check. re s 4. Before setting G22, move the tool to a position outside the prohibit area. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts Note: 16-2 E Serial No. 340839 THREADING: G33 17 17 THREADING: G33 17-1 Equal-Lead Threading 1. Function and purpose Setting a G33 command in the program enables equal-lead threading under tool feed control synchronized with spindle rotation. Also, multiple-thread screws can be machined by specifying the starting angle of threading. A d’ANDREA tool is required for fully automatic threading. er ve d A. . Programming format Standard lead threading re s 2. G33 Zz Ff Qq Threading direction axis address and the thread length Lead in the direction of the long axis (the axis to be moved through the longest distance among all axes) Threading start shift angle (0 to 360 degrees) (The starting angle of threading becomes 0 degrees if omitted.) .A ll ri gh ts z: f: Precise lead threading G33 Zz Ee Qq Threading direction axis address and the thread length Lead in the direction of the long axis (the axis to be moved through the longest distance among all axes) Threading start shift angle (0 to 360 degrees) (The starting angle of threading becomes 0 degrees if omitted.) N o. z: e: 1. ZA A K IM Detailed description For a tapered screw, specify the lead in the long-axis direction. ZA 3. Se ri al q: K B. 34 08 C 39 O R PO R A TI O N q: YA M A Z 01 3 Tapered thread If a < 45°, then the lead must be Lz. If a > 45°, then the lead must be Lx. If a = 45°, then the lead can be either Lx or Lz. a ig ht (c )2 Lz X C op yr Lx MEP226 The setting ranges of leads F and E are as follows: Input unit F-command lead data range (6-digit) E-command lead data range (8-digit) Metric 0.001 to 999.999 mm/rev 0.00001 to 999.99999 mm/rev Inch 0.0001 to 99.9999 in/rev 0.000001 to 99.999999 in/rev Note: Alarm 134 SPINDLE ROTATION EXCEEDED will be displayed if the feed rate, after being converted into a feed rate per minute, is in excess of the maximum cutting feed rate. 17-1 Serial No. 340839 17 THREADING: G33 The E-command data will also be used as number-of-threads command data for threading in inches. Whether the command data is to be used only as precise lead data or number-of-threads data can be selected using bit 7 of parameter F91. 3. Keep the spindle speed constant during the entire machining cycle from rough cutting to finish cutting. 4. During threading, feed hold does not work. Pressing the feed hold button during threading brings the program to a block stop at the end of the block which immediately succeeds the block under the control of the G33 mode (that is, the block at which the threading operation has ended). 5. For tapered screws, since machining cannot be stopped in the middle of threading, the cutting feed rate after being converted may exceed the maximum cutting feed according to the particular command data. To prevent this from occurring, therefore, the command lead data must be set according to the maximum feed rate obtained after conversion, not for the starting point of threading. 6. Usually, the leads at the beginning of threading and at the end of threading become incorrect because of a delay in the operation of the servo system. A thread length must therefore be specified that has a probable, incorrect lead length added to the required thread length. 7. The spindle speed undergoes the following restriction: N Maximum feed rate 34 08 C 39 O R PO R A TI O 1R .A ll ri gh ts re s er ve d . 2. Thread lead o. where R must be smaller than or equal to the maximum allowable encoder revolutions –1 (min ), and –1 K ZA Se ri al N R: Spindle speed (min ) Thread lead: mm or inches Maximum feed rate: mm/min or inches/min The threading start shift angle must be specified using an integer from 0 to 360. 9. The cutting feed override value is fixed at 100%. C op yr ig ht (c )2 01 3 YA M A ZA K IM A 8. 17-2 Serial No. 340839 17 THREADING: G33 4. Sample program N110 G90G0X-200.Y-200.S50M3 N111 Z110. N112 G33Z40.F6.0 N113 M19 N114 G0X-210. N115 Z110.M0 N116 X-200. M3 N117 G04X5.0: N118 G33Z40. Z 10 50 re s er ve d . 10 X X 34 08 C 39 O R PO R A TI O N .A ll ri gh ts Y N o. <Operation description> MEP227 N112 The first threading operation is performed. Tread lead = 6.0 mm N113 Spindle orientation based on an M19 command is performed. N114 The tool moves away in the X-axis direction. N115 The tool returns to a position above the workpiece, and an M00 command stops the program. Adjust the tool as required. ZA Preparations for the second threading operation are made. Set a dwell time, as required, to stabilize the spindle speed. The second threading operation is performed. C op yr ig ht (c N118 A ri K IM Se ZA A M YA )2 N117 01 3 N116 K The spindle center is positioned at the workpiece center and the spindle rotates forward. al N110, N111 17-3 Serial No. 340839 17 THREADING: G33 17-2 Continuous Threading er ve d . Continuous threading becomes possible by setting threading command codes in succession in the program. Thus, special threads that change in lead and/or shape during threading can be machined. A D’ANDREA tool is required for continuous threading. re s G33 G33 ts G33 ri gh MEP228 N Function and purpose 34 08 C 39 O R PO R A TI O 1. .A ll 17-3 Inch Threading ZA e: Number of threads per inch in the direction of the long axis (the axis to be moved through the longest distance among all axes) (A decimal point can be included.) q: Threading start shift angle (0 to 360 degrees) YA Detailed description M A ZA K IM A Threading direction axis address and the thread length Se z: The number of threads per inch must be that existing in the long-axis direction. 2. E-command data will also be used as command data for precise lead threading. Whether the command data is to be used only as number-of-threads command data or precise lead command data can be selected using bit 7 of parameter F91. )2 01 3 1. E-command data value must be in the setting range for the command. C op yr ig 3. ht (c 3. ri G33 Zz Ee Qq K N Programming format al 2. o. Including in a G33-command format the number of threads per inch in the long-axis direction enables tool feed to be controlled in synchronization with spindle rotation, and thus enables equal-lead straight threading and tapered threading. 17-4 Serial No. 340839 17 THREADING: G33 4. Sample program Thread lead ........ 3 thread leads/inch (= 3.46666...) 1 = 10 mm 2 = 10 mm If programmed in millimeters: er ve d . Z re s 1 50.0 mm 2 .A ll ri gh ts N210 G90G0X-200.Y-200.S50M3 N211 Z110. N212 G91G33Z-70.E3.0 (First threading) N213 M19 N214 G90G0X-210. N215 Z110.M0 N216 X-200. M3 N217 G04X2.0 N218 G91G33Z-70. (Second threading) X X K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N Y 17-5 MEP227 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 17 THREADING: G33 17-6 E Serial No. 340839 DYNAMIC OFFSETTING: M173, M174 (OPTION) 18 18 DYNAMIC OFFSETTING: M173, M174 (OPTION) 1. Function and purpose Workpiece before machining er ve d . Machining with rotation of the rotary table (B-axis) requires in principle the axis of rotation of the workpiece to be completely aligned with the axis of rotation of the table. ts re s Workpiece after machining ri gh MEP232 B axis K ZA A X axis K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll In practice, however, this is very difficult to implement for the reasons of fixture design, unless a very precise fixture is used. Dynamic offsetting is a function that internally compensates continuous deviation due to the misalignment in question. As a result, machining program can easily be prepared on the assumption that the alignment is ideal. ZA Z axis M A Axis of rotation of the table 01 3 YA Axis of rotation of the workpiece Dynamic offsetting ON Dynamic offsetting OFF C op yr ig ht (c )2 M173 G01 B360. F500 M174 18-1 MEP233 Serial No. 340839 18 DYNAMIC OFFSETTING: M173, M174 (OPTION) Detailed description 1. Automatic limitation by the software does not occur even if dynamic offsetting may cause the stroke limit to be overstepped. 2. Reduce to 3 mm or less the eccentricity of an actually mounted workpiece from the axis of rotation of the table; otherwise the alarm 137 DYNAMIC COMPENSATION EXCEEDED is caused. Automatic operation is executed on the assumption that the origin of the workpiece coordinates lies on the axis of rotation of the workpiece. Manual operation uses the data in parameter I11 (as described later). 3. The workpiece origin must be set on the axis of rotation of a workpiece when it is to be machined using dynamic offsetting. 4. Dynamic offsetting is not effective in the 3-dimensional coordinates conversion mode (G68). 5. The related parameters are as follows: I11 Axis of workpiece rotation re s Set the machine coordinates of the axis of the table rotation for the controlled axes concerned. Unit: 0.001 mm ri Axis of table rotation Set the machine coordinates of the axis of the workpiece rotation, existing at a table angle of 0 degrees, for the controlled axes concerned. (This parameter is valid only for manual operation.) Range: ±99999999 34 08 C 39 O R PO R A TI O N S5 Description ts Setting gh Name .A ll Address er ve d . 2. Dynamic offsetting is provided for the type of machining that can in principle be achieved by turning the workpiece only with the tool in a fixed position. K ZA A YA M Table ZA K IM Workpiece A Se ri al N o. 6. 01 3 )2 Sample program G55 ....................... The workpiece axis is assumed to go through the origin of the G55 system. G0X_Y_Z_ ............ Approach M173 ..................... Dynamic offsetting ON G1 Z_F_ Start of cutting B_F_................ B-axis rotation Z_F_................ Relief on the Z-axis M174 ..................... Dynamic offsetting OFF M30 ....................... End of machining C op yr ig ht (c 3. MEP234 18-2 E Serial No. 340839 HOB MILLING (OPTION) 19 19 HOB MILLING (OPTION) 19-1 Hob Milling Mode ON/OFF: G114.3/G113 1. Outline A synchronization control of the (cutter) spindle and the C-axis allows them to be used as the hob spindle and the workpiece spindle, respectively, in order to generate spur and helical gears. Lead angle re s er ve d Z-axis Y-axis . The hob milling function, however, is only available to machining centers with a table to be tilted on the A- or B-axis, as well as to those with a tool-swiveling axis and a table’s rotational axis. Tilting on the A-axis 34 08 C 39 O R PO R A TI O N Workpiece .A ll Hob spindle (Cutter spindle) ri gh ts A-axis C-axis for table rotation (Workpiece spindle) o. Programming format N Start of hobbing ZA ri al G114.3 D±1 E_L_P_Q_R_K_; K 2. A ht (c )2 01 3 YA M A ZA K IM Se D .......Selection of the direction of workpiece spindle’s rotation The direction of rotation depends upon a parameter setting as follows: <When parameter K103 bit 0 = 0> +1 : Rotation of the workpiece spindle in the reverse direction to the hob spindle. –1 : Rotation of the workpiece spindle in the same direction as the hob spindle. <When parameter K103 bit 0 = 1> +1 : Rotation of the workpiece spindle in the same direction as the hob spindle. –1 : Rotation of the workpiece spindle in the reverse direction to the hob spindle. E .......Number of threads of the hob L ........Number of teeth on the gear P .......Helix angle Specify the desired helix angle for a helical gear. Omit the argument, or specify 0 (degree) for a spur gear. Q .......Module or Diametral pitch Specify the normal module, or diametral pitch, for a helical gear. Use argument K to specify the data type of argument Q. Argument K can be omitted if argument Q is to be specified as follows: In the mode of metric data input (G21) : Module In the mode of inch data input (G20) : Diametral pitch It depends upon the setting of bit 3 of parameter F144 whether or not a negative value (with a minus sign) can be used as argument Q. When F144 bit 3 = 0: Negative values cannot be used as argument Q (rejected by alarm 809 ILLEGAL NUMBER INPUT). When F144 bit 3 = 1: Even a negative value can be used as argument Q. ig yr op C D747PB0025 19-1 Serial No. 340839 19 HOB MILLING (OPTION) R .......Angle of phase shift Specify the angle for phase matching between the hob spindle (milling spindle) and the workpiece spindle (C-axis). The specified angle refers to the initial rotation (angular positioning) of the hob spindle after completion of the zero-point return of the hob and workpiece spindles as a preparation for the synchronization control. 0 to 100 L 1 to 9999 .A ll ±1 E 34 08 C 39 O R PO R A TI O D er ve d Default value ri Setting range N Address gh The setting range and default value for each argument are as follows: –90.0000 to 90.0000 deg [0.0001 deg] P Module: 0.1 to 50.0 and –0.1 to –50.0 mm [0.001 mm] Q +1 1 1 0 (Spur gear) Ommision of Q causes an alarm (807) if a significant argument P is specified in the same block. N o. Diametral pitch: 0.1 to 50.0 and –0.1 to –50.0 in–1 [0.0001 in–1] re s Cancellation of the hob milling mode The synchronization control of the hob spindle and the workpiece spindle is canceled. ts G113; . K .......Data type of argument Q Specify the data type of argument Q. 0 : In accordance with the data input mode. In the mode of metric data input (G21) : Module In the mode of inch data input (G20) : Diametral pitch 1 : Module 2 : Diametral pitch Se No phase matching 0 ZA 0/1/2 ri K K 0 to 359.999 deg [0.001 deg] al R K IM A The argument D leads to an alarm (809 ILLEGAL NUMBER INPUT) if a value outside the setting range is specified. A ZA The workpiece spindle does not rotate with the argument E (Number of hob threads) set to “0.” Consequently, the designation of argument R for phase matching is not effective. M The argument Q is ignored if the argument P is not specified in the same block. 01 3 YA The alarm 809 ILLEGAL NUMBER INPUT is raised if the argument K is set to a value other than 0, 1 and 2. C op yr ig ht (c )2 The alarm 807 ILLEGAL FORMAT is raised if the argument K is set with a decimal point. 19-2 Serial No. 340839 19 HOB MILLING (OPTION) 3. Sample program The preparation of a program for hobbing a spur gear is explained below with examples. 1. Details of the gear to be generated and the tool to be used Spur gear Hob Module Module 1.5 Number of teeth 38 Lead angle 1°41' Whole depth of teeth 3.375 Number of threads 1 Handedness Right-handed Tool diameter 55 . Diameter of the workpiece er ve d 2. 1.5 re s The diameter of the blank workpiece (preliminarily turned one into which to cut a spur gear) is calculated as follows: ri gh ts D = Z × m + 2 × m = (Z + 2) m D: Diameter Z: Number of teeth m: Module N Table index angle 34 08 C 39 O R PO R A TI O 3. .A ll For our example, the outside diameter of preliminary turning is (38 + 2) × 1.5 = 60.0 [mm]. Hob K ZA Lead angle A A = –90° ZA K IM Se ri al N o. Workpiece YA M A D747PB0026 01 3 For the initial angular positioning, index or swivel the cutter spindle so as to make the cutting teeth of the hob parallel with the teeth to be cut in the workpiece. ht (c )2 The case shown above where the parallelism is realized in the front view refers to cutting with the tool being fed behind the workpiece (i.e. on the negative side of the X-axis, with respect to the axis of rotation of the table). C op yr ig (The initial positioning can be done by an angular shift on the A-axis through the lead angle.) The A-axis index angle for the initial positioning is calculated as follows. Cutting on the positive side of the X-axis [from the axis of rotation of the table]: () –90° + 1.683° = –88.317°, Cutting on the negative side of the X-axis [from the axis of rotation of the table]: () –90° – 1.683° = –91.683°. As one degree (1°) is equal to 60 minutes (60'), the lead angle in question, 1°41', can be converted into (60 + 41)/60 = 1.683°. 19-3 Serial No. 340839 19 HOB MILLING (OPTION) 4. Directions of the tool’s and workpiece’s rotations <For cutting on the positive side of the X-axis [from the axis of rotation of the table]> Z+ Wave of the cutting teeth A = –88.317 X+ re s er ve d . Y+ gh ts D747PB0027 34 08 C 39 O R PO R A TI O N .A ll ri The right-handed hob used requires the cutter spindle mounted with it to be rotated in the normal direction (right-hand rotation). The wave, so to say, of the cutting teeth moves upwards when the cutter spindle rotates in the normal direction. The workpiece spindle must be rotated, therefore, in the direction of the arrow in the figure above so as to move the “surface to be cut” in the same direction as the “wave of the cutting teeth”. <For cutting on the negative side of the X-axis [from the axis of rotation of the table]> K ZA A K IM Se A = –91.683 ri al N o. Z+ Wave of the cutting teeth X+ YA M A ZA Y+ 01 3 D747PB0028 C op yr ig ht (c )2 The right-handed hob used requires the cutter spindle mounted with it to be rotated in the normal direction (right-hand rotation). The wave, so to say, of the cutting teeth moves upwards when the cutter spindle rotates in the normal direction. The workpiece spindle must be rotated, therefore, in the direction of the arrow in the figure above so as to move the “surface to be cut” in the same direction as the “wave of the cutting teeth”. 19-4 Serial No. 340839 HOB MILLING (OPTION) 5. 19 Relevant settings on the TOOL DATA and TOOL OFFSET displays <Settings for the use of MAZATROL tool data> Register the required data for an OTHER (milling) tool on the TOOL DATA display. (The example below is given for metric data setting.) Item Setting — OTHER NOM- mm 55 ID CODE — A LENGTH mm 250 ACT- mm 55 MAX. ROT. min–1 1000 er ve d . Unit TOOL gh ts re s Tool’s reference position .A ll ri LENGTH 34 08 C 39 O R PO R A TI O N Cutting point ACT- Set the relevant parameters as follows: Address Description ACT-/NOSE-R in the TOOL DATA display for an EIA/ISO program F93 bit 3 LENGTH data in the TOOL DATA display for an EIA/ISO program F94 bit 7 Offset or compensation values to be used for an EIA/ISO program K ZA Se ri al N o. F92 bit 7 Setting 1: Valid 1: Valid 0: Values in the TOOL OFFSET display ZA K IM A <Settings for the use of tool offsetting data> Register the required data on the TOOL OFFSET display. (The example below is given for metric data setting.) Unit A Item Setting mm 250 GEOMETRIC OFFSET NOSE-R mm 27.5 (Radius of the hob) Tool’s reference position (c )2 01 3 YA M GEOMETRIC OFFSET Z op yr ig ht GEOMETRIC OFFSET Z C Cutting point GEOMETRIC OFFSET NOSE-R Set the relevant parameters as follows: Address Description F92 bit 7 ACT-/NOSE-R in the TOOL DATA display for an EIA/ISO program 0: Invalid F93 bit 3 LENGTH data in the TOOL DATA display for an EIA/ISO program 0: Invalid F94 bit 7 Offset or compensation values to be used for an EIA/ISO program 0: Values in the TOOL OFFSET display 19-5 Setting Serial No. 340839 19 HOB MILLING (OPTION) A. Generating a spur gear (without phase matching) G91G28XYZ G28AC G64 ................................................ Selection of the “Cutting mode.” G94G97 .......................................... Feed per minute. T30M6 ............................................ Tool change for TNo. 30 (hob). G92S1000R3 ................................. Limiting the cutter spindle speed to 1000 min–1. M3S0 .............................................. Start of the (cutter) hob spindle’s normal rotation [M3] at a speed of zero [S0]. G53A-91.683 ............................... A-axis motion to –90° – 1.683° [lead angle]. (Cutting on the –X side) G54 ................................................ Selection of the G54 workpiece coordinate system. er ve d . G90 ................................................ Absolute data input. G43G0H1X-100.Z100.Y-30. ..... Tool length offset ON. re s G90G0Z-50.M8 ............................. Approach. G41D1X[-30.+3.375-0.5] ....... Tool radius compensation ON with X-axis motion to the roughing position. ts G114.3D+1E1L38R0 .................... Selection of the hob milling mode. Positive value of D for the same rotational gh direction (normal in this case) of the workpiece spindle as the hob spindle. ri M3S230 .......................................... Start of the (cutter) hob spindle’s rotation at 230 min–1 (for a cutting speed of .A ll 40 m/min, resulting from the hob cutter’s diameter [55 mm]). N G1Y100.Z-46.181F18. .............. Linear shift on the Z-axis according to that angular shift by 1.683° (lead angle) 34 08 C 39 O R PO R A TI O which makes the cutting teeth of the hob parallel with the teeth to be cut in the workpiece. G0X-100. G0Y-30.Z-50. G41D1X[-30.+3.375] .............. X-axis motion to the finishing position. (See the figure below.) N o. G1Y100.Z-46.181F6. ZA ri Y-150.Z100. K al G0X-100. A Se M5 .................................................. Stop of the (cutter) hob spindle. K IM G113 .............................................. Cancellation of the hob milling mode. G40 ................................................ Tool radius compensation OFF. ZA G49 ................................................ Tool length offset OFF. +Y 01 3 YA M A M30 )2 Workpiece radius = 30 Cutting point yr ig ht (c Whole depth of teeth = 3.375 op Finishing position on the X-axis Whole depth of teeth = 3.375, and Workpiece radius = 30. The finishing position on the X-axis, therefore, is calculated as follows: –30 + 3.375 = –26.625 C –26.625 +X Unit: mm Diameter of the hob = 55 D747PB0029 19-6 Serial No. 340839 HOB MILLING (OPTION) B. 19 Generating a helical gear (with phase matching) G91G28XYZ G28AC G64 ................................................ Selection of the “Cutting mode.” G94G97 .......................................... Feed per minute. T30M6 ............................................ Tool change for TNo. 30 (hob). G92S1000R3 ................................. Limiting the cutter spindle speed to 1000 min–1. M3S0 .............................................. Start of the (cutter) hob spindle’s normal rotation [M3] at a speed of zero [S0]. G53A-87.2 ................................... A-axis motion to –87.2° (angle for spur gear). G54 ................................................ Selection of the G54 workpiece coordinate system. er ve d . G90 ................................................ Absolute data input. G43G0H1X-100.Z100.Y-30. ..... Tool length offset ON. re s G90G0Z-50.M8 ............................. Approach. G41D1X[-30.+3.375-0.5] ....... Tool radius compensation ON with X-axis motion to the roughing position. ts G114.3D+1E1L10P-20.Q2.R0 ... Selection of the hob milling mode (with phase matching). .A ll ri gh Positive value of D for the same rotational direction (normal in this case) of the workpiece spindle as the hob spindle. Helix angle –20° with reference to the angle for spur gear (–87.2°). M3S230 .......................................... Start of the (hob) milling spindle’s rotation at 230 min–1 (for a cutting speed of 34 08 C 39 O R PO R A TI O N 40 m/min, resulting from the hob cutter’s diameter [55 mm]). G1Y100.Z-46.181F18. .............. Cutting with interpolation on the YZ-plane. G0X-100. G0Y-30.Z-50. G41D1X[-30.+3.375] .............. X-axis motion to the finishing position. ri Y-150.Z100. ZA al G0X-100. K N o. G1Y100.Z-46.181F6. A Se M5 .................................................. Stop of the (cutter) hob spindle. K IM G113 .............................................. Cancellation of the hob milling mode. G40 ................................................ Tool radius compensation OFF. ZA G49 ................................................ Tool length offset OFF. YA Detailed description Give an S-code and M-code, respectively, to specify the rotational speed and direction of the spindle selected as the hob spindle. 2. The block of G114.3 must be preceded by a command of “0” speed and a selection of the rotational direction of the hob spindle. The synchronization cannot be established if a command of G114.3 is given with the hob spindle already rotating or without its rotational direction specified. (c )2 01 3 1. C op yr ig ht 4. M A M30 3. The rotational speed of the workpiece spindle is determined by the number of hob threads and that of gear teeth, both specified in the block of G114.3. Sw = Sh × E/L where Sw: Sh: E: L: 4. Rotational speed of the workpiece spindle Rotational speed of the hob spindle Rotational ratio of the hob spindle (Number of hob threads) Rotational ratio of the workpiece spindle (Number of gear teeth) Once determined by the hob milling command (G114.3), the rotational relationship between the workpiece spindle and the hob spindle is maintained in all operation modes until a hob milling cancel command (G113) or spindle synchronization cancel command is given. 19-7 Serial No. 340839 19 HOB MILLING (OPTION) The synchronization of the workpiece spindle with the hob spindle is started by the hob milling command (G114.3) at a speed of 0 revolutions per minute. 6. In the mode of hob milling the C-axis counter on the POSITION display does not work as the indicator of actual motion. 7. Use the preparatory function for asynchronous feed (G94) to cut a helical gear. Precautions Do not change, or override, the cutter spindle speed if hob milling operations are to be repeated on the same machining section; otherwise gear cutting accuracy cannot be guaranteed due to inevitable change in the phase at the start of hob milling. 2. If a motion command for the C-axis (workpiece spindle) is given in the middle of the hob milling mode by a manual or MDI interruption, or even in the program, such a shifting motion will be superimposed on the synchronized C-axis movement. In this case, however, the synchronization between the C-axis and the cutter spindle cannot be guaranteed. 3. A faulty machining could occur if the axis movement should come to a stop in the hob milling mode by the activation of the single-block operation mode or the feed hold function, in which case the cutter spindle alone continues rotating and thus runs out of the required synchronization with the workpiece spindle. 4. A phase mismatching or an excessive error could occur if the cutter spindle should be stopped in the hob milling mode by a command of M05, M00, or M01. 5. The C-axis offset settings are ignored appropriately in the hob milling mode. 6. If the specified speed of the cutter spindle is in excess of its upper limit, the cutter spindle speed will be set to that limit and the C-axis will rotate in accordance with the cutter spindle limit speed and the rotational ratio. 7. If the calculated speed of the C-axis rotation exceeds its upper limit, the C-axis speed will be set to that limit and the cutter spindle will rotate in accordance with the C-axis speed limit and the rotational ratio. 8. Stop the (cutter) hob spindle by M05 before cancelling the hob milling mode (by G113); otherwise an overrunning movement on the C-axis before stopping may occur during execution of G113. . 1. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d 5. 5. 19-8 Serial No. 340839 19 HOB MILLING (OPTION) 19-2 Hob Milling Mode II (Hob Milling with Positioning Control) 1. Outline Gear cutting can be continued smoothly without any phase mismatching even if the milling spindle speed is changed by operating the override keys during execution of a feed block in the hob milling mode II. This feature is useful in efficiently determining the cutting conditions for hob milling. Use bit 0 of parameter F330 as follows to disable or enable the hob milling mode II. F330 bit 0 = 0: Hob milling mode 2. er ve d . = 1: Hob milling mode II Programming format ts re s The information given in Section 19-1 is also applicable to the hob milling mode II with the sole exception of the default value of argument R (Angle of phase shift) as shown below. Setting range Default value R 0 to 359.999 [deg] Zero point for the rotation of the hob spindle .A ll ri gh Address 3. 34 08 C 39 O R PO R A TI O N See Section 19-1 “Hob Milling Mode ON/OFF: G114.3/G113” for more information on the programming format. Sample program K ZA A Detailed description K IM 4. Se ri al N o. See Section 19-1 “Hob Milling Mode ON/OFF: G114.3/G113” for sample programs. YA M A ZA In the hob milling mode II the digital information on the current angular positions of the hob and workpiece spindles (V- and C-axis) is always displayed as “0” if it is given (under POSITION) with respect to the workpiece coordinate system. The positional information under MACHINE (given with respect to the machine coordinate system) depends upon the setting of bit 1 of parameter F330 as follows. 01 3 F330 bit 1 = 0: MACHINE values remain “0” for the V- and the C-axis. See Section 19-1 “Hob Milling Mode ON/OFF: G114.3/G113” for the other items of detailed information. C op yr ig ht (c )2 = 1: MACHINE values indicate the machine coordinates of the current positions on the V- and the C-axis. 5. Remarks 1. If a motion command for the C-axis (workpiece spindle) is given in the middle of the hob milling mode II by a manual or MDI interruption, or even in the program, such a shifting motion will be superimposed on the synchronized C-axis movement. 2. The C-axis offset settings are ignored appropriately in the hob milling mode II. 3. If the specified speed of the hob spindle is in excess of its upper limit, the hob spindle speed will be set to that limit and the workpiece spindle will rotate on the C-axis in accordance with the hob spindle limit speed and the rotational ratio. 19-9 Serial No. 340839 19 HOB MILLING (OPTION) 4. If the calculated speed of the C-axis rotation (of the workpiece spindle) exceeds its upper limit, the C-axis speed will be set to that limit and the hob spindle will rotate in accordance with the C-axis speed limit and the rotational ratio. 5. The selection of the hob milling mode II (G114.3) in the mode of geometry compensation (G61.1) or modal spline interpolation (G61.2) will only result in an alarm (807 ILLEGAL FORMAT). 6. The synchronization between the hob and workpiece spindles cannot be guaranteed any more if a cutting operation in the hob milling mode II should be interrupted, with both spindles being stopped abruptly, due to an emergency stop or a servo alarm. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . If an operation stop, however, is caused by pressing the key, by a command of M00, M02 or M30 as well as by the activation of the single-block operation mode or the feed hold function, the spindles are decelerated and stopped in such a way that their synchronization may be kept intact. 19-10 E Serial No. 340839 20 HIGH-SPEED SMOOTHING CONTROL FUNCTION 20 HIGH-SPEED SMOOTHING CONTROL FUNCTION The high-speed smoothing control function allows rapid and highly accurate execution of an EIA/ISO program which is prepared to approximate free-curved surfaces with very small lines. Compared with the conventional high-speed machining mode, this function allows machining almost free of cut-surface defects and stripes. The application of speed control based on a block-to-block angle, such as corner deceleration, in the conventional high-speed machining mode may cause acceleration and deceleration to be repeated in too formal a response to minute steps or to errors. As a result, scratch-like traces or stripes may be left on a cut surface. re s er ve d . By judging the machining shape or contour from the specified continuous lines as well as from the angle between two blocks, the high-speed smoothing control conducts the optimum speed control not affected too significantly by very slight steps or undulations. Consequently, a cut surface with less scratch-like traces or stripes can be obtained. ts Some of the outstanding features of high-speed smoothing control are listed below. gh Effective for machining a die of a smooth shape using a microsegment program. .A ll ri Speed control is insusceptible to the effects of any errors contained in the tool path. N If adjacent paths are similar in terms of geometrical accuracy, acceleration and deceleration patterns will also be similar. 34 08 C 39 O R PO R A TI O Even at the sections where corner deceleration is not necessary with respect to the angle, speed will be clamped if the estimated acceleration is great. N o. This function is valid during high-speed machining mode with the geometry compensation being selected. K ZA Feed No deceleration Deceleration according to the corner angle Time Time )2 01 3 YA M A ZA For obtuse corners (<) High-speed smoothing control A K IM Se ri al Optimum deceleration at corners (conventional control) Feed Feed Feed C op yr ig ht (c For sharper corners (>) = Reference angle for deceleration at corners Time Time D735P0563 20-1 Serial No. 340839 20 HIGH-SPEED SMOOTHING CONTROL FUNCTION 20-1 Programming Format G61.1 (G61.2); G5P2; ········· High-speed machining mode (with smoothing control) ON Either 0 or 2 is to be set with address P (P0 or P2). No other addresses than P and N must be set in the same block with G05. Use the following parameter to make the high-speed smoothing control valid. F3 bit 0 = 1: High-speed smoothing control valid 0: High-speed smoothing control invalid (Only high-speed machining valid) re s 20-2 Commands Available in the High-Speed Smoothing Control Mode er ve d . Give G61.1 (Shape correction ON) or G61.2 (Modal spline interpolation) before G05P2 to use the high-speed smoothing control. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts As is the case with the high-speed machining mode feature, only axis motion commands with the corresponding preparatory functions (G-codes) and feed functions (F-codes), designation of sequence number, codes for Control Out and Control In (parentheses), as well as M/S/T functions are available in the high-speed smoothing control. Setting data of any other type will result in an alarm (807 ILLEGAL FORMAT). See Chapter 22 for a detailed description of the high-speed machining mode feature. o. G-codes N 1. K ZA Se ri al The available preparatory functions are G00, G01, G02, G03, G17, G18, G19, G90, G91, G93 and G94. ZA K IM A The circular interpolation can be programmed with R (radius designation) as well as with I and J (center designation), and executed always (independently of the setting in bit 2 of the F96 parameter) with the control for a uniform feed. Do not give, in particular, a command for spiral interpolation (since it is always rejected with alarm 807 ILLEGAL FORMAT). YA M A Moreover, the type of feed function can be selected even in the middle of the high-speed smoothing control mode between G93 (Inverse time feed) and G94 (Asynchronous feed). However, synchronous feed (Feed per revolution; G95) is not available. (c Axis motion commands ht 2. )2 01 3 With the exception of group 1, the modal G-functions will be saved during, and restored upon cancellation of, the high-speed smoothing control mode. C op yr ig The three linear axes (X, Y, Z) can be specified. Absolute data input as well as incremental data input is applicable, indeed, but the former input mode requires the validation of bit 5 of the F84 parameter. F84 bit 5 : Type of position data input in the high-speed machining mode: 1: The input mode (G90/G91) before selection of the high-speed machining mode 0: Always incremental data input 3. Feed functions The rate of feed can be specified with address F. 20-2 Serial No. 340839 HIGH-SPEED SMOOTHING CONTROL FUNCTION 4. 20 Sequence number Sequence number can be specified with address N. This number, however, is skipped as a meaningless code during reading. 5. Control Out and Control In Use round brackets “(” and “)” as required to insert a comment. See Section 3-1 for more information. M/S/T functions gh 6. ts re s er ve d . It should be noted here, however, that useless deceleration may be caused by a move-free block. Move-free are, for instance, an empty block (null contents), one beginning and ending with “(” and “)”, a G91-block with a moving distance of zero (0) as well as a G90-block for the very same position. .A ll ri Codes (M, S, and T) of miscellaneous, spindle, and tool functions can be used in general as required. Use of these functions, however, may cause useless deceleration. 34 08 C 39 O R PO R A TI O No. 2 miscellaneous functions (8-digit A-, B- or C-codes). N Use of the following functions in particular can only cause an alarm (807 ILLEGAL FORMAT): K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. Special M-codes for interrupting by, and calling for, a macroprogram (M96, M97, M98, M99). 20-3 Serial No. 340839 20 HIGH-SPEED SMOOTHING CONTROL FUNCTION 20-3 Additional Functions in the High-Speed Smoothing Control Mode During high-speed smoothing control, fairing, although basically not required, can be made valid, as with normal high-speed machining mode. 1. Fairing function If, in a series of linear paths, a protruding section exists in the CAM-created microsegment machining program, this protruding path can be removed and the preceding and following paths connected smoothly by setting parameter F96 bit 1 to “1”. er ve d . F96 bit 1: Faring function for the microsegment machining program 1: Faring for a protruding path 0: No faring re s F103: Maximum length of a block to be removed for fairing 34 08 C 39 O R PO R A TI O N .A ll ri gh ts The effect of fairing Before fairing After fairing D735P0564 K ZA A In the middle of fairing YA M Before fairing A ZA K IM Se ri al N o. Fairing is also valid for a succession of protruding paths as shown below: After fairing )2 01 3 D735P0565 (c 20-4 Related Parameters ig ht The parameter settings related to this function are as follows: C op yr F3 = 0 : High-speed smoothing control invalid 1 : High-speed smoothing control valid (No deceleration at very slightly stepped sections) 3 : High-speed smoothing control valid (Deceleration at all stepped sections) Under the default setting (1), deceleration does not occur at very slight steps of 5 microns or less since such steps are processed as errors in the programmed path. For a machining program which requires all the described contours in it to be respected as they are, set this parameter to 3 to obtain precise feed control for the as-programmed shape. 20-4 Serial No. 340839 HIGH-SPEED SMOOTHING CONTROL FUNCTION 20 20-5 Restrictions The modal functions for tool radius compensation, mirror image, scaling, coordinate system rotation, virtual axis interpolation, three-dimensional radius compensation and shaping function should have been cancelled beforehand to give a G05 P2 command. Otherwise, an alarm may be caused or the modal function unexpectedly cancelled. 2. The high-speed smoothing control mode should be selected and cancelled with the tool sufficiently cleared from the workpiece since the selection and cancellation always cause a deceleration of feed motions. 3. Fairing function cannot be executed in the mode of single-block operation. 4. The high-speed smoothing control is not valid for rotational axes. 5. Fairing function cannot be executed in the mode of tool tip point control, cutting point command, tool radius compensation for five-axis machining, workpiece setup error correction, or inclined-plane machining. 6. In the mode of high-speed machining a block of M/S/T function causes the flow of processing for fairing to be interrupted temporarily. 7. In the mode of high-speed machining a block of TM6 for tool change causes the execution speed and the fairing function to be lowered and suppressed, respectively, until a length-offsetting value is made valid for the new tool, which does not occur implicitly if the length values of the MAZATROL tool data are not to be used in executing EIA/ISO programs (F93 bit 3 = 0). In this case, therefore, it is necessary to cancel the high-speed machining mode temporarily so as to give explicitly the required G43-command for tool length offset. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 1. Tool change Interpolation for high-speed machining o. T01M6 N G01 X__ F__ suppressed ZA resumed K IM Se X__ Y__ A ri al Z__ K Offsetting value made valid at the first Z-axis movement 20-6 Related Alarms A ZA The alarms related to this function are as follows: YA Alarm message ILLEGAL OPER. HIGH SMOOTHING CTR (c ILLEGAL FORMAT ht 807 )2 01 3 169 M Alarm No. ILLEGAL NUMBER INPUT Remedy In the mode of high-speed smoothing control an unavailable operation (MDI interruption, zero point return) was attempted. MDI interruption or zero point return cannot be performed in the mode of highspeed smoothing control. An unavailable command code is given in the G5P2 mode. Check the machining program and make corrections as required. The number of digits of the entered numerical data is too large. Check the machining program and make corrections as required. C op yr ig 809 Cause 20-5 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 20 HIGH-SPEED SMOOTHING CONTROL FUNCTION 20-6 E Serial No. 340839 21 TORNADO TAPPING (G130) 21 TORNADO TAPPING (G130) 1. Function and purpose Tornado tapping cycle is provided to machine a tapped hole by one axial cutting motion with the aid of a special tool. While usual tapping cycles require multiple tools to be used in sequence, use of this cycle function spares tool change time as well as repetitive cutting motion in order to enhance the machining efficiency. This cycle function is only available on machines equipped with the Y-axis control facility. Tornado tapping function requires the following parameter settings for macro-call G-codes: . Note : Programming format ri 2. gh ts re s er ve d J37 = 100009401 (Fixed value for the number of the macroprogram to be called for tornado tapping) J38 = 130 (Fixed value for the number of the G-code to be used for macro call) J39 = 2 (Fixed value for the type of macro call) .A ll The following format refers to hole machining on the face [or O. D. surface]. 34 08 C 39 O R PO R A TI O N G17 [or G19]; G130 R_Z_D_T_V_F_H_I_J_K_Q_E_M1 [or M0]; X [or Z] _Y_; (Setting of hole position) G67; N o. Hole machining axis ZA K IM Se A ri E Cutting surface K al R 45° ZA I V J Z D TEP300 ht (c )2 01 3 YA M A H R: Position of R-point Z: Position of hole bottom D: Hole diameter T: Tool diameter V: Hole depth F: Feed rate H: Chamfering amount I: Pitch 1 J: Pitch 2 K: Bottom finishing (0: No, 1: Yes, Others: Yes) Q: Machining direction (0: CW, 1: CCW) E: Position of 2nd R-point M: Hole machining axis (0: X, 1: Z or oblique) yr ig The chamfering angle is fixed at 45°. C op Arguments D (hole diameter) and T (tool diameter) must satisfy the following condition: D T D/2. Argument K is used to select whether finishing is to be (K1) or not to be (K0) executed on the bottom of the hole. Set the hole position separately from the macro-call G-code (G130). As is the case with usual fixed cycles, actual machining with axial movement can only be executed for a block containing the hole position data. Do not fail to set the code G67 as required to cancel the modal call. 21-1 Serial No. 340839 21 TORNADO TAPPING (G130) 3. Description of movement A. Hole machining 1. With chamfering After moving from the current position to the R-point on the hole axis and then approaching to a point on the 2nd R-point level, chamfering is performed by a spiral-helical interpolation first, and then cylindrical machining is carried out to the bottom by a circular-helical interpolation. Cutting feed Rapid traverse R-point er ve d Approach point 2nd R-point E re s R . Initial point gh ts Cutting surface ri Pitch 1 Chamfer 34 08 C 39 O R PO R A TI O N .A ll Hole depth Pitch 2 Without chamfering N 2. TEP301 o. Hole diameter YA M A ZA K ZA A K IM Se ri al After moving from the current position to the R-point on the hole axis and then approaching through the hole radius and to a point on the 2nd R-point level, cylindrical machining is carried out from the top to the bottom by a circular-helical interpolation. Cutting feed Rapid traverse Cutting surface ht (c )2 01 3 R Initial point R-point Approach point 2nd R-point E op yr ig Hole depth C Pitch 2 Hole diameter 21-2 TEP302 Serial No. 340839 TORNADO TAPPING (G130) B. 21 Movement on the bottom 1. With bottom finishing er ve d . After cutting down to the bottom of the hole by helical interpolation, the tool performs a circular interpolation for full circle, and then escapes radially to the axis of the hole before returning in the axial direction to the initial point or R-point at the rapid traverse. Without bottom finishing N 2. TEP303 .A ll ri gh ts re s Escape point K ZA A K IM Se ri al N o. 34 08 C 39 O R PO R A TI O After cutting down to the bottom of the hole by helical interpolation, the tool escapes radially to the axis of the hole while axially returning through quarter the pitch, and then returns in the axial direction to the initial point or R-point at the rapid traverse. Escape point YA M A ZA 1/4 pitch C op yr ig ht (c )2 01 3 TEP304 21-3 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 21 TORNADO TAPPING (G130) 21-4 E Serial No. 340839 HIGH-SPEED MACHINING MODE FEATURE 22 22 HIGH-SPEED MACHINING MODE FEATURE gh ts re s er ve d . The high-speed machining mode feature allows high-speed execution of programs used for the machining of free-curved surfaces that have been approximated using very small lines. In high-speed machining mode, microsegment machining capabilities improve by several times, compared with conventional capabilities. This allows the same machining program to be executed at several times the original feed rate, and thus the machining time to be reduced significantly. Conversely, a machining program that has been approximated using lines of several fractions of the original segment length, can also be executed at the same feed rate, so more accurate machining is possible. Combined use of the high-speed machining mode and the shape correction function allows more accurate machining to be implemented. If, moreover, a protruding section exists in the microsegment machining program, smooth interpolation can be conducted automatically by removing this illegal path. X 34 08 C 39 O R PO R A TI O N .A ll ri Z K ZA ri al N o. Y A A ZA K IM Se High-speed machining is available in the automatic operation modes: Memory, HD (Hard Disk) and Ethernet. Even in the high-speed machining mode can be applied various operational functions: override functions, cutting feed rate limit function, single-block operation function, dry run function, graphic trace function and geometry compensation function. 01 3 Operation mode YA M The microsegment machining capability in the high-speed machining mode is as follows: Max. speed Conditions required 135 m/min (5315 IPM) None HD operation 67 m/min (2638 IPM) With the POSITION display selected on the screen Ethernet operation 135 m/min (5315 IPM) Avoid unusual key operations (c )2 Memory operation (Note 2) C op yr ig ht The microsegment machining capability is restricted further by the functions used in, or applied to, the program as shown below: Fairing function Preparatory functions Not applied Applied 84 m/min (3307 IPM) G01 Linear interpolation only (Note 1) 135 m/min (5315 IPM) G02/G03 Circular interpolation included (Note 1) 33 m/min (1299 IPM) G06.1 Fine-spline interpolation included G54.4 Workpiece setup error correction (Note 1) 67.2 m/min (2646 IPM) G68.2 Inclined-plane machining (Note 1) 67.2 m/min (2646 IPM) G41.x/G42.x Tool radius compensation for five-axis machining to the left/right (Note 1) 33.6 m/min (1323 IPM) G43.4 Tool tip point control (Note 1) 67.2 m/min (2646 IPM) G43.8 Cutting point command (Note 1) 67.2 m/min (2646 IPM) 101 m/min (3976 IPM) 22-1 50 m/min (1969 IPM) Serial No. 340839 22 HIGH-SPEED MACHINING MODE FEATURE Note 1: The microsegment machining capabilities shown above apply in the case where 3-axis and 5-axis simultaneous motion commands consist of up to 32 and 52 characters per block, respectively, for a segment length of 1 mm. Exceeding the limit of block size may deteriorate the machining capabilities in question. Moreover, the lowest value of the maximum available rate of feed applies in combined use of multiple functions. Note 2: If the POSITION display should be changed to any other display during operation, program reading from the local disk may be aborted to damage the surface to be machined. Note 3: Before executing a microsegment machining program for HD (Hard Disk) operation or Ethernet operation, terminate the commercially available software if it is being used. er ve d . Note 4: Since optimum corner deceleration occurs during the shape correction mode, the machining time may be longer than in other modes. gh ts High-speed machining mode ON High-speed machining mode OFF .A ll Note 1: Both commands must be given in a single-command block. ri G5 P2 G5 P0 re s 22-1 Programming Format 34 08 C 39 O R PO R A TI O N Note 2: Do not use both commands in the MDI operation mode; otherwise an alarm (807 ILLEGAL FORMAT) occurs. 22-2 Commands Available in the High-Speed Machining Mode K ZA G-codes Se 1. ri al N o. Only axis motion commands with the corresponding preparatory functions (G-codes) and feed functions (F-codes), designation of sequence number, codes for Control Out and Control In (parentheses), as well as M/S/T functions are available in the high-speed machining mode. Setting data of any other type will result in an alarm (807 ILLEGAL FORMAT). M A ZA K IM A The available preparatory functions are G00, G01, G02, G03, G17, G18, G19, G90, G91, G93 and G94. The circular interpolation can be programmed with R (radius designation) as well as with I and J (center designation). If the machining program includes circular commands, however, set bit 2 of the F96 parameter to one (1). 01 3 YA F96 bit 2: Type of control for circular commands in the high-speed machining mode: 0: Control for the specified speed (with acceleration/deceleration) 1: Control for a uniform feed Axis motion commands )2 2. C op yr ig ht (c Absolute data input as well as incremental data input is applicable, indeed, but the former input mode requires the validation of bit 5 of the F84 parameter. 3. F84 bit 5: Type of position data input in the high-speed machining mode: 0: Always incremental data input 1: According to the input mode before selection of the high-speed machining mode Feed functions Feed rate can be specified with address F. 4. Sequence number Sequence number can be specified with address N. This number, however, is skipped as a meaningless code during reading. 22-2 Serial No. 340839 HIGH-SPEED MACHINING MODE FEATURE 5. 22 Control Out and Control In Use round brackets “(” and “)” as required to insert a comment. See Section 3-1 for more information. It should be noted here, however, that useless deceleration may be caused by a move-free block. Move-free are, for instance, an empty block (null contents), one beginning and ending with “(” and “)”, a G91-block with a moving distance of zero (0) as well as a G90-block for the very same position. M/S/T functions . 6. er ve d Codes (M, S, and T) of miscellaneous, spindle, and tool functions can be used in general as required. Use of these functions, however, may cause useless deceleration. ts re s Use of the following functions in particular can only cause an alarm (807 ILLEGAL FORMAT): 34 08 C 39 O R PO R A TI O N o. High-speed machining mode ON K IM A ZA K al When F84 bit 5 = 0: Incremental motion under G01 When F84 bit 5 = 1: Absolute motion under G01 Se G28 X0 Y0 Z0 G90 G0X-100.Y-100. G43 Z-5.H03 G01 F3000 G05 P2 X0.1 X0.1 Y0.001 X0.1 Y0.002 X0.1 F200 G05 P0 G49 Z0 M02 N Sample program ri 7. .A ll ri gh - No. 2 miscellaneous functions (8-digit A-, B- or C-codes). - Special M-codes for interrupting by, and calling for, a macroprogram (M96, M97, M98, M99). A ZA High-speed machining mode OFF YA M Note 1: Either 0 or 2 is to be set with address P (P0 or P2). Setting any other value will result in an alarm (807 ILLEGAL FORMAT). 01 3 Note 2: No other addresses than P and N must be set in the same block with G05. )2 Note 3: A decimal point must not be appended to address P. C op yr ig ht (c Note 4: The maximum permissible length of one block is 30 characters. 22-3 Serial No. 340839 22 HIGH-SPEED MACHINING MODE FEATURE 22-3 Additional Functions in the High-Speed Machining Mode 1. Fairing function If, in a series of linear paths, a protruding section exists in the CAM-created microsegment machining program, this protruding path can be removed and the preceding and following paths connected smoothly by setting parameter F96 bit 1 to “1”. F96 bit 1: Fairing function for the microsegment machining program 0: No fairing 1: Fairing for a protruding path .A ll ri gh After fairing Before fairing ts re s er ve d . F103: Maximum length of a block to be removed for fairing o. 34 08 C 39 O R PO R A TI O N Fairing is also valid for a succession of protruding paths as shown below: In the middle of fairing K A ZA al ri Cutting feed limiting speed K IM Se 2. After fairing N Before fairing YA M A ZA In shape correction mode, the minimum of the cutting feed limiting speeds of the movable axes is set as the cutting feed limiting speed in the high-speed machining mode. Setting parameter F96 bit 5 to “1”, however, allows the curvature of every curved section to be judged for limiting the speed so as not to exceed the maximum available acceleration. C op yr ig ht (c )2 01 3 F96 bit 5: Type of cutting feed limiting speed for the high-speed machining mode 0: Minimum of the cutting feed limiting speeds of the movable axes 1: Limiting speed based on the radius of curvature R If axial movement at the section of a large curvature should be conducted without deceleration, excessive acceleration will be developed to cause a path error due to inner cornering. 22-4 Serial No. 340839 HIGH-SPEED MACHINING MODE FEATURE 3. 22 Deceleration at corners in the high-speed machining mode er ve d F96 bit 4: Type of corner judgment in the high-speed machining mode 0: Always judging from the angle between adjacent blocks 1: Judging after removing any microblock (if present between large-angle blocks) gh ts re s F107: Reference length for microblock judgement K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri An adequate deceleration can be performed without suffering any effects of this microblock. 22-5 . In shape correction mode, automatic deceleration at corners of significantly large angle is provided in general to ensure that the acceleration developed during cornering shall fall within the predetermined tolerance. A micro-length block between relatively longer blocks intersecting each other in a large angle in CAM-created microsegment machining programs, in particular, may cause the cornering speed to mismatch the surroundings and thus affect surface quality. Setting parameter F96 bit 4 to “1” will now allow corner judgment and deceleration without suffering any effects of such a microblock. Serial No. 340839 22 HIGH-SPEED MACHINING MODE FEATURE 22-4 Restrictions 1. The modal functions for tool radius compensation, mirror image, scaling, coordinate system rotation, virtual axis interpolation, three-dimensional radius compensation, and shaping function should have been cancelled beforehand to give a G05 P2 command. Otherwise, an alarm may be caused (807 ILLEGAL FORMAT) or the modal function unexpectedly cancelled. Example : K ZA ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . Main program G28 X0 Y0 Z0 G90 G92 X0 Y0 Z100. G00 X-100.Y-100. G43 Z-10.H001 Movement under the conditions of G90, G00 and G43 M98 H001 G49 Z0 Movement under the conditions of G90 and G01 G28 X0 Y0 Z0 M02 Subprogram (O001) N001 F3000 G05 P2 High-speed machining mode ON G01 X0.1 When F84 bit 5 = 0: X-0.1 Y-0.001 Incremental motion under G01 X-0.1 Y-0.002 When F84 bit 5 = 1: Absolute motion under G01 X0.1 G05 P0 High-speed machining mode OFF M99 3. The high-speed machining mode should be selected and cancelled by using commands of G05 P2 and G05 P0, respectively, with the tool sufficiently cleared from the workpiece since the selection and cancellation always cause a deceleration of feed motions as shown below: 01 3 YA M A ZA K IM A In the high-speed machining mode there may occur a delay in display response since priority is always given to the processing for the automatic operation. Se 2. G05P2 X-577 Y-577 Z-577 G05P0 Speed C op yr ig ht (c )2 Command 4. Fairing function cannot be executed in the mode of single-block operation. 5. In the mode of high-speed machining a block of M/S/T function causes the flow of processing for fairing to be interrupted temporarily. 22-6 Serial No. 340839 22 HIGH-SPEED MACHINING MODE FEATURE 6. In the mode of high-speed machining a block of TM6 for tool change causes the execution speed and the fairing function to be lowered and suppressed, respectively, until a length-offsetting value is made valid for the new tool, which does not occur implicitly if the length values of the MAZATROL tool data are not to be used in executing EIA/ISO programs (F93 bit 3 = 0). In this case, therefore, it is necessary to cancel the high-speed machining mode temporarily so as to give explicitly the required G43-command for tool length offset. Tool change T01M6 Interpolation for high-speed machining G01 X__ F__ suppressed Offsetting value made valid at the first Z-axis movement Z__ X__ Y__ 7. er ve d . resumed Restrictions on programming and machine operation are listed in the following table: –: Invalid, Specification 5 Axis name Axes of auxilliary devices Unit of input Units of control Unit-of-programming × 10 N o. Tape code al Label skip K IM Parity V ZA Se Parity H A ri ISO/EIA automatic identification Tape format ts ISO/EIA ISO/EIA – (–) () () () Refer to the programming format. (err) () () (err) Tape input buffer () Pre-read buffer () Absolute/inrcemental data input (err) Inch/metric selection – (–) Decimal point input () Positioning () One-way positioning – (err) Linear interpolation () Circular interpolation () Helical cutting – (err) Spiral interpolation – (err) Virtual-axis interpolation – (err) Threading – (err) Plane selection () Fine-Spline interpolation (err) NURBS interpolation – (err) YA M 01 3 ht ig yr op C Interpolation functions ABC (c Position commands () Optimal block skip Control IN/OUT Buffers () )2 A Sequence number 5 ZA Program number 7 ABC Unit of programming Input formats gh 34 08 C 39 O R PO R A TI O Simultaneously controllable axis quantity 14 ri 14 .A ll 14 Effective controllable axis quantity K Control axes Maximum controllable axis quantity err: Alarm High-speed machining mode (Designation in the mode) Standard mode Subclassification N Classification re s : Valid, 22-7 Serial No. 340839 22 HIGH-SPEED MACHINING MODE FEATURE : Valid, Specification Classification Rapid traverse rate () Cutting feed rate () Synchronous feed (err) Automatic acceleration/deceleration () Linear acceleration/deceleration before cutting interpolation (err) Limitation in cutting direction Rapid feed override No. 1 cutting feed override No. 2 cutting feed override Exact-stop mode – Cutting mode Tapping mode – Automatic corner override Error detection Override cancellation Dwell in time M-command Miscellaneous function Optional stop N Tool functions ri T-command K IM Spare-tool selection Se Tool operation time integration ZA al S-command A Spindle functions o. No. 2 miscellaneous functions . er ve d re s ts gh (err) (err) .A ll N () – (err) – (err) () – () (err) () () () (–) (err) (err) – (err) 3D tool radius compensation – (err) Tool-offset memory () Number of tool offset data sets () Programmed tool-offset input – (err) (err) Fixed cycle for drilling – (err) M A ZA – YA 01 3 (c ht ig yr op C (err) Tool-offset number auto selection Program auxiliary functions () Tool radius compensation Tool-position offset Tool offset functions () )2 Tool-length offset () – 34 08 C 39 O R PO R A TI O Dwell in number of revolutions K Dwell Minimum limiting speed of feed axes/ According to curvature ri Cutting feed rate limitation Feed functions err: Alarm High-speed machining mode (Designation in the mode) Standard mode Subclassification –: Invalid, Pattern cycle – – (–) Subprogram control (err) Variable command – (err) Figure rotation – (err) Coordinate rotation – (err) User macro (err) User macro interruption (err) Scaling – (err) Mirror image – (err) Programmable mirror image – (err) Geometric function – (err) Programmed parameter setting err (err) 22-8 Serial No. 340839 22 HIGH-SPEED MACHINING MODE FEATURE : Valid, Specification Memory-based reference-point return (–) Automatic reference-point return – (err) #2/#3/#4 reference-point return – (err) Reference-point check – (err) Machine corrdinate system offset – (err) Workpiece coordinate system offset – (err) Local coordinate system offset – (err) Coordinate system setting – (err) Corrdinate system rotation setting – Program restart Absolute data detection Backlash correction Lost-motion correction Memory-based relative position correction Machine coordinate system correction Emergency stop . er ve d re s ts gh () .A ll () – (err) () () () (–) (–) () – () – () – () – () Handle interruption () Auto/manual simultaneous () HD operation (–) (–) o. N Jog feed ZA Incremental feed )2 01 3 YA M A Handle feed Manual rapid feed A K IM MDI operation ZA al ri Se Memory operation N () Tape operation Automatic-operation start () Automatic-operation halt () Single-block stop () NC reset – () External reset – () All-axis machine lock () Axis-by-axis machine lock () Dry run () Miscellaneous-function lock () Manual-absolute selection (–) ht (c Ethernet operation ig Data protection yr () External deceleration op () () Interlock C () () Programmed software limit External control signals (err) Software limit Operation modes (err) Stroke end Protection functions (–) 34 08 C 39 O R PO R A TI O Machine error correction Watchdog-based reference-point return K Coordinate system setting High-speed machining mode (Designation in the mode) Standard mode Subclassification err: Alarm ri Classification –: Invalid, 22-9 Serial No. 340839 22 HIGH-SPEED MACHINING MODE FEATURE : Valid, Specification () () Auto-run mode () Auto-run in progress () Auto-run halted () Cutting feed in progress () Tapping in progress – (–) Threading in progress – (–) Axis selected Axis-movement direction Rapid feed in progress er ve d Rewind NC alarm Reset () Movement-command completed () Manual tool-length measurement – (–) Automatic tool-length measurement Skip Multi-step skip Manual skip o. Servo off N Follow-up External data input/output ZA Setting/Display unit A Settings display M Search re s ts gh .A ll N () () () – (err) – (err) – (err) – (err) () () () () () () () () (err) – (–) () Program restart (err) Machining-time calculation () PC opening () Program-status display () Integrated-time display () Graphics display () Multi-step skip – (err) Graphics check () Alarm display () Operation-error display () Servo-error display () Operation-stop-cause display () Servo monitor display () NC-PC I/O signal display () DIO display () Keyboard-operation record () YA )2 (c Self-diagnostics () MDI ht ig yr op C Program creation () Check-and-stop 01 3 Setting/display functions K IM External data output I/F Data input/output ZA Se External data input I/F ri al Control-axis removal A Axis control functions . Servo-unit ready 34 08 C 39 O R PO R A TI O Measurement aid functions Control-unit ready K Status output signals High-speed machining mode (Designation in the mode) Standard mode Subclassification err: Alarm ri Classification –: Invalid, 22-10 Serial No. 340839 22 HIGH-SPEED MACHINING MODE FEATURE 8. The table below enumerates the modes in which high-speed machining mode is selectable. Code Function Code Selection of add. workpc. coordinate system G54.1 Linear interpolation G01 Workpiece setup error correction G54.4 Circular interpolation (CW) G02 Selection of workpiece coordinate system 2 G55 Circular interpolation (CCW) G03 Selection of workpiece coordinate system 3 G56 Spiral interpolation (CW) G02.1 Selection of workpiece coordinate system 4 G57 Spiral interpolation (CCW) G03.1 Selection of workpiece coordinate system 5 G58 Spline interpolation G06.1 Selection of workpiece coordinate system 6 G59 Polar coordinate interpolation OFF G13.1 Exact stop mode G61 (Note 2) Polar coordinate input OFF G15 Geometry compensation G61.1 Selection of XY-plane G17 Modal spline interpolation Selection of ZX-plane G18 Cutting mode Selection of YZ-plane G19 User macro modal call OFF Five-surface machining OFF G17.9 Inclined-plane machining Inch data input G20 (Note 1) 3-D coordinate conversion ON Metric data input G21 (Note 1) 3-D coordinate conversion OFF Pre-move stroke check OFF G23 Fixed cycle OFF Tool radius compensation OFF G40 Absolute data input (to the left) G41.5 Incremental data input G91 (to the right) G42.5 Inverse time feed G93 . G00 er ve d Function Positioning G64 re s G67 N .A ll ri gh ts G68.2 34 08 C 39 O R PO R A TI O Tool radius compensation for five-axis machining G61.2 G68 G69 G80 G90 G43 (Note 3) Feed per minute (asynchronous) G94 Tool length offset (–) G44 (Note 3) Constant surface speed control OFF G97 Tool tip point control, type 1/2 G43.4/G43.5 Cutting point command, type 1/2 G43.8/G43.9 Initial point level return in hole-machining fixed cycles G98 Tool position offset OFF G49 R-point level return in hole-machining fixed cycles G99 Radius data input for X-axis ON G10.9X0 Radius data input for X-axis OFF G10.9X1 Se G50 G50.1 G54 ZA Selection of workpiece coordinate system 1 K IM Mirror image OFF A Scaling OFF K G49.1 ri Head offset for five-surface machining OFF ZA al N o. Tool length offset (+) M A Giving a G5 P2 command in a mode other than those enumerated above will lead to an alarm (807 ILLEGAL FORMAT). )2 01 3 YA Note 1: The modal condition is temporarily replaced, if required, with the initial condition (to be selected automatically upon resetting for the G-code group concerned according to the setting of bit 4 of parameter F91) during the high-speed machining mode, and restored upon its cancellation. C op yr ig ht (c Note 2: The modal condition is temporarily replaced with the initial condition (to be selected automatically upon resetting for the G-code group concerned according to the setting of bit 1 of parameter F159) during the high-speed machining mode, and restored upon its cancellation. 22-11 Serial No. 340839 22 HIGH-SPEED MACHINING MODE FEATURE Note 3: The modal function of tool length offset is temporarily cancelled during the high-speed machining mode if the last motion command for the controlled axis of length offset before the mode selection (by G05 P2) is given with G53 (temporary selection of machine coordinate system in the current mode of selection of a programming coordinate system), and restored upon cancellation of the high-speed machining mode. Example : Selection of tool length offset (Schema [1]) G90 G53 Z0. Motion command with G53 (Schema [2]) There is no motion command given with reference to the programming coordinate system between the blocks of G53 and G05 P2. Selection of high-speed machining mode In the mode of high-speed machining, even axis motion commands that are given with respect to the programming coordinate system will be executed with the tool length offset remaining cancelled. (Schema [3]) Cancellation of high-speed machining mode The mode of tool length offset is automatically restored to normal function. er ve d . G43 G00 Z100. H1 gh ts re s G05 P2 G01 Z100. F180.0 Schema [2] 34 08 C 39 O R PO R A TI O Schema [1] N .A ll ri G05 P0 Schema [3] Machine origin Machine origin Z 100. A K ZA A Z Z X X Program origin Program origin M Program origin ZA X K IM Se ri al N o. Machine origin 100. C op yr ig ht (c )2 01 3 YA D740PB0153 22-12 E Serial No. 340839 AUTOMATIC TOOL LENGTH MEASUREMENT: G37 23 23 AUTOMATIC TOOL LENGTH MEASUREMENT: G37 1. Function and purpose re s er ve d . When the tool for which command data has been assigned moves to a programmed measurement position, the NC system will measure and calculate any differential data between the coordinates at that time and those of the programmed measurement position. Data thus obtained will become offset data for that tool. Also, if offsetting has already been performed for the tool, the current offset data will be further offset, provided that after movement of that tool under an offset status to the required measurement position, the measurements and calculations of any differential coordinates show some data to be further offset. At this time, further offsetting will occur for the tool offset data if only one type of offset data exists, or for the tool wear offset data if two types of offset data exist (tool length offsets and tool wear offsets). gh ri Programming format .A ll 2. This preparatory function cannot be used for VERSATECH machines. ts Note : G37 Z_ (X_, Y_) R_ D_ F_ 34 08 C 39 O R PO R A TI O N X, Y, Z: Address of the measurement axis and the coordinate of the measurement position Distance from the starting point of movement at a measurement feed rate, to the measurement position D: The area where the tool is to stop moving F: Measurement feed rate o. R: K ZA Description K IM Parameter A ri Description of parameters Se 3. al N If R, D, or F is omitted, respective parameter values will become valid. R-code command. Deceleration area F43 D-code command. Measurement area F44 F-code command. Measurement feed rate f F72 Conditions for skipping based on G37 (EIA/ISO) YA M A ZA F42 C op yr ig ht (c )2 01 3 See the separate Parameter List/Alarm List/M-code List for further details. 23-1 Serial No. 340839 23 AUTOMATIC TOOL LENGTH MEASUREMENT: G37 Example of execution If H01 = 0 T01T00M06 G90G00G43Z0H01 G37Z-600.R200.D150.F300 0 –100 –400 . Coordinate to reach the measurement position = –500.01 –500.01 – (–600) = 99.99 0 + 99.99 = 99.99 Thus, H01 = 99.99 er ve d 4. F R re s –500 gh ts D ri –600 N D 34 08 C 39 O R PO R A TI O –Z .A ll Measuring instrument K ZA A ri K IM Se If H01 = 100 T01T00M06 G90G00G43Z-200.H01 G37Z-600.F300 al N o. MEP229 ZA –200 –300 –400 )2 01 3 YA M A Coordinate to reach the measurement position = –600.01 –600.01 – (–600) = –0.01 100 + (–0.01) = 99.99 Thus, H01 = 99.99 –500 C op yr ig ht (c <Supplement> When the program shown above is executed, parameter F42 and F43 are set as follows: F42 (R-code command) : 25000 (25 mm) F43 (D-code command) : 2000 ( 2 mm) F42 –600 F43 F F43 –Z Measuring instrument MEP230 23-2 Serial No. 340839 AUTOMATIC TOOL LENGTH MEASUREMENT: G37 5. 23 Detailed description 1. Machine action based on command G37 G28X0Y0Z0 Machine zero point G90G0G43Zz1Hh0 ................................... [1] [1] G37Zz0Rr0Dd0Ff0 ..................................... [2], [3] [5] G0G90Zz1 ............................................... [4] (zi) [2] G28X0Y0Z0............................................ [5] [4] Rapid feed Measurement feed rate z0 : Coordinate of the measurement point R (r0) [3] (f0) (measurement position) r0 : Starting point of movement at measurement feed rate d0 : The area where the tool is to stop moving f0 : Measurement feed rate 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s Measurement point (Z0) er ve d . h0 : Offset number MEP231 point (Z0) Sensor signals (Measurement Position Reached) also act as skip signals. 3. If the F-code value is 0, the feed rate becomes 1 mm/min. 4. Update offset data becomes valid from the Z-axis (measurement axis) command codes that succeed the block of G37. 5. The delay and dispersion in processing of sensor signals, except for the PLC side, is from 0 to 0.2 ms for the NC side alone. Accordingly, the following measurement error may occur: K ZA Se ri al N o. 2. K IM A Maximum measurement error [mm] 1 = Measurement feed rate [mm/min] × ZA 60 0.2 [ms] 1000 When a sensor signal is detected, although the coordinates of the machine position at that time will be read, the machine will stop only after overruning through the distance equivalent to a servo droop. 01 3 YA M A 6. × )2 Maximum amount of overrun [mm] ht (c = Measurement feed rate [mm/min] × C op yr ig 30.3 [ms] if the position loop gain is 33. 23-3 1 60 × 30.3 [ms] 1000 Serial No. 340839 23 AUTOMATIC TOOL LENGTH MEASUREMENT: G37 7. If command G37 is executed in the single-block operation mode, the machine will come to a single block stop after execution of the block that immediately succeeds the G37-containing block. G0G90G43Z-200.H01 G37Z-600.R25.D2.F10 G0G90Z-200. Example: [1] [2] [3] Machine in its single-block stop status at block [1] button on Block [2] executed re s ri gh Precautions Alarm 923 ILLEGAL COMMAND G37 AXIS will result if the block of G37 does not contain axis data or contains data of two or more axes. 2. Alarm 924 G37, H COMMANDS SAME BLOCK will result if an H code exists in the block of G37. 3. Alarm 925 H CODE REQUIRED will result if G43 H_ does not exist before the block of G37. 4. Alarm 926 ILLEGAL G37 SIGNAL will result if input sensor signals occur outside a predetermined allowable measurement range or if a sensor signal is not detected on arrival of the tool at the ending point of movement. 5. If a manual interruption operation has been carried out during movement of the tool at a measurement feed rate, the program must be restarted only after returning that tool to the position existing when the interruption operation was carried out. 6. Set G37 data or parameter data so that the following condition is satisfied: 34 08 C 39 O R PO R A TI O N .A ll 1. K ZA A K IM Se ri al N o. 6. ts Machine replaced in its single-block stop status er ve d . Block [3] executed R-code value or parameter r > D-code value or parameter d A ZA Measurement point – Staring point > If the R-code value, the D-code value and parameter d, mentioned in Item G above, are all 0s, the program will come to a normal end only when the designated measurement point and the sensor signal detection point agree. Alarm 926 ILLEGAL G37 SIGNAL will result in all other cases. 8. If the R-code value, the D-code value, parameter r, and parameter d, mentioned in Item G above, are all 0s, alarm 926 ILLEGAL G37 SIGNAL will result after the tool has been positioned at the designated measurement point, irrespective of whether a sensor signal is detected. yr ig ht (c )2 01 3 YA M 7. C op 9. Set G37 (automatic tool length measurement code) together with G43 H_ (offset number assignment code). G43 H_ G37 Z_R_D_F_ 23-4 Serial No. 340839 23 AUTOMATIC TOOL LENGTH MEASUREMENT: G37 10. If the offset data is tool offsets of type A, then automatic correction of tool data occurs, or if the offset data is tool offsets of type B, then automatic correction of tool wear offsetting data occurs. Example : The TOOL OFFSET displays in both cases after offsetting of H1 = 100 TOOL OFFSET (Type A) TOOL OFFSET (Type B) TOOL LENGTH No. OFFSET No. OFFSET No. GEOMETRY WEAR 1 100 17 0 1 100 0 2 0 18 0 2 0 0 3 0 19 0 3 0 0 er ve d . Before measurement TOOL LENGTH No. OFFSET No. GEOMETRY 1 110 17 0 1 100 2 0 18 0 2 0 3 0 19 0 3 0 WEAR re s OFFSET ri gh ts 10 0 0 .A ll After measurement No. 34 08 C 39 O R PO R A TI O N 11. The distance from the machine zero point to the measurement point (skip sensor) is preset in register R2392 or R2393. Use this value as reference to set a coordinate using Z-, X-, or Y-code command. 12. When this function is used for tool offsets of type B, the correct data will not be displayed if the wear offset value exceeds 100. N o. 13. When executing this function in the presence of offset data, set the value of a D code to 2mm or less to prevent damaging the measuring instrument. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al 14. When executing this function in the absence of offset data (offset data = 0), set the values of an R code and a D code to those larger than the tool length of the tool to be measured. Also, in that case, before executing this function, make sure that the skip sensor in the measuring instrument correctly operates. 23-5 ht ig yr op C 01 3 )2 (c K ZA al ri Se A K IM ZA A M YA .A ll N 34 08 C 39 O R PO R A TI O o. N ts gh ri . er ve d re s Serial No. 340839 23 AUTOMATIC TOOL LENGTH MEASUREMENT: G37 23-6 E Serial No. 340839 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) 24 24 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) 1. Function and purpose Programming format re s 2. er ve d . When a workpiece fixed on the turntable is to be machined with the rotation of the table, mismatching between the workpiece reference position (program origin) and the origin of workpiece coordinates (center of rotation of the table) leads to an error in machining contour. Provided that the vector of a particular deviation from the center of rotation to the workpiece reference position is given as a “reference”, the “Dynamic Offsetting ” function will calculate for each command of rotation the deviation vector for the designated angular motion in order to control the linear axes for an adequate movement to the ending point as programmed with respect to the ideal workpiece origin, and thus to prevent the above-mentioned faulty machining from occurring. G54.2 Pn; A. N Definitions of terms 34 08 C 39 O R PO R A TI O 3. .A ll Cancellation is the initial state of the function (upon turning-on). ri gh ts n: Dynamic offset number (1 to 8) Give a “G54.2 P0” command (n = 0) to cancel the dynamic offsetting function. Deviation vector N Dynamic offset al B. o. The vector of a deviation from the center of rotation of the table (Wo: presupposed position of the workpiece origin) to the actual origin of coordinates of the workpiece mounted on the table. C. K ZA A K IM Se ri The offsetting vector (= deviation vector; whose direction depends upon the angular position of the table) for the ending point of each block containing a command of rotation. Reference dynamic offset C op yr ig ht (c )2 01 3 YA M A ZA A particular deviation vector entered as the reference for the calculation of dynamic offsets. Consists of the vector proper (measured and entered in three-axis component vectors) and the positions (in machine coordinates) of the rotational and tilting axis for the measurement. 24-1 Serial No. 340839 24 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) 4. Operation description A. Operation by a command of rotation in the G54.2 mode In the G54.2 mode (modal group 23), which is selected by a “G54.2Pn” command, deviation vector (to be used in a vector addition for offsetting) is re-calculated for each command of table rotation beforehand in order to create an adequate tool path for the block’s ending point as programmed with respect to the ideal workpiece origin. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . Mounted here. ZA K IM A D735S1101 YA M A ZA The ideal workpiece mounting position (the workpiece origin set on to the center of rotation of the table) The actual workpiece mounting position (vector Gs denotes the deviation from the ideal position) The position of the actual workpiece W1’ after a table rotation by The position of the ideally mounted workpiece W1 after a table rotation by The origin of workpiece coordinates (given by a corresponding preparatory function, such as G54) The reference deviation vector (to be registered in the NC unit as a reference dynamic offset.) The deviation vector for the rotation of the rotational axis by The starting point of the G1 (linear interpolation) microsegment command The ending point of the G1 (linear interpolation) microsegment command 01 3 [Legend] W1: W1’: W2’: W2: Wo: Gs: G: a (a1, a1’): b (b1, b2’): Se ri al Machine zero point K N o. Work offset (e.g. G54) yr ig ht (c )2 With the measurement results of the reference dynamic offset (Gs) registered for workpiece W fixed on the turntable, the selection (activation) of the G54.2 mode causes the tool to be shifted by the deviation vector Gs from the current position, point a1 for example, to point a1’ (if bit 0 of the F87 parameter described later is set to “0”). C op A succeeding command of “G1b1” (b1 = designation of a point with X-, Y-, and Z-coordinates) feeds the tool from a1’ to b1’ in the G1 mode (linearly). If, however, simultaneous motion of the rotational axis is designated in the same block, “G1b1C” for example, the tool is also fed linearly from the current position a1’ to the offset position b2’ which is obtained by adding the deviation vector G internally calculated for the rotation to point b2, the ending point on the ideally mounted workpiece. 24-2 Serial No. 340839 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) B. 24 On-reset operation It depends on the setting of parameter F95 bit 7 whether or not dynamic offsetting is canceled by resetting. F95 bit 7 = 0: The dynamic offset is canceled and the G54.2 mode is also canceled. = 1: The existing dynamic offset is held along with the G54.2 mode. When the automatic operation is started again after resetting, the dynamic offsetting mode is active from the beginning of the program. Note : . Operation by the selection of the G54.2 mode er ve d C. When the dynamic offset is canceled by resetting, the tool will not move on the path corresponding to the canceled vector (even if bit 0 of the F87 parameter described later is set to “0”). Operation by the cancellation of the G54.2 mode N D. .A ll ri gh ts re s When a G54.2Pn command is given, the deviation vector for the current position of the rotational axis is calculated and an offsetting movement is carried out on the linear axes by their respective components of the computed vector (dynamic offset). If an axis motion command is given in the same block, the deviation vector for the ending point of that block is calculated and the corresponding motion is performed from the current point to the dynamically offset ending point. 34 08 C 39 O R PO R A TI O The cancellation command (G54.2P0) moves the tool by a vector reverse to the current dynamic offset. It depends, however, on the setting of parameter F168 bit 0 whether or not an independent cancellation command (G54.2P0) causes the above-mentioned movement. F168 bit 0 = 0: G54.2P0 causes canceling motions on the liner axes concerned. = 1: G54.2P0 does not cause any motions on the liner axes. K ZA Se ri al N o. If an axis motion command is given in the same block, the corresponding motion is performed from the current point to the ending point as designated with workpiece coordinates (a movement including the cancellation of the dynamic offsetting). K IM E. A The axis motion occurs according to the current modal function concerned (of G-code group 1). Manual interruption in the G54.2 mode )2 Input and output of the reference dynamic offset (c 5. 01 3 YA M A ZA The deviation vector does not change if automatic operation is stopped in the G54.2 mode (by single-block stop, etc.) and then a movement on the rotational axis carried out in manual mode. The re-calculation of the deviation vector for dynamic offsetting will not occur until a rotational axis motion command or another G54.2 command is given after setting the MDI or automatic operation mode. ht Setting the reference dynamic offset by G10 ig A. yr G10 L21 Pn Xx Yy ········ ; C op Use this format of programmed parameter input. Argument P (n) denotes a dynamic offset number (1 to 8). According to the data input mode, absolute (G90) or incremental (G91), the designated axis value overwrites, or is added to, the current one. B. Reading/writing the reference dynamic offset with system variables System variable number = 5500 + 20 × n + m n: Dynamic offset number (1 to 8) m: Axis number (1 to 6) Use system variable #5510 to read the selected dynamic offset number (1 to 8). 24-3 Serial No. 340839 24 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) 6. Other detailed precautions 1. When the related parameters and reference dynamic offset are modified in the G54.2 mode, the modifications will become valid for the next G54.2Pn command onward. 2. The following describes how some specific commands are executed in the G54.2 mode. (a) Machine coordinate system selection (G53) A G53 command temporarily suppresses the dynamic offset and the axis motion is performed to the ending point as designated in machine coordinates. The deviation vector is not re-calculated even when a value for the rotational axis is specified. The dynamic offsetting function will not be recovered until a motion command is given with workpiece coordinates. gh ts re s er ve d . (b) Workpiece coordinate system change (G54 to G59, G54.1, G92, G52) Even when the workpiece coordinate system is changed in the G54.2 mode, the reference dynamic offset is not re-calculated and dynamic offsets are calculated according to the existing reference dynamic offset. The axis motion is carried out to the position obtained by adding the deviation vector to the ending point specified in the new workpiece coordinate system. 34 08 C 39 O R PO R A TI O N .A ll ri (c) Commands related to zero point return (G27, G28, G29, G30, G30.n) The dynamic offsetting function is temporarily canceled for the path from the intermediate point to the reference point and recovered for the movement from there to a position specified in the workpiece coordinate system. (Similar to the processing of the commands related to zero point return in the tool length offset mode) When the work offset data (workpiece origin) being used is modified by a G10 command in the G54.2 mode, the new work offset data will be valid for the next block onward. 4. As for the tool motion caused by a change only in the deviation vector, it is executed in the current mode of G-code group 1 and at the current rate of feed. If, however, the mode concerned is other than that of G0 or G1, e.g. a mode of circular interpolation (G2, G3, etc.), the tool is temporarily moved in the mode of linear interpolation (G1). 5. The type of the control axis for the turntable must be specified as “rotational”. The dynamic offsetting function cannot be used for the C-axis specified as “linear type”. 6. The polar coordinate interpolation with the rotational axis cannot be executed properly in the G54.2 mode. 7. The following function commands cannot be executed in the G54.2 mode: K ZA A M A ZA K IM Se ri al N o. 3. Figure rotation (M98) Mirror image (by G51.1 or control signal) Coordinates rotation (G68) Scaling (G51) G5P0, G5P2 )2 01 3 YA Restarting the program The workpiece coordinates read with system variables include dynamic offsets. 9. The component vectors of the current dynamic offset can be read using system variables #5121 (X-axis), #5122 (Y-axis) and #5123 (Z-axis). Related alarms C op 7. yr ig ht (c 8. 936 OPTION NOT FOUND The dynamic offset option is not installed. 959 WORKPIECE COORDINATE ERROR The origin of workpiece coordinates does not match the center of rotation of the turntable. 807 ILLEGAL FORMAT Argument P is missing in the block of G54.2. An incompatible G-code is used in the G54.2 mode or G54.2 is given in the mode of an incompatible G-code. 809 ILLEGAL NUMBER INPUT The value of P in the block of G54.2 is not proper. 24-4 Serial No. 340839 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) 8. 24 Related parameters A. Dynamic offset type Specify whether or not the tool is to be offset by each change only in the deviation vector. F87 bit 0 = 0: Offset (the indication of both workpiece and machine coordinates changes.) = 1: Not offset (no change in the position indication at all) Normally set this parameter to “0”. B. Axis of table rotation Specify the axis of rotation of the table in machine coordinates. Axis of rotation of the turntable (in the case of C-axis) S12 Y, Z Axis of rotation of the tilting table (in the case of A-axis) S11 Z Distance (length) from the tilting axis to the turntable surface re s er ve d . S5 X, Y gh The S11 and S12 settings are not required for machines without tilting table. ri Note : ts (The turntable center must be in the direction of –Z from the tilting axis.) C. 34 08 C 39 O R PO R A TI O N .A ll See Subsection 13-11-4 for details on the (read-only) system variables to be used for reading the values in parameters S5 and S12. Workpiece origin mismatch check 9. Mechanical requirements K ZA K IM Se Normally set this parameter to “0”. A ri al N o. The origin of the selected workpiece coordinate system must correspond to the center of table rotation in order that the dynamic offsetting may effectively function. The following parameter is provided to check the condition in question for each G54.2 command. F87 bit 1 = 0: The mismatch check is conducted. = 1: The mismatch check is not conducted. ZA The dynamic offsetting function requires the following conditions to be satisfied: The machine is equipped with a table of either two-axis rotational control (construction of a turntable on the tilting axis) or of a single rotational axis control (turntable or tilting table). The tilting and rotational axis must refer to rotating around the X- and Z-axis, respectively. Moreover, the construction must not be of the tilting axis mounted on the turntable. 2. The workpiece coordinate origin corresponds to the center of table rotation, and the X-, Y-, and Z-axes of workpiece coordinates are in parallel with, and the same direction as, the corresponding axes of machine coordinates. The requirements for machining with table rotation: The machining contour is described using a workpiece coordinate system fixed in parallel with the machine coordinate system (not rotated with the table rotation) and microsegment command blocks of G1. C op yr ig 3. ht (c )2 01 3 YA M A 1. 24-5 Serial No. 340839 24 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) 10. Operation description using a sample program The following describes the operation using a sample program (created for explanation only). Settings on the related displays WORK OFFSET (G54) X = –315.0, Y = –315.0, Z = 0.0, A = 0.0, C = 0.0 DYNAMIC OFFSET (P1) X = –1.0, Parameters Z = 0.0, A = 0.0, C = 90.0 F87 bit 0 = 0 (Dynamic offset type: Offset) S5 X = –315000 S5 Y = –315000 Sample program (for explanation of operation) . B. Y=0.0, er ve d A. Position indication and dynamic offset for each line of the program POSITION (workpiece coordinates) X Y Z A C X Y Z A C X Y Z 0.000 0.000 0.000 0.000 0.000 o. 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 315.000 315.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 –315.000 –315.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 N4 0.000 –1.000 0.000 0.000 0.000 0.000 –316.000 0.000 0.000 0.000 –1.000 0.000 N5 0.000 1.000 0.000 0.000 180.000 0.000 –314.000 0.000 0.000 180.000 0.000 1.000 0.000 N6 10.000 1.000 0.000 0.000 180.000 –305.000 –314.000 0.000 0.000 180.000 0.000 1.000 0.000 N7 0.000 11.000 0.000 0.000 180.000 –315.000 –304.000 0.000 0.000 180.000 0.000 1.000 0.000 N8 0.866 10.500 0.000 0.000 240.000 –314.134 –325.500 0.000 0.000 240.000 0.866 0.500 0.000 ZA ri K IM Se K 0.000 0.000 al 0.000 N3 C op yr ig ht (c )2 01 3 YA M A N2 Dynamic offset A N1 MACHINE (machine coordinates) N N-No. ZA C. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s N1 G91 G28 X0 Y0 Z0 A0 C0 N2 G54 N3 G90 G00 X0 Y0 Z0 A0 C0 N4 G54.2P1 N5 G01 C180.0 F1000 N6 G01 X10.0 N7 G03 X0 Y10.0 R10.0 N8 G01 C240.0 24-6 Serial No. 340839 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) D. 24 Illustration of the sample program Measurement of the reference dynamic offset Let the position where the mark on the table is aligned with the fixed position marked with be the zero point of the C-axis. The reference dynamic offset (arrow) = (–1, 0, 0) was measured with the table positioned at C = 90.0, as shown on the left. Workpiece er ve d N4 1 N5 2 re s N3 3 .A ll ri gh ts N-No. . Turntable (C-axis) N-No. 34 08 C 39 O R PO R A TI O N Illustration N6, N7 N8 5 K ZA YA <Explanation> M A ZA K IM Illustration A Se ri al N o. 4 N5 C op yr ig ht (c )2 01 3 1. N3 turns the table on the C-axis to (C = 0) and positions the tool tip to the × point (X, Y, Z = 0, 0, 0). 2. N4 causes the tool tip to be shifted by the dynamic offset (arrow) for an angular position of C = 0 to the × point (X, Y, Z = 0, –1, 0). 3. N5 turns the table on the C-axis to (C = 180) and causes the tool tip to be shifted by linear interpolation to the × point (X, Y, Z = 0, 1, 0) determined by the dynamic offset (arrow) for an angular position of C = 180. 4. N6 and N7 interpolate the linear and circular paths to the × point. 5. N8 turns the table on the C-axis to and causes the tool tip to be shifted by linear interpolation to the × point. 24-7 Serial No. 340839 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 24 DYNAMIC OFFSETTING II: G54.2P0, G54.2P1 - G54.2P8 (OPTION) 24-8 E Serial No. 340839 COMPENSATION FOR DEVIATION OF THE AXIS OF ROTATION OF THE TILTING TABLE 25 25 COMPENSATION FOR DEVIATION OF THE AXIS OF ROTATION OF THE TILTING TABLE 1. Outline Z re s er ve d . On machines with a tilting table (the axis of whose rotation is named A-axis) the position of the reference point for programming slightly deviates from the actual axis of table tilting and so moves with rotation on the A-axis, which in turn requires correction on the programmed point. The compensation function in question uses parameters L134 and L135, which denote the deviation existing with both A- and C-axis positions being 0°, to conduct the correction by shifting on the orthogonal axes. There is no need any more, therefore, to use a macroprogram which is created for the compensation in question with the aid of the values and (nameplate ratings for each machine). gh ts Reference value Y 34 08 C 39 O R PO R A TI O N Reference value Z .A ll L134 ri Y Machine coordinate system L135 Actual axis of A-axis rotation N o. Reference position for the axis of A-axis rotation Precautions K ZA K IM 2. D740PB0082 A Se ri al Axis of C-axis rotation ZA Do not use superfluously a macroprogram created for the compensation in question with the aid of the values and . Otherwise an inexpedient correction will be added. 01 3 YA M A Set the postprocessor for creating EIA/ISO programs, if used, so as not to include in the program created the compensation in question with the aid of the values and . Otherwise an inexpedient correction will be added. C op yr ig ht (c )2 The name of the axis for tilting motion control depends upon the specifications of the machine. 25-1 Serial No. 340839 K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 25 COMPENSATION FOR DEVIATION OF THE AXIS OF ROTATION OF THE TILTING TABLE 25-2 E Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 26 FIVE-AXIS MACHINING FUNCTION 26-1 Tool Tip Point Control (Option) 26-1-1 Function outline The tool-tip point control function provides simultaneous axis control for moving the tool (including its attitude) in order that the tool tip point may describe such a path, at such a rate of feed, as programmed in terms of the relative position of the tool to the workpiece. N .A ll ri gh ts re s er ve d . Center of rotation 34 08 C 39 O R PO R A TI O Programmed path K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. Control is provided so that the tip point of the tool follows the path described in the program. 26-1 D734P2001 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION Note 1: This function is valid only for machines of the following construction types: <Three types of five-axis control machines> Tool rotating type Table rotating type Mixed type Secondary rotational axis Primary rotational axis Tool Table Primary rotational axis Tool Workpiece Workpiece er ve d Workpiece . Tool Primary rotational axis re s Table Table Secondary rotational axis D740PB0034’ ri gh ts Secondary rotational axis Table rotating type 34 08 C 39 O R PO R A TI O N Tool rotating type .A ll <Two types of four-axis control machines with a single rotational axis> o. Rotational axis for the tool Workpiece Table ZA K IM Table A Se ri al Workpiece K N Tool Rotational axis for the table ZA D749PB0050 )2 01 3 YA M A Note 2: The execution of a block in the mode of tool-tip point control may require simultaneous motions on the controlled axes for which no explicit motion commands are given. If a simultaneous control of two or more rotational axes or five or more axes in total should be required for the execution of a single block, the alarm 801 SIMULTANEOUS AXIS EXCEEDED is raised. ht (c Note 3: If the required option is not added, giving a command of tool tip point control will result in an alarm (975 TOOL TIP PT CTRL N/A). C op yr ig Note 4: As for four-axis control machines with a single rotational axis, do not give a motion command for the controlled axis of the rotation around the Z-axis; otherwise the alarm 970 TOOL TIP CTRL PARAMETER ERROR is raised. 26-2 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 26-1-2 Detailed description 1. Programming coordinate system In the mode of tool tip point control, where an axis control is provided for the tip point to describe the programmed path, specify in a sequence of motion blocks the ending positions of the tool tip point in the peculiar coordinate system for programming. Two types of coordinate system are available (according to the parameter setting concerned) for describing the motion of the tool tip point: a table coordinate system (system fixed to the table) and a workpiece coordinate system. A. er ve d . Irrespective of which coordinate system is selected for programming, the relative motion of the tool tip point to the workpiece can be achieved as programmed in a sequence of linear interpolation (or circular interpolation, if available). Programming with a table coordinate system .A ll ri gh ts re s With the parameter F85 bit 2 being set to “0”, selecting the tool tip point control mode includes establishment of a programming coordinate system by fixing the current workpiece coordinate system to the table. The table coordinate system will rotate as the table rotates. It will not change in position, however, as the direction of the tool axis changes. Subsequent X-, Y- and Z-axis motion commands will be executed with respect to the table coordinate system. 34 08 C 39 O R PO R A TI O N The initial state of the table coordinate system refers to the current table position, or is to be specified by a table rotation command given in the block of G43.4 or G43.5. <Initial state> <After table rotation> Z Z o. Y K ZA Y X A K IM Se ri al N X ZA D740PB0035 C op yr ig ht (c )2 01 3 YA M A A workpiece coordinate system fixed to the table. The table coordinate system will rotate as the table rotates. It will not rotate, however, as the tool rotates on its rotational axis. The tool path described on the basis of this coordinate system refers to the relative motion of the tool to the workpiece. 26-3 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION <Description of the table coordinate system> The angular position of the table at the fixing of the workpiece coordinate system depends on the setting of the parameter concerned as follows: Starting position (F86 bit 6 = 0) 0° position (F86 bit 6 = 1) Method of fixing the workpiece coordinate system to the table The workpiece coordinate system is fixed to the table in its angular position at the start of tool tip point control. That is, the initial state of the table coordinate system refers to the current table position, or is to be specified by a table rotation command given in the block of G43.4 or G43.5. The workpiece coordinate system is fixed to the table in its angular position of 0°. C-axis origin = 45° C-axis origin = 45° er ve d . Reference angular position Reference position Y re s Reference position Y C=0 ri gh ts C-15. G43.4Hh .A ll X 34 08 C 39 O R PO R A TI O N 30° Example: Workpiece origin setting for the C-axis = 45° o. Y A ZA K N al ri C = 90. C = 90. K IM Se Y 135° X ZA X A M YA Since the table coordinate system depends on the angular position at the start of tool tip point control, correctly perform initial positioning on the rotational axis concerned; otherwise the relative position of the tool tip point to the workpiece may deviate from the expected path. 01 3 )2 (c Positioning Positioning Fixing the workpiece coordinate system to the table occurs at the start of tool tip point control. C op yr ig ht 45° Table rotation Table rotation 120° Feature X 26-4 D740PB0036 Fixing the workpiece coordinate system to the table occurs with the table in a C-axis position of 0° in the workpiece coordinate system. Since the table coordinate system is independent of the angular position at the start of tool tip point control, the relative position of the tool tip point to the workpiece cannot deviate from the expected path due to the initial angular positioning. Serial No. 340839 FIVE-AXIS MACHINING FUNCTION B. 26 Programming with a workpiece coordinate system With the parameter F85 bit 2 being set to “1”, the current workpiece coordinate system is to be used for describing the movement of the tool tip position. The coordinate system in this case will not rotate as the table rotates. Subsequent X-, Y- and Z-axis commands will be of linear motion with respect to the table (workpiece). Specify the ending positions along the orthogonal axes always taking into consideration the particular angle of the table rotation. <After table rotation> <Initial state> Z Z Y X er ve d . Y gh ts re s X ri D740PB0037 2. 34 08 C 39 O R PO R A TI O N .A ll A workpiece coordinate system established by offsetting the machine coordinate system in accordance with the workpiece origin settings. This coordinate system is stationary on the machine and does not rotate, therefore, with any motion on the rotational axis of the table or the tool. Programming format K ZA A Tool tip point control ON Se A. ri al N o. Two types of programming formats are available for tool tip point control: type 1 for programming only a tool length offset, and type 2 for programming a tool length offset and the direction (attitude) of the tool axis. YA M A Orthogonal coordinate axis motion command Rotational axis motion command Tool length offset number Coordinate system for linear interpolation under G00 in tool tip point control mode 01 3 x, y, z : a, b, c : h : p : ZA K IM <Type 1> G43.4 (Xx Yy Zz Aa Bb Cc) Hh (Pp) ..... Tool tip point control type 1 ON )2 <Type 2> G43.5 (Xx Yy Zz) Ii Jj Kk Hh ............. Tool tip point control type 2 ON op yr ig ht (c x, y, z : Orthogonal coordinate axis motion command i, j, k : Direction of tool axis (Position vector from tip point to center of rotation of the tool) h : Tool length offset number C B. Tool tip point control OFF (cancellation) G49 ......................................................... Tool tip point control OFF Other G-codes in group 8 G43/G44 (Tool length offset in the plus/minus direction) 26-5 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION Notes 1. The startup axis movement is executed in the currently active mode of movement. However, giving a G43.4 or G43.5 command under a mode other than of linear movement (G00 or G01) will cause an alarm (971 CANNOT USE TOOL TIP PT CONTROL). 2. Do not give a command that reverses the direction of the tool with respect to the workpiece. Otherwise an alarm will be caused (973 ILLEGAL TOOL AXIS VECTOR). 3. Do not use an axis address other than those for the particular axes specified in the parameters concerned (3 linear and 2 rotational ones). Otherwise an alarm will be caused (974 TOOL TIP PT CTRL FORMAT ERROR). 4. Do not specify the attitude of the tool axis using I, J, and K in the mode of tool tip point control type 1 (G43.4). Otherwise an alarm will be caused (974 TOOL TIP PT CTRL FORMAT ERROR). 5. Do not give any rotational axis motion command in the mode of tool tip point control type 2 (G43.5). Otherwise an alarm will be caused (974 TOOL TIP PT CTRL FORMAT ERROR). 6. Do not give a G43.5 command (for tool tip point control type 2) without the table coordinate system being appropriately selected for programming. Otherwise an alarm will be caused (971 CANNOT USE TOOL TIP PT CONTROL). 7. An argument of zero (0) for vector components (I, J, K) can be omitted in the mode of tool tip point control type 2 (G43.5). The position vector of the preceding block will be kept intact if all the three components are omitted. 8. Parameter F36 bit 6 determines the number of effective decimal digits in the tool axis vector’s components (I, J, K) for tool tip point control type 2. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . C. o. F36 bit 6 = 0: N 4 and 5 decimal digits are effective for the metric and inch system, respectively. K ZA ri al Example : For a block of G43.5I0.12345678J0.12345678K0.12345678Hh: A ZA K IM Se By rounding off the fifth decimal digit, 0.1235 is used as arguments I, J, and K for the metric system. By rounding off the seventh decimal digit, 0.12346 is used as arguments I, J, and K for the inch system. A F36 bit 6 = 1: M 7 decimal digits are effective, irrespective of the system of units. YA Example : For a block of G43.5I0.12345678J0.12345678K0.12345678Hh: 01 3 By rounding off the eighth decimal digit, 0.1234568 is used as arguments I, J, and K. )2 <Number of effective digits in vector components I, J, and K> 0 C op yr ig ht (c F36 bit 6 9. 1 System of units Minimum value Maximum value Metric system –99999.9999 99999.9999 Inch system –9999.99999 9999.99999 Metric system –99.9999999 99.9999999 Inch system –99.9999999 99.9999999 It depends upon the setting of a parameter (F114 bit 1) whether or not the cancellation causes an axis motion (in the currently active mode in G-code group 1: at rapid traverse [G00] or cutting feed [G01]) of canceling the tool length offset. Do not give a cancellation command in a mode of circular interpolation. Otherwise an alarm will be caused (971 CANNOT USE TOOL TIP PT CONTROL). 10. The cancellation command G49 must be given with no other instruction codes. Giving the G49 code with an axis motion command will cause an alarm (974 TOOL TIP PT CTRL FORMAT ERROR). 26-6 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 11. In the mode of tool tip point control, the angular movement on a rotational axis of rotational type always occur on the shortest path, and an angular distance of just 180° is covered in particular by rotation in the positive direction. 12. Type 1 of tool tip point control allows the coordinate system for linear interpolation under G00 in the mode of tool tip point control to be specified with argument P, as shown below. Argument P can be omitted if it is 0 (for the use of the parameter setting concerned). Argument P cannot be used for type 2 of tool tip point control. . P0 : As specified in the parameter setting concerned (F37 bit 4 = 0/1: Table/Machine coordinate system) P1 : Table coordinate system (independently of the parameter setting concerned) P2 : Machine coordinate system (independently of the parameter setting concerned) K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d The machine coordinate system is used for the linear interpolation concerned on condition that F37 bit 4 = 1, and the command block for selecting the mode of tool tip point control has “P0” or “P2” specified as an argument (or argument P omitted), workpiece coordinate system is selected (F85 bit 2 = 1; not table coordinate system [F85 bit 2 = 0]) for programming in the mode of tool tip point control, the motion command is of positioning mode (G00), and there is a motion command given (together) for the table’s rotational axis. 26-7 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 3. Startup The startup axis movement is executed with the tool tip point control being active (by an interpolation with reference to the table coordinate system). As explained in the table below, the startup operation depends upon whether or not motion commands for the orthogonal or rotational axes are given in the same block as G43.4 or G43.5. (The figures in the following table refer to a case where G43.4 is used for a machine equipped with the tool’s rotational axis named B. This example applies in principle to all other cases: use of G43.5 on a machine of different configuration, etc.) Motion commands for orthogonal axes Commands for rotational axis motion or toolaxis direction G43.4Hh G43.4XxYyZzHh ts re s G43.4Hh er ve d given (*1) F162 bit 0 = 1 (No motion by the offset amount) . not given (*1) F162 bit 0 = 0 (Motion by the offset amount) .A ll ri gh Control point 34 08 C 39 O R PO R A TI O N not given Tool tip point Tool tip point Y (x, y, z) X o. No motions occur at all. A motion occurs for the tip point to (A motion by the offset amount does be at a point of the specified coordinot occur.) nates, inclusive of offset amount. N A shifting motion occurs for the tip point to be at the current control point, i.e. in the tool-axis direction through the length offset distance. Z K ZA b G43.4XxYyZzBbHh b YA M A ZA K IM b G43.4BbHh A Se ri al G43.4BbHh given (*2) Tool tip point 01 3 Tool tip point X )2 (c (x, y, z) Y D740PB0038 A rotational motion occurs with automatic linear axis movements in order not to move the position of the tool tip point, as in the programming coordinate system (*2). A linear and rotational motion occurs for the tip point to be at a point of the specified coordinates, as in the programming coordinate system (*2), inclusive of offset amount. C op yr ig ht A linear and rotational motion occurs for the tip point to be at the current control point, as in the programming coordinate system (*2), through the length offset distance. Z (*1) “Given” is the orthogonal-axis motion command when the G43.4 or G43.5 block contains even only one command for an orthogonal axis. (*2) If there is also a motion command for the table’s rotational axis given with the table coordinate system being selected for programming, then that particular programming coordinate system (the table coordinate system) will move accordingly. In such a case the final position of the tip point’s (eventual) motion denotes a position relative to the table in the specified angle. 26-8 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 4. 26 Cancellation A parameter is provided for the selection of whether or not the cancellation includes the corresponding axis movement. - Cancellation with axis movement (F114 bit 1 = 0) The tool tip point control mode is cancelled with a shifting motion in the direction of the tool axis for canceling the particular amount of length offset. G49 er ve d . Control point ts re s Tool tip point ri .A ll - Cancellation without axis movement (F114 bit 1 = 1) gh D740PB0039 34 08 C 39 O R PO R A TI O N The tool tip point control mode is cancelled without any axis motions being caused by the cancellation block. K ZA A Giving the G49 code with an axis motion command will cause an alarm (974 TOOL TIP PT CTRL FORMAT ERROR). C op yr ig ht (c )2 01 3 YA M A ZA Note : D740PB0040 K IM Se ri al N o. G49 26-9 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 5. Operation in the mode of tool tip point control A. Tool tip point control type 1 (G43.4) <Orthogonal and rotational axis motion commands given in one block> - The motion is controlled in order that the tool tip point may describe the programmed path. Z : G43.4Xx1Zz1Bb1Hh Xx2Zz2Bb2 Xx3Zz3Bb3 : b1 b2 er ve d . b3 re s z1 gh ts z2 z3 Table coordinate system x2 x3 X D740PB0041 34 08 C 39 O R PO R A TI O N x1 .A ll ri Tool tip point - The points on the tool path programmed using the workpiece coordinate system will be traced by the tool after internal conversion of coordinates for the table coordinate system. <An independent rotational axis motion command> K ZA Z b0 b1 Tool tip point X Table coordinate system D740PB0042 C op yr ig ht (c )2 01 3 YA M A ZA K IM : G43.4Bb0Hh : Bb1 : A Se ri al N o. - The explicit command of rotation is executed together with automatic orthogonal axis movements in order not to move the position of the tool tip point, as in the table coordinate system (a position relative to the workpiece). 26-10 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. Tool tip point control type 2 (G43.5) <Orthogonal axis motion and position vector commands given in one block> The motion is controlled in order that the tool tip point may describe the programmed path. : G43.5Xx1Zz1Ii1Jj1Kk1Hh Xx2Zz2Ii2Jj2Kk2 Z Xx3Zz3Ii3Jj3Kk3 : (i1, j1, k1) er ve d . (i2, j2, k2) (i3, j3, k3) z1 re s z2 z3 Programming coordinate system x2 x3 .A ll x1 D740PB0043 34 08 C 39 O R PO R A TI O N <An independent position vector command> X ri gh ts Tool tip point The rotation command included in the position vector is executed together with automatic orthogonal axis movements in order not to move the position of the tool tip point. : G43.5Ii0Jj0Kk0Hh : Ii1Jj1Kk1 : A ZA (i1, j1, k1) ZA K IM Se ri al Z K N o. (i0, j0, k0) YA M A Tool tip point 01 3 X Programming coordinate system C op yr ig ht (c )2 D740PB0044 26-11 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 6. Positions, and Rate of feed, to be programmed in the mode of tool tip point control Describe in the program the movement of the center of the tool tip. Ball-ended milling cutter Flat-ended milling cutter Tool tip point er ve d D740PB0045 . Tool tip point ts re s The feed is controlled so that the center of the tool tip may move at the specified rate. 34 08 C 39 O R PO R A TI O N .A ll ri gh Control point F K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. - Interpolation occurs in the continuous lines determined by the specified positions of the tool tip point. - Specified rate of feed (F) = Speed of the tool tip point’s motion 26-12 D740PB0046 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 7. 26 Interpolation methods for rotational axes A parameter is provided for the selection between two interpolation methods for rotational axes: Uniaxial rotation interpolation or Joint interpolation. (In parentheses, the tool’s attitude varies from the same one at the start in different ways to the same one at the end of an interpolation block, indeed, but in both methods the locus of the tool tip points is the same in reference to the workpiece.) Method Uniaxial rotation interpolation Parameter F85 bit 3 = 0 Joint interpolation F85 bit 3 = 1 A linear interpolation with a constant rotational speed is applied to each rotational axis (as is normally the case with G01). <Tool axis direction relative to the workpiece> <Tool axis direction relative to the workpiece> Operation er ve d re s ts 34 08 C 39 O R PO R A TI O N .A ll Tool-axis direction vector at end. pt. gh Tool-axis direction vector at start. pt. The locus of the tool-axis direction vectors makes up in general a curved surface. Tool-axis direction vector at start. pt. Tool-axis direction vector at end. pt. ri The locus of the tool-axis direction vectors lies in a plane. . A simultaneous control is conducted on the rotational axes in order that the tool-axis direction vector may move at a constant angular velocity in a plane which is determined by the tool-axis direction vectors at the starting and ending points. Constant angular velocity in the plane <Machine action> o. <Machine action> A ZA K The speed of rotation is kept constant on each axis. YA M A ZA K IM Se ri al N The speed of rotation is not kept constant on each axis. D740PB0047 yr ig ht (c )2 01 3 There arises no unexpected collision or faulty machining during execution of an interpolation block since the tool attitude relative to the workpiece is always kept in a plane which is determined by the tool-axis direction vectors at the starting and ending points. C op Feature In order that the tool attitude relative to the workpiece may always be kept in one and the same plane, however, an intense motion on a particular controlled axis may be caused at the beginning, the end, or in the middle, of a block. 26-13 During execution of an interpolation block the tool axis deviates from the plane including the tool-axis direction vectors at the starting and ending points. The extent of the deviation depends upon the configuration of the machine’s controlled axes. This must be taken into consideration in programming so as to prevent collision and faulty machining. As the motion speed on each axis is kept constant, machine operation progresses smoothly and the machining time can be reduced to some extent in general. Consequently, this method of joint interpolation should be selected unless special care must be taken about collision and faulty machining. Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION <Notes> In order to move the tool-axis direction vector in one and the same plane, the method of uniaxial rotation interpolation may sometimes cause abrupt and discontinuous axis motions, as illustrated below with an example. The method of joint interpolation should in general be selected unless, for operational safety or other reasons, it is desired to keep the change in tool’s attitude always in the plane determined by the attitude vectors at the starting and ending points. Program example N1 B0.C0. N2 G43.4H1 N3 B45.C90. er ve d . Figure A below shows the relative position of the tool to the workpiece for block N3. gh ts re s Let us now take as an example the execution of block N3 by uniaxial rotation interpolation. In order that the tool’s attitude vector may move in the plane including the tool-axis direction vectors at the starting and ending points, actual machine operation will be as shown in Figure B. That is: first, in order to fit the B-axis rotation plane to that of the motion of the tool’s attitude vector .A ll ri a rotation by 90° occurs on the C-axis and, in synchronization with it, a movement of the tool tip point is performed to follow the starting point ([1] in Figure B), 34 08 C 39 O R PO R A TI O N then the tool tip point is fed to the ending point on the workpiece with a synchronized tool axis rotation by 45°, as programmed, on the B-axis ([2] in Figure B). (A) Tool’s relative motion to the workpiece C90 B45 A Se K IM C0 [2] Ps (Starting point) A ZA Ps ZA ri Pe (Ending point) K al N o. B0 (B) Machine action for uniaxial rotation interpolation [1] Pe YA M D740PB0048 C op yr ig ht (c )2 01 3 As illustrated above, the uniaxial rotation interpolation may sometimes cause discontinuous machine actions, while the joint interpolation is executed in continuous and smooth motions from the start to the end of the block. 26-14 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 Graphic explanation with tool’s attitude vectors in the top view of the machining surface. The interpolation of tool’s attitude vector occurs in synchronization with the tip point’s movement. The starting point, and the length, of the vector in the figure below refer to the position of the tool tip point, and the attitude (inclination) of the tool axis, respectively. (The shorter the vector, the uprighter [nearer to a position of B = 0] the tool.) Joint interpolation Ending point B45. C90. As a result of uniform motions on the B- and C-axis, the plane of toolaxis inclination pivots continuously. Ending point B45. C90. . Initial rotation by 90° on the C-axis is required for the tool-axis inclination to always occur in a plane in this direction. er ve d Uniaxial rotation interpolation B27. C54. B27. B18. re s B36. C72. B36. ts B18. C36. B9. ri gh B9. C18. N 34 08 C 39 O R PO R A TI O o. A ZA K N al ri C op yr ig ht (c )2 01 3 YA M A ZA K IM Se Starting point B0. C0. (Attitude vector is upright.) .A ll Starting point B0. C0. (Attitude vector is upright.) 26-15 D740PB0049 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 8. Selection for determining the angle on the rotational axis A. Tool tip point control type 1 (G43.4) As for tool tip point control type 1, movement on the rotational axis is carried out exactly as programmed (independently of the selected “type of passage through singular point” described later). Because of the specified tool attitude being unobtainable, an alarm will be caused (973 ILLEGAL TOOL AXIS VECTOR) when the following three conditions are all met: The method of uniaxial rotation interpolation is selected, 2. The position on the primary rotational axis differs in algebraic sign between the starting and ending points, and 3. A singular point (a state where the tool axis is parallel to the axis of rotation of the secondary rotational axis) is not passed as the starting point, nor on the way to the ending point. (This applies when, for instance, a motion command for the secondary rotational axis is included in the same block, with condition 2 above being satisfied.) Table rotating type Mixed type N Tool rotating type ri Definition of primary and secondary rotational axes .A ll Remark : gh ts re s er ve d . 1. 34 08 C 39 O R PO R A TI O Secondary rotational axis Tool Primary rotational axis Table N o. Primary rotational axis K Workpiece Table Secondary rotational axis ZA Table Tool A K IM Se ri Workpiece Workpiece ZA al Tool Primary rotational axis Secondary rotational axis C op yr ig ht (c )2 01 3 YA M A D740PB0034 26-16 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. Tool tip point control type 2 (G43.5) <At the startup of tool tip point control> As for tool tip point control type 2, a command for the tool-axis direction with I, J, and K can in general be executed by using either of the two pairs of angles on the rotational axes concerned. Pairs of angles on the rotational axes for obtaining the specified tool’s attitude relative to the workpiece Programmed command Solution with a positive angle of the B-axis For tool rotating type Solution with a negative angle of the B-axis B = –45° C = 180° er ve d . B = 45° C = 0° ts Solution with a negative angle of the A-axis For table rotating type A = –30° N .A ll A = 30° ri gh Solution with a positive angle of the A-axis re s I0.707J0K0.707 34 08 C 39 O R PO R A TI O C = 0° I0J0.866K0.5 ZA K IM Se I0.707J0K0.707 B = 45° B = –45° C = 0° C = 180° A ri al For mixed type Solution with a negative angle of the B-axis K N o. Solution with a positive angle of the B-axis C = 180° ZA D740PB0091 A The appropriate one of the two solutions is internally selected by the following process: Decision for the solution whose angle of the primary rotational axis has the same sign as its initial position (position at the startup of the tool tip point control by a G43.5 command), [2] If not decided in step [1] above (i.e. when the initial position on the primary rotational axis is equal to 0), then decision for the solution whose angle of the primary rotational axis has the same sign as the wider side of its axis stroke, [3] If not yet decided in step [2] above (i.e. when the positive and negative sides of the stroke on the primary rotational axis are equal to each other), then final decision for the solution whose angle of the primary rotational axis has a negative sign. C op yr ig ht (c )2 01 3 YA M [1] 26-17 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION <In the mode of tool tip point control (on passage through singular point)> In the mode of tool tip point control type 2 there are two types available for the passage through a singular point (a state where the tool axis is parallel to the axis of rotation of the secondary rotational axis), which are especially distinctive with regard to the angle of the rotational axis concerned at the ending point. Use parameter F162 bit 1 to select the desired type. Type 1 of passage through singular point Selected is a simultaneous control of rotational axes which results in the ending point’s angle of the primary rotational axis obtaining the same sign as its initial position (position at the startup by a G43.5 command). Operation The angle of the primary rotational axis (B- or A-axis in this example) has always the same sign (including 0). B=0 B = positive re s B = positive er ve d . - For tool rotating type C = 180 34 08 C 39 O R PO R A TI O N .A ll ri gh ts C=0 - For table rotating type A = positive A = positive N o. F162 bit 1 = 1 A=0 K ZA A C=0 C = 180 A ZA K IM Se ri al Example B = positive B=0 B = positive (c )2 01 3 YA M - For mixed type C=0 C op yr ig ht B C = 180 D740PB0092 26-18 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION Type 2 of passage through singular point With respect to the sign of the ending point’s angle of the primary rotational axis the appropriate method of axis control is internally selected by the following process: [1] Decision for a method which does not require an angular position beyond the permissible motion range of rotational axis, [2] If not decided in step [1], then decision for a method which requires smaller distance of angular motion on the secondary rotational axis, (Short-cut method for secondary rotational axis) Operation [3] If not decided in step [2], then decision for a method which requires smaller distance of angular motion on the primary rotational axis, (Short-cut method for primary rotational axis) er ve d . [4] If not yet decided in step [3], then final decision for a method which results in the ending point’s angle of the primary rotational axis obtaining the same sign as its initial position (position at the startup by a G43.5 command). re s The ending point’s angle of the primary rotational axis is determined in principle so that smaller distance of angular motion is required for the secondary rotational axis (C-axis in this example). gh B=0 B = negative .A ll ri B = positive ts - For tool rotating type C=0 34 08 C 39 O R PO R A TI O N C=0 F162 bit 1 = 0 A=0 A = negative A ZA K A = positive K IM Se ri al N o. - For table rotating type C=0 C=0 - For mixed type B = positive B=0 B = negative C op yr ig ht (c )2 01 3 YA M A ZA Example C=0 C=0 D740PB0093 26-19 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 9. Coordinate system for linear interpolation under G0 in the mode of tool tip point control The coordinate system for linear interpolation under G0 in the mode of tool tip point control depends upon the setting of the parameter F37 bit 4 as follows: F37 bit 4 = 0: Table coordinate system F37 bit 4 = 1: Machine coordinate system The machine coordinate system is used for the linear interpolation concerned on condition that F37 bit 4 = 1, and the command block for selecting the mode of tool tip point control has “P0” or “P2” specified as an argument (or argument P omitted), workpiece coordinate system is selected (F85 bit 2 = 1; not table coordinate system [F85 bit 2 = 0]) for programming in the mode of tool tip point control, the motion command is of positioning mode (G0), and there is a motion command given (together) for the table’s rotational axis. ts Linear interpolation in the table coordinate system gh A. re s er ve d . Note : ri The linear interpolation in question occurs in the table coordinate system when F37 bit 4 = 0. .A ll The movement of the tool tip point is controlled with table rotation being taken into consideration. 34 08 C 39 O R PO R A TI O N Example : Execution of a command of single-axis motion on the C-axis (table’s rotational axis) by 120° in the workpiece coordinate system B B B A K ZA A A B A Motion of the tool tip point on the machine Motion of the tool tip point on the table D740PB0135 ZA Linear interpolation in the machine coordinate system A B. A K IM Se ri al N o. A M The linear interpolation in question occurs in the machine coordinate system when F37 bit 4 = 1. YA The movement of the tool tip point is controlled independently of table rotation. (c )2 01 3 Example : Execution of a command of single-axis motion on the C-axis (table’s rotational axis) by 120° in the workpiece coordinate system B B C op yr ig ht B B B A A A A A Motion of the tool tip point on the machine Motion of the tool tip point on the table D740PB0136 26-20 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 When F37 bit 4 = 1, a G0-command (of interpolation type) is executed in order that the tool tip point may describe a straight line segment in the machine coordinate system, not in the table coordinate system, as is normally the case with a motion command of linear interpolation in the mode of tool tip point control. No motions occur, therefore, on the orthogonal axes in the case of a command for the table’s rotational axis only. In case that motion commands are given for orthogonal axes and the table’s rotational axis in the same block, the tool tip point will describe a straight line segment up to the specified ending point in the machine coordinate system. B For moving the tool tip point on a linear path in the table coordinate system (non-linear, therefore, with respect to the machine coordinate system). re s A B F37 bit 4 = 1 ts For moving the tool tip point on a linear path in the machine coordinate system (independently of the table rotation). .A ll ri gh A B er ve d A . F37 bit 4 = 0 G0G91X-10.Y-5.C120. D740PB0137 34 08 C 39 O R PO R A TI O N <Precautions on selecting the machine coordinate system for linear interpolation by G0> K ZA A YA M A ZA K IM Se ri al N o. When a motion command for the tool’s rotational axis is given in the same block, a simultaneous control is provided in order that the tool tip point may describe a straight line segment in the machine coordinate system up to the specified ending point. 01 3 D740PB0138 C op yr ig ht (c )2 The interpolation method applied to rotational axes is always of joint interpolation, independently of the parameter concerned (F85 bit 3). 26-21 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION In a combined use with other functions of coordinate conversion (for workpiece setup error correction [G54.4], inclined-plane machining [G68.2, G68.3], etc.), a control for the same purpose (linear path up to the specified ending point in the machine coordinate system) is provided with all the functions concerned being taken into consideration. Z X Z Values for workpiece setup error correction x = 40 y = 30 Motion commands X–70 Y–50 C100 Y er ve d . Y Motion commands X–70 Y–50 C100 X D740PB0139 gh ts re s Coordinate system conversion N .A ll ri It makes no difference in the commands available in the mode of tool tip point control whether the machine coordinate system or the table coordinate system is selected for the linear interpolation concerned. K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O As for a combined use with the tool radius compensation for five-axis machining, the selection of the machine coordinate system for the linear interpolation concerned makes a difference in the movement direction for the block in question and, therefore, in the vector created for radius compensation as well as in whether or not supplementary blocks are automatically inserted. For this reason it is advisable to use for a preparatory positioning close to the workpiece surface (cutting position) a command of linear interpolation in the table coordinate system (under another mode than G0, or without designation for the table’s rotational axis). 26-22 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 26-1-3 Relationship to other functions 1. Commands usable in the same block with G43.4/G43.5 Code Function Code Positioning Function G00 Incremental data input G91 Linear interpolation G01 Feed function F Absolute data input G90 Commands available in the mode of tool tip point control Function Code re s A. er ve d Relationship to other commands Function ts 2. . Giving any other command than those enumerated above in the same block as G43.4/G43.5 will lead to an alarm (972 ILLEGAL CMD TOOL TIP PT CTRL). Code G00 Scaling OFF Linear interpolation G01 Exact stop mode Circular interpolation G02/G03 (*1) (*5) Geometry compensation G61.1 (*3) Cutting mode G64 Dwell G04 Macro call High-speed machining mode G05 (*4) Absolute data input G90 Exact-stop G09 Incremental data input G91 Plane selection G17/G18/G19 Inverse time feed G93 Tool radius compensation OFF G40 Feed per minute G94 G41.2 G41.4 G41.5 M, S, T, B output to opposite system G112 (*2) Tool radius compensation for five-axis machining (to the left) Subprogram call/End of subprogram M98/M99 G49 ri G50 G61 G65 Feed function F M, S, T, B function MSTB (*2) Local variables, Common variables, Operation commands (arithmetic operations, trigonometric functions, square root, etc), Control commands (IF GOTO , WHILE DO ) Macro instructions M A .A ll K ZA A K IM G43/G44 Tool position offset OFF N 34 08 C 39 O R PO R A TI O o. N al ri G42.2 G42.4 G42.5 ZA Tool length offset (+/–) Se Tool radius compensation for five-axis machining (to the right) gh Positioning A command for helical/spiral interpolation will lead to an alarm (972 ILLEGAL CMD TOOL TIP PT CTRL). Use of a tool function (T-code) in the mode of tool tip point control will lead to an alarm (972 ILLEGAL CMD TOOL TIP PT CTRL). *3 Giving a G61.1 command with the geometry compensation being invalid for rotational axes will lead to an alarm (972 ILLEGAL CMD TOOL TIP PT CTRL). The fairing function for high-speed machining cannot be made effective. The related parameter (F96 bit 1) is of no effect during tool tip point control. With the table coordinate system being selected for programming, giving a circular interpolation command will lead to an alarm. (c )2 01 3 YA *1 *2 C op yr ig *5 ht *4 Giving any other command than those enumerated above in the mode of tool tip point control will lead to an alarm (972 ILLEGAL CMD TOOL TIP PT CTRL). 26-23 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. Modes in which tool tip point control is selectable Code Function Code Positioning G00 Cutting mode G64 Linear interpolation G01 Macro call G65 High-speed machining mode OFF G05P0 Modal macro call OFF G67 Radius data input for X-axis ON G10.9X0 3-D coordinate conversion ON G68 (*2) Programmed data setting OFF G11 Plane selection G17/G18/G19 Inch data input G20 Metric data input G21 3-D coordinate conversion OFF G69 Pre-move stroke check OFF G23 Fixed cycle OFF G80 Tool radius compensation OFF G40 Absolute data input Control for normal-line direction OFF G40.1 Incremental data input er ve d Function Tool length offset (+/–) G43/G44 Inverse time feed Tool position offset OFF G49 Feed per minute Head offset for five-surface machining OFF G49.1 Constant surface speed control OFF Scaling OFF G50 Mirror image OFF G50.1 Initial point level return in hole-machining fixed cycles G98 Polygonal machining mode OFF G50.2 G99 Selection of workpiece coordinate system, additional workpiece coordinate system G54-59, G54.1 R-point level return in hole-machining fixed cycles Workpiece setup error correction G54.4 Exact stop mode G61 Geometry compensation G61.1 (*1) G68.2 Inclined-plane machining G68.3 . G68.4 G90 re s G91 34 08 C 39 O R PO R A TI O N .A ll ri gh ts G93 G94 G97 G109 Cross machining control axis cancellation G111 Hob milling mode OFF G113 o. Single program multi-process control Giving a G43.4/G43.5 command under G61.1 with the geometry compensation being invalid for rotational axes will lead to an alarm (971 CANNOT USE TOOL TIP PT CONTROL). A G43.4/G43.5 command can be given under G68 only when parameter F168 bit 4 = 1 (Replacing the 3-D coordinate conversion command [G68] with inclined-plane machining command [G68.2]). ZA A Se ri *2 K al N *1 On the use of the MAZATROL tool data A 3. ZA K IM Giving a G43.4/G43.5 command in a mode other than those enumerated above will lead to an alarm (971 CANNOT USE TOOL TIP PT CONTROL). )2 01 3 YA M The data settings of the TOOL DATA display (prepared for the execution of MAZATROL programs) can also be used for the tool tip point control. The table below indicates those usage patterns [1] to [4] of the externally stored tool offset data items which are applied to the tool tip point control according to the settings of the relevant parameters (F93 bit 3 and F94 bit 7). ht (c Table 26-1 Tool offset data items used according to the parameter settings yr ig Pattern TOOL OFFSET C op [1] Data items used (Display and Data item names) Offset data items Parameter F94 bit 7 F93 bit 3 0 0 1 1 LENGTH Programming method G43.4/G43.5 with H-code T-code [2] TOOL DATA [3] TOOL DATA LENG. No. LENG. CO. 1 0 G43.4/G43.5 with H-code [4] TOOL OFFSET + TOOL DATA Offset data items + LENGTH 0 1 G43.4/G43.5 with H-code + T-code LENGTH + LENG. No. LENGTH + LENG. CO. 26-24 T-code + H-code Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 4. 26 Change between Tip control and Length offset A. Immediate change between G43.4/G43.5 and G43/G44 (without using G49) er ve d . An immediate change of one mode for the other with a motion command added causes the “control point” to be moved to the specified position. The control point here refers to the real tool tip point in the case of G43.4 and G43.5 or, for G43 and G44, to an imaginary tip point which corresponds to a B-axis angle of 0°. An independent change (without axis motion commands) does not include any change at all in axis positions, indeed, but causes the POSITION values (indicated with respect to the workpiece coordinate system) to be changed because of the above-mentioned difference in the meaning of the control point unless the current B-axis position is 0°. re s See the description under B below for more information. T01 T02 M6 G01 X_Y_Z_F_ ATC includes selection of length offset function. (Note 1) N N01 N02 ··· ··· N10 N11 ··· ··· N20 N21 ··· ··· .A ll ri gh ts Shown below is a programming example with an explanatory figure for the use of the MAZATROL tool data (stored on the TOOL DATA display). G43.4 Xx1 Yy1 Zz1 Bb1 G01 X_Y_Z_B_C_ 34 08 C 39 O R PO R A TI O Machining with length offset function (G43) Tool tip point control ON (Note 2) o. Machining with tip point control (G43.4) G43 Xx2 Yy2 Zz2 G01 X_Y_Z_B0 (Note 2) K A ZA Machining with length offset function (G43) ZA K IM Se ri al N Tool length offset ON YA M A N01 N02 - N09, from N21 on N20 (x1, y1, z1) N11 - N19 (x2, y2, z2) ht (c )2 01 3 N10 ig Z Control point Real tip point C op yr Control point = Real tip point X D734P2014 Note 1: When F93 bit 3 = 1, the length offset function is automatically made active by each ATC operation according to the new tool’s LENGTH value on the TOOL DATA display. Note 2: Add an H-code as required to use as the offset amount the sum of the LENGTH value and another related setting. (See Table 26-1 “Tool offset data items used according to the parameter settings” for more information.) 26-25 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. POSITION counting displayed on the screen An immediate (without using G49) and independent (without axis motion commands) change between G43.4/G43.5 and G43/G44 brings about no actual machine motion (axis movements), but causes the POSITION values on the display to be changed unless the current B-axis position is 0°. 1. Change of G43/G44 for G43.4/G43.5 ( ii ) ( iii ) er ve d . (i) Z re s [2] X gh ri Upon change of G43 for G43.4 the real tip point is indicated correctly by the POSITION value. D734P2015 .A ll The POSITION value [1] in the G43 mode does not corresponds with the real tip point [2] unless B-axis = 0°. 2. 34 08 C 39 O R PO R A TI O N In the G43 mode the POSITION value (of the tip position as recognized by the NC) corresponds with the real tip point when B-axis = 0°. ts [1] Change of G43.4/G43.5 for G43/G44 ( ii ) ( iii ) ZA A K IM Se ri Z K al N o. (i) ZA X [1] Change of G43.4 for G43 makes the POSITION value [1] different from the real tip point [2] unless B-axis = 0°. C op yr ig ht (c )2 01 3 YA M A In the G43.4 mode the POSITION value (of the tip position as recognized by the NC) corresponds with the real tip point, irrespective of Baxis position. [2] 26-26 Correct POSITION indication will not occur in the G43 mode until the B-axis is indexed to the 0° position. D734P2016 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION C. 26 Change between G43.4/G43.5 and G43/G44 by means of G49 The execution of the cancellation command G49 includes axis movements for canceling the offset amount in general (see Note 4 below). Add, therefore, a motion command as required for a safety position before the G49 command is given as a means of mode change. Shown below is a programming example with an explanatory figure for the use of the MAZATROL tool data (stored on the TOOL DATA display). N01 N02 ··· ··· N08 N09 N10 N11 N12 ··· ··· N18 N19 N20 N21 N22 ··· ··· T01 T02 M6 G01 X_Y_Z_F_ ATC includes selection of length offset function. (Note 1) Machining with length offset function (G43) G0 Xx1 Yy1 Zz1 G49 G0 Xx2 Yy2 Zz2 Bb2 Cc2 G43.4 G01 X_Y_Z_B_C_ gh ri Machining with tip point control (G43.4) ts re s er ve d . Positioning to a safety position for canceling the length offset function. Canceling the length offset function in the safety position. Positioning to a safety position for selecting the tip point control. Selecting the tip point control in the safety position. (Note 1, 2) G0 Xx3 Yy3 Zz3 Bb3 Cc3 G49 G0 Xx4 Yy4 Zz4 Bb4 Cc4 G43 G01 X_Y_Z_B0 34 08 C 39 O R PO R A TI O N .A ll Positioning to a safety position for canceling the tip point control. Canceling the tip point control in the safety position. (Note 4) Positioning to a safety position for selecting the length offset function. Selecting the length offset function in the safety position. (Note 1, 3) N11, N18 A K IM Se ri N08, N21 ZA al N01 K N o. Machining with length offset function (G43) N12 - N17 N10, N19 01 3 YA M N09, N20 A ZA N02 - N07, from N22 on )2 D734P2017 ig ht (c Note 1: When F93 bit 3 = 1, the length offset function is automatically made active by each ATC operation according to the new tool’s LENGTH value on the TOOL DATA display. C op yr Note 2: Add an H-code as required to use as the offset amount the sum of the LENGTH value and another related setting. (See Table 26-1 “Tool offset data items used according to the parameter settings” for more information.) Note 3: Irrespective of the related parameters (F94 bit 7 and F93 bit 3), the execution of a G49 command always clears the currently used offset amount. Do not fail, therefore, to give a G43 command or a tool change command (T_T_M6) again as required to replace the tip point control when the automatic selection of the length offset function is used (with F93 bit 3 = 1). Note 4: Axis movements for canceling the offset amount do not occur by the execution of an independent command of G49 unless F114 bit 1 = 0. 26-27 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 5. Prefiltering for rotational axes The tool tip point control may sometimes require a series of fluctuating angular movements which, in turn, necessitates frequent alternation of acceleration and deceleration, resulting in the surface quality being deteriorated. The function of prefiltering for rotational axes applies a moving average to the amounts of serial angular movements to smooth fluctuations of tool attitude. The time constant used in prefiltering for rotational axes can be set in parameter L125. The higher the time constant is, the more smoothly the tool attitude is changed. The prefiltering in question cannot be made effective at all when the time constant (L125) is set to zero (0). The prefiltering function works with its time constant (L125) on condition that . er ve d re s ts The setting in L125 is exclusively used in prefiltering for rotational axes. gh * high-speed smooth interpolation is valid (G5P2, G61.1, F3 = 1), F36 bit 7 is set to 1 (Prefiltering for rotational axes is made valid), tool tip point control is ON (under G43.4 or G43.5), and the mode of cutting feed, or interpolation, is ON. .A ll ri Without prefiltering Acceleration N Deceleration Deceleration NC control point Tool tip point K ri al N o. 34 08 C 39 O R PO R A TI O Acceleration ZA A D740PB0093 K IM Se Damage to surface due to frequent alternation of acceleration and deceleration Gradually decelerated C op yr ig ht (c )2 01 3 YA Gradually accelerated M A ZA With prefiltering D740PB0094 26-28 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 6. 26 Five-axis fairing function The five-axis fairing function is provided to correct the command points of tool tip as well as the command angles for rotational axes in the mode of tool tip point control in order to obtain smooth machining movements by diminishing critical variations in the microsegment program section. re s er ve d . Before five-axis fairing gh ts : Path through the command points ri D747PB0014 K A K IM Se : Path after five-axis fairing : Path through the command points ZA ri al N o. 34 08 C 39 O R PO R A TI O N .A ll After five-axis fairing C op yr ig ht (c )2 01 3 YA M A ZA D747PB0015 26-29 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION A. Required conditions for five-axis fairing function The five-axis fairing function cannot work until, in the mode of tool tip point control (G43.4 or G43.5), high-speed machining mode is turned ON (with G05P2) with parameter F157 bit 6 = 1 (Five-axis fairing function enabled), and four blocks of linear interpolation (five command points) are programmed in succession. Example : ts re s er ve d . (Tool tip point control ON) (High-speed machining mode ON) (P1) (P2) Five-axis fairing function activated (Pn) (Pn+1) (High-speed machining mode OFF) 34 08 C 39 O R PO R A TI O N .A ll ri gh N100 G43.4 ..................................... N101 G05P2 ..................................... N102 G00 X_Y_Z_B_C_ ................. N103 G01 X_Y_Z_B_C_ ................. N189 X_Y_Z_B_C_ ...................... N190 G00 X_Y_Z_B_C_ ................. N200 G05P0 ..................................... N201 G49 N202 M30 P1 P2 Pn+1 Pn D747PB0016 K al N o. : Path after five-axis fairing : Path through the command points B. ZA A K IM Se ri In the above example, the five-axis fairing function is activated for the blocks N103 to N189 to correct the command points (P2 to Pn). Conditions for canceling five-axis fairing function M A ZA The five-axis fairing function is temporarily canceled as often as one of the following conditions is satisfied: A command is given for another motion type than linear interpolation (G01). YA 1. 01 3 The five-axis fairing function is only applied to motion blocks of linear interpolation (G01) to correct their command points. A move-free block (without any motion command) is found. )2 2. ht (c The fairing function for three orthogonal axes is canceled at a block without motion commands for those axes. C op yr ig The fairing function for two rotational axes is canceled at a block without any motion commands for orthogonal as well as for rotational axes. 3. Move-free are, for instance, an empty block (null contents) and a comment block beginning and ending with “(” and “).” Single block operation mode is activated. The five-axis fairing function is temporarily canceled as long as the single block operation mode is activated. 26-30 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION C. Setting of the distance for geometry recognition The distance of geometry recognition is preset independently for orthogonal and rotational axes, and the five-axis fairing function conducts correction of the command points with respect to the preceding and succeeding areas of the specified distance from the point concerned, or to the geometry described by up to 7 blocks of linear interpolation. 1. Distance of geometry recognition for three orthogonal axes Geometry recognition dist. f. 3 orthogon. axes .......... Parameter F4 . Example : F4 = 5000 (0.5 mm) er ve d Command point Z Unit: mm Y 0.15 0.1 re s X 0.15 0.15 0.2 gh Point corrected ts 0.2 ri Succeeding: 0.5 Preceding: 0.5 N F4 = 5000 (0.5 mm) .A ll 0.2 34 08 C 39 O R PO R A TI O : Path after five-axis fairing : Path through the command points D747PB0017 o. In the following cases, however, the path of tool tip point will be drawn as programmed without any correction of command points. K A ZA Unit: mm K IM Se Command point ri al N The distance of the motion specified in a single block is greater than F4. 0.7 0.8 A ZA Succeeding: Preceding: 0.5 0.5 F4 = 5000 (0.5 mm) M Z YA Y X 01 3 D747PB0018 ht (c )2 As is the case with an arc composed of microsegment blocks, the geometry described with blocks (of smaller motion distance than F4) is judged to be smooth enough. ig Command point yr 0.1 op 0.1 0.1 0.1 0.1 0.1 0.1 C 0.1 0.1 0.1 Preceding: 0.5 Succeeding: 0.5 F4 = 5000 (0.5 mm) Z Unit: mm Y X Note : D747PB0019 A value of 1 mm or 0.04 in is used even if parameter F4 is set to zero (0). 26-31 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 2. Distance of geometry recognition for two rotational axes Geometry recognition dist. f. 2 rotation. axes .......... Parameter F5 In the following cases the path of tool tip point will be drawn as programmed without any correction of command points. The angular distance of the motion specified in a single block is greater than F5. As is the case with an arc composed of microsegment blocks, the geometry described with blocks (of smaller motion distance than F5) is judged to be smooth enough. Note : . Setting of tolerance (of chord error) er ve d D. A value of 1° is used even if parameter F5 is set to zero (0). ts re s The tolerance (of chord error) is preset independently for orthogonal and rotational axes, and the point corrected by the five-axis fairing function can be further corrected in order that the error from the original command point may not exceed the tolerance (of chord error). Maximum permissible linear error caused by fairing for three orthogonal axes ri gh 1. .A ll Max. linear error caused by 5-axis fairing ........ Parameter F104 34 08 C 39 O R PO R A TI O N Example : Linear error of the point corrected by fairing is greater than F104. Point corrected by fairing (corrected further) Z Y K ZA A Se ri al N o. X F104 K IM Point corrected by fairing (without further correction) ZA : Path after five-axis fairing : Path through the command points M A D747PB0020 Maximum permissible angular error caused by fairing for rotational axes 01 3 2. No further correction is performed after fairing if parameter F104 is set to zero (0). YA Note : (c )2 Max. angular error caused by 5-axis fairing ........ Parameter F128 Angle Point corrected by fairing (without further correction) C op yr ig ht Example : Angular error of the point corrected by fairing is greater than F128. Time Point corrected by fairing (corrected further) F128 : Path after five-axis fairing : Path through the command points 26-32 D747PB0021 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 26-1-4 Restrictions The selection code of tool tip point control (G43.4/G43.5) must not be given together with any other G-code. 2. Calculation of the machining time The machining time cannot be calculated accurately for a program containing tool tip point control commands. 3. Tracing Tracing in the mode of tool tip point control is displayed with reference to the machine coordinate system. 4. Tool path check Tool path check function cannot be applied to a program containing tool tip point control commands. (The programmed data can only be checked as if tool tip point control were throughout cancelled.) 5. Restart As for restarting operation, do not specify a block within the G43.4/G43.5 mode (nor a block of cancellation [G49]) as a restarting position. Otherwise an alarm will be caused (956 RESTART OPERATION NOT ALLOWED). 6. Resetting The mode of tool tip point control is cancelled by resetting. 7. Corner chamfering/rounding Do not use corner chamfering or rounding commands in the mode of tool tip point control. Otherwise an alarm will be caused (972 ILLEGAL CMD TOOL TIP PT CTRL). 8. Mirror image function (activated by a code or external switch) Mirror image function is not available at all in the mode of tool tip point control. 9. Macro interruption and MDI interruption Macro interruption as well as MDI interruption is not available in the mode of tool tip point control. Giving a G43.4/G43.5 command with macro interruption being active will lead to an alarm (971 CANNOT USE TOOL TIP PT CONTROL), while an attempt to perform MDI interruption in the mode of tool tip point control will only cause another alarm (167 ILLEGAL OPER TOOL TIP PT CTRL). K ZA A A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 1. 01 3 YA M 10. Display of actual feed rate The feed rate displayed is the final resultant rate of feed, not the feed rate at the tool tip with respect to the workpiece. ht (c )2 11. Manual interruption As a general precaution to be taken for normal machine operation, resetting is required after any manual interruption (resumption of operation is prohibited). C op yr ig 12. The relevant items of digital information on the POSITION display denote the following in the mode of tool tip point control: POSITION: MACHINE: BUFFER: REMAIN: Position of the tool tip point in the workpiece coordinate system Position of the control point in the machine coordinate system Moving distance of the control point in the next block Remaining distance of movement of the control point in the current block 13. Tool function Use of a tool function (T-code) in the mode of tool tip point control will lead to an alarm (972 ILLEGAL CMD TOOL TIP PT CTRL). 26-33 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 14. Calling a MAZATROL program as a subprogram Do not specify a MAZATROL program as a subprogram to be called up in the mode of tool tip point control. Otherwise an alarm will be caused (972 ILLEGAL CMD TOOL TIP PT CTRL). 15. Circular interpolation Circular interpolation can only be applied when the current tool tip point control is of type 1 (G43.4) with workpiece coordinate system being selected for programming. In other cases giving a command for circular interpolation will cause an alarm (971 CANNOT USE TOOL TIP PT CONTROL). Moreover, even thus available circular interpolation mode cannot accept any commands for rotational axes, and such an inadmissible command will result in the alarm 972 ILLEGAL CMD TOOL TIP PT CTRL. gh ts re s er ve d . 16. MAZATROL tool data When the MAZATROL tool data (data prepared on the TOOL DATA display) are made valid for executing EIA/ISO programs, milling tools should generally be used in the mode of tool tip point control. Tool length offset for tool tip point control will be executed for turning tools with their LENGTH B and NOSE-R data being ignored. .A ll ri 17. High-speed machining mode The fairing function for high-speed machining cannot be made effective. The related parameter (F96 bit 1) is of no effect during tool tip point control. 34 08 C 39 O R PO R A TI O N 18. Positioning commands (under G0) in the mode of tool tip point control are always executed in interpolation-type paths even if F91 bit 6 is set to 1. N o. 19. Prefiltering for rotational axes When the function of prefiltering for rotational axes is made valid, the maximum permissible acceleration for rotational axes is increased according to the time constant concerned (as set in L125). K ZA A K IM Se ri al 20. The acceleration and deceleration for positioning commands (under G0) in the mode of tool tip point control occurs according to the parameters L74 (rate of cutting feed for pre-interpolational acceleration/deceleration control) and L75 (time constant for pre-interpolational cutting feed) when they are given under G61.1 (geometry compensation) or with the (optional) fixed gradient control for G0 being selected. ZA 21. Five-axis fairing function )2 01 3 YA M A If Joint interpolation is selected (F85 bit 3 = 1), command points are corrected by the five-axis fairing function for the three orthogonal axes (for tool tip position control) as well as for the two rotational axes (for tool attitude control). Correction is conducted, however, only for the three orthogonal axes if Uniaxial rotation interpolation is selected (F85 bit 3 = 0), or the fairing function for rotational axes is not made valid at all (F151 bit 5 = 0). ht (c The program section for five-axis fairing is excluded from the domain of the function for sequence number search and modal restart. C op yr ig Tool path is drawn on the TOOL PATH CHECK display according to the command points corrected by the five-axis fairing function. If the feed hold function is applied during five-axis fairing, the stop position will be used as the starting point of fairing in the resumed operation. If the function of workpiece setup error correction is activated, the solutions for rotational axes may differ in algebraic sign depending upon whether the five-axis fairing function is enabled or disabled. Set bit 3 of parameter F156 to “1” (Priority is given to the sign of the primary rotational axis) if it is desired to obtain the same solutions. An attempt to use the five-axis fairing function in the mode of tool radius compensation for five-axis machining (G41.2, G41.4, G41.5, G42.2, G42.4, or G42.5) will only cause an alarm (961 ILLEGAL COMMAND 5X RADIUS COMP.). 26-34 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 As for machines of four-axis control type (K113 = 4 or 5), a command for selecting the high-speed machining mode (G5P2) will only cause an alarm (972 ILLEGAL CMD TOOL TIP PT CTRL) if it is given in the mode of tool tip point control (G43.4 or G43.5) with the five-axis fairing function being enabled (F157 bit 6 = 1). Disable the five-axis fairing function as required. 26-1-5 Related parameters Offset for the axis of rotation of the rotational axis (for table rotating type) Axis-of-rotation position on the horizontal axis (X) 0 - 99999999 0.0001 mm K123 Axis-of-rotation position on the vertical axis (Y) 0 - 99999999 0.0001 mm K124 Axis-of-rotation position on the height axis (Z) 0 - 99999999 0.0001 mm ts K122 Remarks er ve d Setting unit re s Setting range ri .A ll B. Contents gh Parameter Offset for the axis of rotation of the secondary rotational axis Parameter Contents Setting range Setting unit Remarks 0 - 99999999 0.0001 mm To be omitted Axis-of-rotation position on the horizontal axis (X) K127 Axis-of-rotation position on the vertical axis (Y) 0 - 99999999 0.0001 mm To be omitted K128 Axis-of-rotation position on the height axis (Z) 0 - 99999999 0.0001 mm To be omitted K ZA A A ZA K IM Se ri al N o. K126 Axis of C-axis rotation 01 3 YA M Machine origin )2 Offset vector from spindle nose to A-axis center K124 (on the X-axis) K122 (on the Y-axis) K123 Axis of A-axis rotation C op yr ig ht (c Reference point of the workpiece D740PB0095 Fig. 26-1 For table rotating type 26-35 . Offset for the axis of rotation of the primary rotational axis N A. 34 08 C 39 O R PO R A TI O 1. Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 2. Offset for the axis of rotation of the rotational axis (for tool rotating type) A. Offset for the axis of rotation of the primary rotational axis Parameter Setting range Setting unit Remarks K122 Axis-of-rotation position on the horizontal axis (X) 0 - 99999999 0.0001 mm To be omitted K123 Axis-of-rotation position on the vertical axis (Y) 0 - 99999999 0.0001 mm To be omitted K124 Axis-of-rotation position on the height axis (Z) 0 - 99999999 0.0001 mm To be omitted Offset for the axis of rotation of the secondary rotational axis Parameter Contents er ve d . B. Contents Setting range Setting unit Remarks Axis-of-rotation position on the horizontal axis (X) 0 - 99999999 0.0001 mm To be omitted K127 Axis-of-rotation position on the vertical axis (Y) 0 - 99999999 0.0001 mm To be omitted K128 Axis-of-rotation position on the height axis (Z) 0 - 99999999 0.0001 mm 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s K126 N o. Axis of C-axis rotation Axis of B-axis rotation ZA A ZA K IM Se ri al K128 K Offset vector from tool holder end to B-axis center M A D740PB0096 Selection of programming coordinate system 01 3 3. YA Fig. 26-2 For tool rotating type (c )2 Parameter 0: Selection of the table coordinate system 1: Selection of the workpiece coordinate system Selection of interpolation method for tool tip point control C op 4. yr ig ht F85 bit 2 Setting range Parameter F85 bit 3 Setting range 0: Uniaxial rotation interpolation 1: Joint interpolation 26-36 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 5. 26 Selection of override scheme for tool tip point control Parameter Setting range Overriding the rapid traverse in the mode of tool tip point control is applied F86 bit 2 0: to the speed of motion of the tool tip point 1: to the speed limit for the axis control’s reference point Overriding the cutting feed in the mode of tool tip point control is applied F86 bit 5 0: to the speed of motion of the tool tip point 1: to the speed limit for the axis control’s reference point Setting range 0: Angular position at the start of tool tip point control F86 bit 6 ts re s 1: Position of 0° Parameter Setting range 0: Cancellation with axis movement for clearing the length offset amount F114 bit 1 1: Cancellation without axis movement 34 08 C 39 O R PO R A TI O 8. ri gh Selection of canceling operation by G49 in the mode of tool tip point control .A ll 7. er ve d Parameter . Selection of reference position on the rotational axis for tool tip point control N 6. Selection of operation for starting up the tool tip point control without motion commands Parameter Setting range 0: Startup with axis movement by the length offset amount o. F162 bit 0 K ZA K IM Parameter A Selection of type of passage through singular point for tool tip point control Se 9. ri al N 1: Startup without axis movement Setting range ZA 0: Selected is a simultaneous control of rotational axes which requires, for passing through the singular point, smaller distance of angular motion on the secondary rotational axis. (The motion on the primary rotational axis may use both positive and negative sides of the stroke.) M A F162 bit 1 )2 01 3 YA 1: Selected is a simultaneous control of rotational axes which does not require, throughout one block, any motion on the primary rotational axis into the opposite side of its stroke to that of its initial position (position at the startup). (c 10. Limit of feed rate for the mode of tool tip point control C op yr ig ht Set the maximum admissible rate of cutting feed for the mode of tool tip point control. The cutting feed during tool tip point control will be limited by parameter M3 (general limit of feed rate) if it is lower than the setting of parameter S22. Note : Set zero (0) in S22 to make the parameter invalid. If both parameters S22 and M3 are set to zero (0), then parameter M1 (for rapid traverse) serves as the speed limit in question. Parameter S22 Setting range 0 - 200000 Setting unit Linear axis 1 mm/min Rotational axis 1 deg/min 26-37 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 11. Criterion for the neighborhood of singular point Parameter Setting range Setting unit K110 0 - 360 1 deg 12. Effective decimal digits in arguments I, J, and K for G43.5 (tool tip point control type 2) Parameter Setting range Number of effective decimal digits in arguments I, J, K for tool tip point control type 2 F36 bit 6 0: 4 or 5 for the metric or inch system er ve d . 1: 7 (irrespective of the system of units) Setting range ts Parameter re s 13. Function of prefiltering for rotational axes valid/invalid F36 bit 7 gh Function of prefiltering for rotational axes ri 0: Invalid N .A ll 1: Valid Parameter Setting range L125 0 - 200 34 08 C 39 O R PO R A TI O 14. Time constant for prefiltering for rotational axes Setting unit o. 1 ms The prefiltering cannot be made effective at all when L125 is set to zero (0). ZA K IM Parameter A Se ri 15. Five-axis fairing function valid/invalid K al N Note : Setting range Five-axis fairing function 0: Invalid 1: Valid F151 bit 5 Fairing function for rotational axes during five-axis fairing 0: Invalid 1: Valid 01 3 YA M A ZA F157 bit 6 Setting range Setting unit Distance of geometry recognition for three orthogonal axes 0 - 999999 0.0001 mm or 0.00001 in Distance of geometry recognition for two rotational axes 0 - 899999 0.0001° (c Parameter ht )2 16. Distance of geometry recognition for five-axis fairing F5 C op yr ig F4 17. Tolerance (of chord error) for five-axis fairing Parameter Setting range Setting unit F104 Maximum permissible linear error caused by fairing 0 - 999999 0.0001 mm or 0.00001 in F128 Maximum permissible angular error caused by fairing 0 - 3600000 0.0001° 26-38 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 26-2 Cutting Point Command (Option) 26-2-1 Function outline Cutting point command function provides a special type of tool-tip point control in order that the cutting point (point of contact between tool and workpiece for chip removal) may precisely describe a tool path as programmed on the machining surface. Therefore, the tool path itself, once described in a machining program, need not be modified according as the geometry (tool diameter, corner radius, etc.) of the tool to be used is changed, which is not the case with the ordinary tool-tip point control. .A ll ri gh ts re s Tool-axis direction vector Tool length er ve d . Tool diameter N Corner radius 34 08 C 39 O R PO R A TI O Normal vector to the machining surface Programmed path Cutting point N o. D747PB0031 K al This function is valid only for five-axis control machines. ZA A Three types of five-axis control machines Table rotating type 01 3 YA M Tool’s first rotational axis Tool’s rotational axis Tool Table )2 Tool’s second rotational axis ht (c Tool Tool Workpiece Table’s first rotational axis Workpiece yr ig Mixed type A Tool rotating type ZA Remark : K IM Se ri If the required option is not added, giving a command for selecting the mode of cutting point command will result in an alarm. Table op C Workpiece Table Table’s second rotational axis Table’s rotational axis D740PB0034 * The VARIAXIS machines belong to the table rotating type. * The VERSATECH machines belong to the tool rotating type. 26-39 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-2-2 Detailed description 1. Programming coordinate system Refer to the corresponding description given for the tool tip point control under 1. in Subsection 26-1-2. 2. Programming format Cutting point command ON re s A. er ve d . Two types of programming formats are available for cutting point command: type 1 for specifying the tool-axis direction vector in rotational axis coordinates, and type 2 for programming the direction (attitude) of the tool axis in vector components. gh ts <Type 1> G43.8 (Xx Yy Zz Aa Bb Cc Hh Dd Pp Qq) ,L2 Ii Jj Kk .... Cutting point command type 1 ON .A ll ri <Type 2> G43.9 (Xx Yy Zz Ii Jj Kk Hh Dd Qq) ,L2 Ii Jj Kk ........... Cutting point command type 2 ON K ZA A Se ri al N o. 34 08 C 39 O R PO R A TI O N x, y, z : Orthogonal coordinate axis motion command a, b, c : Rotational axis motion command i, j, k : Vector components of tool-axis direction h : Tool length offset number d : Tool radius compensation number p : Temporary G0 cancellation q : Type of barrel-shaped milling cutter (1/2/3: Type 1/2/3) ,L2 : Declaration for normal vector specification i, j, k : Components of normal vector to the machining surface (after ,L2) M Cutting point command OFF (cancellation) YA B. A ZA K IM The available types of barrel-shaped milling cutters are detailed later under 5-A “Applicable tool types and compensation amounts” in Subsection 26-2-2. 01 3 G49 ......................................................... Cutting point command OFF )2 Other G-codes in group 8 (c G43/G44 (Tool length offset in the plus/minus direction) ht Notes ig C. C op yr 1. 2. The startup axis movement is executed in the currently active mode of movement. However, giving a G43.8 or G43.9 command under a mode other than of linear movement (G00 or G01) will cause an alarm (1836 CANNOT USE CUTTING PT CTRL). Do not use an axis address other than those for the particular axes specified in the parameters concerned (3 linear and 2 rotational ones). Otherwise an alarm will be caused (1838 CUTTING PT CTRL FORMAT ERROR). 26-40 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 3. 26 Do not give any of the following commands; otherwise an alarm will be caused (1838 CUTTING PT CTRL FORMAT ERROR). Specifying the normal vector with arguments I, J and K without preceding ,L2, Specifying all the arguments I, J and K after ,L2 with zero (0), Omitting all the arguments I, J and K after ,L2, Use of any other addresses than I, J and K after ,L2, Specifying an argument Q with a value other than 1, 2 and 3, or Specifying an argument Q without setting together an argument H. An argument of zero (0) for vector components (I, J, K) after ,L2 can be omitted in the mode of cutting point command type 1 (G43.8). 5. Do not give any rotational axis motion command in the mode of cutting point command type 2 (G43.9). Otherwise an alarm will be caused (1838 CUTTING PT CTRL FORMAT ERROR). 6. Do not give a G43.9 command (for cutting point command type 2) without the table coordinate system being appropriately selected for programming. Otherwise an alarm will be caused (1836 CANNOT USE CUTTING PT CTRL). 7. An argument of zero (0) for vector components (I, J, K) after ,L2 can be omitted in the mode of cutting point command type 2 (G43.9). 8. Parameter F36 bit 6 determines the number of effective decimal digits in the vector’s components (I, J, K). 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 4. F36 bit 6 = 0: 4 and 5 decimal digits are effective for the metric and inch system, respectively. o. Example : For a block of G43.9I0.12345678J0.12345678K0.12345678Hh: K ZA A K IM Se ri al N By rounding off the fifth decimal digit, 0.1235 is used as arguments I, J, and K for the metric system. By rounding off the seventh decimal digit, 0.12346 is used as arguments I, J, and K for the inch system. F36 bit 6 = 1: ZA 7 decimal digits are effective, irrespective of the system of units. A Example : For a block of G43.9I0.12345678J0.12345678K0.12345678Hh: YA M By rounding off the eighth decimal digit, 0.1234568 is used as arguments I, J, and K. 01 3 <Number of effective digits in vector components I, J, and K> )2 F36 bit 6 C op yr ig ht (c 0 9. 1 System of units Minimum value Maximum value Metric system –99999.9999 99999.9999 Inch system –9999.99999 9999.99999 Metric system –99.9999999 99.9999999 Inch system –99.9999999 99.9999999 It depends upon the setting of a parameter (F114 bit 1) whether or not the cancellation causes an axis motion (in the currently active mode in G-code group 1: at rapid traverse [G00] or cutting feed [G01]) of canceling the tool length offset. Do not give a cancellation command in a mode of circular interpolation. Otherwise an alarm will be caused (1836 CANNOT USE CUTTING PT CTRL). 10. The cancellation command G49 must be given with no other instruction codes. Giving the G49 code with an axis motion command will cause an alarm (1838 CUTTING PT CTRL FORMAT ERROR). 11. Argument Q is ignored when the settings on the TOOL DATA display (MAZATROL tool data) are to be fetched (i.e. when F93 bit 3, F94 bit 7 or F92 bit 7 is set to “1”). 26-41 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 12. If the current tool is a barrel-shaped milling cutter, then a command of G43.8 causes the relevant tool data items to be checked for appropriateness, and the alarm 1917 ILLEGAL TOOL DATA CUT PT CTRL is raised in any one of the cases described below. When the settings on the TOOL DATA display (MAZATROL tool data) are to be fetched (i.e when F93 bit 3, F94 bit 7 or F92 bit 7 is set to “1”): One of the relevant items on the TOOL DATA display remains unset or set to “0.” When an effective argument Q is specified and the settings on the TOOL DATA display (MAZATROL tool data) are not applicable (i.e. when F93 bit 3, F94 bit 7 and F92 bit 7 are all set to “0”): Any one of the parameters F306 to F311 is set to “0,” or K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . The tool length offset amount concerned is unset (set to 0). 26-42 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 3. Startup The startup axis movement is executed with the cutting point command being active (by an interpolation with reference to the table coordinate system). As explained in the table below, the startup operation depends upon whether or not motion commands for the orthogonal or rotational axes are given in the same block with G43.8 or G43.9. (The figures in the following table refer to a case where G43.8 is used for a machine equipped with the tool’s rotational axis named B. This example applies in principle to all other cases: use of G43.9 on a machine of different configuration, etc.) Commands for rotational axis motion or tool-axis direction Motion commands for orthogonal axes given (*1) G43.8Hh,L2IiJjKk G43.8XxYyZzHh,L2IiJjKk ts re s G43.8Hh,L2IiJjKk er ve d F162 bit 0 = 1 (No motion by the offset amount) . not given (*1) F162 bit 0 = 0 (Motion by the offset amount) N .A ll ri gh Control point 34 08 C 39 O R PO R A TI O not given Cutting point o. K N ZA K IM b G43.8BbHh,L2IiJjKk Cutting point Y (x, y, z) X A motion occurs for the cutting point to be at a point of the specified coordinates, inclusive of offset amount. G43.8XxYyZzBbHh,L2IiJjKk A ri Se G43.8BbHh,L2IiJjKk No motions occur at all. (A motion by the offset amount does not occur.) al A shifting motion occurs for the cutting point to be at the current control point, i.e. in the tool-axis direction through the length offset distance. Z b YA M A ZA b Cutting point 01 3 given (*2) Cutting point (x, y, z) Y )2 X (c D740PB0038’ A rotational motion occurs with automatic linear axis movements in order not to move the position of the cutting point, as in the programming coordinate system (*2). C op yr ig ht A linear and rotational motion occurs for the cutting point to be at the current control point, as in the programming coordinate system (*2), through the length offset distance. Z A linear and rotational motion occurs for the cutting point to be at a point of the specified coordinates, as in the programming coordinate system (*2), inclusive of offset amount. *1 “Given” is the orthogonal-axis motion command when the G43.8 or G43.9 block contains even only one command for an orthogonal axis. *2 If there is also a motion command for the table’s rotational axis given with the table coordinate system being selected for programming, then that particular programming coordinate system (the table coordinate system) will move accordingly. In such a case the final position of the cutting point’s (eventual) motion denotes a position relative to the table in the specified angle. 26-43 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 4. Cancellation A parameter is provided for the selection of whether or not the cancellation includes the corresponding axis movement. Cancellation with axis movement (F114 bit 1 = 0) The cutting point command mode is cancelled with a shifting motion in the direction of the tool axis for canceling the particular amount of length offset. G49 er ve d . Control point re s Cutting point gh ts D740PB0039 ri Cancellation without axis movement (F114 bit 1 = 1) 34 08 C 39 O R PO R A TI O N .A ll The cutting point command mode is cancelled without any axis motions being caused by the cancellation block. K A ZA D740PB0040 K IM Giving the G49 code with an axis motion command will cause an alarm (1838 CUTTING PT CTRL FORMAT ERROR). C op yr ig ht (c )2 01 3 YA M A ZA Note : Se ri al N o. G49 26-44 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 5. Operation in the mode of cutting point command A. Applicable tool types and compensation amounts 1. Ball-ended milling cutter, End mill with corner radius and Flat-ended milling cutter Only milling tools can be used in the mode of cutting point command. As for tool radius compensation, use the D-code in the program to specify the number of the desired offset data item prepared on the TOOL OFFSET DATA display. End mill with corner radius Flat-ended milling cutter Length comp. amount Length comp. amount Nose center Nose center Radius comp. Corner radius comp. amount amount (Note) ri gh ts Nose center re s Length comp. amount er ve d . Ball-ended milling cutter Radius comp. amount (Note) D747PB0032 34 08 C 39 O R PO R A TI O N .A ll Radius comp. Corner radius amount comp. amount (Note) Note : Barrel-shaped milling cutter Do not fail, on the TOOL DATA display, to set the tool name (TOOL) to BARREL for a barrel-shaped milling cutter to be used in the mode of cutting point command. There are three types of barrel-shaped milling cutters available as shown below. K ZA K IM Type 1 A Se ri al N o. 2. The setting of the actual diameter (ACT-) is used for tool radius compensation. Set the corresponding data items on the TOOL DATA and TOOL OFFSET DATA displays in diameter values. Tool’s reference position M YA ACT-2 A LENGTH LENGTH R2 ht R1 R HEIGHT Nose center TEETH LG ig ACT-1 R2 Nose center Nose center (c )2 01 3 LENGTH Tool’s reference position R1 A R2 Type 3 ZA Tool’s reference position Type 2 ACT-1 R1 TEETH LG ACT-1 R1 C op yr D747PB0048 Note : Set TEETH LG and ACT-2 for barrel-shaped milling cutter of type 2 as follows: TEETH LG .... Height (Distance) of point A from the tool nose. Set the correct value with reference to the tool drawing, since the corresponding item (length of cut) indicated in the catalogue may not agree with the required value. ACT-2 ......... Diameter of the tool on the level of point A. Set the correct value with reference to the tool drawing, since the corresponding item (neck diameter) indicated in the catalogue may not agree with the required value. The amounts of compensation for barrel-shaped milling cutters are detailed later under 3-D “Compensation for barrel-shaped milling cutters” in Subsection 26-2-3. 26-45 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION A TEETH LG on the TOOL DATA display, or parameter F309 (For cutting pt. cmd.: TEETH LG) A ACT-2 on the TOOL DATA display, or parameter F310 R2 (For cutting pt. cmd.: ACT-2) R2 Compensation, and cutting point on the tool, for each tool type re s B. er ve d . D747PB0054 1. .A ll ri gh ts In the mode of cutting point command, compensation for tool geometry is performed with reference to the normal vector to the machining surface as well as to the diameter and corner radius of the tool. Therefore, the cutting point on the tool and the singular attitude differ according to the tool types. Ball-ended milling cutter 34 08 C 39 O R PO R A TI O N In the case of ball-ended milling cutters, the cutting point on the tool moves on the semicircle of the ball end profile in accordance with the angle between Tool-axis direction vector and Normal vector to the machining surface. K ZA A YA M A ZA K IM Se ri al N o. Tool-axis direction vector Normal vector to the machining surface Nose center Cutting point C op yr ig ht (c )2 01 3 D747PB0033 26-46 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 2. End mill with corner radius In the case of end mills with corner radius, the cutting point on the tool moves on the circular arc of the profile with corner radius in accordance with the angle between Tool-axis direction vector and Normal vector to the machining surface. gh ts re s er ve d . Tool-axis direction vector Normal vector to the machining surface Nose center Cutting point ri D747PB0034 Flat-ended milling cutter .A ll 3. 34 08 C 39 O R PO R A TI O N In the case of flat-ended milling cutters, the cutting point on the tool does not move at all on the profile with flat end. K ZA A A ZA K IM Se ri al N o. Tool-axis direction vector Normal vector to the machining surface Nose center Cutting point C op yr ig ht (c )2 01 3 YA M D747PB0035 26-47 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION C. Compensation, and cutting point on the tool, for each type of barrel-shaped milling cutter In the mode of cutting point command, compensation for tool geometry is performed with reference to the normal vector to the machining surface, tool-axis direction vector as well as to the various amounts of compensation (ACT-1, R1, R2, TEETH LG, ACT-2, R HEIGHT). The cutting point on the tool, or the radiused section to be brought into contact with the workpiece, depends upon the tool-axis direction vector and the normal vector to the machining surface. 1. Barrel-shaped milling cutter of type 1 er ve d . ACT-1, R1 and R2 are used to calculate the amount of compensation for tool geometry. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s Tool-axis direction vector Normal vector to the machining surface Nose center Cutting point R1 D747PB0049 R1 o. R2 Barrel-shaped milling cutter of type 2 al N 2. K ZA A K IM Se ri ACT-1, R1, R2, TEETH LG and ACT-2 are used to calculate the amount of compensation for tool geometry. R1 R2 C op yr ig ht (c )2 01 3 YA M A ZA Tool-axis direction vector Normal vector to the machining surface Nose center Cutting point 26-48 R1 D747PB0050 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 3. Barrel-shaped milling cutter of type 3 ACT-1, R1, R2, TEETH LG and R HEIGHT are used to calculate the amount of compensation for tool geometry. R2 R1 gh R1 ts re s er ve d . Tool-axis direction vector Normal vector to the machining surface Nose center Cutting point Singular attitude in the mode of cutting point command N D. .A ll ri D747PB0051 34 08 C 39 O R PO R A TI O “Singular attitude” in the mode of cutting point command refers to a state where the normal vector to the machining surface is parallel to the tool-axis direction vector. The settings in parameters K251 and K254 determine whether or not the parallelism exists between both vectors. al N o. While the threshold setting in parameter K251 is applied during cutting feed proper, that in K254 is prepared specially for rapid traverse (under G0). K ZA A K IM Se ri Threshold for singular attitude in the mode of cutting point command (for mode of feed other than rapid traverse) Threshold for singular attitude in the mode of cutting point command (for rapid traverse) ........................................ Parameter K251 ........................................ Parameter K254 YA M A ZA In the case of end mills with corner radius, flat-ended milling cutters and barrel-shaped milling cutters of type 2 and 3, there arises a surface contact between tool and workpiece in a singular attitude. In a non-singular attitude In a singular attitude C op yr ig ht (c )2 01 3 Tool-axis direction vector Normal vector to the machining surface Nose center Cutting point D747PB0036 26-49 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 1. Singular attitude in the operation flow in the mode of cutting point command As for singular attitude arising in the operation flow in the mode of cutting point command, either of the following points is processed as the cutting point according to the setting in bit 1 of parameter F336: Tip point on the tool axis, or that point on the contact surface which is closest to the latest, immediately preceding, cutting point. F336 bit 1 = 0: Tip point on the tool axis = 1: Point on the contact surface, closest to the latest cutting point er ve d When F336 bit 1 = 1 2. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s When F336 bit 1 = 0 . Tool-axis direction vector Normal vector to the machining surface Nose center Cutting point Startup in a singular attitude D747PB0037 al N o. As for startup in a singular attitude, the tip point on the tool axis is always processed as the cutting point, without tool radius compensation being applied. K ZA A K IM Se ri Tool-axis direction vector Normal vector to the machining surface Nose center Cutting point )2 01 3 YA M A ZA Cutting point for startup in a singular attitude C op yr ig ht (c D747PB0038 26-50 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 6. 26 Rate of feed to be programmed in the mode of cutting point command For cutting operation in the mode of cutting point command, specify the rate of feed of the cutting point with reference to the table coordinate system. Nose center Cutting point (programmed point) er ve d . Fed at the programmed rate. gh Interpolation methods for rotational axes ri 7. ts re s D747PB0039 8. 34 08 C 39 O R PO R A TI O N .A ll Refer to the corresponding description given for the tool tip point control under 7. in Subsection 26-1-2. Selection for determining the angle on the rotational axis K ZA ri Coordinate system for linear interpolation under G0 in the mode of cutting point command Se 9. al N o. Refer to the corresponding description given for the tool tip point control under 8. in Subsection 26-1-2. K IM A In the mode of cutting point command, it is the nose center, not the cutting point, that describes a linear path under G0. YA M A ZA As for the coordinate system for linear interpolation under G0, refer to the corresponding description given for the tool tip point control under 9. in Subsection 26-1-2. 01 3 10. Control method for rapid traverse (G0) in the mode of cutting point command ht (c )2 Use bit 0 of parameter F336 if it is desirable to apply the tool tip point control for executing rapid traverse commands also in the mode of cutting point command. yr ig F336 bit 0 = 0: Control proper to cutting point command for rapid traverse commands = 1: Tool tip point control for rapid traverse commands C op Note 1: Tool tip point control can be applied for G0 commands, indeed, but combined use with the tool radius compensation for five-axis machining (G41.2, G41.3, G41.4, or G42.2, G42.3, G42.4) is not possible. Note 2: Information on modal conditions on the POSITION display as well as alarms raised always refer to the mode of cutting point command. Note 3: Application of tool tip point control may cause an abrupt motion in transition between G0 and G1 commands which undergo different control methods. 26-51 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-2-3 Relationship to other functions 1. Commands usable in the same block with G43.8/G43.9 Code Function Code Positioning Function G00 Incremental data input G91 Linear interpolation G01 Feed function F Absolute data input G90 Giving any other command than those enumerated above in the same block with G43.8/G43.9 will lead to an alarm (1837 ILLEGAL CMD CUTTING PT CTRL). er ve d Commands available in the mode of cutting point command Function Code re s A. . Relationship to other commands Function ts 2. Code G00 Cutting mode Linear interpolation G01 User macro call Circular interpolation G02/G03 (*1, *5) Absolute data input Dwell G04 Incremental data input High-speed machining mode G05 (*4) Inverse time feed Exact-stop G09 Feed per minute Plane selection G17/G18/G19 M, S, T, B output to opposite system G112 (*2) Tool radius compensation OFF G40 Subprogram call/End of subprogram M98/M99 Tool length offset (+/–) G43/G44 Feed function F Tool position offset OFF G49 M, S, T, B function MSTB (*2) Scaling OFF G50 Exact stop mode G61 Local variables, Common variables, Operation commands (arithmetic operations, trigonometric functions, square root, etc), Control commands (IF GOTO , WHILE DO ) Macro instructions ri .A ll N 34 08 C 39 O R PO R A TI O G65 G90 G91 G93 G94 K K IM A G61.2 ZA Se Modal spline interpolation G64 o. N al G61.1 (*3) ri Geometry compensation gh Positioning A command for helical/spiral interpolation will lead to an alarm (1837 ILLEGAL CMD CUTTING PT CTRL). Use of a tool function (T-code) in the mode of cutting point command will lead to an alarm (1837 ILLEGAL CMD CUTTING PT CTRL). Giving a G61.1 command with the geometry compensation being invalid for rotational axes will lead to an alarm (1837 ILLEGAL CMD CUTTING PT CTRL). The fairing function for high-speed machining cannot be made effective. The related parameter (F96 bit 1) is of no effect in the mode of cutting point command. A command for circular interpolation will lead to an alarm if table coordinate system is selected for programming. ZA *1 *2 M A *3 YA *4 01 3 *5 C op yr ig ht (c )2 Giving any other command than those enumerated above in the mode of cutting point command will lead to an alarm (1837 ILLEGAL CMD CUTTING PT CTRL). 26-52 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. Modes in which the mode of cutting point command is selectable Function Code Function Code G00 Modal spline interpolation G61.2 Linear interpolation G01 Cutting mode G64 High-speed machining mode OFF G05P0 User macro call G65 Radius data input for X-axis ON G10.9X0 Modal user macro call OFF G67 Data setting mode OFF G11 3-D coordinate conversion ON G68 (*2) Polar coordinate interpolation OFF G13.1 Plane selection G17, G18, G19 Inclined-plane machining G68.2, G68.3, G68.4 Inch data input G20 3-D coordinate conversion OFF G69 Metric data input G21 Fixed cycle OFF G80 Pre-move stroke check OFF G23 Absolute data input Tool radius compensation OFF G40 Incremental data input Control for normal-line direction OFF G40.1 Inverse time feed Tool length offset (+/–) G43/G44 Feed per minute Tool position offset OFF G49 Constant surface speed control OFF Scaling OFF G50 Mirror image OFF G50.1 Initial point level return in hole-machining fixed cycles G98 Polygonal machining mode OFF G50.2 R-point level return in hole-machining fixed cycles G99 Selection of workpiece coordinate system/ additional workpiece coordinate system G54-59/G54.1 Workpiece setup error correction G54.4 Exact stop mode G61 Geometry compensation G61.1 (*1) er ve d . Positioning G90 re s G91 34 08 C 39 O R PO R A TI O N .A ll ri gh ts G93 G94 G97 G109 Cross machining control axis selection G110 (*3) Cross machining control axis cancellation G111 Hob milling mode OFF G113 o. Single program multi-process control Giving a G43.8/G43.9 command under G61.1 with the geometry compensation being invalid for rotational axes will lead to an alarm (1836 CANNOT USE CUTTING PT CTRL). Only valid when parameter F168 bit 4 = 1 (Operation by converting 3-D coordinate conversion into Inclined-plane machining [G68.2]). Se A Only valid on machines with the optional function for selecting from multiple sets for five-axis machining. K IM *3 K ri *2 ZA al N *1 C op yr ig ht (c )2 01 3 YA M A ZA Giving a G43.8/G43.9 command in a mode other than those enumerated above will lead to an alarm (1836 CANNOT USE CUTTING PT CTRL). 26-53 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 3. On the use of tool data settings A. Tool length offsetting in the mode of cutting point command The table below indicates those usage patterns [1] to [4] of the externally stored tool offset data items which are applied to length offsetting in the mode of cutting point command according to the settings of the relevant parameters (F93 bit 3 and F94 bit 7). Table 26-2 Tool offset data items used according to the parameter settings (1/2) Data items used (Display and Data item names) Pattern Parameter F94 bit 7 F93 bit 3 0 0 1 1 Programming method [1] TOOL OFFSET [2] TOOL DATA [3] TOOL DATA LENG. No. or LENG. CO. 1 0 G43.8/G43.9 with H-code [4] TOOL OFFSET + TOOL DATA Offset data items + LENGTH 0 1 G43.8/G43.9 with H-code + T-code Offset data items G43.8/G43.9 with H-code . T-code gh ts re s T-code + H-code Tool radius compensation in the mode of cutting point command N B. .A ll ri LENGTH + LENG. No. or LENGTH + LENG. CO. er ve d LENGTH 34 08 C 39 O R PO R A TI O The table below indicates those usage patterns [1] to [4] of the externally stored tool offset data items which are applied to radius compensation in the mode of cutting point command according to the settings of the relevant parameters (F92 bit 7 and F94 bit 7). Table 26-3 Tool offset data items used according to the parameter settings (2/2) 0 0 A N F92 bit 7 1 1 ACT- CO. or OFFSET No. 1 0 T-code Offset data items + ACT- 0 1 G43.8/G43.9 with D-code + T-code Se ACT- TOOL DATA [3] TOOL DATA [4] TOOL OFFSET + TOOL DATA T-code T-code + D-code K YA M A ZA K IM ACT- + ACT- CO. or ACT- + OFFSET No. G43.8/G43.9 with D-code Corner radius compensation in the mode of cutting point command 01 3 C. ZA ri Offset data items [2] Programming method F94 bit 7 al TOOL OFFSET [1] Parameter o. Data items used (Display and Data item names) Pattern ig ht (c )2 The table below indicates those usage patterns [1] and [2] of the externally stored tool offset data items which are applied to corner radius compensation in the mode of cutting point command according to the settings of the relevant parameters (F92 bit 7 and F94 bit 7). Data items used (Display and Data item names) C op yr Pattern [1] [2] PARAMETER TOOL DATA F268 (Corner radius for cutting point command) Setting range: 0 to 99999999 Setting unit: 0.0001 mm or 0.00001 in CORNER R 26-54 Parameter F94 bit 7 F92 bit 7 0 0 1 1 1 0 0 1 Programming method — T-code Serial No. 340839 FIVE-AXIS MACHINING FUNCTION D. 26 Compensation for barrel-shaped milling cutters The table below indicates those usage patterns [1] and [2] of the externally stored tool offset data items which are applied to the compensation types other than length offsetting for barrel-shaped milling cutters, in the mode of cutting point command, according to the settings of the relevant parameters (F93 bit 3, F92 bit 7 and F94 bit 7). Parameter Data items used (Display and Data item names) Pattern F93 bit 3 F92 bit 7 F94 bit 7 er ve d . F306 (For cutting point command: ACT-1) Used as ACT-1 of a barrel-shaped milling cutter when Q1, Q2 or Q3 is entered in the block of G43.8 or G43.9. Setting range: 0 to 99999999 Setting unit: 0.0001 mm or 0.00001 in PARAMETER F309 (For cutting point command: TEETH LG) Used as TEETH LG of a barrel-shaped milling cutter when Q2 or Q3 is entered in the block of G43.8 or G43.9. Setting range: 0 to 99999999 Setting unit: 0.0001 mm or 0.00001 in 0 0 0 1 0 0 1 1 1 1 1 0 1 0 1 0 1 1 0 1 0 0 0 1 G43.8/G43.9 with argument Q N o. [1] 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s F307 (For cutting point command: R1) Used as R1 of a barrel-shaped milling cutter when Q1, Q2 or Q3 is entered in the block of G43.8 or G43.9. Setting range: 0 to 99999999 Setting unit: 0.0001 mm or 0.00001 in F308 (For cutting point command: R2) Used as R2 of a barrel-shaped milling cutter when Q1, Q2 or Q3 is entered in the block of G43.8 or G43.9. Setting range: 0 to 99999999 Setting unit: 0.0001 mm or 0.00001 in Programming method K ZA A K IM Se ri al F310 (For cutting point command: ACT-2) Used as ACT-2 of a barrel-shaped milling cutter when Q2 is entered in the block of G43.8 or G43.9. Setting range: 0 to 99999999 Setting unit: 0.0001 mm or 0.00001 in YA M A ZA F311 (For cutting point command: R HEIGHT) Used as R HEIGHT of a barrel-shaped milling cutter when Q3 is entered in the block of G43.8 or G43.9. Setting range: 0 to 99999999 Setting unit: 0.0001 mm or 0.00001 in (c TOOL DATA T-code C op yr ig ht [2] )2 01 3 ACT-1 R1 R2 TEETH LG ACT-2 R HEIGHT 4. Change between Cutting point command (G43.8/G43.9) and Length offset (G43/G44) Refer to the corresponding description given for the tool tip point control under 4. in Subsection 26-1-3. 26-55 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 5. Prefiltering for rotational axes Refer to the corresponding description given for the tool tip point control under 5. in Subsection 26-1-3. 6. Five-axis fairing function . Refer to the corresponding description given for the tool tip point control under 6. in Subsection 26-1-3. er ve d 26-2-4 Restrictions The selection code of cutting point command mode (G43.8/G43.9) must not be given together with any other G-code. 2. Calculation of the machining time gh ts re s 1. Tracing N 3. .A ll ri The machining time cannot be calculated accurately for a program containing cutting point commands. 4. 34 08 C 39 O R PO R A TI O Tracing in the mode of cutting point command is displayed with reference to the machine coordinate system. Tool path check K al Restart ri 5. N o. Tool path check function cannot be applied to a program containing cutting point commands. (The programmed data can only be checked as if the mode of cutting point command were throughout cancelled.) Resetting ZA A ZA 6. K IM Se As for restarting operation, do not specify a block within the G43.8/G43.9 mode (nor a block of cancellation [G49]) as a restarting position. Otherwise an alarm will be caused (956 RESTART OPERATION NOT ALLOWED). A The mode of cutting point command is cancelled by resetting. Corner chamfering/rounding YA M 7. 01 3 Do not use corner chamfering or rounding commands in the mode of cutting point command. Otherwise an alarm will be caused (1837 ILLEGAL CMD CUTTING PT CTRL). Mirror image function (activated by a code or external switch) )2 8. ht Macro interruption and MDI interruption Macro interruption as well as MDI interruption is not available in the mode of cutting point command. Giving a G43.8/G43.9 command with macro interruption being active will lead to an alarm (1836 CANNOT USE CUTTING PT CTRL), while an attempt to perform MDI interruption in the mode of cutting point command will only cause another alarm (1141 ILLEGAL OPER CUTTING PT CTRL). C op yr ig 9. (c Mirror image function is not available at all in the mode of cutting point command. 10. Display of actual feed rate The feed rate displayed is the final resultant rate of feed, not the feed rate at the cutting point with respect to the workpiece. 11. Manual interruption As a general precaution to be taken for normal machine operation, resetting is required after any manual interruption (resumption of operation is prohibited). 26-56 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 12. The relevant items of digital information on the POSITION display denote the following in the mode of cutting point command: POSITION: Position of the cutting point in the workpiece coordinate system MACHINE: Position of the control point in the machine coordinate system BUFFER: Moving distance of the control point in the next block REMAIN: Remaining distance of movement of the control point in the current block 13. Tool function Use of a tool function (T-code) in the mode of cutting point command will lead to an alarm (1837 ILLEGAL CMD CUTTING PT CTRL). 14. Calling a MAZATROL program as a subprogram re s er ve d . Do not specify a MAZATROL program as a subprogram to be called up in the mode of cutting point command. Otherwise an alarm will be caused (1837 ILLEGAL CMD CUTTING PT CTRL). 15. Circular interpolation 34 08 C 39 O R PO R A TI O N .A ll ri gh ts Circular interpolation can only be applied when the current mode of cutting point command is of type 1 (G43.8) with workpiece coordinate system being selected for programming. In other cases giving a command for circular interpolation will cause an alarm (1836 CANNOT USE CUTTING PT CTRL). Moreover, even thus available circular interpolation mode cannot accept any commands for rotational axes, and such an inadmissible command will result in the alarm 1837 ILLEGAL CMD CUTTING PT CTRL. 16. MAZATROL tool data ri al 17. High-speed machining mode K N o. When the MAZATROL tool data (data prepared on the TOOL DATA display) are made valid for executing EIA/ISO programs, milling tools should generally be used in the mode of cutting point command. Tool length offset for cutting point commands will be executed for turning tools with their LENGTH B and NOSE-R data being ignored. ZA A K IM Se The fairing function for high-speed machining cannot be made effective. The related parameter (F96 bit 1) is of no effect in the mode of cutting point command. ZA 18. Positioning commands (under G0) in the mode of cutting point command are always executed in interpolation-type paths even if F91 bit 6 is set to 1. A 19. Prefiltering for rotational axes 01 3 YA M When the function of prefiltering for rotational axes is made valid, the maximum permissible acceleration for rotational axes is increased according to the time constant concerned (as set in L125). C op yr ig ht (c )2 20. The acceleration and deceleration for positioning commands (under G0) in the mode of cutting point command occurs according to the parameters L74 (rate of cutting feed for preinterpolational acceleration/deceleration control) and L75 (time constant for pre-interpolational cutting feed) when they are given under G61.1 (geometry compensation) or with the (optional) fixed gradient control for G0 being selected. 26-57 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 21. Five-axis fairing function If Joint interpolation is selected (F85 bit 3 = 1), command points are corrected by the five-axis fairing function for the three orthogonal axes (for tool tip position control) as well as for the two rotational axes (for tool attitude control). Correction is conducted, however, only for the three orthogonal axes if Uniaxial rotation interpolation is selected (F85 bit 3 = 0), or the fairing function for rotational axes is not made valid at all (F151 bit 5 = 0). The program section for five-axis fairing is excluded from the domain of the function for sequence number search and modal restart. Tool path is drawn on the TOOL PATH CHECK display according to the command points corrected by the five-axis fairing function. er ve d . If the feed hold function is applied during five-axis fairing, the stop position will be used as the starting point of fairing in the resumed operation. gh ts re s If the function of workpiece setup error correction is activated, the solutions for rotational axes may differ in algebraic sign depending upon whether the five-axis fairing function is enabled or disabled. Set bit 3 of parameter F156 to “1” (Priority is given to the sign of the primary rotational axis) if it is desired to obtain the same solutions. N .A ll ri An attempt to use the five-axis fairing function in the mode of tool radius compensation for five-axis machining (G41.2, G41.4, G41.5, G42.2, G42.4, or G42.5) will only cause an alarm (961 ILLEGAL COMMAND 5X RADIUS COMP.). 34 08 C 39 O R PO R A TI O 22. Linear interpolation occurs with respect to the nose center in the mode of cutting point command, and thus the locus of the cutting point may not always describe a linear path. o. Consequently, an unexpected overcutting may occur, as shown below, if the tool-axis direction vector or the normal vector to the machining surface should change abruptly. K ZA A YA M A ZA K IM Se ri al N Nose center Cutting point (programmed point) 01 3 D747PB0052 C op yr ig ht (c )2 23. Do not use, for operation by cutting point commands, a barrel-shaped milling cutter of type 3 which is characterized in that the tangent to the upper radiused section of R1 at its upper ending point is not perpendicular to the tool axis (as shown on the left side of the figure below). Such a tool would be processed erroneously by the NC as if its geometry were as shown on the right side in the figure below, and the upper radiused section of R1 could not be applied correctly to the machining surface. Actual geometry Geometry as processed by the NC Tool’s axial direction Tool’s axial direction R1 R1 D747PB0053 26-58 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 26-2-5 Related parameters Refer to the corresponding description given for the tool tip point control in Subsection 26-1-5. <Parameters related to the mode of cutting point command> Parameter Axis-of-rotation position on the horizontal axis (X) K123 Axis-of-rotation position on the vertical axis (Y) K124 Axis-of-rotation position on the height axis (Z) K126 Axis-of-rotation position on the horizontal axis (X) K127 Axis-of-rotation position on the vertical axis (Y) K128 Axis-of-rotation position on the height axis (Z) F85 bit 2 Selection of programming coordinate system F85 bit 3 Selection of interpolation method F86 bit 2, bit 5 Selection of override scheme F86 bit 6 Selection of reference position on the rotational axis F114 bit 1 Selection of canceling operation by G49 F162 bit 0 Selection of operation for starting up F162 bit 1 Selection of type of passage through singular point F37 bit 4 Selection of coordinate system for linear interpolation under G0 S22 Limit of feed rate F36 bit 6 Effective decimal digits in arguments I, J, and K (for type 2 only) F36 bit 7 Function of prefiltering for rotational axes valid/invalid L125 Time constant for prefiltering for rotational axes F157 bit 6 Five-axis fairing function F151 bit 5 Fairing function for rotational axes during five-axis fairing F4, F5 Distance of geometry recognition for five-axis fairing F104, F128 Tolerance (of chord error) for five-axis fairing F268 Corner radius for cutting point command F306 For cutting point command: ACT-1 F307 For cutting point command: R1 F308 For cutting point command: R2 K ZA A YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . K122 F309 01 3 For cutting point command: TEETH LG F310 For cutting point command: ACT-2 For cutting point command: R HEIGHT Selection of control method for rapid traverse commands F336 bit 1 Selection of cutting point position for singular attitude Threshold for singular attitude in the mode of cutting point command (for mode of feed other than rapid traverse) ht (c F336 bit 0 ig )2 F311 op yr K251 C Description K254 Threshold for singular attitude in the mode of cutting point command (for rapid traverse) 26-59 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-3 Inclined-Plane Machining: G68.2, G68.3, G68.4, G53.1 The inclined-plane machining function makes it possible to define a new coordinate system (referred to as a feature coordinate system) by translating as well as rotating the current workpiece coordinate system around the X-, Y- and Z-axis. Using this function, therefore, an arbitrarily inclined plane can be defined in a space and the desired machining contour can be programmed easily as if the plane concerned were an ordinary XY-plane. er ve d . In addition, there is a function provided to adjust the direction of tool axis to the positive direction of the Z-axis of a feature coordinate system. Since the feature coordinate system is then redefined according to the change in tool-axis direction, a machining program can be prepared without consideration of the inclination of the coordinate system or the tool axis. Z Y ts re s Z ri gh X .A ll Machine coordinate system Feature coordinate system 34 08 C 39 O R PO R A TI O N Y X D736PB001 N o. Workpiece coordinate system K ZA A Se ri al There are two programming types provided for inclined-plane machining (the selection between which is to be done with parameter F34 bit 4): type A for combined use with the other five-axis machining functions, and type B allowing various types of interruption. M A ZA K IM The inclined-plane machining is described in this section type by type in detail, with the main differences between the two types being enumerated in the table below as an introduction. YA No. Item ×: Impossible Type A F34 bit 4 = 0 Type B F34 bit 4 = 1 Combined use with the tool tip point control (G43.4/G43.5) × 2 Combined use with the workpiece setup error correction (G54.4) × 3 Combined use with the tool radius compensation for five-axis machining × × × (c )2 01 3 1 Resumption of automatic operation after interruption without having restored the positional conditions (in the use of manual interruption or TPS function) ig ht 4 yr 5 Changing the position on a rotational axis during interruption 6 Interruption using the manual pulse handle × 7 Command for inclined-plane machining with macro interruption being active 8 MDI interruption × 9 Use of corner chamfering/rounding command × 10 Use of G68.2 or G53.1 in a subprogram of the nesting level 8 × 11 Restart operation from a block in the mode of inclined-plane machining (or from a G69 block) × 12 Programming format (using Eulerian angles) 13 Programming format (using roll, pitch, and yaw angles, three points in the plane, two vectors, projection angles, or tool-axis direction) × 14 Reference for the feature coordinate system (with workpiece coordinate system as reference) op C : Possible 26-60 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION No. Item 26 Type A F34 bit 4 = 0 Type B F34 bit 4 = 1 15 Reference for the feature coordinate system (with table indexing to 0° as reference) × 16 Indications under WPC on the POSITION display in the mode of inclinedplane machining with reference to the feature coordinate system (*1) 17 Combined use with the cutting point command (G43.8/G43.9) × *1 As for Type A, WPC indications are given with reference to the workpiece coordinate system or feature coordinate system according as F143 bit 6 is set to zero (0) or one (1). They always refer, however, to the feature coordinate system in the case of Type B. Command codes for inclined-plane machining A. Inclined-plane machining ON (startup) re s 1. er ve d . 26-3-1 Function description for type A ri gh ts The feature coordinate system is to be set, or defined, by the following methods at the beginning of a program section for inclined-plane machining. G68.2 P1 34 08 C 39 O R PO R A TI O Using roll, pitch, and yaw angles .A ll Programming format G68.2 [P0] N Setting method Using Eulerian angles Using three points in the plane G68.2 P2 Using two vectors G68.2 P3 Using projection angles G68.2 P4 G68.3 N o. Using tool-axis direction 2. If any number other than 0 to 4 is entered with P in a G68.2 block, an alarm will be caused (1809 TILTED PLANE CMD FORMAT ERROR). 3. Argument P or Q with a decimal point in a G68.2 block will be processed by simply deleting the decimal point and decimal digits. 4. Be sure to enter the G68.2 or G68.3 command independently. If a block of G68.2 or G68.3 should contain any other G-codes or motion commands, an alarm is caused (1809 TILTED PLANE CMD FORMAT ERROR). ZA A ri Tool-axis direction control 01 3 B. YA M A ZA K IM Se K Argument P can be omitted if it is 0 (for the use of Eulerian angles). al 1. ig ht (c )2 The G53.1 command causes motions on the rotational axes concerned so as to make parallel to, and of the same direction with, each other the direction of the tool axis (from the tip along the perpendicular to the tool-swiveling axis) and the positive direction of the Z-axis of the current feature coordinate system. C op yr G53.1 Pp G53.1: P: Tool-axis direction control Selection of a solution for the axis of rotation. 0: Processed as “P = 1” or “P = 2”, depending on the construction of the machine. Works the same as “P = 1” and “P = 2”, respectively, for machines of tool rotating or mixed type and table rotating type. 1: Solution with a positive angle of rotation on the primary rotational axis. 2: Solution with a negative angle of rotation on the primary rotational axis See the description given later under 3 “Tool-axis direction control” for more information. 26-61 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION C. 1. Enter the G53.1 command in the mode of inclined-plane machining. 2. Be sure to enter the G53.1 command independently. If a block of G53.1 should contain any other G-codes or motion commands, an alarm is caused (1808 CANNOT USE G53.1). 3. The motion caused by a G53.1 block is executed in the currently active mode of motion. 4. Argument P can be omitted if it is zero (0). If any number other than 0, 1 or 2 is entered with P, an alarm will be caused (809 ILLEGAL NUMBER INPUT). 5. Use of any other addresses than P will lead to an alarm (1808 CANNOT USE G53.1). Inclined-plane machining OFF (cancellation) G69 er ve d . Inclined-plane machining OFF Be sure to enter the G69 command independently. If a block of G69 should contain any other G-codes or motion commands, an alarm is caused (1809 TILTED PLANE CMD FORMAT ERROR). 2. Do not enter the cancellation command (G69) in the mode of circular interpolation or fixed cycles; otherwise an alarm is caused (1807 CANNOT USE G68.2). Various methods for selecting the inclined-plane machining mode Setting with Eulerian angles A. Programming format G68.2 [P0] Xx Yy Zz I J K 34 08 C 39 O R PO R A TI O N 2-1 .A ll 2. ri gh ts re s 1. K ZA A Se ri al N o. G68.2 [P0]: Inclined-plane machining ON (Setting with Eulerian angles) x, y, z: Coordinates of the origin of feature coordinate system. To be specified with its absolute values in the currently active workpiece coordinate system. Eulerian angles (to describe the orientation of the feature coordinate system). , , : Setting range: –360° to 360°. The designation of X, Y, or Z can be omitted when the argument is zero (0: no shift along the particular axis). Set zero for X, Y, and Z if no translation of the origin is required. 2. The designation of I, J, or K can be omitted when the argument is zero (0: no rotation around the axis concerned). 3. Use of any other addresses than P, X, Y, Z, I, J, and K will lead to an alarm (1809 TILTED PLANE CMD FORMAT ERROR). Setting a feature coordinate system )2 B. 01 3 YA M A ZA K IM 1. C op yr ig ht (c Enter a block of G68.2 [P0] (with arguments for translating and rotating the current workpiece coordinate system) to set a feature coordinate system. Use Eulerian angles to specify the rotation. G68.2 Xx Yy Zz I J K sets a feature coordinate system as follows: 1) Point (x, y, z) in the current workpiece coordinate system is set as a new origin. 2) The translated coordinate system is then rotated around the Z-axis by an angle of °. 3) The turned coordinate system is then rotated around the X-axis by an angle of °. 4) Finally, the coordinate system is rotated around the Z-axis by an angle of °. 26-62 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION A counterclockwise rotation when viewed from the positive side of the axis of rotation to the origin is to be specified with a positive value (in degrees). The figure below shows the relationship between a workpiece coordinate system and its feature coordinate system. Conversion by means of Eulerian angles Z Y Zw Y Workpiece coordinate system 2) Rotation on Z by ° z Z 3) Rotation on X by ° X Yw X x 1) Translation of the system 4) Rotation on Z by ° Workpiece coordinate system X X ri Z Feature coordinate system Z gh Zw ts Y re s Y z .A ll Xw er ve d . y Yw N x 34 08 C 39 O R PO R A TI O y Xw Setting with roll, pitch, and yaw angles Programming format ZA ri al G68.2 P1 Qq Xx Yy Zz I J K K N A. o. 2-2 D736PB002 Axis of the first rotation X-axis 132 A Axis of the third rotation Y-axis Z-axis X-axis Z-axis Y-axis Y-axis X-axis Z-axis Y-axis Z-axis X-axis Z-axis X-axis Y-axis Z-axis Y-axis X-axis M 01 3 213 (c )2 231 312 Axis of the second rotation A q 123 YA ZA K IM Se G68.2 P1: Inclined-plane machining ON (Setting with roll, pitch, and yaw angles) x, y, z: Coordinates of the origin of feature coordinate system. To be specified with its absolute values in the currently active workpiece coordinate system. q: Order of rotations ht 321 C op yr ig : Angle of rotation around the X-axis [Roll angle]. : Angle of rotation around the Y-axis [Pitch angle]. : Angle of rotation around the Z-axis [Yaw angle]. (Setting range: –360° to 360°.) 1. The designation of X, Y, or Z can be omitted when the argument is zero (0: no shift along the particular axis). Set zero for X, Y, and Z if no translation of the origin is required. 2. The designation of I, J, or K can be omitted when the argument is zero (0: no rotation around the axis concerned). 3. Use of any other addresses than P, Q, X, Y, Z, I, J, and K will lead to an alarm (1809 TILTED PLANE CMD FORMAT ERROR). 4. Argument Q can be omitted if Q123 is required. 26-63 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 5. B. The designation of Q with any other value than enumerated above will lead to an alarm (1809 TILTED PLANE CMD FORMAT ERROR). Setting a feature coordinate system Enter a block of G68.2 P1 (with arguments for translating and rotating the current workpiece coordinate system) to set a feature coordinate system. Use roll, pitch, and yaw angles to specify the rotation. G68.2 P1 Q123 Xx Yy Zz I J K sets, for example, a feature coordinate system as follows: Point (x, y, z) in the current workpiece coordinate system is set as a new origin. 2) The translated coordinate system is then rotated around the Xw-axis by an angle of °. 3) The turned coordinate system is then rotated around the Yw-axis by an angle of °. 4) Finally, the coordinate system is rotated around the Zw-axis by an angle of °. er ve d . 1) gh ts re s A counterclockwise rotation when viewed from the positive side of the axis of rotation to the origin is to be specified with a positive value (in degrees). The figure below shows the relationship between a workpiece coordinate system and its feature coordinate system. Zw Workpiece coordinate system 34 08 C 39 O R PO R A TI O N z1 .A ll Zw ri Conversion by means of roll, pitch, and yaw angles 2) Rotation on Xw by ° z y1 3) Rotation on Yw by ° Yw Yw x Xw o. y 1) Translation of the system z2 y1 ZA Yw M Feature coordinate system Z y2 z Yw Xw Yw X x y x2 C op yr ig ht (c )2 01 3 YA x2 Y Zw Y z2 Z 4) Rotation on Zw by ° Zw A Xw ZA y2 K IM Se z1 A ri Zw K al N Xw 26-64 X Xw D740PB0096 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 2-3 Setting with three points in the plane A. Programming format [G68.2 P2 Q0 Xx0 Yy0 Zz0 R] G68.2 P2 Q1 Xx1 Yy1 Zz1 G68.2 P2 Q2 Xx2 Yy2 Zz2 G68.2 P2 Q3 Xx3 Yy3 Zz3 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . G68.2 P2: Inclined-plane machining ON (Setting with three points in the plane) Q: Point designation (for point 1 to 3, or for shifting amounts). x0, y0, z0: Amounts of shift from point 1 to the definite origin of feature coordinate system. To be specified with their incremental values from the origin of the feature coordinate system to be established. : Angle of rotation of the feature coordinate system around the Z-axis. Setting range: –360° to 360°. x1, y1, z1: Coordinates of point 1 (origin of feature coordinate system). To be specified with its absolute values in the currently active workpiece coordinate system. x2, y2, z2: Coordinates of point 2 (a point on the feature coordinate system’s X-axis [on the positive side]). To be specified with its absolute values in the currently active workpiece coordinate system. x3, y3, z3: Coordinates of point 3 for plane definition. To be specified with its absolute values in the currently active workpiece coordinate system. Argument Q can be omitted if Q0 (for designation of shifting amounts) is required. 2. The designation of X, Y, or Z can be omitted when the argument is zero. 3. The designation of R can be omitted when the argument is zero (0: no rotation). 4. Use of any other addresses than P, Q, X, Y, Z, and R will lead to an alarm (1809 TILTED PLANE CMD FORMAT ERROR). 5. Alarm 1809 TILTED PLANE CMD FORMAT ERROR occurs in the following cases: K ZA Se ri al N o. 1. Alarm 1810 TILTED PLANE CANNOT BE DEFINED occurs in the following cases: YA 6. M A ZA K IM A - A series of blocks from G68.2 P2 Q0 to Q3 is interrupted by any other block, - Any of the blocks from G68.2 P2 Q1 to Q3 is wanting, - Any of the blocks from G68.2 P2 Q0 to Q3 is overlapping, - Argument Q is of any other value than 0 to 3, - Argument R is entered in multiple blocks. ig Setting a feature coordinate system yr B. ht (c )2 01 3 - Any pair of the three points 1 to 3 denotes one and the same point, - All the three points 1 to 3 lie on one and the same line, - The distance between any one of the three points and the line through the other points should be less than 0.1 mm. C op G68.2 P2 blocks set a feature coordinate system as follows: 1) Point (x1, y1, z1) in the current workpiece coordinate system is set as a new origin. 2) The feature coordinate system’s X-, Y-, and Z-axis are determined as follows: The X-axis direction is set to the direction from point 1 (Q1) to point 2 (Q2). The Z-axis direction is then determined by the cross product (Q2 – Q1) × (Q3 – Q1). Finally, the Y-axis is set in accordance with the rule of right-handed system. 3) The feature coordinate system is then translated by the shifting amounts (x0, y0, z0), if specified in a Q0 block. The desired new position of the origin must be specified with incremental values from the origin of the feature coordinate system to be established. 26-65 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION Finally, the feature coordinate system is rotated around the Z-axis by an angle of °, if specified as argument R in a Q0 block. 4) Conversion by means of three points in the plane 4) Rotation on Z by ° Y Z Feature coordinate system Z X Q3 Q1 Yw X 3) Translation of the system (x0, y0, z0) Q2 . Zw er ve d Y Xw gh ts Workpiece coordinate system re s 1) Translation of the system (x1, y1, z1) .A ll ri D740PB0097 N Remark 1: Cross product 34 08 C 39 O R PO R A TI O The cross product of two ordered vectors a and b (denoted by a × b) is another vector c which is perpendicular to the plane containing the given two vectors, with a direction determined in accordance with the rule of right-handed system, and has a magnitude equal to the parallelogram that the vectors span. o. Remark 2: Right-handed system K ZA A Right-handed system X-axis Vector b 01 3 Vector c YA M A ZA Cross product: c = a × b K IM Se ri al N Right-handed system refers to one of the methods of defining the three-dimensional axes of rectangular coordinates. The orientation of the X-, Y-, and Z-axis of a right-handed coordinate system corresponds to the directions pointed by the right hand’s thumb, index, and middle fingers, in that order, at right angles to one another (with the thumb and the index finger lying in the same plane with the palm). Vector a ig ht (c )2 Y-axis op yr Z-axis C D740PB0098 26-66 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 2-4 26 Setting with two vectors A. Programming format G68.2 P3 Q1 Xx Yy Zz Iix Jjx Kkx G68.2 P3 Q2 Iiz Jjz Kkz ri gh ts re s er ve d . G68.2 P3: Inclined-plane machining ON (Setting with two vectors) Q: Vector designation (for the X- or Z-axis direction). x, y, z: Coordinates of the origin of feature coordinate system. To be specified with its absolute values in the currently active workpiece coordinate system. ix, jx, kx: Components of the vector representing the X-axis direction of the feature coordinate system. To be specified (in dimensionless numbers) with respect to the currently active workpiece coordinate system. Setting range: as specified for the orthogonal axes. iz, jz, kz: Components of the vector representing the Z-axis direction of the feature coordinate system. To be specified (in dimensionless numbers) with respect to the currently active workpiece coordinate system. Setting range: as specified for the orthogonal axes. The designation of X, Y, or Z can be omitted when the argument is zero (0: no shift along the particular axis). Set zero for X, Y, and Z if no translation of the origin is required. 2. The designation of I, J, or K can be omitted when the argument is zero. 3. Use of any other addresses than P, Q, I, J, and K will lead to an alarm (1809 TILTED PLANE CMD FORMAT ERROR). X, Y, and Z can be additionally used in a block of G68.2P3Q1. 4. Alarm 1809 TILTED PLANE CMD FORMAT ERROR occurs in the following cases: o. 34 08 C 39 O R PO R A TI O N .A ll 1. K ZA A Alarm 1810 TILTED PLANE CANNOT BE DEFINED occurs in the following cases: ZA 5. K IM Se ri al N - The successive blocks G68.2 P3 Q1 and Q2 are interrupted by any other block, - Either of the blocks G68.2 P3 Q1 and Q2 is wanting, - Either of the blocks G68.2 P3 Q1 and Q2 is overlapping, - Argument Q is of any other value than 1 and 2, - Argument Q is omitted. C op yr ig ht (c )2 01 3 YA M A - All the values ix, jx, kx amount to zero (0), - All the values iz, jz, kz amount to zero (0), - The angle that is formed by the vectors specified for the feature coordinate system’s Xand Z-axis deviates by 5° or more from the perpendicularity. 26-67 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. Setting a feature coordinate system G68.2 P3 blocks set a feature coordinate system as follows: 1) Point (x, y, z) in the current workpiece coordinate system is set as a new origin. 2) The feature coordinate system’s X-, Y-, and Z-axis are determined as follows: The X-axis direction is set to the direction of the vector rx = (ix, jx, kx). The Y-axis direction is then determined by the cross product (iz, jz, kz) × (ix, jx, kx). Finally, the Z-axis is set in accordance with the rule of right-handed system. . Conversion by means of two vectors er ve d 2) Orientation of the system re s Z Y 1) Translation of the system rx Xw 34 08 C 39 O R PO R A TI O Programming format ZA ri al G68.2 P4 Xx Yy Zz I J K K A. o. Setting with projection angles D740PB0099 N 2-5 N Workpiece coordinate system X ri Feature coordinate system .A ll Yw gh ts rz Zw A The designation of X, Y, or Z can be omitted when the argument is zero (0: no shift along the particular axis). Set zero for X, Y, and Z if no translation of the origin is required. The designation of I, J, or K can be omitted when the argument is zero (0: no rotation around the axis concerned). 3. Use of any other addresses than P, X, Y, Z, I, J, and K will lead to an alarm (1809 TILTED PLANE CMD FORMAT ERROR). 4. Alarm 1810 TILTED PLANE CANNOT BE DEFINED occurs if the angle that is formed by the X-axis rotated around the Y-axis by –°, on the one side, and the Y-axis rotated around the X-axis by °, on the other side, should be 1° or less. C op yr ig 2. ht (c 1. )2 01 3 YA M A ZA K IM Se G68.2 P4: Inclined-plane machining ON (Setting with projection angles) x, y, z: Coordinates of the origin of feature coordinate system. To be specified with its absolute values in the currently active workpiece coordinate system. : Angle of rotating the X-axis around the Y-axis of the current workpiece coordinate system. : Angle of rotating the Y-axis around the X-axis of the current workpiece coordinate system. : Angle of rotation around the Z-axis of the feature coordinate system. (Angle setting range: –360° to 360°.) 26-68 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION B. 26 Setting a feature coordinate system A block of G68.2 P4 sets a feature coordinate system as follows: 1) Point (x, y, z) in the current workpiece coordinate system is set as a new origin. 2) The feature coordinate system’s X-, Y-, and Z-axis are determined as follows: Assume that the direction of the X-axis rotated by –° around the Y-axis of the current workpiece coordinate system be ra, and that the direction of the Y-axis rotated by ° around the X-axis of the current workpiece coordinate system be rb. The direction of the feature coordinate system’s Z-axis is determined by the cross product ra × rb. Conversion by means of projection angles ts re s Finally, the Y-axis is set in accordance with the rule of right-handed system. er ve d . The X-axis direction is then set to the direction of ra resulting from a rotation around the Z-axis by °. rb ra 34 08 C 39 O R PO R A TI O N Z Y .A ll ri gh X – 2) Orientation of the system o. Zw K ri Yw 1) Translation of the system ZA al N Xw A D740PB0100 K IM Se Workpiece coordinate system A. Programming format YA M G68.3 Xx Yy Zz R ZA Setting with tool-axis direction A 2-6 The designation of X, Y, or Z can be omitted when the argument is zero (0: no shift along the particular axis). Set zero for X, Y, and Z if no translation of the origin is required. C op yr ig 1. ht (c )2 01 3 G68.3: Inclined-plane machining ON (Setting with tool-axis direction) x, y, z: Coordinates of the origin of feature coordinate system. To be specified with its absolute values in the currently active workpiece coordinate system. : Angle of rotation around the Z-axis of the feature coordinate system. Setting range: –360° to 360°. 2. The designation of R can be omitted when the argument is zero (0: no rotation around the axis concerned). 3. Use of any other addresses than X, Y, Z, and R will lead to an alarm (1809 TILTED PLANE CMD FORMAT ERROR). 26-69 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. Setting a feature coordinate system A block of G68.3 sets a feature coordinate system as follows: 1) Point (x, y, z) in the current workpiece coordinate system is set as a new origin. 2) The feature coordinate system’s X-, Y-, and Z-axis are determined as follows: The feature coordinate system’s Z-axis is set to be parallel with the current direction of the tool axis. The X-axis is inclined, with reference to the workpiece coordinate system, so as to correspond with the angular positions of the tool. (The X-axis is, therefore, orientated in parallel with the original one if the machine coordinates of the tool on its rotational axes are 0°.) er ve d . The Y-axis is inclined, with reference to the workpiece coordinate system, so as to correspond with the angular positions of the tool. (The Y-axis is, therefore, orientated in parallel with the original one if the machine coordinates of the tool on its rotational axes are 0°.) re s Finally, the feature coordinate system is rotated around the Z-axis by an angle of °. .A ll ri gh ts Conversion by means of tool axis direction N 2) Orientation of the system 34 08 C 39 O R PO R A TI O Y X Z o. ZA K IM Yw 1) Translation of the system A Se ri al Xw K N Zw Workpiece coordinate system ZA Tool-axis direction control A 3. D740PB0101 C op yr ig ht (c )2 01 3 YA M The G53.1 command causes motions on the rotational axes concerned so as to make parallel to, and of the same direction with, each other the direction of the tool axis (from the tip along the perpendicular to the tool-swiveling axis) and the positive direction of the Z-axis of a feature coordinate system. Although no movements occur on the X-, Y- and Z-axis, the resultant rotation of the table makes changes to the feature coordinate system in some cases, and the positional indication with respect to the currently valid coordinate system changes accordingly for the orthogonal axes. Z Z Y Y G53.1 command X Feature coordinate system X Feature coordinate system D740PB0102 26-70 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION As shown in the figure below, the G53.1 command causes a rotation on the C-axis so as to make the Z-axis of the (1st) feature coordinate system parallel to the XZ-plane of the workpiece coordinate system and, on the other hand, a rotation on the B-axis so as to make the direction of the tool axis and the positive direction of the Z-axis of the changed (2nd) feature coordinate system parallel to, and of the same direction with, each other. (No movements occur on the X-, Y- and Z-axis.) The positional indication on the display with respect to the currently valid coordinate system changes according to the 2nd feature coordinate system. The speed of the rotation caused by a G53.1 command depends on the currently active mode of motion (G00/G01). Operation caused by a G53.1 command er ve d . Zw Workpiece coordinate system re s Xw Feature coordinate system (1st) Z gh ts Yw 34 08 C 39 O R PO R A TI O N X .A ll ri Y For G53.1P0 or G53.1P1 N o. For G53.1P2 Z K X M YA X A X Feature coordinate system (2nd) Y ZA Y Z B-axis rotation (B < 0) ZA K IM Feature coordinate system (2nd) A Se ri al B-axis rotation (B > 0) C-axis rotation )2 01 3 C-axis rotation ht (c D736PB004 C op yr ig For angles that are calculated for G53.1, there are usually two solutions: solution by a positive, or a negative angle of rotation on the B-axis. Use argument P for the G53.1 command to specify which solution to select. 1. G53.1P1 for the solution by a positive angle of rotation on the B-axis. (Left figure above) 2. G53.1P2 for the solution by a negative angle of rotation on the B-axis. (Right figure above) Omission of argument P (or P0) selects a positive angle of rotation (as with case 1 above). 26-71 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 4. Incremental coordinate system establishment for inclined-plane machining Use G68.4, in the same manner as for G68.2, to establish a new coordinate system on the basis of the currently valid feature coordinate system (defined with G68.2 and G68.3). Setting method Programming format Using Eulerian angles G68.4 [P0] Using roll, pitch, and yaw angles G68.4 P1 Using three points in the plane G68.4 P2 Using two vectors G68.4 P3 Using projection angles G68.4 P4 Argument P can be omitted if it is 0 (for the use of Eulerian angles). 2. If any number other than 0 to 4 is entered with P in a G68.4 block, an alarm will be caused (1809 TILTED PLANE CMD FORMAT ERROR). 3. Argument P or Q with a decimal point in a G68.4 block will be processed by simply deleting the decimal point and decimal digits. 4. Be sure to enter the G68.4 command independently. If a block of G68.4 should contain any other G-codes or motion commands, an alarm is caused (1809 TILTED PLANE CMD FORMAT ERROR). 5. Giving a G68.4 command without any feature coordinate system (defined with G68.2, G68.3 and G68.4) being valid will lead to an alarm (1807 CANNOT USE G68.2). 6. It is possible to give another G68.4 command with respect to a feature coordinate system established by the preceding G68.4 command. 7. Use G69 to cancel the mode of inclined-plane machining and to restore the original workpiece coordinate system. K A K IM 1) Establishment of a feature coordinate system using Eulerian angles. ZA ri Se Operation by a G68.4 command al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 1. G68.4 P0 X-15.0 Y0 Z-15.0 I90.0 J90.0 K-90.0 Y X A ZA G68.2 P0 X20.0 Y5.0 Z0 I0 J90.0 K0 2) Incremental establishment of a new feature coordinate system using Eulerian angles. YA Y (c )2 01 3 Yw Z Zw M Zw Y Yw X X Z Z Xw Workpiece coordinate system Xw D740PB0118 op yr ig ht Workpiece coordinate system Operation description C 5. A. Operation in the mode of inclined-plane machining The G68.2 command causes a feature coordinate system to be set as described above, and the positional indication on the display with respect to the currently valid coordinate system to change accordingly (without any actual movements on the machine). Axis motion commands in the G68.2 mode are processed in general with respect to the feature coordinate system. 26-72 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION B. 26 Tool-axis direction control The G53.1 command causes actual motions on the rotational axes concerned so as to adjust the direction of tool axis to the positive direction of the Z-axis of a feature coordinate system. No motions, however, will occur on the orthogonal axes (X, Y and Z). The speed of the rotation depends on the currently active mode of motion (G00/G01). Note : Cancellation of the mode of inclined-plane machining er ve d . C. Depending on the particular attitude of the feature coordinate system, the G53.1 command may cause a considerable amount of motion on the rotational axis concerned (for the tool or the table). To prevent interference, therefore, move the tool well away from the table before entering the command. gh ts re s The G69 command cancels the mode of inclined-plane machining. The feature coordinate system will be replaced by the original workpiece coordinate system with reference to which the G68.2 command was given, and the positional indication on the display with respect to the currently valid coordinate system will be changed accordingly (without any actual movements on the machine). Reference for the feature coordinate system N D. .A ll ri Resetting the NC-unit includes cancellation of the mode of inclined-plane machining. 34 08 C 39 O R PO R A TI O Use parameter F144 bit 1 to select the reference for establishing a feature coordinate system. The parameter in question is out of all relation to the angular position of the tool on its rotational axis and the workpiece origin settings on the WORK OFFSET display. Workpiece coordinate system F144 bit 1 = 0 o. Reference ZA Se ri al Description K N A feature coordinate system is to be established with reference to the currently active workpiece coordinate system. A ZA K IM A Established on the assumption that the table is currently indexed to 0°, the feature coordinate system can be set independently of the workpiece origin settings for the rotational axis on the WORK OFFSET display. To machine the same contour on multiple surfaces (centrally symmetric under a point reflection through the axis of table rotation), index the table to the required angles and call one and the same subprogram including an inclined-plane machining command and describing the desired machining contour. (See “E. Example of programming” 1.) A feature coordinate system (to be rotated according to the table rotation) is to be established with reference to the 0° position of the table indexing. The feature coordinate system thus established rotates according to the table’s angular position as well as to the workpiece origin settings for the rotational axis on the WORK OFFSET display. To machine the same contour on multiple surfaces, give inclined-plane machining commands for the respective surfaces and call one and the same subprogram describing the desired machining contour. (See “E. Example of programming” 2.) ht (c )2 01 3 YA M Remarks Table indexing to 0° F144 bit 1 = 1 C op yr ig Note 1: The parameter in question (F144 bit 1) only applies to G68.2 (out of all relation to G68.3 and G68.4). Note 2: The parameter in question (F144 bit 1) exerts influence upon the replacement of a G68 command with a G68.2 command (enabled when F168 bit 4 = 1). Take due care, therefore, when changing the parameter setting. 26-73 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION E. Example of programming 1. The example given below refers to the selection of Workpiece coordinate system as Reference for the feature coordinate system (F144 bit 1 = 0). Shown below is a program for machining the same geometry on each inclined surface of a hexagonal prism. Blocks N1 to N6 in the main program index the table for each machining surface, and the required feature coordinate system is established as well as the tool path for machining is described in a subprogram (WNo. 100). The workpiece origin is assumed to be set on the axis of rotation of the hexagonal prism. WNo. 10 G0 B0. C180. M98 P100 G69 G0 X300. Y0. Z200. For machining on surface [4] G0 B0. C240. M98 P100 G69 G0 X300. Y0. Z200. For machining on surface [5] er ve d re s ts gh ri .A ll N 34 08 C 39 O R PO R A TI O o. K G0 B0. C300. M98 P100 G69 G0 X300. Y0. Z200. . For machining on surface [3] For machining on surface [6] K IM Se N6 G0 B0. C120. M98 P100 G69 G0 X300. Y0. Z200. ZA N5 For machining on surface [2] N N4 G0 B0. C60. M98 P100 G69 G0 X300. Y0. Z200. G68.2 X86.6025 Y50. Z0. I-90. J-45. K0. G53.1 G90 G0 X0. Y0. Z0. G1 Y20. F1000 G2 X20. Y0. R20. F1000 G1 X0. F1000 M99 A N3 For machining on surface [1] al N2 WNo. 100 G0 B0. C0. M98 P100 G69 G0 X300. Y0. Z200. ri N1 YA M A ZA M30 Yf Yf Zf [1] ht (c )2 01 3 Origin of the feature coordinate system [6] 86.602 [2] 50. X w C op yr ig Xf Y w [5] [3] [4] D736PB005’ 26-74 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 2. 26 The example given below refers to the selection of Table indexing to 0° as Reference for the feature coordinate system (F144 bit 1 = 1). Shown below is a program for machining the same geometry on each inclined surface of a hexagonal prism. Blocks N1 to N6 in the main program define a feature coordinate system for each surface, and the tool path for machining is described in a subprogram (WNo. 100). The workpiece origin is assumed to be set at the center of the top surface of the hexagonal prism (need not be set on the axis of rotation of the hexagonal prism). N4 G68.2 X-86.602 Y-50. I-270. J-45. K0. M98 P100 G69 G0 X300. Y0. Z200. B0. C0. For machining on surface [4] G68.2 X-86.602 Y50. I-330. J-45. K0. M98 P100 G69 G0 X300. Y0. Z200. B0. C0. For machining on surface [5] er ve d For machining on surface [3] re s G68.2 X0. Y-100. Z0. I-210. J-45. K0. M98 P100 G69 G0 X300. Y0. Z200. B0. C0. ri gh ts For machining on surface [2] G68.2 X0. Y100. I-30. J-45. K0. M98 P100 G69 G0 X300. Y0. Z200. B0. C0. A ZA For machining on surface [6] K IM Se ri al N6 K N o. N5 G68.2 X86.602 Y-50. Z0. I-150. J-45. K0. M98 P100 G69 G0 X300. Y0. Z200. B0. C0. G53.1 G90 G0 X0. Y0. Z0. G1 Y20. F1000 G2 X20. Y0. R20. F1000 G1 X0. F1000 M99 .A ll N3 For machining on surface [1] N N2 G68.2 X86.602 Y50. Z0. I-90. J-45. K0. M98 P100 G69 G0 X300. Y0. Z200. B0. C0. 34 08 C 39 O R PO R A TI O N1 WNo. 100 . WNo. 10 01 3 YA M A ZA M30 Yf Yf Zf [1] ig ht (c )2 Origin of the feature coordinate system C op yr Xf [6] 86.602 [2] 50. X Y [5] [3] [4] D736PB005 26-75 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 3. Shown below is a program for machining on an inclined surface cut on a cube. Six examples of program section are given for defining a feature coordinate system for the inclined plane, and the tool path for machining is described in a subprogram (WNo. 100). This program can be created and executed only when type A is selected. WNo. 10 WNo. 100 G28XYZBC G54X0Y0Z0 M200 G53.1 G90 G0 X0.Y0.Z0.B0.C0. G0 X0Y0Z0 G1 Y50. F1000 G2 X50. Y0. R50. F1000 G1 X0. F1000 M99 Section for setting a feature coordinate system. See 1 to 6 below. re s ts Setting with Eulerian angles gh 1. er ve d M98P100 G69 M30 . * ri G68.2 X33.3333 Y33.3333 Z66.6667 I-45 J54.7356 K0 Setting with roll, pitch, and yaw angles G68.2 P1 Q321 X33.3333 Y33.3333 Z66.6667 I45 J-35.2644 K-30 3. Setting with three points in the plane G68.2 P2 Q0 X70.7107 Y40.8248 Z0 R-60 G68.2 P2 Q1 X0 Y0 Z0 G68.2 P2 Q2 X100 Y0 Z100 G68.2 P2 Q3 X0 Y100 Z100 4. Setting with two vectors G68.2 P3 Q1 X33.3333 Y33.3333 Z66.6667 I100 J-100 G68.2 P3 Q2 I-100 J-100 K100 ZA K Setting with projection angles ri 5. al N o. 34 08 C 39 O R PO R A TI O N .A ll 2. Setting with tool-axis direction K IM 6. A Se G68.2 P4 X33.3333 Y33.3333 Z66.6667 I45 J45 K-60 A ZA B54.7356 C-135. G68.3 X33.3333 Y33.3333 Z66.6667 R90 Zw YA M Yf Xf 01 3 B Yf B C C )2 Zf Xf C op yr ig ht (c 100 Xw Yw 100 100 A A Origin of the feature coordinate system = Centroid of the inclined surface (x0, y0, z0) = (33.3333, 33.3333, 66.6667) D740PB0103 26-76 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-3-2 Restrictions for type A 1. Relationship to other commands A. Commands available in the mode of inclined-plane machining Code Function Code G00 Exact stop mode G61 Linear interpolation G01 Geometry compensation G61.1 Circular interpolation (CW) G02 (*1) Cutting mode G64 Circular interpolation (CCW) G03 (*1) User macro single call G65 Dwell G04 User macro modal call A G66 High-speed machining mode G05 User macro modal call B Exact-stop G09 User macro modal call OFF Selection of XY-plane G17 3-D coordinate conversion ON Selection of ZX-plane G18 Selection of YZ-plane G19 Incremental coordinate system establishment for inclined-plane machining G68.4 Return to zero point G28/G30 3-D coordinate conversion OFF G69 Nose radius/Tool radius compensation OFF G40 Hole-machining fixed cycles (G82.2 excluded) G71.1-G89 Nose radius/Tool radius compensation (left) G41 Absolute/Incremental data input G90/G91 Nose radius/Tool radius compensation (right) G42 Inverse time feed Tool radius compensation for five-axis machining (to the left) G41.2/G41.5 Tool radius compensation for five-axis machining (to the right) G42.2/G42.5 Tool length offset (+) G43 Tool tip point control, type 1 G43.4 (*4) . Positioning er ve d Function A Mirror image OFF M Mirror image ON re s ts gh ri .A ll N G98 R-point level return in hole-machining fixed cycles G99 ZA K Initial point level return in hole-machining fixed cycles Single program multi-process control G109 G47/G48 Subprogram call/End of subprogram M98/M99 G49 Feed function F G50.1 M, S, T, B function MSTB (*2) G51.1 Local variables, Common variables, Operation commands, Control commands Macro instructions Tool-axis direction control G53.1 YA G95 G283-G289 G53 01 3 G94 Feed per revolution (synchronous) G112 Selection of machine coordinate system A command for helical/spiral interpolation will lead to an alarm (1806 ILLEGAL CMD TILTED PLANE CMD). Use of a tool function (T-code) in the mode of inclined-plane machining will lead to an alarm (1806 ILLEGAL CMD TILTED PLANE CMD). A G68 command can be given in the mode of inclined-plane machining only when parameter F168 bit 4 = 1 (Replacing the 3-D coordinate conversion command [G68] with inclined-plane machining command [G68.2]). Axis movement commands for linear and rotational axes are executed with reference to the feature and workpiece coordinate systems, respectively, in the mode of inclined-plane machining. It should be noted here, therefore, that an unexpected motion may be caused especially in combined use with G43.4. yr ig *3 ht (c )2 *1 *2 Feed per minute (asynchronous) Driling/Tapping cycles ZA Tool position offset OFF G93 M, S, T, B output to opposite system K IM Tool position offset G68 (*3) G45/G46 A G44 Se Tool length offset (–) G67 34 08 C 39 O R PO R A TI O o. N al G43.5 ri Tool tip point control, type 2 G66.1 C op *4 Giving any other command than those enumerated above in the mode of inclined-plane machining will lead to an alarm (1806 ILLEGAL CMD TILTED PLANE CMD). 26-77 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. Modes in which inclined-plane machining is selectable (with G68.2 or G68.3) Function Code Function Code G00 Selection of workpiece coordinate system 3 G56 Linear interpolation G01 Selection of workpiece coordinate system 4 G57 High-speed machining mode OFF G05P0 Selection of workpiece coordinate system 5 G58 Radius data input for X-axis ON G10.9X0 Selection of workpiece coordinate system 6 G59 Polar coordinate interpolation OFF G13.1 Exact stop mode G61 Polar coordinate input OFF G15 Geometry compensation G61.1 Selection of XY-plane G17 Modal spline interpolation G61.2 (*1) Five-surface machining OFF G17.9 Cutting mode G64 Selection of ZX-plane G18 User macro single call G65 Selection of YZ-plane G19 User macro modal call OFF Inch data input G20 3-D coordinate conversion OFF Metric data input G21 Fixed cycle OFF Pre-move stroke check OFF G23 Absolute/Incremental data input Tool radius compensation OFF G40 Inverse time feed Control for normal-line direction OFF G40.1 Feed per minute (asynchronous) Tool length offset (+) G43 Feed per revolution (synchronous) G95 Tool length offset (–) G44 Constant surface speed control OFF G97 Tool length offset OFF G49 Head offset for five-surface machining OFF G49.1 Initial point level return in hole-machining fixed cycles G98 Scaling OFF G50 Mirror image OFF G50.1 R-point level return in hole-machining fixed cycles G99 Polygonal machining mode OFF G50.2 Single program multi-process control G109 Selection of workpiece coordinate system 1 G54 Cross machining control axis selection G110 (*2) Cross machining control axis cancellation G111 er ve d re s ts gh ri G93 G94 N .A ll G90/G91 K Hob milling mode OFF G113 Superposition control OFF G127 Giving a G68.2/G68.3 command under G61.2 for a system without the optional function for five-axis spline interpolation will lead to an alarm (1829 NO 5 AXIS SPLINE CUTTING OPTION). Only valid on machines with the optional function for selecting from multiple sets for five-axis machining. ZA *1 G55 G69 K IM Selection of workpiece coordinate system 2 A G54.4 ZA Se Workpiece setup error correction G67 G80 34 08 C 39 O R PO R A TI O o. N al G54.1 ri Selection of additional workpiece coordinate system . Positioning M A *2 C op yr ig ht (c )2 01 3 YA Giving a G68.2 or G68.3 command in a mode other than those enumerated above will lead to an alarm (1807 CANNOT USE G68.2). 26-78 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION C. Modes in which incremental coordinate system establishment for inclined-plane machining is possible (with G68.4) Function Code G58 Linear interpolation G01 Selection of workpiece coordinate system 6 G59 Radius data input for X-axis ON G10.9X0 Exact stop mode G61 Polar coordinate interpolation OFF G13.1 Geometry compensation G61.1 Polar coordinate input OFF G15 Modal spline interpolation G61.2 Selection of XY-plane G17 Cutting mode G64 Five-surface machining OFF G17.9 User macro single call G65 Selection of ZX-plane G18 User macro modal call OFF G67 Selection of YZ-plane G19 3-D coordinate conversion ON Inch data input G20 Metric data input G21 Pre-move stroke check OFF G23 Tool radius compensation OFF G40 3-D coordinate conversion OFF Control for normal-line direction OFF G40.1 Fixed cycle OFF Tool length offset (+) G43 Absolute/Incremental data input G90/G91 Tool length offset (–) G44 Inverse time feed G93 Tool length offset OFF G49 Feed per minute (asynchronous) G94 Head offset for five-surface machining OFF G49.1 Feed per revolution (synchronous) G95 Scaling OFF G50 Constant surface speed control OFF G97 Mirror image OFF G50.1 Polygonal machining mode OFF G50.2 Initial point level return in hole-machining fixed cycles G98 Selection of workpiece coordinate system 1 G54 R-point level return in hole-machining fixed cycles G99 Selection of additional workpiece coordinate system . Selection of workpiece coordinate system 5 er ve d Code G00 al Function Positioning G68.2 ts gh ri .A ll N 34 08 C 39 O R PO R A TI O o. K N G80 G111 G56 Hob milling mode OFF G113 G57 Superposition control OFF G127 A ZA G110 (*2) Cross machining control axis cancellation ri Cross machining control axis selection G55 A ZA Selection of workpiece coordinate system 4 G69 G109 K IM Selection of workpiece coordinate system 3 G68.4 Single program multi-process control G54.4 Selection of workpiece coordinate system 2 G68.3 re s Inclined-plane machining G54.1 Se Workpiece setup error correction G68 (*1) A G68 command can be given in the mode of inclined-plane machining only when parameter F168 bit 4 = 1 (Replacing the 3-D coordinate conversion command [G68] with inclined-plane machining command [G68.2]). Only valid on machines with the optional function for selecting from multiple sets for five-axis machining. YA M *1 *2 C op yr ig ht (c )2 01 3 Giving a G68.4 command in a mode other than those enumerated above will lead to an alarm (1807 CANNOT USE G68.2). 26-79 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION D. Modes in which tool-axis direction control (G53.1) is selectable Function Code G57 Linear interpolation G01 Selection of workpiece coordinate system 5 G58 High-speed machining mode OFF G05P0 Selection of workpiece coordinate system 6 G59 Radius data input for X-axis ON G10.9X0 Exact stop mode G61 Polar coordinate interpolation OFF G13.1 Geometry compensation G61.1 Polar coordinate input OFF G15 Modal spline interpolation G61.2 Selection of XY-plane G17 Cutting mode G64 Five-surface machining OFF G17.9 User macro single call G65 Selection of ZX-plane G18 User macro modal call OFF G67 Selection of YZ-plane G19 3-D coordinate conversion ON Inch data input G20 Metric data input G21 Pre-move stroke check OFF G23 Tool radius compensation OFF G40 Fixed cycle OFF Control for normal-line direction OFF G40.1 Absolute/Incremental data input Tool length offset (+) G43 Inverse time feed G93 Tool length offset (–) G44 Feed per minute (asynchronous) Tool length offset OFF G49 Feed per revolution (synchronous) G95 Head offset for five-surface machining OFF G49.1 Constant surface speed control OFF G97 Scaling OFF G50 Mirror image OFF G50.1 Initial point level return in hole-machining fixed cycles G98 Polygonal machining mode OFF G50.2 Selection of workpiece coordinate system 1 G54 R-point level return in hole-machining fixed cycles G99 Selection of additional workpiece coordinate system Single program multi-process control G109 er ve d ts gh ri N 34 08 C 39 O R PO R A TI O o. K N G68.4 G80 G90/G91 G94 Cross machining control axis selection G110 (*1) Cross machining control axis cancellation G111 G54.4 Hob milling mode OFF G113 G55 Superposition control OFF G127 ZA A G56 A ZA Selection of workpiece coordinate system 3 G68.3 G54.2P0 ri Selection of workpiece coordinate system 2 re s G68.2 K IM Workpiece setup error correction G68 (*2) Inclined-plane machining G54.1 Se Dynamic offsetting OFF . Selection of workpiece coordinate system 4 .A ll Code G00 al Function Positioning Only valid on machines with the optional function for selecting from multiple sets for five-axis machining. A G68 command can be given in the mode of inclined-plane machining only when parameter F168 bit 4 = 1 (Replacing the 3-D coordinate conversion command [G68] with inclined-plane machining command [G68.2]). YA M *1 *2 C op yr ig ht (c )2 01 3 Giving a G53.1 command in a mode other than those enumerated above will lead to an alarm (1808 CANNOT USE G53.1). 26-80 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION Notes Move the tool to a safe position before entering the G53.1 command in order to prevent interference from being caused by the resulting motions on the rotational axes. 2. In the mode of inclined-plane machining, system variables #5001 to #5116 for reading positional information refer to the feature coordinate system, while system variables #5021 to #5036 always denote the current position with respect to the machine coordinate system. 3. Resetting in the mode of inclined-plane machining cancels the mode and makes the G69 code modal in the group concerned. 4. External deceleration signal works only on the actually controlled axes of the machine coordinate system, not on those of the feature coordinate system. 5. Tool radius compensation (for five-axis machining as well), mirroring by G-code, fixed cycle, and tool tip point control must be selected and cancelled within the mode of inclined-plane machining. ts gh ri .A ll Mode of inclined-plane machining 34 08 C 39 O R PO R A TI O G68.2 X_Y_Z_I_J_K (Inclined-plane machining ON) : G41 D1 (Tool radius compensation ON) : Mode of tool radius compensation : G40 (Tool radius compensation OFF) : G69 (Inclined-plane machining OFF) re s er ve d . 1. N 2. Selection of inclined-plane machining mode (by G68.2) with the tool length offset function being active will result in a disagreement between the real tip point and its positional indication with respect to the current coordinate system. The disagreement will be cleared, as shown below, by executing the G53.1 command to adjust the tool-axis direction to the Z-axis of the feature coordinate system. K ZA A K IM Se ri al N o. 6. Before the G68.2 command is entered, the real position of the tip point is in agreement with the positional indication. ZA Z YA M A X 01 3 Z X yr ig ht (c )2 If a new coordinate system is set by a G68.2 command, the tool length offset is internally applied to the Z-axis direction of the new coordinate system, resulting in a disagreement between the real tip point and its positional indication. The G53.1 command really adjusts the direction of the tool axis to the Z-axis of the new coordinate system and, as a result, clears the disagreement in question. C op Z X D740PB0052 7. Manual interruption is always performed on the basis of the machine coordinate system (without any coordinate conversion). 26-81 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 8. MDI interruption is not available in the mode of inclined-plane machining. An attempt to perform MDI interruption in the mode of inclined-plane machining will only cause an alarm (185 ILLEGAL OPER IN G68.2 MODE). 9. Do not give a command for interruption with the execution of a user macroprogram in the mode of inclined-plane machining; otherwise the execution of the interrupted program could not be continued due to an alarm (807 ILLEGAL FORMAT) caused at an M99 block in the macroprogram. 10. Do not give any tool change command in the mode of inclined-plane machining; otherwise an alarm will be caused (1806 ILLEGAL CMD TILTED PLANE CMD). er ve d . 11. Tool path check can only be performed on the basis of the original workpiece coordinate system (without coordinate conversion taken into consideration). re s 12. Tracing in the mode of inclined-plane machining is displayed with reference to the machine coordinate system. gh ts 13. Do not use corner chamfering or rounding commands in the mode of inclined-plane machining; otherwise an alarm will be caused (1806 ILLEGAL CMD TILTED PLANE CMD). .A ll ri 14. Do not forget to take into consideration the restrictions imposed on tool tip point control, workpiece setup error correction, and tool radius compensation for five-axis machining in combined use with the inclined-plane machining function. 34 08 C 39 O R PO R A TI O N 15. For the function of inclined-plane machining to be used in the mode of tool tip point control, set bit 1 of parameter F144 to “1” beforehand (for the selection of Table indexing to 0° as Reference for the feature coordinate system), and, after setting the inclined-plane machining mode, give a command of G53.1 to continue the use of the tip point control mode. al N o. 16. As a matter of course, restart operation started by the [RESTART 2 NONMODAL] menu function cannot in general be executed otherwise than with the inclined-plane machining mode being cancelled. K ZA K IM A Se ri 17. Inclined-plane machining is not available if the C-axis control of the turning spindle No. 2 is concerned (on accordingly constructed machines) unless the optional function for selecting from multiple sets for five-axis machining is provided. M A ZA See Section 26-7 for a detailed description of the above-mentioned optional function. (c )2 01 3 YA 18. According to the settings in parameter SU153, the relevant items of digital information on the POSITION display refer to the following types of coordinate system in the mode of inclined-plane machining function: Bit in question OFF (0) (SU153 bit 3) yr ig MACHINE Machine coordinate system BUFFER (SU153 bit 1) Workpiece coordinate system Feature coordinate system REMAIN (SU153 bit 2) Workpiece coordinate system Feature coordinate system C op Bit in question ON (1) Feature coordinate system ht POSITION 19. Do not give a command for positioning to an arbitrarily definable point, or for external tool measurement (for tool breakage detection) in the mode of inclined-plane machining; otherwise an alarm will be caused (1806 ILLEGAL CMD TILTED PLANE CMD). 20. Do not specify a MAZATROL program as a subprogram to be called up in the mode of inclined-plane machining; otherwise an alarm will be caused (1806 ILLEGAL CMD TILTED PLANE CMD). 21. Positioning commands (under G0) in the mode of inclined-plane machining are always executed in interpolation-type paths. 26-82 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 22. On machines of table rotating type, a G68.3 block will always establish a feature coordinate system with the Z-axis being parallel to that of the current workpiece coordinate system. Arguments X, Y, Z, and R (for translating and rotating the coordinate system), however, can be specified in the G68.3 block in such a case as well. 23. In the mode of inclined-plane machining, another selection of inclined-plane machining mode (with G68.2 or G68.3) will only lead to an alarm (1806 ILLEGAL CMD TILTED PLANE CMD). 24. In the mode of inclined-plane machining, give motion commands for linear axes with reference to the feature coordinate system and those for rotational axes with reference to the workpiece coordinate system (i.e. machine coordinate system). K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh ts re s er ve d . 25. The acceleration and deceleration for positioning commands (under G0) in the mode of inclined-plane machining occurs according to the parameters L74 (rate of cutting feed for pre-interpolational acceleration/deceleration control) and L75 (time constant for pre-interpolational cutting feed) when they are given under G61.1 (geometry compensation) or with the (optional) fixed gradient control for G0 being selected. 26-83 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-3-3 Function description for type B 1. Programming format A. Inclined-plane machining ON G68.2 Xx Yy Zz I J K G68.2: x, y, z: Inclined-plane machining ON Coordinates of the origin of a feature coordinate system. The origin needs to be specified with its absolute values in the workpiece coordinate system. Eulerian angles that determine the direction of a feature coordinate system. A counterclockwise rotation when viewed from the positive side of the axis of rotation to the origin is defined as positive rotation. er ve d . , , : The X-, Y- and Z-coordinates are to be specified with their absolute values in the original workpiece coordinate system. The designation of an axis can be omitted when no shift is required along the particular axis. 2. The designation of I, J, or K can be omitted when the argument is zero (0: no rotation around the axis concerned). N Tool-axis direction control 34 08 C 39 O R PO R A TI O B. .A ll ri gh ts re s 1. The G53.1 command causes motions on the rotational axes concerned so as to make parallel to, and of the same direction with, each other the direction of the tool axis (from the tip along the perpendicular to the tool-swiveling axis) and the positive direction of the Z-axis of the current feature coordinate system. N o. G53.1 Pp ZA A ri K IM Se K Tool-axis direction control Selection of a solution for the axis of rotation. 0: Processed as “p = 1”. 1: Solution with a positive angle of rotation on the B-axis. 2: Solution with a negative angle of rotation on the B-axis. al G53.1: p: YA M A ZA Refer to the description given under 3 in Subsection 26-3-1. Enter the G53.1 command in the mode of inclined-plane machining. 2. Be sure to enter the G53.1 command independently. If a block of G53.1 should contain any other instructions, an alarm is caused (1808 CANNOT USE G53.1). 3. The motion caused by a G53.1 code is executed in the currently active mode of motion. )2 (c ht Argument P can be omitted if it is zero (0). If any number other than 0, 1 or 2 is entered with P, an alarm will be caused (809 ILLEGAL NUMBER INPUT). op yr ig 4. 01 3 1. C C. Inclined-plane machining OFF (cancellation) G69 Inclined-plane machining OFF 26-84 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 2. Setting a feature coordinate system Enter a block of G68.2 (with arguments for translating and rotating the current workpiece coordinate system) to set a feature coordinate system. Use Eulerian angles to specify the rotation. G68.2 Xx Yy Zz I J K sets a feature coordinate system as follows: 1) Point (x, y, z) in the current workpiece coordinate system is set as a new origin. 2) The translated coordinate system is then rotated around the Z-axis by an angle of °. 3) The turned coordinate system is then rotated around the X-axis by an angle of °. 4) Finally, the coordinate system is rotated around the Z-axis by an angle of °. Conversion by means of Eulerian angles er ve d . A counterclockwise rotation when viewed from the positive side of the axis of rotation to the origin is to be specified with a positive value (in degrees). The figure below shows the relationship between a workpiece coordinate system and its feature coordinate system. re s Z ts ri z 3) Rotation on X by X Yw 34 08 C 39 O R PO R A TI O y 1) Translation of the system Y o. Workpiece coordinate system K X ZA al Feature coordinate system Z X z Yw x A ri K IM Se Y Zw N Z 4) Rotation on Z by X N x .A ll 2) Rotation on Z by Z gh Y Workpiece coordinate system Xw y A ZA Xw M Tool-axis direction control YA 3. (c )2 01 3 Refer to the description given under 3 in Subsection 26-3-1. ht Operation description Refer to the description given under 5 in Subsection 26-3-1. C op yr ig 4. Y Zw 26-85 D736PB002 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-3-4 Restrictions for type B The restrictions on the inclined-plane machining of type B are in general similar to those imposed on the three-dimensional coordinate conversion (G68). Shown below are only the restrictions proper to the inclined-plane machining. 1. Commands usable in the same block with G68.2 Code Function Code Positioning G00 Incremental data input G91 Linear interpolation G01 Feed function F Absolute data input G90 . Function Commands usable in the same block with G53.1 ts 2. re s er ve d Giving any other command than those enumerated above in the same block with G68.2 will lead to an alarm (1806 ILLEGAL CMD TILTED PLANE CMD). K ZA A C op yr ig ht (c )2 01 3 YA M A ZA K IM Se ri al N o. 34 08 C 39 O R PO R A TI O N .A ll ri gh No other commands can be given at all in the block of selecting the tool-axis direction control (G53.1). If a block of G53.1 should contain any other instructions, an alarm is caused (1808 CANNOT USE G53.1). 26-86 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 3. Relationship to other commands A. Commands available in the mode of inclined-plane machining Function Code G61 Linear interpolation G01 Geometry compensation G61.1 Circular interpolation (CW) G02 Automatic corner override G62 Circular interpolation (CCW) G03 Cutting mode G64 Dwell G04 User macro single call G65 Exact-stop G09 User macro modal call A G66 Data setting mode ON/OFF G10/G11 User macro modal call B G66.1 Selection of XY-plane G17 User macro modal call OFF Selection of ZX-plane G18 3-D coordinate conversion OFF Selection of YZ-plane G19 Hole-machining fixed cycles (G82.2 excluded) G71.1-G89 Return to zero point G28/G30 Absolute data input G90 Return from zero point G29 Incremental data input Nose radius/Tool radius compensation OFF G40 Inverse time feed Nose radius/Tool radius compensation (left) G41 Feed per minute (asynchronous) G94 Nose radius/Tool radius compensation (right) G42 Feed per revolution (synchronous) G95 Tool length offset (+) G43 Tool length offset (–) G44 Initial point level return in hole-machining fixed cycles G98 Tool position offset, extension G45 Tool position offset, reduction G46 R-point level return in hole-machining fixed cycles G99 Tool position offset, double extension G47 Single program multi-process control G109 Tool position offset, double reduction G48 M, S, T, B output to opposite system G112 Tool position offset OFF Driling/Tapping cycles G283-G289 . Exact stop mode er ve d Code G00 N Function Positioning Selection of machine coordinate system ZA Tool-axis direction control re s ts gh ri .A ll N 34 08 C 39 O R PO R A TI O M98/M99 F G52 M, S, T, B function MSTB (*1) G53 Local variables, Common variables, Operation commands, Control commands Macro instructions ZA A G53.1 G60 M A One-way positioning G93 Feed function G51.1 K IM Se Local coordinate system setting G91 Subprogram call/End of subprogram ri G50.1 Mirror image ON G69 K o. al G49 Mirror image OFF G67 Use of a tool function (T-code) in the mode of inclined-plane machining will lead to an alarm (1806 ILLEGAL CMD TILTED PLANE CMD). YA *1 C op yr ig ht (c )2 01 3 Giving any other command than those enumerated above in the mode of inclined-plane machining will lead to an alarm (1806 ILLEGAL CMD TILTED PLANE CMD). 26-87 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. Modes in which inclined-plane machining (G68.2) is selectable Code Function Code Selection of workpiece coordinate system 6 G59 Linear interpolation G01 Exact stop mode G61 High-speed machining OFF G05P0 Geometry compensation G61.1 Radius data input for X-axis ON G10.9X0 Modal spline interpolation G61.2 (*1) Polar coordinate interpolation OFF G13.1 Automatic corner override G62 Polar coordinate input OFF G15 Tapping mode G63 Selection of XY-plane G17 Cutting mode G64 Selection of ZX-plane G18 User macro single call G65 Selection of YZ-plane G19 User macro modal call OFF G67 Inch data input G20 3-D coordinate conversion OFF Metric data input G21 Fixed cycle OFF Pre-move stroke check OFF G23 Absolute data input Nose radius/Tool radius compensation OFF G40 Incremental data input Tool length offset (+) G43 Inverse time feed Tool length offset (–) G44 Feed per minute (asynchronous) Tool length offset OFF G49 Feed per revolution (synchronous) G95 Scaling OFF G50 Constant surface speed control OFF G97 Mirror image OFF G50.1 Polygonal machining mode OFF G50.2 Initial point level return in hole-machining fixed cycles G98 Selection of workpiece coordinate system 1 G54 Selection of add. workpiece coordinate systems G54.1 R-point level return in hole-machining fixed cycles G99 Selection of workpiece coordinate system 2 G55 Single program multi-process control G109 Selection of workpiece coordinate system 3 G56 Cross machining control axis cancellation G111 G57 Hob milling mode OFF G113 er ve d re s G80 G91 G93 G94 34 08 C 39 O R PO R A TI O N .A ll ri gh ts G90 ZA Superposition control OFF G127 Giving a G68.2 command under G61.2 for a system without the optional function for five-axis spline interpolation will lead to an alarm (1829 NO 5 AXIS SPLINE CUTTING OPTION). K IM *1 G58 G69 A Se ri Selection of workpiece coordinate system 5 K N al Selection of workpiece coordinate system 4 . G00 o. Function Positioning C op yr ig ht (c )2 01 3 YA M A ZA Giving a G68.2 command in a mode other than those enumerated above will lead to an alarm (1807 CANNOT USE G68.2). 26-88 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION C. Modes in which tool-axis direction control (G53.1) is selectable Code Function Code Selection of workpiece coordinate system 6 G59 Linear interpolation G01 Exact stop mode G61 High-speed machining OFF G05P0 Geometry compensation G61.1 Radius data input for X-axis ON G10.9/X0 Modal spline interpolation G61.2 Polar coordinate interpolation OFF G13.1 Automatic corner override G62 Polar coordinate input OFF G15 Tapping mode G63 Selection of XY-plane G17 Cutting mode G64 Selection of ZX-plane G18 User macro single call G65 Selection of YZ-plane G19 User macro modal call OFF G67 Inch data input G20 Inclined-plane machining Metric data input G21 Fixed cycle OFF Pre-move stroke check OFF G23 Absolute data input Nose radius/Tool radius compensation OFF G40 Incremental data input Tool length offset (+) G43 Inverse time feed Tool length offset (–) G44 Feed per minute (asynchronous) Tool length offset OFF G49 Feed per revolution (synchronous) G95 Scaling OFF G50 Constant surface speed control ON/OFF G96/G97 Mirror image OFF G50.1 Polygonal machining mode OFF G50.2 Initial point level return in hole-machining fixed cycles G98 Selection of workpiece coordinate system 1 G54 Selection of add. workpiece coordinate systems G54.1 R-point level return in hole-machining fixed cycles G99 Selection of workpiece coordinate system 2 G55 Single program multi-process control G109 Selection of workpiece coordinate system 3 G56 Cross machining control axis cancellation G111 G57 Hob milling mode OFF G113 er ve d re s G80 G91 G93 G94 N .A ll ri gh ts G90 34 08 C 39 O R PO R A TI O ZA G58 G68.2 Superposition control OFF G127 A Se ri Selection of workpiece coordinate system 5 K N al Selection of workpiece coordinate system 4 . G00 o. Function Positioning A Notes Move the tool to a safe position before entering the G53.1 command in order to prevent interference from being caused by the resulting motions on the rotational axes. 2. In the mode of inclined-plane machining, system variables #5001 to #5116 for reading positional information refer to the feature coordinate system, while system variables #5021 to #5036 always denote the current position with respect to the machine coordinate system. 3. Resetting in the mode of inclined-plane machining cancels the mode and makes the G69 code modal in the group concerned. M 1. yr ig ht (c )2 01 3 YA 4. ZA K IM Giving a G53.1 command in a mode other than those enumerated above will lead to an alarm (1808 CANNOT USE G53.1). C op 4. 5. External deceleration signal works only on the actually controlled axes of the machine coordinate system, not on those of the feature coordinate system. A positioning command with G28, G30, G53, etc., which is to be executed with reference to the machine coordinate system, will be carried out under temporary cancellation of the inclined-plane machining mode (with the exception, as appropriate, of the positioning to the specified intermediate point). 26-89 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 6. Tool radius compensation (G41, G42, G40), mirroring by G-code (G51.1, G50.1), and fixed cycle must be selected and cancelled within the mode of inclined-plane machining. G68.2 X_Y_Z_I_J_K (Inclined-plane machining ON) : G41 D1 (Tool radius compensation ON) : Mode of tool radius compensation : G40 (Tool radius compensation OFF) : G69 (Inclined-plane machining OFF) The execution of a G68.2 command with the tool length offset function being active will result in a disagreement between the real tip point and its positional indication with respect to the current coordinate system. The disagreement will be cleared, as shown below, by executing the G53.1 command to adjust the tool-axis direction to the Z-axis of the feature coordinate system. ri gh ts re s er ve d . 7. Mode of inclined-plane machining Z N .A ll Before the G68.2 command is entered, the real position of the tip point is in agreement with the positional indication. 34 08 C 39 O R PO R A TI O X ZA A K IM A M X If a new coordinate system is set by a G68.2 command, the tool length offset is internally applied to the Z-axis direction of the new coordinate system, resulting in a disagreement between the real tip point and its positional indication. The G53.1 command really adjusts the direction of the tool axis to the Z-axis of the new coordinate system and, as a result, clears the disagreement in question. ZA Z Se ri al X K N o. Z YA D740PB0052 Do not use a G68.2 command in a subprogram of the eighth nesting level; otherwise an alarm will be caused (842 SUB PROGRAM NESTING EXCEEDED). 9. A G53.1 command block is in reality composed of two processes: motions on the rotational axes and redefinition of the feature coordinate system. In the single-block operation mode, therefore, press the button twice to complete a G53.1 block. C op yr ig ht (c )2 01 3 8. 10. Manual interruption is always performed on the basis of the machine coordinate system (without any coordinate conversion). 11. Do not give any tool change command in the mode of inclined-plane machining; otherwise an alarm will be caused (1806 ILLEGAL CMD TILTED PLANE CMD). 12. Tool path check can only be performed on the basis of the original workpiece coordinate system (without coordinate conversion taken into consideration). 13. Tracing in the mode of inclined-plane machining is displayed with reference to the machine coordinate system. 14. Inclined-plane machining is not available if the C-axis control of the turning spindle No. 2 is concerned. 26-90 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 15. As for restarting operation, do not specify a block within the G68.2 mode (nor a block of cancellation [G69]) as a restarting position; otherwise an alarm will be caused (956 RESTART OPERATION NOT ALLOWED). Sample program N10 G00 X_Y_Z_ N11 G00 X_Y_Z_B_C The program can be restarted from blocks Nos. 10, 11 and 32. er ve d ts gh ri .A ll : : D736PB007 K ZA ri Selection of programming type for inclined-plane machining Se 1. al N o. 26-3-5 Related parameters X_Y_ Z_ N32 T_T_M6 34 08 C 39 O R PO R A TI O The program cannot be restarted from blocks Nos. 30 and 31. (The program cannot be restarted even after G69 until motions on the X-, Y- and Z-axes are specified with abosolute coordinates.) N30 G90 G00 N31 G90 G00 N * The program cannot be restarted from the G69 block, either. re s The program cannot be restarted from blocks Nos. 20 to 23. . N20 G68.2 X_Y_Z_I_J_K N21 G01 X_Y_Z_F_ N22 G01 X_Y_Z_F_ N23 G69 K IM A Use the following parameter to select the desired type of programming for inclined-plane machining. Setting range ZA Parameter 0: Type A A F34 bit 4 C op yr ig ht (c )2 01 3 YA M 1: Type B 26-91 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-4 Tool Radius Compensation for Five-Axis Machining (Option) 26-4-1 Function outline The function described in this section refers to three-dimensional tool radius compensation on a five-axis control machine (equipped with two controlled axes of rotational type) by computing the offset vector in a plane perpendicular to the tool axis. er ve d . Vector of tool axis Programmed path (Path before compensation) gh ts re s Offset vector for radius compensation 34 08 C 39 O R PO R A TI O N .A ll ri Tool center path (Path after compensation) Compensation plane D736P0522 ZA ri al 26-4-2 Function description K N o. Fig. 26-3 Tool radius compensation for five-axis machining A ZA K IM Se The offsetting function in question conducts tool-path control for tool radius compensation in a plane (called ‘compensation plane’) perpendicular to the tool axis whose direction is determined by the motion command of the rotational axis concerned. This subsection gives operational particulars proper to this special function, with the compensation plane explained later. A See Subsection 26-4-4 for a detailed description of compensation plane. )2 Programming format (c 1. 01 3 YA M Refer to Section 12-5 for a detailed description of the general tool radius compensation. Tool radius compensation for five-axis machining ON ig ht A. op yr <For tool rotating type> C G41.2 (X_ Y_ Z_ A_ B_ C_ D_); G42.2 (X_ Y_ Z_ A_ B_ C_ D_); G41.2 : Tool radius compensation (to the left) G42.2 : Tool radius compensation (to the right) XYZABC : Axis motion commands D : Tool offset data No. for radius compensation * Do not use G41.4 and G42.4 (provided for “table rotating type”) or G41.5 and G42.5 (for “mixed type”) for five-axis control machines of tool rotating type; otherwise an alarm will occur (970 TOOL TIP CTRL PARAMETER ERROR). 26-92 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION 26 <For table rotating type> G41.4 (G41.2) (X_ Y_ Z_ A_ B_ C_ D_); G42.4 (G42.2) (X_ Y_ Z_ A_ B_ C_ D_); G41.4 : Tool radius compensation (to the left) G42.4 : Tool radius compensation (to the right) * Use G41.4 and G42.4 for five-axis control machines of table rotating type, for which G41.2 and G42.2 (provided for “tool rotating type”) may be used as well for the same purpose. Do not use G41.5 and G42.5 (provided for “mixed type”), however, for machines of table rotating type; otherwise an alarm will occur (970 TOOL TIP CTRL PARAMETER ERROR). er ve d . <For mixed type> re s G41.5 (G41.2) (X_ Y_ Z_ A_ B_ C_ D_); ts G42.5 (G42.2) (X_ Y_ Z_ A_ B_ C_ D_); .A ll ri gh G41.5 : Tool radius compensation (to the left) G42.5 : Tool radius compensation (to the right) Use G41.5 and G42.5 for five-axis control machines of mixed type, for which G41.2 and G42.2 (provided for “tool rotating type”) may be used as well for the same purpose. Do not use G41.4 and G42.4 (provided for “table rotating type”), however, for machines of mixed type; otherwise an alarm will occur (970 TOOL TIP CTRL PARAMETER ERROR). B. 34 08 C 39 O R PO R A TI O N * Tool radius compensation for five-axis machining OFF (cancellation) N o. G40 (X_ Y_ Z_ A_ B_ C_); K ZA A K IM Offset data items used for tool radius compensation ZA 2. Give the G40 command in a single-command block (without any other G-code). Otherwise an alarm will occur (961 ILLEGAL COMMAND 5X RADIUS COMP.). Se * ri al G40 : Cancellation of tool radius compensation )2 01 3 YA M A The data settings of the TOOL DATA display (prepared for the execution of MAZATROL programs) can also be used in tool radius compensation for five-axis machining. The table below indicates those usage patterns of the externally stored tool offset data items which are applied to the tool radius compensation according to the settings of the relevant parameters (F92 bit 7 and F94 bit 7). Data in the TOOL DATA display F94 bit 7 ACT- ACT- CO./No. Data in the TOOL OFFSET display 0 ht 0 × × 0 1 × × 1 0 × 1 1 × C op yr (c F92 bit 7 ig Parameter : Used for tool radius compensation. ×: Not used. F92 bit 7: ACT-/NOSE-R in the TOOL DATA display for an EIA/ISO program 0: Invalid 1: Valid F94 bit 7: Offset or compensation values to be used for an EIA/ISO program 0: Values in the TOOL OFFSET display 1: Values provided for EIA/ISO programs in the TOOL DATA display 26-93 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-4-3 Operation of tool radius compensation for five-axis machining 1. Startup of the tool radius compensation The G41.2/G42.2, G41.4/G42.4, or G41.5/G42.5 code given in the cancellation mode turns on the mode of tool radius compensation for five-axis machining, and describes such an initial offset path to the selection block’s ending point as includes compensation in the plane perpendicular to the tool axis in that position. The selection between type A and type B for startup operation in the compensation plane is to be done by setting parameter F92 bit 4, as is the case with the general mode of tool radius compensation. er ve d . See Section 12-5 for more information. ri Operation in the mode of tool radius compensation .A ll 2. gh ts re s Take care to give the startup code under the appropriate conditions of G-codes (see the table concerned in Subsection 26-4-5); otherwise an alarm will be caused (962 CANNOT USE 5X RADIUS COMP.). 34 08 C 39 O R PO R A TI O N The tool radius compensation for five-axis machining only applies to commands of positioning (G00) and linear interpolation (G01). Take care not to use G-codes unavailable in the mode; otherwise an alarm will be caused (961 ILLEGAL COMMAND 5X RADIUS COMP.). o. See the table concerned in Subsection 26-4-5 for available G-codes. K ZA A Cancellation of the tool radius compensation ZA 3. K IM Se ri al N As for motion blocks automatically interpolated for turning a corner, the direction of the tool axis at the ending point of the first one of the two blocks concerned (as specified in the last B-axis command) is kept intact, along with the rate of feed and other modal information items, up to the stop point for the single-block operation. M A The mode of tool radius compensation for five-axis machining is cancelled when one of the following conditions is satisfied: The cancellation command concerned (G40) is executed, Zero is specified as the number of offset data for radius compensation (D00), or 3. The NC is reset. )2 01 3 YA 1. 2. ig ht (c The selection between type A and type B for cancellation can be done by setting parameter F92 bit 4, as for startup operation. op yr 26-4-4 Method of computing the offset vector C The offset vector is internally computed as follows. 1. Conversion for the table coordinate system The programmed motion commands are converted for a tool path with respect to the table coordinate system. Table coordinate system is a coordinate system which is fixed to the table (or workpiece) and will rotate as the table rotates. The tool path described on the basis of this coordinate system refers to the relative motion of the tool to the workpiece. 26-94 Serial No. 340839 FIVE-AXIS MACHINING FUNCTION <Initial state> 26 <After table rotation> Z Z Y X Y X D740PB0035 er ve d Conversion of points into the compensation plane re s 2. . Fig. 26-4 Table coordinate system .A ll ri gh ts The obtained tool path in the table coordinate system is then converted by orthogonal projection onto the compensation plane (a plane cutting the tool axis perpendicularly in a point for compensation). Direction of tool axis at point B 34 08 C 39 O R PO R A TI O N Compensation plane for point B Tool path for the table coordinate system C o. A’ ZA K B A C’ K IM Se ri al N B A D740PB0053 ZA Fig. 26-5 Conversion of points into the compensation plane YA M A The NC finally conducts tool radius compensation on the path projected into the compensation plane to calculate the offset vector at the particular point. 01 3 Tool path for the table coordinate system, as projected onto the compensation plane ig ht (c )2 Offset vector in the compensation plane yr A’ C C op B C’ A D740PB0054 Fig. 26-6 Compensation in the compensation plane 26-95 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-4-5 Relationship to other functions 1. Commands usable in the same block with the mode selection code Function Code Function Code Positioning G00 Incremental data input G91 Linear interpolation G01 Feed function F Absolute data input G90 Giving any other command than those enumerated above in the same block as the mode selection code will lead to an alarm (961 ILLEGAL COMMAND 5X RADIUS COMP.). er ve d Commands available in the mode of tool radius compensation for five-axis machining Function Code re s A. . Relationship to other commands Function ts 2. Code G00 Geometry compensation Linear interpolation G01 Cutting mode Circular interpolation (CW) G02 (*1) Macro call Circular interpolation (CCW) G03 (*1) Absolute data input Dwell G04 Incremental data input G91 High-speed machining mode G05 Inverse time feed G93 Exact-stop G09 Feed per minute G94 Pre-move stroke check ON G22 Feed per revolution G95 Pre-move stroke check OFF G23 Constant surface speed control ON G96 Tool radius compensation OFF G40 Constant surface speed control OFF G97 M, S, T, B output to opposite system G112 (*2) ri .A ll N 34 08 C 39 O R PO R A TI O M98/M99 G42.2 Feed function F G42.4 M, S, T, B function MSTB (*2) G42.5 Local variables, Common variables, Operation commands (arithmetic operations, trigonometric functions, square root, etc), Control commands (IF GOTO , WHILE DO ) Macro instructions o. M96/M97 K A ZA al ri K IM G43/G44 G49 G61 01 3 Exact stop mode G90 Subprogram call/End of subprogram N YA Tool length offset OFF G65 Branching mode ON/OFF ZA M A Tool length offset (+/–) G64 G41.4 G41.5 Tool radius compensation for five-axis machining (to the right) G61.1 G41.2 Se Tool radius compensation for five-axis machining (to the left) gh Positioning Designation of a rotational axis’ position in the mode of circular interpolation, however, will lead to an alarm (961 ILLEGAL COMMAND 5X RADIUS COMP.). *2 Use of a tool function (T-code) in the mode of tool radius compensation for five-axis machining will lead to an alarm (961 ILLEGAL COMMAND 5X RADIUS COMP.). ht (c )2 *1 C op yr ig Giving any other command than those enumerated above in the mode of tool radius compensation for five-axis machining will lead to an alarm (961 ILLEGAL COMMAND 5X RADIUS COMP.). 26-96 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION B. Modes in which tool radius compensation for five-axis machining is selectable Code Function Code G00 Exact stop mode G61 Linear interpolation G01 Geometry compensation G61.1 Radius data input for X-axis ON G10.9 Cutting mode G64 Polar coordinate interpolation OFF G13.1 Macro call G65 Plane selection G17, G18, G19 Modal user macro call OFF G67 3-D coordinate conversion ON G68 (*1) Inch data input G20 Metric data input G21 Pre-move stroke check ON G22 Pre-move stroke check OFF G23 3-D coordinate conversion OFF Tool radius compensation OFF G40 Fixed cycle OFF G41.2 Absolute data input G41.4 Incremental data input G41.5 Inverse time feed G42.2 Feed per minute G42.4 Feed per revolution G95 G42.5 .A ll Function Positioning Constant surface speed control ON Tool length offset (+/–) G43/G44 Constant surface speed control OFF G97 Tool length offset in tool-axis direction G43.1 Tool tip point control G43.4/G43.5 Initial point level return in hole-machining fixed cycles G98 Tool length offset OFF G49 Scaling OFF G50 R-point level return in hole-machining fixed cycles G99 Mirror image OFF G50.1 Single program multi-process control G109 Polygonal machining mode OFF G50.2 Hob milling mode OFF G113 Superposition control OFF G127 Branching mode ON/OFF M96/M97 . er ve d re s N ri gh ts G90 A G91 G93 G94 G96 K IM Workpiece setup error correction G54.4 A command for tool radius compensation for five-axis machining can be given under G68 only when parameter F168 bit 4 = 1 (Replacing the 3-D coordinate conversion command [G68] with inclined-plane machining command [G68.2]). M A ZA *1 ZA G54-59, G54.1 Se Selection of workpiece coordinate system/ additional workpiece coordinate system G69 G80 K ri al N o. Tool radius compensation for five-axis machining (to the right) G68.3 G68.4 34 08 C 39 O R PO R A TI O Tool radius compensation for five-axis machining (to the left) G68.2 Inclined-plane machining C op yr ig ht (c )2 01 3 YA Giving a command for tool radius compensation for five-axis machining in a mode other than those enumerated above will lead to an alarm (962 CANNOT USE 5X RADIUS COMP.). 26-97 Serial No. 340839 26 FIVE-AXIS MACHINING FUNCTION 26-4-6 Restrictions The calculated path of tool radius compensation cannot be checked for interference, irrespective of the setting of the parameter concerned (F92 bit 5: Checking to avoid interference ON/OFF). 2. Do not use the radius compensation codes G38 (to set an offset vector) and G39 (to interpolate a circular arc at a corner) in