Mitsubishi Electric M700V Series Programming Manual
Hide thumbs Also See for M700V Series:
Table of Contents

Advertisement

Advertisement

Table of Contents
loading

Summary of Contents for Mitsubishi Electric M700V Series

  • Page 3 MELDAS is a registered trademark of Mitsubishi Electric Corporation. Other company and product names that appear in this manual are trademarks or registered trademarks of the respective companies.
  • Page 5 Introduction This manual is a guide for using the MITSUBISHI CNC M700V Series. Programming for M2/M0 format is described in this manual, so read this manual thoroughly before starting programming. Thoroughly study the "Precautions for Safety" on the following page to ensure safe use of this NC unit.
  • Page 7: Precautions For Safety

    Precautions for Safety Always read the specifications issued by the machine maker, this manual, related manuals and attached documents before installation, operation, programming, maintenance or inspection to ensure correct use. Understand this numerical controller, safety items and cautions before using the unit. This manual ranks the safety precautions into "DANGER", "WARNING"...
  • Page 8 CAUTION 2. Items related to operation Before starting actual machining, always carry out dry operation to confirm the machining program, tool compensation amount and workpiece offset amount, etc. If the workpiece coordinate system offset amount is changed during single block stop, the new setting will be valid from the next block.
  • Page 9: Table Of Contents

    Contents 1. Control Axes..........................1 1.1 Coordinate Words and Control Axis..................1 1.2 Coordinate Systems and Coordinate Zero Point Symbols............2 2. Least Command Increments ......................3 2.1 Input Setting Units........................3 2.2 Input Command Increment Tenfold..................5 2.3 Indexing Increment........................6 3. Data Formats ..........................7 3.1 Tape Codes..........................7 3.2 Program Formats ........................10 3.3 Tape Memory Format......................13 3.4 Optional Block Skip .......................13...
  • Page 10 7.5 Inverse Time Feed; G93 .....................112 7.6 Feedrate Designation and Effects on Control Axes ............116 7.7 Rapid Traverse Constant Inclination Acceleration/Deceleration .........120 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration ......122 7.9 Exact Stop Check; G09.......................131 7.10 Exact Stop Check Mode; G61...................134 7.11 Deceleration Check......................134 7.11.1 G1 ->...
  • Page 11 13. Program Support Functions ....................248 13.1 Fixed Cycles........................248 13.1.1 Standard Fixed Cycles; G80 to G89, G73, G74, G75, G76 ........248 13.1.2 Drilling Cycle with High-Speed Retract ...............276 13.1.3 Initial Point and R Point Level Return; G98, G99............279 13.1.4 Setting of Workpiece Coordinates in Fixed Cycle Mode..........281 13.2 Special Fixed Cycle;...
  • Page 12 14.5 Coordinate System Setting; G92..................509 14.6 Automatic Coordinate System Setting ................510 14.7 Reference (Zero) Position Return; G28, G29..............511 14.8 2nd, 3rd and 4th Reference (Zero) Position Return; G30 ..........515 14.9 Reference Position Check; G27..................518 14.10 Workpiece Coordinate System Setting and Offset ; G54 to G59 (G54.1) .......519 14.11 Local Coordinate System Setting;...
  • Page 13: Control Axes

    1. Control Axes 1.1 Coordinate Words and Control Axis 1. Control Axes 1.1 Coordinate Words and Control Axis Function and purpose In the standard specifications, there are 3 control axes, but, by adding an additional axis, up to 4 axes can be controlled. The designation of the processing direction responds to those axes and uses a coordinate word made up of alphabet characters that have been decided beforehand.
  • Page 14: Coordinate Systems And Coordinate Zero Point Symbols

    1. Control Axes 1.2 Coordinate Systems and Coordinate Zero Point Symbols 1.2 Coordinate Systems and Coordinate Zero Point Symbols Function and purpose Reference position Machine coordinate zero point Workpiece coordinate zero points (G54 - G59) Machine zero point Basic machine coordinate system 1st reference Workpiece Workpiece...
  • Page 15: Least Command Increments

    2. Least Command Increments 2.1 Input Setting Units 2. Least Command Increments 2.1 Input Setting Units Function and purpose The input setting units are, as with the compensation amounts, the units of setting data used in common for all axes. The command units are the movement amounts in the program which are commanded with MDI inputs or command tape.
  • Page 16 2. Least Command Increments 2.1 Input Setting Units Detailed description (1) Units of various data These input setting units determine the parameter setting unit, program command unit and the external interface unit for the PLC axis and handle pulse, etc. The following rules show how the unit of each data changes when the input setting unit is changed.
  • Page 17: Input Command Increment Tenfold

    2. Least Command Increments 2.2 Input Command Increment Tenfold 2.2 Input Command Increment Tenfold Function and purpose The program's command increment can be multiplied by an arbitrary scale with the parameter designation. This function is valid when a decimal point is not used for the command increment. The scale is set with the parameters.
  • Page 18: Indexing Increment

    2. Least Command Increments 2.3 Indexing Increment 2.3 Indexing Increment Function and purpose This function limits the command value for the rotary axis. This can be used for indexing the rotary table, etc. It is possible to cause a program error with a program command other than an indexing increment (parameter setting value).
  • Page 19: Data Formats

    3. Data Formats 3.1 Tape Codes 3. Data Formats 3.1 Tape Codes Function and purpose The tape command codes used for this controller are combinations of alphabet letters (A, B, C, ... Z), numbers (0, 1, 2 ... 9) and signs (+, -, / ...). These alphabet letters, numbers and signs are referred to as characters.
  • Page 20 3. Data Formats 3.1 Tape Codes (2) Control out, control in All data between control out "(" and control in ")" or ";" , from "0" to ";" (when label L) are ignored, although these data appear on the setting and display unit. Consequently, the command tape name, No.
  • Page 21 3. Data Formats 3.1 Tape Codes ISO code (R-840) Feed holes 8 7 6 5 4 3 2 1 Channel No. • •• • • • •• • • •• •• • • •• • • •• • • • ••...
  • Page 22: Program Formats

    3. Data Formats 3.2 Program Formats 3.2 Program Formats Function and purpose The prescribed arrangement used when assigning control information to the controller is known as the program format, and the format used with this controller is called the "word address format". Detailed description (1) Word and address A word is a collection of characters arranged in a specific sequence.
  • Page 23 3. Data Formats 3.2 Program Formats <Brief summary of format details> Rotary axis Rotary axis Metric command Inch command (Metric command) (Inch command) ← ← ← Program No. L(O)8 ← ← ← Sequence No. ← ← ← Preparatory function G3/G21 0.001(°) mm/ X+53 Y+53 Z+53 α+53 X+44 Y+44 Z+44 α+44...
  • Page 24 3. Data Formats 3.2 Program Formats (Note 4) The description of the brief summary is explained below: Example 1 : L(O)8 :8-digit program No. Example 2 : G21 :Dimension G is 2 digits to the left of the decimal point, and 1 digit to the right. Example 3 : X+53 :Dimension X uses + or - sign and represents 5 digits to the left of the decimal point and 3 digits to the right.
  • Page 25: Tape Memory Format

    3. Data Formats 3.3 Tape Memory Format 3.3 Tape Memory Format Function and purpose (1) Storage tape and significant sections The others are about from the current tape position to the EOB. Accordingly, under normal conditions, operate the tape memory after resetting. The significant codes listed in "Table of tape codes"...
  • Page 26: Optional Block Skip Addition ; /N

    3. Data Formats 3.4 Optional Block Skip 3.4.2 Optional Block Skip Addition ; /n Function and purpose Whether the block with "/n (n:1 to 9)" (slash) is executed during automatic operation and searching is selected. By using the machining program with "/n" code, different parts can be machined by the same program.
  • Page 27 3. Data Formats 3.4 Optional Block Skip (2) When two or more "/n" codes are commanded to the head of the same block, the block is ignored if either of the optional block skip signal corresponding to the command is ON. <Program>...
  • Page 28: Program/Sequence/Block Numbers ; L(O), N

    3. Data Formats 3.5 Program/Sequence/Block Numbers ; L(O), N 3.5 Program/Sequence/Block Numbers ; L(O), N Function and purpose These numbers are used for monitoring the execution of the machining programs and for calling both machining programs and specific stages in machining programs. (1) Program numbers are classified by workpiece correspondence or by subprogram units, and they are designated by the address "L"...
  • Page 29: Parity H/V

    3. Data Formats 3.6 Parity H/V 3.6 Parity H/V Function and purpose Parity check provides a mean of checking whether the tape has been correctly perforated or not. This involves checking for perforated code errors or, in other words, for perforation errors. There are two types of parity check: Parity H and Parity V.
  • Page 30: G Code Lists

    3. Data Formats 3.7 G Code Lists 3.7 G Code Lists Function and purpose G code Group Function Section Δ 00 Positioning Δ 01 Linear interpolation Circular interpolation CW (clockwise) R-specified circular interpolation CW Helical interpolation CW Spiral/Conical interpolation CW (type2) 6.13 Circular interpolation CCW (counterclockwise) R-specified circular interpolation CCW...
  • Page 31 3. Data Formats 3.7 G Code Lists G code Group Function Section Subprogram call / figure rotation ON 13.3 Subprogram return / figure rotation cancel 13.3 22.1 Stroke check before travel ON 15.7 23.1 Stroke check before travel cancel 15.7 Reference position check 14.9 Reference position return...
  • Page 32 3. Data Formats 3.7 G Code Lists G code Group Function Section * 50 Scaling cancel 13.20 Scaling ON 13.20 * 50.1 G command mirror image cancel 13.6 51.1 G command mirror image ON 13.6 Local coordinate system setting 14.11 Basic machine coordinate system selection 14.4 * 54...
  • Page 33: Precautions Before Starting Machining

    3. Data Formats 3.8 Precautions Before Starting Machining G code Group Function Section Δ 90 Absolute value command Δ 91 Incremental command value Coordinate system setting / Spindle clamp speed setting 14.5 92.1 Workpiece coordinate system pre-setting 14.12 Inverse time feed Δ...
  • Page 34: Buffer Register

    4. Buffer Register 4.1 Input Buffer 4. Buffer Register 4.1 Input Buffer Function and purpose When the pre-read buffer is empty during a tape operation or RS232C operation, the contents of the input buffer are immediately transferred to the pre-read buffers and, provided that the data stored in the input buffer do not exceed 250 x 4 characters, the following data (Max.
  • Page 35: Pre-Read Buffers

    4. Buffer Register 4.2 Pre-read Buffers 4.2 Pre-read Buffers Function and purpose During automatic processing, the contents of 1 block are normally pre-read so that program analysis processing is conducted smoothly. However, during tool radius compensation, a maximum of 5 blocks are pre-read for the intersection point calculation including interference check.
  • Page 36: Position Commands

    5. Position Commands 5.1 Position Command Methods ; G90, G91 5. Position Commands 5.1 Position Command Methods ; G90, G91 Function and purpose By using the G90 and G91 commands, it is possible to execute the next coordinate commands using absolute values or incremental values. The R-designated circle radius and the center of the circle determined by I, J, K are always incremental value commands.
  • Page 37 5. Position Commands 5.1 Position Command Methods ; G90, G91 (3) Since multiple commands can be issued in the same block, it is possible to command specific addresses as either absolute values or incremental 200. values. N 4 G90 X300. G91 Y100.; 100.
  • Page 38: Inch/Metric Command Change; G20, G21

    5. Position Commands 5.2 Inch/Metric Command Change; G20, G21 5.2 Inch/Metric Command Change; G20, G21 Function and purpose These G commands are used to change between the inch and millimeter (metric) systems. Command format G20/G21; : Inch command : Metric command Detailed description The G20 and G21 commands merely select the command units.
  • Page 39 5. Position Commands 5.2 Inch/Metric Command Change; G20, G21 Precautions (1) The parameter and tool data will be input/output with the "#1041 I_inch" setting unit. If "#1041 I_inch" is not found in the parameter input data, the unit will follow the unit currently set to NC.
  • Page 40: Decimal Point Input

    5. Position Commands 5.3 Decimal Point Input 5.3 Decimal Point Input Function and purpose This function enables the decimal point command to be input. It assigns the decimal point in millimeter or inch units for the machining program input information that defines the tool paths, distances and speeds.
  • Page 41 5. Position Commands 5.3 Decimal Point Input Example of program Example of program for decimal point valid address Specification Decimal point Decimal point command 1 division command 2 When 1 = 1μm When 1 = 10μm 1 = 1mm Program example G0X123.45 (decimal points are all mm X123.450mm...
  • Page 42 5. Position Commands 5.3 Decimal Point Input Addresses used and validity/invalidity of decimal point commands are shown below. Decimal point Address Application Remarks command Valid Coordinate position data Invalid Revolving table Invalid Miscellaneous function code Valid Angle data Invalid Data settings, axis numbers (G10) Invalid Subprogram call : program No.
  • Page 43 5. Position Commands 5.3 Decimal Point Input Decimal point Address Application Remarks command Valid Arc center coordinates Invalid Center of figure rotation (incremental) Valid Tool radius compensation vector components Valid Special fixed cycle's hole pitch or angle Valid G0/G1 imposition width, drilling cycle G1 imposition width Valid Stroke check before travel: lower limit coordinates Valid...
  • Page 44 5. Position Commands 5.3 Decimal Point Input Decimal point Address Application Remarks command Valid Cut amount of deep hole drill cycle Valid Shift amount of back boring Valid Shift amount of fine boring Invalid Minimum spindle clamp speed Valid Starting shift angle for screw cutting Invalid Transmission destination variable No.
  • Page 45: Interpolation Functions

    6. Interpolation Functions 6.1 Positioning (Rapid Traverse) 6. Interpolation Functions 6.1 Positioning (Rapid Traverse); G00 Function and purpose This command is accompanied by coordinate words. It positions the tool along a linear or non-linear path from the present point as the start point to the end point which is specified by the coordinate words.
  • Page 46 6. Interpolation Functions 6.1 Positioning (Rapid Traverse) Example of program +300 Tool End point (-120,+200,+300) +150 Start point -100 (+150,-100,+150) -120 Unit : mm +150 +200 G91 G00 X-270000 Y300000 Z150000 ; (For input setting unit: 0.001mm) (Note 1) When parameter "#1086 G0Intp" is set to "0", the path along which the tool is positioned is the shortest path connecting the start and end points.
  • Page 47 6. Interpolation Functions 6.1 Positioning (Rapid Traverse) (Note 2) When parameter "#1086 G0Intp" is set to 1, the tool will move along the path from the start point to the end point at the rapid traverse rate of each axis. When, for instance, the Y axis and Z axis rapid traverse rates are both 9600mm/min, the tool will follow the path in the figure below if the following is programmed: G91 G00 X-300000 Y200000 ;...
  • Page 48 6. Interpolation Functions 6.1 Positioning (Rapid Traverse) (Note 4) Rapid traverse (G00) deceleration check There are two methods for the deceleration check at rapid traverse; commanded deceleration method and in-position check method. Select a method with the parameter "#1193 inpos". ■...
  • Page 49 6. Interpolation Functions 6.1 Positioning (Rapid Traverse) (3) Exponential acceleration/exponential deceleration ..... Td = 2 × Ts + α Previous block Next block Ts : Acceleration/deceleration time constant Td : Deceleration check time Td = 2 × Ts + (0 ~ 14ms) Where Ts is the acceleration time constant, α...
  • Page 50 6. Interpolation Functions 6.1 Positioning (Rapid Traverse) Programmable in-position width command for positioning This command commands the in-position width for the positioning command from the machining program. G00 X__ Y__ Z__ , I__ ; In-position width Positioning coordinate value of each axis Operation during in-position check Execution of the next block starts after confirming that the position error amount of the positioning (rapid traverse: G00) command block and the block that carries out deceleration check with the...
  • Page 51 6. Interpolation Functions 6.1 Positioning (Rapid Traverse) In-position width setting When the servo parameter "#2224 SV024" setting value is smaller than the setting value of the G0 in-position width "#2077 G0inps" and the G1 in-position width "#2078 G1inps", the in-position check is carried out with the G0 in-position width and the G1 in-position width.
  • Page 52: Linear Interpolation; G01

    6. Interpolation Functions 6.2 Linear Interpolation 6.2 Linear Interpolation; G01 Function and purpose This command is accompanied by coordinate words and a feedrate command. It makes the tool move (interpolate) linearly from its present position to the end point specified by the coordinate words at the speed specified by address F.
  • Page 53 6. Interpolation Functions 6.2 Linear Interpolation Example of program → P → P → P → P (Example 1) Cutting in the sequence of P at 300 mm/min feedrate → P is for tool positioning Unit: mm Input setting unit: 0.001mm →...
  • Page 54: Plane Selection; G17, G18, G19

    6. Interpolation Functions 6.3 Plane Selection 6.3 Plane Selection; G17, G18, G19 Function and purpose The plane to which the movement of the tool during the circle interpolation (including helical cutting) and tool radius compensation command belongs is selected. By registering the basic three axes and the corresponding parallel axis as parameters, a plane can be selected by two axes that are not the parallel axis.
  • Page 55 6. Interpolation Functions 6.3 Plane Selection Plane selection system In Table 1, I is the horizontal axis for the G17 plane or the vertical axis for the G18 plane J is the vertical axis for the G17 plane or the horizontal axis for the G19 plane K is the horizontal axis for the G18 plane or the vertical axis for the G19 plane In other words, G17 ..
  • Page 56: Circular Interpolation; G02, G03

    6. Interpolation Functions 6.4 Circular Interpolation 6.4 Circular Interpolation; G02, G03 Function and purpose These commands serve to move the tool along an arc. Command format G02 (G03) X__ Y__ I__ J__ K__ F__; : Clockwise (CW) : Counterclockwise (CCW) X, Y : End point I, J...
  • Page 57 6. Interpolation Functions 6.4 Circular Interpolation Detailed description (1) G02 (or G03) is retained until another G command (G00, G01 or G33) in the 01 group that changes its mode is issued. The arc rotation direction is distinguished by G02 and G03. G02 Clockwise (CW) G03 Counterclockwise (CCW) G17(X-Y)plane...
  • Page 58 6. Interpolation Functions 6.4 Circular Interpolation Example of program (Example 1) Y axis Feedrate Circle center F = 500mm/min J = 50mm X axis Start point/end point G02 J50000 F500 ; Circle command (Example 2) Y axis Feedrate End point Arc center F = 500mm/min X50 Y50mm...
  • Page 59 6. Interpolation Functions 6.4 Circular Interpolation Plane selection The planes in which the arc exists are the following three planes (refer to the detailed drawings), and are selected with the following method. XY plane G17; Command with a (plane selection G code) ZX plane G18;...
  • Page 60 6. Interpolation Functions 6.4 Circular Interpolation Precautions for circular interpolation (1) The terms "clockwise" (G02) and "counterclockwise" (G03) used for arc operations are defined as a case where in a right-hand coordinate system, the negative direction is viewed from the position direction of the coordinate axis which is at right angles to the plane in question.
  • Page 61: R-Specified Circular Interpolation; G02, G03

    6. Interpolation Functions 6.5 R-specified Circular Interpolation 6.5 R-specified Circular Interpolation; G02, G03 Function and purpose Along with the conventional circular interpolation commands based on the arc center coordinate (I, J, K) designation, these commands can also be issued by directly designating the arc radius R. Command format G02 (G03) X__ Y__ R__ F__ ;...
  • Page 62 6. Interpolation Functions 6.5 R-specified Circular Interpolation Example of program (Example 1) G02 Xx XY plane R-specified arc (Example 2) G03 Zz ZX plane R-specified arc (Example 3) G02 Xx XY plane R-specified arc (When the R specification and I, J, (K) specification are contained in the same block, the R specification has priority in processing.) (Example 4)
  • Page 63 6. Interpolation Functions 6.5 R-specified Circular Interpolation Circular center coordinate compensation When "the error margin between the segment connecting the start and end points" and "the commanded radius × 2" is less than the setting value because the required semicircle is not obtained by calculation error in R specification circular interpolation, "the midpoint of segment connecting the start and end points"...
  • Page 64: Helical Interpolation ; G17 To G19, G02, G03

    6. Interpolation Functions 6.6 Helical Interpolation 6.6 Helical Interpolation ; G17 to G19, G02, G03 Function and purpose While circular interpolating with G02/G03 within the plane selected with the plane selection G code (G17, G18, G19), the 3rd axis can be linearly interpolated. Normally, the helical interpolation speed is designated with the tangent speed F' including the 3rd axis interpolation element as shown in the lower drawing of Fig.
  • Page 65 6. Interpolation Functions 6.6 Helical Interpolation The arc plane element speed designation and normal speed designation can be selected with the parameter. #1235 set07/bit0 Meaning Arc plane element speed designation is selected. Normal speed designation is selected. Normal speed designation θ...
  • Page 66 6. Interpolation Functions 6.6 Helical Interpolation The plane for an additional axis can be selected as with circular interpolation. UY plane circular, Z axis linear Command the U, Y and Z axis addresses in the G02 (G03) and G19 (plane selection G code) mode.
  • Page 67 6. Interpolation Functions 6.6 Helical Interpolation (Example 4) U axis X axis Z axis G18 G03 Xx Ii1 Kk ZX plane arc, U axis linear (Note) If the same system is used, the standard axis will perform circular interpolation and the additional axis will perform linear interpolation. (Example 5) G18 G02 Xx ZX plane arc, U axis, Y axis linear...
  • Page 68: Thread Cutting

    6. Interpolation Functions 6.7 Thread Cutting 6.7 Thread Cutting 6.7.1 Constant Lead Thread Cutting; G33 Function and purpose The G33 command exercises feed control over the tool which is synchronized with the spindle rotation and so this makes it possible to conduct constant-lead straight thread-cutting and tapered thread-cutting.
  • Page 69 6. Interpolation Functions 6.7 Thread Cutting Thread cutting metric input Input unit B (0.001mm) C (0.0001mm) system Command F (mm/rev) E (mm/rev) E (ridges/inch) F (mm/rev) E (mm/rev) E (ridges/inch) address Minimum 1(=1.000) 1(=1.00000) 1(=1.00) 1(=1.0000) 1(=1.000000) 1(=1.000) command (1.=1.000) (1.=1.00000) (1.=1.00) (1.=1.0000)
  • Page 70 6. Interpolation Functions 6.7 Thread Cutting (6) If the feed hold function is employed during thread cutting to stop the feed, the thread ridges will lose their shape. For this reason, feed hold does not function during thread cutting. Note that this is valid from the time the thread cutting command is executed to the time the axis moves.
  • Page 71 6. Interpolation Functions 6.7 Thread Cutting Example of program N110 G90 G0 X-200. Y-200. S50 M3 ; The spindle center is positioned to the workpiece center, and the spindle rotates in the forward direction. N111 Z110. ; N112 G33 Z40. F6.0 ; The first thread cutting is executed.
  • Page 72: Inch Thread Cutting; G33

    6. Interpolation Functions 6.7 Thread Cutting 6.7.2 Inch Thread Cutting; G33 Function and purpose If the number of ridges per inch in the long axis direction is assigned in the G33 command, the feed of the tool synchronized with the spindle rotation will be controlled, which means that constant-lead straight thread-cutting and tapered thread-cutting can be performed.
  • Page 73: Unidirectional Positioning; G60

    6. Interpolation Functions 6.8 Unidirectional Positioning Example of program Thread lead ..3 threads/inch (= 8.46666 ...) When programmed with δ = 10mm, δ = 10mm using metric input δ 50.0mm δ N210 G90 G0X-200. Y-200. S50M3; N211 Z110.; N212 G91 G33 Z-70.E3.0; (First thread cutting) N213 M19;...
  • Page 74 6. Interpolation Functions 6.8 Unidirectional Positioning Command format G60 X__ Y__ Z__ α__ ; α : Optional axis Detailed description (1) The creep distance for the final positioning as well as the final positioning direction is set by parameter. (2) After the tool has moved at the rapid traverse rate to the position separated from the final position by an amount equivalent to the creep distance, it move to the final position in accordance with the rapid traverse setting where its positioning is completed.
  • Page 75: Cylindrical Interpolation; G07.1

    6. Interpolation Functions 6.9 Cylindrical Interpolation ; G07.1 6.9 Cylindrical Interpolation; G07.1 Function and purpose This function develops a shape with a cylindrical side (shape in cylindrical coordinate system) into a plane. When the developed shape is programmed as the plane coordinates, that is converted into the linear axis and rotation axis movement in the cylindrical coordinates and the contour is controlled during machining.
  • Page 76 6. Interpolation Functions 6.9 Cylindrical Interpolation ; G07.1 Command format G07.1 C__ ; (Cylindrical interpolation mode start/cancel) : Cylinder radius value • Radius value ≠ 0: Cylindrical interpolation mode start • Radius value = 0: Cylindrical interpolation mode cancel (Note) The above format applies when the name of the rotation axis is "C". If the name is not "C", command the name of the rotation axis being used instead of "C".
  • Page 77 6. Interpolation Functions 6.9 Cylindrical Interpolation ; G07.1 Detailed description (1) Command G07.1 in an independent block. A program error (P33) will occur if this command is issued in the same block as another G code. (2) Program the rotation axis with an angle degree. (3) Linear interpolation or circular interpolation can be commanded during the cylindrical interpolation mode.
  • Page 78 6. Interpolation Functions 6.9 Cylindrical Interpolation ; G07.1 (9) Plane selection (Note) The axis used for cylindrical interpolation must be set with the plane selection command. The correspondence of the rotation axis to an axis' parallel axis is set with the parameters (#1029, #1030, #1031).
  • Page 79 6. Interpolation Functions 6.9 Cylindrical Interpolation ; G07.1 (10) Related parameters Setting Item Details range 1516 mill_ax Milling axis Set the name of the rotation axis for milling interpolation A to Z name (pole coordinate interpolation, cylindrical interpolation). Only one of the rotation axes can be set. 8111 Milling Radius Select the diameter and radius of the linear axis for milling...
  • Page 80 6. Interpolation Functions 6.9 Cylindrical Interpolation ; G07.1 (3) Tool radius compensation The tool radius can be compensated during the cylindrical interpolation mode. (a) Command the plane selection in the same manner as circular interpolation. When using tool radius compensation, start up and cancel the compensation within the cylindrical interpolation mode.
  • Page 81 6. Interpolation Functions 6.9 Cylindrical Interpolation ; G07.1 Restrictions and precautions (1) The cylindrical interpolation mode is canceled when the power is turned ON or reset. (2) A program error (P484) will occur if any axis commanded for cylindrical interpolation has not completed reference position return.
  • Page 82 6. Interpolation Functions 6.9 Cylindrical Interpolation ; G07.1 Example of program <Program> <Parameter> N01 G28XZC; #1029 aux_I N02 G97S100M23; #1030 aux_J N03 G00X50.Z0.; #1031 aux_K N04 G94G01X40.F100.; Command of plane selection for cylindrical interpolation N05 G19C0Z0; and command of two interpolation axes N06 G07.1C20.;...
  • Page 83: Polar Coordinate Interpolation; G12.1, G13.1

    6. Interpolation Functions 6.10 Polar Coordinate Interpolation; G12.1, G13.1 6.10 Polar Coordinate Interpolation; G12.1, G13.1 Function and purpose This function converts the commands programmed with the orthogonal coordinate axis into linear axis movement (tool movement) and rotation axis movement (workpiece rotation), and controls the contour.
  • Page 84 6. Interpolation Functions 6.10 Polar Coordinate Interpolation; G12.1, G13.1 Detailed description (1) Command G12.1 and G13.1 in an independent block. A program error (P33) will occur if this command is issued in the same block as another G code. (2) Linear interpolation or circular interpolation can be commanded during the pole coordinate interpolation mode.
  • Page 85 6. Interpolation Functions 6.10 Polar Coordinate Interpolation; G12.1, G13.1 (8) F command during pole coordinate interpolation As for the F command in the pole coordinate interpolation mode, whether the previous F command is used or not depends on that the mode just before G12.1 is the feed per minute command (G94/G98) or feed per rotation command (G95/G99).
  • Page 86 6. Interpolation Functions 6.10 Polar Coordinate Interpolation; G12.1, G13.1 Relation with other functions (1) The following G code commands can be used during the pole coordinate interpolation mode. G code Details Positioning Linear interpolation Circular interpolation (CW) Circular interpolation (CWW) Dwell Exact stop check G40-42...
  • Page 87 6. Interpolation Functions 6.10 Polar Coordinate Interpolation; G12.1, G13.1 (4) Tool radius compensation The tool radius can be compensated during the pole coordinate interpolation mode. (a) Command the plane selection in the same manner as pole coordinate interpolation. When using tool radius compensation, it must be started up and canceled within the pole coordinate interpolation mode.
  • Page 88 6. Interpolation Functions 6.10 Polar Coordinate Interpolation; G12.1, G13.1 (8) Hole drilling axis in the hole drilling fixed cycle command during the pole coordinate interpolation Hole drilling axis in the hole drilling fixed cycle command during the pole coordinate interpolation is determined with the linear axis parameter (#1533). #1533 setting value Hole drilling axis Z (pole coordinate plane is interpreted as XY plane)
  • Page 89 6. Interpolation Functions 6.10 Polar Coordinate Interpolation; G12.1, G13.1 (11) A program error (P486) will occur if the cylindrical interpolation or the pole coordinate interpolation is commanded during the pole coordinate interpolation mode. (12) During pole coordinate interpolation, if X axis moveable range is controlled in the plus side, X axis has to be moved to the plus area that includes "0"...
  • Page 90: Exponential Function Interpolation; G02.3, G03.3

    6. Interpolation Functions 6.11 Exponential Function Interpolation; G02.3, G03.3 6.11 Exponential Function Interpolation; G02.3, G03.3 Function and purpose Exponential function interpolation changes the rotation axis into an exponential function shape in respect to the linear axis movement. At this time, the other axes carry out linear interpolation between the linear axis. This allows a machining of a taper groove with constant torsion angle (helix angle) (uniform helix machining of taper shape).
  • Page 91 6. Interpolation Functions 6.11 Exponential Function Interpolation; G02.3, G03.3 Command format G02.3/G03.3 Xx1 Yy1 Zz1 Ii1 Jj1 Rr1 Ff1 Qq1 Kk1 ; G02.3 : Forward rotation interpolation (modal) G03.3 : Negative rotation interpolation (modal) : X axis end point (Note 1) : Y axis end point (Note 1) : Z axis end point (Note 1) : Angle i1 (Note 2)
  • Page 92 6. Interpolation Functions 6.11 Exponential Function Interpolation; G02.3, G03.3 (Note 5) The command unit is as follows. Setting unit #1003 = B #1003 = C #1003 = D #1003 = E Unit Metric system 0.001 0.0001 0.00001 0.000001 Inch system 0.0001 0.00001 0.000001...
  • Page 93 6. Interpolation Functions 6.11 Exponential Function Interpolation; G02.3, G03.3 Machining example • Example of uniform helix machining of taper shape Z axis A axis X axis <Relational expression of exponential function in machining example> θ /D Z (θ) = r1 ∗ (e -1) ∗...
  • Page 94 6. Interpolation Functions 6.11 Exponential Function Interpolation; G02.3, G03.3 The taper gradient angle (i1) and torsion angle (j1) are each issued with the command address I and J. Note that if the shape is a reverse taper shape, the taper gradient angle (i1) is issued as a negative value.
  • Page 95 6. Interpolation Functions 6.11 Exponential Function Interpolation; G02.3, G03.3 Precautions for programming (1) When G02.3/G03.3 is commanded, interpolation takes place with the exponential function relational expression using the start position of the linear axis and rotation axis as 0. (2) Linear interpolation will take place in the following cases, even if in the G02.3/G03.3 mode. The feedrate for linear interpolation will be the F command in that block.
  • Page 96: Polar Coordinate Command; G16/G15

    6. Interpolation Functions 6.12 Polar Coordinate Command; G16/G15 6.12 Polar Coordinate Command; G16/G15 Function and purpose With this function, the end point coordinate value is commanded with the polar coordinate of the radius and angle. Command format G16 ; Polar coordinate command mode ON G15 ;...
  • Page 97 6. Interpolation Functions 6.12 Polar Coordinate Command; G16/G15 (7) When the radius is commanded with the absolute value, command the distance from the zero point in the workpiece coordinate system (note that the local coordinate system is applied when the local coordinate system is set). (8) When the radius is commanded with the incremental value command, considering the end point of the previous block as the polar coordinate center, command the incremental value from that end point.
  • Page 98 6. Interpolation Functions 6.12 Polar Coordinate Command; G16/G15 (3) When the radius command is omitted When the radius command is omitted, the zero point in the workpiece coordinate system is applied to the polar coordinate center, and the distance between the polar coordinate center and current position is regarded as the radius.
  • Page 99 6. Interpolation Functions 6.12 Polar Coordinate Command; G16/G15 Axis command not interpreted as polar coordinate command The axis command with the following command is not interpreted as the polar coordinate command during the polar coordinate command mode. The movement command that has no axes commands for the 1st axis and 2nd axis in the selected plane mode is also not interpreted as polar coordinate command during the polar coordinate command mode.
  • Page 100 6. Interpolation Functions 6.12 Polar Coordinate Command; G16/G15 Example of program When the zero point in the workpiece coordinate system is the polar coordinate zero point • The polar coordinate zero point is the zero point in the workpiece coordinate system.
  • Page 101 6. Interpolation Functions 6.12 Polar Coordinate Command; G16/G15 Precautions (1) If the following commands are carried out during the polar coordinate command mode, or if the polar coordinate command is carried out during the following command mode, a program error (P34) will occur.
  • Page 102: Spiral/Conical Interpolation; G02.0/G03.1(Type1), G02/G03(Type2)

    6. Interpolation Functions 6.13 Spiral/Conical Interpolation 6.13 Spiral/Conical Interpolation; G02.0/G03.1(Type1), G02/G03(Type2) Function and purpose This function carries out interpolation that smoothly joins the start and end points in a spiral. This interpolation is carried out for arc commands in which the start point and end point are not on the same circumference.
  • Page 103 6. Interpolation Functions 6.13 Spiral/Conical Interpolation (5) P designates the number of pitches (number of spirals). (Type 1) The number of pitches and rotations is as shown below. Number of pitches Number of rotations (0 to 99) Less than 1 rotation (Can be omitted.) 1 or more rotation, less than 2 rotations...
  • Page 104 6. Interpolation Functions 6.13 Spiral/Conical Interpolation (9) In the following cases, a program error will occur. (a) Items common for type 1 and 2 Command Settings Error range (Unit) End point Range of • If a value exceeding the command range is issued, coordinate coordinate program error (P35) will occur.
  • Page 105 6. Interpolation Functions 6.13 Spiral/Conical Interpolation Detailed description (1) The arc rotation direction G02.1 is the same as G02, and G03.1 is the same as G03. (2) There are no R-designated arcs in spiral interpolation. (3) Conical cutting, tapered thread-cutting and other such machining operations can be conducted by changing the start point and end point radius and commanding the linear axis simultaneously.
  • Page 106 6. Interpolation Functions 6.13 Spiral/Conical Interpolation Example of program (Example 1) G91 G17 G01 X60. F500 ; Y140. ; G02.1 X60. Y0 I100. P1 F300 ; point G01 X−120 ; Center 140. Start point G17 G01 X60. F500 ; Y140. ; X60.
  • Page 107: 3-Dimensional Circular Interpolation; G02.4, G03.4

    6. Interpolation Functions 6.14 3-dimensional Circular Interpolation; G02.4, G03.4 6.14 3-dimensional Circular Interpolation; G02.4, G03.4 Function and purpose To issue a circular command over a 3-dimensional space, an arbitrary point (intermediate point) must be designated on the arc in addition to the start point (current position) and end point. By using the 3-dimensional circular interpolation command, an arc shape determined by the three points (start point, intermediate point, end point) designated on the 3-dimensional space can be machined.
  • Page 108 6. Interpolation Functions 6.14 3-dimensional Circular Interpolation; G02.4, G03.4 Command format α α1 G02.4(G03.4) Xx1 Yy1 Zz1 ; Intermediate point designation (1st block) α α2 Xx2 Yy2 Zz2 ; End point designation (2nd block) G02.4(G03.4) : 3-dimensional circular interpolation command (Cannot designate the rotation direction) x1, y1, z1 : Intermediate point coordinates x2, y2, z2...
  • Page 109 6. Interpolation Functions 6.14 3-dimensional Circular Interpolation; G02.4, G03.4 Designating intermediate point and end point When using the 3-dimensional circular interpolation command, an arc that exists over the 3-dimensional space can be determined by designating the intermediate point and end point in addition to the start point (current position).
  • Page 110 6. Interpolation Functions 6.14 3-dimensional Circular Interpolation; G02.4, G03.4 When liner interpolation is applied In the following case, liner interpolation but 3-dimensional circular interpolation is applied. (1) When the start point, intermediate point, and end point are on the same line (refer to the following figure) (If the end point exists between the start point and intermediate point, axes move in the order of start point, intermediate point, and end point.)
  • Page 111 6. Interpolation Functions 6.14 3-dimensional Circular Interpolation; G02.4, G03.4 Relation with other functions (1) Commands that cannot be used (a) G code command which leads to a program error during 3-dimensional circular interpolation modal G code Function name Program error G05 Pn High-speed machining mode G05 P10000...
  • Page 112: Nurbs Interpolation

    6. Interpolation Functions 6.15 NURBS Interpolation 6.15 NURBS Interpolation Function and purpose This function realizes NURBS (Non-Uniform Rational B-Spline) curve machining by simply commanding NURBS curve parameters (stage, weight, knot, control point), which is used for the curved surface/line machining, without replacing the path with minute line segments. This function operates only in the high-speed high-accuracy control II mode, so the high-speed high-accuracy control II option is required.
  • Page 113 6. Interpolation Functions 6.15 NURBS Interpolation Detailed description (1) Designate the stage P for the 1st block of NURBS interpolation. (2) Designate the same coordinate value for the 1st block control point of NURBS interpolation as that designated right before NURBS interpolation. (3) Designate all axes to be used in the subsequent NURBS interpolation blocks for 1st block of NURBS interpolation (4) Set the same value for knot K from the 1st block of NURBS interpolation to setting value block...
  • Page 114 6. Interpolation Functions 6.15 NURBS Interpolation Example of program The example of program that has 4 stages (cubic curve) and 11 control points is shown below. Control point Knot G05 P10000; P10(9.5,8.0) G90 G01 X0. Y0. Z0. F300; G06.2 P4 X0. Y0. R1. K0; P9(8.0,6.5) X1.0 Y2.0 R1.
  • Page 115 6. Interpolation Functions 6.15 NURBS Interpolation Relation with other functions (1) G code/Feed/Miscellaneous functions All the G code, feedrate and MSTB code cannot be set during NURBS interpolation. However, when the fixed cycle G code is commanded in the same block where G06.2 is commanded, the fixed cycle G code is ignored.
  • Page 116 6. Interpolation Functions 6.15 NURBS Interpolation Precautions (1) Target axes for NURBS interpolation are 3 basic axes. (2) Command the control point for all the axes for which NURBS interpolation is carried out in the 1st block (G06.2 block). A program error (P32) will occur if an axis which was not commanded in the 1st block is commanded in the 2nd block or after.
  • Page 117: Hypothetical Axis Interpolation; G07

    6. Interpolation Functions 6.16 Hypothetical Axis Interpolation; G07 6.16 Hypothetical Axis Interpolation; G07 Function and purpose Take one of the axes of the helical interpolation or spiral interpolation, including a linear axis, as a hypothetical axis (axis with no actual movement) and perform pulse distribution. With this procedure, an interpolation equivalent to the helical interpolation or spiral interpolation looked from the side (hypothetical axis), or SIN or COS interpolation, will be possible.
  • Page 118 6. Interpolation Functions 6.16 Hypothetical Axis Interpolation; G07 Detailed description α α α (1) During “G07 0” to “G07 1”, axis will be the hypothetical axis. (2) Any axis among the NC axes can be designated as the hypothetical axis. (3) Multiple axes can be designated as the hypothetical axis.
  • Page 119: Feed Functions

    7. Feed Functions 7.1 Rapid Traverse Rate 7. Feed Functions 7.1 Rapid Traverse Rate Function and purpose The rapid traverse rate can be set independently with parameters for each axis. The available speed ranges are from 1 mm/min to 10000000 mm/min. The upper limit is subject to the restrictions imposed by the machine specifications.
  • Page 120: F1-Digit Feed

    7. Feed Functions 7.3 F1-digit Feed 7.3 F1-digit Feed Function and purpose By setting the F1-digit feed parameter, the feedrate which has been set to correspond to the 1-digit number following the F address serves as the command value. When F0 is assigned, the rapid traverse rate is established and the speed is the same as for G00. (G modal does not change, but the acceleration/deceleration method is followed by the settings for the rapid...
  • Page 121 7. Feed Functions 7.3 F1-digit Feed When F1. to F5. (with decimal point) are assigned, the 1mm/min to 5mm/min direct commands are established instead of the F1-digit command. When the commands are used with the millimeter or degree units, the feedrate set to correspond to F1 to F5 serves as the assigned speed mm (°)/min.
  • Page 122: Per-Minute/Per-Revolution Feed (Asynchronous/Synchronous Feed); G94, G95

    7. Feed Functions 7.4 Per-minute/Per-revolution Feed (Asynchronous/Synchronous Feed); G94, G95 7.4 Per-minute/Per-revolution Feed (Asynchronous/Synchronous Feed); G94, G95 Function and purpose Using the G95 command, it is possible to assign the feed amount per rotation with an F code. When this command is used, the rotary encoder must be attached to the spindle. When the G94 command is issued the per-minute feed rate will return to the designated per-minute feed (asynchronous feed) mode.
  • Page 123 7. Feed Functions 7.4 Per-minute/Per-revolution Feed (Asynchronous/Synchronous Feed); G94, G95 Inch input Input B (0.0001inch) C (0.00001inch) command unit system Command Feed per minute Feed per rotation Feed per minute Feed per rotation mode Command F (inch/min) E (inch/rev) F (inch/min) E (inch/rev) address Minimum...
  • Page 124: Inverse Time Feed; G93

    7. Feed Functions 7.5 Inverse Time Feed; G93 7.5 Inverse Time Feed; G93 Function and purpose During inside cutting when machining curved shapes with radius compensation applied, the machining speed on the cutting surface becomes faster than the tool center feedrate. Therefore, problems such as reduced accuracy may occur.
  • Page 125 7. Feed Functions 7.5 Inverse Time Feed; G93 Detailed description (1) Inverse time feed (G93) is a modal command. Once commanded, it is valid until feed per minute (G94) or feed per revolution (G95) is commanded, or until a reset (M02, M30, etc.) is executed.
  • Page 126 7. Feed Functions 7.5 Inverse Time Feed; G93 Example of program When using inverse time feed during tool radius compensation Feed per minute N01 G90 G00 X80. Y-80. ; N02 G01 G41 X80 Y-80. D11 F500 ; N03 X180. ; N04 G02 Y-280.
  • Page 127 7. Feed Functions 7.5 Inverse Time Feed; G93 Relation with other functions (1) Scaling (G51) When using a scaling function, issue a F command for the shape after scaling. For example, if a double-size scaling is carried out, the machining distance will be twice. Thus, if executing a cutting at the same speed as that of before scaling, command the value (F’) calculated by dividing F value by the multiples of scaling.
  • Page 128: Feedrate Designation And Effects On Control Axes

    7. Feed Functions 7.6 Feedrate Dsignation and Effects on Control Axes 7.6 Feedrate Designation and Effects on Control Axes Function and purpose It has already been mentioned that a machine has a number of control axes. These control axes can be divided into linear axes which control linear movement and rotary axes which control rotary movement.
  • Page 129 7. Feed Functions 7.6 Feedrate Dsignation and Effects on Control Axes (Example) When the feedrate is designated as "f" and the linear axes (X and Y) are to be controlled using the circular interpolation function: The rate in the tool advance direction, or in other words the tangential direction, will be the feedrate designated in the program.
  • Page 130 7. Feed Functions 7.6 Feedrate Dsignation and Effects on Control Axes When linear and rotary axes are to be controlled at the same time The controller proceeds in exactly the same way whether linear or rotary axes are to be controlled. When a rotary axis is to be controlled, the numerical value assigned by the coordinate word (A, B, C) is the angle and the numerical values assigned by the feedrate (F) are all handled as linear speeds.
  • Page 131 7. Feed Functions 7.6 Feedrate Dsignation and Effects on Control Axes X-axis feedrate (linear speed) "fx" and C-axis feedrate (angular speed) "ω" are expressed as: fx = f × ..................(1) ω = f × ..................(2) Linear speed "fc" based on C-axis control is expressed as: π...
  • Page 132: Rapid Traverse Constant Inclination Acceleration/Deceleration

    7. Feed Functions 7.7 Rapid Traverse Constant Inclination Acceleration/Deceleration 7.7 Rapid Traverse Constant Inclination Acceleration/Deceleration Function and purpose This function performs acceleration and deceleration at a constant inclination during linear acceleration/deceleration in the rapid traverse mode. Compared to the method of acceleration /deceleration after interpolation, the constant inclination acceleration/deceleration method makes for improved cycle time.
  • Page 133 7. Feed Functions 7.7 Rapid Traverse Constant Inclination Acceleration/Deceleration (3) When 2-axis simultaneous interpolation (linear interpolations) is performed during rapid traverse constant inclination acceleration and deceleration, the acceleration (deceleration) time is the longest value of the acceleration (deceleration) times determined for each axis by the rapid traverse rate of commands executed simultaneously, the rapid traverse acceleration and deceleration time constant, and the interpolation distance, respectively.
  • Page 134: Rapid Traverse Constant Inclination Multi-Step Acceleration/Deceleration

    7. Feed Functions 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration Function and purpose This function carries out the acceleration/deceleration according to the torque characteristic of the motor in the rapid traverse mode during automatic operation. (This function is not available in manual operation.) The rapid traverse constant inclination multi-step acceleration/deceleration method makes for improved cycle time because the positioning time is shortened by using the motor ability to its maximum.
  • Page 135 7. Feed Functions 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration Speed Speed Time Time Acceler- Acceler- Number of steps is ation ation automatically adjusted It was necessary to slow down the by parameter setting. acceleration for high speed rotation. Time Time (a) Rapid traverse constant inclination multi-step (b) Rapid traverse constant inclination...
  • Page 136 7. Feed Functions 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration Speed Rapid traverse rate Rated speed Time Acceleration time to rated speed Acceleration Max. acceleration Acceleration at rapid traverse rate Time Acceleration at rapid traverse rate Acceleration rate in proportion to the maximum acceleration rate Max.
  • Page 137 7. Feed Functions 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration (4) The comparison of the acceleration/deceleration patterns by the parameter setting is in the table below. Rapid traverse constant #1086 #1205 Mode Operation inclination multi-step G00Intp G0bdcc acceleration/deceleration Time constant command acceleration/deceleration (interpolation type)
  • Page 138 7. Feed Functions 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration Detailed description (decision method of steps) For rapid traverse constant inclination multi-step acceleration/deceleration, the number of steps is automatically adjusted by set parameter. The acceleration per step is assumed to be a decrease by 10% of the maximum acceleration per step.
  • Page 139 7. Feed Functions 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration Detailed description (Acceleration pattern at two or more axis interpolation) When there are two or more rapid traverse axes with a different acceleration pattern, there are the following two operation methods. •...
  • Page 140 7. Feed Functions 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration Detailed description (S-pattern filter control) With S-pattern filter control, this enables the rapid traverse inclination multi-step acceleration/ deceleration fluctuation to further smoothen. This can be set in the range of 0 to 200 (ms) with the basic specification parameter "#1569 SfiltG0" (G00 soft acceleration/deceleration filter).
  • Page 141 7. Feed Functions 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration Speed Larger than the rated speed Rapid traverse date The high-accuracy control mode rapid traverse rate Rated speed Time Acceleration time to rated speed Acceleration Max. Acceleration Acceleration at rapid traverse rate Time Smaller than the rated speed...
  • Page 142 7. Feed Functions 7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration Rapid traverse Rapid traverse constant inclination multi-step Acceleration Speed constant inclination acceleration/deceleration multi-step acceleration/ deceleration S-pattern filter Manual rapid traverse (linear) Manual rapid traverse (linear) Soft acceleration/deceleration Time Speed (2) Rapid traverse constant inclination multi-step acceleration/deceleration cannot be used in part system excluding 1st part system.
  • Page 143: Exact Stop Check; G09

    7. Feed Functions 7.9 Exact Stop Check; G09 7.9 Exact Stop Check; G09 Function and purpose In order to prevent roundness during corner cutting and machine shock when the tool feedrate changes suddenly, there are times when it is desirable to start the commands in the following block once the in-position state after the machine has decelerated and stopped or the elapsing of the deceleration check time has been checked.
  • Page 144 7. Feed Functions 7.9 Exact Stop Check; G09 Detailed description (1) With continuous cutting feed Next block Previous block Fig. 2 Continuous cutting feed command (2) With cutting feed in-position check Next block Previous block Lc (in-position width) Fig. 3 Block joint with cutting feed in-position check In Figs.
  • Page 145 7. Feed Functions 7.9 Exact Stop Check; G09 (3) With deceleration check (a) With linear acceleration/deceleration Next block Previous block Ts : Acceleration/deceleration time constant Td : Deceleration check time Td = Ts + ( 0 ~ 14ms) (b) With exponential acceleration/deceleration Previous block Next block Ts : Acceleration/deceleration time constant...
  • Page 146: Exact Stop Check Mode; G61

    7. Feed Functions 7.10 Exact Stop Check Mode; G61 7.10 Exact Stop Check Mode; G61 Function and purpose Whereas the G09 exact stop check command checks the in-position status only for the block in which the command has been assigned, the G61 command functions as a modal. This means that deceleration will apply at the end points of each block to all the cutting commands (G01 to G03) subsequent to G61 and that the in-position status will be checked.
  • Page 147 7. Feed Functions 7.11 Deceleration Check (2) Designating deceleration check The deceleration check by designating a parameter includes "deceleration check specification type 1" and "deceleration check specification type 2". The setting is selected with the parameter "#1306 InpsTyp". (a) Deceleration check specification type 1 ("#1306 InpsTyp" = 0) The G0 and G1 deceleration check method can be selected with the base specification parameter deceleration check method 1 (#1193 inpos) and "deceleration check method 2"...
  • Page 148: G1 -> G0 Deceleration Check

    7. Feed Functions 7.11 Deceleration Check 7.11.1 G1 → G0 Deceleration Check Detailed operations (1) In G1 → G0 continuous blocks, the parameter "#1502 G0Ipfg" can be changed to change the deceleration check in the reverse direction. Same direction Reverse direction G0Ipfg: 0 G0Ipfg: 1 Command deceleration...
  • Page 149: G1 -> G1 Deceleration Check

    7. Feed Functions 7.11 Deceleration Check 7.11.2 G1 → G1 Deceleration Check Detailed operations (1) In G1 → G1 continuous blocks, the parameter "#1503 G1Ipfg" can be changed to change the deceleration check of the reverse direction. Same direction Reverse direction G1Ipfg: 0 G1Ipfg: 1 Command deceleration...
  • Page 150: Automatic Corner Override

    7. Feed Functions 7.12 Automatic Corner Override 7.12 Automatic Corner Override Function and purpose With tool radius compensation, this function reduces the load during inside cutting of automatic corner R, or during inside corner cutting, by automatically applying override to the feed rate. Automatic corner override is valid until the tool radius compensation cancel (G40), exact stop check mode (G61), high-accuracy control mode (G61.1), tapping mode (G63), or cutting mode (G64) command is issued.
  • Page 151 7. Feed Functions 7.12 Automatic Corner Override (1) Operation (a) When automatic corner override is not to be applied : When the tool moves in the order of (1) → (2) → (3) in Fig. 1, the machining allowance at (3) increases by an amount equivalent to the area of shaded section S and so the tool load increases.
  • Page 152 7. Feed Functions 7.12 Automatic Corner Override Example of operations (1) Line - line corner Program θ Tool center Tool The override set in the parameter is applied at Ci. (2) Line - arc (outside) corner Tool center Program θ Tool The override set in the parameter is applied at Ci.
  • Page 153 7. Feed Functions 7.12 Automatic Corner Override Relation with other functions Function Override at corner Cutting feed override Automatic corner override is applied after cutting feed override has been applied. Override cancel Automatic corner override is not canceled by override cancel. Speed clamp Valid after automatic corner override Dry run...
  • Page 154 7. Feed Functions 7.12 Automatic Corner Override Precautions (1) Automatic corner override is valid only in the G01, G02, and G03 modes; it is not effective in the G00 mode. When switching from the G00 mode to the G01 (or G02 or G03) mode at a corner (or vice versa), automatic corner override will not be applied at that corner in the G00 block.
  • Page 155: Tapping Mode; G63

    7. Feed Functions 7.13 Tapping Mode; G63 7.13 Tapping Mode; G63 Function and purpose The G63 command allows the control mode best suited for tapping to be entered, as indicated below : (1) Cutting override is fixed at 100%. (2) Deceleration commands at joints between blocks are invalid. (3) Feed hold is invalid.
  • Page 156: Dwell

    8. Dwell 8.1 Per-second Dwell 8. Dwell The G04 command can delay the start of the next block. 8.1 Per-second Dwell ; G04 Function and purpose The machine movement is temporarily stopped by the program command to make the waiting time state.
  • Page 157 8. Dwell 8.1 Per-second Dwell Example of program Dwell time [sec] #1078 Decpt2 = 0 #1078 Decpt2 = 1 Command DECIMAL DECIMAL DECIMAL DECIMAL PNT-N PNT-P PNT-N PNT-P G04 X500 ; G04 X5000 ; 5000 G04 X5. ; G04 X#100 ; 1000 1000 G04 P5000 ;...
  • Page 158: Miscellaneous Functions

    9. Miscellaneous Functions 9.1 Miscellaneous Functions (M8-digits BCD) 9. Miscellaneous Functions 9.1 Miscellaneous Functions (M8-digits BCD) Function and purpose The miscellaneous (M) functions are also known as auxiliary functions, and they include such numerically controlled machine functions as spindle forward and reverse rotation, operation stop and coolant ON/OFF.
  • Page 159 9. Miscellaneous Functions 9.1 Miscellaneous Functions (M8-digits BCD) Optional stop ; M01 If the tape reader reads the M01 command when the optional stop switch on the machine operation board is ON, it will stop and the same effect as with the M00 function will apply. If the optional stop switch is OFF, the M01 command is ignored.
  • Page 160: Secondary Miscellaneous Functions (B8-Digits, A8 Or C8-Digits)

    9. Miscellaneous Functions 9.2 Secondary Miscellaneous Functions (B8-digits, A8 or C8-digits) 9.2 Secondary Miscellaneous Functions (B8-digits, A8 or C8-digits) Function and purpose These serve to assign the indexing table positioning and other such functions. In this controller, they are assigned by an 8-digit number from 0 to 99999999 following address A, B or C. The machine maker determines which codes correspond to which positions.
  • Page 161: Index Table Indexing

    9. Miscellaneous Functions 9.3 Index Table Indexing 9.3 Index Table Indexing Function and purpose Index table indexing can be carried out by setting the index axis. The indexing command only issues the indexing angle to the axis set for indexing. It is not necessary to command special M codes for table clamping and unclamping, thus simplifying the program.
  • Page 162 9. Miscellaneous Functions 9.3 Index Table Indexing Precautions (1) Several axes can be set as index table indexing axes. (2) The movement speed of index table indexing axes follows the feedrate of the modal (G0/G1) at that time. (3) The unclamp process for the indexing axes is also issued when the index table indexing axes are commanded in the same block as other axes.
  • Page 163: Spindle Functions

    10. Spindle Functions 10.1 Spindle Functions (S6-digits Analog) 10. Spindle Functions 10.1 Spindle Functions (S6-digits Analog) Function and purpose When the S6-digits function is added, a 6-digit value (0 to 999999) can be designated after the S code. Always select S command binary output when using this function. If the S function is designated in the same block as a movement command, the commands may be executed in either of the following two orders.
  • Page 164: Constant Surface Speed Control; G96, G97

    10. Spindle Functions 10.3 Constant Surface Speed Control; G96, G97 10.3 Constant Surface Speed Control; G96, G97 10.3.1 Constant Surface Speed Control Function and purpose These cinommands automatically control the spindle speed in line with the changes in the radius coordinate values as cutting proceeds in the diametrical direction, and they serve to keep the cutting pot speed constant during the cutting.
  • Page 165: Spindle Clamp Speed Setting; G92

    10. Spindle Functions 10.4 Spindle Clamp Speed Setting; G92 10.4 Spindle Clamp Speed Setting; G92 Function and purpose The maximum clamp speed of the spindle can be assigned by address S following G92 and the minimum clamp speed by address Q. Command format G92 S__ Q__;...
  • Page 166: Spindle/C Axis Control

    10. Spindle Functions 10.5 Spindle/C Axis Control 10.5 Spindle/C Axis Control Function and purpose This function enables one spindle (MDS-A/B-SP and later) to also be used as a C axis (rotation axis) by an external signal. Detailed description (1) Spindle/C axis changeover Changeover between the spindle and C axis is done by the C axis SERVO ON signal.
  • Page 167 10. Spindle Functions 10.5 Spindle/C Axis Control (Note) For axis commands, the reference position return complete is checked at calculation. Thus, when the C axis servo ON command and C axis command are continuous, the program error (P430) occur as shown above in ∗ 2. In response to this kind of situation, the following two processes must be carried out on user PLC, as shown above in ∗...
  • Page 168 10. Spindle Functions 10.5 Spindle/C Axis Control Precautions and Restrictions (1) A reference position return cannot be executed by the orientation when there is no Z phase in the detector (PLG, ENC, other). Replace the detector with one having a Z phase, or if using the detector as it is, set the position control changeover to "After deceleration stop"...
  • Page 169: Multiple Spindle Control

    10. Spindle Functions 10.6 Multiple Spindle Control 10.6 Multiple Spindle Control Function and purpose Multiple spindle control is a function used to control the sub-spindle in a machine tool that has a main spindle (1st spindle) and a sub-spindle (2nd spindle to 4th spindle). Multiple spindle control II: Control following the external signal (spindle (ext36/bit0 = 1)
  • Page 170: Multiple Spindle Control Ii

    10. Spindle Functions 10.6 Multiple Spindle Control 10.6.1 Multiple Spindle Control II Function and purpose Multiple spindle control II is a function that designates which spindle to select with the signals from PLC. The command is issued to the spindle with one S command. Detailed description (1) Spindle command selection, spindle selection The S command to the spindle is output as the rotation speed command to the selected spindle...
  • Page 171 10. Spindle Functions 10.6 Multiple Spindle Control Relation with other functions (1) Spindle clamp speed setting (G92) This is valid only on the spindle selected with the spindle selection signal (SWS). The spindle not selected with the spindle selection signal (SWS) maintains the speed at which it was rotating at before being canceled.
  • Page 172: Tool Functions (T Command)

    11. Tool Functions (T command) 11.1 Tool Functions (T8-digit BCD) 11. Tool Functions (T command) 11.1 Tool Functions (T8-digit BCD) Function and purpose The tool functions are also known simply as T functions and they assign the tool numbers and tool offset number.
  • Page 173: Tool Compensation Functions

    12. Tool Compensation Functions 12.1 Tool Compensation 12. Tool Compensation Functions 12.1 Tool Compensation Function and purpose The basic tool compensation function includes the tool length compensation and tool radius compensation. Each compensation amount is designated with the tool compensation No. Each compensation amount is input from the setting and display unit or the program.
  • Page 174 12. Tool Compensation Functions 12.1 Tool Compensation Tool compensation memory There are two types of tool compensation memories for setting and selecting the tool compensation amount. (The type used is determined by the machine maker specifications.) The compensation amount settings are preset with the setting and display unit. Type 1 is selected when parameter "#1037 cmdtyp"...
  • Page 175 12. Tool Compensation Functions 12.1 Tool Compensation Type 1 One compensation amount corresponds to one compensation No. as shown on the right. Thus, these can be used commonly regardless of the tool length compensation amount, tool radius compensation amount, shape compensation amount and wear compensation amount. (D1) = a , (H1) = a (D2) = a...
  • Page 176 12. Tool Compensation Functions 12.1 Tool Compensation Tool compensation No. (H/D) This address designates the tool compensation No. (1) H is used for the tool length compensation, and D is used for the tool position offset and tool radius compensation. (2) The tool compensation No.
  • Page 177: Tool Length Compensation/Cancel; G43/G44

    12. Tool Compensation Functions 12.2 Tool Length Compensation/Cancel; G43/G44 12.2 Tool Length Compensation/Cancel; G43/G44 Function and purpose The end position of the movement command can be compensation by the preset amount when this command is used. A continuity can be applied to the program by setting the actual deviation from the tool length value decided during programming as the compensation amount using this function.
  • Page 178 12. Tool Compensation Functions 12.2 Tool Length Compensation/Cancel; G43/G44 (2) Compensation No. (a) The compensation amount differs according to the compensation type. Type 1 G43 Hh When the above is commanded, the compensation amount lh commanded with compensation No. h will be applied commonly regardless of the tool length compensation amount, tool radius...
  • Page 179 12. Tool Compensation Functions 12.2 Tool Length Compensation/Cancel; G43/G44 (3) Axis valid for tool length compensation (a) When parameter "#1080 Dril_Z" is set to "1", the tool length compensation is always applied on the Z axis. (b) When parameter "#1080 Dril_Z" is set to "0", the axis will depend on the axis address commanded in the same block as G43.
  • Page 180: Tool Length Compensation In The Tool Axis Direction ; G43.1/G44

    12. Tool Compensation Functions 12.3 Tool Length Compensation in the Tool Axis Direction ; G43.1/G44 12.3 Tool Length Compensation in the Tool Axis Direction ; G43.1/G44 Function and purpose (1) Changes in the tool length compensation in the tool axis direction and compensation amount The tool length can be compensated in the tool axis direction even when the rotation axis rotates and the tool axis direction becomes other than the Z axis direction.
  • Page 181 12. Tool Compensation Functions 12.3 Tool Length Compensation in the Tool Axis Direction ; G43.1/G44 Detailed description (1) G43 and G43.1 are all G codes in the same group. Therefore, it is not possible to designate more than one of these commands simultaneously for compensation. G44 is used to cancel the G43 and G43.1 commands.
  • Page 182 12. Tool Compensation Functions 12.3 Tool Length Compensation in the Tool Axis Direction ; G43.1/G44 (Example) When changing compensation amount during single block stop. Changed compensation Changed amount compensation Path after amount compensation Compensation amount before change Program path Workpiece Single block stop (Note 3) When changing compensation amount, the compensation amount corresponding to the actual compensation No.
  • Page 183 12. Tool Compensation Functions 12.3 Tool Length Compensation in the Tool Axis Direction ; G43.1/G44 (3) Rotary axis angle command The value used for the angle of the rotary axis (tool tip axis) differs according to the type of rotary axis involved. When servo axes are used: The machine coordinate position is used for the rotation angles of the A, B and C axes.
  • Page 184 12. Tool Compensation Functions 12.3 Tool Length Compensation in the Tool Axis Direction ; G43.1/G44 Example of program (1) Example of arc machining Shown below is an example of a program for linear → arc → arc → linear machining using the B and C rotary axes on the ZX plane.
  • Page 185 12. Tool Compensation Functions 12.3 Tool Length Compensation in the Tool Axis Direction ; G43.1/G44 Relation with other functions (1) Relation with 3-dimensional coordinate conversion (a) A program error (P931) will occur if 3-dimensional coordinate conversion is carried out during tool length compensation in the tool axis direction. (b) A program error (P921) will occur if the tool length is compensated in the tool axis direction during 3-dimensional coordinate conversion.
  • Page 186 12. Tool Compensation Functions 12.3 Tool Length Compensation in the Tool Axis Direction ; G43.1/G44 (b) Reference position return for the rotary axis Tool length compensation in the tool axis direction will be canceled, as well as the dog-type reference position return and the high-speed reference position return. <A axis Manual reference position return>...
  • Page 187: Tool Radius Compensation; G38, G39/G40/G41,G42

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4 Tool Radius Compensation; G38, G39/G40/G41,G42 Function and purpose This function compensates the radius of the tool. The compensation can be done in the random vector direction by the radius amount of the tool selected with the G command (G38 to G42) and the D command.
  • Page 188: Tool Radius Compensation Operation

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.1 Tool Radius Compensation Operation Tool radius compensation cancel mode The tool radius compensation cancel mode is established by any of the following conditions. (1) After the power has been switched on (2) After the reset button on the setting and display unit has been pressed (3) After the M02 or M30 command with reset function has been executed (4) After the tool radius compensation cancel command (G40) has been executed...
  • Page 189 12. Tool Compensation Functions 12.4 Tool Radius Compensation Start of movement for tool radius compensation (1) For inner side of corner Linear Circular Linear Linear θ θ Program path Program r = Compensation amount path Tool center path Tool center path Start point Start point...
  • Page 190 12. Tool Compensation Functions 12.4 Tool Radius Compensation (3) For outer side of corner (obtuse angle) [0<90°] Linear Linear(Type A) Linear Circular(Type A) Center of circular Tool center path Program path Tool center path θ θ Program path Start point Start point Linear Circular(Type B)
  • Page 191 12. Tool Compensation Functions 12.4 Tool Radius Compensation Operation in compensation mode Relative to the program path (G00, G01, G02, G03), the tool center path is found from the straight line/circular arc to make compensation. Even if the same compensation command (G41, G42) is issued in the compensation mode, the command will be ignored.
  • Page 192 12. Tool Compensation Functions 12.4 Tool Radius Compensation Circular Linear (90°≤θ<180°) Circular Linear (0°<θ<90°) Center of circular Program path Program path θ θ Tool center path Tool center path Center of circular Point of intersection Circular Circular (90°≤θ<180°) Circular Circular (0°<θ<90°) Center of circular Program path θ...
  • Page 193 12. Tool Compensation Functions 12.4 Tool Radius Compensation (2) Machining an inner wall Linear Linear (Acute angle) Linear Linear (Obtuse angle) θ θ Program path Program path Tool center path Tool center path Point of intersection Linear Circular (Acute angle) Linear Circular (Obtuse angle) θ...
  • Page 194 12. Tool Compensation Functions 12.4 Tool Radius Compensation (3) When the arc end point is not on the arc For spiral arc ......A spiral arc will be interpolated from the start to end point of the arc. For normal arc command..If the error after compensation is within parameter "#1084 RadErr", the area from the arc start point to the end point is interpolated as a spiral arc.
  • Page 195 12. Tool Compensation Functions 12.4 Tool Radius Compensation Tool radius compensation cancel operation (1) For inner side of corner Linear Linear Circular Linear θ θ Program path r = Compensation amount Program path Tool center path Tool center path End point End point Center of circular (2) For outer side of corner (obtuse angle)
  • Page 196 12. Tool Compensation Functions 12.4 Tool Radius Compensation (3) For outer side of corner (acute angle) Circular Linear (Type A) Linear Linear (Type A) Center of circular Tool center path Tool center path Program path θ Program path θ End point End point Circular Linear (Type B)
  • Page 197: Other Commands And Operations During Tool Radius Compensation

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.2 Other Commands and Operations During Tool Radius Compensation Insertion of corner arc An arc that uses the compensation amount as the radius is inserted without calculating the point of intersection at the workpiece corner when G39 (corner arc) is commanded. Point of Inserted intersection...
  • Page 198 12. Tool Compensation Functions 12.4 Tool Radius Compensation Changing and holding of compensation vector The compensation vector can be changed or held during tool radius compensation by using the G38 command. (1) Holding of vector: When G38 is commanded in a block having a movement command, the point of intersection will not be calculated at the program end point, and instead the vector of the previous block will be held.
  • Page 199 12. Tool Compensation Functions 12.4 Tool Radius Compensation Changing the compensation direction during tool radius compensation The compensation direction is determined by the tool radius compensation commands (G41, G42) and compensation amount sign. Compensation amount sign G code Left-hand compensation Right-hand compensation Right-hand compensation Left-hand compensation...
  • Page 200 12. Tool Compensation Functions 12.4 Tool Radius Compensation Circular → Circular Tool center path Circular center ‚’ ’ Program path ‚’ ’ Circular center Linear return Tool center path Program path In the case below, it is possible that the arc Arc exceeding 360°...
  • Page 201 12. Tool Compensation Functions 12.4 Tool Radius Compensation Command for eliminating compensation vectors temporarily When the following command is issued in the compensation mode, the offset vectors are temporarily eliminated and a return is then made automatically to the compensation mode. In this case, the compensation is not canceled, and the tool goes directly from the intersection point vector to the point without vectors or, in other words, to the programmed command point.
  • Page 202 12. Tool Compensation Functions 12.4 Tool Radius Compensation Blocks without movement and pre-read inhibit M command The following blocks are known as blocks without movement. a. M03 ; .........M command b. S12 ; ........S command c. T45 ; ........T command d.
  • Page 203 12. Tool Compensation Functions 12.4 Tool Radius Compensation (2) When command is assigned in the compensation mode When 4 or more blocks without movement follow in succession in the compensation mode or when there is no pre-read inhibit M code, the intersection point vectors will be created as usual.
  • Page 204 12. Tool Compensation Functions 12.4 Tool Radius Compensation When I, J, K are commanded in G40 (1) If the final movement command block in the four blocks before the G40 block is the G41 or G42 mode, it will be assumed that the movement is commanded in the vector I, J or K direction from the end point of the final movement command.
  • Page 205 12. Tool Compensation Functions 12.4 Tool Radius Compensation (2) If the arc is 360° or more due to the details of I, J and K at G40 after the arc command, an uncut section will occur. Uncut section N1 (G42,G91) G01X200. ; (i,j) N2 G02 J150.
  • Page 206: G41/G42 Commands And I, J, K Designation

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.3 G41/G42 Commands and I, J, K Designation Function and purpose The compensation direction can be intentionally changed by issuing the G41/G42 command and I, J, K in the same block. Command format G17 (XY plane) G41/G42 X__ Y__ I__ J__ ;...
  • Page 207 12. Tool Compensation Functions 12.4 Tool Radius Compensation (3) When I, J has been commanded in the G41/G42 mode (G17 plane) (I,J)N110 (G17 G41 G91) N100 N100 G41 G00X150. J50. ; N120 N110 G02 I150. ; N120 G00 X−150. ; (N120) (1) I, J type vector (2) Intersection point calculation...
  • Page 208 12. Tool Compensation Functions 12.4 Tool Radius Compensation (4) When I, J has been commanded in a block without movement N1 G41 D1 G01 F1000 ; (I,J) N2 G91 X100. Y100. ; N3 G41 I50. ; N4 X150. ; N5 G40 ; Direction of compensation vectors (1) In G41 mode Direction produced by rotating the direction commanded by I, J through 90°...
  • Page 209 12. Tool Compensation Functions 12.4 Tool Radius Compensation Selection of compensation modal The G41 or G42 modal can be selected at any time. N1 G28 X0 Y0 ; N2 G41 D1 F1000 ; N3 G01 G91 X100. Y100. ; N4 G42 X100. I100. J-100. D2 ; (I,J) N5 X100.
  • Page 210 12. Tool Compensation Functions 12.4 Tool Radius Compensation Precautions (1) Issue the I, J type vector in a linear mode (G0, G1). If it is issued in an arc mode at the start of compensation, program error (P151) will occur. An IJ designation in an arc mode functions as an arc center designation in the compensation mode.
  • Page 211 12. Tool Compensation Functions 12.4 Tool Radius Compensation (4) Refer to the following table for the offset methods based on the presence and/or absence of the G41 and G42 commands and I, J, (K) command. G41/G42 I, J (K) Offset method Intersection point calculation type vector Intersection point calculation type vector Intersection point calculation type vector...
  • Page 212: Interrupts During Tool Radius Compensation

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.4 Interrupts During Tool Radius Compensation MDI interrupt Tool radius compensation is valid in any automatic operation mode-whether tape, memory or MDI operation. An interrupt based on MDI will give the result as in the figure below after block stop during tape or memory operation.
  • Page 213 12. Tool Compensation Functions 12.4 Tool Radius Compensation Manual interrupt (1) Interrupt with manual absolute OFF. Tool path after interrupt The tool path is shifted by an amount equivalent to the interrupt amount. Tool path after Interrupt compensation Program path (2) Interrupt with manual absolute ON.
  • Page 214: General Precautions For Tool Radius Compensation

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.5 General Precautions for Tool Radius Compensation Precautions (1) Designating the offset amounts The offset amounts can be designated with the D code by designating an offset amount No. Once designated, the D code is valid until another D code is commanded. If an H code is designated, the program error (P170) No COMP No will occur.
  • Page 215: Changing Of Compensation No. During Compensation Mode

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.6 Changing of Compensation No. During Compensation Mode Function and purpose As a principle, the compensation No. must not be changed during the compensation mode. If changed, the movement will be as shown below. When offset No.
  • Page 216 12. Tool Compensation Functions 12.4 Tool Radius Compensation (2) Linear circular Tool center path N102 Program path N101 Tool center path Center of circular Program path N101 N102 Center of circular (3) Circular circular Tool center path Program path N101 N102 Center of circular Center of circular...
  • Page 217: Start Of Tool Radius Compensation And Z Axis Cut In Operation

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.7 Start of Tool Radius Compensation and Z Axis Cut in Operation Function and purpose Often when starting cutting, a method of applying a radius compensation (normally the XY plane) beforehand at a position separated for the workpiece, and then cutting in with the Z axis is often used.
  • Page 218 12. Tool Compensation Functions 12.4 Tool Radius Compensation In this case, consider the calculation of the inner side, and before the Z axis cutting, issue a command in the same direction as the direction that the Z axis advances in after lowering, to prevent excessive cutting.
  • Page 219: Interference Check

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.8 Interference Check Function and purpose (1) Outline A tool, whose radius has been compensated with the tool radius compensation function by the usual 2-block pre-read, may sometimes cut into the workpiece. This is known as interference, and interference check is the function which prevents this from occurring.
  • Page 220 12. Tool Compensation Functions 12.4 Tool Radius Compensation (3) With interference check invalid function The tool passes while cutting the N1 and N3 line. (4)' (3)' (2)' (1)' Example of interference check → No interference Vectors (1) (4)' check ↓ →...
  • Page 221 12. Tool Compensation Functions 12.4 Tool Radius Compensation Conditions viewed as interference If there is a movement command in three of the five pre-read blocks, and if the compensation calculation vectors created at the contacts of each movement command intersect, it will be viewed as interference.
  • Page 222 12. Tool Compensation Functions 12.4 Tool Radius Compensation Operation during interference avoidance The movement will be as shown below when the interference avoidance check is used. Tool center path Program path Solid line vector : Valid Tool center path when interference is avoided Dotted line vector : Invalid Tool center path without interference check Program path...
  • Page 223 12. Tool Compensation Functions 12.4 Tool Radius Compensation Avoidance vector Tool center path Avoidance vector Program path If all of the line vectors for the interference avoidance are deleted, create a new avoidance vector as shown on the right to avoid the interference.
  • Page 224 12. Tool Compensation Functions 12.4 Tool Radius Compensation Interference check alarm The interference check alarm occurs under the following conditions. (1) When the interference check alarm function has been selected (a) When all the vectors at the end block of its own block have been deleted. When, as shown in the figure, vectors 1 through 4 at the end point of the N1 block have all...
  • Page 225 12. Tool Compensation Functions 12.4 Tool Radius Compensation (b) When avoidance vectors cannot be created Even when, as in the figure, the conditions for Alarm stop creating the avoidance vectors are met, it may still be impossible to create these vectors or the interference vectors may interfere with N3.
  • Page 226: Diameter Designation Of Compensation Amount

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.9 Diameter Designation of Compensation Amount Function and purpose With this function, the tool radius compensation amount can be designated by tool diameter. When the control parameter “#8117 OFS Diam DESIGN” is ON, the compensation amount specified to the commanded tool No.
  • Page 227 12. Tool Compensation Functions 12.4 Tool Radius Compensation (b) Linear to arc (obtuse angle) Outside of the corner Inside of the corner θ θ Program path Program path Tool center path (When #8117 is ON) Tool center path Arc center (When #8117 is OFF) Arc center (c) Arc to linear (obtuse angle)
  • Page 228: Workpiece Coordinate Changing During Radius Compensation

    12. Tool Compensation Functions 12.4 Tool Radius Compensation 12.4.10 Workpiece Coordinate Changing During Radius Compensation Function and purpose When the tool radius compensation is executed, the tool center path is calculated based on the position on the coordinate system. The based coordinate system can be changed by the parameter.
  • Page 229 12. Tool Compensation Functions 12.4 Tool Radius Compensation The coordinate system changed by parameter is as follows. G90 G54 G00 X15. Y20. N1 G41 D3 X5. Y10.; N2 G01 Y-20. F1000; N3 G40 X30.; M30; D3 = 5.000 G54 offset X15.000 Y15.000 (i) Parameter = 0...
  • Page 230: Three-Dimensional Tool Radius Compensation ; G40/G41,G42

    12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 Function and purpose The three-dimensional tool radius compensation compensates the tool in a three-dimensional space following the commanded three-dimensional vectors. Tool Tool center coordinate position Plane normal line vector...
  • Page 231 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 Command format Command the compensation No. D and plane normal line vector (I, J, K) in the same block as the three-dimensional tool radius compensation command G41 (G42). If only one or two axes are commanded, the normal tool radius compensation mode will be applied. (When setting "0"...
  • Page 232 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 Example of operation (1) Compensation start: When there is a movement command G41 xx Yy Zz Ii Jj Kk Dd ; Tool center path Three-dimensional compensation vector Program path Start point (2) Compensation start: When there is no movement command G41 Ii Jj Kk Dd ;...
  • Page 233 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 (5) Movement during the compensation: For arc or helical cutting The I, J, K commands for a circular or helical cutting are regarded as the circular center commands, thus, the new vector is equivalent to the old vector. Even for the R-designation method, commanded I, J, K addresses will be ignored, then the new vector will be equivalent to the old vector.
  • Page 234 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 (7) Movement during the compensation: When compensation direction is to be changed G41 Xx Yy Zz Ii Jj Kk Dd1 ; New vector G42 Xx Yy Zz Ii Jj Kk ; Tool center path Old vector...
  • Page 235 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 Relation with other functions (1) Normal tool radius compensation If the plane normal line vector (I, J, K) is not commanded for all three axes in the three-dimensional tool radius compensation start block, the normal tool radius compensation mode will take place.
  • Page 236 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 (6) Program coordinate rotation Program coordinate rotation is executed in respect to the coordinates before three-dimensional tool radius compensation. The plane normal line vector (I, J, K) dose not rotate. D1=10.
  • Page 237 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 (12) Machine coordinate system selection (a) For the absolute command, all axes will be temporarily canceled at the commanded coordinate position. D1=10. -50. -30. -20. -10. G90 ; N1 G41 D1 X-10. Y-20. Z-10. I-5. Program path J-5.
  • Page 238 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 (13) Coordinate system setting When commanded in the same block as the coordinate system setting, the coordinate system will be set, and operation will start up independently with the plane normal line vector (I, J, K).
  • Page 239 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 (14) Reference position return All the axes will be temporarily canceled at the intermediate point. D1=10. -70. -50. -30. -20. G91 ; M(0,0) N1 G41 D1 X-10. Y-20. Z-10. I-5. -50.
  • Page 240 12. Tool Compensation Functions 12.5 Three-dimensional Tool Radius Compensation ; G40/G41,G42 Restrictions (1) The compensation No. is selected with the D address, however, the D address is valid only when G41 or G42 is commanded. If D is not commanded, the number of the previous D address will be valid.
  • Page 241: Tool Position Offset; G45 To G48

    12. Tool Compensation Functions 12.6 Tool Position Offset; G45 to G48 12.6 Tool Position Offset; G45 to G48 Function and purpose Using the G45 to G46 commands, the movement distance of the axes specified in the same block can be extended or reduced by a preset compensation length. Furthermore, the compensation amount can be similarly doubled (x 2 expansion) or halved (x 2 reduction) with commands G47 and G48.
  • Page 242 12. Tool Compensation Functions 12.6 Tool Position Offset; G45 to G48 Detailed description Details for incremental values are given below. Movement amount of equivalent command Example Command (assigned compensation (when X = 1000) amount = l) l = 10 1010 G45Xx Dd X ( x + l ) l = −10...
  • Page 243 12. Tool Compensation Functions 12.6 Tool Position Offset; G45 to G48 (4) In the case of circular interpolation, cutter compensation is possible using the G45 to G48 commands only for one quadrant, two quadrants (semi-sphere) or three quadrants when the start and end points are on the axis.
  • Page 244 12. Tool Compensation Functions 12.6 Tool Position Offset; G45 to G48 Example of program (Example 1) End point Tool nose center path Programmed 1000 path Tool Start point 1000 Programmed arc center Tool position offset with 1/4 arc command It is assumed that compensation has already been provided in the + X direction by D01 = 200.
  • Page 245 12. Tool Compensation Functions 12.6 Tool Position Offset; G45 to G48 When a command for "n" number of simultaneous axes is given, the same compensation will be applied to all axes. It is valid even for the additional axes (but it must be within the range of the number of axes which can be controlled simultaneously.) G01 G45X220.
  • Page 246 12. Tool Compensation Functions 12.6 Tool Position Offset; G45 to G48 (Example 2) Tool nose center path N1 G46 G00 Xx1 Yy1 Dd1 ; N2 G45 G01 Yy2 Ff2 ; N3 G45 G03 Xx3 Yy3 Ii3 ; N4 G01 Xx4 ; Programmed path (Example 3) When the G45 to G48 command is assigned, the compensation amount for each pass...
  • Page 247 12. Tool Compensation Functions 12.6 Tool Position Offset; G45 to G48 Compensation amount D01 = 10.000mm (Offset amount of tool radius) N100 X40.0 Y40.0 D01 ; N101 X100.0 F200 N102 X10.0 Y10.0 J10.0 ; N103 Y40.0 N104 N105 X−20.0 Y20.0 J20.0 ;...
  • Page 248: Programmed Compensation Input; G10, G11.1

    12. Tool Compensation Functions 12.7 Programmed Compensation Input; G10, G11.1 12.7 Programmed Compensation Input; G10, G11.1 Function and purpose The tool compensation and workpiece offset can be set or changed on the tape using the G10 command. During the absolute value (G90) mode, the commanded compensation amount will become the new compensation amount, and during the incremental value (G91) mode, the commanded compensation amount will be added to the currently set compensation amount to create the new compensation amount.
  • Page 249 12. Tool Compensation Functions 12.7 Programmed Compensation Input; G10, G11.1 Detailed description (1) Program error (P171) will occur if this command is input when the specifications are not available. (2) G10 is an unmodal command and is valid only in the commanded block. (3) The G10 command does not contain movement, but must not be used with G commands other than G54 to G59, G90 or G91.
  • Page 250 12. Tool Compensation Functions 12.7 Programmed Compensation Input; G10, G11.1 (Example 2) Assume that H10 = -1000 is already set. Main program G00 X100000 ; #1 = -1000 ; G22 L1111 L4 ; Subprogram L1111 G01 G91 G43 Z0 H10 F100 ; G01 X1000 ;...
  • Page 251 12. Tool Compensation Functions 12.7 Programmed Compensation Input; G10, G11.1 (3) When updating the workpiece coordinate system offset amount Assume that the previous workpiece coordinate system offset amount is as follows. X = −10.000 Y = −10.000 N100 G00 G90 G54 X0 Y0 ; N101 G90 G10 L2 P1 X−15.000 Y−15.000 ;...
  • Page 252 12. Tool Compensation Functions 12.7 Programmed Compensation Input; G10, G11.1 (4) When using one workpiece coordinate system as multiple workpiece coordinate systems #1 = −50. #2 = 10. ; L200 P5 ; Main program M02 ; G90 G54 G10 L2 P1 X#1 Y#1 ; G00 X0 Y0 ;...
  • Page 253: Compensation Data Input To Variable By Program; G11

    12. Tool Compensation Functions 12.8 Compensation Data Input to Variable by Program; G11 12.8 Compensation Data Input to Variable by Program; G11 Function and purpose Using G11, the compensation amount of the No. commanded as the transmission source can be set into the arbitrary variable.
  • Page 254: Inputting The Tool Life Management Data; G10, G11

    12. Tool Compensation Functions 12.9 Inputting the Tool Life Management Data; G10, G11 12.9 Inputting the Tool Life Management Data; G10, G11 12.9.1 Inputting the Tool Life Management Data by G10 L3 Command Function and purpose Using the G10 command (unmodal command), the tool life management data can be registered, changed and added to, and preregistered groups can be deleted.
  • Page 255 12. Tool Compensation Functions 12.9 Inputting the Tool Life Management Data; G10, G11 Example of operation Program example Operation Data G10 L3; 1. After deleting all group data, the registration starts. registration P10 L10 Q1; 2. Group No. 10 is registered. T10 H10 D10;...
  • Page 256: Inputting The Tool Life Management Data By G10 L30 Command

    12. Tool Compensation Functions 12.9 Inputting the Tool Life Management Data; G10, G11 12.9.2 Inputting the Tool Life Management Data by G10 L30 Command Function and purpose Using the G10 command (unmodal command), the tool life management data can be registered, changed and added to, and preregistered groups can be deleted.
  • Page 257 12. Tool Compensation Functions 12.9 Inputting the Tool Life Management Data; G10, G11 (3) Deleting a group G10 L30 P2; Start of life management data deletion Delete the group No. Delete next group No. G11 ; End life management data deletion : Group No.
  • Page 258 12. Tool Compensation Functions 12.9 Inputting the Tool Life Management Data; G10, G11 Command range Item Command range Group No. (Pn) 1 to 99999999 Tool No. (Tn) 1 to 99999999 Control method (Qabc) abc : Three integer digits a. Tool length compensation data format 0: Compensation No.
  • Page 259: Precautions For Inputting The Tool Life Management Data

    12. Tool Compensation Functions 12.9 Inputting the Tool Life Management Data; G10, G11 12.9.3 Precautions for Inputting the Tool Life Management Data Precautions (1) The tool life data is registered, changed, added to or deleted by executing the program in the memory or MDI mode.
  • Page 260: Fixed Cycles

    13. Program Support Functions 13.1 Fixed Cycles 13. Program Support Functions 13.1 Fixed Cycles 13.1.1 Standard Fixed Cycles; G80 to G89, G73, G74, G75, G76 Function and purpose These standard canned cycles are used for predetermined sequences of machining operations such as positioning, hole drilling, boring, tapping, etc.
  • Page 261 13. Program Support Functions 13.1 Fixed Cycles Command format (1) Label L G8Δ (G7Δ) X__ Y__ Z__ R__ Q__ P__(E__) F__ L__(H__) S__ ,S__ ,I__ ,J__ ; G8Δ (G7Δ) X__ Y__ Z__ R__ Q__ P__(E__) F__ L__(H__) S__ ,R__ ,I__ ,J__ ; : Hole machining mode G8Δ...
  • Page 262 13. Program Support Functions 13.1 Fixed Cycles Detailed description (1) Outline of data and corresponding addresses (a) Hole machining mode: Canned cycle modes such as drilling, counter boring, tapping and boring. (b) Hole position data: Data used to position the X and Y axes. (Unmodal) (c) Hole machining data: Actual machining data used for machining.
  • Page 263 13. Program Support Functions 13.1 Fixed Cycles (4) Canned cycle addresses and meanings Address Significance Label L Label O Selection of hole machining cycle sequence (G80 to G89, G73, G74, G76) Designation of hole drilling position (absolute value or incremental value) Designation of hole drilling position (absolute value or incremental value) Designation of hole bottom position (absolute value or...
  • Page 264 13. Program Support Functions 13.1 Fixed Cycles (5) Difference between absolute value command and incremental value command For absolute value For incremental value R point R point Workpiece Workpiece (6) Feed rate for tapping cycle and tapping return The feed rates for the tapping cycle and tapping return are as shown below. (a) Selection of synchronous tapping cycle/asynchronous tapping cycle Control parameter Synchronous/...
  • Page 265 13. Program Support Functions 13.1 Fixed Cycles (c) Spindle rotation speed during return of synchronous tapping cycle Meaning of Command Address Remarks address range (unit) Spindle 0 to 99999 The data is held as modal information. rotation If the value is smaller than the speed (r/min) speed during rotation speed, the speed rotation speed...
  • Page 266 13. Program Support Functions 13.1 Fixed Cycles Programmable in-position width command in fixed cycle This command commands the in-position width for the fixed cycle from the machining program. The commanded in-position width is valid only in the G81 (drill, spot drill), G82 (drill, counter boring), G83 (deep drill cycle), G84 (tap cycle), G85 (boring), G89 (boring), G73 (step cycle) and G74 (reverse tap cycle) fixed cycles.
  • Page 267 13. Program Support Functions 13.1 Fixed Cycles Operation Operation5 Operation9 Operation1 pattern -10. -10. -50. Operation 1 Valid – Opera- Opera- Operation 2 – Invalid tion10 tion6 Operation2 Operation 3 – Invalid Operation 4 – Valid Operation 5 Invalid – Opera- Opera- Operation3...
  • Page 268 13. Program Support Functions 13.1 Fixed Cycles (2) Relation between the in-position width and tap axis movement for a synchronous tap in-position check (1) Section in which the in- R point Hole bottom position check is carried out by the sv024 value. (2) Section in which the in- ↑...
  • Page 269 13. Program Support Functions 13.1 Fixed Cycles (3) Relation between the parameter setting values and tap axis movement for a synchronous tap in-position check #1223 aux07 Bit3 Bit4 Bit5 Bit2 Hole bottom Operation Operation Operation at Synchronous → I point R point wait time at hole bottom...
  • Page 270 13. Program Support Functions 13.1 Fixed Cycles Movement when executing each fixed cycles (a) G81 (Drilling, spot drilling) Program G81 Xx1 Yy1 Zz1 Rr1 Ff1 ,Ii1 ,Jj1; (1) G0 Xx (2) G0 Zr (3) G1 Zz (4) G98 mode G0Z − (z G99 mode G0Z −...
  • Page 271 13. Program Support Functions 13.1 Fixed Cycles (c) G83 (Deep hole drilling cycle) Program G83 Xx Q : This designates the cutting amount per pass, and is always designated with an incremental value. (3) (4) (10) (1) G0 Xx (2) G0 Zr (3) G1 Zq (4) G0 Z −...
  • Page 272 13. Program Support Functions 13.1 Fixed Cycles (d) G84 (Tapping cycle) Program G84 Xx (or S ) ,Ii P : Dwell designation (1) G0 Xx (2) G0 Zr (3) G1 Zz (4) G4 Pp (5) M4 (Spindle reverse rotation) (7) (8) (6) G1 Z −...
  • Page 273 13. Program Support Functions 13.1 Fixed Cycles This function allows spindle acceleration/deceleration pattern to be approached to the speed loop acceleration/deceleration pattern by dividing the spindle and drilling axis acceleration/deceleration pattern into up to three stages during synchronous tapping. The acceleration/deceleration pattern can be set up to three stages for each gear. When returning from the hole bottom, rapid return is possible depending on the spindle rotation speed during return.
  • Page 274 13. Program Support Functions 13.1 Fixed Cycles (ii) When synchronous tap changeover spindle rotation speed 2 < spindle rotation speed during return Smax S(S1) S'(Smax) : Command spindle rotation speed : Spindle rotation speed during return : Tap rotation speed (spindle base specification parameters #3013 to #3016) : Synchronous tap changeover spindle rotation speed 2 (spindle base specification parameters #3037 to #3040) Smax : Maximum rotation speed (spindle base specification parameters #3005 to...
  • Page 275 13. Program Support Functions 13.1 Fixed Cycles (e) G85 (Boring) Program G85 Xx (1) G0 Xx (2) G0 Zr (3) G1 Zz (4) G1 Z − z G98 mode G0Z − r G99 mode No movement G98 G99 mode mode Operation pattern Valid...
  • Page 276 13. Program Support Functions 13.1 Fixed Cycles (g) G87 (Back boring) Program G87 Xx (Note) Take care to the z and r designations. (The z and r symbols are reversed). There is no R point return. G0 Xx M19 (Spindle orient) G0 Xq ) (Shift) (12)(11)
  • Page 277 13. Program Support Functions 13.1 Fixed Cycles (h) G88 (Boring) Program G88 Xx (1) G0 Xx (2) G0 Zr (3) G1 Zz (4) G4 Pp (5) M5 (Spindle stop) (6) Stop when single block stop switch is ON. (7) Automatic start switch ON G98 mode G0Z −...
  • Page 278 13. Program Support Functions 13.1 Fixed Cycles G73 (Step cycle) Program G73 Xx P : Dwell designation (1) G0 Xx (2) G0 Zr (3) G1 Zq (n) -1 (4) G4 Pp (5) G0 Z − m (6) G1 Z (q + m) Ff mode mode...
  • Page 279 13. Program Support Functions 13.1 Fixed Cycles (k) G74 (Reverse tapping cycle) Program G74 Xx (or S ) ,Ii P : Dwell designation (1) G0 Xx (2) G0 Zr (3) G1 Zz (4) G4 Pp (7)(8) (5) M3 (Spindle forward rotation) (7) (8) (6) G1 Z –...
  • Page 280 13. Program Support Functions 13.1 Fixed Cycles This function allows spindle acceleration/deceleration pattern to be approached to the speed loop acceleration/deceleration pattern by dividing the spindle and drilling axis acceleration/deceleration pattern into up to three stages during synchronous tapping. The acceleration/deceleration pattern can be set up to three stages for each gear. When returning from the hole bottom, rapid return is possible depending on the spindle rotation speed during return.
  • Page 281 13. Program Support Functions 13.1 Fixed Cycles (ii) When synchronous tap changeover spindle rotation speed 2 < spindle rotation speed during return Smax S(S1) S'(Smax) : Command spindle rotation speed : Spindle rotation speed during return : Tap rotation speed (spindle base specification parameters #3013 to #3016) : Synchronous tap changeover spindle rotation speed 2 (spindle base specification parameters #3037 to #3040) Smax : Maximum rotation speed (spindle base specification parameters #3005 to...
  • Page 282 13. Program Support Functions 13.1 Fixed Cycles (iii) Pecking tapping cycle The load applied to the tool can be reduced by designating the depth of cut per pass (Q) and cutting the workpiece to the hole bottom for a multiple number of passes. The amount retracted from the hole bottom is set to the parameter "#8018 G84/G74 return".
  • Page 283 13. Program Support Functions 13.1 Fixed Cycles (iv) Deep-hole tapping cycle In the deep-hole tapping, the load applied to the tool can be reduced by designating the depth of cut per pass and cutting the workpiece to the hole bottom for a multiple number of passes.
  • Page 284 13. Program Support Functions 13.1 Fixed Cycles G75 (Fine boring) Circle cutting cycle performs a series of the cutting as follows: First: positioning of X and Y axes to the circle center. Next: cutting in with Z axis to the commanded position. Then: moving the perfect round cutting the inside of the circle.
  • Page 285 13. Program Support Functions 13.1 Fixed Cycles (m) G76 (Fine boring) Program G76 Xx (1) G0 Xx (2) G0 Zr (3) G1 Zz (4) M19 (Spindle orient) (5) G1 Xq ) Ff (Shift) G98 mode G0Z − (z G99 mode G0Z − z (7) G0 X −...
  • Page 286 13. Program Support Functions 13.1 Fixed Cycles Precautions for using canned cycle (1) Before the canned cycle is commanded, the spindle must be rotating in a specific direction with an M command (M3 ; or M4 ;). Note that for the G87 (back boring) command, the spindle rotation command is included in the canned cycle so only the rotation speed command needs to be commanded beforehand.
  • Page 287 13. Program Support Functions 13.1 Fixed Cycles (12) If the spindle rotation speed value during return is smaller than the spindle speed, the spindle rotation speed value is valid even during return. (13) If the 2nd and 3rd acceleration/deceleration stage inclinations following the spindle rotation speed and time constants set in the parameters are each steeper than the previous stage's inclination, the previous stage's inclination will be valid.
  • Page 288: Drilling Cycle With High-Speed Retract

    13. Program Support Functions 13.1 Fixed Cycles 13.1.2 Drilling Cycle with High-Speed Retract Function And Purpose This function retracts the drill from the hole bottom at high speed in drilling machining. This function helps extending the drill life by reducing the time of drilling in vain at hole bottom. <When Axis prefiltering is enabled>...
  • Page 289 13. Program Support Functions 13.1 Fixed Cycles (c) If the drilling axis is synchronously controlled, set the same value in both parameters for primary and secondary axes. (3) While G80 (Fixed cycle cancel) command is issued, this function is canceled by issuing any other fixed cycle of the same group (Group 9) or any Group 1 command.
  • Page 290 13. Program Support Functions 13.1 Fixed Cycles (3) Operation of G73 command Initial point Start point G98 mode 1) Moves from start point to initial point (2) Moves from initial point to R point (3) Cutting feed G99 mode R point (4) Retracted at high-speed (5) Moves to the position set with “G73 return amount“...
  • Page 291: Initial Point And R Point Level Return; G98, G99

    13. Program Support Functions 13.1 Fixed Cycles 13.1.3 Initial Point and R Point Level Return; G98, G99 Function and purpose Whether to use R point or initial level for the return level in the final sequence of the canned cycle can be selected.
  • Page 292 13. Program Support Functions 13.1 Fixed Cycles Example of program (Example 1) Record only the hold machining data G82 Zz L0 ; (Do not execute) Execute hole drilling operation with G82 mode The No. of canned cycle repetitions is designated with L. If L1 is designated or L not designated, the canned cycle will be executed once.
  • Page 293: Setting Of Workpiece Coordinates In Fixed Cycle Mode

    13. Program Support Functions 13.1 Fixed Cycles 13.1.4 Setting of Workpiece Coordinates in Fixed Cycle Mode The designated axis moves with the workpiece coordinate system set for the axis. The Z axis is valid after the R point positioning after positioning or from Z axis movement. (Note) When the workpiece coordinates are changed over for address Z and R, re-program even if the values are the same.
  • Page 294: Special Fixed Cycle; G34, G35, G36, G37

    13. Program Support Functions 13.2 Special Fixed Cycle 13.2 Special Fixed Cycle; G34, G35, G36, G37 Function and purpose The special fixed cycle is used with the standard fixed cycle. Before using the special fixed cycle, program the fixed cycle sequence selection G code and hole machining data to record the hole machining data.
  • Page 295 13. Program Support Functions 13.2 Special Fixed Cycle Bolt hole circle (G34) I r J θ K n ; G34 X x X, Y :Positioning of bolt hole cycle center. This will be affected by G90/G91. :Radius r of the circle. The unit follows the input setting unit, and is given with a positive number.
  • Page 296 13. Program Support Functions 13.2 Special Fixed Cycle Line at angle (G35) G35 X x1 Y y1 I d J θ K n ; X, Y :Designation of start point coordinates. This will be affected by G90/G91. :Interval d. The unit follows the input setting unit. If d is negative, the drilling will take place in the direction symmetrical to the point that is the center of the start point.
  • Page 297 13. Program Support Functions 13.2 Special Fixed Cycle Arc (G36) G36 X x1 Y y1 I r J θ P Δθ K n ; X, Y :Center coordinates of arc. This will be affected by G90/G91. :Radius r of arc. The unit follows the input setting unit, and is given with a positive :Angle θ...
  • Page 298 13. Program Support Functions 13.2 Special Fixed Cycle Grid (G37) G37 X x1 Y y1 I Dx P nx J Dy K ny ; X, Y :Designation of start point coordinates. This will be affected by G90/G91. :Interval Dx of the X axis. The unit will follow the input setting unit. If Dx is positive, the interval will be in the forward direction looking from the start point, and when negative, will be in the reverse direction looking from the start point.
  • Page 299: Subprogram Control; G22, G22

    13. Program Support Functions 13.3 Subprogram Control 13.3 Subprogram Control; G22, G22 13.3.1 Calling Subprogram with G22 and G22 Commands Function and purpose Fixed sequences or repeatedly used parameters can be stored in the memory as subprograms which can then be called from the main program when required.G22 serves to call subprograms and G23 serves to return operation from the subprogram to the main program.
  • Page 300 13. Program Support Functions 13.3 Subprogram Control Command format Subprogram call G22 L__ H__ P__ ,D__; or G22 <File name> H__ P__ ,D__ ; Subprogram call command Program No. of subprogram to be called (own program if omitted) A (label O) L(A) address can be omitted only during memory mode and MDI mode.
  • Page 301 13. Program Support Functions 13.3 Subprogram Control (2) Only those subprograms Nos. ranging from 1 to 99999999 designated by the optional specifications can be used. When there are no program Nos. on the tape, they are entered as the setting No. for "program input." (3) Up to 8 nesting levels can be used for calling programs from subprograms, and program error (P230) results if this number is exceeded.
  • Page 302 13. Program Support Functions 13.3 Subprogram Control Example of program 1 When there are 3 subprogram calls (known as 3 nesting levels) Main program Subprogram 1 Subprogram 2 Subprogram 3 L10; L20; G22L1; G22L10; G22L20; (1)’ (2)’ (3)’ M02; G23; G23;...
  • Page 303: Figure Rotation; G22 I_ J_ K

    13. Program Support Functions 13.3 Subprogram Control Example of program 2 The G22 H_ ; G23 H_ ; commands designate the sequence Nos. in a program with a call instruction. G22H__ ; G23H__ ; L123; G22H3; N100___; G22L123; N200_; N300___; N3___;...
  • Page 304 13. Program Support Functions 13.3 Subprogram Control Command format G22 I__ J__ K__ L__ H__ P__ ,D__; or, G22 I__ J__ K__ <File name> H__ P__ ,D__ ; : Subprogram call command I, J, K : Rotation center : Program No. in subprogram to be called. (Own program if omitted.) Note that L can be omitted only during memory operation and MDI operation.
  • Page 305 13. Program Support Functions 13.3 Subprogram Control (4) If the subprogram start point and end point are not on the same circle having the commanded figure rotation center coordinates as the center, the axis will interpolate using the subprogram's end point as the start point, and the end point in the first movement command block in the rotated subprogram as the end point.
  • Page 306: Variable Commands

    13. Program Support Functions 13.4 Variable Commands 13.4 Variable Commands Function and purpose Programming can be endowed with flexibility and general-purpose capabilities by designating variables, instead of giving direct numerical values to particular addresses in a program, and by assigning the values of those variables as required when executing a program. Command format #ΔΔΔ...
  • Page 307 13. Program Support Functions 13.4 Variable Commands (2) Type of variables The following table gives the types of variables. Type of variable Function • Can be used in common Common variables Common Common variables 1 variables 2 throughout main, sub and macro programs.
  • Page 308 13. Program Support Functions 13.4 Variable Commands (Note 5) When the parameter "#1052 MemVal" is set to "1" in multi-part system, a part or all of common variable "#100 to #199" and "#500 to #999" can be shared and used between part systems.
  • Page 309 13. Program Support Functions 13.4 Variable Commands When multi-part system "Common variable for each part system #100 to #199" in other part system can be used. "-100" is set to #100 of 2nd part system. #200100=-100; The variable value of #102 of 2nd part system is set to #101 #101=#200102;...
  • Page 310 13. Program Support Functions 13.4 Variable Commands (3) Variable quotations Variables can be used for all addresses accept L(O), N and / (slash). (a) When the variable value is used directly: X#1......... Value of #1 is used as the X value. (b) When the complement of the variable value is used: X−#2.......
  • Page 311: User Macro Specifications

    13. Program Support Functions 13.5 User Macro Specifications 13.5 User Macro Specifications 13.5.1 User Macro Commands; G65, G66, G66.1, G67, G68(G23) Function and purpose By combining the user macros with variable commands, it is possible to use macro program call, arithmetic operation, data input/output with PLC, control, decision, branch and many other instructions for measurement and other such applications.
  • Page 312: Macro Call Command

    13. Program Support Functions 13.5 User Macro Specifications 13.5.2 Macro Call Command Function and purpose Included among the macro call commands are the simple calls which apply only to the instructed block and also modal calls (types A and B) which apply to each block in the call modal. Simple macro calls Main program Subprogram (Ll...
  • Page 313 13. Program Support Functions 13.5 User Macro Specifications Address and variable number Call instructions and usable address correspondence Argument designation I Variable in macro G65, G66 G66.1 address ∗ ∗ ∗ ∗ : Can be used. : Cannot be used. ∗...
  • Page 314 13. Program Support Functions 13.5 User Macro Specifications (2) Argument designation II Format : A__ B__ C__ I__ J__ K__ I__ J__ K__• • • • Detailed description (a) In addition to address A, B and C, up to 10 groups of arguments with I, J, K serving as 1 group can be designated.
  • Page 315 13. Program Support Functions 13.5 User Macro Specifications Modal call A (movement command call) Subprogram Main program To subprogram G65L l 1 Pp1 <argument>; To main program To subprogram When the block with a movement command is commanded between G66 and G67, the movement command is first executed and then the designated user macro subprogram is executed.
  • Page 316 13. Program Support Functions 13.5 User Macro Specifications (Example) Drill cycle N1 G90 G54 G0 X0Y0Z0; N2 G91 G00 X-50.Y-50.Z-200.; N3 G66 L9010 R-10.Z-30.F100; L9010 N10 G00 Z #18 M0; N4 X-50.Y-50.; To subprogram after axis command execution N20 G09 G01 Z #26 F#9; N5 X-50.;...
  • Page 317 13. Program Support Functions 13.5 User Macro Specifications Modal call B (for each block) The specified user macro subprogram is called unconditionally for each command block which is assigned between G66.1 and G67 and the subprogram is executed the specified number of times. Format G66.1 L__ P__ argument ;...
  • Page 318 13. Program Support Functions 13.5 User Macro Specifications G code macro call User macro subprogram with prescribed program numbers can be called merely by issuing the G code command. Format G ** argument ; :G code for macro call Detailed description (1) The above instruction functions in the same way as the instructions below, and parameters are set for each G code to determine the correspondence with the instructions.
  • Page 319 13. Program Support Functions 13.5 User Macro Specifications Miscellaneous command macro call (for M, S, T, B code macro call) The user macro subprogram of the specified program number can be called merely by issuing an M (or S, T, B) code. (Only entered codes apply for M but all S, T and B codes apply.) Format M** ;...
  • Page 320 13. Program Support Functions 13.5 User Macro Specifications Differences between G22 and G65 commands (1) The argument can be designated for G65 but not for G22. (2) The sequence number can be designated for G22 but no for G65, G66 and G66.1. (3) G22 executes a subprogram after all the commands except M, P, H and L(O) in the G22 block have been executed, but G65 branches to the subprogram without any further operation.
  • Page 321: Ascii Code Macro

    13. Program Support Functions 13.5 User Macro Specifications 13.5.3 ASCII Code Macro Function and purpose A macro program can be called out by setting the correspondence of a subprogram (macro program) pre-registered with the parameters to codes, and then commanding the ASCII code in the machining program.
  • Page 322 13. Program Support Functions 13.5 User Macro Specifications Command format ∗∗∗∗; Designates the address and code ASCII code for calling out macro (one character) ∗∗∗∗ Value or expression output to variable (Setting range: ±999999.9999) Detailed description (1) The command above functions in the same way as that below. The correspondence of commands is set for each ASCII code with the parameters.
  • Page 323 13. Program Support Functions 13.5 User Macro Specifications Restrictions (1) Calling a macro with an ASCII code from a program macro-called with an ASCII code A macro cannot be called with an ASCII code from a program macro-called with an ASCII code.
  • Page 324 13. Program Support Functions 13.5 User Macro Specifications (4) Order of command priority If "M" is designated for the ASCII code address, the codes basically necessary for that machine will be overlapped. In this case, commands will be identified with the following priority using code values.
  • Page 325: Variables

    13. Program Support Functions 13.5 User Macro Specifications 13.5.4 Variables Function and purpose Both the variable specifications and user macro specifications are required for the variables which are used with the user macros. The offset amounts of the local, common and system variables among the variables for this MELDAS NC system except #33 are retained even when the unit's power is switched off.
  • Page 326 13. Program Support Functions 13.5 User Macro Specifications Undefined variables Variables applying with the user macro specifications such as variables which have not been used even once after the power was switched on or local variables not quoted by the G65, G66 or G66.1 commands can be used as <vacant>.
  • Page 327: Types Of Variables

    13. Program Support Functions 13.5 User Macro Specifications 13.5.5 Types of Variables Common variables Common variables can be used commonly from any position. Number of the common variables sets depends on the specifications. Refer to "13.4 Variable commands" for details. Local variables (#1 to #33) These can be defined as an <argument>...
  • Page 328 13. Program Support Functions 13.5 User Macro Specifications [Argument specification II] Argument specification Variable in Argument specification II Variable in II address macro address macro (Note 1) Subscripts 1 to 10 for I, J, and K indicate the order of the specified command sets. They are not required to specify instructions.
  • Page 329 13. Program Support Functions 13.5 User Macro Specifications (2) The local variables can be used freely in that subprogram. Main program Subprogram (1) #30=FUP [#2/#5/2] ; G65 L1 A100. B50. J10. F500; #5=#2/#30/2 ; To subprogram G22 H100 P#30 ; X#1 ;...
  • Page 330 13. Program Support Functions 13.5 User Macro Specifications (3) Local variables can be used independently on each of the macro call levels (4 levels). Local variables are also provided independently for the main program (macro level 0). Arguments cannot be used for the level 0 local variables. L10 (macro level 2) Main (level 0) L1 (macro level 1)
  • Page 331 13. Program Support Functions 13.5 User Macro Specifications Macro interface inputs (#1000 to #1035, #1200 to #1295) : PLC The status of the interface input signals can be ascertained by reading out the values of variable numbers #1000 to #1035, #1200 to #1295. A variable value which has been read out can be only one of 2 values: 1 or 0 (1: contact closed, 0: contact open).
  • Page 332 13. Program Support Functions 13.5 User Macro Specifications System No. of Interface System No. of Interface variable points input signal variable points input signal Register R6438 bit 0 #1216 Register R6439 bit 0 #1200 #1217 Register R6439 bit 1 #1201 Register R6438 bit 1 Register R6439 bit 2 #1202...
  • Page 333 13. Program Support Functions 13.5 User Macro Specifications System No. of Interface System No. of Interface variable points input signal variable points input signal #1264 Register R6442 bit 0 #1280 Register R6443 bit 0 #1265 Register R6442 bit 1 #1281 Register R6443 bit 1 #1266 Register R6442 bit 2...
  • Page 334 13. Program Support Functions 13.5 User Macro Specifications System No. of Interface variable points output signal #1132 Register R6372, R6373 #1133 Register R6374, R6375 #1134 Register R6376, R6377 #1135 Register R6378, R6379 System No. of Interface System No. of Interface variable points output signal...
  • Page 335 13. Program Support Functions 13.5 User Macro Specifications System No. of Interface System No. of Interface variable points output signal variable points output signal Register R6378 bit 0 #1380 Register R6379 bit 0 #1364 #1381 Register R6379 bit 1 #1365 Register R6378 bit 1 Register R6379 bit 2 #1366...
  • Page 336 13. Program Support Functions 13.5 User Macro Specifications Input signal #1032 (R6436, R6437) Output signal #1132 (R6372, R6373) #1000 #1100 #1031 #1131 #1033 (R6438, R6439) #1133 (R6374, R6375) #1200 #1300 #1231 #1331 #1034 (R6440, R6441) #1134 (R6376, R6377) #1232 #1332 #1263 #1363 #1035 (R6442, R6443)
  • Page 337 13. Program Support Functions 13.5 User Macro Specifications Tool compensation Tool data can be read and set using the variable numbers. Variable number range Type 1 Type 2 #10001 to #10000 + n #2001 to #2000 + n (Length dimension) #11001 to #11000 + n #2201 to #2200 + n (Length wear)
  • Page 338 13. Program Support Functions 13.5 User Macro Specifications Workpiece coordinate system offset By using variable numbers #5201 to #532n, it is possible to read out the workpiece coordinate system offset data or to substitute values. (Note) The number of axes which can be controlled differs according to the specifications. The last digit of the variable No.
  • Page 339 13. Program Support Functions 13.5 User Macro Specifications Alarm (#3000) The NC system can be forcibly set to the alarm state by using variable number #3000. Format #3000 = 70 (CALL#PROGRAMMER#TEL#530) : : Alarm number CALL#PROGRAMMER#TEL#530 : Alarm message Any alarm number from 1 to 9999 can be specified. The alarm message must be less than 31 characters long.
  • Page 340 13. Program Support Functions 13.5 User Macro Specifications Integrating (run-out) time (#3001, #3002) The integrating (run-out) time can be read during automatic operation or automatic start or values can be substituted by using variable numbers #3001 and #3002. Contents when Variable Initialization of Type...
  • Page 341 13. Program Support Functions 13.5 User Macro Specifications Feed hold, feedrate override, G09 valid/invalid By substituting the values below in variable number #3004, it is possible to make the feed hold, feedrate override and G09 functions either valid or invalid in the subsequent blocks. #3004 Bit 0 Bit 1...
  • Page 342 13. Program Support Functions 13.5 User Macro Specifications G command modals Using variable numbers #4001 to #4021, it is possible to read the G modal commands which have been issued up to the block immediately before. Similarly, it is possible to read the modals in the block being executed with variable numbers #4201 to #4221.
  • Page 343 13. Program Support Functions 13.5 User Macro Specifications Other modals Using variable numbers #4101 to #4120, it is possible to read the model commands assigned up to the block immediately before. Similarly, it is possible to read the modals in the block being executed with variable numbers #4301 to #4320.
  • Page 344 13. Program Support Functions 13.5 User Macro Specifications Position information Using variable numbers #5001 to #5104, it is possible to read the servo deviation amounts, tool position compensation amount, skip coordinates, workpiece coordinates, machine coordinates and end point coordinates in the block immediately before. Axis No.
  • Page 345 13. Program Support Functions 13.5 User Macro Specifications Basic machine coordinate system Workpiece coordinate system Read command [End point coordinates] Workpiece coordinate system [Workpiece coordinates] Machine coordinate system [Machine coordinates] (1) The positions of the end point coordinates and skip coordinates are positions in the workpiece coordinate system.
  • Page 346 13. Program Support Functions 13.5 User Macro Specifications (4) The tool nose position where the tool compensation and other such factors are not considered is indicated as the end point position. The tool reference position with consideration given to tool compensation is indicated for the machine coordinates, workpiece coordinates and skip coordinates.
  • Page 347 13. Program Support Functions 13.5 User Macro Specifications (Example 1) Example of workpiece position measurement An example to measure the distance from the measured reference position to the workpiece edge is shown below. Argument L9031 <Local variable> F(#9) N1 #180=#4003; X(#24)100.000 N2 #30=#5001 #31=#5002;...
  • Page 348 13. Program Support Functions 13.5 User Macro Specifications Variable name setting and quotation Any name (variable name) can be given to common variables #500 to #519. It must be composed of not more than 7 alphanumerics and it must begin with a letter. Do not use "#" in variable names. It causes an alarm when the program is executed.
  • Page 349 13. Program Support Functions 13.5 User Macro Specifications Number of workpiece machining times The n can be read using variables #3901 and #3902. umber of workpiece machining times By substituting a value in these variables, the number of workpiece machining times can be changed.
  • Page 350 13. Program Support Functions 13.5 User Macro Specifications Tool life management (1) Definition of variable numbers (a) Designation of group No. #60000 The tool life management data group No. to be read with #60001 to #64700 is designated by substituting a value in this variable. If a group No. is not designated, the data of the group registered first is read.
  • Page 351 13. Program Support Functions 13.5 User Macro Specifications (e) Data type Type M System L System Remarks Number of Number of registered registered tools tools Life current value Life current value Tool selected No. Tool selected No. Number of Number of remaining remaining registered tools registered tools...
  • Page 352 13. Program Support Functions 13.5 User Macro Specifications Variable No. Item Type Details Data range 60500 Group No. Each group/ This group's No. 1 to 99999999 +*** registration No. 61000 Tool No. Tool No. 1 to 99999999 +*** (Designate the group No.
  • Page 353 13. Program Support Functions 13.5 User Macro Specifications Example of program for tool life management (1) Normal commands #101 = #60001 ; ..... Reads the number of registered tools. #102 = #60002 ; ..... Reads the life current value. #103 = #60003 ; ..... Reads the tool selection No. #60000 = 10 ;...
  • Page 354 13. Program Support Functions 13.5 User Macro Specifications Precautions for tool life management (1) If the tool life management system variable is commanded without designating a group No., the data of the group registered at the head of the registered data will be read. (2) If a non-registered group No.
  • Page 355 13. Program Support Functions 13.5 User Macro Specifications Reading the parameters System data can be read in with the system variables. (Note) These can be used only with some models. Variable No. Application #100000 Parameter # designation #100001 Part system No. designation #100002 Axis No./spindle No.
  • Page 356 13. Program Support Functions 13.5 User Macro Specifications (4) Parameter read (#100010) The designated parameter data is read with this system variable. The following data is read according to the parameter type. Type Read data Value The values displayed on the Parameter screen are output. Text ASCII codes are converted into decimal values.
  • Page 357 13. Program Support Functions 13.5 User Macro Specifications Example of parameter read macro program <Macro specifications> Q341 A_. Q_ . ; A_..Storage common variable Designates the common variable No. for storing the data read in. Q_..Parameter # designation For an axis/spindle parameter, designates the axis/spindle No.
  • Page 358 13. Program Support Functions 13.5 User Macro Specifications Reading PLC data PLC data can be read in with the system variables. (Note 1) These can be used only with some models. (Note 2) The read devices are limited. Variable No. Application #100100 Device type designation...
  • Page 359 13. Program Support Functions 13.5 User Macro Specifications (2) Device No. designation (#100101) The device to be read in is designated by substituting the device No. in this system variable. Convert a device expressed as a hexadecimal into a decimal when designating. If the data is read without designating this number, the data will be read in the same manner as if the minimum device No.
  • Page 360 13. Program Support Functions 13.5 User Macro Specifications (4) Bit designation (#100103) (a) System variable for bit designation The bit to be read in is designated by substituting the bit designation value in this system variable. This designation is valid only when reading the bits for a 16-bit device, and is invalid in all other cases.
  • Page 361 13. Program Support Functions 13.5 User Macro Specifications Examples of programs for reading PLC data (1) To read a bit device #100100 = 0 ; .... Designates [M device]. #100101 = 0 ; .... Designates [Device No. 0]. #100102 = 0 ; .... Designates [Bit]. #100 = #100110 ;...
  • Page 362 13. Program Support Functions 13.5 User Macro Specifications Examples of using macro program for reading PLC data <Macro specifications> G340 F_. A_. Q_. H_. ; F_....Number of bytes designation F0..Designates bit. F1..Designates one byte. F2..Designates two bytes. A_.
  • Page 363 13. Program Support Functions 13.5 User Macro Specifications Time reading variables The following operations can be carried out using the system variable extension for the user macro time. (1) By adding time information system variable #3011 and #3012, the current date (#3011) and current time (#3012) can be read and written.
  • Page 364 13. Program Support Functions 13.5 User Macro Specifications Examples of using time reading variable (Example 1) To read the current date (February 14, 2001) in common variable #100 #100 = #3011 ; (20010214 is inserted in #100) (Example 2) To write current time (18 hours, 13 minutes, 6 seconds) into system variable #3012 #3012 = 181306 ;...
  • Page 365: Arithmetic Commands

    13. Program Support Functions 13.5 User Macro Specifications 13.5.6 Arithmetic Commands A variety of arithmetic operations can be performed between variables. Command format #i = <formula> <Formula> is a combination of constants, variables, functions and operators. Constants can be used instead of #j and #k below. Definition and #i = #j Definition, substitution...
  • Page 366 13. Program Support Functions 13.5 User Macro Specifications Sequence of arithmetic operations (1) The sequence of the arithmetic operations (1) through (3) is, respectively, the functions followed by the multiplication arithmetic followed in turn by the addition arithmetic. #101 = #111 + #112∗SIN[#113] (1) Function (2) Multiplication arithmetic (3) Addition arithmetic...
  • Page 367 13. Program Support Functions 13.5 User Macro Specifications Logical sum #3=100 #3 = 01100100 (binary) (OR) #4=#3 OR 14 14 = 00001110 (binary) #4 = 01101110 = 110 Exclusive #3=100 #3 = 01100100 (binary) OR (XOR) #4=#3 XOR 14 14 = 00001110 (binary) #4 = 01101010 = 106 Logical #9=100...
  • Page 368 13. Program Support Functions 13.5 User Macro Specifications (14) Arccosine #521 = ACOS [100./141.421] #521 45.000 (ACOS) #522 = ACOS [100./141.421] #522 45.000 (15) Square root #571 = SQRT [1000] #571 31.623 (SQR or #572 = SQRT [1000.] #572 31.623 #573 = SQRT [10.
  • Page 369 13. Program Support Functions 13.5 User Macro Specifications Arithmetic accuracy As shown in the following table, errors will be generated when performing arithmetic operations once and these errors will accumulate by repeating the operations. Arithmetic format Average error Maximum error Type of error a = b + c −...
  • Page 370: Control Commands

    13. Program Support Functions 13.5 User Macro Specifications 13.5.7 Control Commands The flow of programs can be controlled by IF-GOTO- and WHILE-DO-. Branching Format IF [conditional expression] GOTO n; (n = sequence number in the program) When the condition is satisfied, control branches to "n" and when it is not satisfied, the next block is executed.
  • Page 371 13. Program Support Functions 13.5 User Macro Specifications Iteration Format WHILE [conditional expression] DOm ; (m = 1, 2, 3 ..127) END m ; While the conditional expression is established, the blocks from the following block to ENDm are repeatedly executed;...
  • Page 372 13. Program Support Functions 13.5 User Macro Specifications (5) WHILE - DOm must be designated first and (6) WHILE - DOm and ENDm must correspond on a ENDm last. 1:1 (pairing) basis in the same program. WHILE ~ DO1 ; END 1 ;...
  • Page 373: External Output Commands

    13. Program Support Functions 13.5 User Macro Specifications 13.5.8 External Output Commands Function and purpose Besides the standard user macro commands, the following macro instructions are also available as external output commands. They are designed to output the variable values or characters via the RS-232C interface.
  • Page 374 13. Program Support Functions 13.5 User Macro Specifications Data output command : DPRNT DPRNT [ l1 # v1 [ d1 c1 ] l 2 # v2 [ d2 c2 ] • • • • • • • • • • • ] : Character string : Variable number : Significant digits above decimal point...
  • Page 375: Precautions

    13. Program Support Functions 13.5 User Macro Specifications 13.5.9 Precautions Precautions When the user macro commands are employed, it is possible to use the M, S, T and other NC control commands together with the arithmetic, decision, branching and other macro commands for preparing the machining programs.
  • Page 376 13. Program Support Functions 13.5 User Macro Specifications Machining program display N4, N5 and N6 are processed in parallel with the control of the executable statement of N3, N6 is an executable [In execution] N3 G00 X-100. Y-100. ; statement and so it is displayed as the next [Next command]N6 G01 X#101 Y#102 command.
  • Page 377: Actual Examples Of Using User Macros

    13. Program Support Functions 13.5 User Macro Specifications 13.5.10 Actual Examples of Using User Macros The following three examples will be described. (Example 1) SIN curve (Example 2) Bolt hole circle (Example 3) Grid (Example 1) SIN curve θ (SIN G65 Ll1 Aa1 Bb1 Cc1 Ff1 ;...
  • Page 378 13. Program Support Functions 13.5 User Macro Specifications (Example 2) Bolt hole circle After defining the hole data with canned cycle (G72 to G89), the macro command is issued as the hole position command. Main program a1 ; Start angle b1 ;...
  • Page 379 13. Program Support Functions 13.5 User Macro Specifications G28 X0 Y0 Z0; -500. T1 M06; G90 G43 Z100.H01; G54 G00 X0 Y0; G81 Z-100.R3.F100 L0 M03; 300R G65 L9920 X-500. Y-500. A0 B8 R100.; 200R To subprogram G65 L9920 X-500. Y-500. A0 B8 R200.; To subprogram -500.
  • Page 380 13. Program Support Functions 13.5 User Macro Specifications L9930 (Subprogram) L9930 #101=#24 ; → #101 Start point X coordinates : x #101 = X axis start point #102=#25 ; → #102 Start point Y coordinates : y #102 = Y direction interval →...
  • Page 381: G Command Mirror Image; G50.1, G51.1 / G62

    13. Program Support Functions 13.6 G Command Mirror Image 13.6 G Command Mirror Image; G50.1, G51.1 / G62 Function and purpose When cutting a shape that is symmetrical on the left and right, programming time can be shortened by machining the one side and then using the same program to machine the other side. The mirror image function is effective for this.
  • Page 382 13. Program Support Functions 13.6 G Command Mirror Image Detailed description (1) At G51.1, command the mirror image axis and the coordinate to be a center of mirror image with the absolute command or incremental command. (2) At G50.1, command the axis for which mirror image is to be turned OFF. The values of x2, y2, and z2 will be ignored.
  • Page 383 13. Program Support Functions 13.6 G Command Mirror Image Precautions CAUTION Turn the mirror image ON and OFF at the mirror image center. If mirror image is canceled at a point other than the mirror center, the absolute value and machine position will deviate as shown below.
  • Page 384: Corner Chamfering/Corner Rounding I

    13. Program Support Functions 13.7 Corner Chamfering/Corner Rounding I 13.7 Corner Chamfering/Corner Rounding I Chamfering at any angle or corner rounding is performed automatically by adding ",C_" or ",R_" to the end of the block to be commanded first among those command blocks which shape the corner with lines only.
  • Page 385 13. Program Support Functions 13.7 Corner Chamfering/Corner Rounding I Detailed description (1) The start point of the block following the corner chamfering serves as the imaginary corner intersection point. (2) When the comma in ",C" is not present, it is handled as a C command. (3) When both the corner chamfer and corner rounding commands exist in the same block, the latter command is valid.
  • Page 386: Corner Rounding " ,R

    13. Program Support Functions 13.7 Corner Chamfering/Corner Rounding I 13.7.2 Corner Rounding " ,R_ " Function and purpose The imaginary corner, which would exist if the corner were not to be rounded, is rounded with the arc having the radius which is commanded by ",R_" only when configured of linear lines. Command format N100 G01 X__ Y__ , R__ ;...
  • Page 387: Linear Angle Command

    13. Program Support Functions 13.8 Linear Angle Command 13.8 Linear Angle Command Function and purpose The end point coordinates are calculated automatically by commanding the linear angle and one of the end point coordinate axes. Command format N1 G01 Xx ) Aa N1 G01 Xx ) A−a...
  • Page 388: Geometric Command

    13. Program Support Functions 13.9 Geometric Command 13.9 Geometric Command Function and purpose When it is difficult to find the intersection point of two straight lines with a continuous linear interpolation command, this point can be calculated automatically by programming the command for the angle of the straight lines.
  • Page 389 13. Program Support Functions 13.9 Geometric Command Detailed description (1) Automatic calculation of two-arc contact When two continuous circular arcs contact with each other and it is difficult to find the contact, the contact is automatically calculated by specifying the center coordinates position or radius of the first circular arc and the end point (absolute position) and center position or radius of the second circular arc.
  • Page 390 13. Program Support Functions 13.9 Geometric Command (2) Automatic calculation of linear-arc intersection When it is difficult to find the intersections of a given line and circular arc, the intersections are automatically calculated by programming the following blocks. Example G18 G01 Aa1 Ff1 ; G02 Xxc Zzc Ii2 Kk2 Hh2 Ff2 ;...
  • Page 391 13. Program Support Functions 13.9 Geometric Command (4) Automatic calculation of linear-arc contact When it is difficult to find the contact of a given line and circular arc, the contact is automatically calculated by programming the following blocks. Example G01 Aa1 Ff1 ; G03 Xxc Zzc Rr1 Ff1 ;...
  • Page 392: Circle Cutting; G12, G13

    13. Program Support Functions 13.10 Circle Cutting; G12, G13 13.10 Circle Cutting; G12, G13 Function and purpose Circle cutting starts the tool from the center of the circle, and cuts the inner circumference of the circle. The tool continues cutting while drawing a circle and returns to the center position. Command format G12 (G13) I__ D__ F__ ;...
  • Page 393 13. Program Support Functions 13.10 Circle Cutting; G12, G13 Example of program (Example 1) G12 I5000 D01 F100 ; (Input setting unit 0.01) When compensation amount is +10.00mm Tool Compensation 10.000m amount 50.000m Radius Precautions (1) If the offset No. "D" is not issued or if the offset No. is illegal, the program error (P170) will occur.
  • Page 394: Parameter Input By Program; G10, G11.1

    13. Program Support Functions 13.11 Parameter Input by Program; G10, G11.1 13.11 Parameter Input by Program; G10, G11.1 Function and purpose The parameters set from the setting and display unit can be changed in the machining programs. The data format used for the data setting is as follows. Command format G10 L70 ;...
  • Page 395: Macro Interrupt; Ion, Iof

    13. Program Support Functions 13.12 Macro Interrupt; ION, IOF 13.12 Macro Interrupt; ION, IOF Function and purpose A user macro interrupt signal (UIT) is input from the machine to interrupt the program being currently executed and instead call another program and execute it. This is called the user macro interrupt function.
  • Page 396 13. Program Support Functions 13.12 Macro Interrupt; ION, IOF Outline of operation (1) When a user macro interrupt signal (UIT) is input after an ION a1 ; command is issued by the current program, interrupt program La1 is executed. When an G23; command is issued by the interrupt program, control returns to the main program.
  • Page 397 13. Program Support Functions 13.12 Macro Interrupt; ION, IOF Interrupt type Interrupt types 1 and 2 can be selected by the parameter "#1113 INT_2". [Type 1] • When an interrupt signal (UIT) is input, the system immediately stops moving the tool and interrupts dwell, then permits the interrupt program to run.
  • Page 398 13. Program Support Functions 13.12 Macro Interrupt; ION, IOF [Type 1] Main program block(2) block(3) block(1) If the interrupt program contains a move or miscellaneous function command, the reset block (2) is lost. block(3) block(1) block(2) Interrupt program If the interrupted program contains no move User macro interrupt and miscellaneous commands, it resumes operation from where it left in block (2), that is,...
  • Page 399 13. Program Support Functions 13.12 Macro Interrupt; ION, IOF Calling method User macro interrupt is classified into the following two types depending on the way an interrupt program is called. These two types of interrupt are selected by parameter "#1229 set01/bit0". Both types of interrupt are included in calculation of the nest level.
  • Page 400 13. Program Support Functions 13.12 Macro Interrupt; ION, IOF Returning from user macro interrupt G23 (H__) ; An G23 command is issued in the interrupt program to return to the main program. Address H is used to specify the sequence number of the return destination in the main program. The blocks from the one next to the interrupted block to the last one in the main program are first searched for the block with designated sequence number.
  • Page 401 13. Program Support Functions 13.12 Macro Interrupt; ION, IOF Modal information variables (#4401 to #4520) Modal information when control passes to the user macro interrupt program can be known by reading system variables #4401 to #4520. The unit specified with a command applies. System variable Modal information #4401 to #4421...
  • Page 402 13. Program Support Functions 13.12 Macro Interrupt; ION, IOF Parameters Refer to the Setup Manual for details on the setting methods. (1) Subprogram call validity "#1229 set 01/bit 0" 1 : Subprogram type user macro interrupt 0 : Macro type user macro interrupt (2) Status trigger mode validity "#1112 S_TRG"...
  • Page 403: Tool Change Position Return; G30.1 To G30.6

    13. Program Support Functions 13.13 Tool Change Position Return 13.13 Tool Change Position Return; G30.1 to G30.6 Function and purpose By specifying the tool changing position in a parameter "#8206 TOOL CHG. P" and also specifying a tool changing position return command in a machining program, the tool can be changed at the most appropriate position.
  • Page 404 13. Program Support Functions 13.13 Tool Change Position Return Example of operates (1) The figure below shows an example of how the tool operates during the tool change position return command. (Only operations of X and Y axes in G30.1 to G30.3 are figured.) G30.3 Tool changing position G30.1...
  • Page 405 13. Program Support Functions 13.13 Tool Change Position Return (2) After all necessary tool changing position return is completed by a G30.n command, tool changing position return complete signal TCP (XC93) is turned on. When an axis out of those having returned to the tool changing position by a G30.n command leaves the tool changing position, the TCP signal is turned off.
  • Page 406: Normal Line Control ; G40.1/G41.1/G42.1

    13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 13.14 Normal Line Control ; G40.1/G41.1/G42.1 Function and purpose If the C axis is set as the normal line control axis, the C axis (rotation axis) turning will be controlled so that the tool constantly faces the normal line direction control in respect to the XY axis movement command during program operation.
  • Page 407 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 Command format G40.1 X__ Y__ F__ ; G41.1 X__ Y__ F__ ; G42.1 X__ Y__1 F__ ; G40.1 :Normal line control cancel G41.1 :Normal line control left ON G42.1 :Normal line control right ON : X axis end point coordinates : Y axis end point coordinates : Feedrate...
  • Page 408 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 (3) Normal line control temporally cancel During normal line control, the turning operation for the normal line control axis is not carried out at the seam of the block that the movement amount is smaller than that set with the parameter (#1535 C_leng) and its previous block.
  • Page 409 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 (a) Normal line control type I Normal line control axis G41.1 G42.1 θ turning angle at block seam: θ < ε 1. -ε < 90° θ θ ε 180° 0° θ -ε...
  • Page 410 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 (b) Normal line control type II Normal line control axis G41.1 G42.1 θ turning angle at block seam: θ < ε 1. -ε < 90° θ ε θ 180° 0° -ε θ...
  • Page 411 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 (5) C axis turning speed Turning speed at block seam (select from type 1 or type 2) Item Type 1 Type 2 Normal line (a) Rapid traverse (a) Rapid traverse control axis •...
  • Page 412 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 Item Type 1 Type 2 Normal line (b) Cutting feed (b) Cutting feed control axis • Dry run OFF The feedrate at the tool nose is the F turning speed command. The normal line control axis The normal line control axis turning speed at block seam turning speed is the normal line control axis...
  • Page 413 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 Item Type 1 Type 2 Normal line The normal line control axis turning speed is The feedrate at the tool nose is the F control axis the rotation speed obtained by feedrate F. command.
  • Page 414 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 <Supplements> The corner arc is not inserted into the straight line that is smaller than a linear-arc, arc-arc, linear-block with no movement, block with no movement-linear or radius of the arc to be inserted. Corner R is not inserted.
  • Page 415 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 Precautions (1) During normal line control, the program coordinates are updated following the normal line control axis movement. Thus, program the normal line control with the program coordinate system. (2) The normal line control axis will stop at the turning start position at the single block, cutting block start interlock and block start interlock.
  • Page 416 13. Program Support Functions 13.14 Normal Line Control; G40.1/G41.1/G42.1 (Continued from the previous page) Function name Notes High-accuracy control This cannot be commanded during normal line control. A program error (P29) will occur. The normal line control command during high-accuracy control cannot also be issued. A program error (P29) will occur.
  • Page 417: High-Accuracy Control ; G61.1, G08

    13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 13.15 High-accuracy Control ; G61.1, G08 Function and purpose This function aims to improve the error caused by the accuracy of the control system during machine machining. The parameter method and G code command method, which turn initial high-accuracy ON, are used to enter the high-accuracy control mode.
  • Page 418 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 Command format G61.1 F__ ; G61.1 : High-accuracy control mode ON : Feedrate command The high-accuracy control mode is validated from the block containing the G61.1 command. The "G61.1" high-accuracy control mode is canceled with one of the G code group 13's functions. - G61 (Exact stop check mode) - G62 (Automatic corner override) - G63 (Tapping mode)
  • Page 419 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 Detailed description (1) Feedrate command F is clamped with ″#2110 Clamp(H-precision)″ (Cutting feedrate during high-accuracy control mode for clamp function) set by the parameter. (2) Rapid traverse rate enables "#2109 Rapid(H-precision)" (Rapid traverse rate during high-accuracy control mode) set by the parameter.
  • Page 420 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 Pre-interpolation acceleration/deceleration Acceleration/deceleration control is carried out for the movement commands to suppress the impact when the machine starts or stops moving. However, with conventional post-interpolation acceleration/deceleration, the corners at the block seams are rounded, and path errors occur regarding the command shape.
  • Page 421 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 (2) Path control in circular interpolation commands When commanding circular interpolation with the conventional post-interpolation acceleration/ deceleration control method, the path itself that is output from the CNC to the servo runs further inside the commanded path, and the circle radius becomes smaller than that of the commanded circle.
  • Page 422 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 Optimum speed control (1) Optimum corner deceleration By calculating the angle of the seam between blocks, and carrying out acceleration/ deceleration control in which the corner is passed at the optimum speed, highly accurate edge machining can be realized.
  • Page 423 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 The accuracy coefficient differs according to parameter "#8201 COMP CHANGE". #8201 COMP CHANGE Accuracy coefficient used #8019 R COMPEN #8022 CORNER COMP The corner speed V0 can be maintained at a set speed or more so that the corner speed does not drop too far.
  • Page 424 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 (2) Arc speed clamp During circular interpolation, even when moving at a constant speed, acceleration is generated as the advance direction constantly changes. When the arc radius is large compared to the commanded speed, control is carried out at the commanded speed. However, when the arc radius is relatively small, the speed is clamped so that the generated acceleration does not exceed the tolerable acceleration/deceleration speed before interpolation, calculated with the parameters.
  • Page 425 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 (Note 3) The "R COMPEN" is valid only when the arc speed clamp is applied. To reduce the radius reduction error when not using the arc speed clamp, the commanded speed F must be lowered.
  • Page 426 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 (2) Reduction of arc radius reduction error amount using feed forward control With the high-accuracy control, the arc radius reduction error amount can be greatly reduced by combining the pre-interpolation acceleration/deceleration control method above-mentioned and the feed forward control/SHG control.
  • Page 427 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 Arc entrance/exit speed control There are cases when the speed fluctuates and the machine vibrates at the joint from the straight line to arc or from the arc to straight line. This function decelerates to the deceleration speed before entering the arc and after exiting the arc to reduce the machine vibration.
  • Page 428 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 (Example 2) When using corner deceleration <Program> <Operation> G61.1 ; • • N1 G01 X-10. F3000 ; N2 G02 X5. Y-5. I2.5 ; N3 G01 X10. ; • • <Deceleration pattern> Speed Commanded speed Arc clamp speed...
  • Page 429 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 Circular error radius compensation control for each axis When the roundness at the machine end is, compared to the reference circle, expanded at an axis creating an ellipsis state, compensation is carried out for each axis to make a perfect circle. The validity of this control can be changed with control parameter "#8108 R COMP Select".
  • Page 430 13. Program Support Functions 13.15 High-accuracy Control ; G61.1, G08 Relation with other functions (1) The modals must be set as shown below when commanding G08P1. Function G code High-speed high-accuracy control II, G05 P0 High-speed machining cancel Cylindrical interpolation cancel G07.1 High-accuracy control cancel G08 P0...
  • Page 431: High-Speed Machining Mode; G05, G05.1

    13. Program Support Functions 13.16 High-speed Machining Mode; G05, G05.1 13.16 High-speed Machining Mode; G05, G05.1 13.16.1 High-speed Machining Mode I,II; G05 P1, G05 P2 Function and purpose This function runs a machining program for which a freely curved surface has been approximated by fine segments at high speed.
  • Page 432 13. Program Support Functions 13.16 High-speed Machining Mode; G05, G05.1 Detailed description (1) The override, maximum cutting speed clamp, single block operation, dry run, manual interruption and graphic trace and high-accuracy control mode are valid even during the high-speed machining mode I/II. (2) When using the high-speed machining mode II mode, set "BIT1"...
  • Page 433 13. Program Support Functions 13.16 High-speed Machining Mode; G05, G05.1 Restrictions (1) If ″G05 P1(P2)″ is commanded when the option for high-speed machining mode I/(II) is not provided, a program error (P39) will occur. (2) The automatic operation process has the priority in the high-speed machining mode I/II , so the screen display, etc., may be slowed down.
  • Page 434: High-Speed High-Accuracy Control; G05, G05.1

    13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 13.17 High-speed High-accuracy Control; G05, G05.1 13.17.1 High-speed High-accuracy Control I, II Function and purpose This function runs a machining program that approximates a freely curved surface with fine segments at high speed and high accuracy. This is effective in increasing the speed of machining dies of a freely curved surface.
  • Page 435 13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 Detailed description (1) The high-speed high-accuracy control I / II can be used during computer link, tape, MDI, IC card or memory operation. (2) The override, maximum cutting speed clamp, single block operation, dry run, handle interrupt and graphic trace are valid even during the high-speed high-accuracy control I / II modal.
  • Page 436 13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 (2) Acceleration clamp speed With the cutting feed clamp speed during the high-speed high-accuracy control 2 mode, when the following parameter is set to "1", the speed is clamped so that the acceleration generated by each block movement does not exceed the tolerable value.
  • Page 437 13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 Precautions (1) High-speed high-accuracy control I and II are the optional functions. If "G05.1 Q1" or "G05 P10000" is commanded when the option is not provided, a program error (P39) will occur. (2) The automatic operation process has the priority in the high-speed high-accuracy control I/II modal, so the screen display, etc., may be delayed.
  • Page 438 13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 Relation with other functions (1) The modal state must be as shown below when commanding G05.1 Q1 and G05 P10000. Program error (P34) will occur if the conditions are not satisfied. When commanding a SSS control, refer to ″3.16.2 SSS control″...
  • Page 439 13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 High-speed high-accuracy Function G code mode Subprogram call Programmable parameter input G10 L50 Programmable compensation amount G10 L10 input High-speed high-accuracy control I G05.1 Q0 cancel High-speed high-accuracy control II G05 P0 cancel Spline control...
  • Page 440: Sss Control

    13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 13.17.2 SSS Control Function and purpose With conventional high-accuracy control, the angle between two blocks is compared with the corner deceleration angle to determine whether to execute corner deceleration between the blocks. This can cause the speed to suddenly change between the blocks with an angle close to the corner deceleration angle, resulting in scratches or streaks.
  • Page 441 13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 Detailed description (1) The following procedures are followed to use SSS control. (a) Turn the following parameters ON beforehand. Basic specification parameter "#1267 ext03/bit0" Machining parameter "#8090 SSS ON" (b) Command "G05 P10000 ;" (high-speed high-accuracy control II ON). →SSS control is valid until "G05 P0 ;"...
  • Page 442 13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 (2) The following functions can be commanded during the SSS control mode. A program error will occur if any other function is commanded. • During G code command: Program error (P34) •...
  • Page 443 13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 Parameter standard values The standard values of the parameters related to SSS control are shown below. (1) Machining parameters Item Standard value 8019 R COMP 8020 DCC ANGLE 8021 COMP CHANGE 8022 CORNER COMP 8023...
  • Page 444 13. Program Support Functions 13.17 High-speed High-accuracy Control; G05, G05.1 (3) Axis specification parameters Item Standard value 2010 fwd_g Feed forward gain 2068 G0fwdg G00 feed forward gain 2096 crncsp Minimum corner deceleration speed Restrictions (1) Pre-reading is executed during SSS control, so a program error could occur before the block containing the error is executed.
  • Page 445: Spline; G05.1

    13. Program Support Functions 13.18 Spline; G05.1 13.18 Spline; G05.1 Function and purpose This function automatically generates a spline curve that passes through a sequence of points commanded by the fine segment machining program, and interpolates the path along this curve. This allows highly accurate machining at a high speed.
  • Page 446 13. Program Support Functions 13.18 Spline; G05.1 (3) If G05.1Q2 is commanded when not in the high-speed high-accuracy control function II mode (between G05P10000 and G05P0), the program error (P34) will occur. (4) If the machining parameter "#8025 SPLINE ON" is 0 in the high-speed high-accuracy control function II mode (between G05P10000 and G05P0) and G05.1Q2 is commanded, program error (P34) will occur.
  • Page 447 13. Program Support Functions 13.18 Spline; G05.1 (Note 1) If the section to be a corner is smooth when actual machining is carried out, lower the CANCEL ANG. If a smooth section becomes a corner, increase the CANCEL ANG. (Note 2) If the CANCEL ANG. ≥ DCC. ANGLE, the axis will decelerate at all corners which angle is larger than the CANCEL ANG.
  • Page 448 13. Program Support Functions 13.18 Spline; G05.1 (d) When a block markedly longer than other blocks exists in spline function If the ith block length is Li in the spline interpolation mode, and it is given as "Li > Li - 1 × 8" or "Li >...
  • Page 449 13. Program Support Functions 13.18 Spline; G05.1 When the above conditions are satisfied, the spline curve will be revised so that the error between P3-P4 in Fig. 2 is within the designated value. Tolerance (chord error) Spline curve Inflection point Fine segment Fig.
  • Page 450 13. Program Support Functions 13.18 Spline; G05.1 When the above conditions are satisfied, the spline curve will be revised so that the error between P2-P3 in Fig. 4 is within the designated value. Spline curve Tolerance (chord error) Fine segment Fig.
  • Page 451 13. Program Support Functions 13.18 Spline; G05.1 With the spline function, the high-accuracy control function is always valid. Thus, even if the curvature changes such as in this curve, the speed will be clamped so that the tolerable value of acceleration/deceleration before interpolation, which is calculated with the parameters, is not exceeded.
  • Page 452: High-Accuracy Spline Interpolation ; G61.2

    13. Program Support Functions 13.19 High-accuracy Spline Interpolation ; G61.2 13.19 High-accuracy Spline Interpolation ; G61.2 Function and purpose This function automatically generates a spline curve that passes through a sequence of points commanded by the fine segment machining program, and interpolates the path along this curve. This allows highly accurate machining at a high speed.
  • Page 453 13. Program Support Functions 13.19 High-accuracy Spline Interpolation ; G61.2 Example of program G91 ; G61.2 ; ........High-accuracy spline interpolation mode ON G01 X0.1 Z0.1 F1000 ; X0.1 Z-0.2 ; Y0.1 ; X-0.1 Z-0.05 ; X-0.1 Z-0.3 ; G64 ; ........High-accuracy spline interpolation mode OFF (1) The spline function carries out spline interpolation when the following conditions are all satisfied.
  • Page 454: Scaling; G50/G51

    13. Program Support Functions 13.20 Scaling; G50/G51 13.20 Scaling; G50/G51 Function and purpose By multiplying the moving axis command values within the range specified under this command by the factor, the shape commanded by the program can be enlarged or reduced to the desired size.
  • Page 455 13. Program Support Functions 13.20 Scaling; G50/G51 Detailed description (1) Specifying the scaling axis, scaling center and its factor Commanding G51 selects the scaling mode. The G51 command only specifies the scaling axis, its center and factor, and does not move the axis. Though the scaling mode is selected by the G51 command, the axis actually valid for scaling is the axis where the scaling center has been specified.
  • Page 456 13. Program Support Functions 13.20 Scaling; G50/G51 Precautions (1) Scaling is not applied to the compensation amounts of tool radius compensation, tool position compensation, tool length compensation and the like. (Compensation is calculated for the shape after scaling.) (2) Scaling is valid for only the movement command in automatic operation. It is invalid for manual movement.
  • Page 457 13. Program Support Functions 13.20 Scaling; G50/G51 Example of program (Example 1) -100. -200. -150. -50. -50. Scaling center -100. D01=25.000 -150. Tool path after 1/2 scaling Program path after 1/2 scaling Tool path when scaling is not applied Program path when scaling is not applied <Program>...
  • Page 458 13. Program Support Functions 13.20 Scaling; G50/G51 Relation with other functions (1) G27 reference position check command When G27 is commanded during scaling, scaling is canceled at completion of the command. (2) Reference position return command (G28, G29, G30) When the G28 or G30 reference position return command is issued during scaling, scaling is canceled at the midpoint and the axis returns to the reference position.
  • Page 459: Coordinate Rotation By Program; G68.1/G69.1

    13. Program Support Functions 13.21 Coordinate Rotation by Program; G68.1/G69.1 13.21 Coordinate Rotation by Program; G68.1/G69.1 Function and purpose When machining a complicated shape at a position rotated in respect to the coordinate system, the shape before rotation can be programmed on the local coordinate system, rotation angle designated with the program coordinate rotation command, and the rotated shaped machined.
  • Page 460 13. Program Support Functions 13.21 Coordinate Rotation by Program; G68.1/G69.1 Detailed description (1) Always command the rotation center coordinate (x1, y1) with an absolute value. Even if commanded with an incremental address, it will not be handled as an incremental value. The rotation angle "r"...
  • Page 461 13. Program Support Functions 13.21 Coordinate Rotation by Program; G68.1/G69.1 Example of program (Program coordinate rotation by absolute command) N01 G28 X0. Y0.; Local coordinate designation N02 G54 G52 X200. Y100. ; N03 T10 ; Coordinate rotation ON N04 G68.1 X-100. Y0. R60. ; Subprogram execution N05 G22 H101 ;...
  • Page 462 13. Program Support Functions 13.21 Coordinate Rotation by Program; G68.1/G69.1 Example of program (Operation of only one axis was commanded by first movement command after coordinate rotation command) Command basically two axes in the rotation plane by the absolute value immediately after the coordinate rotation command.
  • Page 463 13. Program Support Functions 13.21 Coordinate Rotation by Program; G68.1/G69.1 Example of program (Local coordinate designation during program coordinate rotation) (1) When "#19003 PRG coord rot type" is "0", it is on the coordinate system after coordinates rotation that the commanded position is set as the local coordinate zero point. (2) When "#19003 PRG coord rot type"...
  • Page 464 13. Program Support Functions 13.21 Coordinate Rotation by Program; G68.1/G69.1 Example of program (Coordinate system designation during program coordinate rotation) When the coordinate system setting (G92) is executed during program coordinate rotation, this program operates similarly as "Local coordinate designation during program coordinate rotation". (1) When "#19003 PRG coord rot type"...
  • Page 465 13. Program Support Functions 13.21 Coordinate Rotation by Program; G68.1/G69.1 Precautions (1) Always command an absolute value for the movement command immediately after G68.1 and G69.1. (2) If manual absolute is ON and manual interrupt is issued for the coordinate rotation axis, do not use automatic operation for the following absolute value command.
  • Page 466 13. Program Support Functions 13.21 Coordinate Rotation by Program; G68.1/G69.1 Relation with other functions (1) Program error (P111) will occur if the plane selection code is commanded during the coordinate rotation mode. (2) Program error (P485) will occur if pole coordinate interpolation is commanded during the coordinate rotation mode.
  • Page 467: Coordinate Rotation Input By Parameter; G10

    13. Program Support Functions 13.22 Coordinate Rotation Input by Parameter; G10 13.22 Coordinate Rotation Input by Parameter; G10 Function and purpose If a deviation occurs between the workpiece alignment line and machine coordinate system's coordinate axis when the workpiece is mounted, the machine can be controlled to rotate the machining program coordinates according to the workpiece alignment line deviation.
  • Page 468 13. Program Support Functions 13.22 Coordinate Rotation Input by Parameter; G10 Command format G10 I__ J__ ; G10 K__; : Horizontal vector. Command a value corresponding to ″Coord rot plane (H)″ which is set in the parameter input screen. Command range: -999999.999999 to 999999.999999 Coordinate rotation angle is automatically calculated when commanding vector contents.
  • Page 469 13. Program Support Functions 13.22 Coordinate Rotation Input by Parameter; G10 Example of program (1) To use for compensating positional deviation of pallet changer Rotation movement (15 degree) N01 G28 X0 Y0 Z0 ; N12 G90 G57 G00 X0 Y0 ; G57 workpiece N02 G22 L9000 ;...
  • Page 470: 3-Dimensional Coordinate Conversion; G68.1/69.1

    13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 13.23 3-dimensional Coordinate Conversion; G68.1/69.1 Function and purpose With the 3-dimensional coordinate conversion function, a new coordinate system can be defined by rotating and moving in parallel the zero point in respect to the X, Y and Z axes of the currently set workpiece coordinate system.
  • Page 471 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 Command format G68.1 X__ Y__ Z__ I__ J__ K__ R__ ; G68.1 : 3-dimensional coordinate conversion mode command X,Y,Z : Rotation center coordinates Designate with the absolute position of the local coordinate system. I,J,K : Rotation center axis direction (1: Designated 0: Not designated) Note that "1"...
  • Page 472 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 Example of program 1 N1 G68.1 X10.Y0. Z0. I0 J1 K0 R-30.; N2 G68.1 X0. Y10. Z0. I1 J0 K0 R45.; N3 G69.1; +Y" 45° +Z" +X" P"(0,10,0) G68.1 program coordinate system (B) P(0,0,0) Local coordinate system (workpiece coordinate system)
  • Page 473 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 Coordinate system (1) By issuing the 3-dimensional coordinate conversion command, a new coordinate system (G68.1 program coordinate system) will be created on the local coordinate system. (2) The coordinate system for the 3-dimensional coordinate conversion rotation center coordinates is the local coordinate system.
  • Page 474 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 G68.1 multiple commands By commanding 3-dimensional coordinate conversion during the 3-dimensional coordinate conversion modal, two or more multiple commands can be issued. (1) The 3-dimensional coordinate conversion command in the 3-dimensional coordinate conversion modal is combined with the conversion in the modal.
  • Page 475 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 The conversion rows Rn and Tn (n = 1, 2) are as follow. Rn conversion row I designation J designation K designation (rotation around X axis) (rotation around Y axis) (rotation around Z axis) cosR -sinR cosR...
  • Page 476 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 Precautions related to arc command If the first command after the 3-dimensional coordinate conversion command was an arc shape, and the center of the arc did not change before and after the 3-dimensional coordinate conversion, an arc is drawn.
  • Page 477 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 Example of program 2 This is a sample program only to explain about the operations. (To actually proceed with the machining by using this program, the dedicated tools and the tool change functions are required.) (1) Example of machining program using arc cutting In the following program example, the arc cutting (N3 block) carried out on the top of the workpiece is also carried out on the side of the workpiece.
  • Page 478 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 (2) Example of machining program using fixed cycle In the following program, the bolt hole cycle (N08 block) executed on the top of the workpiece is also carried out on the side of the workpiece. By using 3-dimensional coordinate conversion, the side can be cut with the same process (N18 block).
  • Page 479 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 Relation with other functions (Relation with other G codes) Pxxx in the list indicates the program error Nos. When 3-dimensional When this command is When 3-dimensional designated during coordinate conversion is coordinate conversion Format Function...
  • Page 480 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 When 3-dimensional When this command is When 3-dimensional designated during coordinate conversion coordinate conversion Format Function 3-dimensional is designated is designated coordinate conversions in this modal status in the same block Polar coordinate P923 command...
  • Page 481 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 When 3-dimensional When this command is When 3-dimensional designated during coordinate conversion is coordinate conversion Format Function 3-dimensional designated in this modal is designated in the coordinate conversions status same block Tool radius P922 P923...
  • Page 482 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 When 3-dimensional When this command is When 3-dimensional designated during coordinate conversion is coordinate conversion Format Function 3-dimensional designated in this modal is designated in the coordinate conversions status same block G54.1 Extended workpiece P921...
  • Page 483 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 When 3-dimensional When this command is When 3-dimensional designated during coordinate conversion is coordinate conversion Format Function 3-dimensional designated in this modal is designated in the coordinate conversions status same block Fixed cycle (Balling) P922 P923...
  • Page 484 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 Relation with other functions (1) Circular interpolation Circular interpolation in the 3-dimensional coordinate conversion modal functions according to the coordinate value resulted by the 3-dimensional coordinate conversion. With G17, G18 and G19 commands, circular interpolation functions normally for all the planes in which 3-dimensional coordinate conversion has been executed.
  • Page 485 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 (10) Fixed cycle for drilling The fixed cycle in the 3-dimensional coordinate conversion can be executed in an oblique direction for the orthogonal coordinate system. In the same manner, synchronous tapping cycle can also be executed.
  • Page 486 13. Program Support Functions 13.23 3-dimensional Coordinate Conversion; G68.1/G69.1 (16) Coordinate read variable When reading the workpiece coordinate system/skip coordinate system during the 3-dimensional coordinate system conversion modal, local coordinate system and G68.1 program coordinate system can be switched with the parameter "#1563 3Dcdrc". (17) Manual operation Manual operation in the 3-dimensional coordinate conversion modal will not execute the 3-dimensional conversion.
  • Page 487: Tool Center Point Control; G43.4/G43.5

    13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 13.24 Tool Center Point Control; G43.4/G43.5 Function and purpose The tool center point control function controls a commanded position described in the machining program to be the tool center point in the coordinate system that rotates together with a workpiece (table coordinate system).
  • Page 488 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 <Combined type> Tool center point control OFF and Tool center point control ON tool length compensation along the tool axis ON Traces of the tool center point Z(+) Z(+) Rotation X(+) Rotation Z'(+)
  • Page 489 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 Programming coordinate system The end position of each block looking from the programming coordinate system is specified in the tool center point control mode. In the program, specify the position of the tool center point. The programming coordinate system is a coordinate system used for the tool center point control, and is specified either the table coordinate system (a coordinate which rotates together with a workpiece) or the workpiece coordinate system by the parameter.
  • Page 490 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 Start-up (1) Start-up without movement command (a) Tool center point control type1, type2 When the tool center point control is ON, no axis movement is performed (including movement for the compensation amount). <Tool tilt>...
  • Page 491 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 (b) Tool center point control type2 The rotary axis moves toward the commanded workpiece surface vector (I,J,K) direction along the movement command issued. <Tool tilt> <Table tilt> A axis (+) G91 ;...
  • Page 492 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 Cancel (1) Cancellation without movement command (a) Tool center point control type1, type2 Cancellation movement for the compensation amount is not performed regardless of absolute/incremental value command. On the other hand, the tool center point control modal will be cancelled.
  • Page 493 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 (3) Cancellation with movement command (When rotary axis command is issued in the same block) (a) Tool center point control type1, type2 Cancellation movement for the compensation amount is not performed regardless of absolute/incremental value command.
  • Page 494 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 (2) Tool center point control type2 (a) When executing movement command to the orthogonal coordinate axis and workpiece surface angle vector command. A axis (+) G43.5 Yy1 Zz1 (i3,j3,k3) Ii1 Jj1 Kk1 Hh ; Yy2 Ii2 Jj2 Kk2 ;...
  • Page 495 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 Interpolation mode There are two modes of interpolation: single axis rotation interpolation and joint interpolation. You can select one of them by parameter. (1) Single axis rotation interpolation When transforming from a start-point angle vector "r1"...
  • Page 496 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 Passing singular point When passing the singular point (singular position*), there are two kinds of movements to be followed from the singular point. When using an A-C axis tilt type machinery, there are two different movements (Fig.
  • Page 497 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 (1) Passing singular point type1 Select the same direction as the start point of the tool base-side rotary axis or table workpiece-side rotary axis in the block where a singular point passing is carried out. When the rotation angle of the start point is 0°, select the wider stroke limit.
  • Page 498 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 (2) Passing singular point type 2 Select the one with the smaller rotary movement amount of the tool base-side rotary axis or the table workpiece-side rotary axis on the singular point. When the tool base-side rotary axis and the table workpiece have the same rotary movement amount, select the one with the tool base-side rotary axis or the table workpiece-side rotary axis that are to be rotated in the minus-coded direction.
  • Page 499 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 (3) Movement in the singular point neighborhood in each interpolation mode Inter- Type of Command from a singular point Command to pass polation Command passing to a non-singular point a singular point mode sigular point Single...
  • Page 500 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 Rotary Axis Prefiltering Rotary axis prefiltering means smoothing (prefiltering) the rotary axis command (tool angle shift) process, which moves the rotary axis smoothly and produces smoother cutting surface. Tool center point moves on the tracks as programmed by the rotary axis command while the command process is smoothed with this function.
  • Page 501 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 Relation with other functions (Relation with other G codes) Pxxx in the list indicates the program error Nos. The function indicated at This function is This function is Format Function the left is commanded in commanded in the modal commanded in the same...
  • Page 502 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 The function indicated at This function is This function is Format Function the left is commanded in commanded in the modal commanded in the same the modal of this function indicated at the left block High-speed machining...
  • Page 503 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 The function indicated at This function is This function is Format Function the left is commanded in commanded in the modal commanded in the same the modal of this function indicated at the left block G17~G19...
  • Page 504 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 The function indicated at This function is This function is Format Function the left is commanded in commanded in the modal commanded in the same the modal of this function indicated at the left block G43.1/G44...
  • Page 505 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 The function indicated at This function is This function is Format Function the left is commanded in commanded in the modal commanded in the same the modal of this function indicated at the left block G61.1...
  • Page 506 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 Relation with other functions (1) F 1-digit feed Controls so that the tool center point moves at the commanded speed. Note that speed cannot be changed with the manual handle. (2) Buffer correction Buffer correction cannot be performed during tool center point control.
  • Page 507 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 (12) Automatic operation handle interruption Do not perform the automatic operation handle interruption during the tool center point control. If performed, the tool moves off the programmed track. (13) Manual / Automatic simultaneous Manual / Automatic simultaneous cannot be executed to the axes related to the tool center point control during the tool center point control.
  • Page 508 13. Program Support Functions 13.24 Tool Center Point Control; G43.4/G43.5 (25) Actual feed rate display The final combined feed rate is displayed here. (26) Manual interruption When the manual interruption is executed during the feed hold or single block stop, the movement will be the one to be observed when the manual ABS is OFF when rebooting regardless of whether an absolute/incremental value command is selected.
  • Page 509: Timing-Synchronization Between Part Systems

    13. Program Support Functions 13.25 Timing-synchronization between Part Systems 13.25 Timing-synchronization between Part Systems CAUTION When programming a program of the multi-part system, carefully observe the movements caused by other part systems' programs. Function and purpose The multi-axis, multi-part system complex control NC system can simultaneously run multiple machining programs independently.
  • Page 510 13. Program Support Functions 13.25 Timing-synchronization between Part Systems Command format !L__ ; : Synchronizing No. 1 to 9999 !L1; !L1; Timing- synchro- nization Detailed description (1) If !L__ is commanded from one part system, operation of the first part system's program will wait until !L__ is commanded from the other part system's program.
  • Page 511 13. Program Support Functions 13.25 Timing-synchronization between Part Systems (3) If there is no movement command in the same block as the timing-synchronization command, when the next block movement starts, timing-synchronization may not be secured between the part systems. To synchronize the part systems when movement starts after the timing-synchronization, issue the movement command in the same block as the synchronizing command.
  • Page 512: End Point Error Check Cancellation; G69

    13. Program Support Functions 13.26 End Point Error Check Cancellation; G69 13.26 End Point Error Check Cancellation; G69 Function and purpose If an illegal program is given to NC, a program error will occur. However, the error point check cancellation command G69 can be used to escape a program error only in the following conditions.
  • Page 513 13. Program Support Functions 13.26 End Point Error Check Cancellation; G69 (Ex.1) Heart cum cutting Displacement is the radius difference at the start and end points ((b - a) in the illustration below). The example program is separated into two blocks of the right and left sides. G69 G03 Ya+b Jb Ff (right side) G69 G03 Y-a-b J-a ;...
  • Page 514: Coordinate Read Function; G14

    13. Program Support Functions 13.27 Coordinate Read Function; G14 13.27 Coordinate Read Function; G14 Function and purpose The G14 command is used to read the end point coordinates of the immediately preceding block, the machine coordinates, the workpiece coordinates, the TLM coordinates, or the skip coordinates.
  • Page 515 13. Program Support Functions 13.27 Coordinate Read Function; G14 Example of program (1) An example of p command value and reading coordinates are given. N1 G28 X0 Y0 Z0 ; N2 G90 G00 X-200. Y-100. G53 ; M60 ; (TLM switch is turned from OFF to ON.) N4 G00 G54 X-100.
  • Page 516 13. Program Support Functions 13.27 Coordinate Read Function; G14 (2) An example of reading skip coordinates are given. -150 N1 G91 G28 X0 Y0 Z0 ; N2 G90 G00 X0 Y0 ; N3 X0 Y-100. ; N4 G31 X-150. Y-50. F80 ; N5 G14 X100 Y101 P4 ;...
  • Page 517: Coordinates System Setting Functions

    14. Coordinates System Setting Functions 14.1 Coordinate Words and Control Axes 14. Coordinates System Setting Functions 14.1 Coordinate Words and Control Axes Function and purpose There are three controlled axis for the basic specifications, but when an additional axis is added, up to four axes can be controlled.
  • Page 518: Basic Machine, Workpiece And Local Coordinate Systems

    14. Coordinates System Setting Functions 14.2 Basic Machine, Workpiece and Local Coordinate Systems 14.2 Basic Machine, Workpiece and Local Coordinate Systems Function and purpose The basic machine coordinate system is fixed in the machine and it denotes that position which is determined inherently by the machine.
  • Page 519: Machine Zero Point And 2Nd, 3Rd, 4Th Reference Positions

    14. Coordinates System Setting Functions 14.3 Machine Zero Point and 2nd, 3rd, 4th Reference Positions 14.3 Machine Zero Point and 2nd, 3rd, 4th Reference Positions Function and purpose The machine zero point serves as the reference for the basic machine coordinate system. It is inherent to the machine and is determined by the reference (zero) position return.
  • Page 520: Basic Machine Coordinate System Selection; G53

    14. Coordinates System Setting Functions 14.4 Basic Machine Coordinate System Selection 14.4 Basic Machine Coordinate System Selection; G53 Function and purpose The basic machine coordinate system is the coordinate system that expresses the position (tool change position, stroke end position, etc.) that is characteristic to the machine. The tool is moved to the position commanded on the basic machine coordinate system with the G53 command and the coordinate command that follows.
  • Page 521: Coordinate System Setting; G92

    14. Coordinates System Setting Functions 14.5 Coordinate System Setting 14.5 Coordinate System Setting; G92 Function and purpose By commanding G92, the absolute value (workpiece) coordinate system and current position display value can be preset in the command value without moving the machine. Command format G92 X__ Y__ Z__ α...
  • Page 522: Automatic Coordinate System Setting

    14. Coordinates System Setting Functions 14.6 Automatic Coordinate System Setting 14.6 Automatic Coordinate System Setting Function and purpose This function creates each coordinate system according to the parameter values input beforehand from the setting and display unit when the reference position is reached with the first manual reference position return or dog-type reference position return when the NC power is turned ON.
  • Page 523: Reference (Zero) Position Return; G28, G29

    14. Coordinates System Setting Functions 14.7 Reference (Zero) Position Return 14.7 Reference (Zero) Position Return; G28, G29 Function and purpose (1) After the commanded axes have been positioned by G0, they are returned respectively at rapid traverse to the first reference (zero) position when G28 is commanded. (2) By commanding G29, the axes are first positioned independently at high speed to the G28 or G30 intermediate point and then positioned by G0 at the commanded position.
  • Page 524 14. Coordinates System Setting Functions 14.7 Reference (Zero) Position Return Detailed description (1) The G28 command is equivalent to the following: α α G00 Xx α α G00 Xx and α In this case, x are the reference position coordinates and they are set by a parameter "#2037 G53ofs"...
  • Page 525 14. Coordinates System Setting Functions 14.7 Reference (Zero) Position Return Example of program (Example1) G28 Xx Reference (zero) position (#1) 1st operation after power G0Xx has been switched on 2nd and subsequent operations Intermediate point G0Xx Return start position 1st operation after power has been switched on 2nd and subsequent operations...
  • Page 526 14. Coordinates System Setting Functions 14.7 Reference (Zero) Position Return (Example2) G29 Xx Present position (G0)Xx G28, G30 intermediate point (x G0 Xx (Example 3) G28 Xx ; (From point A to reference (zero) position) G30 Xx ; (From point B to 2nd reference (zero) position) G29 Xx ;...
  • Page 527: 2Nd, 3Rd And 4Th Reference (Zero) Position Return; G30

    14. Coordinates System Setting Functions 14.8 2nd, 3rd and 4th Reference (Zero) Position Return; G30 14.8 2nd, 3rd and 4th Reference (Zero) Position Return; G30 Function and purpose The tool can return to the second, third, or fourth reference (zero) position by specifying G30 P2 (P3 or P4).
  • Page 528 14. Coordinates System Setting Functions 14.8 2nd, 3rd and 4th Reference (Zero) Position Return; G30 Detailed description (1) The second, third, or fourth reference (zero) position return is specified by P2, P3, or P4. A command without P or with P0, P1, P5 or a greater P number is ignored, returning the tool to the second reference (zero) position.
  • Page 529 14. Coordinates System Setting Functions 14.8 2nd, 3rd and 4th Reference (Zero) Position Return; G30 (6) The tool length compensation amount for the axis involved is canceled after the second, third and fourth reference (zero) position returns. (7) With second, third and fourth reference (zero) position returns in the machine lock status, control from the intermediate point to the reference (zero) position will be ignored.
  • Page 530: Reference Position Check; G27

    14. Coordinates System Setting Functions 14.9 Reference Position Check ; G27 14.9 Reference Position Check; G27 Function and purpose This command first positions the tool at the position assigned by the program and then, if that positioning point is the first reference position, it outputs the reference position arrival signal to the machine in the same way as with the G28 command.
  • Page 531: Workpiece Coordinate System Setting And Offset ; G54 To G59 (G54.1)

    14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset 14.10 Workpiece Coordinate System Setting and Offset ; G54 to G59 (G54.1) Function and purpose (1) The workpiece coordinate systems facilitate the programming on the workpiece, serving the reference position of the machining workpiece as the zero point.
  • Page 532 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset Detailed description (1) The tool radius compensation amounts for the commanded axes will not be canceled even if workpiece coordinate system is switched with any of the G54 through G59 or G54.1P1 through G54.1P96 commands (2) The G54 workpiece coordinate system is selected when the power is switched ON.
  • Page 533 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset (6) The offset settings of workpiece coordinate systems can be changed any number of times. (They can also be changed by G10 L2(L20) Pp1 Xx1 Zz1.) Handling when L or P is omitted G10 L2 Pn Xx Yy Zz ;...
  • Page 534 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset (7) A new workpiece coordinate system 1 is set by issuing the G92 command in the G54 (workpiece coordinate system 1) mode. At the same time, the other workpiece coordinate systems 2 through 6 (G55 to G59) will move in parallel and new workpiece coordinate systems 2 through 6 will be set.
  • Page 535 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset (16) A new workpiece coordinate system P1 can be set by commanding G92 in the G54.1 P1 mode. However, the workpiece coordinate system of the other workpiece coordinate systems G54 to G59, G54.1 and P2 to P48 will move in parallel with it, and a new workpiece coordinate system will be set.
  • Page 536 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset Example of program (Example 1) (1) G28 X0Y0 ; (2) G53 X-1000 Y-500 ; (3) G53 X0Y0 ; Reference (zero) position Present return position (#1) position When the first reference position coordinate is zero, the basic machine coordinate system zero point and reference (zero) position return position (#1) will coincide.
  • Page 537 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset (Example 3) When workpiece coordinate system G54 has shifted (−500, −500) in example 2 (It is assumed that (3) through (10) in example 2 have been entered in subprogram 01111.) (1) G28 X0 Y0 ;...
  • Page 538 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset (Example 4) When six workpieces are placed on the same coordinate system of G54 to G59, and each is to be machined with the same machining. (1) Setting of workpiece offset data Workpiece1 X = -100.000 Y = -100.000 ........
  • Page 539 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset...
  • Page 540 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset (Example 5) Program example when continuously using 48 sets of added workpiece coordinate system offsets. In this example, the offsets for each workpiece are set beforehand in P1 to P48 when 48 workpieces are fixed on a table, as shown in the drawing below.
  • Page 541 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset (Example 6) Program example when the added workpiece coordinate system offsets are transferred to the standard workpiece coordinate system offsets and used. In this example, the workpiece coordinate system offsets for each workpiece are set beforehand in P1 to P24 when the workpiece is fixed on a rotating table, as shown in the drawing below.
  • Page 542 14. Coordinates System Setting Functions 14.10 Workpiece Coordinate System Setting and Offset L2002 (Drilling) G54 G22 H100 ; Drilling in G54 coordinate system G55 G22 H100 ; In G55 G56 G22 H100 ; In G56 G57 G22 H100 ; In G57 G58 G22 H100 ;...
  • Page 543: Local Coordinate System Setting; G52

    14. Coordinates System Setting Functions 14.11 Local Coordinate System Setting ; G52 14.11 Local Coordinate System Setting; G52 Function and purpose The local coordinate systems can be set independently on the G54 through G59 workpiece coordinate systems using the G52 command so that the commanded position serves as the programmed zero point.
  • Page 544 14. Coordinates System Setting Functions 14.11 Local Coordinate System Setting ; G52 (Example 1) Local coordinates for absolute value mode (The local coordinate system offset is not cumulated) 2500 (1) G28X0Y0 ; (2) G00G90X1. Y1. ; 2000 (3) G92X0Y0 ; (4) G00X500Y500 ;...
  • Page 545 14. Coordinates System Setting Functions 14.11 Local Coordinate System Setting ; G52 (Example 3) When used together with workpiece coordinate system 1000 1000 Workpiece coordinate system (parameter setting value) 500 2000 (1) G28X0Y0 ; (2) G00G90G54X0Y0 ; 3000 (3) G52X500Y500 ; (4) G22L200 ;...
  • Page 546 14. Coordinates System Setting Functions 14.11 Local Coordinate System Setting ; G52 (Example 4) Combination of workpiece coordinate system G54 and multiple local coordinate systems Workpiece coordinate offset (parameter setting value) (1) G28X0Y0 ; (2) G00G90G54X0Y0 ; (3) G22L300 ; (4) G52X1.
  • Page 547: Workpiece Coordinate System Preset; G92.1

    14. Coordinates System Setting Functions 14.12 Workpiece Coordinate System Preset; G92.1 14.12 Workpiece Coordinate System Preset; G92.1 Function and purpose (1) This function presets the workpiece coordinate system shifted with the program command during manual operation to the workpiece coordinate system offset from the machine zero point by the workpiece coordinate offset amount by the program command (G92.1).
  • Page 548 14. Coordinates System Setting Functions 14.12 Workpiece Coordinate System Preset; G92.1 Detailed description (1) Command the address of the axis to be preset. The axis will not be preset unless commanded. (2) A program error (P35) will occur if a value other than "0" is commanded. (3) This can be commanded in the following G code lists.
  • Page 549 14. Coordinates System Setting Functions 14.12 Workpiece Coordinate System Preset; G92.1 (6) When movement command is issued in machine lock state Movement amount Workpiece during machine lock coordinate x after preset Workpiece coordinate Preset system coordinate value Present position Present position Workpiece coordinate y after preset...
  • Page 550 14. Coordinates System Setting Functions 14.12 Workpiece Coordinate System Preset; G92.1 (8) Setting local coordinate system with G52 Local coordinates x Workpiece coordinate x after preset Present position Present position Preset Local coordinates y Local coordinate zero point Workpiece coordinate y after preset Workpiece coordinate Workpiece coordinate...
  • Page 551 14. Coordinates System Setting Functions 14.12 Workpiece Coordinate System Preset; G92.1 Example of program The workpiece coordinate system shifted with G92 is preset with G92.1. 1500 1500 G92.1 command 1000 1000 preset Workpiece zero point after G92 command 1000 1000 1500 1500 Workpiece coordinate zero point...
  • Page 552: Coordinate System For Rotary Axis

    14. Coordinates System Setting Functions 14.13 Coordinate System for Rotary Axis 14.13 Coordinate System for Rotary Axis Function and purpose The axis designated as the rotary axis with the parameters is controlled with the rotary axis' coordinate system. The rotary axis includes the rotating type (short-cut valid/invalid) and linear type (workpiece coordinate position linear type, all coordinate position linear type).
  • Page 553 14. Coordinates System Setting Functions 14.13 Coordinate System for Rotary Axis Example of operation Examples of differences in the operation and counter displays according to the type of rotation coordinate are given below. (The workpiece offset is set as 0°.) (1) Rotary type (short-cut invalid) (a) The machine coordinate position, workpiece coordinate position and current position are displayed in the range of 0 to 359.999°.
  • Page 554 14. Coordinates System Setting Functions 14.13 Coordinate System for Rotary Axis (3) Linear type (workpiece coordinate position linear type) (a) The coordinate position counter other than the workpiece coordinate position is displayed in the range of 0 to 359.999°. The workpiece coordinate position is displayed in the range of 0 to ±99999.999°. (b) The movement is the same as the linear axis.
  • Page 555: Measurement Support Functions

    15. Measurement Support Functions 15.1 Automatic Tool Length Measurement; G37.1 15. Measurement Support Functions 15.1 Automatic Tool Length Measurement; G37.1 Function and purpose These functions issue the command values from the measuring start position as far as the measurement position, move the tool in the direction of the measurement position, stop the machine once the tool has arrived at the sensor, cause the NC system to calculate automatically the difference between the coordinate values at that time and the coordinate values of the commanded measurement position and provide this difference as the tool offset amount.
  • Page 556 15. Measurement Support Functions 15.1 Automatic Tool Length Measurement; G37.1 Example of execution (1) For new measurement Reference position (Z0) Tool G28 Z0; T01; M06 T02; G90 G00 G43 Z0 H01; -100 G37.1 Z-400 R200 D150 F1; Coordinate value when reached at the measurement position=-300 -200 -300-(-400)=100...
  • Page 557 15. Measurement Support Functions 15.1 Automatic Tool Length Measurement; G37.1 Detailed description (1) Operation with G37.1 command Rapid traverse rate Speed Measurement allowable range D(d) D(d) F(Fp) R(r) Distance Offset amount Measuring Operation 1 position Normal completion Or no detection Stop point Alarm stop (P607) Operation 2...
  • Page 558 15. Measurement Support Functions 15.1 Automatic Tool Length Measurement; G37.1 Precautions (1) Program error (P600) results if G37.1 is commanded when the automatic tool length measurement function is not provided. (2) Program error (P604) results when no axis has been commanded in the G37.1 block or when two or more axes have been commanded.
  • Page 559: Skip Function; G31

    15. Measurement Support Functions 15.2 Skip Function; G31 15.2 Skip Function; G31 Function and purpose When the skip signal is input externally during linear interpolation based on the G31 command, the machine feed is stopped immediately, the remaining distance is discarded and the command in the following block is executed.
  • Page 560 15. Measurement Support Functions 15.2 Skip Function; G31 Execution of G31 G90 G00 X-100000 Y0 ; G31 X-500000 F100 ; G01 Y-100000 ; G31 X0 F100 ; Y-200000 ; G31 X-50000 F100 ; Y-300000 ; X0 ; -500000 -10000 -100000 -200000 -300000 Detailed description (Readout of skip coordinates)
  • Page 561 15. Measurement Support Functions 15.2 Skip Function; G31 Detailed description (G31 coasting) The amount of coasting from when the skip signal is input during the G31 command until the machine stops differs according to the parameter "#1174 skip_F" or F command in G31. The time to start deceleration to a stop after responding to the skip signal is short, so the machine can be stopped precisely with a small coasting amount δ...
  • Page 562 15. Measurement Support Functions 15.2 Skip Function; G31 Detailed description (Skip coordinate readout error) (1) Skip signal input coordinate readout The coasting amount based on the position loop time constant Tp and cutting feed time constant Ts is not included in the skip signal input coordinate values. Therefore, the workpiece coordinate values applying when the skip signal is input can be read out across the error range in the following formula as the skip signal input coordinate values.
  • Page 563 15. Measurement Support Functions 15.2 Skip Function; G31 Examples of compensating for coasting (1) Compensating for skip signal input coordinates #110 = Skip feedrate ; #111 = Response delay time t G31 X100. F100 ; Skip command G04 ; Machine stop check #101 = #5061 ;...
  • Page 564: Multi-Step Skip Function; G31.N, G04

    15. Measurement Support Functions 15.3 Multi-step Skip Function; G31.n, G04 15.3 Multi-step Skip Function; G31.n, G04 Function and purpose The setting of combinations of skip signals to be input enables skipping under various conditions. The actual skip operation is the same as with G31. The G commands which can specify skipping are G31.1, G31.2, G31.3, and G04, and the correspondence between the G commands and skip signals can be set by parameters.
  • Page 565 15. Measurement Support Functions 15.3 Multi-step Skip Function; G31.n, G04 Example of operation (1) The multi-step skip function enables the following control, thereby improving measurement accuracy and shortening the time required for measurement. Parameter settings : Skip condition Skip speed G31.1 20.0mm/min (f1) G31.2...
  • Page 566: Multi-Step Skip Function 2; G31

    15. Measurement Support Functions 15.4 Multi-step Skip Function 2; G31 15.4 Multi-step Skip Function 2; G31 Function and purpose During linear interpolation followed by the skip command (G31), operation can be skipped according to the conditions of the skip signal parameter Pp. Skip signal command P is specified with the external skip signal 1 to 8.
  • Page 567 15. Measurement Support Functions 15.4 Multi-step Skip Function 2; G31 Detailed description (1) The skip is specified by command speed f. Note that the F modal is not updated. (2) The skip signal is specified by skip signal parameter p. p can range from 1 to 255. If p is specified outside the range, program error (P35) occurs.
  • Page 568: Speed Change Skip; G31

    15. Measurement Support Functions 15.5 Speed Change Skip; G31 15.5 Speed Change Skip; G31 Function and purpose When the skip signal is detected during linear interpolation by the skip command (G31), the feedrate is changed. Command format α G31 X__ Y__ Z__ F__ F1=__ ...
  • Page 569 15. Measurement Support Functions 15.5 Speed Change Skip; G31 (7) If the skip signal is input during the deceleration by the movement command completion, the speed change will be ignored. Speed Skip signal 4 Skip signal 3 Skip signal 2 (Speed change) : Invalid Skip signal 1 (Movement stop) : Valid Time Deceleration section by the movement...
  • Page 570 15. Measurement Support Functions 15.5 Speed Change Skip; G31 (10) If the G31 block is started with the skip signal input, that signal is considered to rise at the same time as the block start. (11) If the skip signals for changing the speed and for stopping the movement are simultaneously input, the skip signal for stopping the movement will be valid regardless of the size of the number.
  • Page 571: Programmable Current Limitation

    15. Measurement Support Functions 15.6 Programmable Current Limitation 15.6 Programmable Current Limitation Function and purpose This function allows the current limit value of the servo axis to be changed to a desired value in the program, and is used for the workpiece stopper, etc. The commanded current limit value is designated with a ratio of the limit current to the rated current.
  • Page 572: Stroke Check Before Travel; G22.1/G23.1

    15. Measurement Support Functions 15.7 Stroke Check Before Travel; G22.1/G23.1 15.7 Stroke Check Before Travel; G22.1/G23.1 Function and purpose By commanding the boundaries from the program with coordinate values on the machine coordinate system, machine entry into that boundary can be prohibited. This can be set only for the three basic axes.
  • Page 573 15. Measurement Support Functions 15.7 Stroke Check Before Travel; G22.1/G23.1 Precautions and restrictions (1) This function is valid only when starting the automatic operation. When interrupted with manual absolute OFF, the prohibited area will also be shifted by the interrupted amount. (2) An error will occur if the start point or end point is in the prohibited area.
  • Page 574: Appendix 1. Program Error

    Appendix 1. Program Error Appendix 1. Program Error (The bold characters are the message displayed in the screen.) These alarms occur during automatic operation‚ and the causes of these alarms are mainly program errors which occur‚ for instance‚ when mistakes have been made in the preparation of the machining programs or when programs which conform to the specification have not been prepared.
  • Page 575 Appendix 1. Program Error Error No. Details Remedy P 37 O, N number zero • The program Nos. are designated across a range from 1 to 99999999. A zero has been specified for program and • The sequence Nos. are designated across a sequence Nos.
  • Page 576 Appendix 1. Program Error Error No. Details Remedy • Check the numerical values of the addresses P 70 Arc end point deviation large that specify the start and end points, arc • There is an error in the arc start and end center as well as the radius in the program.
  • Page 577 Appendix 1. Program Error Error No. Details Remedy • Check the specifications. P 90 No spec: Thread cutting A thread cutting command was issued even though there is no thread cutting command specification. • Check the specifications. P 91 No spec: Var lead threading Variable lead thread cutting (G34) was commanded even though there is no variable lead thread cutting specification.
  • Page 578 Appendix 1. Program Error Error No. Details Remedy • Check the specifications. P124 No spec: Inverse time feed There is no inverse time option. P125 G93 mode error • Reconsider the program. • A G code command that cannot be issued was issued during G93 mode.
  • Page 579 Appendix 1. Program Error Error No. Details Remedy • Check the specifications. P150 No spec: Nose R compensation • Even though there were no tool radius compensation specifications, tool radius compensation commands (G41 and G42) were issued. • Even though there were no nose R compensation specifications, nose R compensation commands (G41, G42, and G46) were issued.
  • Page 580 Appendix 1. Program Error Error No. Details Remedy • Add the compensation No. command to the P170 No offset number compensation command block. The compensation No. (DOO‚ TOO‚ HOO) • Check the number of compensation No. sets command was not given when the radius a correct it to a compensation No.
  • Page 581 Appendix 1. Program Error Error No. Details Remedy • Command the spindle rotation speed (S) in P181 No spindle command (Tap cycle) synchronous tapping. Spindle rotation speed (S) has not been • When "#8125 Check Scode in G84" is set to commanded in synchronous tapping.
  • Page 582 Appendix 1. Program Error Error No. Details Remedy • Delete the following G codes from this P201 Program error (MRC) subprogram that is called with the compound • When called with a compound type fixed type fixed cycle for turning machining I cycle for turning machining I command, the commands (G70 to G73): G27‚...
  • Page 583 Appendix 1. Program Error Error No. Details Remedy • Check the number of subprogram calls and P230 Subprogram nesting over correct the program so that it does not exceed • A subprogram has been called 8 or more 8 times. times in succession from the subprogram.
  • Page 584 Appendix 1. Program Error Error No. Details Remedy • Check the specifications. P270 No spec: User macro A macro specification was commanded though there are no such command specifications. • Check the specifications. P271 No spec: Macro interrupt A macro interruption command has been issued though it is not included in the specifications.
  • Page 585 Appendix 1. Program Error Error No. Details Remedy • Reconsider the program and correct it so that P294 DO and END not paired the DO's and END's are paired off properly. The DO's and END's are not paired off properly. •...
  • Page 586 Appendix 1. Program Error Error No. Details Remedy • Check the specifications. P381 No spec: Arc R/C Corner chamfering II /corner rounding II was specified in the arc interpolation block although corner chamfering/corner rounding II is unsupported. • Replace the block succeeding the corner P382 No corner movement chamfering/corner rounding command by...
  • Page 587 Appendix 1. Program Error Error No. Details Remedy • Before commanding G111, cancel the P411 Illegal modal G111 following commands. • G111 was issued during milling mode. • Milling mode • G111 was issued during nose R • Nose R compensation compensation mode.
  • Page 588 Appendix 1. Program Error Error No. Details Remedy • Check the program. P434 Compare error One of the axes did not return to the reference position when the reference position check command (G27) was executed. • An M code command cannot be issued in a P435 G27 and M commands in a block G27 command block and so the G27...
  • Page 589 Appendix 1. Program Error Error No. Details Remedy P481 Illegal G code (mill) • Check the program. • An illegal G code was used during the milling mode. • An illegal G code was used during cylindrical interpolation or polar coordinate interpolation.
  • Page 590 Appendix 1. Program Error Error No. Details Remedy P485 Illegal modal (mill) • Check the program. • Before issuing G12.1, issue G40 or G97. • The milling mode was turned ON during • Before issuing G12.1, issue a T command. nose R compensation or constant surface •...
  • Page 591 Appendix 1. Program Error Error No. Details Remedy • Reconsider the program. P551 G06.2 knot error • Specify the knot by monotone increment. The knot (k) command value is smaller than the value for the previous block. • Match the G06.2 first block coordinate P552 Start point of 1st G06.2 err command value with the previous block end...
  • Page 592 Appendix 1. Program Error Error No. Details Remedy • Check the specification. P611 No spec: Exponential function Specification for exponential interpolation is not available. • Check the program. P612 Exponential function error A movement command for exponential interpolation was issued during mirror image for facing tool posts.
  • Page 593 Appendix 1. Program Error Error No. Details Remedy • Check the specifications. P930 No spec: Tool axis compen A tool length compensation along the tool axis command was issued even though there is no tool length compensation along the tool axis specification.
  • Page 594: Appendix 2. Order Of G Function Command Priority

    Appendix 2. Order of G Function Command Priority Appendix 2. Order of G Function Command Priority (Command in a separate block when possible) (Note) Upper level: When commanded in the same block indicates that both commands are executed simultaneously G Group G43, G44, Commanded G00 to G03...
  • Page 595 Appendix 2. Order of G Function Command Priority G Group G43, G44, Commanded G00 to G03 G17 to G19 G90, G91 G94, G95 G20, G21 G40 to G42 G code G20, G21 Possible in same block Inch/metric changeover G27 to G30 G27 to G30 are executed are executed...
  • Page 596 Appendix 2. Order of G Function Command Priority G Group G50.1 Commanded G73 to G89 G98, G99 G54 to G59 G61 to G64 G66 to G67 G96, G97 G code G51.1 Group 1 G66 to G67 command is are executed During the arc executed G00 to G03.1...
  • Page 597 Appendix 2. Order of G Function Command Priority G Group G50.1 Commanded G73 to G89 G98, G99 G54 to G59 G61 to G64 G66 to G67 G96, G97 G code G51.1 G20, G21 Inch/metric changeover G66 to G67 G27 to G30 are executed are executed G27 to G30...
  • Page 598 Appendix 2. Order of G Function Command Priority G Group G00 to G03.1 G43, G44, Commanded G17 to G19 G90, G91 G94, G95 G20, G21 G40 to G42 G code Arc and G43, G44 cause G command error P70 G43, G44, G49 commanded last is valid.
  • Page 599 Appendix 2. Order of G Function Command Priority G Group G00 to G03.1 G43, G44 Commanded G17, G19 G90, G92 G94, G95 G20, G21 G40 to G42 G code G66 to G67 are executed G66 to G67 G00 to G03.1 are executed G66 to G67 modals are...
  • Page 600 Appendix 2. Order of G Function Command Priority G Group G50.1 Commanded G73 to G89 G98 to G99 G54 to G59 G61 to G65 G66 to G67 G96, G97 G code G51.1 G66 to G67 are executed G43, G44, G49 G43 to G49 Length modals are...
  • Page 601 Appendix 2. Order of G Function Command Priority G Group G50.1 Commanded G73 to G89 G98, G99 G54 to G59 G61 to G67 G66 to G67 G96, G97 G code G51.1 G66 to G67 G66 to G67 G command G66 to G67 are executed are executed commanded...
  • Page 603: Index

    INDEX INDEX Numbers 2nd, 3rd and 4th Reference (Zero) Position Return; G30 ....515 F1-digit Feed ..................108 3-dimensional Circular Interpolation; G02.4, G03.4 ......95 Feed Functions ................107 3-dimensional Coordinate Conversion; G68.1/69.1 ......458 Feedrate Designation and Effects on Control Axes ......116 Figure Rotation;...
  • Page 604 INDEX Normal Line Control ; G40.1/G41.1/G42.1........394 Tape Codes..................7 NURBS Interpolation ................100 Tape Memory Format................. 13 Tapping Mode; G63 ................. 143 Thread Cutting ................... 56 Three-dimensional Tool Radius Compensation ; G40/G41,G42..218 Optional Block Skip ................13 Timing-synchronization between Part Systems ........ 497 Optional Block Skip ;...
  • Page 605: Revision History

    Revision History Date of revision Manual No. Revision details Nov. 2008 IB(NA)1500930-A First edition created.
  • Page 606 Global Service Network AMERICA EUROPE MITSUBISHI ELECTRIC AUTOMATION INC. (AMERICA FA CENTER) MITSUBISHI ELECTRIC EUROPE B.V. (EUROPE FA CENTER) Central Region Service Center GOTHAER STRASSE 10, 40880 RATINGEN, GERMANY 500 CORPORATE WOODS PARKWAY, VERNON HILLS, IL., 60061, U.S.A. TEL: +49-2102-486-0 / FAX: +49-2102-486-5910...
  • Page 607 MITSUBISHI ELECTRIC ASIA PTE. LTD. (ASEAN FA CENTER) Singapore Service Center China (Shanghai) Service Center 4/F ZHI FU PLAZA, NO. 80 XIN CHANG ROAD, 307 ALEXANDRA ROAD #05-01/02 MITSUBISHI ELECTRIC BUILDING SINGAPORE 159943 SHANGHAI 200003, CHINA TEL: +65-6473-2308 / FAX: +65-6476-7439 Indonesia Service Center TEL: +86-21-2322-3030 / FAX: +86-21-2322-3000 WISMA NUSANTARA 14TH FLOOR JL.
  • Page 608 Every effort has been made to keep up with software and hardware revisions in the contents described in this manual. However, please understand that in some unavoidable cases simultaneous revision is not possible. Please contact your Mitsubishi Electric dealer with any questions or comments regarding the use of this product. Duplication Prohibited This manual may not be reproduced in any form, in part or in whole, without written permission from Mitsubishi Electric Corporation.

Table of Contents