Mitsubishi Electric M800/M80/C80 Series Programming Manual


Add to my manuals
534 Pages

advertisement

Mitsubishi Electric M800/M80/C80 Series Programming Manual | Manualzz
Introduction
This manual describes how to carry out MITSUBISHI CNC programming.
Supported models are as follows:
Supported models
M800W series
M800S series
M80W series
M80 series
C80 series
Abbreviations in this manual
M800 series, M800, M8
M80 series, M80, M8
C80
This manual describes programming, therefore, read this manual thoroughly before using this NC system.
To ensure safe use of this NC system, thoroughly study the "Precautions for Safety" on the following page before using this NC
system.
Be sure to always keep this manual on hand so that users can refer to it at any time.
Details described in this manual
The description concerning "Signals" in the main text refers to information transmission between a machine and PLC or between
NC and PLC.
The method for controlling the signals (ON/OFF) differs depending on the machine. Refer to the manual issued by the machine
tool builder (MTB).
Some parameters can be used by end-users and some parameters are set by the MTB according to the specifications.
End-users may not be able to set or change some of the parameters described as "... can be set with the parameter #XXXX" in
the main text. Confirm the specifications for your machine with the manual issued by the MTB.
CAUTION
For items described as "Restrictions" or "Usable State" in this manual, the instruction manual issued by the machine
tool builder (MTB) takes precedence over this manual.
Items not described in this manual must be interpreted as "not possible".
This manual is written on the assumption that all the applicable functions are included. Some of them, however, may
not be available for your NC system. Refer to the specifications issued by the machine tool builder before use.
Refer to the Instruction Manual issued by the MTB for details regarding each machine tool.
Some screens and functions may differ depending on the NC system (or its version), and some functions may not be
available. Please confirm the specifications before use.
General precautions
(1) Refer to the following documents for details handling
MITSUBISHI CNC M800/M80 Series Instruction Manual ............... IB-1501274
MITSUBISHI CNC C80 Series Instruction Manual ......................... IB-1501453
(2) Refer to the following documents for details on programming
MITSUBISHI CNC M800/M80/C80 Series Programming Manual
Lathe System (1/2) ...................................................................
Lathe System (2/2) ...................................................................
Machining Center System (1/2) ................................................
Machining Center System (2/2) ................................................
IB-1501275
IB-1501276
IB-1501277
IB-1501278
Precautions for Safety
Always read the specifications issued by the machine tool builder, 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" and "CAUTION".
DANGER
When the user may be subject to imminent fatalities or major injuries if handling is mistaken.
WARNING
When the user may be subject to fatalities or major injuries if handling is mistaken.
CAUTION
When the user may be subject to injuries or when physical damage may occur if handling is mistaken.
Note that even items ranked as " CAUTION", may lead to major results depending on the situation. In any case, important information that must always be observed is described.
The following sings indicate prohibition and compulsory.
This sign indicates prohibited behavior (must not do).
For example,
indicates "Keep fire away".
This sign indicated a thing that is pompously (must do).
For example,
indicates "it must be grounded".
The meaning of each pictorial sing is as follows.
CAUTION
CAUTION
rotated object
CAUTION HOT
Danger
Electric shock risk
Danger
explosive
Prohibited
Disassembly is
prohibited
KEEP FIRE AWAY
General instruction
Earth ground
For Safe Use
Mitsubishi CNC is designed and manufactured solely for applications to machine tools to be used for industrial purposes.
Do not use this product in any applications other than those specified above, especially those which are substantially influential
on the public interest or which are expected to have significant influence on human lives or properties.
DANGER
Not applicable in this manual.
WARNING
1. Items related to operation
If the operation start position is set in a block which is in the middle of the program and the program is started, the program
before the set block is not executed. Please confirm that G and F modal and coordinate values are appropriate. If there are
coordinate system shift commands or M, S, T and B commands before the block set as the start position, carry out the
required commands using the MDI, etc. If the program is run from the set block without carrying out these operations, there
is a danger of interference with the machine or of machine operation at an unexpected speed, which may result in breakage
of tools or machine tool or may cause damage to the operators.
Under the constant surface speed control (during G96 modal), if the axis targeted for the constant surface speed control
(normally X axis for a lathe) moves toward the spindle center, the spindle rotation speed will increase and may exceed the
allowable speed of the workpiece or chuck, etc. In this case, the workpiece, etc. may jump out during machining, which
may result in breakage of tools or machine tool or may cause damage to the operators.
CAUTION
1. Items related to product and manual
For items described as "Restrictions" or "Usable State" in this manual, the instruction manual issued by the machine tool
builder takes precedence over this manual.
Items not described in this manual must be interpreted as "not possible".
This manual is written on the assumption that all the applicable functions are included. Some of them, however, may not
be available for your NC system.
Refer to the specifications issued by the machine tool builder before use.
Refer to the Instruction Manual issued by each machine tool builder for details on each machine tool.
Some screens and functions may differ depending on the NC system (or its version), and some functions may not be possible. Please confirm the specifications before use.
2. Items related to operation
Before starting actual machining, always carry out graphic check, dry run operation and single block operation to check the
machining program, tool offset amount, workpiece compensation amount and etc.
If the workpiece coordinate system offset amount is changed during single block stop, the new setting will be valid from the
next block.
Turn the mirror image ON and OFF at the mirror image center.
If the tool offset amount is changed during automatic operation (including during single block stop), it will be validated from
the next block or blocks onwards.
Do not make the synchronized spindle rotation command OFF with one workpiece chucked by the reference spindle and
synchronized spindle during the spindle synchronization.
Failure to observe this may cause the synchronized spindle stop, and hazardous situation.
3. Items related to programming
The commands with "no value after G" will be handled as "G00".
";" "EOB" and "%" "EOR" are expressions used for explanation. The actual codes are: For ISO: "CR, LF", or "LF" and "%".
Programs created on the Edit screen are stored in the NC memory in a "CR, LF" format, but programs created with external
devices such as the FLD or RS-232C may be stored in an "LF" format.
The actual codes for EIA are: "EOB (End of Block)" and "EOR (End of Record)".
When creating the machining program, select the appropriate machining conditions, and make sure that the performance,
capacity and limits of the machine and NC are not exceeded. The examples do not consider the machining conditions.
Do not change fixed cycle programs without the prior approval of the machine tool builder.
When programming the multi-part system, take special care to the movements of the programs for other part systems.
Disposal
(Note)
This symbol mark is for EU countries only.
This symbol mark is according to the directive 2006/66/EC Article 20 Information for endusers and Annex II.
Your MITSUBISHI ELECTRIC product is designed and manufactured with high quality materials and
components which can be recycled and/or reused.
This symbol means that batteries and accumulators, at their end-of-life, should be disposed of
separately from your household waste.
If a chemical symbol is printed beneath the symbol shown above, this chemical symbol means that the
battery or accumulator contains a heavy metal at a certain concentration. This will be indicated as
follows:
Hg: mercury (0,0005%), Cd: cadmium (0,002%), Pb: lead (0,004%)
In the European Union there are separate collection systems for used batteries and accumulators.
Please, dispose of batteries and accumulators correctly at your local community waste collection/
recycling centre.
Please, help us to conserve the environment we live in!
Trademarks
MELDAS, MELSEC, EZSocket, EZMotion, iQ Platform, MELSEC iQ-R, MELSOFT, GOT, CC-Link, CC-Link/LT and
CC-Link IE are either trademarks or registered trademarks of Mitsubishi Electric Corporation in Japan and/or other
countries.
Ethernet is a registered trademark of Xerox Corporation in the United States and/or other countries.
Microsoft®, Windows®, SQL Server® and Access® are either trademarks or registered trademarks of Microsoft
Corporation in the United States and/or other countries.
SD logo and SDHC logo are either registered trademarks or trademarks of LLC.
UNIX is a registered trademark of The Open Group in the United States and/or other countries.
Intel® and Pentium® are either trademarks or registered trademarks of Intel Corporation in the United States and/or
other countries.
MODBUS® is either a trademark or a registered trademark of Schneider Electric USA, Inc. or the affiliated
companies in Japan and/or other countries.
EtherNet/IP is a trademark of Open DeviceNet Vendor Association,Inc.
PROFIBUS-DP is a trademark of Profibus International.
Oracle® is a registered trademark of Oracle Corporation, the subsidiaries, or the affiliated companies in the United
States and /or other countries.
Other company and product names that appear in this manual are trademarks or registered trademarks of the
respective companies.
本製品の取扱いについて
( 日本語 /Japanese)
本製品は工業用 ( クラス A) 電磁環境適合機器です。販売者あるいは使用者はこの点に注意し、住商業環境以外で
の使用をお願いいたします。
Handling of our product
(English)
This is a class A product. In a domestic environment this product may cause radio interference in which case the
user may be required to take adequate measures.
본 제품의 취급에 대해서
( 한국어 /Korean)
이 기기는 업무용 (A 급 ) 전자파적합기기로서 판매자 또는 사용자는 이 점을 주의하시기 바라며 가정외의 지역에
서 사용하는 것을 목적으로 합니다 .
Contents
Chapter 1 - 14 : Refer to Programming Manual (Machining Center System) (1/2)
Chapter 15 and later : Refer to Programming Manual (Machining Center System) (2/2)
1 Control Axes................................................................................................................................................. 1
1.1 Coordinate Words and Control Axes ........................................................................................................................ 2
1.2 Coordinate Systems and Coordinate Zero Point Symbols ....................................................................................... 3
2 Minimum Command Unit............................................................................................................................. 5
2.1 Input Setting Unit ...................................................................................................................................................... 6
2.2 Input Command Increment Tenfold .......................................................................................................................... 7
2.3 Indexing Increment ................................................................................................................................................... 8
3 Program Formats ......................................................................................................................................... 9
3.1 Program Format...................................................................................................................................................... 10
3.2 File Format.............................................................................................................................................................. 14
3.3 Optional Block Skip................................................................................................................................................. 16
3.3.1 Optional Block Skip; / ..................................................................................................................................... 16
3.3.2 Optional Block Skip Addition ; /n .................................................................................................................... 18
3.4 G Codes.................................................................................................................................................................. 20
3.4.1 Modal, Unmodal ............................................................................................................................................. 20
3.4.2 G Code Lists .................................................................................................................................................. 20
3.5 Precautions Before Starting Machining .................................................................................................................. 25
4 Pre-read Buffer ........................................................................................................................................... 27
4.1 Pre-read Buffer ....................................................................................................................................................... 28
5 Position Commands .................................................................................................................................. 29
5.1 Position Command Methods ; G90,G91 ................................................................................................................. 30
5.2 Inch/Metric Conversion ; G20,G21 ......................................................................................................................... 32
5.3 Decimal Point Input................................................................................................................................................. 34
6 Interpolation Functions ............................................................................................................................. 41
6.1 Positioning (Rapid Traverse) ; G00 ....................................................................................................................... 42
6.2 Linear Interpolation ; G01 ....................................................................................................................................... 45
6.3 Circular Interpolation ; G02,G03 ............................................................................................................................ 47
6.4 R Specification Circular Interpolation ; G02,G03 .................................................................................................... 53
6.5 Plane Selection ; G17,G18,G19 ............................................................................................................................. 56
6.6 Thread Cutting ........................................................................................................................................................ 58
6.6.1 Constant Lead Thread Cutting ; G33 ............................................................................................................. 58
6.6.2 Inch Thread Cutting ; G33............................................................................................................................. 62
6.7 Helical Interpolation ; G17,G18,G19 and G02,G03 ................................................................................................ 64
6.8 Unidirectional Positioning ....................................................................................................................................... 70
6.8.1 Unidirectional Positioning ; G60 ..................................................................................................................... 70
6.8.2 Axis-based Unidirectional Positioning ............................................................................................................ 72
6.9 Cylindrical Interpolation ; G07.1.............................................................................................................................. 73
6.10 Circular Cutting ; G12,G13 ................................................................................................................................... 80
6.11 Polar Coordinate Interpolation ; G12.1,G13.1/G112,G113................................................................................... 82
6.12 Exponential Interpolation ; G02.3,G03.3............................................................................................................... 89
6.13 Polar Coordinate Command ; G16 ....................................................................................................................... 96
6.14 Spiral/Conical Interpolation ; G02.1/G03.1(Type1), G02/G03(Type2) ................................................................ 103
6.15 3-dimensional Circular Interpolation ; G02.4,G03.4............................................................................................ 108
6.16 NURBS Interpolation ; G06.2.............................................................................................................................. 113
6.17 Hypothetical Axis Interpolation ; G07.................................................................................................................. 119
7 Feed Functions......................................................................................................................................... 121
7.1 Rapid Traverse Rate............................................................................................................................................. 122
7.1.1 Rapid Traverse Rate .................................................................................................................................... 122
7.1.2 G00 Feedrate Command (,F Command) ..................................................................................................... 123
7.2 Cutting Feed Rate................................................................................................................................................. 127
7.3 F1-digit Feed......................................................................................................................................................... 128
7.4 Feed Per Minute/Feed Per Revolution (Asynchronous Feed/Synchronous Feed) ; G94,G95 ............................. 130
7.5 Inverse Time Feed ; G93 ...................................................................................................................................... 133
7.6 Feedrate Designation and Effects on Control Axes.............................................................................................. 138
7.7 Rapid Traverse Constant Inclination Acceleration/Deceleration........................................................................... 142
7.8 Rapid Traverse Constant Inclination Multi-step Acceleration/Deceleration .......................................................... 147
7.9 Cutting Feed Constant Inclination Acceleration/Deceleration............................................................................... 155
7.10 Exact Stop Check ; G09 ..................................................................................................................................... 161
7.11 Exact Stop Check Mode ; G61 ........................................................................................................................... 165
7.12 Deceleration Check ............................................................................................................................................ 166
7.12.1 Deceleration Check.................................................................................................................................... 166
7.12.2 Deceleration Check when Movement in The Opposite Direction Is Reversed........................................... 174
7.13 Rapid Traverse Block Overlap; G0.5 P1............................................................................................................. 176
7.13.1 Rapid Traverse Block Overlap for G00; G0.5 ............................................................................................ 178
7.13.2 Rapid Traverse Block Overlap for G28 ...................................................................................................... 186
7.14 Automatic Corner Override ................................................................................................................................. 188
7.14.1 Automatic Corner Override ; G62............................................................................................................... 194
7.14.2 Inner Arc Override...................................................................................................................................... 195
7.15 Tapping Mode ; G63 ........................................................................................................................................... 196
7.16 Cutting Mode ; G64............................................................................................................................................ 197
8 Dwell.......................................................................................................................................................... 199
8.1 Dwell (Time Designation) ; G04............................................................................................................................ 200
9 Miscellaneous Functions ........................................................................................................................ 203
9.1 Miscellaneous Functions (M8-digits) .................................................................................................................... 204
9.2 Secondary Miscellaneous Functions (A8-digits, B8-digits or C8-digits) ............................................................... 206
9.3 Index Table Indexing ............................................................................................................................................ 207
10 Spindle Functions .................................................................................................................................. 213
10.1 Spindle Functions ............................................................................................................................................... 214
10.2 Constant Surface Speed Control ; G96,G97 ...................................................................................................... 215
10.3 Spindle Clamp Speed Setting ; G92 ................................................................................................................... 221
10.4 Spindle Position Control (Spindle/C Axis Control) .............................................................................................. 223
11 Tool Functions (T command)................................................................................................................ 231
11.1 Tool Functions (T8-digit BCD) ............................................................................................................................ 232
12 Tool Compensation Functions ............................................................................................................. 233
12.1 Tool Compensation............................................................................................................................................. 234
12.1.1 Tool Compensation .................................................................................................................................... 234
12.1.2 Number of Tool Offset Sets Allocation to Part Systems............................................................................. 238
12.2 Tool Length Compensation/Cancel ; G43,G44/G49 ........................................................................................... 240
12.3 Tool Radius Compensation ; G38,G39/G40/G41,G42 ....................................................................................... 245
12.3.1 Tool Radius Compensation Operation ....................................................................................................... 246
12.3.2 Other Commands and Operations during Tool Radius Compensation...................................................... 255
12.3.3 G41/G42 Commands and I, J, K Designation ............................................................................................ 265
12.3.4 Interrupts during Tool Radius Compensation............................................................................................. 271
12.3.5 General Precautions for Tool Radius Compensation................................................................................. 273
12.3.6 Changing of Compensation No. during Compensation Mode.................................................................... 274
12.3.7 Start of Tool Radius Compensation and Z Axis Cut in Operation .............................................................. 277
12.3.8 Interference Check..................................................................................................................................... 279
12.3.9 Diameter Designation of Compensation Amount ....................................................................................... 289
12.3.10 Workpiece Coordinate Changing during Radius Compensation.............................................................. 291
12.4 Tool Nose Radius Compensation (for Machining Center System) ..................................................................... 293
12.5 3-dimensional Tool Radius Compensation ; G40/G41,G42................................................................................ 296
12.6 Tool Position Offset ; G45 to G48....................................................................................................................... 308
13 Fixed Cycle ............................................................................................................................................. 317
13.1 Fixed Cycles ....................................................................................................................................................... 318
13.1.1 Drilling, Spot Drilling ; G81 ......................................................................................................................... 322
13.1.2 Drilling, Counter Boring ; G82 .................................................................................................................... 323
13.1.3 Deep Hole Drilling Cycle ; G83 .................................................................................................................. 324
13.1.3.1 Deep Hole Drilling Cycle ................................................................................................................... 324
13.1.3.2 Small Diameter Deep Hole Drilling Cycle .......................................................................................... 326
13.1.4 Tapping Cycle ; G84 .................................................................................................................................. 329
13.1.5 Boring ; G85 ............................................................................................................................................... 341
13.1.6 Boring ; G86 ............................................................................................................................................... 342
13.1.7 Back Boring ; G87 ...................................................................................................................................... 343
13.1.8 Boring ; G88 ............................................................................................................................................... 345
13.1.9 Boring ; G89 ............................................................................................................................................... 346
13.1.10 Stepping Cycle ; G73 ............................................................................................................................... 347
13.1.11 Reverse Tapping Cycle ; G74 .................................................................................................................. 349
13.1.12 Circular Cutting ; G75............................................................................................................................... 351
13.1.13 Fine Boring ; G76 ..................................................................................................................................... 353
13.1.14 Precautions for Using a Fixed Cycle ........................................................................................................ 355
13.1.15 Initial Point and R Point Level Return ; G98,G99..................................................................................... 357
13.1.16 Setting of Workpiece Coordinates in Fixed Cycle Mode .......................................................................... 358
13.1.17 Drilling Cycle High-Speed Retract............................................................................................................ 359
13.1.18 Acceleration/Deceleration Mode Change in Hole Drilling Cycle .............................................................. 363
13.2 Special Fixed Cycle ............................................................................................................................................ 365
13.2.1 Bolt Hole Cycle ; G34................................................................................................................................. 366
13.2.2 Line at Angle ; G35 .................................................................................................................................... 367
13.2.3 Arc ; G36 .................................................................................................................................................... 368
13.2.4 Grid ; G37.1................................................................................................................................................ 369
14 Macro Functions .................................................................................................................................... 371
14.1 Subprogram Control; M98, M99, M198 .............................................................................................................. 372
14.1.1 Subprogram Call ; M98,M99 ..................................................................................................................... 372
14.1.2 Subprogram Call ; M198 ........................................................................................................................... 378
14.1.3 Figure Rotation ; M98 I_J_K_ .................................................................................................................... 379
14.2 Variable Commands ........................................................................................................................................... 382
14.3 User Macro ......................................................................................................................................................... 387
14.4 Macro Call Instructions ....................................................................................................................................... 388
14.4.1 Simple Macro Calls ; G65 ......................................................................................................................... 388
14.4.2 Modal Call A (Movement Command Call) ; G66 ....................................................................................... 392
14.4.3 Modal Call B (for Each Block) ; G66.1 ...................................................................................................... 394
14.4.4 G Code Macro Call..................................................................................................................................... 396
14.4.5 Miscellaneous Command Macro Call (for M, S, T, B Code Macro Call) .................................................... 397
14.4.6 Detailed Description for Macro Call Instruction .......................................................................................... 399
14.4.7 ASCII Code Macro ..................................................................................................................................... 401
14.5 Variables Used in User Macros .......................................................................................................................... 405
14.5.1 Common Variables..................................................................................................................................... 407
14.5.2 Local Variables (#1 to #33) ........................................................................................................................ 408
14.5.3 System Variables ....................................................................................................................................... 411
14.6 User Macro Commands ...................................................................................................................................... 412
14.6.1 Operation Commands ................................................................................................................................ 412
14.6.2 Control Commands .................................................................................................................................... 416
14.6.3 External Output Commands ; POPEN, PCLOS, DPRNT.......................................................................... 419
14.6.4 Precautions ................................................................................................................................................ 423
14.6.5 Actual Examples of Using User Macros..................................................................................................... 425
14.7 Macro Interruption; M96, M97............................................................................................................................. 429
15 Program Support Functions ................................................................................................................. 439
15.1 Corner Chamfering I /Corner Rounding I............................................................................................................ 440
15.1.1 Corner Chamfering I ; G01 X_ Y_ ,C ......................................................................................................... 440
15.1.2 Corner Rounding I ; G01 X_ Y_ ,R_........................................................................................................... 442
15.1.3 Corner Chamfering Expansion/Corner Rounding Expansion..................................................................... 444
15.1.4 Interrupt during Corner Chamfering/Interrupt during Corner Rounding ..................................................... 446
15.2 Corner Chamfering II /Corner Rounding II .......................................................................................................... 447
15.2.1 Corner Chamfering II ; G01/G02/G03 X_ Y_ ,C_....................................................................................... 447
15.2.2 Corner Rounding II ; G01/G02/G03 X_ Y_ ,R_ .......................................................................................... 449
15.2.3 Corner Chamfering Expansion/Corner Rounding Expansion..................................................................... 450
15.2.4 Interrupt during Corner Chamfering/Interrupt during Corner Rounding ..................................................... 450
15.3 Linear Angle Command ; G01 X_/Y_ A_/,A_...................................................................................................... 451
15.4 Geometric ; G01 A_ ............................................................................................................................................ 452
15.5 Geometric IB....................................................................................................................................................... 454
15.5.1 Geometric IB (Automatic Calculation of Two-arc Contact) ; G02/G03 P_Q_ /R_ ..................................... 455
15.5.2 Geometric IB (Automatic Calculation of Linear - Arc Intersection) ; G01 A_ , G02/G03 P_Q_H_ ............. 457
15.5.3 Geometric IB (Automatic Calculation of Linear - Arc Intersection) ; G01 A_ , G02/G03 R_H_................. 460
15.6 G Command Mirror Image ; G50.1,G51.1 .......................................................................................................... 462
15.7 Normal Line Control ; G40.1/G41.1/G42.1 (G150/G151/G152).......................................................................... 466
15.8 Manual Arbitrary Reverse Run Prohibition ; G127.............................................................................................. 486
15.9 Data Input by Program........................................................................................................................................ 492
15.9.1 Parameter Input by Program ; G10 L70/L100, G11 ................................................................................... 492
15.9.2 Compensation Data Input by Program ; G10 L2/L10/L11/L12/L13/L20, G11 ............................................ 495
15.9.3 Compensation Data Input by Program (Turning Tool) ; G10 L12/L13, G11............................................... 501
15.9.4 Tool Shape Input by Program ; G10 L100, G11......................................................................................... 503
15.9.5 R-Navi Data Input by Program ; G10 L110, G11, G68.2, G69................................................................... 506
15.10 Tool Life Management II ; G10 L3, G11 .......................................................................................................... 510
15.10.1 Allocation of The Number of Tool Life Management Sets to Part Systems ............................................. 510
15.11 Inputting The Tool Life Management Data ; G10,G11...................................................................................... 512
15.11.1 Inputting The Tool Life Management Data by G10 L3 Command ; G10 L3,G11 ..................................... 512
15.11.2 Inputting The Tool Life Management Data by G10 L30 Command ; G10 L30,G11 ................................. 515
15.11.3 Precautions for Inputting The Tool Life Management Data...................................................................... 518
15.11.4 Allocation of The Number of Tool Life Management Sets to Part Systems ............................................. 519
16 Multi-part System Control ..................................................................................................................... 521
16.1 Timing Synchronization Operation...................................................................................................................... 522
16.1.1 Timing Synchronization Operation (! code) !n (!m ...) L ............................................................................. 522
16.1.2 Timing Synchronization Operation with Start Point Designated (Type 1) ; G115 ...................................... 525
16.1.3 Timing Synchronization Operation with Start Point Designated (Type 2) ; G116 ...................................... 528
16.1.4 Timing Synchronization Operation Function Using M codes ; M*** ........................................................... 531
16.1.5 Time Synchronization When Timing Synchronization Ignore Is Set .......................................................... 535
16.2 Mixed Control...................................................................................................................................................... 538
16.2.1 Arbitrary Axis Exchange ; G140, G141, G142 ........................................................................................... 538
16.3 Sub Part System Control .................................................................................................................................... 541
16.3.1 Sub Part System Control I ; G122............................................................................................................. 541
17 High-speed High-accuracy Control ...................................................................................................... 557
17.1 High-speed Machining Mode .............................................................................................................................. 558
17.1.1 High-speed Machining Mode I, II ; G05 P1, G05 P2 .................................................................................. 558
17.2 High-accuracy Control ........................................................................................................................................ 567
17.2.1 High-accuracy Control ; G61.1, G08 .......................................................................................................... 567
17.2.2 SSS Control ............................................................................................................................................... 585
17.2.3 Tolerance Control....................................................................................................................................... 589
17.2.4 Variable-acceleration Pre-interpolation Acceleration/Deceleration ............................................................ 593
17.2.5 Initial High-accuracy Control ...................................................................................................................... 596
17.2.6 Multi-part System Simultaneous High-accuracy ........................................................................................ 597
17.3 High-speed High-accuracy Control..................................................................................................................... 599
17.3.1 High-speed High-accuracy Control I, II, III ; G05.1 Q1/Q0, G05 P10000/P0, G05 P20000/P0.................. 599
17.3.2 Fairing ........................................................................................................................................................ 615
17.3.3 Smooth Fairing........................................................................................................................................... 616
17.3.4 Acceleration Clamp Speed......................................................................................................................... 625
17.3.5 Corner Deceleration in High-speed Mode.................................................................................................. 626
17.3.6 Precautions on High-speed High-accuracy Control ................................................................................... 627
17.4 Spline Interpolation ; G05.1 Q2/Q0..................................................................................................................... 630
17.5 Spline Interpolation 2; G61.4 .............................................................................................................................. 639
17.6 High-accuracy Spline Interpolation ; G61.2 ........................................................................................................ 646
17.7 Machining Condition Selection I ; G120.1,G121................................................................................................. 648
18 Advanced Machining Control ............................................................................................................... 653
18.1 Tool Position Compensation; G43.7/G49 ........................................................................................................... 654
18.2 Tool Length Compensation in the Tool Axis Direction ; G43.1/G49 ................................................................... 661
18.3 Tool Center Point Control; G43.4, G43.5/G49.................................................................................................... 668
18.4 Inclined Surface Machining ; G68.2, G68.3/G69 ................................................................................................ 696
18.4.1 How to Define Feature Coordinate System Using Euler Angles ................................................................ 698
18.4.2 How to Define Feature Coordinate System Using Roll-Pitch-Yaw Angles................................................. 700
18.4.3 How to Define Feature Coordinate System Using Three Points in a Plane ............................................... 702
18.4.4 How to Define Feature Coordinate System Using Two Vectors ................................................................ 704
18.4.5 How to Define Feature Coordinate System Using Projection Angles ........................................................ 706
18.4.6 Define by Selecting The Registered Machining Surface............................................................................ 708
18.4.7 How to Define Feature Coordinate System Using Tool Axis Direction ...................................................... 709
18.4.8 Tool Axis Direction Control; G53.1/G53.6 .................................................................................................. 711
18.4.9 Details of Inclined Surface Machining Operation ....................................................................................... 719
18.4.10 Rotary Axis Basic Position Selection ....................................................................................................... 723
18.4.11 Relationship between Inclined Surface Machining and Other Functions ................................................. 729
18.4.12 Precautions for Inclined Surface Machining............................................................................................. 733
18.5 3-dimensional Tool Radius Compensation (Tool's vertical-direction compensation) ; G40/G41.2,G42.2 .......... 737
19 Coordinate System Setting Functions ................................................................................................. 749
19.1 Coordinate Words and Control Axes .................................................................................................................. 750
19.2 Types of Coordinate Systems............................................................................................................................. 751
19.2.1 Basic Machine, Workpiece and Local Coordinate Systems....................................................................... 751
19.2.2 Machine Zero Point and 2nd, 3rd, 4th Reference Position (Zero Point) .................................................... 752
19.2.3 Automatic Coordinate System Setting ....................................................................................................... 753
19.2.4 Coordinate System for Rotary Axis ............................................................................................................ 754
19.3 Basic Machine Coordinate System Selection ; G53 ........................................................................................... 757
19.4 Coordinate System Setting ; G92 ....................................................................................................................... 760
19.5 Local Coordinate System Setting ; G52............................................................................................................. 762
19.6 Workpiece Coordinate System Setting and Offset ; G54 to G59 (G54.1)........................................................... 766
19.7 Workpiece Coordinate System Preset ; G92.1 .................................................................................................. 776
19.8 3-dimensional Coordinate Conversion ; G68/G69 .............................................................................................. 781
19.9 Coordinate Rotation by Program ; G68/G69....................................................................................................... 799
19.10 Coordinate Rotation Input by Parameter ; G10 I_ J_/K_ .................................................................................. 806
19.11 Scaling ; G50/G51 ............................................................................................................................................ 823
19.12 Reference Position (Zero Point) Return ; G28,G29 .......................................................................................... 827
19.13 2nd, 3rd, and 4th Reference Position (Zero Point) Return ; G30...................................................................... 831
19.14 Tool Change Position Return ; G30.1 - G30.6.................................................................................................. 834
19.15 Reference Position Check ; G27 ...................................................................................................................... 837
20 Protection Function ............................................................................................................................... 839
20.1 Stroke Check before Travel ; G22/G23 .............................................................................................................. 840
20.2 Enable Interfering Object Selection Data; G186................................................................................................. 842
21 Measurement Support Functions ......................................................................................................... 845
21.1 Automatic Tool Length Measurement ; G37 ....................................................................................................... 846
21.2 Skip Function ; G31 ........................................................................................................................................... 850
21.3 Multi-step Skip Function 1 ; G31.n, G04............................................................................................................ 856
21.4 Multi-step Skip Function 2 ; G31 P .................................................................................................................... 858
21.5 Speed Change Skip ; G31 Fn............................................................................................................................ 860
21.6 Torque Limitation Skip ; G160 ............................................................................................................................ 864
21.7 Programmable Current Limitation ; G10 L14 ; .................................................................................................... 868
22 System Variables ................................................................................................................................... 869
22.1 System Variables List ......................................................................................................................................... 870
22.2 System Variables (G Command Modal) ............................................................................................................. 872
22.3 System Variables (Non-G Command Modal) ..................................................................................................... 873
22.4 System Variables (Modal Information at Macro Interruption) ............................................................................. 874
22.5 System Variables (Tool Information) .................................................................................................................. 876
22.6 System Variables (Tool Compensation) ............................................................................................................. 884
22.7 System Variables (Tool Life Management)......................................................................................................... 885
22.8 System Variables (Workpiece Coordinate Offset) .............................................................................................. 890
22.9 System Variables (Extended Workpiece Coordinate Offset) .............................................................................. 891
22.10 System Variables (External Workpiece Coordinate Offset) .............................................................................. 892
22.11 System Variables (Position Information)........................................................................................................... 893
22.12 System Variables (Alarm) ................................................................................................................................. 897
22.13 System Variables (Message Display and Stop)................................................................................................ 898
22.14 System Variables (Cumulative Time) ............................................................................................................... 898
22.15 System Variables (Time Read Variables)......................................................................................................... 899
22.16 System Variables (Machining Information) ....................................................................................................... 901
22.17 System Variables (Reverse Run Information) .................................................................................................. 902
22.18 System Variables (Number of Workpiece Machining Times) ........................................................................... 902
22.19 System Variables (Mirror Image) ...................................................................................................................... 902
22.20 System Variables (Coordinate Rotation Parameter)......................................................................................... 903
22.21 System Variables (Rotary Axis Configuration Parameter)................................................................................ 904
22.22 System Variables (Normal Line Control Parameter)......................................................................................... 905
22.23 System Variables (Parameter Reading) ........................................................................................................... 906
22.24 System Variables (Workpiece Installation Error Compensation Amount)......................................................... 910
22.25 System Variables (Macro Interface Input (PLC -> NC)).................................................................................... 911
22.26 System Variables (Macro Interface Output (NC -> PLC))................................................................................. 917
22.27 System Variables (R Device Access Variables) ............................................................................................... 923
22.28 System Variables (PLC Data Reading) ............................................................................................................ 929
22.29 System Variables (Interfering Object Selection) ............................................................................................... 933
22.30 System Variables (ZR Device Access Variables) [C80] ................................................................................... 936
23 Appx.1: Fixed Cycles ............................................................................................................................. 939
15
Program Support Functions
439
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15Program Support Functions
15.1 Corner Chamfering I /Corner Rounding I
Function and purpose
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.
15.1.1 Corner Chamfering I ; G01 X_ Y_ ,C
Function and purpose
This chamfers a corner by connecting the both side of the hypothetical corner which would appear as if chamfering
is not performed, by the amount commanded by ",C_".
Command format
N100 G01 X__ Y__ ,C__ ;
N200 G01 X__ Y__ ;
,C
Length up to chamfering starting point or end point from hypothetical corner
Corner chamfering is performed at the point where N100 and N200 intersect.
Detailed description
(1) The start point of the block following the corner chamfering is the hypothetical corner intersection point.
(2) If there are multiple or duplicate corner chamfering commands in a same block, the last command will be valid.
(3) When both the corner chamfer and corner rounding commands exist in the same block, the latter command is
valid.
(4) Tool compensation is calculated for the shape which has already been subjected to corner chamfering.
(5) When the block following a command with corner chamfering does not contain a linear command, a corner chamfering/corner rounding II command will be executed.
(6) Program error (P383) will occur when the movement amount in the corner chamfering block is less than the
chamfering amount.
(7) Program error (P384) will occur when the movement amount in the block following the corner chamfering block
is less than the chamfering amount.
(8) Program error (P382) will occur when a movement command is not issued in the block following the corner chamfering I command.
IB-1501278-D
440
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Program example
(1) G91 G01 X100. ,C10.;
(2) X100. Y100.;
Y
(2)
Y100.0
(c)
(1)
(a)
(b)
10.0
10.0
X
X100.0
X100.0
(a) Chamfering start point
(b) Hypothetical corner intersection point
(c) Chamfering end point
441
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.1.2 Corner Rounding I ; G01 X_ Y_ ,R_
Function and purpose
The hypothetical corner, which would exist if the corner were not to be rounded, is rounded with an arc that has a
radius commanded by ",R_" only when configured of linear lines.
Command format
N100 G01 X__ Y__ ,R__ ;
N200 G01 X__ Y__ ;
,R
Arc radius of corner rounding
Corner rounding is performed at the point where N100 and N200 intersect.
Detailed description
(1) The start point of the block following the corner rounding is the hypothetical corner intersection point.
(2) When both corner chamfering and corner rounding are commanded in the same block, the latter command will
be valid.
(3) Tool compensation is calculated for the shape which has already been subjected to corner rounding.
(4) When the block following a command with corner rounding does not contain a linear command, a corner chamfering/corner rounding II command will be executed.
(5) Program error (P383) will occur when the movement amount in the corner rounding block is less than the R value.
(6) Program error (P384) will occur when the movement amount in the block following the corner rounding block is
less than the R value.
(7) Program error (P382) will occur if a movement command is not issued in the block following the corner rounding.
IB-1501278-D
442
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Program example
(1) G91 G01 X100. ,R10.;
(2) X100. Y100.;
Y
(2)
Y100.0
(b)
(a)
(1)
R10.0
(c)
X
X100.0
(a) Corner rounding start point
X100.0
(b) Corner rounding end point
443
(c) Hypothetical corner intersection point
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.1.3 Corner Chamfering Expansion/Corner Rounding Expansion
Function and purpose
Using an E command, the feedrate can be designated for the corner chamfering and corner rounding section.
In this way, the corner section can be cut into a correct shape.
Example
F200.
E100.
(G94)
G01Y70.,C30. F200.E100.;
X-110.;
F200.
F200.
E100.
(G94)
G01Y70.,R30. F200.E100.;
X-110.;
Y
F200.
X
IB-1501278-D
444
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Detailed description
(1) The E command is modal. It is also valid for the feed in the next corner chamfering/corner rounding section.
Example
(G94)
G01Y30.,C10. F100.E50.;
X-50.,C10.;
Y50.,C10.;
X-50.;
F100.
E50.
F100.
E50. F100.
E50.
Y
F100.
X
(2) E command modal has separate asynchronous feedrate modal and synchronous feedrate modal functions.
Which one is validated depends on the asynchronous/synchronous mode (G94/G95).
(3) When the E command is 0, or when there has not been an E command up to now, the corner chamfering/corner
rounding section feedrate will be the same as the F command feedrate.
Example
Y
F100.
F100.
F100.
E50.
X
F100.
F100.
F100.
E50. F100.
(G94)
G01Y30.,C10. F100.E50.;
X-50.,C10.;
Y50.,C10. E0;
X-50.;
E50.
F100.
(G94)
G01Y30.,C10. F100.;
X-50.,C10.;
Y50.,C10. E50;
X-50.;
F100.
F100.
F100.
(4) E command modal is not cleared even if the reset button is pressed.
It is cleared when the power is turned OFF. (In the same manner as F commands.)
(5) All E commands except those shown below are at the corner chamfering/corner rounding section feedrate.
- E commands during thread cutting modal
- E commands during thread cutting cycle modal
445
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.1.4 Interrupt during Corner Chamfering/Interrupt during Corner Rounding
Detailed description
(1) Shown below are the operations of manual interruption during corner chamfering or corner rounding.
With an absolute value command and manual absolute switch ON.
Y
N1 G28 XY;
N2 G00 X120.Y20. ;
N3 G03 X70. Y70.I-50. ,R20. F100 ;
N4 G01 X20. Y20. ;
140.
N4
N3
40.
20.
70.
120.
(mm)
X
With an incremental value command and manual absolute switch OFF
Y
N1 G28 XY;
N2 G00 X120. Y20. ;
N3 G03 X-50. Y50. I-50. ,R20. F100 ;
N4 G01 X-50. Y-50.;
140.
N4
N3
40.
20.
70.
120.
(mm)
X
Interrupt amount
Path in interrupt case
Path in non-interrupt case
(2)With a single block during corner chamfering or corner rounding, the tool stops after these operations are executed.
IB-1501278-D
446
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.2 Corner Chamfering II /Corner Rounding II
Function and purpose
Corner chamfering and corner rounding can be performed by adding ",C" or ",R" to the end of the block which is
commanded first among the block that forms a corner with continuous arbitrary angle lines or arcs.
15.2.1 Corner Chamfering II ; G01/G02/G03 X_ Y_ ,C_
Function and purpose
The corner is chamfered by commanding ",C" in the 1st block of the two continuous blocks containing an arc. For
an arc, this will be the chord length.
Command format
N100 G03 X__ Y__ I__ J__ ,C__ ;
N200 G01 X__ Y__ ;
,C
Length up to chamfering starting point or end point from hypothetical corner
Corner chamfering is performed at the point where N100 and N200 intersect.
Detailed description
(1) If this function is commanded while the corner chamfer or corner rounding command is not defined in the specifications, it causes a program error (P381).
(2) The start point of the block following the corner chamfering is the hypothetical corner intersection point.
(3) If there are multiple or duplicate corner chamfering commands in a same block, the last command will be valid.
(4) When both corner chamfering and corner rounding are commanded in the same block, the latter command will
be valid.
(5) Tool compensation is calculated for the shape which has already been subjected to corner chamfering.
(6) Program error (P385) will occur when positioning or thread cutting is commanded in the corner chamfering command block or in the next block.
(7) Program error (P382) will occur when the block following corner chamfering contains a G command other than
group 01 or another command.
(8) Program error (P383) will occur when the movement amount in the block, commanding corner chamfering, is
less than the chamfering amount.
(9) Program error (P384) will occur when the movement amount is less than the chamfering amount in the block
following the block commanding corner chamfering.
(10) Even if a diameter is commanded, it will be handled as a radial command value during corner chamfering.
(11) Program error (P382) will occur when a movement command is not issued in the block following the corner
chamfering II command.
447
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Program example
(1) Linear - arc
Y
(a)
Absolute value command
N1 G28 XY;
N2 G90 G00 X100. Y100.;
N3 G01 X50.Y150.,C20. F100;
N4 G02 X0 Y100. I-50. J0;
:
Relative value command
N1 G28 XY;
N2 G91 G00 X100. Y100.;
N3 G01 X-50.Y50.,C20. F100;
N4 G02 X-50. Y-50. I-50. J0;
:
C20.
150.
C20.
N3
N4
100.
50.
100.
(mm)
X
(a) Hypothetical corner intersection point
(2) Arc - arc
Y
130.
110.
Absolute value command
N1 G28 XY;
N2 G91 G00 X140. Y10.;
N3 G02 X60.Y50.I0 J100. ,C20. F100;
N4 X0 Y30.I-60.J80.;
:
Relative value command
N1 G28 XY;
N2 G91 G00 X140. Y10.;
N3 G02 X-80.Y40. R100. ,C20. F100;
N4 X-60. Y-20. I-60. J80.;
:
(a)
C20.
50.
30.
C20.
N4
N3
10.
60.
(a) Hypothetical corner intersection point
IB-1501278-D
448
140.
(mm)
X
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.2.2 Corner Rounding II ; G01/G02/G03 X_ Y_ ,R_
Function and purpose
The corner is rounded by commanding ",R_" in the 1st block of the two continuous blocks containing an arc.
Command format
N100 G03 X__ Y__ I__ J__ ,R__ ;
N200 G01 X__ Y__ ;
,R
Arc radius of corner rounding
Corner rounding is performed at the point where N100 and N200 intersect.
Detailed description
(1) If this function is commanded while the corner chamfer or corner rounding command is not defined in the specifications, it causes a program error (P381).
(2) The start point of the block following the corner rounding is the hypothetical corner intersection point.
(3) When both corner chamfering and corner rounding are commanded in a same block, the latter command will be
valid.
(4) Tool compensation is calculated for the shape which has already been subjected to corner rounding.
(5) Program error (P385) will occur when positioning or thread cutting is commanded in the corner rounding command block or in the next block.
(6) Program error (P382) will occur when the block following corner rounding contains a G command other than
group 01 or another command.
(7) Program error (P383) will occur when the movement amount in the corner rounding block is less than the R value.
(8) Program error (P384) will occur when the movement amount is less than the R value in the block following the
corner rounding.
(9) Even if a diameter is commanded, it will be handled as a radial command value during corner rounding.
(10) A program error (P382) will occur if a movement command is not issued in the block following corner rounding.
449
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Program example
(1) Linear - arc
Y
(a)
Absolute value command
N1 G28 XY;
N2 G90 G00 X100. Y30.;
N3 G01 X50.Y80.,R10. F100;
N4 G02 X0 Y30. I-50.J0;
:
Relative value command
N1 G28 XY;
N2 G91 G00 X100. Y30.;
N3 G01 X-50.Y50.,R10. F100;
N4 G02 X-50. Y-50. I-50.J0;
:
80.
R10.
N3
N4
30.
50.
100.
(mm)
X
(a) Hypothetical corner intersection point
(2) Arc - arc
Y
Absolute value command
N1 G28 XY;
N2 G90 G00 X100. Y30.;
N3 G02 X50.Y80. R50.,R10.F100;
N4 X0 Y30. R50.;
:
Relative value command
N1 G28 XY;
N2 G91 G00 X100. Y30.;
N3 G02 X-50.Y50. I0 J50.,R10.F100;
N4 X-50. Y-50. I-50. J0;
:
(a)
80.
R10.
N4
N3
30.
50.
100.
(mm)
X
(a) Hypothetical corner intersection point
15.2.3 Corner Chamfering Expansion/Corner Rounding Expansion
For details, refer to "Corner Chamfering I / Corner Rounding" and "Corner Chamfering Expansion / Corner Rounding
Expansion".
15.2.4 Interrupt during Corner Chamfering/Interrupt during Corner Rounding
For details, refer to "Corner Chamfering I / Corner Rounding" and "Interrupt during Corner Chamfering Interrupt
during / Corner Rounding".
IB-1501278-D
450
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.3 Linear Angle Command ; G01 X_/Y_ A_/,A_
Function and purpose
The end point coordinates are automatically calculated by commanding the linear angle and one of the end point
coordinate axes.
Command format
N1 G01 Xx1(Yy1) Aa1;
N2 G01 Xx2(Yy2) A-a2; (A-a2 can also be set as Aa 3. )
N1 G01 Xx1(Yy1) ,Aa1;
N2 G01 Xx2(Yy2) ,A-a2;
This designates the angle and the X or Y axis coordinates.
Select the command plane with G17 to G19.
Y
( x1,y1)
y1
a2
N1
N2
a3
a1
y2
( x2,y2)
X
Detailed description
(1) The angle is set based on the positive (+) direction of the horizontal axis for the selected plane. The counterclockwise (CCW) direction is indicated by a positive sign (+), and the clockwise (CW) direction by a negative sign
(-).
(2) Either of the axes on the selected plane is commanded for the end point.
(3) The angle is ignored when the angle and the coordinates of both axes are commanded.
(4) When only the angle has been commanded, this is treated as a geometric command.
(5) The angle of either the start point (a1) or end point (a2) may be used.
(6) This function is valid only for the G01 command; it is not valid for other interpolation or positioning commands.
(7) The range of slope "a" is between -360.000 and 360.000.
When a value outside this range is commanded, it will be divided by 360 (degrees) and the remainder will be
commanded.
(Example) If 400 is commanded, 40° (remainder of 400/360) will become the command angle.
(8) If an address A is used for the axis name or the 2nd miscellaneous function, use ",A" as the angle.
(9) If "A" and ",A" are commanded in a same block, ",A" will be interpreted as the angle.
Note
A program error (P33) will occur if this function is commanded during the high-speed machining mode or highspeed high-accuracy mode.
451
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.4 Geometric ; G01 A_
Function and purpose
When it is difficult to calculate the intersection point of two straight lines in a continuous linear interpolation command, the end point of the first straight line will be automatically calculated inside the CNC and the movement command will be controlled, provided that the slope of the first straight line as well as the end point coordinates and slope
of the second straight line are commanded.
Note
(1) If the parameter (#1082 Geomet) is set to 0, geometric I will not function.
Command format
N1 G01 Aa1 (A-a2) Ff1;
N2 Xx2 Yy2 A-a4 (A-a3) Ff2;
Aa1, A-a2, A-a3, Aa4
Angle
Ff1, Ff2
Speed
Xx2, Yy2
Next block end point coordinates
Y
?
a3
N1
a2
X
N2
a1
(C)
a4
(x2,y2)
(C) Current position
Detailed description
(1) Program error (P396) will occur when the geometric command is not on the selected plane.
(2) The slope indicates the angle to the positive (+) direction of the horizontal axis for the selected plane. The counterclockwise (CCW) direction is indicated by a positive sign (+), and the clockwise (CW) direction by a negative
sign (-).
(3) The range of slope "a" is between -360.000 and 360.000.
When a value outside this range is commanded, it will be divided by 360 (degrees) and the remainder will be
commanded.
(Example) If 400 is commanded, 40° (remainder of 400/360) will become the command angle.
(4) The slope of the line can be commanded on either the start or end point side. Whether designated slope is the
starting point or the end point will be automatically identified in NC.
(5) The end point coordinates of the second block should be commanded with absolute values. If incremental values
are used, program error (P393) will occur.
(6) The feedrate can be commanded for each block.
(7) When the angle where the two straight lines intersect is less than 1°, program error (P392) will occur.
(8) Program error (P396) will occur when the plane is changed in the 1st block and 2nd block.
(9) This function is ignored when address A is used for the axis name or as the 2nd miscellaneous function.
(10) Single block stop is possible at the end point of the 1st block.
(11) Program error (P394) will occur when the 1st and 2nd blocks do not contain the G01 or G33 command.
IB-1501278-D
452
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Relationship with Other Functions
(1) Corner chamfering and corner rounding can be commanded after the angle command in the 1st block.
(x2,y2)
N2
a2
(Example 1)
N1 Aa1 ,Cc1 ;
N2 Xx2 Yy2 Aa2 ;
c1
?
a1
N1
c1
(x1,y1)
(x2,y2)
N2
a2
(Example 2)
N1 Aa1 ,Rr1 ;
N2 Xx2 Yy2 Aa2 ;
r1
?
N1
a1
(x1,y1)
(2) The geometric command I can be issued after the corner chamfering or corner rounding command.
(x3,y3)
N3
a2
?
N2
(Example 3)
N1 Xx2 Yy2 ,Cc1 ;
N2 Aa1 ;
N3 Xx3 Yy3 Aa2 ;
a1
c1
(x2,y2)
N1
c1
(x1,y1)
(3) The geometric command I can be issued after the linear angle command.
(x3,y3)
N3
a3
?
(Example 4)
N1 Xx2 Aa1 ;
N2 Aa2 ;
N3 Xx3 Yy3 Aa3 ;
N2
(x2,y2)
a2
N1
a1
(x1,y1)
453
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.5 Geometric IB
Function and purpose
With the geometric IB function, the contact and intersection are calculated by commanding an arc center point or
linear angle in the movement commands of two continuous blocks (only blocks with arc commands), instead of commanding the first block end point.
Note
(1) If the parameter (#1082 Geomet) is not set to 2, geometric IB will not function.
Two-arc contact
N2
r1
(??)
r2
Y
X
N1
Linear - arc (arc - linear) intersection
N1
r1
(??)
Y
r1
N2
(??)
N1
N2
X
Linear - arc (arc - linear) contact
N2
r1
r1
N1
N1
(??)
Y
N2
X
IB-1501278-D
(??)
454
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.5.1 Geometric IB (Automatic Calculation of Two-arc Contact) ; G02/G03 P_Q_ /R_
Function and purpose
When the contact of two continuous contacting arcs is not indicated in the drawing, it can be automatically calculated
by commanding the 1st circular center coordinate value or radius, and the 2nd arc end point absolute value and
center coordinate value or radius.
Command format
N1 G02(G03) Pp1 Qq1 Ff1;
N2 G03(G02) Xx2 Yy2 Pp2 Qq2 Ff2;
N1 G02(G03) Pp1 Qq1 Ff1;
N2 G03(G02) Xx2 Yy2 Rr2 Ff2;
N1 G02(G03) Rr1 Ff1;
N2 G03(G02) Xx2 Yy2 Pp2 Qq2 Ff2;
P,Q
X and Y axes circular center coordinate absolute value (diameter/radius value command)The center address for the 3rd axis is commanded with A.
R
Arc radius (when a (-) sign is attached, the arc is judged to be 180° or more)
* I and J (X and Y axes arc center coordinate incremental value) commands can be issued instead of P and Q.
1st block arc : Incremental amount from the start point to the center
2nd block arc : Incremental amount from the end point to the center
(p1,q1)
r2
(x2,y2)
(p2,q2)
r1
Y
X
455
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Detailed description
(1) Program error (P393) will occur before the 1st block if the 2nd block is not a coordinate absolute value command.
(2) Program error (P398) will occur before the 1st block if there is no geometric IB specification.
(3) Program error (P395) will occur before the 1st block if there is no R (here, the 1st block is designated with P, Q
(I, J)) or P, Q (I, J) designation in the 2nd block.
(4) Program error (P396) will occur before the 1st block if another plane selection command (G17 to G19) is issued
in the 2nd block.
(5) Program error (P397) will occur before the 1st block if two arcs that do not contact are commanded.
(6) The contact calculation accuracy is ±1μm (fractions rounded up).
(7) Single block operation stops at the 1st block.
(8) When I or J is omitted, the values are regarded as I0 and J0. P and Q cannot be omitted.
(9) The error range in which the contact is obtained is set in parameter "#1084 RadErr".
Tool path
"Arc error"
(10) For an arc block perfect circle command (arc block start point = arc block end point), the R designation arc command finishes immediately, and there is no operation. Thus, use a PQ (IJ) designation arc command.
(11) G codes of the G modal group 1 in the 1st/2nd block can be omitted.
(12) Addresses being used as axis names cannot be used as command addresses for arc center coordinates or arc
radius.
(13) When the 2nd block arc inscribes the 1st block arc and the 2nd block is an R designation arc, the R+ sign becomes the inward turning arc command, and the R- sign becomes the outward turning arc command.
N2
R-
R+
N1
IB-1501278-D
456
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.5.2 Geometric IB (Automatic Calculation of Linear - Arc Intersection) ; G01 A_ , G02/G03 P_Q_H_
Function and purpose
When the contact point of a shape in which contact between a line and an arc is not indicated in the drawing, it can
be automatically calculated by commanding the following program.
Command format (For G18 plane)
N1 G01 Aa1 (A-a2) Ff1;
N2 G02(G03) Xx2 Yy2 Pp2 Qq2 Hh2 Ff2 ;
N1 G02(G03) Pp1 Qq1 Hh1 (,Hh1) Ff1 ;
N2 G1 Xx2 Yy2 Aa3 (A-a4) Ff2 ;
A
Linear angle (-360.000° to 360.000°)
P,Q
X and Y axes circular center coordinate absolute value (diameter/radius value command)The center address for the 3rd axis is commanded with A.
H (,H)
Selection of linear - arc intersection
0: Intersection of the shorter line
1: Intersection of the longer line
* I and J (X and Y axes arc center coordinate incremental value) commands can be issued instead of P and Q.
1st block arc : Incremental amount from the start point to the center
2nd block arc : Incremental amount from the end point to the center
N2
H=0
(??)
N1
H=1
H=1
(??)
(??)
N1
(??)
(p2,q2)
- a2
(p1,q1)
(x2,y2)
a1
H=0
- a4
N2
a3
(x2,y2)
Y
X
457
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Detailed description
(1) When the 2nd miscellaneous function address is A, the 2nd miscellaneous function is validated and this function
is invalidated.
(2) Program error (P393) will occur before the 1st block if the 2nd block is not a coordinate absolute value command.
(3) Program error (P398) will occur before the 1st block if there is no geometric IB specification.
(4) In case of the 2nd block arc, a program error (P395) will occur before the 1st block if there is no P, Q (I, J) designation. A program error (P395) will also occur if there is no A designation for the line.
(5) Program error (P396) will occur before the 1st block if another plane selection command (G17 to G19) is issued
in the 2nd block.
(6) Program error (P397) will occur before the 1st block if a straight line and arc that do not contact or intersect are
commanded.
(7) Single block operation stops at the 1st block.
(8) When I or J is omitted, the values are regarded as I0 and J0. P and Q cannot be omitted.
(9) When H is omitted, the value is regarded as H0.
(10) The linear - arc contact is automatically calculated by designating R instead of P, Q (I, J).
(11) The error range in which the intersect is obtained is set in parameter "#1084 RadErr".
Tool path
Arc error
(12) As seen from the + direction of the horizontal axis of the selected plane, the counterclockwise (CCW) direction
is considered to be + and the clockwise direction (CW) -.
(13) The slope of the line can be commanded on either the start or end point side. Whether designated slope is the
starting point or the end point will be automatically identified.
(14) When the distance to the intersection from the line and arc is same (as in the figure below), the control by address H (short/long distance selection) is invalidated. In this case, the judgment is carried out based on the angle
of the line.
(p2,q2)
a1
N1 G1 A a1 Ff1;
N2 G2 Xx2 Yy2 Pp2 Qq2 Ff2 ;
-a2
N1 G1 A –a2 Ff1;
N2 G2 Xx2 Yy2 Pp2 Qq2 Ff2 ;
(15) The intersect calculation accuracy is ±1μm (fractions rounded up).
(16) In linear - arc intersections, the arc command can only be PQ (IJ) command. When the arc block start point and
arc block end point are the same point, the arc is a perfect circle.
IB-1501278-D
458
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(17) G codes of the G modal group in the 1st block can be omitted.
(18) Addresses being used as axis names cannot be used as command addresses for angles, arc center coordinates or intersection selections.
(19) When geometric IB is commanded, two blocks are pre-read.
Relationship with other functions
Command
Tool path
Geometric IB + corner chamfering
N1 G02 P_ Q_ H_ ;
N2 G01 X_ Y_ A_ ,C_ ;
G01 X_ Y_ ;
Y
N2
X
459
N1
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.5.3 Geometric IB (Automatic Calculation of Linear - Arc Intersection) ; G01 A_ , G02/G03 R_H_
Function and purpose
When the intersection of a shape in which a line and an arc intersect is not indicated in the drawing, it can be automatically calculated by commanding the following program.
Command format (For G18 plane)
N1 G01 Aa1 (A-a2) Ff1;
N2 G03(G02) Xx2 Yy2 Rr2 Ff2;
N1 G03(G02) Rr1 Ff1;
N2 G01 Xx2 Yy2 Aa3 (A-a4) Ff2 ;
A
Linear angle (-360.000° to 360.000°)
R
Circular radius
(??)
N1
a1
Y
- a2
r2
(??)
N1
N2
r1
- a4
N2
a3
(x2,y2)
(x2,y2)
X
Detailed description
(1) When the 2nd miscellaneous function address is A, the 2nd miscellaneous function is validated and this function
is invalidated.
(2) Program error (P393) will occur before the 1st block if the 2nd block is not a coordinate absolute value command.
(3) Program error (P398) will occur before the 1st block if there is no geometric IB specification.
(4) Program error (P396) will occur before the 1st block if another plane selection command (G17 to G19) is issued
in the 2nd block.
(5) A program error (P397) will occur before the 1st block if a straight line and arc that do not contact are commanded.
(6) In case of the 2nd block arc, a program error (P395) will occur before the 1st block if there is no R designation.
A program error (P395) will also occur if there is no A designation for the line.
(7) Single block operation stops at the 1st block.
(8) The linear - arc contact is automatically calculated by designating R instead of P, Q (I, J).
IB-1501278-D
460
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(9) The error range in which the contact is obtained is set in parameter "#1084 RadErr".
Tool path
Arc error
(10) The line slope is the angle to the positive (+) direction of its horizontal axis. Counterclockwise (CCW) is positive
(+). Clockwise (CW) is negative (-).
(11) The slope of the line can be commanded on either the start or end point side. Whether the commanded slope
is on the start or end point side is identified automatically inside the NC unit.
(12) The intersect calculation accuracy is ±1μm (fractions rounded up).
(13) In linear - arc contact, the arc command can only be an R command. Thus, when the arc block start point = arc
block end point, the arc command finishes immediately, and there will be no operation. (Perfect circle command
is impossible.)
(14) G codes of the G modal group 1 in the 1st block can be omitted.
(15) Addresses being used as axis names cannot be used as command addresses for angles or arc radius.
(16) When geometric IB is commanded, two blocks are pre-read.
Relationship with other functions
Command
Tool path
Geometric IB + corner chamfering
N1 G03 R_ ;
N2 G01 X_ Y_ A_ ,C_ ;
G01 X_ Y_ ;
N2
Y
N1
X
Geometric IB + corner rounding
N1 G03 R_ ;
N2 G01 X_ Y_ A_ ,R_ ;
G01 X_ Y_ ;
N2
Y
N1
X
461
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.6 G Command Mirror Image ; G50.1,G51.1
Function and purpose
When cutting a shape that is symmetrical on the left and right, programming time can be shortened by machining
one side and then using the same program to machine the other side. The mirror image function is effective for this.
For example, when using a program as shown below to machine the shape on the left side (A), a symmetrical shape
(B) can be machined on the right side by applying mirror image and executing the program.
Y
(A)
(B)
X
Mirror axis
Command format
Mirror image ON
G51.1 Xx1 Yy1 Zz1
x1, y1, z1
Mirror image center coordinates (Mirror image will be applied regarding this position
as a center)
Mirror image OFF
G50.1 Xx2 Yy2 Zz2
x2, y2, z2
IB-1501278-D
Mirror image cancel axis (The values of x2, y2, z2 will be ignored.)
462
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
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.
(3) If mirror image is applied on only one axis of the designated plane, the rotation direction and compensation direction will be reversed for the arc or tool radius compensation and coordinate rotation, etc.
(4) This function is processed on the local coordinate system, so the center of the mirror image will change when
the counter is preset or when the workpiece coordinates are changed.
(5) Reference position return during mirror image If the reference position return command (G28, G30) is executed
during the mirror image, the mirror image will be valid during the movement to the intermediate point, but will not
be applied to the movement to the reference point after the intermediate point.
Path on which mirror is applied
Mirror center
Programmed path
Intermediate point when mirror is applied
Intermediate point
(6) Return from zero point during mirror image If the return command (G29) from the zero point is commanded during
the mirror image, the mirror will be applied to the intermediate point.
(7) The mirror image will not be applied to the G53 command.
463
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Relationship with other functions
(1) Combination with radius compensation
The mirror image (G51.1) will be processed after the radius compensation (G41, G42) is applied, so the following
type of cutting will take place.
Programmed path
Path with mirror image applied
Program path
Path with only radius compensation applied
Path with only mirror image applied
Path with mirror image and radius compensation applied
IB-1501278-D
464
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Precautions
CAUTION
Turn the mirror image ON and OFF at the mirror image center.
If mirror image is not canceled at the mirror center, the absolute value and machine position will deviate as shown
below. (This state will last until an absolute value command (positioning with G90 mode) is issued, or a reference
position return with G28 or G30 is executed.) The mirror center is set with an absolute value, so if the mirror center
is commanded again in this state, the center may be set to an unpredictable position.
Cancel the mirror at the mirror center or position with the absolute value command after canceling.
Absolute value (position commanded in program)
Machine position
When moved with the incremental command after
mirror cancel
Mirror cancel command
Mirror axis command
Mirror center
465
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.7 Normal Line Control ; G40.1/G41.1/G42.1 (G150/G151/G152)
Function and purpose
The C axis (rotary axis) turning will be controlled so that the tool constantly faces the normal line direction in respect
to the movement of the axes in the selected plane during program operation.
At the block seams, the C axis turning is controlled so that the tool faces the normal line direction at the next block's
start point.
C axis center (rotary axis)
Tool end position
C axis turning
During arc interpolation, the rotary axis turning is controlled in synchronization with the operation of the arc interpolation.
Rotation axis center (C axis)
Tool end position
The normal line control I and II can be used according to the C axis turning direction during normal line control. Which
method is to be used depends on the MTB specifications (parameter "#1524 C_type").
Normal line control type
Turning direction
Turning speed
Type I
Direction that is 180° or less Parameter speed
(#1523 C_feed)
(#1524 C_type = 0) (shortcut direction)
Type II
As a principle, the com(#1524 C_type = 1) manded direction
IB-1501278-D
Feedrate
466
Turning speed in arc interpolation
Speed when the program
path follows the F command
Speed when the tool nose
follows the F command
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Command format
Normal line control cancel
G40.1 (G150)X__ Y__ F__ ;
Normal line control left ON
G41.1 (G151)X__ Y__ F__ ;
Normal line control right ON
G42.1 (G152)X__ Y__ F__ ;
X
X axis end point coordinate
Y
Y axis end point coordinate
F
Feedrate
G41.1 Normal line control left side
G42.1 Normal line control right side
(a)
(a)
(b)
(b)
(a) Center of rotation
(b) Tool end(b) Tool end
Programmed path
Tool end path
The normal line control axis depends on the MTB specifications (parameter #1522 C_axis).
Normal line control is carried out in respect to the movement direction of the axis which is selecting the plane.
G17 plane I-J axes
G18 plane K-I axes
G19 plane J-K axes
Whether the normal line control is canceled at resetting depends on the MTB specifications (parameter “#1210 RstGmd/ bitE”).
467
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Detailed description
Definition of the normal line control angle
The normal line control angle is 0° (degree) when the tool is facing the horizontal axis (+ direction) direction.
The counterclockwise direction turning is + (plus), and the clockwise direction turning is - (minus).
G17 plane (I - J axes) ... The axis angle is 0°(degree)
when the tool is facing the +I direction.
J+
90
180
0
I+
270
G18 plane (K - I axes) ...The axis angle is 0°(degree)
when the tool is facing the +K direction.
I+
90
180
0
K+
270
G19 plane (J - K axes) ... The axis angle is 0°(degree)
when the tool is facing the +J direction.
K+
90
180
0
270
IB-1501278-D
468
J+
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Normal line control turning operation in respect to movement command
(1) Start-up
After the normal line control axis turns to the right angle of the advance direction at the start point of the normal
line control command block, the axis which is selecting the plane is moves. Note that the normal line control axis
at the start up turns in the direction that is 180° or less (shortcut direction) in both the normal line control type I
and II.
G41.1
N1
:
N3
N1 G01 Xx1 Yy1 Ff1 ;
N2 G41.1 ;
N3
(x1,y1)
... Independent
block
N3 Xx2 Yy2 ;
:
(x2,y2)
N2 is fixed
G41.1
N1
N2
:
N1 G01 Xx1 Yy1 Ff1 ;
N2
(x1,y1)
N2 G41.1 Xx2 Yy2 ;
... Same block
:
(x2,y2)
(2) During normal line control mode
(a) Operation in block
During interpolation of the linear command, the angle of the normal line control axis is fixed, and the normal
line control axis does not turn.
During the arc command, the normal line control axis turns in synchronization with the operation of the arc
interpolation.
:
G41.1 ;
N1 G02 Xx1 Yy1 Ii1 Jj1 ;
:
(i1,j1)
N1
Programmed path
Tool end path
(x1,y1)
469
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(b) Block seam
No tool radi- After the normal line control axis is turned to be at the right angle of the plane selecting
us compen- movement in the next block, the operation moves to the next block.
sation
Liner - Liner
Liner - Arc
Arc - Arc
Programmed path
Tool end path
With tool ra- If tool radius compensation is applied, normal line control is carried out along the path to
dius com- which the tool radius compensation is applied.
pensation
Liner - Liner
Liner - Arc
Arc - Arc
Programmed path
Tool radius compensation path
Tool end path
(3) Cancel
The normal line control axis will not turn, and the plane selecting axis will be moved by the program command.
:
G40.1
N1 G01 Xx1 Yy1 Ff1 ;
N2 G40.1 ;
N1
(x1,y1)
... Independent block
N3 Xx2 Yy2 ;
N3
:
(x2,y2)
N2 is fixed
G40.1
N1
(x1,y1)
:
N1 G01 Xx1 Yy1 Ff1 ;
N2
N2 G40.1 Xx2 Yy2 ;
:
(x2,y2)
IB-1501278-D
470
... Same block
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Normal line control temporary cancel
During normal line control, the turning operation for the normal line control axis is not carried out at the seam between a block and the next block, in which the movement amount is smaller than that set with the parameter (#1535
C_leng).
(1) For liner block;
When the movement amount of the N2 block is smaller than the parameter(#1535 C_leng), the normal line control axis is not turned at the seam between the N1 block and N2 block. It stays the same direction as the N1 block.
N2 block movement amount < Parameter(#1535 C_leng)
N2
N1
N3
(2) For arc block;
When the diameter value of the N2 block is smaller than the parameter(#1535 C_leng), the normal line control
axis is not turned at the seam between the N1 block and N2 block. It stays the same direction as the N1 block.
During arc interpolation of the N2 block, the normal line control axis does not turn in synchronization with the
operation of arc interpolation.
N2 block diameter value < Parameter (#1535 C_leng)
N2
N1
(a)
N3
(a) Diameter value
Note
Since operation fractions are created by calculating the intersection point of two segments, the turning operation
may or may not be carried out when the parameter (#1535 C_leng) and the segment length are equal.
471
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Normal line control axis turning direction at block seam
The normal line control axis turning direction at block seam differs according to the normal line control type I or II
(parameter “#1524 C_type”). The turning angle is limited by the angle ε set with the parameter (#1521 C_min).
These parameter settings depend on the MTB specifications.
Item
Normal line control type I
Direction that is 180° or less.
Normal line control
axis turning direction at (shortcut direction)
block seam
When | θ | < ε, turning is not performed.
Normal line control
θ: Turning angle
axis turning angle at
ε: Parameter (#1521 C_min)
block seam
When the turning angle is 180 degrees,
the turning direction is undefined regardless of the command mode.
Normal line control type II
G41.1: - direction (CW)
G42.1: + direction (CCW)
 When | θ | < ε, turning is not performed.
θ: Turning angle
ε: Parameter (#1521 C_min)
The operation error (0118) will occur in
the following cases:
[For G41.1]
ε <= θ < 180° - ε
[For G42.1]
180° + ε < θ <= 360° - ε
[G41.1 When the normal line control axis
[G41.1/G42.1 When the normal line control
is at 0°]
axis is at 0°]
90
90
(a)
180
180
0
-
180
0
-
-
(d)
(c)
(b)
(e)
(c)
270
270
[G42.1 When the normal line control axis
(a) The normal line control axis turns coun- is at 0°]
terclockwise.
(d)
(b) The normal line control axis turns clock90
wise.
(c) The axis does not turn.
180
180
0
+
-
(c)
(e)
270
(c) The axis does not turn.
(d) The normal line control axis turns.
(e) Operation error (0118)
IB-1501278-D
472
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(1) Normal line control type I
Normal line control axis turning
angle at block seam: θ
1. -ε < θ < ε
G41.1
G42.1
90
180
0
-
No turning
No turning
Shortcut direction
Shortcut direction
270 (-90 )
2. ε <= θ < 180°
90
180
0
270
(-90 )
3. 180° <= θ <= 360°- ε
90
180
0
360 -
270 (-90 )
473
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(2) Normal line control type II
Normal line control axis turning angle at block seam: θ
1. -ε < θ < ε
G41.1
G42.1
90
180
0
-
No turning
No turning
270 (-90 )
2. ε <= θ < 180°- ε
90
180
-
180
0
270
Operation error (0118) (*1)
(-90 )
3. 180°-ε <= θ <= 180°+ ε
90
180
-
180
180
0
+
270
(-90 )
4. 180°+ ε < θ <= 360°- ε
90
180
180
0
+
360 -
270
Operation error (0118) (*1)
(-90 )
(*1) If the axis turns into the command direction, it turns inside the workpiece, causing an operation error.
IB-1501278-D
474
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Operation to be performed when the turning angle set before the circular interpolation starts falls below the
minimum turning angle
The turning angle falls to or below the minimum turning angle (parameter "#1521 C_min") before the circular interpolation starts; therefore, turning operation may not be inserted.
In this case, it depends on the parameter "#12105 C_minTyp" whether to interpolate the turning angle which was
not inserted before the tool reaches the end point of circular interpolation.
These parameters depends on the MTB specifications.
If the turning angle set before the linear interpolation starts falls to or below the minimum turning angle, turning is
not carried out.
[The turning angle is interpolated up to the end point of the arc (“#12105 C_minTyp” = 0).]
The turning angle in the section in which the normal line control axis is not turned is interpolated up to the end point
of the circular interpolation.
The turning angle falls below the value of parameter #1521.
(The control does not insert the turning
movement)
Tool end path
N1
N2
Programmed path
Circular center
[The turning angle is not interpolated (“#12105 C_minTyp” = 1).]
The turning angle in the section in which the normal line control axis is not turned is not interpolated during circular
interpolation.
The turning angle falls below the value of parameter #1521.
(The control does not insert the turning
movement)
Tool end path
N1
N2
Programmed path
Circular center
475
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Therefore, an operation error will occur.
Normal line control axis turning speed Turning speed at block seam (select from type I or type II)
(1) Normal line control axis turning speed at block seam
(a) Rapid traverse
Normal line control type I
Dry run OFF
Normal line control type II
Dry run OFF
The rapid traverse rate (#2001 rapid) is applied.
Normal line control axis turning speed f
= Rapid traverse rate * (Rapid traverse override) (° /
min)
Normal line control axis turning speed f
= F * 180 / (π * R) * (Rapid traverse override) (°/min)
When R = 0, follow the formula below.
Normal line control axis turning speed f
= F * (Rapid traverse override) (° /min)
F: Rapid traverse rate (#2001 rapid) (mm/min)
R: Parameter (#8041 C-rot.R) (mm)
(Length from normal line control axis center to tool
nose)
<Note>
Dry run ON
The manual feedrate is applied.
Normal line control axis turning speed f
= Manual feedrate * (Cutting feed override) (° /min)
(1) If the normal line control axis turning speed exceeds the rapid traverse rate (#2001 rapid), the
rapid traverse rate will be applied.
Dry run ON
Normal line control axis turning speed f
= F * 180 / (π * R) * (Rapid traverse override) (°/min)
When R = 0, follow the formula below.
Normal line control axis turning speed f
= F * (Rapid traverse override) (° /min)
(1) When the manual override valid is ON, the cutting F: Rapid traverse rate (#2001 rapid) (mm/min)
feed override is valid.
R: Parameter (#8041 C-rot.R) (mm)
(2) If the normal line control axis turning speed ex- (Length from normal line control axis center to tool
ceeds the cutting feed clamp speed (#2002 nose)
clamp), the cutting feed clamp speed will be ap- <Note>
plied.
(1) If the normal line control axis turning speed ex(3) When the rapid traverse is ON, the dry run is inceeds the cutting feed clamp speed (#2002
valid.
clamp), the cutting feed clamp speed will be applied.
<Note>
(2) If the normal line control axis turning speed exceeds the rapid traverse rate (#2001 rapid), the
rapid traverse rate will be applied.
(3) When the rapid traverse is ON, the dry run is invalid.
IB-1501278-D
476
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(b) Cutting feed
Normal line control type I
Dry run OFF
Normal line control type II
The feedrate at the tool nose is the F command. The
normal line control axis turning speed is the normal
The normal line control axis turning speed set with the line control axis speed that follows this F command.
parameter (#1523 C_feed) is applied.
Normal line control axis turning speed f
Normal line control axis turning speed f
= Parameter (#1523 C_feed) * (Cutting feed override) = F * 180 / (π * R) * (Cutting feed override) (°/min)
(° /min)
When R = 0, follow the formula below.
Dry run ON (Rapid traverse ON)
Normal line control axis turning speed f = F (° /min)
F: Feedrate command (mm/min)
The cutting feed clamp speed (#2002 clamp) is apR: Parameter (#8041 C-rot.R) (mm)
plied.
(Length from normal line control axis center to tool
Normal line control axis turning speed f
nose)
= Cutting feed clamp speed (°/min)
Dry run ON (Rapid traverse OFF)
The manual feedrate is applied.
Normal line control axis turning speed f
= Manual feedrate * (Cutting feed override) (° /min)
<Note>
<Note>
(1) When the manual override valid is ON, the cutting (1) If the normal line control axis turning speed exfeed override is valid.
ceeds the cutting feed clamp speed (#2002
clamp), the cutting feed clamp speed will be ap(2) If the normal line control axis turning speed explied.
ceeds the cutting feed clamp speed (#2002
clamp), the cutting feed clamp speed will be ap- (2) When the dry run is ON, the normal line control
plied.
axis turning speed is obtained by the same expression as the rapid traverse.
(F)
(R)
(F)
(f) =F*180/(
(f)
*R)
F: Feedrate command
f: Normal line control axis turning speed
R: Parameter (#8041 C-rot.R)
F: Feedrate command
f: Normal line control axis turning speed
477
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(2) Normal line control axis turning speed during circular interpolation
Normal line control type I
Normal line control type II
The normal line control axis turning speed is the rota- The feedrate at the tool nose is the F command. The
tion speed obtained by feedrate F.
normal line control axis turning speed is the rotation
speed that follows this F command.
Normal line control axis turning speed f
= F * 180 / (π * r) (° /min)
Normal line control axis turning speed f
F : Feed command speed (mm/min)
= F * 180 / (π * (R + r)) (° /min)
r : Arc radius (mm)
F : Feed command speed (mm/min)
R : Parameter (#8041 C-rot. R) (mm)
(Length from normal line control axis center to tool
(F)
nose)
r : Arc radius (mm)
(F)
(r)
(f) =F*180/(
*r)
(R)
(r)
(f) =F*180/( *(R+r))
Note
(1) If the normal line control axis turning speed exceeds the cutting feed clamp speed (#2002 clamp), the speed will
be as follows; - Normal line control axis turning speed = Cutting feed clamp speed.
Normal line control axis turning speed = Cutting feed clamp speed
Moving speed during arc interpolation = The speed according to the normal line control axis turning speed
IB-1501278-D
478
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Automatic corner arc insertion function
During normal line control, an arc is automatically inserted at the corner in the axis movement of the plane selection.
This function is for the normal line control type I.
The radius of the arc to be inserted is set with the parameter (#8042 C-ins.R).
This parameter can be read and written using the macro variable #1901.
Normal line control is performed also during the interpolation for the arc to be inserted.
Parameter (#8042 C-rot. R)
<Supplements>
The corner arc is not inserted in the following cases: linear and arc, arc and arc, linear and moveless or moveless and linear blocks or when a line is shorter than the radius of the arc to insert.
Corner R is not inserted.
During the radius compensation, the radius compensation is applied to the path that the corner arc is inserted.
Radius compensation path
Parameter (#8042 C-rot. R)
479
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
The stop point of the single block and block start interlock is as follows.
Stop point
The stop point of the cutting start interlock is as follows.
Stop point
IB-1501278-D
480
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Program example
Normal line control type I
Main program
O500
Sub program
O501
G91X0Y0;G28C0;
G90G92G53X0Y0;
G00G54X25.Y-10.;
G03G41.1X35.Y0.R10.F10.;
#10=10;
WHILE[#10NE0]DO1;
M98P501;
#10=#10-1;
END1;
G03X25.Y10.R10.;
G40.1;
G28X0Y0;
M02;
G03X8.Y9.R15.;
G02X-8.R10.;
G03Y-9.R-15.;
G02X8.R10.;
G03X35.Y0.R15.;
M99;
R10
R15
R10
(0,0)
20.
20.
481
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Normal line control type II
(Example 1)
Main program
O500
Sub program
O1001
G91X0Y0;
G17G91G01Y20.,R10.Z-0.01;
G28Z0;
X-70.,R10.;
G28C0;
Y-40.,R10.;
G90G92G53X0Y0Z0;
X70.,R10.;
G00G54G43X35.Y0.Z100.H
Y20.;
1;
M99;
G00Z3.;
G01Z0.1F6000;
O1002
G42.1;
G17G91G01Y20.,R10.;
M98P1001L510;
X-70.,R10.;
M98P1002L2;
Y-40.,R10.;
G91G01Y10.Z0.05;
X70.,R10.;
G40.1;
Y20.;
G90G00Z100.;
M99;
G28X0Y0Z0;
M02;
(Corner chamfering/Corner R
specifications are required)
(Corner chamfering/Corner R
specifications are required)
(a)
(b)
0.1
5.
10.
R10
20.
(0,0)
20.
35.
35.
(a) C axis
(b) Tool
IB-1501278-D
482
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(Example 2)
Main program
O2000
Sub program
O2001
G91G28Z0;
G28X0Y0;
G28C0;
G90G92G53X0Y0Z0;
G00G54X30.Y0.;
G00Z3.;
G41.1G01Z0.1F5000;
M98P2001L510;
M98P2002L2;
G91G01X-30.Z0.05;
G40.1;
G90G00Z100.;
G28X0Y0Z0;
M02;
G17G91G01X-60.Z-0.01;
X60.;
M99;
O2002
G17G91G01X-60.;
X60.;
M99;
(a)
(b)
0.1
5.
(0,0)
30.
30.
(a) C axis
(b) Tool
483
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Relationship with Other Functions
Function name
Notes
Unidirectional positioning
Normal line control is not applied.
Helical cutting
Normal line control is applied normally.
Spiral interpolation
As the start point and end point are not on the same arc, a normal line control will
not be applied correctly.
Exact stop check
The operation will not decelerate and stop for the turning movement of the normal
line control axis.
Error detect
Error detect is not applied to the turning movement of the normal line control axis.
Override
Override is applied to the turning movement by normal line control axis.
Coordinate rotation by program
Normal line control is applied to the shape after coordinate rotation.
Scaling
Normal line control is applied to the shape after scaling.
Mirror image
Normal line control is applied to the shape after mirror image.
Thread cutting
Normal line control is not applied.
Geometric command
Normal line control is applied to the shape after geometric command.
Automatic reference position Normal line control is not applied.
return
Start position return
Normal line control is not applied to the movement to the intermediate point position.
If the base specification parameter "#1086 G0Intp" is OFF, normal line control is
applied to the movement from the intermediate point to a position designated in
the program.
High-speed machining mode This cannot be commanded during normal line control. Program error (P29) will
III
occur.
The normal line control command during high-speed machining mode III cannot
be issued, either.
Program error (P29) will occur.
High-accuracy control
This cannot be commanded during normal line control. Program error (P29) will
occur.
The normal line control command during high-accuracy control cannot be issued,
either.
Program error (P29) will occur.
Spline
This cannot be commanded during normal line control. Program error (P29) will
occur.
The normal line control command during spline cannot be issued, either.
Program error (P29) will occur.
High-speed High-accuracy
control I/II
This cannot be commanded during normal line control. Program error (P29) will
occur.
The normal line control command during high-speed High-accuracy control I/II
cannot be issued either.
Program error (P29) will occur.
Cylindrical interpolation
This cannot be commanded during normal line control. Program error (P486) will
occur.
The normal line control command during cylindrical interpolation cannot be issued, either. Program error (P481) will occur.
Workpiece coordinate system offset
The workpiece coordinate system cannot be changed during normal line control.
Program error (P29) will occur. The program parameter input (G10L2) cannot be
commanded either. Program error (P29) will occur.
Local coordinate system off- The local coordinate system cannot be changed during normal line control. Proset
gram error (P29) will occur.
Program restart
The program including the normal line control command cannot be restarted. "E98
CAN'T RESEARCH" will occur.
Dry run
The feedrate is changed by the dry run signal even in respect to the turning movement of the normal line control axis.
IB-1501278-D
484
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Function name
Notes
Graphic check
The section turned by normal line control is not drawn. The axes subject to graphic
check are drawn.
G00 non-interpolation
Normal line control is not applied.
Polar coordinate interpolation
This cannot be commanded during normal line control. Program error (P486) will
occur.
The normal line control command during polar coordinate interpolation cannot be
issued either. Program error (P481) will occur.
Exponential interpolation
If the normal line control axis is the same as the rotary axis of exponential interpolation, a program error (P612) will occur.
If they are different, an error will not occur, but normal line control is not applied.
Plane selection
This cannot be commanded during normal line control. Program error (P903) will
occur.
Mixed control
This cannot be commanded during normal line control. An operation error (M01
1035) will occur.
System variable
The block end coordinate (#5001 - ) for the normal line control axis during normal
line control cannot obtain a correct axis position.
Precautions
(1) During normal line control, the program coordinates are updated following the normal line control axis movement.
Thus, program the normal line control on the program coordinate system.
(2) The normal line control axis will stop at the turning start position for the single block, cutting block start interlock
and block start interlock.
(3) If the movement command is issued to the normal line control axis (C axis) during normal line control, it is ignored.
(4) The coordinate system preset command (G92 C_;) cannot be issued to the normal line control axis during C axis
normal line control (during G41.1 or G42.1 modal). The program error (P901) will occur if commanded.
(5) When a mirror image is applied to the axis in plane selection mode, normal line control is carried out for the shape
processed with the mirror image.
(6) The rotary axis must be designated as the normal line control axis (parameter "#1522 C_axis"). Designate so
that the axis is not duplicated with the axis on the plane where normal line control is to be carried out. If an illegal
axis is designated, the program error (P902) will occur when the program (G40.1, G41.1, G42.1) is commanded.
The program error (P902) will also occur if the parameter "#1522 C_axis" is "0" when commanding a program.
This parameter setting depends on the MTB specifications.
(7) The movement of the normal line control axis is counted as one axis of number of simultaneous contouring control axes.
If the number of simultaneous contouring control axes exceeds the specification range by movement of the normal line control axis, the program error (P10) will occur.
485
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.8 Manual Arbitrary Reverse Run Prohibition ; G127
Function and purpose
The manual arbitrary reverse run function controls the feedrate, which is under automatic operation in memory or
MDI mode, in proportion to the manual feedrate by the jog or the rotation speed by the manual handle, and manually
carries out the reverse run.
After the automatic operation has been stopped in a block, the reverse run can be carried out back through the
blocks (up to 20 blocks) that were executed before the block. If necessary, it is possible to correct the program buffer
and execute the fixed program after carrying out the reverse run up to the return position.
This function (G127) is available to prevent the program from backing to blocks before the commanded block when
carrying out the manual arbitrary reverse run.
The detailed setting and operation vary depending on the machine specifications. Refer to the Instruction Manual
issued by the MTB.
"Forward run" means to execute blocks in the same order as for the automatic operation.
"Reverse run" means to process the executed blocks backward.
Whether the reverse run is prohibited for each part system depends on the MTB specifications (system variable
#3004). Refer to "List of System Variables" for details.
Command format
All part system reverse run prohibit command
G127 ;
This command disables the program from running reverse to blocks before G127. In part systems that do not have
this command executed, the program cannot run reverse before the timing with G127 commanded in any part system even if a block is in process.
No commands in the machining program can be backed in the reverse run mode. For some G codes, the operation
differs from the above. Refer to "Relationship with Other Functions".
$1
G127
$2
$3
$4
The reverse run is disabled before the G127 block in the 2nd
part system.
The reverse run is canceled in the middle of a block in part systems other than the 2nd part system.
IB-1501278-D
486
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Relationship with other functions
The following shows the relationship between the manual arbitrary reverse run command and G code.
Symbol in
"Reverse run"
column
Operation
○ *1
Block with reverse run enabled
○ *2
Block with restricted-reverse run enabled Refer to the Remarks for restrictions.
∆
Block with reverse run ignored. This block is ignored in both the forward and reverse run modes.
× *3
Block with reverse run prohibited. This is intended only for the command blocks.
× *4
Block with reverse run prohibited. The reverse run is also prohibited for all blocks after the mode
has been switched by this block.
× *5
Prohibits the reverse run in all part systems.
G Code
G00
Function name
Reverse
run
Remarks
Positioning
○ *1
-
G01
Linear interpolation
○ *1
-
G02
Circular interpolation CW and spiral/conical × *3
interpolation CW (type2)
-
G03
Circular interpolation CCW and spiral/coni- × *3
cal interpolation CCW (type2)
-
G02.3
Exponential interpolation CW
× *3
-
G03.3
Exponential interpolation CCW
× *3
-
G02.4
3-dimensional circular interpolation
× *3
-
G03.4
3-dimensional circular interpolation
× *3
-
G04
Dwell
○ *1
Dwell skip is invalid.
G05
High-speed high-accuracy control II/III /
High-speed machining mode
× *4
-
G05.1
High-speed high-accuracy control I / Spline × *4
-
G06.2
NURBS interpolation
× *4
-
G07
Hypothetical axis interpolation
× *3
-
G07.1
G107
Cylindrical interpolation
× *4
-
G08
High-accuracy control
× *4
-
G09
Exact stop check
○ *1
-
G10
Program data input (Parameter / Compen- ∆
sation amount / Coordinate rotation by parameter data) / Life management data
registration
The reverse run is enabled, but data is not recovered.
G10.6
Tool retract command
× *3
-
G11
Program parameter input / cancel
∆
The reverse run is enabled, but data is not recovered.
G12
Circular cutting CW
× *3
-
G13
Circular cutting CCW
× *3
-
G12.1
G112
Polar coordinate interpolation ON
× *4
-
G13.1
G113
Polar coordinate interpolation cancel
× *4
-
G15
Polar coordinate command OFF
× *4
-
G16
Polar coordinate command ON
× *4
-
G17
X-Y plane selection
○ *2
Data is recovered using the modal information storage block.
487
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
G Code
Function name
Reverse
run
Remarks
G18
Z-X plane selection
○ *2
Data is recovered using the modal information storage block.
G19
Y-Z plane selection
○ *2
Data is recovered using the modal information storage block.
G20
Inch command
○ *1
Switched with the movement command just
after commanded.
G21
Metric command
○ *1
Switched with the movement command just
after commanded.
G22
Stroke check before travel ON
× *3
-
G23
Stroke check before travel OFF
× *3
-
G27
Reference position check
× *3
-
G28
Automatic reference position return
× *3
-
G29
Start position return
× *3
-
G30
2nd, 3rd and 4th reference position return
× *3
-
G30.1
Tool change position return 1
× *3
-
G30.2
Tool change position return 2
× *3
-
G30.3
Tool change position return 3
× *3
-
G30.4
Tool change position return 4
× *3
-
G30.5
Tool change position return 5
× *3
-
G30.6
Tool change position return 6
× *3
-
G31
Skip/Multi-step skip function 2
× *3
-
G31.1
Multi-step skip function 1-1
× *3
-
G31.2
Multi-step skip function 1-2
× *3
-
G31.3
Multi-step skip function 1-3
× *3
-
G33
Thread cutting
○ *2
The reverse run is enabled, but the synchronous feed is invalid. Actual cutting mode
available.
G34
Special fixed cycle (bolt hole circle)
× *4
-
G35
Special fixed cycle (write at angle)
× *4
-
G36
Special fixed cycle (arc)
× *4
-
G37
Automatic tool length measurement
× *3
-
G37.1
Special fixed cycle (grid)
× *4
-
G38
Tool radius compensation vector designa- × *3
tion
-
G39
Tool radius compensation corner arc
-
G40
Tool radius compensation cancel / 3-dimen- ○ *2
sional tool radius compensation cancel
Data is recovered using the modal information storage block.
G41
Tool radius compensation left / 3-dimensional tool radius compensation left
○ *2
Data is recovered using the modal information storage block.
G42
Tool radius compensation right / 3-dimensional tool radius compensation right
○ *2
Data is recovered using the modal information storage block.
G40.1
G150
Normal line control cancel
× *4
-
G41.1
G151
Normal line control left ON
× *4
-
G42.1
G152
Normal line control right ON
× *4
-
G43
Tool length compensation (+)
○ *2
Data is recovered using the modal information storage block.
G44
Tool length compensation (-)
○ *2
Data is recovered using the modal information storage block.
G43.1
Tool length compensation along the tool
axis
× *3
-
IB-1501278-D
× *3
488
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
G Code
G43.4
Function name
Reverse
run
Tool center point control type1 ON
× *4
Remarks
-
G43.5
Tool center point control type2 ON
× *4
-
G45
Tool position offset (expansion)
○ *2
Data is recovered using the modal information storage block.
G46
Tool position offset (reduction)
○ *2
Data is recovered using the modal information storage block.
G47
Tool position offset (double)
○ *2
Data is recovered using the modal information storage block.
G48
Tool position offset (decreased by half)
○ *2
Data is recovered using the modal information storage block.
G49
Tool length compensation cancel / Tool cen- ○ *1/
ter point control cancel
× *3
If tool length compensation cancel is designated, reverse running is enabled.
G50.2
Scaling cancel
× *4
-
G51.2
Scaling ON
× *4
-
G50.1
Mirror image by G code cancel
× *3
-
G51.1
G command mirror image ON
× *3
-
G52
Local coordinate system setting
○ *2
Data is recovered using the modal information storage block.
G53
Machine coordinate system selection
○ *2
Data is recovered using the modal information storage block.
G54
Workpiece coordinate system 1 selection
○ *2
Data is recovered using the modal information storage block.
G55
Workpiece coordinate system 2 selection
○ *2
Data is recovered using the modal information storage block.
G56
Workpiece coordinate system 3 selection
○ *2
Data is recovered using the modal information storage block.
G57
Workpiece coordinate system 4 selection
○ *2
Data is recovered using the modal information storage block.
G58
Workpiece coordinate system 5 selection
○ *2
Data is recovered using the modal information storage block.
G59
Workpiece coordinate system 6 selection
○ *2
Data is recovered using the modal information storage block.
G54.1
Workpiece coordinate system selection 48 ○ *2
/ 96 sets extended
Data is recovered using the modal information storage block.
G60
Unidirectional positioning
× *3
-
G61
Exact stop check mode
○ *1
-
G61.1
High-accuracy control ON
× *4
-
G61.2
High-accuracy spline
× *4
-
G62
Automatic corner override
○ *1
-
G63
Tapping mode
○ *1
-
G63.1
Synchronous tapping mode (Forward tapping)
× *4
-
G63.2
Synchronous tapping mode (Reverse tapping)
× *4
-
G64
Cutting mode
○ *1
-
G65
Macro call Simple call
○ *1
-
G66
User macro Modal call A
○ *1
-
G66.1
User macro Modal call B
○ *1
-
G67
User macro Modal call cancel
○ *1
-
G68
Coordinate rotation by program mode ON / × *4
3-dimensional coordinate conversion mode
ON
-
G68.2
Inclined surface machining command
-
489
× *3
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
G Code
Function name
Reverse
run
Remarks
G68.3
Inclined surface machining command
(Based on tool axis direction)
× *3
-
G69
Coordinate rotation by program mode can- × *4
cel / 3-dimensional coordinate conversion
mode cancel / Inclined surface machining
command cancel
-
G70
User fixed cycle
× *3
-
G71
User fixed cycle
× *3
-
G72
User fixed cycle
× *3
-
G73
Fixed cycle (step)
○ *1
Data is created for each movement block in
the fixed cycle.
G74
Fixed cycle (reverse tap)
○ *2
The reverse run is enabled, but the synchronous feed is invalid. Actual cutting mode
available.
G75
Fixed cycle (circular cutting cycle)
○ *1
Data is created for each movement block in
the fixed cycle.
G76
Fixed cycle (Fine boring)
○ *1
Data is created for each movement block in
the fixed cycle.
G77
User fixed cycle
× *3
-
G78
User fixed cycle
× *3
-
G79
User fixed cycle
× *3
-
G80
Fixed cycle for drilling cancel
○ *1
-
G81
Fixed cycle (drill/spot drill)
○ *1
Data is created for each movement block in
the fixed cycle.
G82
Fixed cycle (drill/counter boring)
○ *1
Data is created for each movement block in
the fixed cycle.
G83
Fixed cycle (deep drilling)
○ *1
Data is created for each movement block in
the fixed cycle.
G84
Fixed cycle (tapping)
○ *2
The reverse run is enabled, but the synchronous feed is invalid. Actual cutting mode
available.
G85
Fixed cycle (boring)
○ *1
Data is created for each movement block in
the fixed cycle.
G86
Fixed cycle (boring)
○ *1
Data is created for each movement block in
the fixed cycle.
G87
Fixed cycle (back boring)
○ *1
Data is created for each movement block in
the fixed cycle.
G88
Fixed cycle (boring)
○ *1
Data is created for each movement block in
the fixed cycle.
G89
Fixed cycle (boring)
○ *1
Data is created for each movement block in
the fixed cycle.
G90
Absolute value command
○ *2
Switched with the movement command just
after commanded.
G91
Incremental value command
○ *2
Switched with the movement command just
after commanded.
G92
Coordinate system setting
○ *1
-
G92.1
Workpiece coordinate preset
○ *1
-
G93
Inverse time feed
○ *1
-
G94
Asynchronous feed (feed per minute )
○ *1
-
G95
Synchronous feed (feed per revolution)
○ *1
-
G96
Constant surface speed control ON
○ *2
Switched with the movement command just
after commanded.
G97
Constant surface speed control OFF
○ *2
Switched with the movement command just
after commanded.
IB-1501278-D
490
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
G Code
Function name
Reverse
run
Remarks
(G94)
Asynchronous feed (feed per minute )
○ *1
-
(G95)
Synchronous feed (feed per revolution)
○ *1
-
G98
Fixed cycle
(Initial level return)
○ *1
-
G99
Fixed cycle R point level return
○ *1
-
G115
Start point designation synchronization
Type 1
○ *1
-
G116
Start point designation synchronization
Type 2
○ *1
-
G118.2
Parameter switching (Spindle)
× *3
-
G119.2
Inertia Estimation (Spindle)
× *3
-
G100 to
G225
User macro (G code call) Max. 10
○ *1
-
M98
Subprogram call
○ *1
-
491
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.9 Data Input by Program
15.9.1 Parameter Input by Program ; G10 L70/L100, G11
Function and purpose
The parameters set from the setting and display unit can be changed in the machining programs.
G10 L70
For commanding data with decimal point, and character string data.
The data's command range conforms to the parameter setting range described in Setup
Manual.
G10 L100
For setting/changing the tool shape for 3D solid program check.
Command format
Data setting start command
G10 L70 ;
P__ S__ A__ H□__ ;
Bit parameter
P__ S__ A__ D__ ;
Numerical value parameter
P__ S__ A__ <character string> ;
Character string parameter
P
Parameter No.
S
Part system No.
A
Axis No.
H
Bit type data
D
Numeric type data
character string
Character string data
Data setting end command
G11 ;
Note
(1) The sequence of addresses in a block must be as shown above.
When an address is commanded two or more times, the last command will be valid.
(2) The part system No. is set in the following manner. "1" for the 1st part system, "2" for 2nd part system, and so
forth.
If the address S is omitted, the part system of the executing program will be applied.
As for the parameters common to part systems, the command of part system No. will be ignored.
(3) The axis No. is set in the following manner. "1" for 1st axis, "2" for 2nd axis, and so forth.
If the address A is omitted, the 1st axis will be applied.
As for the parameters common to axes, the command of axis No. will be ignored.
(4) Address H is commanded with the combination of setting data (0 or 1) and the bit designation □ (0 to 7).
Hd0: Sets the dth bit OFF. (d: 0 to 7)
Hd1: Sets the dth bit ON. (d: 0 to 7)
(5) Only the decimal number can be commanded with the address D.
The value that is smaller than the input setting increment (#1003 iunit) will be round off to the nearest increment.
(6) The character string must be put in angled brackets "<" and ">".
If these brackets are not provided, the program error (P33) will occur.
Up to 63 characters can be set.
IB-1501278-D
492
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(7) Issue "G10 L70" and "G11" commands in independent blocks. A program error (P33, P421) will occur if not commanded in independent blocks.
(8) The parameter "#1078 Decimal pnt type 2" is disabled.
(9) The following data cannot be changed with the G10 L70 command:
Tool compensation data, workpiece coordinate data, PLC switch, and PLC axis parameter.
(10) The settings of the parameters with (PR) in the parameter list will be enabled after the power is turned OFF and
ON.
Refer to the parameter list in your manual.
Data setting start command
G10 L100 ;
P__ T__ K__ D__ H__ I__ J__ C__ ;
Data setting end command
G11 ;
P
Line No. of the tool set area 1 to 80 (Required to command) (*1)
T
Tool No. 0 to 99999999 (Required to command)
K
Command the tool type using a numerical value.
0: Default tool (3: Sets to drill.)
1: Ball end mill
2: Flat end mill
3: Drill
4: Bull nose end mill
5: Chamfer
6: Tap
7: Face mill
D
Tool diameter/radius (Decimal point input available) (*2)
H
Tool length (Decimal point input available)
I
Tool shape data 1 (Decimal point input available)
J
Tool shape data 2 (Decimal point input available)
C
Command the tool color using a numerical value.
0: Default color (2: Sets to red.)
1: Gray
2: Red
3: Yellow
4: Blue
5: Green
6: Light blue
7: Purple
8: Pink
(*1) Line No. corresponds with a line No. in the tool shape set area (tool shape set screen).
(*2) The setting of "#8117 OFS Diam DESIGN" determines tool diameter or tool radius.
(*3) For details of the data, refer to the explanation of Instruction Manual "Program Check (3D)".
(*4) Omitted addresses cannot be set or changed.
(*5) When address T is set to 0, the designated line is deleted.
(*6) In the following cases, the program error (P421) occurs and the parameter in the block is not changed.
When a block contains an address whose data are out of range
When there is an illegal address
When P or T is omitted
(*7) Issue G10 L70/L100 and G11 commands in independent blocks. A program error (P421) will occur if not commanded in independent blocks.
(*8) The parameter "#1078 Decimal pnt type 2" is enabled.
(*9) The parameter "#8044 Unit*10" is disabled.
(*10) The display or operation at graphic check varies depending on the model or display unit.
493
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Precautions
Parameter update timing
The timing for updating the spindle parameter and the NC axis parameter settings depends on the MTB specifications (parameter "#1254 set26/bit3").
#1254 set26/bit3
Spindle parameter
NC axis parameter
Invalid
The program updates the parameter settings, waiting for "all axes smoothing zero" in all
part systems.
Valid
The program updates the parameter settings without waiting for "smoothing zero".
(*1)
The program updates the parameter settings, waiting for "all axes smoothing zero" in
control part systems. (*2)
(*1) The parameters of the target spindle are not updated while the functions below are active. The parameters are
updated after the functions have been completed.
Synchronous tapping cycle
The spindle for spindle position control is in C axis mode and the C axis is in motion.
(*2) The program updates the exchange axis under the arbitrary axis exchange control, waiting for "all axes smoothing zero" in all part systems.
Program example
(1) For G10 L70
G10 L70 ;
P6401 H71 ;
Sets "1" to "#6401 bit7".
P8204 S1 A2 D1.234 ;
Sets "1.234" to "#8204 of the 1st part system 2nd axis".
P8621 <X> ;
Sets "X" to "#8621".
G11 ;
(2) When G10 L100 command
G10 L100;
P1 T1 K3 D5. H20. I0 J0 C2 ;
Set the data of Line 1
P2 T10 D10. ;
Set "10." for the tool diameter/radius of Line 2
P8 T0 ;
Clear the data of Line 8
G11 ;
IB-1501278-D
494
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.9.2 Compensation Data Input by Program ; G10 L2/L10/L11/L12/L13/L20, G11
Function and purpose
The tool compensation and workpiece offset can be set or changed by the program using the G10 command.
During the absolute value (G90) mode, the commanded offset amount serves as the new offset, whereas during the
incremental value (G91) mode, the currently set offset plus the commanded offset serves as the new offset.
Command format
Workpiece coordinate system offset input (L2)
G90 (G91) G10 L2 P_ X_ Y_ Z_ ;
P
0 : External workpiece
1 : G54
2 : G55
3 : G56
4 : G57
5 : G58
6 : G59
X, Y, Z
Offset amount of each axis
Note
(1) The compensation amount in the G91 will be an incremental amount and will be cumulated each time the program is executed. Command G90 or G91 before the G10 as a cautionary means to prevent this type of error.
Extended workpiece coordinate system offset input (L20)
G10 L20 P_ X_ Y_ Z_ ;
P
n No. of G54.n (1 to 300)
X, Y, Z
Offset amount of each axis
Offset input to the currently selected workpiece coordinate system (When the L command is omitted)
G10 P_ X_ Y_ Z_ ;
P
(1) During G54 to G59 modal
0
: External workpiece offset (EXT)
1 to 6
: Workpiece offset input (G54 to G59)
Other than 0 to 6
: Program error (P35)
(2) During G54.n modal
X, Y, Z
1 to 300
: Extended workpiece coordinate offset amount setting (G54.n)
Other than 1 to 300
: Program error (P35)
Offset amount of each axis
495
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Tool compensation input (L10/L11/L12/L13)
Tool compensation memory type I
G10 L10 P_ R_ ;
P
Compensation No.
R
Compensation amount
Tool compensation memory type II
G10 L10 P_ R_ ;
Tool length compensation shape compensation
G10 L11 P_ R_ ;
Tool length compensation wear compensation
G10 L12 P_ R_ ;
Radius shape compensation
G10 L13 P_ R_ ;
Radius wear compensation
Note
(1) Type I is selected when parameter "#1037 cmdtyp" is set to "1", and type II is selected when set to "2".
Compensation input cancel
G11 ;
Common to workpiece coordinate system offset, extended workpiece coordinate system offset, and tool compensation.
IB-1501278-D
496
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Detailed description
(1) Even if this command is displayed on the screen, the offset No. and variable details will not be updated until actually executed.
(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.
(4) Do not command G10 in the same block as the fixed cycle and sub-program call command. This will cause malfunctioning and program errors.
(5) The workpiece offset input command (L2 or L20) should not be issued in the same block as the tool compensation input command (L10).
(6) If an illegal L No. or compensation No. is commanded, the program errors (P172 and P170) will occur respectively.
If the offset amount exceeds the maximum command value, the program error (P35) will occur.
(7) Decimal point inputs can be used for the offset amount.
(8) The offset amounts for the external workpiece coordinate system and the workpiece coordinate system are commanded as distances from the basic machine coordinate system zero point.
(9) The workpiece coordinate system updated by inputting the workpiece coordinate system will follow the previous
modal (G54 to G59) or the modal (G54 to G59) in the same block.
(10) L2/L20 can be omitted when the workpiece offset is input.
(11) When the P command is omitted for workpiece offset input, it will be handled as the currently selected workpiece compensation input.
(12) If the G command that cannot be combined with G10 is issued in the same block, a program error (P45) will
occur.
(13) The setting range for the compensation amount is given below.
Program error (P35) occurs for any value not listed in the table after command unit conversion.
With an incremental value command, the setting range for the compensation amount is the sum of the present
setting value and command value.
Setting
Compensation amount
Metric system
Inch system
#1003=B
± 9999.999 (mm)
± 999.9999 (inch)
#1003=C
± 9999.9999 (mm)
± 999.99999 (inch)
#1003=D
± 9999.99999 (mm)
± 999.999999 (inch)
#1003=E
± 9999.999999 (mm)
± 999.9999999 (inch)
Program example
(1) Input the compensation amount.
; G10 L10 P10 R-12.345 ; G10 L10 P05 R9.8765 ; G10 L10 P30 R2.468 ;
H10=-12.345 H05=9.8765 H30=2.468
497
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(2) Updating of compensation amount
(Example 1) Assume that H10 = -1000 is already set.
N1 G01 G90 G43 Z-100000 H10 F100 ;
(Z=-101000)
N2 G28 Z0 ;
N3 G91 G10 L10 P10 R-500 ;
(The mode is the G91 mode, so -500 is added.)
N4 G01 G90 G43 Z-100000 H10 ;
(Z=-101500)
(Example 2) Assume that H10 = -1000 is already set.
Main program
N1 G00 X100000 ;
a
N2 #1=-1000 ;
N3 M98 P1111 L4 ;
b1, b2, b3, b4
Subprogram O1111
N1 G01 G91 G43 Z0 H10 F100 ;
c1, c2, c3, c4
G01 X1000 ;
d1, d2, d3, d4
#1=#1-1000 ;
G90 G10 L10 P10 R#1 ;
M99 ;
(b1)
c1
d1
(b2)
(b3)
(b4)
c2
d2
c3
d3
c4
d4
1000 1000 1000 1000
(a)
1000 1000 1000 1000
<Note>
Final offset amount will be H10= -5000.
(Example 3) The program for Example 2 can also be written as follows.
Main program
N1 G00 X100000 ;
N2 M98 P1111 L4 ;
Subprogram O1111
N1 G01 G91 G43 Z0 H10 F100 ;
N2 G01 X1000 ;
N3 G10 L10 P10 R-1000 ;
N4 M99 ;
IB-1501278-D
498
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(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 ;
N102 X0 Y0 ;
M02 ;
-X
- 20.
M
- 10.
Basic machine coordinate
system zero point
N100
-X
N101
(W1)
- 10.
G54 coordinate before
change
N102
-X
W1
G54 coordinate after change
-Y
- 20.
-Y
-Y
<Note>
Changes of workpiece current position display in N101
The G54 workpiece position display data will change before and after the workpiece coordinate system
is changed with G10 in N101.
→
X = +5.000
X=0
Y=0
Y = +5.000
When workpiece coordinate system offset amount is set in G54 to G59
G90 G10 L2 P1 X-10.000 Y-10.000 ;
G90 G10 L2 P2 X-20.000 Y-20.000 ;
G90 G10 L2 P3 X-30.000 Y-30.000 ;
G90 G10 L2 P4 X-40.000 Y-40.000 ;
G90 G10 L2 P5 X-50.000 Y-50.000 ;
G90 G10 L2 P6 X-60.000 Y-60.000 ;
499
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(4) When using one workpiece coordinate system as multiple workpiece coordinate systems
Main program
:
#1=-50. #2=10. ;
M98 P200 L5 ;
M02 ;
%
Sub program
O200
N1 G90 G54 G10 L2 P1 X#1 Y#1 ;
N2 G00 X0 Y0 ;
N3 X-5. F100 ;
N4 X0 Y-5. ;
N5 Y0 ;
N6 #1=#1+#2 ;
N7 M99 ;
%
-X
- 60.
- 50.
- 40.
- 30.
- 20.
G54'' ''
W
G54'' '
W
G54''
G54'
G54
W
W
M
- 10.
W
- 10.
Basic machine coordinate system zero
point
5
- 20.
4
- 30.
3
- 40.
2
- 50.
1
-Y
Precautions
(1) Even if this command is displayed on the screen, the offset No. and variable details will not be updated until actually executed.
N1 G90 G10 L10 P10 R-100 ;
N2 G43 Z-10000 H10 ;
N3 G00 X-10000 Y-10000 ;
N4 G90 G10 L10 P10 R-200 ;
IB-1501278-D
The H10 offset amount is updated when the N4 block is executed.
500
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.9.3 Compensation Data Input by Program (Turning Tool) ; G10 L12/L13, G11
Function and purpose
If the tool compensation type is changed to type III by the compensation type selection function, it is possible to write
the offset amount for three base axes, nose R compensation amount, and tool nose point (parameter "#1046 T-ofs
disp type"). During the absolute value (G90) mode, the commanded tool compensation amount serves as a new
one. During the incremental value (G91) mode, the currently set compensation amount plus the commanded compensation amount serves as the new compensation amount.
Command format
Turning tool compensation input (L12/L13)
G10 L12 P__ X__ Y__ Z__ R__ Q__ ;
(Shape compensation)
P
Tool shape compensation No. (1 to number of tool compensation sets)
X, Y, Z
Compensation amount for each axis
R
Nose R compensation amount
Q
Hypothetical tool nose point
G10 L13 P__ X__ Y__ Z__ R__ Q__ ;
(Wear compensation)
P
Wear compensation No. (1 to number of tool compensation sets)
X, Y, Z
Compensation amount for each axis
R
Nose R compensation amount
Q
Hypothetical tool nose point
Compensation input cancel
G11 ;
501
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Detailed description
The commanded range and unit of the compensation amount are as follows.
Program error (P35) occurs for any value not listed in the table after command unit conversion. With an incremental
value command, the commanded range for the compensation amount is the sum of the present setting value and
command value.
Setting
Compensation amount
Metric system
Inch system
#1003=B
± 9999.999 (mm)
± 999.9999 (inch)
#1003=C
± 9999.9999 (mm)
± 999.99999 (inch)
#1003=D
± 9999.99999 (mm)
± 999.999999 (inch)
#1003=E
± 9999.999999 (mm)
± 999.9999999 (inch)
Precautions
(1) The X, Y, and Z addresses are set to the axis names specified in the parameters for three base axes (parameters
“#1026 base_I”, “#1027 base_J”, and “#1028 base_K”).
The compensation data input by program of the tool offset is not available for an axis address that is not specified
in the parameters for three base axes. Therefore, be sure to carry out compensation data input by program after
specifying the parameters for three base axes.
(2) The compensation data input by program is available using a command (G10 L10, L11, L12, or L13) in a normal
machining center system, but only the compensation amount of the Z axis and nose R can be input as data.
IB-1501278-D
G10 L10 P__ R__;
Z axis shape compensation
G10 L11 P__ R__;
Z axis wear compensation
G10 L12 P__ R__;
Nose R shape compensation
G10 L13 P__ R__;
Nose R wear compensation
502
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.9.4 Tool Shape Input by Program ; G10 L100, G11
Function and purpose
This function sets tool shape data of the tool management screen by the machining program. Using this function
saves having to execute the many steps required to input the tool shape from the screen when executing 3D checks.
Command format
Tool shape settings from the program
G10 L100;
Data setting start command
P_ T_ K_ D_ H_ I_ J_ C_ ;
Data setting command
P
Data No.
Specify the data No. on the tool management screen. (Cannot be omitted.)
The maximum value of data No. varies depending on the number of tool management data sets.
T
Tool No.
Specify the tool No. (Cannot be omitted.)
0 to 99999999
When "0" is specified, all the tool shape data of data No. specified by address P
will be "0". In this case, only the tool shape data is changed.
K
Type
Designate the tool type using a numerical value.
[Mill tool]
1: Ball end mill
2: Flat end mill
3: Drill
4: Radius end mill
5: Chamfer
6: Tap
7: Face mill
[Turning tool]
51: Turning
52: Slotting
53: Thread cutting
54: Turning drill
55: Turning tap
D
Shape data 1
H
Shape data 2
I
Shape data 3
Designate shape data of the tool. (Decimal point input enabled)
The setting details of shape data differ depending on the tool type.
J
Shape data 4
Refer to the following "Correspondence between tool types and shape data" for
the settings for each tool type.
C
Tool color
Specify the tool color.
G11;
1: Gray
2: Red
3: Yellow
4: Blue
5: Green
6: Light blue
7: Purple
8: Pink
Data setting end command
503
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
[Correspondence between tool types and shape data]
[Mill tool]
Shape data
Item by tool type
Ball end mill Flat end mill
Drill
Radius end
mill
Chamfer
1
Tool length
2
Tool radius (*1)
Tap
Face mill
3
-
-
Tool nose
angle
Corner
rounding
End angle
Pitch
Cutter length
4
-
-
-
-
End diame- Thread diter
ameter
Shank diameter
5
-
-
-
-
-
-
-
6
-
-
-
-
-
-
-
[Turning tool]
Shape data
Item by tool type
Turning
Slotting
Thread cutting
1
Turning drill
Turning tap
Tool length A
2
Tool length B
Tool length B (*1)
3
Tool nose radius Tool nose radius -
4
Tool nose angle
Tool nose width
-
-
Thread diameter
5
Cutting edge an- Max. slot depth
gle
-
-
-
6
Tool width
Tool width
-
-
Tool width
Tool nose angle
Pitch
(*1) When "#8968 Tool shape radius validity" is set to "0", input the diameter value. When it is set to "1", input the
radius value.
Note
(1) Omitted addresses cannot be set.
(2) If address "P" or "T" is omitted, a program error (P422) will occur.
(3) For M80 Series, the tool shape data will be rewritten during the graphic check.
(4) For M800W and M800S Series, this change is only reflected on the graphic check drawing. The tool shape data
is not rewritten.
IB-1501278-D
504
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Detailed description
Tool shape settings from the program
The 3D check switches the drawing of tools at the timing of a tool change command. Therefore, the machining program should be prepared to run a tool shape setting command prior to the tool change command being issued.
Machining program
Tool shape data
O200
Tool A
G10 L100;
P1 T201 ...; (Change the shape of tool A.)
P3 T203 ...; (Newly register the shape of
Tool B
G11;
Tool management screen
Tool C
tool C.)
(a)
T201; (Replaced with tool A.)
3D check screen
(b)
T202; (Replaced with tool B.)
(c)
T203; (Replaced with tool C.)
(a) The tool is drawn with the shape that has been changed by the machining program.
(b) The tool is drawn with a shape that has been registered on the tool management screen.
(c) The tool is drawn with a new shape that has been registered by the machining program.
Program example
(1) Tool shape settings from the program
G10 L100 ;
P1 T1 K3 D5. H20. I0 J0 C2 ;
Sets the data of data No. 1.
P2 T10 D10. ;
Sets the tool diameter of data No. 2 to "10.".
P8 T0 ;
Sets the tool shape data of data No. 8 to "0".
G11;
Precautions
(1) If the G10 or G11 command is not issued in an independent block, a program error (P422) will occur.
(2) If a block contains an address whose data is out of range, a program error (P35) will occur.
(3) If a block contains an illegal address, a program error (P32) will occur.
(4) The parameter "#1078 Decimal pnt type 2" is valid for the position command.
Other command addresses comply with the minimum input unit ("#1015 cunit"). (Based on the MTB specifications.)
(5) The parameter "#8044 UNIT*10" is invalid.
(6) The command unit of parameters to be input in mm/inch can be switched by G20/G21.
505
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.9.5 R-Navi Data Input by Program ; G10 L110, G11, G68.2, G69
Function and purpose
The R-Navi setup parameters can be configured from a machining program.
Command setting values with absolute values.
The input unit conforms to the input setting unit of the 1st part system and the initial inch.
In either case, the input unit depends on the MTB specifications (parameters "#1003 iunit" and "#1041 I_inch").
The parameter "#8044 UNIT*10" is invalid.
Command format
Workpiece registration and setting
G69;
Canceling the selected machining surface
G10 L110 ;
Start setting workpiece data
Q_ <_> F_ C_ R_ X_ Y_ Z_ I_ J_ K_;
Data setting
G11;
End data setting
Command G10 and G11 in independent blocks.
A program error (P423) will occur if not commanded in independent blocks.
Address Q cannot be omitted. If omitted, a program error (P423) will occur.
For the omitted addresses, data remains unchanged.
Cancel the selected machining surface before data setting.
If data is set to a machining workpiece including the selected machining surface, a program error (P423) will
occur.
Q
Workpiece registration No.(1 to 10)
<>
Workpiece name
Designate the name using up to 20 one-byte alphanumeric characters, including
symbols.
(If "0" is entered, the setting value is cleared.)
F
Workpiece shape
0: Rectangular parallelepiped
1: Circular cylinder
C
Basic coordinate system of machining workpiece
0 to 5: G54 to G59
6 to 305: G54.1P1 to G54.1P300
R
Marked point No.
When the workpiece shape is set to rectangular parallelepiped, designate the
marked point to set the basic coordinate system zero point. (0 to 8)
X, Y, Z,
Workpiece size
When the shape is set to circular cylinder, designate the diameter with X and the
height with Y.
(0.000 to 99999.999)
I, J, K
Workpiece shift
Set the shift amount from the marked point to the basic coordinate system zero
point.
(-99999.999 to 99999.999)
IB-1501278-D
506
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Symbols "\", "/", ",", "*", "?", """, "<", ">", "|", " " (space), “@”, and “~” cannot be used as one-byte symbols.
If an available symbol is set, a program error (P35) or (P32) will occur.
For details on each of input data, refer to the instruction manual.
Machining surface registration and setting
G69;
Canceling the selected machining surface
G10 L111 ;
Start setting machining surface data
P0 Q_ D_ <_> X_ Y_ Z_ A_;
P1 M_ B_ C_ E_ F_ H_ I_;
P2 M_ B_ C_ E_ F_ H_ I_;
Machining surface setting (Refer to (1).)
Designate the coordinate axis direction (1st axis). (Refer to (2).)
Designate the coordinate axis direction (2nd axis). (Refer to (2).)
G11;
End data setting
G68.2 P10 Q__ D__ ;
Selecting the registered machining surface
 Command G10 and G11 in independent blocks.
A program error (P423) will occur if not commanded in independent blocks.
Addresses P, Q, and D cannot be omitted. If omitted, a program error (P423) will occur.
For the omitted addresses, data remains unchanged.
 For the machining surface designated with P0, set the coordinate axis direction with P1 and P2. Be sure to first
command P0.
If P1 or P2 is commanded before P0, a program error (P423) will occur.
The machining surface cannot be registered for an undefined workpiece.
If the registration command is issued, a program error (P423) will occur.
Cancel the selected machining surface before data setting.
If data is set to the selected machining surface, a program error (P423) will occur.
(1) Command address to register the machining surface
P
Machining surface registration
(0)
Q
Workpiece registration No.
(1 to 10)
D
Machining surface registration No.
(2 to 17)
<>
Designate the name of the machining surface using up to 15 one-byte alphanumeric characters, including symbols.
(If "0" is entered, the setting value is cleared.)
X, Y, Z
Designate the coordinate system zero point (feature coordinate system zero point)
of the machining surface with the offset from the basic coordinate zero point.
In this case, designate the coordinate axis direction of the basic coordinate system.
(-99999.999 to 99999.999)
A
From three orthogonal axes (X, Y, and Z axes), select two coordinate axes to designate the coordinate axis direction along the machining surface.
0: Z/X axis
1: Y/Z axis
2: X/Y axis
Symbols "\", "/", ",", "*", "?", """, "<", ">", "|", " " (space), “@”, and “~” cannot be used as one-byte symbols.
If an available symbol is set, a program error (P35) or (P32) will occur.
For details on each of input data, refer to the instruction manual.
507
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(2) Command address to designate the coordinate axis direction
P
Coordinate axis direction designation axis
1: 1st axis
2: 2nd axis
M
Coordinate axis direction designation method
Designate the method to set the coordinate axis direction along the machining surface.
0: [Method 1] On-axis point (+)
1: [Method 2] Latitude/Longitude
2: [Method 3] Latitude / Projection angle
3: [Method 4] Start point / End point
4: [Method 5] Indexing angle (Z axis direction only)
B, C, E, F, H, I
Coordinate axis direction setting (*1)
(-99999.999 to 99999.999)
(*1) The setting details vary depending on the coordinate axis direction designation method (M address).
[M address: 0 (On-axis point (+))]
B, C, E: Coordinate value on X, Y, or Z axis
F to I: Vacuous
[M address: 1 (Latitude/Longitude)]
B: Latitude (θ1)
C: Longitude (θ2)
E to I: Vacuous
[M address: 2 (Latitude / Projection angle)]
B: Latitude (θ1)
C: Projection angle (θ2)
E to I: Vacuous
[M address: 3 (Start point / End point)]
B: Start point coordinate value (X)
C: Start point coordinate value (Y)
E: Start point coordinate value (Z)
F: End point coordinate value (X)
H: End point coordinate value (Y)
I: End point coordinate value (Z)
[M address: 4 (Indexing angle)]
B: 1st rotation angle (θ1)
C: 2nd rotation angle (θ2)
E to I: Vacuous
Method 5 (indexing angle) in the coordinate axis direction designation method is only available in the Z axis
direction.
If a command is issued to an axis other than the Z axis designated by the coordinate axis selection command
(P0Ax), a program error (P423) will occur.
P0 A0 (Z/X axis)
P0 A1 (Y/Z axis)
P0 A2 (X/Y axis)
P2 M4 setting causes an error. (Method 5 is not able to be selected on the
2nd axis.)
P1M4 or P2M4 setting causes an error. (Method 5 is not able to be selected.)
For details on each of input data, refer to the instruction manual.
IB-1501278-D
508
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Operation example
This function enables the R-Navi setup parameters to be configured from a machining program.
After the parameters have been configured from the program, you can check the values or select the machining
surface from the setup screen.
Machining program
O200
Canceling the selected machining surface
G69;
(Setting of workpiece)
G10 L110;
Q1 <WORK1> F0 C0 R1 X50.0 Y30.0 Z20.0 I0.0 J0.0 K0.0 ;
Q2 <WORK2> F0 C0 R5 X50.0 Y30.0 Z20.0 I-10.0 J-5.0 K-40.0 ;
...
G11;
(Setting the machining surface)
G10 L111;
(Workpiece : 1, surface : 2)
P0 Q1 D2 <SURFACE1_2> X50.0 Y-30.0 Z-20.0 A0;
P1 M0 B1.0 C0.0 E1.732 F0.0 H0.0 I0.0;
P2 M1 B90.0 C0.0 E0.0 F0.0 H0.0 I0.0;
(Workpiece : 1, surface : 17)
P0 Q1 D17 <SURFACE1_17> X20.0 Y20.0 Z10.0 A0;
P1 M1 B0.0 C30.0 E0.0 F0.0 H0.0 I0.0;
P2 M0 B0.0 C30.0 E0.0 F0.0 H0.0 I0.0;
...
(Workpiece : 2, surface : 2)
P0 Q2 D2 <SURFACE2_2> X20.0 Y20.0 Z10.0 A0;
P1 M0 B1.0 C0.0 E1.732 F0.0 H0.0 I0.0;
P2 M1 B90.0 C0.0 E0.0 F0.0 H0.0 I0.0;
...
G11;
Setup parameters
WORK2
WORK1
BASE-SURFACE
SURFACE1-2
Setup screen
Restrictions
(1) If the machining surface is selected or canceled while the block start interlock signal (*BSL) is turned OFF, an
operation error (M01 0109) will occur. After this, if the block start interlock signal (*BSL) is turned ON, the machining surface is selected or canceled. The operation of the PLC signal depends on the MTB specifications.
509
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.10 Tool Life Management II ; G10 L3, G11
15.10.1 Allocation of The Number of Tool Life Management Sets to Part Systems
Function and purpose
The number of tool life management sets can be set per part system.
This function is divided into following methods and which one is used depends on the MTB specifications (parameters "#1439 Tlife-SysAssign", "#12055 Tol-lifenum").
Arbitrary allocation: Arbitrarily allocates the number of tool life management sets to each part system.
Fixed allocation: Automatically and evenly allocates the number of tool life management sets to each part system.
The arbitrary allocation enables the efficient allocation because when a certain part system needs only a small number of tool life management sets, the rest can be allocated to another part system. If an auxiliary-axis part system
does not need the tool life management sets at all, the number of tool life management sets can be set to "0" for the
auxiliary-axis part system.
Subsequent description is an example in the case where the number of tool life management sets in the system is
999 sets.
(1) Arbitrary allocation (with #1439=1)
The number of sets allocated to each part system depends on the MTB specifications (parameter "#12055 Tollifenum").
The following example shows the number of tool offset sets allocated when the lathe system is a 4-part system.
(a) When the number of tool life management sets is increased for the 1st part system ($1) of 4-part system
$1
250
$2
250
$3
250
$4
250
$1
400
$2
200
$3
200
$4
200
(b) When the number of tool life management sets is set to "0 sets" for the 3rd part system ($3) of 3-part system
to use that part system as an auxiliary-axis part system
IB-1501278-D
$1
334
$2
333
$3
333
$1
500
$2
500
$3
0
510
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(2) Automatic and even allocation (with #1439=0)
1-part system
2-part system
$1
$1
3-part system
(Lathe system only)
$1
500
999
(*1)
$2
500
334
(*2)
$2
333
$3
333
4-part system
(Lathe system only)
$1
250
$2
250
$3
250
$4
250
(*1)The maximum number of tool life management sets per part system is 999.
(*2) If there is any remainder, the remainder is allocated to the 1st part system.
Precautions
(1) The maximum number of tool life management sets for 1-part system is 999.
(2) For 1-part system, up to the number of tool life management sets in the system is available regardless of the
parameter setting.
(3) When the value of the parameter "#12055 Tol-lifenum" is equal to or lower than the number of tool life management sets in the system, the remainder is not allocated to any part system even if the specification allows arbitrary allocation.
(4) When the value of the parameter "#12055 Tol-lifenum" is equal to or lower than the number of tool life management sets in the system, system alarm (Y05) is generated even if the specification allows arbitrary allocation.
(5) Even if the specification allows arbitrary allocation, fixed allocation is applied if the parameter is "#12055 Tollifenum"= "0" for all part systems.
(6) When entering data into the tool life management file, if the number of tool life management data exceeds that
of current tool life management sets, the excess tool life management data cannot be entered.
511
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.11 Inputting The Tool Life Management Data ; G10,G11
15.11.1 Inputting The Tool Life Management Data by G10 L3 Command ; G10 L3,G11
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. There are three tool life management methods: I, II, and III. Which
method is valid depends on the MTB specifications.
Only group No. 1 can be used to register, change and add for the tool life management III.
Command format
Start of life management data registration
G10 L3;
P_ L_ Q_ ; (First group)
T_ H_ D_;
T_ H_ D_;
P_ L_ Q_ ; (Next group )
T_ H_ D_;
P
Group No.
L
Life
Q
Control method
T
Tool No. The spare tools are selected in the order of the tool Nos. registered here.
H
Length compensation No.
D
Radius compensation No.
Start of life management data change or addition
G10 L3 P1;
P_ L_ Q_ ; (First group)
T_ H_ D_;
T_ H_ D_;
P_ L_ Q_ ; (Next group )
T_ H_ D_;
P
Group No.
L
Life
Q
Control method
T
Tool No.
H
Length compensation No.
D
Radius compensation No.
IB-1501278-D
512
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Start of life management data deletion
G10 L3 P2;
P_ ; (First group)
P_ ; (Second group)
P
Group No.
End of life management data registration, change, addition or deletion
G11 ;
Detailed description
Command range
Item
Command range
Group No.
(Pn)
1 to 99999999 (Only group No. 1 can be used for the tool life management
III)
Life
(Ln)
0 to 65000 times (No. of times control method)0 to 4000 minutes (time control method)
Control method
(Qn)
1 to 3
1: Number of mounts control
2: Time control
3: Number of cutting times control
Tool No.
(Tn)
1 to 99999999
Length compensation No.
(Hn)
0 to 999 (*)
Radius compensation No.
(Dn)
0 to 999 (*)
(*) The setting range of the tool compensation No. differs according to the specification of the "number of tool offset
sets".
If a value exceeding each command range is issued, a program error (P35) will occur.
513
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Operation example
Program example
Operation
Data registration
G10 L3;
P10 L10 Q1 ;
T10 H10 D10 ;
G11 ;
M02 ;
1. After deleting all group data, the registration starts.
2. Group No. 10 is registered.
3. Tool No. 10 is registered in group No. 10.
4. The registration ends.
5. The program ends.
Group change, addition
G10 L3 P1;
P10 L10 Q1 ;
T10 H10 D10 ;
G11 ;
M02 ;
1. Changing and addition of the group and tool starts.
2. The change and addition operation takes place in the following
manner.
(1) When group No. 10 has not been registered.- Group No. 10 is
additionally registered.
- Tool No. 10 is registered in group No. 10.
(2) When group No. 10 has been registered, but tool No. 10 has
not been registered.
- Tool No. 10 is additionally registered in group No. 10.
(3) When group No. 10 and tool No. 10 have been both registered.- The tool No. 10 data is changed.
3. The group and tool change and addition ends.
4. The program ends.
Group deletion
G10 L3 P2;
P10 ;
G11 ;
M02 ;
1. The group deletion starts.
2. The group No. 10 data is deleted.
3. The group deletion ends.
4. The program ends.
IB-1501278-D
514
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.11.2 Inputting The Tool Life Management Data by G10 L30 Command ; G10 L30,G11
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. Only group No. 1 can be used to register, change and add for the
tool life management III.
To specify additional compensation amount or direct compensation amount by control method, the length compensation and diameter compensation can be registered/changed with the tool compensation amount format.
Command format
Start of life management data registration
G10 L30;
P_ L_ Q_ ; (First group)
T_ H_ R_ ;
T_ H_ R_ ;
P_ L_ Q_ ; (Next group )
T_ H_ R_ ;
P
Group No.
L
Life
Q
Control method
T
Tool No. The spare tools are selected in the order of the tool Nos. registered here.
H
Length compensation No. or length compensation amount
R
Radius compensation No. or radius compensation amount
L_, Q_, H_, and R_ cannot be omitted. If omitted, a program error (P33) occurs.
Start of life management data change or addition
G10 L30 P1;
P_ L_ Q_ ; (First group)
T_ H_ R_ ;
T_ H_ R_ ;
P_ L_ Q_ ; (Next group )
T_ H_ R_ ;
P
Group No.
L
Life
Q
Length compensation data format, radius compensation data format, control method
T
Tool No.
H
Length compensation No. or length compensation amount
D
Radius compensation No. or radius compensation amount
L_, Q_, H_, and R_ cannot be omitted. If omitted, a program error (P33) occurs.
515
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Start of life management data deletion
G10 L30 P2;
P_ ; (First group)
P_ ; (Second group)
P
Group No.
End of life management data registration, change, addition or deletion
G11 ;
Detailed description
Command range
Item
Command range
Group No.
(Pn)
1 to 99999999 (Only group No. 1 can be used for the tool life management III)
Tool No.
(Tn)
1 to 99999999
Control method
(Qabc)
abc:Three integer digits
a. Tool length compensation data format
0: Compensation No.
1: Incremental value compensation amount
2: Absolute value compensation amount
b. Tool radius compensation data format
0: Compensation No.
1: Incremental value compensation amount
2: Absolute value compensation amount
c. Tool management method
0: Usage time
1: Number of mounts
2: Number of usages
Life
(Ln)
0 to 4000 minutes (usage time)
0 to 65000 times (number of mounts)
0 to 65000 times (number of usages)
Length compensation (Hn)
(No./amount)
0 to 999 (compensation No.) (*1)
±999.999 (incremental value compensation amount) (*2)
±999.999 (absolute value compensation amount) (*2)
Radius compensation (Rn)
(No./amount)
0 to 999 (compensation No.) (*1)
±999.999 (incremental value compensation amount) (*2)
±999.999 (absolute value compensation amount) (*2)
(*1) The setting range of the tool compensation No. differs according to the specification of the "number of tool offset
sets".
(*2) Refer to (16) in "12.9.3 Precautions for Inputting the Tool Life Management Data" for the data range of compensation amount.
IB-1501278-D
516
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
Operation example
Program example
Data registration
G10 L30;
P10 L10 Q001 ;
T10 H10 R10 ;
G11 ;
M02 ;
Group change, addition G10 L30 P1;
P10 L10 Q122 ;
T10 H0.5 R0.25 ;
G11 ;
M02 ;
Operation
1. After deleting all group data, the registration starts.
2. Group No. 10 is registered.
Tool management method is number of mounts
Compensation No. method is applied to tool length compensation and tool radius compensation.
3. Tool No. 10 is registered in group No. 10.
4. The registration ends.
5. The program ends.
1. Changing and addition of the group and tool starts.
2. The change and addition operation takes place in the following
manner.
(1) When group No. 10 has not been registered:
(a) Group No. 10 is registered additionally.
About the change and addition tool
Tool management method is number of usages,
Tool length compensation is the incremental value compensation amount method, and
Tool radius compensation is the absolute value compensation amount method.
(b) For group No. 10, the incremental value compensation
amount "0.5" is registered for the length compensation,
and the absolute value compensation amount "0.25" is
registered for the radius compensation.
(2) When group No. 10 has been registered, but tool No. 10 has
not been registered.
- Tool No. 10 is additionally registered in group No. 10.
(3) When group No. 10 and tool No. 10 have been both registered.
- The tool No. 10 data is changed.
3. The group and tool change and addition ends.
4. The program ends.
Group deletion
G10 L30 P2;
P10 ;
G11 ;
M02 ;
1. The group deletion starts.
2. The group No. 10 data is deleted.
3. The group deletion ends.
4. The program ends.
517
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.11.3 Precautions for Inputting The Tool Life Management Data
Relationship with other functions
(1)During the following operations, the tool usage data will not be counted.
- Machine lock
- Auxiliary axis function lock
- Dry run
- Single block
- Skip
Precautions
(1) The tool life data is registered, changed, added to or deleted by executing the program in the memory or MDI
mode.
(2) The group No. and tool No. cannot be commanded in duplicate. The program error (P179) will occur.
(3) When two or more addresses are commanded in one block, the latter address will be valid.
(4) If the life data (L_) is omitted in the G10L3 command, the life data for that group will be "0".
(5) If the control method (Q_) is omitted in the G10L3 command, the control method for that group will follow the
base specification parameter "#1106 Tcount".
Note that when carrying out the No. of cutting times control method, command the method from the program.
(6) If the control method (Q_) is not designated with 3-digit by G10 L30 command, the omitted high-order are equivalent to "0".
Therefore, "Q1" is equivalent to "Q001", and "Q12" is equivalent to "Q012".
(7) If the length compensation No. (H_) is omitted in the G10L3 command, the length compensation No. for that
group will be "0".
(8) If the radius compensation No. (D_) is omitted in the G10L3 command, the radius compensation No. for that
group will be "0".
(9) Programming with a sequence No. is not possible between G10 L3 or G10 L30 and G11. The program error
(P33) will occur.
(10) If the usage data count valid signal (YC8A) is ON, G10 L3 or G10 L30 cannot be commanded. The program
error (P177) will occur.
(11) The registered data is held even if the power is turned OFF.
(12) When G10 L3 or G10 L30 is commanded, the commanded group and tool will be registered after all of the registered data is erased.
(13) The change and addition conditions in the G10L3P1 or G10 L30 P1 command are as follows.
(a) Change conditions
Both the commanded group No. and tool No. are registered.
-> Change the commanded tool No. data.
(b) Additional conditions
Neither the commanded group No. nor tool No. is registered.
-> Additionally register the commanded group No. and tool No. data.
The commanded group No. is registered, but the commanded tool No. is not registered.
-> Additionally register the commanded tool No. data to the commanded group No.
(14) The setting range of the tool compensation No. depends on the MTB specifications.
(15) Only group No. 1 can be used to register, change and add for the tool life management III.
IB-1501278-D
518
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
15.11.4 Allocation of The Number of Tool Life Management Sets to Part Systems
Function and purpose
The number of tool life management sets can be set per part system.
This function is divided into following methods and which one is used depends on the MTB specifications (parameters "#1439 Tlife-SysAssign", "#12055 Tol-lifenum").
Arbitrary allocation: Arbitrarily allocates the number of tool life management sets to each part system.
Fixed allocation: Automatically and evenly allocates the number of tool life management sets to each part system.
The arbitrary allocation enables the efficient allocation because when a certain part system needs only a small number of tool life management sets, the rest can be allocated to another part system. If an auxiliary-axis part system
does not need the tool life management sets at all, the number of tool life management sets can be set to "0" for the
auxiliary-axis part system.
Subsequent description is an example in the case where the number of tool life management sets in the system is
999 sets.
(1) Arbitrary allocation (with #1439=1)
The number of sets allocated to each part system depends on the MTB specifications (parameter "#12055 Tollifenum").
The following example shows the number of tool offset sets allocated when the lathe system is a 4-part system.
(a) When the number of tool life management sets is increased for the 1st part system ($1) of 4-part system
$1
250
$2
250
$3
250
$4
250
$1
400
$2
200
$3
200
$4
200
(b) When the number of tool life management sets is set to "0 sets" for the 3rd part system ($3) of 3-part system
to use that part system as an auxiliary-axis part system
$1
334
$2
333
$3
333
$1
500
$2
500
$3
0
519
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
15 Program Support Functions
(2) Automatic and even allocation (with #1439=0)
1-part system
2-part system
$1
$1
3-part system
(Lathe system only)
$1
500
999
(*1)
$2
500
334
(*2)
$2
333
$3
333
4-part system
(Lathe system only)
$1
250
$2
250
$3
250
$4
250
(*1)The maximum number of tool life management sets per part system is 999.
(*2) If there is any remainder, the remainder is allocated to the 1st part system.
Precautions
(1) The maximum number of tool life management sets for 1-part system is 999.
(2) For 1-part system, up to the number of tool life management sets in the system is available regardless of the
parameter setting.
(3) When the value of the parameter "#12055 Tol-lifenum" is equal to or lower than the number of tool life management sets in the system, the remainder is not allocated to any part system even if the specification allows arbitrary allocation.
(4) When the value of the parameter "#12055 Tol-lifenum" is equal to or lower than the number of tool life management sets in the system, system alarm (Y05) is generated even if the specification allows arbitrary allocation.
(5) Even if the specification allows arbitrary allocation, fixed allocation is applied if the parameter is "#12055 Tollifenum"= "0" for all part systems.
(6) When entering data into the tool life management file, if the number of tool life management data exceeds that
of current tool life management sets, the excess tool life management data cannot be entered.
IB-1501278-D
520
16
Multi-part System Control
521
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
16Multi-part System Control
16.1 Timing Synchronization Operation
CAUTION
When programming a multi-part system, carefully observe the movements caused by other part systems' programs.
16.1.1 Timing Synchronization Operation (! code) !n (!m ...) L
Function and purpose
The multi-axis, multi-part system complex control CNC system can simultaneously run multiple machining programs
independently. The synchronization-between-part systems function is used in cases when, at some particular point
during operation, the operations of 1st and 2nd part systems are to be synchronized or in cases when the operation
of only one part system is required.
When timing synchronization is executed in the 1st part system ($1) and the 2nd part system ($2), operations will
be as follows.
$1
$2
Simultaneous and independent operation
Timing synchronization operation
Simultaneous and independent operation
Timing synchronization operation
2nd part system operation only
1st part system waiting
Timing synchronization operation
Simultaneous and independent operation
%
%
Command format
!n (!m ...) L_ ; ... timing synchronization operation
!n, !m, ...
Timing synchronization operation (!) and part system No. (n:1 - number of part system
that can be used)
Follows the settings of the parameter "#19419 Timing sync system" if part system number is omitted.
L
Timing Synchronization Operation No. 0 to 9999
IB-1501278-D
522
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Detailed description
(1) Timing synchronization between part systems during automatic operation
If !n L__ is commanded from a part system (i), operation of the part system i program will wait until !i L_ is commanded from the part system n program.
When !i L_ is commanded, the programs for the two part systems will start simultaneously.
Timing synchronization between 2 part systems
$i
$n
Pi1
Pn1
!nL1 ;
Timing synchronization
Pi2
$i
$n
Pi1
waiting...
!iL1;
Pn2
Pi2
Simultaneously start
Pn1
Pn2
(2) The timing synchronization operation is normally issued in a single block. However, if a movement command or
M, S or T command is issued in the same block, whether to synchronize after the movement command or M, S
or T command or to execute the movement command or M, S or T command after synchronization will depend
on the MTB specifications (#1093 Wnvfin).
#1093 Wmvfin
0 : Wait before executing movement command.
1 : Wait after executing movement command.
(3) If there is no movement command in the same block as the timing synchronization operation, when the next block
movement starts, synchronization may not be secured between the part systems. To synchronize the part systems when movement starts after waiting, issue the movement command in the same block as the timing synchronization operation.
(4)The L command is the timing synchronization identification No. The same Nos. are waited but when they are omitted, the Nos. are handled as L0.
(5) "SYN" will appear in the operation status section during timing synchronization operation. The timing synchronization operation signal will be output to the PLC I/F.
(6) In a timing synchronization operation, other part system to be waited for is specified but the own part system can
be specified with the other part system.
(7) The timing synchronization operation of a specific part system can be ignored depending on the MTB specifications.
Operation will be determined by the combination of the timing synchronization operation ignore signal and parameter "#1279 ext15/bit0".
For setting combination, refer to "Time synchronization when timing synchronization ignore is set".
For the specifications of the machine you are using, see the instructions issued by the MTB.
523
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Precautions
(1) When the M code can be used, both the M code and ! code can be used.
(2) While the timing synchronization operation M code is valid, if one part system is standing by with an M code, an
alarm will occur if there is a ! code timing synchronization operation command in the other part system.
(3) While the timing synchronization operation M code is valid, if one part system is standing by with a ! code, an
alarm will occur if there is an M code timing synchronization operation command in the other part system.
(4) When macro interruption is carried out in a part system waiting, the part system can stop while waiting even if
the conditions for time synchronization are met. In this case, you will be able to continue the program, ignoring
the timing synchronization with timing synchronization operation ignore signal.
For details, contact the MTB.
IB-1501278-D
524
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
16.1.2 Timing Synchronization Operation with Start Point Designated (Type 1) ; G115
Function and purpose
The part system can wait for the other part system to reach the start point before starting itself. The start point can
be set in the middle of a block.
Command format
!n L__
G115
X__ Y__
Z__ ;
!n
Timing synchronization operation (!) and part system No. (n:1 - number of part system that can be used)
Part systems follow the settings of the parameter "#19419 Timing sync system" if
the number is omitted.
L
Timing Synchronization Operation No. 0 to 9999
(It will be regarded as "L0" when omitted.)
G115
G command
XYZ
Start point
(Command by axis and workpiece coordinate value)
525
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Detailed description
(1)Designate the start point using the workpiece coordinates of the other part system (ex. $2).
(2)The start point check is executed only for the axis designated by G115.
(Example) !L2 G115 X100. ;
Once the other part system reaches X100, the own part system (ex. $1) will start. The other axes are not
checked.
(3)The other part system starts first when timing synchronization operation is executed.
(4)The own part system waits for the other part system to move and reach the designated start point, and then starts.
$1
!2 G115
$2
!1
G00 X...
!2 G115
$1
!1
$2
G00 X...
Timing synchronization
Designated start point
(5) When the start point designated by G115 is not on the next block movement path of the other part system, the
own part system starts once all the designated axis of the other part system has reach the designated start point.
Movement
Designated start point
Actual start point
(6) After waiting, if the start point cannot be obtained with movement command of the other timing synchronization
block, the operations depend on the MTB specifications (parameter "#1229 set01/bit5").
(a) When the parameter is ON
Wait till the own part system reaches the start point by moving after the next block.
(b) When the parameter is OFF
When the next block finishes moving, the own part system will start.
IB-1501278-D
526
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(7)The timing synchronization status continues when the G115 command has been duplicated between part systems. (Operations will not restart.)
$1
!2 G115
Timing synchronizing
$2
!1 G115
(8) The single block stop function does not apply for the G115 block.
(9) A program error (P32) will occur if an address other than an axis is designated in G115 command block.
(10) In the timing synchronization operation, other part system to be waited for is specified but the own part system
can be specified with the other part system.
(11) The timing synchronization operation of a specific part system can be ignored depending on the MTB specifications. Operation will be determined by the combination of the timing synchronization operation ignore signal
(PLC signal) and parameter "#1279 ext15/bit0".
For setting combination, refer to "Time synchronization when timing synchronization ignore is set".
For the specifications of the machine you are using, see the instructions issued by the MTB.
Precautions
(1) Parameter "#1093 Wmvfin" that selects the timing of the timing synchronization operation and commands on the
same block does not work for the start point command block (G115/G116). After synchronization. the start point
check will be executed by G115/G116.
(2) Be careful about the timing when interrupting during the time synchronization of G115/G116. For example, assume interruption with the macro interrupt type 1 while a part system is waiting for time synchronization with
G116. In this case, if there is a movement command or MSTB command in the interrupt program, the program
will continue after the interrupt program completes without waiting for the start point.
(3)The L command is the timing synchronization identification No. The same Nos. are waited but when they are omitted, the Nos. are handled as L0.
527
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
16.1.3 Timing Synchronization Operation with Start Point Designated (Type 2) ; G116
Function and purpose
The own part system can make the other part system to wait until it reaches the start point. The start point can be
set in the middle of a block.
Command format
!n L__
G116
X__ Y__ Z__ ;
!n
Timing synchronization operation (!) and part system No. (n:1 - number of part system that can be used)
Part systems follow the settings of the parameter "#19419 Timing sync system" if
the number is omitted.
L
Timing Synchronization Operation No. 0 to 9999
(It will be regarded as "L0" when omitted.)
G116
G command
XYZ
Start point
(Command by axis and workpiece coordinate value)
IB-1501278-D
528
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Detailed description
(1)Designate the start point using the workpiece coordinates of the own part system (ex. $1).
(2)The start point check is executed only for the axis designated by G116.
(Example) !L1 G116 X100. ;
Once the own part system reaches X100, the other part system (ex. $2) will start. The other axes are not
checked.
(3)The own part system starts first when timing synchronization operation is executed.
(4)The other part system waits for the own part system to move and reach the designated start point, and then starts.
!2 G116
$1
G00 X...
$2
!1
!2 G116
$1
$2
G00 X...
!1
Timing synchronization
Designated start point
(5) When the start point designated by G116 is not on the next block movement path of own part system, the other
part system starts once all the designated axes of the own part system has reach the designated start point.
Movement
Designated start point
Actual start point
(6) If the start point cannot be obtained with the movement of the own part system to the next block, the operations
depend on the MTB specifications (parameter "#1229 set01/bit5").
(a) When the parameter is ON
The own part system will have a program error (P511) before moving.
(b) When the parameter is OFF
When the next block finishes moving, the other part system will start.
(7)The timing synchronization status continues when the G116 command has been duplicated between part systems. (Operations will not restart.)
$1
!2 G116
Timing synchronizing
$2
!1 G116
529
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(8) The single block stop function does not apply for the G116 block.
(9) A program error (P32) will occur if an address other than an axis is designated in G116 command block.
(10) In the timing synchronization operation, other part system to be waited for is specified but the own part system
can be specified with the other part system.
(11) The timing synchronization operation of a specific part system can be ignored depending on the MTB specifications. Operation will be determined by the combination of the timing synchronization operation ignore signal
(PLC signal) and parameter "#1279 ext15/bit0".
For setting combination, refer to "Time synchronization when timing synchronization ignore is set".
For the specifications of the machine you are using, see the instructions issued by the MTB.
Precautions
Refer to "Start point designation timing synchronization (Type 1) ; G115".
IB-1501278-D
530
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
16.1.4 Timing Synchronization Operation Function Using M codes ; M***
Function and purpose
The timing synchronization operation function between part systems is conventionally commanded with the "!" code,
but by using this function, the part systems can be waited with the M code commanded in the machining program.
If the timing synchronization operation M code is commanded in either part system during automatic operation, the
system will wait for the same M code to be commanded in the other part system before executing the next block.
The timing synchronization operation M code is used to control the timing synchronization operation between the
1st part system and 2nd part system. Whether the timing synchronization operation M code can be used depends
on the MTB specifications.
Command format
M*** ;
***
Timing synchronization operation M code
M code used for timing synchronization depends on the MTB specifications (parameter "#1310 WtMmin)", "#1311
WtMmax").
531
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Detailed description
(1) When the timing synchronization operation M code is commanded in the machining program, the two part systems will be waited and operation will start in the commanded block. If the timing synchronization operation M
code is commanded in either part system during automatic operation, the system will wait for the same M code
to be commanded in the other part system before executing the next block.
$1
$2
P11
Simultaneous and independent operation on part
system 1 and 2
P21
Timing synchronization
M100 ;
M100 ;
P12
In simultaneous and independent operation
P22
M101 ;
M101 Waiting
M101 ;
M102 ;
As M101 is commanded in part system 1, part system 2 starts operation.
M102 Waiting
P23
As M102 is commanded in part system 2, part system 1 and 2 start operation.independently.
Simultaneous and independent operation
M102 ;
P14
P24
M30 ;
M30 ;
M102 Waiting
P11
$1
P12
P21
$2
P14
P22
P23
P24
M101 Waiting
(2) When the timing synchronization operation M code has been commanded in one part system, and the part system is standing by for waiting, an alarm will occur if a different M code is commanded in the other part system.
$1
$2
P11
P21
M100 ;
M100 Waiting
M101 ;
P12
IB-1501278-D
Simultaneous and independent operation
Alarm (Operation stops)
P22
532
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(3)The part systems are waited with the M code following the parameters below.
These settings depend on the MTB specifications. Refer to these settings. For details, refer to the specifications
of your machine.
(a) M code range designation parameter (M code minimum value <= M code <= M code maximum value)
#
Item
Details
Setting range
1310
WtMmin
Timing synchronization
M code
ABS. MIN.
The minimum value of the M code. If the setting value 0,
is "0", the timing synchronization operation M code will 100 ~ 99999999
be ignored.
1311
WtMmax Timing synchronization
M code
ABS. MAX.
The maximum value of the M code. If the setting value 0,
is "0", the timing synchronization operation M code will 100 ~ 99999999
be ignored.
This function is invalid if either parameter is set to "0".
The timing synchronization operation M code cannot be used if the M code maximum value is smaller than
the minimum value.
When the timing synchronization operation M code is valid, both the M code and ! code can be used for timing
synchronization operation.
(b) Timing synchronization operation method parameters
#
1279
(PR)
Item
ext15
(bit0)
Method for
timing synchronization
operation between part
systems
Details
Setting range
Select an operation for timing synchronization opera- 0 / 1
tion between part systems.
0: If one of the part systems is not in automatic operation, ignore the timing synchronization operation and
execute the next block.
1: Operate according to the timing synchronization operation ignore signal.
If the timing synchronization operation ignore signal is
"1", the timing synchronization operation will be ignored. If "0", the part systems will be waited.
Depending on the timing synchronization operation method selection parameter and timing synchronization
operation ignore signal combination, the timing synchronization operation will be determined by the parameters, regardless of the command format ("!" code and M code).
This parameter requires the CNC to be turned OFF after the settings. Turn the power OFF and ON to enable
the parameter settings.
#
1093
Item
Wmvfin
Method for
timing synchronization
operation between part
systems
Details
Setting range
Parameter to designate the timing synchronization op- 0 / 1
eration between part systems method when using
multi-part systems.
When there is a movement command in the timing
synchronization operation (!, M) block:
0 : Wait before executing movement command.
1 : Wait after executing movement command.
Relation with other functions
Refer to "Timing Synchronization Operation (! code);!n (!m ...) L"
533
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Precautions
For precautions for time synchronization, also refer to "Timing Synchronization (!code);!n (!m ...) L"
(1) When timing synchronization operation with the M code, always command the M code in an independent block.
(2) When standing by after commanding the timing synchronization operation M code in one part system, an alarm
will occur if a different M code is commanded in the other part system. Operation will stop in both part systems.
(3) The timing synchronization operation (! code, M code) in the machining program can be ignored with the timing
synchronization operation ignore signal. (This depends on the MTB specifications. ) Operation with a single part
system is possible without deleting the timing synchronization operation (! code, M code) in the machining program.
(4) Unlike other M codes, the timing synchronization operation M code does not output code signals and strobe signals.
(5) When the M code can be used, both the M code and ! code can be used.
(6) While the timing synchronization operation M code is valid, if one part system is standing by with an M code, an
alarm will occur if there is a ! code timing synchronization operation command in the other part system.
(7) While the timing synchronization operation M code is valid, if one part system is standing by with a ! code, an
alarm will occur if there is an M code timing synchronization operation command in the other part system.
(8) If there is a timing synchronization operation with M code after the 3rd part system, an alarm will occur.
(9) The G115 and G116 commands cannot be used when waiting with the M code.
(10) If the M code command Nos. are overlapped, the order of priority will be M code macro, M command synchronous tapping, timing synchronization operation M code and normal M code.
(11) When macro interruption is carried out in a part system waiting, the part system can stop while waiting even if
the conditions for time synchronization are met. In this case, you will be able to continue the program, ignoring
the timing synchronization with timing synchronization operation ignore signal. For details, contact the MTB.
(12) "SYN" will appear in the operation status section during timing synchronization operation.
IB-1501278-D
534
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
16.1.5 Time Synchronization When Timing Synchronization Ignore Is Set
Function and purpose
Turning on the timing synchronization operation ignore signal makes it possible to ignore the timing synchronization
operation of that part system.
With a 2-part system, if the timing synchronization operation ignore signal of the other part system is ON, timing
synchronization is not executed. In the following section, a 3-part system is used as an example to make it easier
to understand the functions.
This signal is also used in the following functions.
Timing synchronization (! code, M code)
Start point timing synchronization (G115, G116)
Balance cut (G15) Lathe system only
Note
(1) For sub part system control function, refer to "16.3 Sub Part System Control".
Timing synchronization operation ignore signal (PLC signal)
OFF
Parameter
0
(#1279 ext15/bit0) 1
ON
(1) Ignores the timing synchronization with a part system not in automatic operation
(2) Does not ignore the timing synchroniza- (3) Ignores the timing synchronization retion regardless of whether or not a part sys- gardless of whether or not a part system is
tem is in automatic operation (the timing
in automatic operation (ignores the timing
synchronization is executed until the condi- synchronization command for the part systions for timing synchronization are estab- tem with the timing synchronization ignore
lished.)
signal ON and the timing synchronization
operation for that part system)
The following operation diagram gives an example of ! code.
(1) A case that "Ignores the timing synchronization with a part system not in automatic operation"
$i
$n
(Not in automatic
operation)
Ignore timing synchronization
Pi1
$m
Pm1
!n !m L _ ;
Simultaneously start after timing
synchronization block
!i !n L _ ;
Pm2
Pi2
$i
Pi1
waiting...
Pi2
$n
$m
Pm1
Pm2
Start simultaneously
535
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(2) A case that "Does not ignore the timing synchronization regardless of whether or not in automatic operation"
$i
$n
Pi1
$m
Necessarily
conduct timing
synchronization
!n !m L 1 ;
Pm1
Timing synchronization
!i !n L 1 ;
Start the $n program.
$i
$n
$m
Pi1
Pm1
!n !m L 1 ;
(Automatic start)
!i !n L 1 ;
Timing synchronization
Simultaneously start after
timing synchronization
block
Pi1
Pn2
waiting...
Automatic start
Pm1
Pn2
waiting...
A
Pm2
Pi2
Pn1
$n
$m
Timing synchronization
!i !m L 1 ;
Pi2
$i
Pn1
Pm2
B
A: When timing synchronization operation between part systems (parameter "#1279 ext15/bit0" = 1), the timing
synchronization status continues until the conditions for timing synchronization are established.
B: Part system n is automatically started. If the conditions for timing synchronization are established, the next
block will start.
IB-1501278-D
536
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(3) A case that "Ignores the timing synchronization regardless of whether or not in automatic operation"
$i
$n
Pi1
!n !m L 1 ;
$i and $n start simultaneously in
the next block after timing
synchronization.
Ignore timing
Pn1
synchronization
!i !n L 1 ;
!i !m L1 ;
Pn2
Ignore timing synchronization with part system m.
$n
$m
$m timing
synchronization
ignore signal
Pi1
Pm1
Timing
synchronization
Pi2
$i
$m
Timing synchronization
operation ignore signal ON
Pi2
waiting...
!n !m
Pn1
Ignore timing
synchronization
Pm2
Part system m does
not conduct timing
synchronization.
Timing synchronization
Pn2
!i !m
Pm1
!i !n
Part system m is in the timing
synchronization ignore state, so timing
synchronization is not conducted.
537
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
16.2 Mixed Control
16.2.1 Arbitrary Axis Exchange ; G140, G141, G142
Function and purpose
With this function, an arbitrary axis can be exchanged freely across part systems.
The machining can be freer in the multiple part systems by exchanging an axis that can be commanded for machining programs in each part system.
This makes it possible to perform operations which are not possible with regular axis configurations: for instance,
tools which are provided only on the 1st part system can be used for machining on the 2nd part system.
This chapter illustrates an example based on the placements of the basis axes below.
X axis
Y axis
Z axis
C axis
1st part system ($1)
X1
Y1
Z1
-
2nd part system ($2)
X2
Y2
-
C2
Refer to "Programming Manual Lathe System" (IB-1501275, IB-1501276) for details of the arbitrary axis exchange.
Command format
When commanding the arbitrary axis exchange
G140 command address = axis address ... ;
Command Address
It is a command address used in a movement or other command after arbitrary
axis exchange command (G140).
Designate the command address with one alphabetical character set to parameters ("#12071 adr_abs[1]"to "#12078 adr_abs[8]") .
Axis address
Set the axis name for arbitrary axis exchange.
Designate the command with two alphanumeric characters set to the parameter
"#1022 axname2".
When returning the exchanged axis
G141;
Arbitrary axis exchange return
Returns the control right of the axis, exchanged by the previous arbitrary axis exchange command (G140) in the
commanded part system, to the state before the axis exchange.
G142;
Reference axis arrange return
Returns the control right of the axis, exchanged by the arbitrary axis exchange command (G140) in the commanded
part system, to the power-on state.
IB-1501278-D
538
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Detailed description
Arbitrary axis exchange command (G140)
There are two methods for axis exchange operations with arbitrary axis exchange command (G140). The methods
for your machine depends on the MTB specifications (parameter "#1434 G140Type2").
Method
Operation
Method for exchanging all axes Designates axes to be used in the part system with a command address. The
("#1434 G140Type2" = 0)
command addresses axes that are not designated will be released as uncontrol axes.
Method for exchanging command axes
("#1434 G140Type2" = 1)
Designates axes to be used in the part system with a command address. The
command addresses axes that are not designated will maintain the current
state.
(1) Operation example of the method for exchanging all axes ("#1434 G140Type2"=0)
Below is the control axis of each part system when running the following machining programs (1st part system,
2nd part system)
$1
$2
Machining program
Machining program
G140 X=X1 Y=Y1 Z=Z1;
G00 X10.;
G01 X5. F1;
:
(a)
G140 X=X1 Y=Y2;
G00 Y25.;
G01 X8. F2;
:
(b)
Control axes
G140 X=X2 Y=Y2 C=C2;
G00 X20.;
G01 X15. F2;
:
$2
Uncontrol
axes
X
Y
Z
X
Y
C
X1
Y1
Z1
X2
Y2
C2
-
X2
-
C2
Y1,Z1
-
Z1
-
Y1,X2,C2
-
-
-
X2,Y2,C2
X2
Y2
C2
-
(d)
(e)
G140 Y=Z1;
G00 Y10.;
G01 Y8. F0.05;
:
G140 X=X1 Y=Y1 Z=Z1;
G00 X20. Y15.;
G01 X15. F5;
:
$1
X1
Y2
-
(c)
X1
G140 X=X2 Y=Y2 C=C2;
G00 X0;
:
1st part system ($1) (a),(c)
(b)
2nd part system ($2) (d),(f)
(e)
Y1
Z1
(f)
Declares the use of X1 axis, Y1 axis and Z1 axis.
Declares the use of X1 axis and Y2 axis.
The control right of Y2 axis shifts to the 2nd part system from the 1st part system.
Y1 axis, exchanged for Z1 axis and Y2 axis which were not designated, will be
an uncontrol axis.
Declares the use of X2 axis, Y2 axis and C2 axis.
Declares the use of Z1 axis.
X2 axis and C2 axis which were not designated will be uncontrol axes.
539
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(2) Operation example of the method for exchanging command axes ("#1434 G140Type2"=1)
Below is the control axis of each part system when running the following machining programs (1st part system,
2nd part system)
$1
$2
Machining program
Machining program
G140 X=X1 Y=Y1 Z=Z1;
G00 X10.;
G01 X5. F1;
:
(a)
G140 Y=Y2;
G00 Y25.;
G01 X8. F2;
:
(b)
Control axes
G140 X=X2 Y=Y2 C=C2;
G00 X20.;
G01 X15. F2;
:
G140 Y=Y1;
G00 Y10.;
G01 Y8. F0.05;
:
G140 Y=Y1 ;
G00 X20. Y15.;
G01 X15. F5;
:
$1
$2
Uncontrol
axes
X
Y
Z
X
Y
C
X1
Y1
Z1
X2
Y2
C2
-
X2
-
C2
Y1
X2
Y1
C2
-
X2
-
C2
Y2
X2
Y2
C2
-
(d)
(e)
X1
Y2
Z1
(c)
X1
G140 X=X2 Y=Y2 C=C2;
G00 X0;
:
1st part system ($1) (a)
Y1
Z1
(f)
Declares the use of X1 axis, Y1 axis and Z1 axis.
(b)
Declares the use of Y2 axis.
The control right of Y2 axis shifts to the 2nd part system from the 1st part system.
Y1 axis which was exchanged for Y2 axis will be an uncontrol axis.
(c)
Declares the use of Y1 axis.
The control right of Y1 axis shifts to the 2nd part system from the 1st part system.
Y2 axis which was exchanged for Y1 axis will be an uncontrol axis.
2nd part system ($2) (d)
Declares the use of X2 axis, Y2 axis and C2 axis.
(e)
Declares the use of Y1 axis.
(f)
Declares the use of X2 axis, Y2 axis and C2 axis.
Unavailable state of axis exchange
"Unavailable state of axis exchange" indicates a "condition in which a target axis for axis exchange is not available
for exchange because the designated target axis for axis exchange is being used by other part systems or for other
reasons" through the arbitrary axis exchange command (G140), the arbitrary axis exchange return command
(G141), the reference axis arrange return command (G142).
When the conditions for unavailable state of axis exchange fall through, no axis exchange mode will be cancelled.
It will be cancelled when a reset signal or emergency stop is entered.
IB-1501278-D
540
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
16.3 Sub Part System Control
16.3.1 Sub Part System Control I ; G122
Function and purpose
This function activates and operates any non-operating part system (sub part system) in the multi-part system. Sub
part system control I can be used in the same manner as calling subprogram in a non-operating part system. An
auxiliary axis machining program can be controlled in the sub part system by commanding Sub part system control
I (G122) from the main part system.
In the usage example below, the tool positioning starts to the machining start point at the same time (time T1) as
the start of gantry retract by using Sub part system control I (G145) in the flow from feeding the workpiece to moving
to cut start position in order to reduce the cycle time.
Select whether main part system or sub part system for each part system in Sub part system control I. When using
a part system as a sub part system, by setting the operation mode to "Sub part system I operation mode" with the
PLC signal and commanding sub part system control I (G122) from an operating part system, it is possible to activate
the part system in the sub part system I operation mode as a sub part system.
Machining process when Sub part system control is OFF
Main part system ($1)
(1) Feed the
workpiece
(2) Clamp the
workpiece
(3) Retract gantry
T1
(4) Move to cut start position
T1: Time when gantry retract is started
Machining process when Sub part system control is ON
Sub part system ($2) (1)Feed the
workpiece
Main part system ($1)
(2)Clamp the
workpiece
Wait for completion of sub part
system
Time
T2
T2: Time when gantry retract is completed
(3)Retract gantry
(4)Move to cut start
position
Time
Sub part system starts
T1
T2
The following describes the meanings of the terms used in this chapter.
Term
Meaning
Main part system
Indicates a part system located on the uppermost stream side of a sub part system
call flow.
Sub part system
Indicates a part system activated by the sub part system activation command.
Calling part system
Indicates a part system that issued the sub part system activation command.
The examples below shows many part systems to provide an easy-to-understand explanation. The actually available number of part systems depends on your machine's specifications.
541
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Enabling conditions
(1) This function can be used in multi-part systems of two or more part systems.
(2) In order to activate a sub part system using the sub part system control I command, the following conditions must
be satisfied. There are conditions to enable functions that are only applicable to the M80 series.
[Condition 1]
This condition must only be satisfied for the M80 series.
The number of sub part systems has been set in the base common parameter "#1483 SBS1_sys num" (the number of part systems in sub part system I).
(a) Part systems as many as the number specified in #1483, counted from the end of the valid part system (the
part system for which "#1001 SYS_ON" is set to "1"), will be reserved as sub part systems.
(b) If the number of sub part systems or main part systems exceeds the maximum number defined in the system
specifications, an MCP alarm (Y05 1483) will occur.
(c) If the values set for "#1483 SBS1_sys num" and "#1474 SBS2_sys num" are both "1" or more, an MCP alarm
(Y05 1483) will occur.
[Condition 2]
The identification No. (B command value) used to activate a sub part system has been set in the base common
parameter "#12049 SBS_no" (sub part system I identification No.) for sub part systems.
(a) If an identification No. that is not set in the parameter "#12049 SBS_no" is specified when the sub part system
control I command is issued, a program error (P650) (sub part system identification No. illegal) will occur.
[Condition 3]
The PLC signal SBSM (Sub part system I operation mode) of the sub part system is set to "1".
(a) In a part system operating the sub part system I operation mode, the operation mode appears as "SUB" in
the part system display of the operation screen.
(b) If the sub part system control I command is issued to a part system that is not operating the sub part system
I operation mode, an operation error (M01 1111) will occur. However, while the an operation error (M01 1111)
is occurring, the operation can be started by setting SBSM to "1".
IB-1501278-D
542
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Command format
Call sub part system
G122 A__P__Q__K__D__B__H__ (argument);
G122 <file name> P__Q__K__D__B__H__ (argument);
A
Program No. (1 to 99999999 or 100010000 to 199999998)
<File name>
File name of the program (up to 32 characters)
P
Start sequence number (Head of the program if omitted.)
Q
End sequence number (To end (M99) of the program if omitted.)
K
Number of repetitions (1 to 9999)
D
Synchronization control (0/1)
B
Sub part system identification No. (1 to 7)
H
Sub part system reset type (0/1)
Argument
Argument of a sub part system local variable (Setting rage of local variable (decimal
point command is valid))
Complete sub part system
M99: (command of a sub part system side)
Cancel the standby status for completion of sub part system
G145; (command of a sub part system side that is issued when the D0 command is issued)
Note
(1) G145 is ignored in a sub part system activated in the parallel control method (D1 command).
543
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Detailed description
This function can be used in multi-part systems of two or more part systems.
Main part system and sub part system are switched according to the MTB specifications.
Description of each address
Address
A
Meaning
Program No.
Command range
(unit)
1 to 99999999
or
100010000 to
199999998 (*1)
Remarks
Program No. or file name of the machining program operating in the sub part system.
Programs in external device cannot be designated.
If address A and <file name> are designated at the
<File name> File name of the pro- Up to 32 characters. same time, precedence is given to address A.
gram
If designation of the program is omitted, the machining program defined by the MTB will be used
(parameter "#12050 SBS_pro").
P
Start sequence No. 1 to 99999999
Sequence No. to start the machining program operating
in the sub part system.
If there is no command, the operation will start from
the head of the machining program.
Q
End sequence No.
1 to 99999999
Sequence No. to end the machining program operating
in the sub part system.
If there is no command, the program will run up to
M99.
K
Number of repetitions
1 to 9999
The number of times to repeat the machining program
for continuous operation in the sub part system.
If there is no command, the program will run only
once. (No repetition)
D
Synchronization
control
0/1
Validity of synchronous control
0: The next block is processed after the sub part system
operation completes.
1: The next block is processed at the same time as the
start of a sub part system operation.
If there is no command, it is handled in the same manner as 0 is designated.
B
Sub part system
identification No.
1 to 7
Identification No. used for timing synchronization with
sub part system, etc.
The sub part system to be activated is designated
by an identification No. The correspondence between identification No. and part system No. depends on the MTB specifications (parameter
"#12049 SBS_no").
If there is no command, it is handled in the same
manner as 1 is designated.
H
Sub part system re- 0 / 1
set type (*2)
(Argument) Argument of a sub
part system local
variable
IB-1501278-D
0: The G command modal is maintained by the reset
when a sub part system is complete.
1: The G command modal is initialized by the reset
when a sub part system is complete.
If there is no command, it is handled in the same
manner as 0 is designated.
Setting range of lo- Argument is passed to the sub part system as a local variable (level 0).
cal variable
(Decimal point com- However, addresses A, B, D, G, H, K, O, P, and Q
cannot be used as an argument.
mand is possible.)
For the correspondence between address and variable number, refer to the following table.
544
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(*1) When the parameter "#1253 set25/bit0" is set to "1", the command range is "100010000 to 199999989".
(*2) If a sub part system ends by M99 or the end sequence No., resetting processing is performed automatically in
the sub part system.
Correspondence of argument designation address and variable number in sub part system
Argument designa- Variable number in sub
tion address
part system
Argument designa- Variable number in sub
tion address
part system
A
-
N
#14
B
-
O
-
C
#3
P
-
D
-
Q
-
E
#8
R
#18
F
#9
S
#19
G
-
T
#20
H
-
U
#21
I
#4
V
#22
J
#5
W
#23
K
-
X
#24
L
#12
Y
#25
M
#13
Z
#26
Note
(1) Addresses can be designated in an arbitrary order.
(2) Addresses which do not need to be designated can be omitted.
(3) Local variables in a sub part system are initialized every time the sub part system is activated. Default value is
<empty>.
(4) To use local variables in a sub part system, user macros must be available. For the available functions of each
model, refer to the list.
Operation mode of a sub part system
(1) The operation mode of sub part systems is used as "sub part system I operation mode". If the memory mode/
MDI mode and the sub part system I operation mode are entered at the same time, the stop code (T01 0108)
will be generated.
(2) In a part system operating the sub part system I operation mode, the operation mode appears as "SUB" in the
part system display of the operation screen.
If an alarm or warning occurs in a sub part system, the part system No. appears as "SUB" in the alarm/warning
message of the operation screen.
(3) If the sub part system control I command is issued to a part system that is not operating the sub part system I
operation mode, an operation error (M01 1111) will occur.
Activation part system of a sub part system
When issuing the sub part system control I command, designate the sub part system identification No. with command address B. (When there is no B command, it will be handled as the B1 command.) The sub part system identification No. and the sub part system No. to be called depend on the MTB specifications. (Parameter "#12049
SBS_no")
(Example 1) and (Example 2) show the operations when parameters are set as shown below.
The available number of part systems depends on your machine's specifications.
#12049
SBS_no
Sub part system I
identification No.
$1
$2
$3
$4
$5
$6
$7
$8
0
0
0
0
1
2
3
4
545
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(Example 1) If the B command is omitted, $5 corresponding to B1 will be activated.
Calling part system ($1)
Sub part system ($5)
:
:
G122 A100 D0;
:
:
:
:
:
M99;
(Example 2) Sub part system identification No. (the part system No. to be activated and correspondence) can
be specified with the B command.
Calling part system ($1)
Sub part system ($7)
:
:
G122 A100 D0 B3;
:
:
:
:
:
M99;
Operation program of a sub part system
When issuing the sub part system control I command, designate the program No. or program name to be operated
in the sub part system with command address A or <file name>. If designation of the program is omitted, the machining program set in parameter "#12050 SBS_pro" will be started.
If a machining program is managed for each part system, the program of the part system designated as a sub part
system will be operated (*1). If a machining program is commonly managed between part systems, the designated
program will be operated.
(*1) If the program of the part system No. for the sub part system is empty, the program of the 1st part system ($1)
will be operated. If the program of the 1st part system is also empty, a program error (P461) will occur.
(1) If program is managed for each part system
O100
Caller part system ($1)
O1 - $1
:
:
G122 A100 D0 B3㸹
:
$7 is assumed to be started by B3
command.
$1
$2
Sub part system ($7)
O100 - $7
:
:
M99;
When $7 is blank, $1 data will be
called.
$3
$4
$5
$6
$7
$8
IB-1501278-D
546
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(2) If program is commonly managed between part systems
Calling part system ($1)
O1
:
O100
:
Sub part system ($7)
G122 A100 D0 B3;
O100
:
:
$7 is assumed to be started by B3
command.
:
M99;
Sub part system activation with the completion wait method (D=0)
If "0" is designated for command address D when the sub part system control I command is issued, or if command
address D is omitted, the calling part system will wait for the called sub part system to complete (to M99 or the end
sequence No.) before starting the next block.
Meanwhile, if the completion wait cancel command (G145) is issued in a sub part system while the calling part system is in the sub part system completion standby state, the machine will shift to a parallel processing mode.
The following shows the operation and the activation timing of each part system.
Calling part system
O1
:
G122 A100 D0 B1;
(a) Start
Calling part system
O2
:
Sub part system
O100
:
:
:
Completion wait
G00 X100.;
:
(c) Start
G122 A200 D0 B1;
Completion wait
(d) Waiting
canceled
G00 X100.;
:
M99;
Sub part system
O200
:
G145;
:
M99;
(e) Completion
(b) Completion
(a)
(b)
O1
Calling part system
O100
Sub part system
(c)
Calling part system
(d)
(e)
O2
O200
Sub part system
: Completion wait
547
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Activation of a sub part system with parallel processing mode (D=1)
If "1" is designated for command address D when the sub part system control I command is issued, the following
blocks of the calling part system and the first and the following blocks of the sub part system will be operated in
parallel.
The following shows the operation and the activation timing of each part system.
Calling part system
O1
:
G122 A100 D1 B1;
G00 X100.;
:
:
(a) Start
Sub part system
O100
:
:
M99;
(b) Completion
(a)
(b)
O1
Calling part system
O100
Sub part system
Activation of multiple sub part systems
Multiple sub part systems can be activated in parallel during separate processes by calling from a single part system.
The number of sub part systems to be processed simultaneously depends on the model.
The following shows the operation and the activation timing of each part system.
Sub part system 1
O100
:
:
M99;
(a) Start
(Parallel processing
method)
(c) Completion
Calling part system
O1
:
G122 A100 D1 B1;
:
G122 A200 D0 B2;
(b) Start
(Completion wait
method)
O200
(d) Completion
M99;
Completion wait
G00 X100.;
:
(a)
(b)
O1
Calling part system
O100
Sub part system 1
O200
Sub part system 2
: Completion wait
IB-1501278-D
548
Sub part system 2
(c)
(d)
:
:
:
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Activate a sub part system from another sub part system
A sub part system can be activated from another sub part system.
The number of sub part systems to be processed simultaneously depends on the model.
The following shows the operation and the activation timing of each part system.
Calling part system
O1
:
G122 A100 D0 B1;
(a) Start
Sub part system 1
O100
:
:
G122 A200 D0 B2;
(b) Start
Sub part system 2
O200
Completion wait
Completion wait
:
:
(c) Completion M99;
(d) Completion
G00 X100.;
:
:
:
M99;
(a)
Calling part system
(b)
(c)
(d)
O1
O100
Sub part system 1
O200
Sub part system 2
: Completion wait
549
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Sub part system activation command to a sub part system being activated
If G122 is commanded while a sub part system is being activated, using the same identification No. (B command),
the machine will wait for the earlier sub part system to complete activation, before activating the next sub part system.
Calling part system 1
Calling part system 2
O1
:
G122 A100 D0 B1;
(a) Start
O100
G00 X100.;
(d) Start
M99;
O200
:
:
:
:
:
:
(b) G122 A200 D1 B1;
:
:
Completion wait
(c) Completion
O2
Sub part system
(Identification No. 1)
G00 X-20.;
:
(e) Completion
M99;
(a)
(b)
(c) (d)
O1
Calling part system 1
O2
Calling part system 2
O100
O200
Sub part system
: Completion wait
IB-1501278-D
: Standby
550
Wait for vacancy of
sub part system
(e)
:
:
:
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Operation example
In the following example, the machining start timing is accelerated by controlling auxiliary axis with a sub part system
and operating the main part system and the sub part system in parallel. The tool positioning starts to the machining
start point at the same time (time T1) as the start of gantry retract by using sub part system completion wait cancel
command (G145) in the flow from mounting the workpiece to moving to cut start position, after feeding and mounting
the workpiece with the gantry, in order to reduce the cycle time. (The machine configuration below is a sample only.)
[Axis configuration]
Main part system ($1) : X1 axis, Z1 axis => Tool
Sub part system ($2) : X2 axis, Z2 axis => Workpiece feed gantry
[Machining process]
(a) Feed workpiece
(b) Clamp workpiece
(c) Retract gantry
(d) Move to cut start position
(1) Machining process when sub part system control is OFF
Main part system ($1)
O1
:
G140 X=X2 Z=Z2;
... (a)
G00 X50.;
G00 Z20.;
M20;
... (b)
G00 X0. Z0. ;
... (c)
G141;
G140: Arbitrary axis exchange command
G141: Arbitrary axis exchange return command
G00 X30. Z-15.;
... (d)
M20 : M code of workpiece mounting
G01 Z-20. F10.;
:
Main part system ($1)
(a)
(b)
(c)
(d)
Time
Time when gantry retract is started
Time when gantry retract is completed
After the gantry is retracted, cut start position is determined.
551
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
(2) Machining process when sub part system control is ON
Main part system ($1)
Sub part system ($2)
O1
O100
G00 X50.;
... (a)
G00 Z20.;
M20;
... (b)
G145;
G00 X0. Z0.; ... (c)
:
M99;
:
:
G122 A100 D0 B1;
G00 X30. Z-15.; ... (d)
G01 Z-20. F10.;
:
:
M20 : M code of workpiece mounting
Sub part system ($2)
(a)
(b)
Main part system ($1)
(c)
(d)
Time
Activation of a sub part system
Start of gantry retract
Completion of retract
: Completion wait
Processes after "(c) Retract gantry" and "(d) Move to cut start position" will be operated in parallel.
IB-1501278-D
552
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Relationship with Other Functions
Timing synchronization with sub part system
While a sub part system is under control, timing synchronization between part systems can be issued with the "![Part
system No.]" command. To synchronize timing between a main part system and a sub part system, or between sub
part systems, it is also possible to designate a sub part system identification No. (B command) as shown below.
However, the number of part systems that can be used is limited by the specifications.
![Sub part system identification No.]
For example, to synchronize timing with the calling part system, command "![0]". Note that, designate the calling part
system with "![0]", not the main part system.
(Example 1) and (Example 2) shown below are examples of the timing synchronization operation between the main
part system ($3), sub part system 1 ($5, identification No. 1), and sub part system 2 ($6, identification No. 2).
(Example 1) Timing synchronization by designating a part system No.
Main part system ($3)
:
G122 A100 D1 B1;
G122 A200 D1 B2;
:
!5!6;
G00 X100.;
:
:
Timing synchronization with
5th and 6th part systems
Sub part system 1 ($5)
!3!6;
:
:
:
:
:
:
:
Timing synchronization with
3rd and 6th part systems
Sub part system 2 ($6)
!3!5;
:
:
:
:
:
:
:
Timing synchronization with
3rd and 5th part systems
(Example 2) Timing synchronization by designating a sub part system identification No.
Main part system ($3)
:
G122 A100 D1 B1;
G122 A200 D1 B2;
:
![1]![2];
G00 X100.;
:
Sub part system 1 ($5, identification No. 1)
![0]![2];
:
:
:
:
:
:
Sub part system 2 ($6, identification No. 2)
![0]![1];
:
:
:
:
:
:
Timing synchronization with
the following part system
Timing synchronization with
the following part system
Timing synchronization with
the following part system
Sub part system of identification No. 1
Sub part system of identification No. 2
Calling part system ($3)
Sub part system of identification No. 2
Calling part system ($3)
Sub part system of identification No. 1
553
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Timing synchronization operation ignore signal
Whether to ignore the "![Sub part system identification No.]" command or not depends on the MTB specifications.
(Settings of parameter "#1279 ext15/BIT0" and the following PLC signal)
Operation
PLC signal for ignor#1279
ing timing synchroni- If the other part system is be- If the other part system is not being
ext15/BIT0 zation between part
ing activated as a sub part
activated as a sub part system
systems
system
ON
0
OFF
The timing synchronization operation is ignored when activation
of a sub part system is completed for the other part system.
ON
Ignore the timing synchronization operation.
OFF
Execute the timing synchronization operation between part systems.
1
Program error (P35)
Tool Functions
If the tool No. is changed (T command) in the program run of a sub part system, the T code data will be changed for
the sub part system only. The T code data will not be changed for the main part system or other sub part systems.
Tool compensation
When an axis in the main part system, for which the tool compensation has been commanded, is moved to a sub
part system with the arbitrary axis exchange or other operation, the tool compensation will be maintained. Also,
when an axis (*1) in a sub part system, for which tool compensation has been commanded, is moved to the main
part system or another sub part system with the arbitrary axis exchange operation, tool compensation will be maintained.
Whether the arbitrary axis exchange function is available depends on the specifications of your machine tool.
(*1) If tools are managed for each part system, when the tool compensation command is issued in a sub part system,
the offset data of the sub part system will be referenced as shown below. (The setting value of the main part
system will not be referenced.)
Main part system ($1)
Sub part system ($2)
O1
O100
:
G28 Z0 T01;
...(a)
G90 G92 Z0;
G43 Z50. H01; ...(b)
G01 Z-500. F500;
:
G122 A100 D0 B1;
G00 X10. Z50.; ...(e)
:
G140 X=X1;
G28 X0 T02;
...(c)
G90 G92 X0;
G43 X10. H02; ...(d)
G01 X-100. F500;
:
G141;
M99;
G140: Arbitrary axis exchange command
G141: Arbitrary axis exchange return command
IB-1501278-D
554
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
T code data
(a)
Compensation amount
$1
$3
Z1
X1
1
-
:
:
(b)
1
-
L(01_$1)
:
(c)
1
2
L(01_$1)
:
(d)
1
2
L(01_$1)
L(02_$3)
(e)
1
2
L(01_$1)
L(02_$3)
L(N_$M) indicates the compensation amount of compensation No. N in the Mth part system.
User macro
The sub part system control I command does not affect nesting in user macros and subprograms. It can be commanded from a subprogram nested at the deepest level.
Resetting
(1) If the NC reset signal is input to the main part system, the operation of the main part system will be reset and
end immediately. However, the operation of sub part systems will continue. The reset operation of the sub part
system follows the NC reset signal of the sub part system.
(2) If the NC reset signal is input to an operating sub part system, the operation of the sub part system will end immediately. Therefore, if the calling part system is in the sub part system completion standby state, the sub part
system is reset, and at the same time, the calling part system cancels the standby state, and the following block
will be executed.
Buffer correction
If both of the following conditions (1) and (2) are satisfied, the buffer correction is disabled. (The buffer correction
window will not open even if the program correction key is pressed.)
(1) The next block is G122 command (including "macro statement + G122 command").
(2) The program designated by G122 is the same as that of the calling part system.
O100
:
G00 Z50.;
Buffer correction possible
G00 X100.;
Buffer correction impossible
G122 A100 P77 D0 B1;
Designated program is the program of its own part system (O100)
G00 Y30.;
Buffer correction possible
:
N77
:
Program operated in sub part system
M99;
Machining time computation
The completion wait time of the sub part system control I command (G122) will not be added to the machining time
computation for the main part system.
Program restart
If the restart search from the block of the G122 command is attempted, a program error (P49) will occur.
555
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
16 Multi-part System Control
Illegal modal of a sub part system control I command
If the sub part system control I (G122) is commanded during the following G command modal, a program error
(P652) will occur.
User macro modal call (G66, G66.1)
Fixed cycle modal
High-speed machining mode (G05P1, G05P2)
High-speed high-accuracy mode (G05.1Q1, G05P10000, G05P20000)
Manual arbitrary reverse run
The sub part system control I (G122) is ignored at the reverse run or the forward run after the reverse run.
Because the sub part systems are in a mode in which reverse run is prohibited, reverse run cannot be carried out
in sub part systems.
Precautions
(1) The sub part system control I command (G122) is a G code that must be issued alone. If it is commanded in the
same block together with another G code, a program error (P651) or (P32) will occur.
If another G code is commanded prior to G122 (for example, G00 G122), a program error (P651) will occur.
If another G code is commanded following G122 (for example, G122 G00), a program error (P32) will occur.
(2) While the sub part system I operation mode is in operation, even if the sub part system is not being activated,
automatic operation cannot be started with the automatic operation start signal (ST). The stop code (0146) will
be generated. However, when a sub part system is being activated, automatic operation is started with the automatic operation start signal (ST).
(3) If a sub part system identification No. of its own part system is designated for the B command with the sub part
system control I command (G122), a program error (P650) will occur.
(4) The PLC signal of the sub part system references the state of the sub part system. (The signal state of the main
part system will not be taken over.)
(5) Parameters per part system of the sub part system follow the setting in the sub part system. Therefore, parameters must also be set in the sub part system.
(6) If the sub part system completion wait cancel command (G145) is issued in the main part system, the program
error (P34) will occur.
(7) Operation executed by M80 is as follows. These parameter settings depend on the MTB specifications.
Activation of a sub part system is only possible in sub part systems that are reserved using the parameter
"#1483 SBS1_sys num". If the sub part system activation command is issued to a main part system (*1),
an operation error (M01 1111) will occur.
(*1) This refers to a case in which the Sub part system I operation mode is established (SBSM: ON) using
the PLC signal before G122 is commanded.
Operation searches cannot be carried out in sub part systems that are reserved using the parameter "#1483
SBS1_sys num".
If the values set for the parameters "#1483 SBS1_sys num" and "#1474 SBS2_sys num" are both "1" or
more, an MCP alarm (Y05 1483) will occur.
IB-1501278-D
556
17
High-speed High-accuracy Control
557
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17High-speed High-accuracy Control
17.1 High-speed Machining Mode
17.1.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.
A higher fine segment processing capability leads to a faster cutting speed, resulting in a shorter cycle time and a
better machining surface quality.
The high-speed high-accuracy control I/II/III enable not only the high-speed machining mode but also the high-accuracy control mode. Use the high-speed high-accuracy control I/II/III for machining which needs to make an edge
at a corner or reduce an error from an inner route of curved shape.
This function can be used simultaneously for up to two part systems depending on the MTB specifications.
kBPM, the unit for the fine segment processing capability, is an abbreviation of "kilo blocks per minute" and refers
to the number of machining program blocks that can be processed per minute.
In the main text, the axis address refers to the address of an axis that exits on the machine.
It corresponds to the address designated in the parameters "#1013 axname" and "#1014 incax".
These parameter settings depend on the MTB specifications.
For one part system
G01 block fine segment capacity for 1mm segment (unit: kBPM)
Mode
Command
Maximum feedrate when 1mm segment G01 block is executed
(kBPM)
M850 / M830
M80
Type A
Type B
High-speed machining
mode I
G05 P1
33.7
33.7
16.8
High-speed machining
mode II
G05 P2
168
67.5
-
Note
(1) The above performance applies under the following conditions.
6-axis system (including spindle) or less
1-part system
3 axes or less commanded simultaneously in G01
The block containing only the axis name and movement amount (Macro and variable command are not included.)
In the "G61.1" high-accuracy control mode or cutting mode (G64)
During tool radius compensation cancel (G40) (only in the high-speed machining mode II)
The parameter "#1259 set31/bit1" is set to "1".
(The number of machining blocks per unit time is set to "low-speed mode".)
When the above conditions are not satisfied, the given feedrate may not be secured.
(2) The performance in the table may vary depending on the combination with other function.
IB-1501278-D
558
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Multi-part system (high-speed machining mode II)
G01 block fine segment capacity for 1mm segment (unit: kBPM)
Maximum feedrate when 1mm segment G01 block is executed (kBPM)
M850 / M830
M80
Type A
Type B
1-part system
1 part systems
168
67.5
- (*2)
2-part system
1 part system only
100
67.5
- (*2)
Two part systems simultaneously
67.5
33.7
- (*2)
4-part system
Up to 16 axes
1 part system only
- (*1)
- (*1)
- (*2)
Two part systems simultaneously
- (*1)
- (*1)
- (*2)
5 part systems or more
or 17 axes or more
1 part system only
- (*1)
- (*1)
- (*2)
Two part systems simultaneously
- (*1)
- (*1)
- (*2)
(*1) This system cannot be used for this model.
(*2) There are no high-speed machining mode II specifications.
Note
(1) The above performance applies under the following conditions.
3 axes commanded simultaneously in G01
The block containing only the axis name and movement amount (Macro and variable command are not included.)
Tool radius compensation cancel (G40) mode
The parameter "#1259 set31/bit1" is set to "1".
(The number of machining blocks per unit time is set to "low-speed mode".)
When the above conditions are not satisfied, the given feedrate may not be secured.
(2) The performance in the table may vary depending on the combination with other function.
(3) The number of part systems and axes that can be used depends on the specifications of your machine tool.
559
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Command format
High-speed machining mode I ON
G05 P1 ;
High-speed machining mode II ON
G05 P2 ;
High-speed machining mode I/II OFF
G05 P0 ;
In addition to the G05 P0 command, the high-speed machining mode I is canceled when the high-speed machining
mode II (G05 P2) is commanded.
In reverse, the high-speed machining mode II is canceled when the high-speed machining mode I (G05 P1) is commanded.
Command G05 in an independent block. A program error (P33) will occur if a movement or other command is additionally issued in a G05 command block. A program error (P33) will also occur if there is no P command in a G05
command.
In addition to cancel the high-speed machining mode II, a G05 P0 command is also used to cancel the high-speed
high-accuracy control II/III.
Refer to "17.3 High-speed High-accuracy Control" for details.
IB-1501278-D
560
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
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.
For a part system that uses the high-speed machining mode II, "1" must be set for the parameter "#8040 HighSpeedAcc". By default, the high-speed machining mode II can only be used in the first part system.
(2) When using the high-speed machining mode II, setting to eliminate the speed fluctuation at the seams between
the arc and the straight line, or between arcs depends on the MTB specifications (parameter "#1572 Cirorp/
bit1").
(3) Combination with high-accuracy control
The high-speed machining mode and high-accuracy control can be used simultaneously by taking the following
steps:
(a) Set "1" for the parameter "#8040 High-SpeedAcc".
(b) Command "G05 P2" and "G08 P1" or "G61.1" from the machining program.
The parameter "#8040 High-SpeedAcc" can be set to "1" for up to two part systems. If "0" is set for all part systems, the first and second part systems can use the high-speed machining mode and high-accuracy control simultaneously.
Also refer to the following for the description of each function:
High-accuracy control: "17.2 High-accuracy Control"
Simultaneous usage of the high-speed machining mode and high-accuracy control: "17.3 High-speed Highaccuracy Control"
(4) While high-speed machining mode II is valid, the following variable commands or operation commands can be
designated following the axis address. When other variable commands or operation commands are issued, highspeed machining mode II is canceled temporarily.
(a) Referencing common variables or local variables
Common variables or local variables can be referenced (example: X#500, Y#1, Z##100, A#[#101], etc.).
(b) Four basic arithmetic rule
Four basic arithmetic rule (+, -, *, /) operations are available, and also the operation priority can be designated
using parentheses ( ) ([#500+1.0]*#501, etc.).
Program example
High-speed machining mode I
G28 X0. Y0. Z0. ;
G91 G00 X-100. Y-100. ;
G01 F10000 ;
G05 P1 ;
High-speed machining mode I ON
:
X0.1 Y0.01 ;
X0.1 Y0.02 ;
X0.1 Y0.03 ;
:
G05 P0 ;
High-speed machining mode I OFF
M30 ;
561
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Relationship with other functions
Relationship between the high-speed machining mode II and G code functions
Column A: Operation when the additional function is commanded while the high-speed machining mode II is enabled
Column B: Operation when the high-speed machining mode II (G05P2) is commanded while the additional function
is enabled
○: The high-speed machining mode II and the additional function are both enabled
∆: The high-speed machining mode II is temporarily canceled, while the additional function is enabled
x: Alarm generation (the text in parentheses refers to the number of the program error to be generated.)
-: No combination
□: Others
Group
0
IB-1501278-D
G code
Function name
A
B
G04
Dwell
∆
-
G05P0
High-speed machining mode II OFF
High-speed high-accuracy control II OFF
High-speed high-accuracy control III OFF
□ (*1)
□ (*2)
G05P2
High-speed machining mode II ON
□ (*3)
□ (*3)
G05P10000
High-speed high-accuracy control II ON
□ (*2)
□ (*2)
G05P20000
High-speed high-accuracy control III ON
□ (*2)
□ (*3)
G05.1Q0
High-speed high-accuracy control I OFF
Spline interpolation OFF
□ (*3)
□ (*2)
G05.1Q1
High-speed high-accuracy control I ON
□ (*2)
□ (*2)
G05.1Q2
Spline interpolation ON
○
○
G07
Hypothetical axis interpolation
∆
∆
G08P0
High-accuracy control OFF
□ (*3)
□ (*2)
G08P1
High-accuracy control ON
□ (*4)
□ (*4)
G09
Exact stop check
∆
-
G10 I_J_
G10 K_
Parameter coordinate rotation input
∆
-
G10 L2
Compensation data input by program
∆
-
G10 L70
G10 L50
Parameter input by program
∆
-
G27
Reference position check
∆
-
G28
Reference position return
∆
-
G29
Start position return
∆
-
G30
2nd to 4th reference position return
∆
-
G30.1G30.6
Tool change position return
∆
-
G31
Skip
Multiple-step skip 2
∆
-
G31.1G31.3
Multi-step skip
∆
-
G34-G36
G37.1
Special Fixed Cycle
∆
-
G37
Automatic tool length measurement
∆
-
G38
Tool radius compensation vector designation ∆
-
G39
Tool radius compensation corner circular
command
-
562
∆
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Group
0
1
G code
Function name
A
B
G52
Local coordinate system setting
∆
-
G53
Machine coordinate system selection
∆
-
G60
Unidirectional positioning
∆
-
G65
User macro simple call
□ (*5)
□ (*6)
G92
Coordinate system setting
∆
-
G92.1
Workpiece coordinate preset
∆
-
G122
Sub part system control I
X (P652)
□ (*7)
G00
Positioning
∆
∆
G01
Linear interpolation
○
○
G02
G03
Circular interpolation
○
○
G02.1
G03.1
Spiral interpolation
∆
∆
G02.3
G03.3
Exponential interpolation
∆
∆
G02.4
G03.4
3-dimensional circular interpolation
∆
∆
G06.2
NURBS interpolation
○
○
G33
Thread cutting
∆
∆
2
G17 to G19
Plane selection
○
○
3
G90
Absolute value command
○
○
G91
Incremental value command
○
○
G22
Stroke check before travel ON
∆
∆
G23
Stroke check before travel OFF
○
○
G93
Inverse time feed
∆
∆
G94
Asynchronous feed (feed per minute)
○
○
4
5
G95
Synchronous feed (feed per revolution)
∆
∆
6
G20
Inch command
○
○
G21
Metric command
○
○
7
G40
Tool radius compensation cancel
○
○
G41
G42
Tool radius compensation
○
○
G43
G44
Tool length offset
○
○
G43.1
Tool length compensation along the tool
axis
○
○
G43.4
G43.5
Tool center point control
○
○
G49
Tool length offset cancel
○
○
G80
Fixed cycle cancel
○
○
∆
∆
8
9
Group 9
Fixed cycle
Other than G80
563
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Group
10
11
12
13
14
G code
Function name
A
B
G98
Fixed cycle initial level return
○
○
G99
Fixed cycle R point return
○
○
G50
Scaling cancel
○
○
G51
Scaling ON
∆
∆
G54 to G59
G54.1
Workpiece coordinate system selection
○
○
G61
Exact stop check mode
∆
∆
G61.1
High-accuracy control
○
○
G61.2
High-accuracy spline
○
○
G62
Automatic corner override
∆
∆
G63
Tapping mode
∆
∆
G64
Cutting mode
○
○
G66
G66.1
User macro modal call
∆
∆
G67
User macro modal call
○
○
Cancel
15
16
17
18
19
21
24
27
G40.1
Normal line control cancel
○
○
G41.1
G41.2
Normal line control
X (P29)
X (P29)
G68
Coordinate rotation by program ON
∆
∆
G68.2
G68.3
Inclined surface machining command
○
○
G69
Coordinate rotation cancel
○
○
G96
Constant surface speed control ON
○
○
G97
Constant surface speed control OFF
○
○
G15
Polar coordinate command OFF
○
○
G16
Polar coordinate command ON
∆
∆
G50.1
Mirror image OFF
○
○
G51.1
Mirror image ON
○
○
G07.1
Cylindrical interpolation
X (P34)
X (P481)
G12.1
Polar coordinate interpolation ON
X (P34)
X (P481)
G13.1
Polar coordinate interpolation OFF
○
○
G188
Dynamic M/L program changeover
○
○
G189
Dynamic M/L program changeover
cancel
○
○
G54.4P0
Workpiece installation error compensation ○
cancel
○
G54.4
P1 to P7
Workpiece installation error compensation ○
○
(*1) Disables the high-speed machining mode II.
(*2) Enables the high-speed machining mode II.
(*3) High-speed machining mode II continues.
(*4) Enables the high-speed machining mode II and high-accuracy control.
(*5) Enables the high-speed machining mode II in a macro program.
(*6) Enables the high-speed machining mode II if G05P2 is commanded in a macro program.
(*7) Enables the high-speed machining mode II if G05P2 is commanded in a sub part system.
IB-1501278-D
564
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Relationship between the high-speed machining mode II and functions other than G codes
Column A: Operation when the additional function is commanded while the high-speed machining mode II is enabled
Column B: Operation when the high-speed machining mode II (G05P2) is commanded while the additional function
is enabled
○: The high-speed machining mode II and the additional function are both enabled
∆: The high-speed machining mode II is temporarily canceled, while the additional function is enabled
x: Alarm generation (the text in parentheses refers to the number of the program error to be generated.)
-: No combination
□: Others
Function name
A
B
SSS ON
-
○
Mirror image by parameter setting ON
-
∆
PLC mirror image ON
-
∆
Coordinate rotation by parameter
-
∆
Subprogram call (M98)
□ (*8)
□ (*9)
Figure rotation (M98 I_J_K_)
□ (*15)
□ (*16)
Timing synchronization between part sys- □ (*10)
tems
-
MTB macro
□ (*11)
□ (*12)
Macro interruption
□ (*13)
□ (*14)
Corner chamfering/Corner R
∆
-
Linear angle command
∆
-
Geometric command
∆
-
Chopping
○
○
Fairing/
smooth fairing ON
○
○
Optional block skip
○
-
(*8) Enables the high-speed machining mode II in a subprogram.
(*9) Enables the high-speed machining mode II if G05P2 is commanded in a subprogram.
(*10) Enables timing synchronization.
(*11) Enables the high-speed machining mode II in a MTB program.
(*12) Enables the high-speed machining mode II if G05P2 is commanded in a MTB program.
(*13) Enables the high-speed machining mode II in an interrupt program.
(*14) Enables the high-speed machining mode II if G05P2 is commanded in an interrupt program.
(*15) Disables the high-speed machining mode II in a figure rotation subprogram.
(*16) The high-speed machining mode II is disabled even if G05P2 is commanded in a figure rotation subprogram.
565
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Precautions
(1) If "G05 P1(P2)" is commanded when the high-speed machining mode I/(II) specifications are not provided, a program error (P39) will occur.
(2) The automatic operation process has priority in high-speed machining mode I/II, and as a result, the screen display may slow down.
(3) The speed will decelerate once at the G05 command block, so turn ON and OFF when the tool separates from
the workpiece.
(4) When carrying out operations in high-speed machining mode I/II by communication or tape mode, the machining
speed may be suppressed depending on the program transmission speed limit.
(5) Command G05 in an independent block.
(6) A decimal point is invalid for the P address in the G05 command block.
(7) The P addresses, which are valid in the G05 command block, are P0, P1 and P2 only.
If other P addresses are commanded, a program error (P35) will occur.
If there is no P command, a program error (P33) will occur.
(8) The machining speed may be suppressed depending on the number of characters in one block.
IB-1501278-D
566
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.2 High-accuracy Control
17.2.1 High-accuracy Control ; G61.1, G08
Function and purpose
Machining errors caused by delays in control systems can be inhibited. This function is useful for machining which
needs to make an edge at a corner or reduce an error from an inner route of curved shape. In high-accuracy control,
acceleration/deceleration is performed not to cause machining error by pre-reading blocks and acceleration/deceleration is automatically performed according to a machining shape so that the machining error is inhibited with minimizing an extension of machining time.
High-accuracy control OFF
NC command
High-accuracy control ON
NC command
Corner shape
Machining program
commanded shape
Machining program
commanded shape
Machining program
commanded shape
Machining program
commanded shape
NC
command
NC
command
Curve shape
Commands to enable high-accuracy control are as follows:
High-accuracy control command (G08P1/G61.1)
High-speed high-accuracy control I command (G05.1Q1)
High-speed high-accuracy control II/III command (G05P10000/G05P20000)
High-accuracy spline interpolation command (G61.2)
This function uses the following functions to minimize the increase in machining time while reducing the shape error.
(1) Acceleration/deceleration before interpolation
(2) Optimum speed control
(3) Vector accuracy interpolation
(4) Feed forward
(5) S-pattern filter control
In the main text, the axis address refers to the address of an axis that exits on the machine.
It corresponds to the address designated in the parameters "#1013 axname" and "#1014 incax".
These parameter settings depend on the MTB specifications.
567
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Command format
High-accuracy control valid
G61.1 ;
or, G08 P1;
High-accuracy control invalid
G08 P0 ;
or, G command in G code group 13 except G61.1
High-accuracy control can be canceled with either command regardless of the command that has enabled the control.
Note
(1) After "G08 P1" is commanded, G code group 13 is automatically switched to the G61.1 modal.
If the high-accuracy control mode is canceled by the "G08 P0" command, G code group 0 is switched to the
"G08P0" modal and G code group 13 becomes the "commanded mode".
IB-1501278-D
568
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Detailed description
(1) Feedrate command F is clamped with the "#2110 Clamp (H-precision)" (Cutting feed clamp speed for high-accuracy control mode) set with parameter.
(2) Rapid traverse rate enables "#2109 Rapid(H-precision)" (Rapid traverse rate during high-accuracy control mode)
set by the parameter.
(3) When the "#2109 Rapid(H-precision)" is set to "0", the movement follows "#2001 rapid" (rapid traverse rate) set
by the parameter. Also, when "#2110 Clamp (H-precision)" is set to "0", the speed will be clamped with "#2002
clamp" (Cutting clamp speed) set with parameter.
(4) The modal holding state of the high-accuracy control mode depends on the MTB specifications (combination of
the parameters "#1151 rstint" (reset initial) and "#1148 I_G611" (initial high-accuracy)).
Parameter
Default state
Resetting
Reset initial
(#1151)
Initial highaccuracy
(#1148)
Power ON
Reset 1
OFF
OFF
OFF
Hold
ON
Reset 2
Reset & rewind
OFF
OFF
OFF
ON
ON
Hold
ON
ON
ON
Parameter
Emergency stop
Emergency stop cancel
Reset initial
(#1151)
Initial highaccuracy
(#1148)
Emergency stop switch
or
external emergency stop
Emergency stop switch
or
external emergency stop
OFF
OFF
Hold
Hold
ON
OFF
OFF
ON
Hold
Hold
ON
ON
Parameter
Reset initial
(#1151)
Initial highaccuracy
(#1148)
OFF
OFF
Block interruption
Block stop
NC alarm
OT
Mode changeover (automatic/manual)
or
feed hold
Single block
Servo alarm
H/W OT
Hold
ON
OFF
ON
ON
Hold: Modal hold
ON: Switches to the high-accuracy control mode
As for G61.1, the mode is switched to the high-accuracy mode, even if the other modes (G61 to G64) are valid.
OFF: The status of the high-accuracy control mode is OFF.
569
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Acceleration/deceleration before interpolation
Acceleration/deceleration control is carried out for the movement commands to suppress the impact and to smooth
out the velocity waveform when the machine starts or stops moving. However, if high-accuracy control is disabled,
the corners at the block seams are rounded, and path errors occur regarding the command shape because acceleration/deceleration is performed after interpolation.
In the high-accuracy control function mode, acceleration/deceleration is carried out before interpolation to solve the
above problems. This acceleration/deceleration before interpolation enables machining with a faithful path to the
commanded shape of the machining program.
Furthermore, the acceleration/deceleration time can be reduced because the constant inclination acceleration/deceleration is performed for the acceleration/deceleration before interpolation.
(1) Basic patterns of acceleration/deceleration control in linear interpolation commands
Acceleration/deceleration waveform pattern
Normal mode
(F)
clamp
(T)
G1tL
(a) Because of the acceleration/deceleration
that controls the acceleration/deceleration
time to achieve the commanded speed at a
constant level (constant time constant acceleration/deceleration), the acceleration/deceleration becomes more gentle as the
command speed becomes slower (the acceleration/deceleration time does not change).
(b) The time to achieve the commanded
speed (G1tL) can be set independently for
each axis. Note, however, that an arc shape
will be distorted if the time constant differs
among the base axes.
G1tL: G1 time constant (linear)
(MTB-specified parameter #2007)
High-accuracy control mode
(F)
clamp
G1bF
G1bF/2
(T)
G1btL/2
G1btL
(F) Combined speed
(T) Time
(a) Because of the acceleration/deceleration
that controls the acceleration/deceleration
time to achieve the maximum speed (G1bF)
set by a parameter at a constant level (constant inclination type linear acceleration/deceleration), the acceleration/deceleration
time is reduced as the command speed becomes slower.
(b) Only one acceleration/deceleration time
constant (common for each axis) exists in a
system.
G1bF: Maximum speed
(MTB-specified parameter #1206)
G1btL: Time constant
(MTB-specified parameter #1207)
<Note>
G1bF and G1btL are values for specifying the inclination of the acceleration/deceleration time. The actual
cutting feed maximum speed is
clamped by the "#2002 clamp" value.
IB-1501278-D
570
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(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 NC to the servo runs further inside the commanded path, and
the circle radius becomes smaller than that of the commanded circle. This is due to the influence of the smoothing course droop amount for NC internal acceleration/deceleration.
With the pre-interpolation acceleration/deceleration control method, the path error is eliminated and a circular
path faithful to the command results, because interpolation is carried out after the acceleration/deceleration control. Note that the tracking lag due to the position loop control in the servo system is not the target here.
The following shows a comparison of the circle radius reduction error amounts for the conventional post-interpolation acceleration/deceleration control and pre-interpolation acceleration/deceleration control in the high-accuracy control mode.
Machining program commanded shape
R
Actual tool path
R
F
R : Commanded radius (mm)
∆R: Circle radius reduction error amount (mm)
F: Cutting feedrate (mm/min)
If an arc is commanded by a machining program as shown above, the error ∆R occurs for the commanded shape
on the actual tool path. In the normal mode (acceleration/deceleration after interpolation), ∆R is caused by acceleration/deceleration of NC and lag of servo system. High-accuracy control (acceleration/deceleration before
interpolation), however, can eliminate errors caused by acceleration/deceleration of NC. By additionally using
the feed forward control, it is also possible to reduce errors caused by lag of servo system.
The compensation amount of the circle radius reduction error (∆R) is theoretically calculated as shown in the
following table.
Post-interpolation acceleration/deceleration con- Pre-interpolation acceleration/deceleration control (normal mode)
trol (high-accuracy control mode)
Linear acceleration/deceleration
1
1
F
∆R = 2R 12 Ts 2 + Tp2 60
Linear acceleration/deceleration
2
1
∆R = 2R Tp2 1 - Kf 2
Exponential function acceleration/deceleration
1
∆R = 2R Ts2 + Tp2
F
60
2
F
60
2
(a) Because the item Ts can be ignored by using the
pre-interpolation acceleration/deceleration control
method, the radius reduction error amount can be reduced.
(b) Item Tp can be negated by making Kf = 1.
Ts: Acceleration/deceleration time constant in the NC (s)
Tp: Servo system position loop time constant (s) (inverse number to "#2203 PGN1")
Kf: Feed forward coefficient
Kf = fwd_g / 1000 (fwd_g: #2010 Feed forward gain)
571
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Optimum speed control
When the moving direction is changed on the corner, arc, etc., acceleration corresponding to the amount of change
and the feedrate is generated. When the acceleration is large, there is a possibility of machine vibration and it may
leave stripes on the machining surface.
In the high-accuracy control mode, the deceleration control (optimum speed control) is performed to keep the generated acceleration under the allowance that has been designed with the parameter so that the problem mentioned
above can be solved. The optimum speed control suppresses the machine vibration and enables highly accurate
machining while minimizing the extension of cycle time.
Corner deceleration
Consists of optimum corner deceleration and tolerable acceleration control for each axis.
Arc speed clamp
Controls deceleration so that the combined acceleration on an arc is kept below the tolerable acceleration common to all axes. This can suppress path errors (circle radius reduction error
amount) on an arc to a certain level.
(1) Optimum corner deceleration
Highly accurate edge machining can be achieved by controlling deceleration so that the combined acceleration
at the seam between blocks is kept under the tolerable acceleration common to all axes, which is determined by
"#1206 G1bF (maximum speed)", "#1207 G1btL (time constant)", and accuracy coefficient. When entering in a
corner, optimum speed for the corner (optimum corner speed) is calculated from the angle with the next block
(corner angle) and the tolerable acceleration common to all axes. The machine decelerates to the speed in advance, and then accelerates back to the command speed after passing the corner.
Y axis
When a corner with the corner angle θ is passed
F : Speed before entering the corner at speed F, the acceleration ∆F occurs according
F : Speed after passing to θ and F.
corner
F : Acceleration at the corner
X axis
The corner speed F is controlled so that ∆F generated above does not exceed the tolerable acceleration common to all axes.
The speed pattern is as shown on the left.
Synthesis rate
F0 = F0x2 + F0y2
Time
X-axis speed
F0x2
Time
Y-axis speed
F0y2
Time
IB-1501278-D
572
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Optimum corner deceleration is not carried out when blocks are smoothly connected, because deceleration is
not necessary. The criteria for whether the connection is smooth or not can be designated by the machining parameter "#8020 DCC ANGLE". If the corner angle is equal to or less than the corner deceleration angle, the connection is judged to be smooth and optimum corner deceleration is not carried out.
The edge accuracy can be further improved by setting a greater accuracy coefficient. A greater accuracy coefficient, however, reduces the optimum corner speed, which may increase the cycle time. Setting a negative accuracy coefficient can increase the optimum corner speed and reduce the cycle time.
As shown below, different accuracy coefficients can be used depending on the parameter "#8021 COMP_CHANGE", and the tolerable acceleration common to all axes can be obtained with the following formula:
#8021 COMP CHANGE
Accuracy coefficient used
0
#8019 R COMP
1
#8022 CORNER COMP
Tolerable acceleration
for all axes (mm/s2)
=
G1bF(mm/min)
G1btL(ms)
* 60 * 1000 *
100 - R COMP
100
The corner speed V0 can be maintained at more than a certain speed so that the corner speed does not drop
too far.
Set "#2096 crncsp (corner deceleration minimum speed)" for each axis, and make a combined speed so that the
moving axis does not exceed this setting.
Speed is not clamped
Speed is clamped
(a)
(c)
V
(a)
(b)
(a) Corner deceleration speed
(b) Clamp value according to X axis
(c) Y axis setting value
(d) X axis setting value
(d)
Note that the speed is controlled with the optimum corner deceleration speed in the following cases.
When the combined corner deceleration speed is equal to or less than the optimum corner deceleration
speed
When the corner deceleration minimum speed parameter setting for the moving axes is set to "0" for even
one axis.
573
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(2) Tolerable acceleration control for each axis (optimum acceleration control)
The acceleration to be generated at a seem between blocks is evaluated for each axis to control deceleration so
that the seam is passed at the optimum speed. This enables highly accurate edge machining.
The optimum deceleration speed is calculated so that the acceleration of each axis to be generated at the seam
is equal to or less than the tolerable acceleration for each axis, which is determined by "#2157 G1bFx" (maximum
speed for each axis), "#2158 G1btLx" (time constant for each axis), and the accuracy coefficient. The machine
decelerates to the speed in advance, and then accelerates back to the command speed after passing the corner.
This control enables deceleration at an appropriate speed for the characteristics of each axis even when machine vibrations may easily occur due to a low tolerable acceleration for a specific axis (rotary axis). This means
that the deceleration speed can be raised at a corner where acceleration is generated only for an axis with a high
tolerable acceleration, leading to a reduced cycle time.
If acceleration is generated for the X axis (linear axis) as shown in Figure (a) below or for the C axis (rotary axis)
as shown in Figure (b), the corner speed F is controlled so that the acceleration to be generated at the X or C
axis does not exceed the tolerable acceleration for the X or C axis, respectively. If the tolerable acceleration for
the X axis is higher than that for the C axis, a higher deceleration speed can be used for a path where acceleration is generated only for the X axis than where acceleration is generated only for the C axis. In this case, the
speed patterns are as shown in Figures (c) and (d) below:
C axis
F : Speed after passing the
corner
F:
Acceleration at the
corner
C axis
F : Speed before entering the corner
F : Speed after passing the
corner
F : Speed before entering
the corner
F : Acceleration at the corner
X axis
X axis
(a) Corner shape which generates the
acceleration on X axis (linear axis)
Synthesis rate
(b) Corner shape which generates the
acceleration on C axis (rotary axis)
Synthesis rate
F0 = F0x2 + F0c2
F0 = F0x2 + F0y2
Time
X-axis speed
Time
Controls the acceleration generated on
X-axis speed
X axis to be the X-axis tolerable
acceleration or less.
F0x2
Time
F0x2
C-axis speed
C-axis speed
F0c2
F0c2
Time
Controls the acceleration generated on
C axis to be the C-axis tolerable
acceleration or less.
Time
Time
(c) Speed pattern which generates the
acceleration on X axis (linear axis)
IB-1501278-D
(d) Speed pattern which generates the
acceleration on C axis (rotary axis)
574
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Deceleration is not carried out when blocks are smoothly connected (when the acceleration to be generated for each
axis is equal to or lower than the tolerable acceleration for each axis).
The edge accuracy can be further improved by setting a greater accuracy coefficient. A greater accuracy coefficient,
however, reduces the optimum corner speed, which may increase the cycle time. Setting a negative accuracy coefficient can increase the optimum corner speed and reduce the cycle time.
As shown below, different accuracy coefficients can be used depending on the parameter "#8021 COMP_CHANGE". Also, the tolerable acceleration can be adjusted for each axis using "#2159 compx" (accuracy coefficient for each axis), and the tolerable acceleration for each axis can be obtained with the following formula. It is
necessary, however, to set the same tolerable acceleration for all base axes because an arc shape is distorted if it
differs among them. If G1bFx is 0 (not set), the tolerable acceleration is calculated using "#2001 rapid" (rapid traverse rate). And if G1btLx is 0 (not set), the tolerable acceleration is calculated using "#2004 G0tL" (G0 time constant
(linear)).
If G1bFx and G1btLx are 0 for all base axes, the tolerable accelerations for the base axes are unified to the lowest
one.
#8021 COMP CHANGE
Accuracy coefficient used
0
#8019 R COMP
1
#8022 CORNER COMP
Tolerable acceleration
for each axes (mm/s2)
=
G1bFx(mm/min)
G1btLx(ms)
* 60 * 1000 *
575
100 - R COMP
100
*
100 - compx
100
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(3) 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 enough in relation 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.
This allows arc cutting to be carried out at an optimum speed for the arc radius.
The figure below shows the acceleration ∆F (mm/s²) for movement at the constant speed F (mm/min) on an arc
shape with the radius R (mm). Here, the arc clamp speed F' (mm/min) that makes the acceleration ∆F lower than
the tolerable acceleration common to all axes Ac (mm/s²) can be obtained with the following formula:
F : Commanded speed (mm/min)
R : Commanded arc radius (mm)
F
∆θ : Angle change per interpolation unit
F
∆F : Speed change per interpolation unit
F
R
F
F
The tool is fed with the arc clamp speed F' so that ∆F
does not exceed the tolerable acceleration common to
all axes Ac (mm/s²).
R*Ac*60
F'
F' =
G1bF(mm/min)
G1btL(ms)
When the above F' expression is substituted with F in the expression for the maximum logical arc radius reduction error amount ∆R, explained in the section "Pre-interpolation acceleration/deceleration", the commanded radius R is eliminated, and ∆R does not rely on R.
Here, Tp is the servo system position loop time constant (s) and Kf is the feed forward coefficient.
Tp is the inverse number to "#2203 PGN1" (position loop gain) (Tp = 1 / PGN1) and Kf is a ratio of "#2010 fws_g"
(feed forward gain) (Kf = fwd_g / 100), both of which depend on the MTB specifications.
∆R : Arc radius reduction error amount
2
1
F
Tp : Position loop gain time constant of servo system
2
2
R
2R Tp 1 - Kf
60
Kf : Feed forward coefficient
F : Cutting feedrate
AC
2
2
Tp
1
Kf
2
In other words, with an arc command to be clamped at the arc clamp speed, in logical terms regardless of the
commanded radius R, machining can be carried out with a radius reduction error amount within a constant value.
The roundness can be further improved by setting a greater accuracy coefficient. A greater accuracy coefficient,
however, reduces the arc clamp speed, which may increase the cycle time. Setting a negative accuracy coefficient can increase the arc clamp speed and reduce the cycle time.
As shown below, different accuracy coefficients can be used depending on the parameter "#8021 COMP_CHANGE", and the tolerable acceleration common to all axes can be obtained with the following formula:
#8021 COMP CHANGE
Accuracy coefficient used
0
#8019 R COMP
1
#8023 CURVE COMP
Tolerable acceleration
for all axes (mm/s2)
IB-1501278-D
=
G1bF(mm/min)
G1btL(ms)
576
* 60 * 1000 *
100 - R COMP
100
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Vector accuracy interpolation
When a fine segment is commanded and the angle between the blocks is extremely small (when not using optimum
corner deceleration), interpolation can be carried out more smoothly using the vector accuracy interpolation.
Vector accuracy interpolation
Commanded path
Feed forward control
This function reduces path errors caused by delay of servo systems. Path errors caused by acceleration/deceleration of NC can be eliminated by acceleration/deceleration before interpolation, however errors caused by delay of
servo systems cannot be eliminated by acceleration/deceleration before interpolation. Therefore, when the arc
shape of radius R (mm) is machined at speed F (mm/min) as the figure (a)below, for instance, the lag time occurs
between the NC commanded speed and the actual tool speed in amount of the servo system time constant and the
path error ∆R (mm) occurs. Feed forward control generates the command value taking the delay of servo systems
as shown in figure (b)below so that the path error caused by delay of servo systems can be inhibited.
Speed
NC commanded shape
F
R
Delay of servo
ΔR
NC commanded speed
Actual tool speed
Time
Actual tool path
(a) NC command and actual tool movement during Feed forward control OFF
Speed
NC commanded speed is set forward
according to a expected delay.
(Feed forward control)
NC commanded
shape
Time
Actual tool path
Actual tool speed
(corresponding to original NC commanded speed)
577
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(b) NC command and actual tool movement during Feed forward control ON
R=
1
2R
1 - Kf
Tp
F
60
Here, Tp is the servo system position loop time constant (s) and Kf is the feed forward coefficient. Tp is the inverse number to "#2203 PGN1" (position loop gain) (Tp = 1 / PGN1) and Kf is a ratio of "#2010 fws_g" (feed
forward gain) (Kf = fwd_g / 100), both of which depend on the MTB specifications.
Combination with the smooth high gain (SHG) control function
Feed forward control can inhibit path errors more effectively by increasing the feed forward coefficient. In some
cases, however, the coefficient cannot be increased because a greater coefficient may cause machine vibrations. In this case, use this function together with the smooth high gain (SHG) control function to stably compensate path errors caused by lag of servo system.
To enable the SHG control, it is also necessary to set "#2204 PGN2" (position loop gain 2) and "#2257 SHGC
SHG" (control gain) in addition to "#2203 PGN1" (position loop gain 1), all of which depend on the MTB specifications. By enabling the SHG control, it is possible to inhibit path errors, for example, for an arc shape equivalently as with conventional control (SHG control OFF) using the equivalent feed forward gain fwd_g as shown in
the following formula. This means that setting fwd_g = 50 (%) for the SHG control is as effective as setting fwd_g
= 100 (%) for conventional control in inhibiting path errors.
fwd _ g' = 100
1-
1-
fwd _ g
100
1
2
S-pattern filter control
S-pattern filter (soft acceleration/deceleration filter) is the function that inhibits the machine vibration by smoothing
a velocity waveform. There are following types of S-pattern filters:
G01/G00 S-pattern filter
G01/G00 jerk filter
S-pattern filter 2
Smoothing velocity waveform of
inclination-constant linear
acceleration/deceleration
inclination-constant
linear acceleration/
deceleration
Making velocity waveform of
S-pattern filter even smoother
S-pattern
filter
Interpolation
(axis distribution)
Jerk filter
Axis
speed
Synthesis
rate
Synthesis
rate
Time
IB-1501278-D
Synthesis
rate
Time
Axis
speed
Time
578
Smoothing each axis speed
after interpolation
S-pattern
filter 2
Axis
speed
Time
Time
Time
Time
Axis
speed
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(1) G01/G00 S-pattern filter
This function inhibits the machine vibration by smoothing a velocity waveform generated by inclination-constant
linear acceleration/deceleration.
Inclination-constant linear acceleration/deceleration generates continuous velocity waveforms, but makes the
acceleration discontinuous. As a result, machine vibrations may easily occur when there are discontinuities in
acceleration, which may cause scratches or streaks on the machining surface. The S-pattern filter can make the
velocity waveform even smoother and eliminate acceleration discontinuities to inhibit machine vibrations. The Spattern filter does not impair machining accuracy because it makes the combined speed smoother before interpolation. A greater S-pattern filter time constant, however, may increases the cycle time.
To the S-pattern filter time constant, "#1568 SfiltG1" is applied during cutting feed (G01) or "#1569 SfiltG0" during
rapid traverse (G00), each of which can be set in the range of 0 to 200 (ms).
(2) G01/G00 jerk filter
The jerk filter function inhibits machine vibrations by eliminating jerk discontinuities when the S-pattern filter
alone cannot inhibit such vibrations.
Through the S-pattern filter, continuous velocity waveforms can be obtained up to acceleration, but jerk discontinuities remain. The jerk filter further filters the velocity waveform smoothed by the S-pattern filter to smooth jerk
as well to inhibit machine vibrations. The jerk filter does not impair machining accuracy because it makes the
combined speed smoother before interpolation.
To the jerk filter time constant, "#12051 Jerk_filtG1" is applied during cutting feed (G01) or "#12052 Jerk_filtG0"
during rapid traverse (G00), each of which can be set in the range of 0 to 50 (ms). Even if a jerk filter time constant is set, the S-pattern filter time constant is the time to achieve the target acceleration. As a result, the time
constant for S-pattern filter processing is "S-pattern filter time constant" - "Jerk filter time constant". If the jerk
filter time constant is greater than the S-pattern filter time constant, an MCP alarm (Y51 0030) will occur.
Constant inclination linear
acceleration/deceleration
Speed
Machine vibration is likely
to occur
Acceleration
Time
S-pattern filter
Jerk filter
Speed
Speed
Acceleration
Time
Time
Acceleration
Time
Time
Tsfilt - Tjerk
Jerk
Time
Tsfilt
Jerk
Jerk
Time
Time
Time
Tjerk
Tsfilt: S-pattern filter time constant
Tjerk: Jerk filter time constant
579
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(3) S-pattern filter 2
This function inhibits machine vibrations by smoothing slight speed fluctuation caused when the combined speed
is distributed to each axis element.
S-pattern filter 2 can inhibit machine vibrations by smoothing slight speed fluctuation on each axis. The function,
however, may impair machining accuracy because it filters each axis speed after interpolation. A greater S-pattern filter 2 time constant, however, may increases the cycle time.
To the S-pattern filter 2 time constant, "#1570 Sfilt2" is applied, which can be set in the range of 0 to 200 (ms).
(4) How to adjust parameters
(a) The table below shows typical initial values for each filter time constant. If your machine's natural angular
frequency fn (Hz) is known, vibrations can be inhibited effectively by setting the vibration period Tn (ms) obtained with the following formula for the S-pattern filter time constant:
Tn =
1000
(ms)
fn
S-pattern filter
Jerk filter
(SfiltG1/SfiltG0)
50ms
S-pattern filter
(Jerk_filtG1/Jerk_filtG0)
0ms
(Sfilt2)
10ms
(b) If vibrations cannot be inhibited properly with the above initial values, increase the S-pattern filter time constant. Or, decrease the S-pattern filter time constant to reduce the cycle time.
(c) If vibrations occur at a corner or other section and stripes remain on the machining surface even after the Spattern filter time constant is increased, increase the S-pattern filter 2 time constant. The maximum S-pattern
filter 2 time constant, however, should be 20 to 25 ms because a greater S-pattern filter 2 time constant may
impair machining accuracy.
(d) If high-frequency machine vibrations remain even after the S-pattern filter/S-pattern filter 2 are applied, set
the jerk filter time constant.
If a shorter cycle time has a priority over the machining accuracy, it is possible to inhibit vibrations at a corner by
reducing the corner accuracy coefficient to increase the corner deceleration speed and increasing the S-pattern filter
2 time constant.
IB-1501278-D
580
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Relationship with other functions
(1) The modal must be set as shown below when commanding G08 P1/G61.1.
Function
G code
Cylindrical interpolation cancel (*1)
G07.1
Polar coordinate interpolation cancel (*1)
G15
Tool radius compensation mode cancel
G40
Tool length compensation cancel
G49
Normal line control cancel
G40.1
Programmable mirror image OFF
G50.1
Mirror image with settings
Cancel
Mirror image with signals
Cancel
No macro modal call
G67
Feed per revolution cancel
G94
Constant surface speed control mode cancel
G97
Interruption type macro mode cancel
M97
(*1) These functions can be commanded if the tolerable acceleration control for each axis (optimum acceleration
control) or variable-acceleration pre-interpolation acceleration/deceleration specifications are valid.
(2) A program error will occur if high-accuracy control is commanded in the following modes.
During milling -> Program error (P481)
During cylindrical interpolation -> Program error (P481) (*2)
During polar coordinate interpolation -> Program error (P481) (*2)
During normal line control -> Program error (P29)
(3) A program error (P29) will occur if the following commands are issued during the high-accuracy control mode.
Milling
Cylindrical interpolation (*2)
Polar coordinate interpolation (*2)
Normal line control
(*2) An error will not occur if the tolerable acceleration control for each axis (optimum acceleration control) or
variable-acceleration pre-interpolation acceleration/deceleration specifications are valid.
581
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Operation when high-accuracy control-related G commands are combined
The table below shows operations when following high-accuracy control-related commands are combined:
G61.1, G8P1
: High-accuracy control
G64
: Cutting mode
G61
: Exact stop check mode
G62
: Automatic corner override
G63
: Tapping mode
G61.2
: High-accuracy spline interpolation
G08P0
: High-accuracy control cancel (cutting mode)
G05.1Q1
: High-speed high-accuracy control I
G05.1Q2
: Spline interpolation
G05P2
: High-speed machining mode II
G05P10000
: High-speed high-accuracy control II
G05P20000
: High-speed high-accuracy control III
A
G61.1/G08P1
G61.2
IB-1501278-D
B
Operation when B is commanded during A command
G61.1
Continues high-accuracy control.
G61, G62, G63, G64
Cancels high-accuracy control and operates in the commanded
mode.
G61.2
Operates in the high-accuracy spline interpolation mode.
G8P1
Continues high-accuracy control.
G8P0
Cancels high-accuracy control. (Changes G code group 13 to
G64.)
G05.1Q1
Operates in the high-speed high-accuracy control I mode.
G05.1Q2
A program error (P34) will occur.
G05P2
Operates in high-accuracy control + high-speed machining mode
II.
G05P10000
Operates in the high-speed high-accuracy control II mode.
G06.2
A program error (P34) will occur.
G61.1
Operates in the high-accuracy control mode.
G61, G62, G63, G64
Operates in the commanded mode.
G61.2
Continues high-accuracy spline interpolation.
G08P1
Operates in the high-accuracy control mode.
G08P0
A program error (P29) will occur.
G05.1Q1
A program error (P29) will occur.
G05.1Q2
A program error (P34) will occur.
G05P2
Operates in high-accuracy spline interpolation + high-speed machining mode II.
G05P10000
A program error (P29) will occur.
G06.2
A program error (P34) will occur.
582
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
A
G05.1Q1
G05P10000
B
G61.1
Operation when B is commanded during A command
Continues the high-speed high-accuracy control I mode.
G64
Continues the high-speed high-accuracy control I mode.
G61, G62, G63
Operates in the high-speed high-accuracy control I + commanded
mode.
G61.2
A program error (P29) will occur.
G08P1
Continues the high-speed high-accuracy control I mode.
G08P0
Continues the high-speed high-accuracy control I mode.
G05.1Q1
Continues the high-speed high-accuracy control I mode.
G05.1Q2
A program error (P34) will occur.
G05P2
Operates in the high-speed machining mode II.
G05P10000
A program error (P34) will occur.
G06.2
A program error (P34) will occur.
G61.1
Continues the high-speed high-accuracy control II mode.
G64
Continues the high-speed high-accuracy control II mode.
G61, G62, G63
Operates in the high-speed high-accuracy control II + commanded mode.
G61.2
A program error (P29) will occur.
G08P1
Continues the high-speed high-accuracy control II mode.
G08P0
Continues the high-speed high-accuracy control II mode.
G05.1Q1
A program error (P34) will occur.
G05.1Q2
Operates in the high-speed high-accuracy control II mode + spline
interpolation
G05P2
Operates in the high-speed machining mode II.
G05P10000
Continues the high-speed high-accuracy control II mode.
G06.2
Operates in the NURBS interpolation mode.
583
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Precautions
(1) The "high-accuracy control" specifications are required to use this function
If G61.1 is commanded when there are no specifications, a program error (P123) will occur.
(2) The high-accuracy control function is internally enabled by the high-speed high-accuracy I/II/III (G5.1Q1/
G5P10000) command. If the high-speed high-accuracy I/II/III is commanded in the high-accuracy control mode,
the high-speed high-accuracy I/II/III mode is enabled. Then, if the high-speed high-accuracy I/II/III mode is canceled, the high-accuracy control mode is restored.
(3) In the high-accuracy control mode, feedrate command F is clamped with the "#2110 Clamp (H-precision)" (Cutting feed clamp speed for high-accuracy control mode) set with parameter. When the cutting feed clamp speed
for the high-accuracy control mode is 0, however, it is clamped with the "#2002 clamp" cutting clamp speed set
by the parameter.
(4) In the high-accuracy control mode, rapid traverse rate conforms to "#2109 Rapid(H-precision)" (Rapid traverse
rate during high-accuracy control mode) set by the parameter. When the rapid traverse rate during the high-accuracy control mode is set to "0", however, the movement follows "#2001 rapid" set by the parameter.
(5) If the specifications for the multi-part system simultaneous high-accuracy control are not provided, the "#1205
G0bdcc" (G0 pre-interpolation) can be used with only one part system.
If the 2nd or later part system is set to the G0 pre-interpolation acceleration/deceleration, an MCP alarm (Y51
0017) will occur.
(6) "#1568 SfiltG1", "#1569 SfiltG0" and "#1570 Sfilt2" cannot be changed from the screen during program mode.
If these parameters is changed by "parameter input by program", these parameters become valid from the next
block.
(7) If Reset or Emergency signal is input during axis travel, it takes a time equal to the time constant to recover from
the reset or emergency stop state.
(8) When there are high-accuracy acceleration/deceleration time constant expansion specifications, the sampling
buffer area may be smaller.
(9) The high-accuracy control time constant expansion specifications can only be used for a 1-part system. In a
multi-part system, the high-accuracy acceleration/deceleration time constant expansion specifications are disabled even when they are set to ON.
(10) For a part system where high-accuracy control is to be commanded, set the number of axes in the part system
to 8 or less. If high-accuracy control is commanded for a part system that has 9 or more axes, an operation error
(M01 0135) will occur. The error will not occur, however, if the number of axes in the part system excluding the
master axis/slave axis is 8 or less during the synchronous control/control axis synchronization between part systems.
(11) Even if the parameter "#1210 RstGmd" (modal G code reset setting) is set to "not to initialize group 13 at reset",
group 13 is initialized according to the setting of "#1148 I_G611" (Initial hi-precis) if it is enabled. To retain group
13 at reset, set "#1148 I_G611" to "0".
These parameters depend on the MTB specifications.
(12) If the parameter "#1205 G0bdcc" (G0 acceleration/deceleration before interpolation) is set to "1", the value set
with the parameter "#2224 SV024" (in-position detection width) will be used as the in-position width. The setting
of the parameter "#2077 G0inps" (G0 in-position width) and the programmable in-position check with ",I" address
are disabled.
IB-1501278-D
584
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.2.2 SSS Control
Function and purpose
This function runs a machining program that approximates a freely curved surface with fine segment lines at high
speed and with high-level accuracy. This function enables machining with less scratches and streaks on the cutting
surface compared to the conventional high-accuracy control function.
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.
The SSS (Super Smooth Surface) control uses information on not only the angle but also global paths between two
blocks to provide optimum speed control that is not significantly affected by minute stepping or waviness. The favorable effects of this control include a reduction in the number of scratches or streaks on cutting surfaces.
The SSS control has the following features:
(1) This function is effective at machining smooth-shaped dies using a fine segment program.
(2) This function provides speed control that is not susceptible to errors in paths.
(3) Even if corner deceleration is not required, the speed is clamped if the predicted acceleration is high.
(The clamp speed can be adjusted using the parameter "#8092 ClampCoeff".)
The length of the path direction recognized with SSS control can be adjusted with the machining parameter "#8091
reference length". The range is increased as the setting value increases, and the effect of the error is reduced.
If the multi-part system simultaneous high-accuracy specification is provided, up to two part systems can be used
at the same time.
Note
(1) The use of this function requires the following functions, in addition to the SSS control specifications. Make sure
that these specifications are enabled before using this function.
High-accuracy control (G61.1/G08P1)
High-speed high-accuracy control I (G05.1 Q1)
High-speed high-accuracy control II (G05 P10000)
High-speed high-accuracy control III (G05 P20000)
585
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Detailed description
When the parameters are set as below, each of the following high-accuracy control commands is activated under
SSS control.
<Parameter>
"#8090 SSS ON" ON
<Command format of the modes activated under SSS control>"
[High-accuracy control]
G61.1 ; or G08P1;
High-accuracy control ON
G08P0; or, G command in group 13 except G61.1
High-accuracy control OFF
[High-speed high-accuracy control I]
G05.1 Q1 ;
High-speed high-accuracy control I ON
G05.1 Q0 ;
High-speed high-accuracy control I OFF
[High-speed high-accuracy control II]
G05 P10000 ;
High-speed high-accuracy control II ON
G05 P0 ;
High-speed high-accuracy control II OFF
[High-speed high-accuracy control III]
G05 P20000 ;
High-speed high-accuracy control III ON
G05 P0 ;
High-speed high-accuracy control III OFF
"SSS" is displayed on the modal display screen under SSS control.
However "SSS" is not displayed when a command being executed is out of the scope of SSS control.
Adjustment of accuracy coefficient
The clamp speed at a corner and arc can be adjusted using "#8022 CORNER COMP" and "#8023 CURVE COMP"
(If "#8021 COMP_CHANGE" is set to "0", use "#8019 R COMP" to adjust the clamp speed at a corner and arc).
When "#8096 Deceler. coeff. ON" is set to "1", "#8097 Corner decel coeff" and "#8098 Arc clamp spd coef" become
valid during SSS control. Using these parameters, you can use different corner deceleration speeds and clamp
speeds at arcs according to whether or not the SSS control is enabled.
For parameters #8097 and #8098, respectively, set a percentage ratio to the level of the relevant speed that is applied when the SSS control is disabled.
Parameter
Item to be adjusted
#8097 Corner decel coeff
Corner deceleration speed to be applied when the SSS
control is enabled
#8098 Arc clamp spd coef
Arc clamp speed to be applied when the SSS control is enabled
(Example) When "#8097 Corner decel coeff" is set to 200 (%), the corner deceleration speed that is applied when
the SSS control is enabled becomes twice the corner deceleration speed that is applied when the SSS control
is disabled.
When setting the parameters, adjust the values within the range in which the machine does not vibrate.
IB-1501278-D
586
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Parameter standard values
The standard values of the parameters related to SSS control are shown below.
(1) User parameters
#
Item
Standard value
8090
SSS ON
8091
StdLength
1
8092
ClampCoeff
8093
StepLeng
8094
DccWaitAdd
0
8096
Deceler. coeff. ON
1
8097
Corner decel coeff
300
8098
Arc clamp spd coef
100
8019
R COMP
0
8020
DCC ANGLE
10
1.000
1
0.005
8021
COMP CHANGE
1
8022
CORNER COMP
0
8023
CURVE COMP
-20
8034
AccClampt ON
0
8036
CordecJudge
0
8037
CorJudgeL
0
<Note>
Reference items for adjusting the parameter
The relationship between each parameter, accuracy and speed is shown below.
The accuracy and speed required for machining can be adjusted with these settings.
When setting the parameters, adjust the values within the range in which the machine does not vibrate.
Parameter
Adjustment target
Effect
#8022 CORNER COMP
Accuracy at corner
section
Large setting = Accuracy increases, speed drops
#8023 CURVE COMP
Accuracy at curve
section
Large setting = Accuracy increases, speed drops
#8092 ClampCoeff
Accuracy at curve
section
Large setting = Accuracy drops, speed increases
<Note>
Usually use the standard value and adjust with
"#8023".
(2) Basic specification parameters (depend on the MTB specifications)
#
Item
Standard value
1148
I_G611
Initial high-accuracy
0
1206
G1bf
Acceleration/deceleration before interpolation Maximum speed
-
1207
G1btL
Acceleration/deceleration before interpolation Time constant
-
1571
SSSdis
SSS control adjustment coefficient fixed value selection
0
1572
Cirorp
Arc command overlap
0
1568
SfiltG1
G1 soft acceleration/deceleration filter
0
1569
SfiltG0
G0 soft acceleration/deceleration filter
0
1570
Sfilt2
Soft acceleration/deceleration filter 2
0
(3) Axis specification parameters (depend on the MTB specifications)
#
Item
Standard value
2010
fwd_g
Feed forward gain
70
2068
G0fwdg
G00 feed forward gain
70
2096
crncsp
Minimum corner deceleration speed
0
587
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
SSS control parameter
[Range for recognizing the
shape]
#1571 SSSdis
#8091 StdLength
Movement
command
[Measure for step]
#8093 StepLeng
Set the value approximately the
same as the CAM path difference
(tolerance) for the parameter.
#8093 StepLeng
[Acceleration/deceleration process]
Feedrate
Seam between blocks
Clamp speed
= theory deceleration speed
(after adding accuracy coefficient)×√#8092 ClampCoeff
Time
#8094 DccWaitAdd
Able to wait for deceleration by setting the extra time
when the speed feedback does not drop to the clamp
speed.
Precautions
(1) Pre-reading is executed during SSS control, so a program error could occur before the block containing the error
is executed.
(2) Buffer correction is not guaranteed during SSS control.
(3) If automatic/manual simultaneous or automatic handle feed interrupt are used during SSS control, the machining
accuracy will not be guaranteed.
(4) If a fine arc command is issued during SSS control, it may take longer to machine.
(5) The same path as single block operation will be used during graphic check.
(6) The line under the cutting feedrate and arc command block are subjected to the speed control in the SSS control.
The command blocks that are not subjected to speed control, decelerate first and automatically switch the SSS
control ON and OFF.
(7) SSS control is temporally disabled in the following modal:
NURBS interpolation
Polar coordinate interpolation
Cylindrical interpolation
User macro interruption enable (M96)
Feed per revolution (synchronous feed)
Inverse time feed
Constant surface speed control
Fixed cycle
3-dimensional coordinate conversion
Hypothetical axis interpolation
Automatic tool length measurement
Tool length compensation along the tool axis
(8) There are some restrictions for each high-accuracy control. Refer to each section for restrictions.
"17.2 High-accuracy Control"
"17.3 High-speed High-accuracy Control"
(9) Fairing is disabled during the SSS control.
IB-1501278-D
588
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.2.3 Tolerance Control
Function and purpose
This function obtains the optimum clamp speed for corners or curves based on the designated tolerance to perform
operations. It also ensures smooth passing within the tolerance range in corner sections, which suppresses machine
vibrations. This means that the clamp speed can be increased to reduce the cycle time.
This function allows the machine to operate with the optimum tool path and speed, simply by specifying the tolerance, so an operator can easily carry out high quality machining.
The tolerance refers to the allowable error amount between the path commanded in the machining program and the
path output by NC.
The validity of this function depends on the MTB specifications. This function also requires the SSS control specifications because it can only be used under SSS control.
Program command path
Path commanded by NC to drive unit
Tool path
Tolerance control: Invalid
Tolerance control: Valid
This function is enabled when the following conditions are satisfied:
(1) The tolerance control specification is valid. (Based on the MTB specifications.)
(2) The parameter "#8090 SSS ON" is set to "1".
(3) The parameter "#12066 Tolerance ctrl ON" is set to "1". (*1)(*2)
(4) High-accuracy control (G61.1/G08P1), spline interpolation (G61.2/G05.1Q2), spline interpolation 2 (G61.4), or
high-speed high-accuracy control I/II/III (G05.1Q1/G05P10000/G05P20000) is valid.
(*1) Even if conditions (1) and (3) are satisfied, an operation error (M01 0139) will occur and the cycle start cannot
be performed automatically if the parameter "#8090 SSS ON" is set to "0". In this case, enable SSS control and
reset the alarm to start the cycle automatically.
(*2) A setting error will occur if "1" is set when this specification is invalid.
589
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Command format
Set the tolerance with the parameter "#2659 tolerance" or the ",K" address following the G code (G61.1 or G61.4
command). When the setting value is "0", this function runs with "0.01(mm)".
Tolerance specification
G61.1 or G61.4 ,K__ ;
,K
Tolerance (mm)
The range of the command value is 0.000 to 100.000. If a value exceeding the range is commanded, a program
error (P35) will occur.
The tolerance designated by ",K" is applied to all axes in the part system.
When "0" is designated or ",K" is omitted, the program runs based on the value of the parameter "#2659 tolerance".
The tolerance designated by ",K" is not held after reset. Therefore, if ",K" is not designated in the G61.1 or G61.4
command after reset, the axis runs based on the value of the parameter "#2659 tolerance".
Note
(1) The G61.4 command requires the specifications of spline interpolation 2.
Detailed description
The axis moves in the designated tolerance range during tolerance control.
The tolerance on the corner shape is as shown on the right.
Speed control
The clamp speed is obtained from the tolerance in the corner or curve section during tolerance control.
As the designated tolerance is lower, the axis speed decelerates.
Tolerance: High
Tolerance: Low
Command path
Synthesis rate
Time
IB-1501278-D
590
Time
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Parameters valid during tolerance control
The parameters valid and invalid during tolerance control are as follows. Some parameters depend on the MTB
specifications.
(1) Valid parameters
No.
Parameter name
1206
G1bF
1207
G1btL
1568
SfiltG1
12051
Jerk_filtG1
2659
tolerance
Supplements
When combining with the variable-acceleration pre-interpolation acceleration/deceleration or tolerable acceleration control for each axis, specify parameters "#2157
G1bFx" and "#2158 G1btLx".
(2) Invalid parameters (Parameters with no setting required)
No.
1570
Parameter name
Supplements
Sfilt2
Ignored even if the value is entered.
2159
compx
8019
R COMP
Ignored even if the value is entered. The clamp speed is
obtained from the tolerance during tolerance control;
therefore, parameters for adjusting the clamp speed are
not required.
8020
DCC ANGLE
8021
COMP CHANGE
8022
CORNER COMP
8023
CURVE COMP
8096
Deceler. coeff. ON
8097
Corner decel coeff
8098
Arc clamp spd coef
Program example
:
G91 ;
G61.1 ,K0.02;
Designate tolerance 0.02 (mm).
G01 X0.1 Z0.1 F1000 ;
X0.1 Z-0.2 ;
Y0.1 ;
Tolerance: 0.02 (mm)
G61.1 ,K0;
Designate tolerance 0 (mm).
X-0.1 Z-0.05 ;
X-0.1 Z-0.3 ;
Tolerance: Follows parameter "#2659 tolerance".
G64 ;
:
591
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Precautions
(1) While tolerance control is valid, tolerance control may be canceled temporarily depending on some commands.
If tolerance control is canceled temporarily, the axis moves to the commanded position without taking an inner
route in a corner section. After this, when a temporary cancel cause is removed, tolerance control restarts.
The temporary cancel conditions are as follows.
(a) Modal in which the group 1 command is not G01 (linear interpolation) or G02/G03 (circular interpolation).
(b) Under single block operation
(c) Modal in which SSS control is disabled temporarily (Modal shown below)
NURBS interpolation
Polar coordinate interpolation
Cylindrical interpolation
User macro interruption enable (M96)
Feed per revolution (Synchronous feed)
Inverse time feed
Constant surface speed control
Fixed cycle
3-dimensional coordinate conversion
Hypothetical axis interpolation
Automatic tool length measurement
Tool length compensation along the tool axis
Normal line control
Unidirectional positioning
Exponential interpolation
3-dimensional circular interpolation
(2) The stored stroke limit's prohibited range is determined based on the program command path. As a result, machining may not be stopped even if the command moved inward by tolerance control enters the prohibited range.
(3) If a feed hold signal is turned ON at a corner, machining stops on the program command path.
This means that it does not stop at point A in the figure below but at point B.
Program command path
Path without a feed hold signal
Path when a feed hold signal is turned ON at a corner
A
IB-1501278-D
B
592
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.2.4 Variable-acceleration Pre-interpolation Acceleration/Deceleration
Function and purpose
This function is useful when each axis differs in the characteristics (responsiveness) (4-axis/5-axis machine, etc.).
The normal acceleration/deceleration before interpolation performs the acceleration/deceleration by setting acceleration common to all axes. Therefore, if the high responsiveness and low responsiveness coexist in axes, the acceleration needs to be set to suit the axis with low responsiveness.
On the other hand, the variable-acceleration pre-interpolation acceleration/deceleration can perform the acceleration/deceleration by setting diverse acceleration to each axis. This means that it is possible to set a higher acceleration for axes with high responsiveness than before. Therefore, the acceleration for the axis with high
responsiveness can be larger than before so that cycle time can be reduced especially in the indexing machining.
(Refer to following figure.)
The validity of this function depends on the MTB specifications. This function also requires the SSS control specifications because it can only be used under SSS control.
Synthesis rate
Variable-acceleration pre-interpolation
acceleration/deceleration
Acceleration/deceleration before interpolation
Time
Rotary axis
Linear axis
Shortened
This function is enabled when the following conditions are satisfied:
(1) The variable-acceleration pre-interpolation acceleration/deceleration specification is valid. (Based on the MTB
specifications.)
(2) The MTB-specific parameter has been set (#12060 VblAccPreInt). (*1)
(3) Under SSS control (*2)
(*1) A setting error will occur if "1" is set when this specification is invalid.
(*2) The validity of the SSS control function depends on the MTB specifications.
To enable SSS control, it is necessary to set the parameter "#8090 SSS ON" to "1" to command high-accuracy control.
(*3) Even if conditions (1) and (2) are satisfied, an operation error (M01 0136) will occur and the cycle start cannot be performed automatically if the parameter "#8090 SSS ON" is set to "0". In this case, enable SSS control and reset the alarm to start the cycle automatically.
"VAC" is displayed on the operation screen and modal display under variable-acceleration pre-interpolation acceleration/deceleration.
593
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Detailed description
The acceleration for each axis is determined in the MTB specifications (parameters "#2157 G1bFx" (maximum
speed for each axis) and "#2158 G1btLx" (axis time constant)).
For an axis with G1bFx = 0 (not set), the acceleration is calculated using "#1206 G1bF" (maximum speed).
And for an axis with G1btLx = 0 (not set), the acceleration is calculated using "#1207 G1btL" (time constant).
Therefore, if G1bFx and G1btLx are 0 (not set) for all axes, the normal acceleration/deceleration before interpolation
is performed.
The following shows examples of settings.
Set linear axis acceleration for "#1206 G1bF" and "#1207 G1btL".
#1206 G1bF
10000 (mm/min)
#1207 G1btL
100 (ms)
It is assumed that only the acceleration for the rotary axis is set for "#2157 G1bFx" and "#2158 G1btLx". ("#1206
G1bF" and "#1207 G1btL" are used by not setting the acceleration for the linear axis.)
X
Y
Z
C
#2157 G1bFx
0 (not set)
0 (not set)
0 (not set)
10000 (mm/min)
#2158 G1btLx
0 (not set)
0 (not set)
0 (not set)
500 (ms)
The figure below shows movements with the above settings.
(1) If only the X axis moves, acceleration/deceleration is performed at the acceleration set for the X axis. ... (a)
(2) If only the C axis moves, acceleration/deceleration is performed at the acceleration set for the C axis. ... (d)
(3) If both of the X and C axes move, acceleration/deceleration is performed at the optimum acceleration calculated
within the range that the acceleration of each axis does not exceed the setting.
If the movement of the X axis is dominant ... (b)
If the movement of the C axis is dominant ... (c)
(a)
(b)
(c)
(d)
Acceleration : Large
Synthesis rate
Acceleration : Small
Synthesis rate
Time
Synthesis rate
Time
Synthesis rate
Time
X-axis speed
X axis speed
X-axis speed
X axis speed
Time
C-axis speed
Time
C-axis speed
Time
C-axis speed
Time
Time
Time
IB-1501278-D
594
Time
C-axis speed
Time
Time
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Precautions
(1) Under variable-acceleration pre-interpolation acceleration/deceleration, corner deceleration is realized with tolerable acceleration control for each axis.
Corner deceleration patterns and acceleration/deceleration patterns are as follows with each parameter setting:
#12060 VblAccPreInt
0
0
1
1
0
1
0
1
Variable-acceleration Pre-interpolation Acceleration/Deceleration
ON
#12053 EachAxAccCntrl
Tolerable acceleration control for
each axis ON
Corner deceleration pattern
Optimum corner Tolerable acceleration control for each axis
deceleration
Acceleration/deceleration pattern
Acceleration/deceleration before
interpolation
Variable-acceleration pre-interpolation acceleration/deceleration
(2) This function can only be used under SSS control. This means that variable-acceleration pre-interpolation acceleration/deceleration is also disabled during a modal that temporarily disables SSS control. As a result, the tool
is under tolerable acceleration control for each axis. In this mode, the acceleration is determined by "#1206
G1bF" and "#1207 G1btL". Out of #2157 and #2158, set the longer one for #1206 and #1207. (Make a note of
the original values and restore them as necessary.)
Refer to "17.2.2 SSS Control" for modals that temporarily disable SSS control.
(3) Basically, set the same acceleration for base axes I, J, and K. A different acceleration causes a distorted shape
against an arc command.
The figure below shows an example where the acceleration in the Y direction is greater than that in the X direction.
Actual tool path
Machining program commanded shape
Y
X
595
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.2.5 Initial High-accuracy Control
If "#1148 I_G611" (Initial high-accuracy) is set by the MTB specifications, high-accuracy control-related functions
can be enabled when the power is turned ON. At power ON, the modes set by this parameter are enabled, but each
mode can be changed to a different one by commanding as follows in the machining program.
#1148 setting value
Modes enabled at power ON
0
G08P0/G64 (cutting mode) command
1
G08P1/G61.1 (high-accuracy control mode) command
2
G05.1Q1 (high-speed high-accuracy control I mode) command
3
G05P10000 (high-speed high-accuracy control II mode) command
4
G05P20000 (high-speed high-accuracy control III mode) command
It is impossible, however, to shift to the high-speed high-accuracy control II/high-speed high-accuracy control III
mode during the high-speed high-accuracy control I. Likewise, it is also impossible to shift to the high-speed highaccuracy control I mode during the high-speed high-accuracy control II/high-speed high-accuracy control III mode.
To shift to either mode, cancel the current high-speed high-accuracy control mode using "G05.1 Q0" or "G05 P0"
first and then command the target mode.
If any function set by this parameter is not included in your machine's specifications, an available high-accuracy
function with a number smaller than the parameter setting is enabled.
IB-1501278-D
596
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.2.6 Multi-part System Simultaneous High-accuracy
Function and purpose
High-accuracy control and high-speed machining mode are available respectively in all part systems, however, the
simultaneous usage of high-accuracy control and high-speed machining mode (including High-speed high-accuracy
control I/II/III) are available only in part systems which are limited by the parameter "#8040 High-SpeedAcc". While
high-accuracy control and high-speed machining mode are available simultaneously in a part system where this parameter is set to "1", a program error (P129) will occur in those where the parameter is set to "0" when commanded.
Also, for part systems where "#8040 High-SpeedAcc" is set to "0", "#1148 I_G611" must be set to "0" (Cutting mode
when the power is turned ON) or "1" (High-accuracy control mode when the power is turned ON). If the parameter
"#1148 I_G611" is set to a value other than "0" and "1", the parameter is regarded as being set to "1".
Note that up to two part systems can be set to use high-accuracy control and high-speed machining mode simultaneously. If three or more part systems are set as such, an MCP alarm (Y51 0032) will occur.
If the parameter "#8040 High-SpeedAcc" is set to "0" for all part systems, the simultaneous usage of high-accuracy
control and high-speed machining mode is available in the 1st and 2nd part systems.
Up to 2 part systems can be set to "1"
$1 High-speed high-accuracy enabled
part system = 1
$2 High-speed high-accuracy enabled
part system = 1
G28 X0 Y0;
G08P0 G05P0
G28 X0 Y0;
G08P0 G05P0
G08 P1;
G08P1
G05 P10000;
G08P1 G05P2
G05 P2;
G91 G01 F3000;
G05P2
G91 G01 F3000;
X1.;
:
High-speed
high-accuracy
:
:
:
:
:
:
G05P0;
G08 P0;
High-speed
high-accuracy
:
:
G05P0
G08P0
G05P0;
M02;
G08P0 G05P0
M02;
$3 High-speed high-accuracy enabled
part system = 0
$4 High-speed high-accuracy enabled
part system = 0
G28 X0 Y0;
G08P0 G05P0
G28 X0 Y0;
G08P0 G05P0
G08 P1;
G08P1
G05 P10000;
G08P1 G05P2 Alarm
:
G08 P0;
G91 G01 F3000;
G08P0
G05 P2;
X1.;
:
G05P2
:
G08 P1;
:
G08P1
Alarm
:
:
:
G08 P0;
:
G05 P0;
G05P0;
M02;
M02;
(Note) It is limited also in G61.1 command.
597
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Although some MTB specifications support the high-accuracy acceleration/deceleration time constant expansion
specifications, only one part system can be used. Multi-part systems cannot be used even if the high-accuracy acceleration/deceleration time constant expansion specifications are valid. For multi-part systems, "#1207 G1btL"
must be set to a value within the setting range that is applicable when there are no high-accuracy acceleration/deceleration time constant expansion specifications.
Refer to the following chapters for details of each high-accuracy control.
"17.2 High-accuracy Control"
"17.3 High-speed High-accuracy Control"
Detailed description
(1) When "#1148 I_G611" (Initial hi-precis) is enabled, the initial modal state after power ON will be the high-accuracy control mode. Refer to "17.2.5 Initial High-accuracy Control" for details.
In this case, the high-accuracy control mode is enabled if the multi-part system simultaneous high-accuracy
specification is provided. Otherwise, the 1st part system enters the high-accuracy control mode, but the 2nd part
system enters the cutting mode.
(2) If you use the high-accuracy acceleration/deceleration time constant expansion function together with the multipart system simultaneous high-accuracy function, an MCP alarm (Y51 0020) will occur.
Make sure to disable the high-accuracy acceleration/deceleration time constant extension function when you
use the multi-part system simultaneous high-accuracy function.
IB-1501278-D
598
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.3 High-speed High-accuracy Control
It depends on the MTB specifications whether the modal state at power ON is high-speed high-accuracy control I,
II, III, or OFF. It also depends on the specifications whether to hold the modal state at reset.
Refer to the specifications of your machine.
In the main text, the axis address refers to the address of an axis that exits on the machine.
It corresponds to the address designated in the parameters "#1013 axname" and "#1014 incax".
These parameter settings depend on the MTB specifications.
17.3.1 High-speed High-accuracy Control I, II, III ; G05.1 Q1/Q0, G05 P10000/P0, G05 P20000/P0
Function and purpose
This function runs a machining program that approximates a freely curved surface with fine segments at high speed
and with high-level accuracy. This is effective in increasing the speed of machining dies of a freely curved surface.
This function is useful for machining which needs to make an edge at a corner or reduce an error from an inner route
of curved shape.
A higher fine segment processing capability leads to a faster cutting speed, resulting in a shorter cycle time and a
better machining surface quality. kBPM, the unit for the fine segment processing capability, is an abbreviation of "kilo
blocks per minute" and refers to the number of machining program blocks that can be processed per minute.
Fine segment capacity for 1-part system
G01 block fine segment capacity for 1mm segment (unit: kBPM)
The performance below applies under the following conditions.
6-axis system (including spindle) or less
1-part system
3 axes or less commanded simultaneously in G01
The block containing only the axis name and movement amount (Macro and variable command are not included.)
Tool radius compensation cancel mode (G40)
The parameter "#1259 set31/bit1" is set to "1".
(The number of machining blocks per unit time is set to for "low-speed mode".)
When the above conditions are not satisfied, the given feedrate may not be secured.
Fine segment capacity
M850 / M830
Restriction in the program
M80
Type A
Type B
High-speed high-accuracy function
I mode
67.5
33.7
16.8
Yes
High-speed high-accuracy function
II mode
168
(*1)
67.5
-
Yes
High-speed high-accuracy function
III mode
270
(*1)
135
-
Yes
(*1) When the fairing is valid (When the parameter "#8033" is set to "1"), and the fairing is executed successively,
depending on machining programs, the performance of fine segment execution may decelerate more than the
value described in the above table. In the network connection, the value described in the above table may not
be guaranteed depending on the state.
599
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Fine segment capacity for multi-part system
G01 block fine segment capacity for 1mm segment (unit: kBPM)
The fine segment processing capability below applies under the following conditions.
3 axes or less commanded simultaneously in G01
The block containing only the axis name and axis movement amount (Macro and variable command are not
included.)
Tool radius compensation OFF (G40)
The parameter "#1259 set31/bit1" is set to "1".
(The number of machining blocks per unit time is set to for "low-speed mode".)
When the above conditions are not satisfied, the given feedrate may not be secured.
(1) High-speed high-accuracy control I
Number of part systems/num- Number of part systems
ber of axes
M850 / M830
(#8040=1)
67.5
M80
Type A
Type B
33.7
16.8
1-part system
1 part systems
2-part system
1 part systems
67.5
33.7
16.8
2 part systems
33.7
33.7
16.8
4-part system
1 part systems
- (*1)
- (*1)
- (*1)
Up to 16 axes
2 part systems
- (*1)
- (*1)
- (*1)
5 part systems or more
or 17 axes or more
1 part systems
- (*1)
- (*1)
- (*1)
2 part systems
- (*1)
- (*1)
- (*1)
(2) High-speed high-accuracy control II
Number of part systems/num- Number of part systems
ber of axes
M850 / M830
(#8040=1)
M80
Type A
Type B
1-part system
1 part systems
168 (*3)
67.5
- (*2)
2-part system
1 part systems
100
67.5
- (*2)
2 part systems
67.5
67.5
- (*2)
4-part system
1 part systems
- (*1)
- (*1)
- (*2)
Up to 16 axes
2 part systems
- (*1)
- (*1)
- (*2)
5 part systems or more
or 17 axes or more
1 part systems
- (*1)
- (*1)
- (*2)
2 part systems
- (*1)
- (*1)
- (*2)
(3) High-speed high-accuracy control III
Number o\f part systems/num- Number of part systems
ber of axes
M850 / M830
(#8040=1)
1-part system
1 part systems
2-part system
1 part systems
2 part systems
M80
Type A
Type B
135
- (*2)
168
135
- (*2)
100
67.5
- (*2)
270
4-part system
1 part systems
- (*1)
- (*2)
- (*2)
Up to 16 axes
2 part systems
- (*1)
- (*2)
- (*2)
5 part systems or more
or 17 axes or more
1 part systems
- (*1)
- (*2)
- (*2)
2 part systems
- (*1)
- (*2)
- (*2)
(*1) This system cannot be used for this model.
(*2) There are no corresponding high-speed high-accuracy control specifications.
(*3) 100 kBPM for a time constant expansion system.
(The time constant expansion system is available when its specifications are enabled and it is a 1-part system.)
IB-1501278-D
600
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
High-speed high-accuracy control simultaneously for two part systems
High-speed high-accuracy control I, II, III can be used simultaneously in up to two part systems.
High-speed high-accuracy control I, II, III can be used in a part system where "1" is set for the parameter "#8040
High-SpeedAcc". A program error occurs (P129) if this is commanded for a part system where "0" is set for the parameter.
If the parameter "#8040 High-SpeedAcc" is set to "0" for all part systems, only the first part system is handled as the
one with the parameter set to "1". Also, a part system where the parameter "#1148 Initial hi-precis" is set to "2" to
"4" is handled as the one with the parameter "#8040 High-SpeedAcc" set to "1".
The parameter "#8040 High-SpeedAcc" can be set to "1" for up to two part systems. If 3 or more part systems are
set to "1", an MCP alarm (Y51 0032) occurs. When "1" is set for two part systems, the fine segment processing capability decreases compared to when "1" is set only for one part system.
Command format
G05.1 Q1 ;
High-speed high-accuracy control I ON
G05.1 Q0 ;
High-speed high-accuracy control I OFF
G05 P10000 ;
High-speed high-accuracy control II ON
G05 P20000 ;
High-speed high-accuracy control III ON
G05 P0 ;
High-speed high-accuracy control II/III OFF
Note
(1) The high-speed high-accuracy mode II and III cannot be used at the same time.
(2) These commands are valid regardless of the parameter "#1267 ext03/bit0" setting if the specifications are available.
(3) High-speed high-accuracy control III can also be used by setting a parameter instead of a G code.
If the parameter "#8131 High-speed high-accuracy control 3" is set to "1", the high-speed high-accuracy control
II command can be handled as the III command. This also enables the high-speed high-accuracy control III mode
in the machining program using "G05P10000". Likewise, the G05P2 command issued during a high-accuracy
control mode can be handled as the high-speed high-accuracy control III command.
Furthermore, by setting "#1148 Initial hi-precis" to "4", the high-speed high-accuracy control III mode can be set
as the initial modal state after power ON.
601
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Detailed description
(1) The high-speed high-accuracy control I / II / III can be used during tape, MDI, SD card or memory modes.
(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 / III modal.
(3) The machining speed may drop depending on the number of characters in one block.
(4) The high-speed high-accuracy control I / II / III function automatically turns the high-accuracy control mode ON.
For high-accuracy control function, refer to "17.3 High-speed High-accuracy Control".
(5) Turn the tool radius compensation command ON and OFF during the high-speed high-accuracy control I/II/III
mode.
If the high-speed high-accuracy control I/II/III mode is turned OFF without turning the tool radius compensation
OFF, a program error (P34) will occur.
(6) Turn the high-speed high-accuracy control I / II / III mode OFF before commanding data other than those that
can be commanded.
(7) When using the high-speed high-accuracy control II / III mode, it is necessary to set the parameter "#1572 Cirorp"
to eliminate the speed fluctuation at the seams between arc and straight line or arc and arc. This parameter,
however, depends on the MTB specifications.
(8) Feedrate command F is clamped with the "#2110 Clamp (H-precision)" (Cutting feed clamp speed for high-accuracy control mode) set with parameter.
(9) Rapid traverse rate enables "#2109 Rapid(H-precision)" (Rapid traverse rate during high-accuracy control mode)
set by the parameter.
(10) When the "#2109 Rapid(H-precision)" is set to "0", the movement follows "#2001 rapid" (rapid traverse rate) set
by the parameter. Also, when "#2110 Clamp (H-precision)" is set to "0", the speed will be clamped with "#2002
clamp" (Cutting clamp speed) set with parameter.
Enabling conditions
To enable each high-speed high-accuracy control function, it is necessary to satisfy the following conditions respectively:
(1) The specification of each function is valid. (*1)
(2) Each function is in a valid modal state. (Refer to "Relationship with other functions".)
(3) Each function is enabled by one of the following procedures:
Command each in the machining program. (*2)
Set each for the parameter "#1148 Initial hi-precis". (The modal at power ON corresponds to each highspeed high-accuracy control function.)
#1148 setting
High-speed high-accuracy control I
2
High-speed high-accuracy control II
3
High-speed high-accuracy control III
4
(*1) The following conditions are additionally required to enable high-speed high-accuracy control III.
The time constant expansion system is invalid.
The SSS control specifications are valid, and the parameter "#8090 SSS ON" is set to "1".
If high-speed high-accuracy control III is commanded when the SSS control mode is set to OFF, high-speed
high-accuracy control II is enabled.
(*2) High-speed high-accuracy control III is also enabled by the following commands.
While the parameter "#8131 High-speed high-accuracy control III" is set to "1", command "G05 P10000" (highspeed high-accuracy control II) from the machining program.
IB-1501278-D
602
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Relationship with other functions
Relationship between the high-speed high-accuracy control I and other functions
(1) Relationship between the high-speed high-accuracy control I and G code functions
Column A: Operation when the additional function is commanded while the high-speed high-accuracy control I
is enabled
Column B: Operation when the high-speed high-accuracy control I (G05.1Q1) is commanded while the additional
function is enabled
○: The high-speed high-accuracy control I and the additional function are both enabled
∆: The high-speed high-accuracy control I is temporarily canceled, while the additional function is enabled
X: Alarm generation (the text in parentheses refers to the number of the program error to be generated.)
-: No combination
□: Others
Group
0
G code
Function name
A
B
G04
Dwell
∆
-
G05P0
High-speed machining mode II OFF
High-speed high-accuracy control II OFF
High-speed high-accuracy control III OFF
X (P34)
□ (*2)
G05P2
High-speed machining mode II ON
□ (*4)
□ (*2)
G05P10000
High-speed high-accuracy control II ON
X (P34)
X (P34)
G05P20000
High-speed high-accuracy control III ON
X (P34)
X (P34)
G05.1Q0
High-speed high-accuracy control I OFF
Spline interpolation OFF
□ (*1)
□ (*2)
G05.1Q1
High-speed high-accuracy control I ON
□ (*3)
□ (*3)
G05.1Q2
Spline interpolation ON
X (P34)
X (P34)
G07
Hypothetical axis interpolation
∆
∆
G08P0
High-accuracy control OFF
□ (*3)
□ (*2)
G08P1
High-accuracy control ON
□ (*3)
□ (*2)
G09
Exact stop check
∆
-
G10 I_J_
G10 K_
Parameter coordinate rotation input
∆
-
G10 L2
Compensation data input by program
∆
-
G10 L70
G10 L50
Parameter input by program
∆
-
G27
Reference position check
∆
-
G28
Reference position return
∆
-
G29
Start position return
∆
-
G30
2nd to 4th reference position return
∆
-
G30.1G30.6
Tool change position return
∆
-
G31
Skip
Multiple-step skip 2
∆
-
G31.1G31.3
Multi-step skip
∆
-
G34-G36
G37.1
Special Fixed Cycle
∆
-
603
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Group
0
1
G code
Function name
B
G37
Automatic tool length measurement
∆
-
G38
Tool radius compensation vector designation
∆
-
G39
Tool radius compensation corner circular
command
∆
-
G52
Local coordinate system setting
∆
-
G53
Machine coordinate system selection
∆
-
G60
Unidirectional positioning
∆
-
G65
User macro simple call
□ (*5)
□ (*6)
G92
Coordinate system setting
∆
-
G92.1
Workpiece coordinate preset
∆
-
G122
Sub part system control I
X (P652)
□ (*7)
G00
Positioning
∆
∆
G01
Linear interpolation
○
○
G02
G03
Circular interpolation
□
When SSS is
enabled: ○
When SSS is
disabled: ∆
□
When SSS is
enabled: ○
When SSS is
disabled: ∆
G02.1
G03.1
Spiral interpolation
∆
∆
G02.3
G03.3
Exponential interpolation
∆
∆
G02.4
G03.4
3-dimensional circular interpolation
∆
∆
G06.2
NURBS interpolation
X (P34)
X (P34)
G33
Thread cutting
∆
∆
2
G17-G19
Plane selection
○
○
3
G90
Absolute value command
○
○
G91
Incremental value command
○
○
G22
Stroke check before travel ON
○
○
G23
Stroke check before travel OFF
○
○
G93
Inverse time feed
X (P125)
X (P125)
G94
Asynchronous feed (feed per minute)
○
○
G95
Synchronous feed (feed per revolution)
○
○
G20
Inch command
○
○
G21
Metric command
○
○
G40
Tool radius compensation cancel
○
○
G41
G42
Tool radius compensation
○
X (P29)
G43
G44
Tool length offset
○
X (P29)
G43.1
Tool length compensation along the tool
axis
○
X (P29)
G43.4
G43.5
Tool center point control
○
X (P29)
G49
Tool length offset cancel
○
○
G80
Fixed cycle cancel
○
○
∆
∆
4
5
6
7
8
9
Group 9
Fixed cycle
Other than G80
IB-1501278-D
A
604
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Group
10
11
12
13
14
15
16
17
18
19
21
24
27
G code
Function name
A
B
G98
Fixed cycle initial level return
○
○
G99
Fixed cycle R point return
○
○
G50
Scaling cancel
○
○
G51
Scaling ON
○
X (P34)
G54-G59
G54.1
Workpiece coordinate system selection
○
○
G61
Exact stop check mode
□ (*8)
□ (*9)
G61.1
High-accuracy control
□ (*3)
□ (*2)
G61.2
High-accuracy spline
X (P29)
X (P29)
G62
Automatic corner override
□ (*3)
□ (*2)
G63
Tapping mode
□ (*3)
□ (*2)
G64
Cutting mode
□ (*3)
□ (*2)
G66
G66.1
User macro modal call
□ (*5)
□ (*6)
G67
User macro modal call cancel
○
○
G40.1
Normal line control cancel
○
○
G41.1
G41.2
Normal line control
X (P29)
X (P29)
G68
Coordinate rotation by program ON
○
X (P34)
G68.2
G68.3
Inclined surface machining command
○
○
G69
Coordinate rotation cancel
○
○
G96
Constant surface speed control ON
○
○
G97
Constant surface speed control OFF
○
○
G15
Polar coordinate command OFF
○
○
G16
Polar coordinate command ON
X (P34)
X (P34)
G50.1
Mirror image OFF
○
○
G51.1
Mirror image ON
○
X (P34)
G07.1
Cylindrical interpolation
X (P485)
∆
G12.1
Polar coordinate interpolation ON
X (P485)
∆
G13.1
Polar coordinate interpolation OFF
○
○
G188
Dynamic M/L program changeover
○
○
G189
Dynamic M/L program changeover
cancel
○
○
G54.4P0
Workpiece installation error compensation
cancel
○
○
G54.4
P1-P7
Workpiece installation error compensation
○
○
(*1) Disables the high-speed high-accuracy control I.
(*2) Enables the high-speed high-accuracy control I.
(*3) High-speed high-accuracy control I continues.
(*4) Enables the high-speed machining mode II.
(*5) Enables the high-speed high-accuracy control I in a macro program.
(*6) Enables the high-speed high-accuracy control I if G05.1Q1 is commanded in a macro program.
(*7) Enables the high-speed high-accuracy control I if G05.1Q1 is commanded in a sub part system.
(*8) Enables the exact stop check mode.
(*9) Exact stop check mode continues.
605
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(2) Relationship between the high-speed high-accuracy control I and functions other than G codes
Column A: Operation when the additional function is commanded while the high-speed high-accuracy control I
is enabled
Column B: Operation when the high-speed high-accuracy control I (G05.1Q1) is commanded while the additional
function is enabled
○: The high-speed high-accuracy control I and the additional function are both enabled
∆: The high-speed high-accuracy control I is temporarily canceled, while the additional function is enabled
X: Alarm generation (the text in parentheses refers to the number of the program error to be generated.)
-: No combination
□: Others
Function name
A
B
SSS ON
-
○
Mirror image by parameter setting ON
-
X (P34)
PLC mirror image ON
-
X (P34)
Coordinate rotation by parameter
-
∆
Subprogram call (M98)
□ (*10)
□ (*11)
Figure rotation (M98 I_J_K_)
□ (*17)
□ (*18)
Timing synchronization between part systems
□ (*12)
-
MTB macro
□ (*13)
□ (*14)
Macro interruption
□ (*15)
□ (*16)
PLC interruption
□ (*15)
□ (*16)
Corner chamfering/Corner R
∆
-
Linear angle command
○
-
Geometric command
○
-
Chopping
○
○
Optional block skip
○
-
(*10) Enables the high-speed high-accuracy control I in a subprogram.
(*11) Enables the high-speed high-accuracy control I if G05.1Q1 is commanded in a subprogram.
(*12) Enables timing synchronization.
(*13) Enables the high-speed high-accuracy control I in a MTB program.
(*14) Enables the high-speed high-accuracy control I if G05.1Q1 is commanded in a MTB program.
(*15) Enables the high-speed high-accuracy control I in an interrupt program.
(*16) Enables the high-speed high-accuracy control I if G05.1Q1 is commanded in an interrupt program.
(*17) Disables the high-speed high-accuracy control I in a figure rotation subprogram.
(*18) The high-speed high-accuracy control I is disabled even if G05.1Q1 is commanded in a figure rotation subprogram.
IB-1501278-D
606
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Relationship between the high-speed high-accuracy control II and other functions
(1) Relationship between the high-speed high-accuracy control II and G code functions
Column A: Operation when the additional function is commanded while the high-speed high-accuracy control II
is enabled
Column B: Operation when the high-speed high-accuracy control II (G05P10000) is commanded while the additional function is enabled
○: The high-speed high-accuracy control II and the additional function are both enabled
∆: The high-speed high-accuracy control II is temporarily canceled, while the additional function is enabled
X: Alarm generation (the text in parentheses refers to the number of the program error to be generated.)
-: No combination
□: Others
Group
0
G code
Function name
A
∆
B
G04
Dwell
-
G05P0
High-speed machining mode II OFF
□ (*1)
High-speed high-accuracy control II OFF
High-speed high-accuracy control III OFF
□ (*2)
G05P2
High-speed machining mode II ON
□ (*4)
□ (*2)
G05P10000
High-speed high-accuracy control II ON
□ (*3)
□ (*3)
G05P20000
High-speed high-accuracy control III ON
□ (*2)
□ (*2)
G05.1Q0
High-speed high-accuracy control I OFF
Spline interpolation OFF
□ (*3)
□ (*2)
G05.1Q1
High-speed high-accuracy control I ON
X (P34)
X (P34)
G05.1Q2
Spline interpolation ON
○
○
G07
Hypothetical axis interpolation
∆
∆
G08P0
High-accuracy control OFF
□ (*3)
□ (*2)
G08P1
High-accuracy control ON
□ (*3)
□ (*2)
G09
Exact stop check
∆
-
G10 I_J_
G10 K_
Parameter coordinate rotation input
∆
-
G10 L2
Compensation data input by program
∆
-
G10 L70
G10 L50
Parameter input by program
∆
-
G27
Reference position check
∆
-
G28
Reference position return
∆
-
G29
Start position return
∆
-
G30
2nd to 4th reference position return
∆
-
G30.1G30.6
Tool change position return
∆
-
G31
Skip
Multiple-step skip 2
∆
-
G31.1G31.3
Multi-step skip
∆
-
G34-G36
G37.1
Special Fixed Cycle
∆
-
G37
Automatic tool length measurement
∆
-
G38
Tool radius compensation vector designa- ∆
tion
-
G39
Tool radius compensation corner circular
command
-
∆
G52
Local coordinate system setting
∆
-
G53
Machine coordinate system selection
∆
-
G60
Unidirectional positioning
∆
-
607
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Group
0
1
G code
Function name
B
G65
User macro simple call
□ (*5)
□ (*6)
G92
Coordinate system setting
∆
-
G92.1
Workpiece coordinate preset ∆
-
G122
Sub part system control I
X (P652)
□ (*7)
G00
Positioning
∆
∆
G01
Linear interpolation
○
○
G02
G03
Circular interpolation
○
○
G02.1
G03.1
Spiral interpolation
∆
∆
G02.3
G03.3
Exponential interpolation
∆
∆
G02.4
G03.4
3-dimensional circular interpolation
∆
∆
G06.2
NURBS interpolation
○
○
G33
Thread cutting
∆
∆
2
G17-G19
Plane selection
○
○
3
G90
Absolute value command
○
○
G91
Incremental value command ○
○
G22
Stroke check before travel
ON
∆
∆
G23
Stroke check before travel
OFF
○
○
G93
Inverse time feed
∆
∆
G94
Asynchronous feed (feed per ○
minute)
○
G95
Synchronous feed (feed per
revolution)
∆
∆
G20
Inch command
○
○
G21
Metric command
○
○
G40
Tool radius compensation
cancel
○
○
G41
G42
Tool radius compensation
○
○
G43
G44
Tool length offset
○
○
G43.1
Tool length compensation
along the tool axis
○
○
G43.4
G43.5
Tool center point control
○
○
G49
Tool length offset cancel
○
○
G80
Fixed cycle cancel
○
○
∆
∆
Fixed cycle initial level return ○
○
4
5
6
7
8
9
Group 9
Fixed cycle
Other than G80
10
G98
G99
Fixed cycle R point return
○
○
11
G50
Scaling cancel
○
○
G51
Scaling ON
∆
∆
12
G54-G59
Workpiece coordinate system ○
selection
○
G54.1
IB-1501278-D
A
608
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Group
13
14
15
16
17
18
19
21
24
27
G code
Function name
A
B
G61
Exact stop check mode
∆
∆
G61.1
High-accuracy control
□ (*3)
□ (*2)
G61.2
High-accuracy spline
X (P29)
X (P29)
G62
Automatic corner override
∆
∆
G63
Tapping mode
∆
∆
G64
Cutting mode
□ (*3)
□ (*2)
G66
G66.1
User macro modal call
∆
∆
G67
User macro modal call
cancel
○
○
G40.1
Normal line control cancel
○
○
G41.1
G41.2
Normal line control
X (P29)
X (P29)
G68
Coordinate rotation by program ON
∆
∆
G68.2
G68.3
Inclined surface machining
command
○
○
G69
Coordinate rotation cancel
○
○
G96
Constant surface speed con- ○
trol ON
○
G97
Constant surface speed con- ○
trol OFF
○
G15
Polar coordinate command
OFF
○
○
G16
Polar coordinate command
ON
∆
∆
G50.1
Mirror image OFF
○
○
G51.1
Mirror image ON
○
○
G07.1
Cylindrical interpolation
X (P34)
X (P481)
G12.1
Polar coordinate interpolation X (P34)
ON
X (P481)
G13.1
Polar coordinate interpolation ○
OFF
○
G188
Dynamic M/L program
changeover
○
○
G189
Dynamic M/L program
changeover
cancel
○
○
G54.4P0
Workpiece installation error
compensation cancel
○
○
G54.4
P1-P7
Workpiece installation error
compensation
○
○
(*1) Disables the high-speed high-accuracy control II.
(*2) Enables the high-speed high-accuracy control II.
(*3) High-speed high-accuracy control II continues.
(*4) Enables the high-speed machining mode II.
(*5) Enables the high-speed high-accuracy control II in a macro program.
(*6) Enables the high-speed high-accuracy control II if G05P10000 is commanded in a macro program.
(*7) Enables the high-speed high-accuracy control II if G05P10000 is commanded in a sub part system.
(*8) Enables the exact stop check mode.
(*9) Exact stop check mode continues.
609
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(2) Relationship between the high-speed high-accuracy control II and functions other than G codes
Column A: Operation when the additional function is commanded while the high-speed high-accuracy control II
is enabled
Column B: Operation when the high-speed high-accuracy control II (G05P10000) is commanded while the additional function is enabled
○: The high-speed high-accuracy control II and the additional function are both enabled
∆: The high-speed high-accuracy control II is temporarily canceled, while the additional function is enabled
X: Alarm generation (the text in parentheses refers to the number of the program error to be generated.)
-: No combination
□: Others
Function name
A
B
SSS ON
-
○
Mirror image by parameter setting ON
-
∆
PLC mirror image ON
-
∆
Coordinate rotation by parameter
-
∆
Subprogram call (M98)
□ (*10)
□ (*11)
Figure rotation (M98 I_J_K_)
□ (*17)
□ (*18)
Timing synchronization between part systems
□ (*12)
-
MTB macro
□ (*13)
□ (*14)
Macro interruption
□ (*15)
□ (*16)
PLC interruption
□ (*15)
□ (*16)
Corner chamfering/Corner R
∆
-
Linear angle command
∆
-
Geometric command
∆
-
Chopping
○
○
Fairing/smooth fairing ON
○
○
Optional block skip
○
-
(*10) Enables the high-speed high-accuracy control II in a subprogram.
(*11) Enables the high-speed high-accuracy control II if G05P10000 is commanded in a subprogram.
(*12) Enables timing synchronization.
(*13) Enables the high-speed high-accuracy control II in a MTB program.
(*14) Enables the high-speed high-accuracy control II if G05P10000 is commanded in a MTB program.
(*15) Enables the high-speed high-accuracy control II in an interrupt program.
(*16) Enables the high-speed high-accuracy control II if G05P10000 is commanded in an interrupt program.
(*17) Disables the high-speed high-accuracy control II in a figure rotation subprogram.
(*18) The high-speed high-accuracy control II is disabled even if G05P10000 is commanded in a figure rotation
subprogram.
(*19) Enables the normal mode (G05P0).
IB-1501278-D
610
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Relationship between the high-speed high-accuracy control III and other functions
(1) Relationship between the high-speed high-accuracy control III and G code functions
Column A: Operation when the additional function is commanded while the high-speed high-accuracy control III
is enabled
Column B: Operation when the high-speed high-accuracy control III (G05P20000) is commanded while the additional function is enabled
○: The high-speed high-accuracy control III and the additional function are both enabled
∆: The high-speed high-accuracy control III is temporarily canceled, while the additional function is enabled
X: Alarm generation (the text in parentheses refers to the number of the program error to be generated.)
-: No combination
□: Others
Group
0
G code
Function name
A
B
G04
Dwell
∆
-
G05P0
High-speed machining mode II OFF
High-speed high-accuracy control II OFF
High-speed high-accuracy control III OFF
□ (*1)
□ (*2)
G05P2
High-speed machining mode II ON
□ (*3)
□ (*2)
G05P10000
High-speed high-accuracy control II ON
□ (*4)
□ (*2)
G05P20000
High-speed high-accuracy control III ON
□ (*3)
□ (*3)
G05.1Q0
High-speed high-accuracy control I OFF
Spline interpolation OFF
□ (*3)
□ (*2)
G05.1Q1
High-speed high-accuracy control I ON
X (P34)
X (P34)
G05.1Q2
Spline interpolation ON
□ (*2)
□ (*2)
G07
Hypothetical axis interpolation
∆
∆
G08P0
High-accuracy control OFF
□ (*3)
□ (*2)
G08P1
High-accuracy control ON
□ (*3)
□ (*2)
G09
Exact stop check
∆
-
G10 I_J_
G10 K_
Parameter coordinate rotation input
∆
-
G10 L2
Compensation data input by program
∆
-
G10 L70
G10 L50
Parameter input by program
∆
-
G27
Reference position check
∆
-
G28
Reference position return
∆
-
G29
Start position return
∆
-
G30
2nd to 4th reference position return
∆
-
G30.1G30.6
Tool change position return
∆
-
G31
Skip
Multiple-step skip 2
∆
-
G31.1G31.3
Multi-step skip
∆
-
G34-G36
G37.1
Special Fixed Cycle
∆
-
G37
Automatic tool length measurement
∆
-
G38
Tool radius compensation vector designation
∆
-
G39
Tool radius compensation corner circular command
∆
-
G52
Local coordinate system setting
∆
-
611
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Group
0
1
G code
Function name
B
G53
Machine coordinate system selection
∆
-
G60
Unidirectional positioning
∆
-
G65
User macro simple call
□ (*5)
□ (*6)
G92
Coordinate system setting
∆
-
G92.1
Workpiece coordinate preset
∆
-
G122
Sub part system control I
X (P652)
□ (*7)
G00
Positioning
□ (*2)
□ (*2)
G01
Linear interpolation
○
○
G02
G03
Circular interpolation
□ (*2)
□ (*2)
G02.1
G03.1
Spiral interpolation
∆
□ (*19)
G02.3
G03.3
Exponential interpolation
∆
□ (*19)
G02.4
G03.4
3-dimensional circular interpolation
∆
□ (*19)
G06.2
NURBS interpolation
□ (*2)
□ (*2)
G33
Thread cutting
∆
□ (*19)
2
G17-G19
Plane selection
○
○
3
G90
Absolute value command
○
○
G91
Incremental value command
○
○
G22
Stroke check before travel ON
∆
□ (*19)
G23
Stroke check before travel OFF
○
○
G93
Inverse time feed
∆
□ (*19)
G94
Asynchronous feed (feed per minute)
○
○
G95
Synchronous feed (feed per revolution)
∆
□ (*19)
G20
Inch command
○
○
G21
Metric command
○
○
G40
Tool radius compensation cancel
○
○
G41
G42
Tool radius compensation
□ (*2)
□ (*2)
G43
G44
Tool length offset
○
○
G43.1
Tool length compensation along the tool axis
□ (*2)
□ (*2)
G43.4
G43.5
Tool center point control
□ (*2)
□ (*2)
G49
Tool length offset cancel
○
○
G80
Fixed cycle cancel
4
5
6
7
8
9
10
11
12
○
○
Group 9
Fixed cycle
Other than G80
∆
□ (*19)
G98
Fixed cycle initial level return
○
○
G99
Fixed cycle R point return
○
○
G50
Scaling cancel
○
○
G51
Scaling ON
∆
□ (*19)
G54-G59
Workpiece coordinate system selection
○
○
G54.1
IB-1501278-D
A
612
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Group
13
14
15
16
G code
Function name
A
B
G61
Exact stop check mode
∆
□ (*19)
G61.1
High-accuracy control
□ (*3)
□ (*2)
G61.2
High-accuracy spline
X (P29)
X (P29)
G62
Automatic corner override
∆
□ (*19)
G63
Tapping mode
∆
□ (*19)
G64
Cutting mode
□ (*3)
□ (*2)
G66
G66.1
User macro modal call
∆
□ (*19)
G67
User macro modal call cancel
○
○
G40.1
Normal line control cancel
○
○
G41.1
G41.2
Normal line control
X (P29)
X (P29)
G68
Coordinate rotation by program ON
∆
□ (*19)
G68.2
G68.3
Inclined surface machining command
□ (*2)
□ (*2)
G69
Coordinate rotation cancel
○
○
17
G96
Constant surface speed control ON
○
○
G97
Constant surface speed control OFF
○
○
18
G15
Polar coordinate command OFF
○
○
19
21
24
27
G16
Polar coordinate command ON
∆
□ (*19)
G50.1
Mirror image OFF
○
○
G51.1
Mirror image ON
□ (*2)
□ (*2)
G07.1
Cylindrical interpolation
X (P34)
X (P481)
G12.1
Polar coordinate interpolation ON
X (P34)
X (P481)
G13.1
Polar coordinate interpolation OFF
○
○
G188
Dynamic M/L program changeover
○
○
G189
Dynamic M/L program changeover cancel
○
○
G54.4P0
Workpiece installation error compensation can- ○
cel
○
G54.4P1-P7
Workpiece installation error compensation
□ (*2)
□ (*2)
(*1) Disables the high-speed high-accuracy control III.
(*2) Enables the high-speed high-accuracy control III.
(*3) High-speed high-accuracy control III continues.
(*4) Enables the high-speed high-accuracy control II.
(*5) Enables the high-speed high-accuracy control III in a macro program.
(*6) Enables the high-speed high-accuracy control III if G05P20000 is commanded in a macro program.
(*7) Enables the high-speed high-accuracy control III if G05P20000 is commanded in a sub part system.
(*8) Enables the exact stop check mode.
(*9) Exact stop check mode continues.
613
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(2) Relationship between the high-speed high-accuracy control III and functions other than G codes
Column A: Operation when the additional function is commanded while the high-speed high-accuracy control III
is enabled
Column B: Operation when the high-speed high-accuracy control III (G05P20000) is commanded while the additional function is enabled
○: The high-speed high-accuracy control III and the additional function are both enabled
∆: The high-speed high-accuracy control III is temporarily canceled, while the additional function is enabled
X: Alarm generation (the text in parentheses refers to the number of the program error to be generated.)
-: No combination
□: Others
Function name
A
SSS ON
B
-
○
SSS OFF
-
□ (*4)
Mirror image by parameter setting ON
-
∆
PLC mirror image ON
-
∆
Coordinate rotation by parameter
-
∆
Subprogram call (M98)
□ (*10)
□ (*11)
Figure rotation (M98 I_J_K_)
□ (*17)
□ (*18)
Timing synchronization between part systems
□ (*12)
-
MTB macro
□ (*13)
□ (*14)
Macro interruption
□ (*15)
□ (*16)
PLC interruption
□ (*15)
□ (*16)
Corner chamfering/Corner R
∆
-
Linear angle command
∆
-
Geometric command
∆
-
Chopping
○
○
Fairing/smooth fairing ON
□ (*4)
□ (*4)
Optional block skip
□ (*4)
-
(*10) Enables the high-speed high-accuracy control III in a subprogram.
(*11) Enables the high-speed high-accuracy control III if G05P20000 is commanded in a subprogram.
(*12) Enables timing synchronization.
(*13) Enables the high-speed high-accuracy control III in a MTB program.
(*14) Enables the high-speed high-accuracy control III if G05P20000 is commanded in a MTB program.
(*15) Enables the high-speed high-accuracy control III in an interrupt program.
(*16) Enables the high-speed high-accuracy control III if G05P20000 is commanded in an interrupt program.
(*17) Disables the high-speed high-accuracy control III in a figure rotation subprogram.
(*18) The high-speed high-accuracy control III is disabled even if G05P20000 is commanded in a figure rotation
subprogram.
(*19) Enables the normal mode (G05P0).
IB-1501278-D
614
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.3.2 Fairing
Function and purpose
This function is an additional function when the high-speed high-accuracy control II mode is ON If there is a protrusion in a path (zigzagging path) in a machining program generated with a CAM, etc., this function can be used to
eliminate the protruding path smaller than the setting value so that the protruding path is smoothly connected with
the previous and the next paths.
This function is valid only for continuous linear commands (G01).
Related parameter
Details
#8033
Fairing ON
0 : Fairing invalid
1 : Execute fairing for the protruding block
2 : Smooth fairing valid
#8029
Fairing L
Execute fairing for the shorter block than this setting value
Before fairing
After fairing
Path before/after fairing execution
If there is any protruding path after fairing, fairing is repeated.
Before fairing
After first fairing
After final fairing
Path in repetitive fairing executions
615
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.3.3 Smooth Fairing
Function and purpose
This function is an additional function when the high-speed high-accuracy control II mode is ON A path can be
smoothen by compensating commanded positions of a machining program.
This function is useful when executing a fine segment program to machine smoothly at low speed or a rough machining program with long segment to machine smoothly.
This function is enabled while high-speed high-accuracy control II is ON or while high-accuracy control is ON in highspeed machining mode II, and performs compensation on consecutive G01 command during this time.
The validity of this function depends on the MTB specifications. To use this function, the high-speed high-accuracy
control II specification, or the high-speed machining mode II and high-accuracy control specifications are required.
Commanded path
G90 G00 X0.271 Y0.161;
G01;
N01 X0.319 Y0.249;
N02 X0.415 Y0.220;
N03 X0.475 Y0.299;
N04 X0.566 Y0.256;
N05 X0.638 Y0.325;
N06 X0.720 Y0.268;
N07 X0.803 Y0.325;
N08 X0.875 Y0.256;
N09 X0.965 Y0.299;
N10 X1.026 Y0.220;
N11 X1.122 Y0.249;
N12 X1.169 Y0.161;
Commanded position
N03
N01
N02
N07
N05
N04
N06
N09
N11
N08
N10
Smooth fairing OFF
N12
Smooth fairing ON
Compensated position
Tool path
Tool path
Commanded position
Commanded position
Faring and smooth faring differ as follows:
Fairing
Smooth fairing
Operation
- Eliminating blocks shorter than designated
length
Usage
- Eliminating minute steps to occur at fillet and - Smooth machining at low speed for a fine
other sections
segment program
- Eliminating noises on commanded paths
- Smooth machining for a rough machining
program
IB-1501278-D
616
- Compensating commanded positions across
multiple blocks
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
When a minute step exists on a commanded path, for instance, the path after compensation differs between fairing
and smooth fairing as follows:
Commanded path
Commanded position
N07
N01
N02
N03
N04
N05
N08
N09
N10
G01;
N06
Path after compensation by fairing
G90 G00 X0 Y0;
N01 X0.100 Y0.000;
Eliminates blocks shorter
than designated length.
N02 X0.200 Y0.000;
N03 X0.300 Y0.000;
N04 X0.400 Y0.000;
Path after compensation by smooth
fairing
Path after compensation
N05 X0.500 Y0.000;
N06 X0.500 Y0.010;
N07 X0.600 Y0.010;
N08 X0.700 Y0.010;
N09 X0.800 Y0.010;
Compensates commanded
positions in blocks around a
step.
N10 X0.900 Y0.010;
Refer to "Relationship with Other Functions" for the relationship between smooth fairing and other functions.
Detailed description
Enabling conditions
To enable smooth fairing, it is necessary for the following conditions to be satisfied respectively:
(a) The smooth fairing option is set to ON.
(b) One of the following modes is set to ON.
- G05 P20000 (*1)
- G05 P10000
- G05 P2 and the high-accuracy function (G61.1/G08P1 or G61.2) are used simultaneously.
(c) At least one of the following conditions is satisfied.
- The parameter "#8033 Fairing ON" is set to "2".
- The G05 P20000, R1 / G05 P10000, R1 / G05 P2, or R1 command is issued.
(*1) This command functions as G05 P10000 while smooth fairing is ON.
617
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Enabling smooth fairing
Two methods are available to enable smooth fairing: "G05 Pp,Rr command" and parameter "#8033 Fairing ON" ((c)
of fairing enable conditions).
Relationship between ",R" address and parameter "#8033 Fairing ON"
Parameter "#8033 Fairing ON"
0
Both OFF
G05 P20000
G05 P10000
G05 P2
Command
1
Fairing ON
2
Smooth fairing ON
No ,R
×
○
●
,R0
×
×
×
,R1
●
●
●
●: Smooth fairing ON, ○: Fairing ON, X: Both OFF
(1) When the ",R" address is set to the G05 command, the operation shown in the table below is performed regardless of the setting value of the parameter "#8033".
Smooth fairing ON
Smooth fairing OFF
G05 P20000,R1
G05 P10000,R1
G05 P2,R1
Smooth fairing is ON regardless of the setting value of the parameter "#8033".
G05 P20000,R0
G05 P10000,R0
G05 P2,R0
Both fairing and smooth fairing are OFF
regardless of the setting value of the parameter "#8033".
G05 P0,Rr (r=0,1)
G05 P1,Rr (r=0,1)
(Program error(P33))
G05 P20000,Rr (r=0,1)
G05 P10000,Rr (r=0,1)
G05 P2,Rr (r=0,1)
G05 P1,Rr (r=0,1)
G05 P0,Rr (r=0,1)
Program error (P39)
(2) The ",R" address is unmodal information. The ",R" address value designated by previous G05 command is not
inherited to the next and subsequent G05 commands. Each time the G05 command is issued, the fairing function
is switched as shown in the table above.
Machining program
Operation
N01 G05 P10000,R1;
...
In this period, the program runs with G05 P10000,R1.
N02 G05 P0;
N03 G05 P10000;
The ",R" address of the N01 G05 command is not inherited.
...
In this period, the program runs with G05 P10000 (without the ",R" address).
N04 G05 P0;
(3) To switch smooth fairing and fairing, insert the G05P0; command between them. If this switching is commanded
without inserting the G05P0 command, a program error (P560) will occur.
Machining program
Operation
N01 G05 P10000,R1;
Set the parameter "#8033" to "1".
...
In this period, the program runs with smooth fairing.
N03 G05 P10000;
Issuing this command switches to fairing, which causes an error.
IB-1501278-D
618
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(4) To enable smooth fairing without setting the ",R" address to the G05 command, set the parameter "#8033 Fairing
ON" to "2". The following operation is performed.
G05 P20000
G05 P10000
G05 P2
Smooth fairing ON
G05 P1
G05 P0
Both fairing and smooth fairing are OFF
Details of Operation
An operation example is as follows.
(In this figure, symbol ○ indicates the compensated position, and symbol ● indicates the commanded position.)
(1) Smooth fairing smoothens the path by compensating the positions designated by successive G01 commands.
This function recognizes the paths before and after each commanded position, and compensates commanded
positions that cause a path to become unsmooth.
[Commanded path] (indicated by dashed lines)
NO5
NO3
NO2
NO6
NO7
NO8
NO9 NO10
NO11 NO12
NO1
[Path after compensation] (indicated by solid lines)
The smooth parts Only the unsmooth parts are compensated.
are not targeted for
compensation.
G90 G00 X0.322 Y0.234;
G01;
N01 X0.413 Y0.276;
N02 X0.507 Y0.311;
N03 X0.603 Y0.338;
N04 X0.701 Y0.357;
N05 X0.798 Y0.399;
N06 X0.900 Y0.343;
N07 X1.003 Y0.399;
N08 X1.095 Y0.328;
N09 X1.205 Y0.367;
N10 X1.284 Y0.282;
N11 X1.399 Y0.304;
N12 X1.465 Y0.207;
: Compensated position
: Commanded position
619
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(2) The path recognition range is determined by the parameter "#8038 Path recog. range". Determine the setting
value to include multiple G01 commands in the path recognition range. When the setting value is "0", the range
is set to "1.0 (1 mm)".
When the path recognition range is set to 0.5 mm:
0.11mm
0.1mm
0.1mm
0.11mm
0.1mm
0.1mm
0.1mm
0.1mm
0.1mm
0.1mm
0.1mm
0.1mm
The path is recognized in the range of 0.5 mm forward and 0.5 mm
backward of the commanded position.
G90 G00 X0.322 Y0.234;
G01;
N01 X0.413 Y0.276;
N02 X0.507 Y0.311;
N03 X0.603 Y0.338;
N04 X0.701 Y0.357;
N05 X0.800 Y0.369;
N06 X0.900 Y0.423;
N07 X1.000 Y0.369;
N08 X1.099 Y0.357;
N09 X1.198 Y0.338;
N10 X1.294 Y0.311;
N11 X1.388 Y0.276;
N12 X1.478 Y0.234;
(3) The upper limit of the compensation distance can be determined so that the compensated position does not deviate from the commanded position significantly. Designate this upper limit in the parameter "#8039 Comp. range
limit". Ordinarily, designate the tolerance that is designated when generating the machining program with CAM.
When the setting value is "0", the range is set to "0.005 (5 microns)".
(a) When the compensation distance tolerance is high:
NO6
Desirable compensation position
NO7
Compensation
range tolerance
Actual compensation position
G90 G00 X0.322 Y0.234;
G01;
N01 X0.413 Y0.276;
N02 X0.507 Y0.311;
N03 X0.603 Y0.338;
N04 X0.701 Y0.357;
N05 X0.800 Y0.369;
N06 X0.900 Y0.423;
N07 X1.000 Y0.369;
N08 X1.099 Y0.357;
N09 X1.198 Y0.338;
N10 X1.294 Y0.311;
N11 X1.388 Y0.276;
N12 X1.478 Y0.234;
(b) When the compensation distance tolerance is low:
Compensation
range tolerance
Desirable compensation position
IB-1501278-D
Actual compensation position
620
G90 G00 X0.322 Y0.234;
G01;
N01 X0.413 Y0.276;
N02 X0.507 Y0.311;
N03 X0.603 Y0.338;
N04 X0.701 Y0.357;
N05 X0.800 Y0.369;
N06 X0.900 Y0.423;
N07 X1.000 Y0.369;
N08 X1.099 Y0.357;
N09 X1.198 Y0.338;
N10 X1.294 Y0.311;
N11 X1.388 Y0.276;
N12 X1.478 Y0.234;
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(4) While smooth fairing is ON, the modal or mode status is changed, and smooth fairing may be set to OFF. While
smooth fairing is OFF, the commanded position is not compensated, and the axis moves as commanded. For
details on the modal or mode status that causes smooth fairing to be set to OFF, refer to "Relationship with other
functions".
While smooth fairing is OFF, the axis moves to the commanded posi- G90 G00 X0.0 Y0.0;
tion.
G01;
N01 G01 X0.039 Y0.077;
N02 G01 X0.139 Y0.080;
N03 G01 X0.172 Y0.174;
N04 G01 X0.271 Y0.161;
NO6
N05 G01 X0.319 Y0.249;
N06 G02 X1.122 Y0.249 R0.5;
N07 G01 X1.169 Y0.161;
N08 G01 X1.268 Y0.174;
N09 G01 X1.301 Y0.080;
N10 G01 X1.401 Y0.077;
N11 G01 X1.441 Y0.000;
Valid
Invalid
Valid
Compensation restarts from the block in which smooth fairing enable conditions are satisfied again.
(5) While smooth fairing is ON, it may be canceled temporarily depending on commands when:
- there is a block that contains only a sequence number;
- the modal status of the absolute value/incremental value command is changed by the G90 or G91 command;
and
- the movement command is issued to an axis other than the three basic axes.
If a command that triggers a temporary cancel is inserted, the axis moves to the commanded position once. For
the list of commands that trigger a temporary cancel, refer to "Relationship with other functions".
G90 G00 X0.322 Y0.234;
G90 G01;
N01 X0.413 Y0.276;
N02 X0.507 Y0.311;
N03 X0.603 Y0.338;
N04 X0.701 Y0.357;
N05 X0.798 Y0.399;
If a block that triggers a temporary cancel is in- N06 X0.900 Y0.343;
serted, the axis moves to the commanded posi- N07;
N08 X1.003 Y0.399;
tion once.
N09 X1.095 Y0.328;
N10 X1.205 Y0.367;
N11 X1.284 Y0.282;
N12 X1.399 Y0.304;
N13 X1.465 Y0.207;
621
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Relationship with other functions
(1) Relationship between smooth fairing and other G code functions
A
Shows if smooth fairing is valid or not when the G code function on the left is enabled.
○ (Valid): Compensates for the commanded position
X (invalid): Does not compensate the commanded position
B
Shows operation when the G code on the left is commanded together with a movement command
(XYZ address command)(*) while smooth fairing is ON.
○ (continuation): Compensates for the commanded position
X (temporary cancel): Temporarily suspends compensation to move to the commanded position
(*) Temporary cancel for blocks with no movement commands (example: When G90; is commanded independently).
G code
group
0
Function name
G05
High-speed machining mode/high-speed high-accuracy
control
G08
High-accuracy Control
A
B
(*1)
-
○
×
G command in group 0 except the above
-
×
1
G01
Linear interpolation
○
○
G command in group 1 except the above
×
×
2
G17/G18/G19
Plane selection
○
(*2)
3
G90/G91
Absolute value command/incremental value command
○
(*2)
4
G23
Stroke check before travel OFF
○
×
G command in group 4 except the above
×
×
5
G94
Asynchronous feed (feed per minute )
○
○
G command in group 5 except the above
×
×
6
G20/G21
Inch/Metric command
○
×
7
G40
Tool radius compensation cancel/3-dimentional tool radius
compensation cancel
○
○
G41/G42
Tool radius compensation/3-dimensional tool radius compensation
○
○
G command in group 7 except the above
×
×
G43/G44
Tool length offset + /tool length offset -
○
×
G43.1
Tool length compensation along the tool axis
○
×
G49
Tool length offset cancel
○
×
G command in group 8 except the above
×
×
8
9
G80
Fixed cycle cancel
○
×
G command in group 9 except the above
×
×
10
G98/G99
Fixed cycle initial level return/R point level return
○
×
11
G50
Scaling cancel
○
×
G command in group 11 except the above
×
×
12
G54-G59/G54.1
Workpiece coordinate system selection
○
×
13
IB-1501278-D
G Code
G61.1
High-accuracy control ON
○
×
G61.2
High-accuracy spline
○
×
G command in group 13 except the above
×
×
14
G67
User macro modal call cancel
○
×
G command in group 14 except the above
×
×
15
G40.1/G150
Normal line control cancel
○
×
G command in group 15 except the above
×
×
622
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
G code
group
16
G Code
G69
Function name
A
B
Coordinate rotation cancel/3-dimensional coordinate conversion cancel
○
×
G command in group 16 except the above
×
×
17
G96/G97
Constant surface speed control ON/OFF
○
×
18
G15
Polar coordinate command OFF
○
×
G command in group 18 except the above
×
×
19
G50.1
Mirror image by G code OFF
○
○
G command in group 19 except the above
×
×
21
G13.1/G113
Cylindrical interpolation/polar coordinate interpolation OFF
○
○
G command in group 21 except the above
×
×
24
G188/G189
Dynamic M/L program changeover/cancel
○
×
27
G54.4
Workpiece installation error compensation
(*3)
×
(*1) ○ (valid) for G05P2/G05P10000/G05P20000 and X (invalid) for the others.
(*2) ○ (continuation) if the modal state does not change before and after the command and X (temporary cancel)
otherwise.
(*3) ○ (Valid) for G54.4P0 and X (invalid) for the others.
(2) Relationship between smooth fairing and functions other than G codes
A
Shows if smooth fairing is valid or not when the function on the left is enabled.
○ (Valid): Compensates for the commanded position
X (invalid): Does not compensate the commanded position
B
Shows operation when the function on the left is commanded while smooth fairing is ON.
○ (continuation): Compensates for the commanded position
X (temporary cancel): Temporarily suspends compensation to move to the commanded
position
Function other than G code
A
B
Block containing only EOB(;)
-
(*1)
Block containing only comment
-
○
Block containing only sequence number
-
×
Block containing only MSTB command
-
×
Block containing only F command
-
×
If there is an axis movement command for other than three base axes
-
×
Block without movement command
-
×
During single block operation
×
×
Subprogram call (M98 P_)
○
×
Figure rotation subprogram call (M98 P_I_J_K_)
×
×
Macro interruption (M96, UIT)
○
×
User macro simple call
○
×
User macro modal call
×
×
MTB macro
×
×
PLC interruption (PIT)
(*2)
Coordinate rotation by parameter (G10 I_J_/K_)
×
×
Mirror image by parameter setting (#8211 Mirror image)
×
×
Mirror image with PLC signals ON
×
×
(*1) When there is a block containing only EOB, compensation is not temporarily canceled. However, in such a
case, the path slightly changes compared to when there are no blocks containing only EOB.
(*2) PLC interruption is not allowed during high-speed high-accuracy control II/III.
623
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
The table below shows which fairing functions are enabled according to the combination of the parameter "#8033
Fairing ON" setting and G command:
"#8033 Fairing ON"
0
1
2
Both OFF
Fairing ON
Smooth fairing ON
G05 P0
G61.1
×
×
×
G61.2
○
○
○
G05 P2
G61.1
×
×
●
G61.2
○
○
●
G5.1 Q0
×
○
●
G5.1 Q2
×
×
●
G05 P10000
G05 P20000
●: Smooth fairing ON, ○: Fairing ON, X: Both OFF
IB-1501278-D
624
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.3.4 Acceleration Clamp Speed
Function and purpose
This function is an additional function when the high-speed high-accuracy control II mode is ON
The cutting feed clamp speed during the high-speed high-accuracy control II / III mode, when the following parameter is set to "1", is clamped so that the acceleration generated by each block movement does not exceed the tolerable value. This function clamps the speed optimally even at a section where "angle change at each block is small
but entire curvature is large" such as shown below.
The tolerable acceleration value is calculated from the parameter "#1206 G1bF" and "#1207 G1btL" setting values.
(Tolerable acceleration = #1206/#1207)
#8034
Related parameter
Details
AccClampt ON
0 : Clamp the cutting speed with parameter "#2002 clamp" (*1) or the
corner deceleration function.
1: Cutting speed clamp determined by acceleration reference is also
executed.
R
If the tool moves along the large curvature section without deceleration, a large acceleration is generated resulting in a path error by
curving inward.
Speed control by curvature
(*1) When a speed is set in "#2109 Clamp(H-precision)", clamp is executed at that speed. When the setting value
is "0", clamp is executed with "#2002 clamp".
625
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.3.5 Corner Deceleration in High-speed Mode
Function and purpose
This function is an additional function when high-speed high-accuracy control II mode is ON.
During high-accuracy control, if the angle between the adjacent blocks in the machining program is large, this function, conventionally, automatically decelerates the machining so that the acceleration generated when passing
through the corner is maintained within the tolerable value.
If a fine block is inserted at the corner section in the machining program generated with the CAM, etc., the corner
passing speed will not match the periphery. This can affect the machining surface.
In the corner deceleration in the high-speed mode, even when this type of fine block is inserted, the corner will be
judged from a vantage point by setting the below parameter.
The fine block is excluded at the judgment of an angle, but is not excluded from the actual movement command.
Related parameter
Details
#8036
CordecJudge
0 : Judge the corner from the angle of the neighboring block.
1 : Judge the corner from the angle of the neighboring block, excluding
the minute blocks.
#8027
CorJudgeL
Exclude shorter block than this setting value.
(a)
High-speed mode corner deceleration
(a) When"#8036 CordecJudge" is set to "1", corner deceleration is realized without an influence of fine blocks.
IB-1501278-D
626
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.3.6 Precautions on High-speed High-accuracy Control
Precautions
Common precautions on high-speed high-accuracy control I/II/III
(1) The validity of each high-speed high-accuracy control function depends on the MTB specifications. If any of the
above is commanded when the corresponding specification is not available on the machine, a program error
(P39) will occur.
(2) The machining speed may drop depending on the number of characters in one block.
(3) Feedrate command F is clamped with the "#2110 Clamp (H-precision)" (Cutting feed clamp speed for high-accuracy control mode) set with parameter.
(4) The rapid traverse rate conforms to "#2109 Rapid(H-precision)" (Rapid traverse rate during high-accuracy control mode) set by the parameter.
(5) When "#2109 Rapid(H-precision)" (high-accuracy control mode rapid traverse rate) is set to "0", however, the
movement follows "#2001 rapid" (Rapid traverse rate) set with the parameter. Also, when "#2110 Clamp (H-precision)" (Cutting feed clamp speed for high-accuracy control mode) is set to "0", the speed will be clamped with
"#2002 clamp" (Cutting clamp speed) set with parameter.
(6) The automatic operation processing has priority in the high-speed high-accuracy control I/II/III modal, so the
screen display, etc., may be delayed.
(7) The speed will decelerate once at the high-speed high-accuracy control I command (G05.1 Q1), high-speed
high-accuracy control I OFF command (G05.1 Q0), high-speed high-accuracy control II command (G05P10000),
high-speed high-accuracy control III command (G05P20000), and high-speed high-accuracy control II/III OFF
command (G05P0), so turn ON and OFF when the tool separates from the workpiece.
(8) When carrying out high-speed high-accuracy control I/II operation during tape mode, the machining speed may
be suppressed depending on the program transmission speed and the number of characters in one block.
(9) If the parameter "#1205 G0bdcc" (G0 acceleration/deceleration before interpolation) is set to "1", the value set
with the parameter "#2224 SV024" (in-position detection width) will be used as the in-position width. "#2077
G0inps" (G0 in-position width) and the ",I" command (programmable in-position check) are disabled.
Common precautions on high-speed high-accuracy control II/III
(1) While high-speed high-accuracy control II/III is enabled, the following variable commands or operation commands can be designated following the axis address. When other variable commands or operation commands
are issued, high-speed high-accuracy control II/III is canceled temporarily.
(a) Referencing common variables or local variables
Common variables or local variables can be referenced (example: X#500, Y#1, Z##100, A#[#101], etc.).
(b) Four basic arithmetic rule
Four basic arithmetic rule (+, -, *, /) operations are available, and also the operation priority can be designated
using parentheses ( ) ([#500 + #501] * #502, etc.).
Precautions on high-speed high-accuracy control I
(1) Command G05.1Q0 after turning the tool radius compensation OFF. If G05.1Q0 is commanded without turning
the tool radius compensation OFF, a program error (P29) will occur.
(2) G05.1Q1; and G05.1Q0; are independent commands. If a sequence number other than "N" is commanded, the
program error (P33) will occur.
(3) The program error (P33) will occur if the G05.1 command block does not contain a Q command.
(4) If the high-speed high-accuracy control I command is issued in the high-speed high-accuracy control II modal, a
program error (P34) will occur.
627
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Precautions on high-speed high-accuracy control II
(1) G05P10000; and G05P0; are independent commands. If a sequence number other than "N" is commanded, the
program error (P33) will occur.
(2) The program error (P33) will occur if the G05 command block does not contain a P command.
(3) The fairing function is valid for the continuous linear command (G01). Fairing is not possible in the case below.
G02
G02
G01
(4) In a single block mode, operation stops at the end point of each block.
(5) When using the high-speed high-accuracy control II mode, set parameter "#1572 Cirorp/Bit0" to "1" to eliminate
the speed fluctuation at the seams between the arc and the straight line, or between arcs.
(6) A program error (P33) will occur if the geometric command is issued during the high-speed high-accuracy control
II.
(7) If the high-speed high-accuracy control II command is issued in the high-speed high-accuracy control I modal, a
program error (P34) will occur.
Precautions on high-speed high-accuracy control III
(1) If high-speed high-accuracy control III is commanded while its specifications are invalid, a program error (P39)
will occur.
(2) G05P20000; and G05P0; are independent commands. If a sequence number other than "N" is commanded, the
program error (P33) will occur.
(3) The program error (P33) will occur if the G05 command block does not contain a P command.
(4) A program error (P33) will occur if the geometric command is issued during high-speed high-accuracy control III.
(5) If the high-speed high-accuracy control III command is issued in the high-speed high-accuracy control I modal,
a program error (P34) will occur.
(6) If the high-speed high-accuracy control II mode is valid when high-speed high-accuracy control III is commanded,
follow the precautions on high-speed high-accuracy control II.
(7) High-speed high-accuracy control III can be enabled by commanding the G code from the machining program.
(a) High-speed high-accuracy control III command with the high-speed high-accuracy control III enable conditions satisfied
If all modal conditions in each G code group and each mode condition shown in "Fine segment capacity for
multi-part system" are satisfied when G05P20000; is commanded, the high-speed high-accuracy control III
mode is enabled, and "G05P20000" is displayed on the modal screen. If conditions are not satisfied after
G05P20000; has been commanded, the high-speed high-accuracy control III mode is enabled, but the fine
segment capacity is not guaranteed.
Machining program
High-speed high-accuracy
control III enable conditions
G05 P20000; ...High-speed high-accuracy control Enable conditions are satisIII command
fied.
Enable mode
G05 P20000
G41 XxYyDd; ...Tool radius compensation ON
Enable conditions are not sat- G05P20000 (*1)
isfied.
G40 XxYy; ...Tool radius compensation OFF
Enable conditions are satisfied.
G05 P20000
(*1) High-speed high-accuracy control III is enabled, but the fine segment capacity shown in "Fine segment capacity for multi-part system" is not guaranteed.
IB-1501278-D
628
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(b) High-speed high-accuracy control III command with no high-speed high-accuracy control III enable conditions satisfied
If the conditions shown in "Fine segment capacity for multi-part system" are not satisfied when G05P20000;
is commanded, the high-speed high-accuracy control II mode is enabled, and "G05P10000" is displayed on
the modal screen. In this case, even if all the conditions shown in "Fine segment capacity for multi-part system" are satisfied after G05P20000; has been commanded, the high-speed high-accuracy control III mode
is not enabled. To enable the high-speed high-accuracy control III mode, command G05P20000; again.
Machining program
High-speed high-accuracy
control III enable conditions
Enable mode
G41 XxYyDd; ...Tool radius compensation ON
Enable conditions are not satG05 P10000
G05 P20000; ...High-speed high-accuracy control isfied.
III command
G40 XxYy; ...Tool radius compensation OFF
629
Enable conditions are satisfied.
G05 P10000
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.4 Spline Interpolation ; G05.1 Q2/Q0
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 enables high-speed and high-accuracy machining to be achieved.
G64/G61.1
G61.2/G05.1Q2
There are two types of spline interpolation command format: G61.2 and G05.1Q2. Both formats can be used regardless of the parameter "#1267 ext03/bit0" setting if the spline interpolation specifications are available to the machine.
This section describes the G05.1Q2 command. For G61.2, refer to "17.6 High-accuracy Spline Interpolation ;
G61.2".
The G05.1Q2 command can be issued when the machining parameter "#8025 SPLINE ON" is set to "1" in the highspeed high-accuracy control function II mode (between G05 P10000 and G05 P0) The following explanation is limited to the spline function in the high-speed high-accuracy control function II mode.
Difference between G61.2 and G05.1Q2
Conditions under which the command can be issued and functions that are valid during a specific modal differ between G61.2 and G05.1Q2.
Functions that become valid
Conditions under
Command format which the command Spline interpolation
Fairing
High-accuracy concan be issued
trol
(*2)
G61.2
None
G05.1 Q2
When the system is Valid
in the high-speed
high-accuracy control
II mode
and
"#8025 SPLINE ON"
is set to "1" (*1)
Valid
(*3)
(*4)
Valid
Valid
Can be turned ON
and OFF using
"#8033 Fairing ON"
Valid
(Because the system
is in the high-speed
high-accuracy control
II mode)
(*1) The validity of the high-speed high-accuracy control II function depends on the MTB specifications.
A program error (P34) will occur if the conditions under which the command can be issued are not satisfied.
(*2) The spline interpolation smoothly connects a sequence of points commanded by program. As a result, the
glossy machining surface can be obtained, and the machining time can be reduced because the frequency of
the corner deceleration decreases compared with conventional linear interpolation.
(*3) Super-fine blocks often included in the data generated with CAM are deleted. Such a super-fine block may
scratch the machining surface, and increase machining time because of acceleration/deceleration. This function
prevents these problems.
IB-1501278-D
630
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(*4) The following shows the functions and their operations included in the high-accuracy control described in this
section.
Functions of high-accuracy
control
Details
Acceleration/deceleration before The process is the same as that performed in the high-accuracy
interpolation (Constant inclination control mode (G61.1/G08P1).
acceleration/deceleration, S-pattern filter)
Optimum corner deceleration
As is done in the high-accuracy control mode (G61.1/G08P1), optimum corner deceleration is performed at points where the angle
between blocks exceeds the spline cancel angle or points at the
boundary between G01 and G00, because spline interpolation is
temporarily canceled to make corners.
Arc speed clamp (For spline interpolation, curvature speed
clamp)
Clamp speed is calculated based on the spline curvature radius.
The process for arc blocks is the same as that performed in the
high-accuracy control mode (G61.1/G08P1).
Curvature radius speed clamp
Clamp speed is calculated based on the spline curvature radius.
Arc entrance/exit deceleration
control
The process for arc blocks is the same as that performed in the
high-accuracy control mode (G61.1/G08P1).
SSS Control
Optimum speed control is performed so that the process is not affected by steps or reverse runs.
Feed forward control
The process is the same as that performed in the high-accuracy
control mode (G61.1/G08P1).
The validity of the SSS control function depends on the MTB specifications.
Command format
Spline interpolation mode ON
G05.1 Q2 X0 Y0 Z0 ;
Spline interpolation mode OFF
G05.1 Q0 ;
631
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Detailed description
Temporary cancellation of spline interpolation
Normally, once the spline function is activated, one curve is generated by smoothly connecting all points until it is
canceled. However, if a corner edge should be created, or if the segment length is long and spline interpolation
should not to be carried out, the function can be canceled temporarily with the parameters.
(1) Cancel angle
If the angle θ of two consecutive blocks exceeds the value set in parameter "#8026 CANCEL ANG.", the spline
function will be temporarily canceled, and optimum corner deceleration will be applied. When this parameter is
not set (=0), the spline interpolation will be constantly applied. The corner deceleration angle of the high-accuracy control function is valid during the temporary cancellation, and the optimum corner deceleration will be applied.
(Example 1) Cancel angle = 60°
Programmed command
Spline interpolation path
(Example 2) Cancel angle = 0°
Programmed command
Spline interpolation path
<Note>
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.".
If "CANCEL ANG." >= "DCC ANGLE", the axis will decelerate at all corners where the angle is larger than
the "CANCEL ANG." .
If the "CANCEL ANG." < "DCC ANGLE", corner deceleration will not be applied if the corner angle is equal
to or less than "DCC ANGLE" even if the spline interpolation is canceled.
IB-1501278-D
632
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(2) Fine segment length
If the movement amount in a block is longer than the parameter "#8030 MINUTE LENGS", the spline function
will be temporarily canceled, and the linear interpolation will be executed. When this parameter is not set (= 0),
the fine segment length will be 1mm.
When the segment length in a block > fine segment length (#8030 MINUTE LENGS), the linear interpolation will
be executed.
Linear interpolation
If the fine segment length is set to "-1", the spline interpolation will not be canceled according to the block length.
(3) When a block without movement exists
If a block without movement exists during the spline function is operating, the spline interpolation will be canceled
temporarily. Note that blocks containing only ";" will not be viewed as a block without movement.
Block without movement
(4) When a block markedly longer than other blocks exists in spline function
Given that the i-th block length is Li in the spline interpolation mode and if the following condition is met, the block
will be interpreted as a linear section, and the spline interpolation mode will be temporarily canceled:
Li > Li-1 x 8 or Li > Li+1 x 8
However, if the parameter "#8030 MINUTE LENGS" is set to "-1", the mode will not be canceled.
Li > Li-1 × 8 or Li > Li + 1 × 8
Li - 1
Li+1
633
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Spline interpolation curve shape correction
Normally, once the spline function is enabled, one curve is generated by connecting all points smoothly until the
function is canceled. But if the spline curve shape should be corrected, the spline curve shape can be corrected with
the parameters.
(1) Chord error of block containing inflection point
When changing the CAD curve data into fine segments with the CAM, normally, the tolerance (chord error) of
the curve is approximated in segments that are approx. 10μm. If there is an inflection point in the curve, the
length of the block containing the inflection point may lengthen. (Because the tolerance is applied at both ends
near the inflection point.) If the block lengths with this block and the previous and subsequent blocks are unbalanced, the spline curve in this block may have a large error in respect to the original curve.
At sections where the tolerance (chord error) of the fine segment block and spline curve in a block containing
this type of inflection point, if the chord error in the corresponding section is larger than the value set in parameter
(#8027 Toler-1), the spline curve shape is automatically corrected so that the error is within the designated value.
However, if the maximum chord error of the corresponding section is more than five times larger than the parameter "#8027" setting value, the spline function will be temporarily canceled.
The curve is corrected only in the corresponding block.
The corrections are carried out under the following conditions for each block in the spline interpolation mode.
There is an inflection point in the spline curve, and
the maximum error of the spline curve and linear block is larger than parameter "#8027".
(Distance between P3-P4 in Fig. 1)
When the above conditions are satisfied, the spline curve will be corrected so that the error between P3-P4 in
Fig. 2 is within the designated value.
Tolerance (chord error)
Spline curve
P2
P1
P3
Inflection point
P0
Fine segment
P7
P4
P6
P5
Fig. 1 Spline curve before error correction
IB-1501278-D
634
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Chord error designated in the parameter "Toler"
P3
Spline curve before correction
Spline curve after correction
P4
Fig. 2 Spline curve after error correction
In parameter "#8027 Toler-1", set the tolerance when developed into fine segments with the CAM. Set a smaller
value if the expansion (indentation) is apparent due to the relationship with the adjacent cutting paths.
(2) Chord error of block not containing inflection point
Even in blocks that do not contain an inflection point, if the block lengths are not matched, the tolerance of the
spline curve may increase. The curve may also expand due to the effect of relatively short blocks.
At sections where the tolerance (chord error) between the fine segment block and spline curve in a block without
an inflection point becomes large, if the chord error in the corresponding section is larger than the value set in
parameter (#8028 Toler-2), the spline curve shape is automatically corrected so that the error is within the designated value. However, if the maximum chord error of the corresponding section is more than five times larger
than the parameter "#8028" setting value, the spline function will be temporarily canceled.
The curve is corrected only in the corresponding block.
The corrections are carried out under the following conditions for each block in the spline interpolation mode.
There is no inflection point in the spline curve, and
the maximum error of the spline curve and linear block is larger than parameter "#8028".
(Distance between P2-P3 in Fig. 3)
When the above conditions are satisfied, the spline curve will be corrected so that the error between P2-P3 in
Fig. 4 is within the designated value.
Spline curve
Fine segment
P2
P3
Tolerance (chord error)
P1
P4
P5
Fig. 3 Spline curve before error correction
635
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Chord error designated in the parameter
"Toler-2"
Spline curve before correction
P2
P3
Spline curve after correction
P1
P4
P5
Fig. 4 Spline curve after error correction
In parameter "Toler-2", set the tolerance when developed into fine segments with the CAM.
Curvature speed clamp
The commanded speed F for the spline function during a segment linear arc will be the speed commanded in the
previously set modal. However, if the axis is fed with the same speed, excessive acceleration may occur at the sections where the curvature is large (where curvature radius is small) as shown below. Thus, the speed clamp will be
applied.
(a)
F
(c)
(b)
F
(d)
(a) Curvature small
(b) Acceleration small
(c) Acceleration large
(d) Curvature large
F: Feed command speed (mm/min)
Acceleration and curvature
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 for pre-interpolation acceleration/deceleration,
which is calculated with the parameters, is not exceeded.
The clamp speed is set for each block, and the smaller of the curvature radius Rs at the curve block start point and
the curvature radius Re at the end point of the block will be used as the main curvature radius R. Using this main
curvature radius R, the clamp speed F' will be calculated with expression (1).
The smaller of this clamp speed F' and the commanded speed F will be incorporated for the actual feedrate.
This allows cutting with an adequate feedrate corresponding the curvature radius along the entire curve.
F'
Rs
Rs : Block start point curvature radius (mm)
Re : Block end point curvature radius (mm)
R : Block main curvature radius (mm) (smaller one of Rs and Re)
∆V : Tolerable value of pre-interpolation acceleration/deceleration
F : Clamp speed (mm/min)
Re
F' = R
V=
IB-1501278-D
V 60 1000
100- Ks
100
(1)
G1bF(mm/min)
G1btL(ms)
636
G1bF : Target pre-interpolation acceleration/deceleration
G1btL : Acceleration/deceleration time to reach the target speed
Ks : Accuracy coefficient
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Program example
:
G91;
G05 P10000 ;
High-speed high-accuracy control function II mode ON
:
G05.1 Q2 X0 Y0 Z0;
Spline interpolation mode ON
G01 X1000 Z-300 F1000;
X1000 Z-200 ;
Y1000;
X-1000 Z-50 ;
X-1000 Z-300 ;
G05.1 Q0 ;
Spline interpolation mode OFF
:
G05 P0 ;
High-speed high-accuracy control function II mode OFF
:
(1) The spline function carries out spline interpolation when the following conditions are all satisfied. If the following
conditions are not satisfied, the spline function will be canceled once, and the judgment whether to carry out new
spline from the next block will be made.
It is the movement only of three axes set to the basic axes I, J and K.
When the block length is smaller than the value of the machining parameter "#8030 MINUTE LENGS".
When the movement amount is not 0.
When one of the following modes is entered.
G01: Linear interpolation, G40: Tool compensation cancel, G64: Cutting mode,
G80: Fixed cycle cancel, G94: Feed per minute
When only an axis commanded with G05.1Q2 is commanded.
A single block is not being executed.
(2) Graphic check will draw the shape of when the spline interpolation OFF.
(3) During the spline function mode, the command to the axis must be issued after G05.1 Q2 in the same block. For
example, if the X axis and Y axis are to be commanded in the spline function mode, command "G05.1 Q2 X0
Y0;". The command block containing an axis not designated with this command (G05.1 Q2 X0 Y0) in the spline
function mode will carry out linear interpolation instead of spline interpolation.
(4) If G05.1 Q2 is commanded when not in the high-speed high-accuracy control function II mode (between G05
P10000 and G05 P0), the program error (P34) will occur.
(5) If the machining parameter "#8025 SPLINE ON" is "0" in the high-speed high-accuracy control function II mode
(between G05 P10000 and G05 P0) and G05.1 Q2 is commanded, the program error (P34) will occur.
(6) Up to three axes set as the basic axes I, J and K can be commanded for the spline function.
Relationship with other functions
Refer to Relationship with other functions in "17.2 High-accuracy Control".
637
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Precautions
(1) If this function are not provided and "G05.1 Q2" is commanded, the program error (P39) will occur.
(2) Even if "-1" is set for parameter "#8030 MINUTE LENGS", the spline function will be temporarily canceled by the
cancel conditions (cancel angle, non-movement block, excessive chord error, etc.) other than the block length.
(3) Command "G05.1 Q2" and "G05.1 Q0" commands in independent blocks.
A program error (P33) will occur if not commanded in independent blocks.
(4) The program error (P33) will occur if the G05.1 command block does not contain a Q command.
(5) A program error (P34) will occur if the number of axis in the part system does not exceed 3.
IB-1501278-D
638
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.5 Spline Interpolation 2; G61.4
Function and purpose
This function automatically generates a curve that smoothly passes through within the tolerable error range. The
tool is able to move along the curve, providing smooth machining.
This function allows the machine to operate with the optimum tool path and speed, simply by specifying the tolerance, so an operator can easily attain high quality machining.
This function also requires the tolerance control specifications because it can only be used under tolerance control.
The tolerance refers to the allowable error amount between the path commanded in the machining program and the
path output by NC.
Tolerance
Tool path
Commanded
position
This function is enabled when the following three conditions are satisfied:
(1) Tolerance control is valid.
(2) The specifications of spline interpolation 2 are valid.
(3) "G61.4" is commanded from the machining program.
If G61.4 is commanded while tolerance control is invalid, a program error (P34) will occur.
If G61.4 is commanded while the specifications of spline interpolation 2 are not defined, a program error (P39) will
occur.
Command format
Spline interpolation 2 mode ON
G61.4 (,K__);
, K: Tolerance (mm)
Spline interpolation 2 mode with command G61.4 will be cancelled by designating any one of G code group 13.
G61 (Exact stop check mode)
G61.1 (High-accuracy control mode)
G61.2 (Spline interpolation command)
G62 (Automatic corner override)
G63 (Tapping mode)
G64 (Cutting mode)
G08P1 (High-accuracy control mode start)
G08P0 (High-accuracy control mode end)
639
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Detailed description
Tolerance specification method
Designate the tolerance using one of the following methods.
Designate the tolerance using the parameter "#2659 tolerance". When the setting value is "0", this function runs
with "0.01(mm)".
 Designate the numeric value following the ",K" address in the G61.4 command.
(a) The range of the command value is 0.000 to 100.000 (mm). If a value exceeding the range is commanded,
a program error (P35) will occur.
(b) The tolerance designated by ",K" is applied to all axes in the part system.
(c) When "0" is set to ",K" or ",K" is omitted, the program runs using the setting value of the parameter "#2659
tolerance" as the tolerance.
(d) The tolerance designated by ",K" is not held after reset. Therefore, if ",K" is not designated in the G61.4 command after reset, the setting value of the parameter "#2659 tolerance" is enabled.
[Program example]
:
G91 ;
G61.4 ,K0.02;
Designate tolerance 0.02 (mm).
G01 X0.1 Z0.1 F1000 ;
X0.1 Z-0.2 ;
Y0.1 ;
Tolerance: 0.02 (mm)
G61.4 ,K0;
Designate the tolerance 0 [mm].
X-0.1 Z-0.05 ;
X-0.1 Z-0.3 ;
Tolerance: Follows parameter "#2659 tolerance".
G64 ;
:
Details of Operation
Basic operations
Spline interpolation 2 interpolates a command point row of the machining program with a smooth curve. The following figures show the command points and paths.
Program command point
Program command path
Interpolated path
IB-1501278-D
640
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Since the path is interpolated with a smooth curve, the interpolated path is different from that of the commanded
path of the machining program. Set the tolerance between the interpolated path and commanded path in the parameter "#2659 tolerance".
[For curve]
[For corner]
Tolerance amount
Tolerance amount
The interpolated path varies depending on the tolerance as shown below.
For curve
For corner
Tolerance: High
Tolerance: Low
641
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Temporary cancel
While spline interpolation 2 is enabled, it may be canceled temporarily depending on commands.
If spline interpolation 2 is canceled temporarily, the axis moves to the commanded position. After this, when a temporary cancel cause is removed, spline interpolation 2 restarts.
The temporary cancel conditions are as follows.
(1) The group 1 modal is not G01, G02, or G03.
(2) The block has a G code other than G90, G91, G01, G02, or G03 commanded.
(3) The block has M (miscellaneous function command value), S (spindle command rotation speed), T (tool command value), or B (2nd miscellaneous function command value) designated.
(4) Under single block operation (For details, refer to "Single Block Operation".)
(5) Modal in which SSS control is disabled temporarily (Modal shown below)
NURBS interpolation
Polar coordinate interpolation
Cylindrical interpolation
User macro interruption enable (M96)
Feed per revolution (synchronous feed)
Inverse time feed
Constant surface speed control
Fixed cycle
3-dimensional coordinate conversion
Hypothetical axis interpolation
Automatic tool length measurement
Tool length compensation along the tool axis
Normal line control
Unidirectional positioning
Exponential function interpolation
3-dimensional circular interpolation
Path without temporary cancel
Block without movement by temporary cancel
Path without temporary cancel
Block with movement by temporary cancel
IB-1501278-D
642
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Feed hold
Feed hold allows a deceleration stop in the middle of a curve. However, no interrupt operation can be performed. If
the mode is switched to the manual mode or MDI mode during the feed hold, an operation error (M01 0180) will
occur and the interrupt operation will be prohibited.
After the program has been stopped by the feed hold, the movement on the curve can be restarted by the cycle start.
The tool path specified just after the program has restarted is different from that specified when the program is not
stopped by the feed hold, and the tool passes an area near the program-commanded shape.
Program commanded shape
NC commanded shape
(Not stopped by the feed hold)
NC commanded shape
(Stopped by the feed hold)
Single block operation
During single block operation, spline interpolation 2 is canceled temporarily. In this period, linear interpolation is carried out at the commanded position. If single block is set to ON during continuous operation, the currently processed
block stops on a curve, and the next and subsequent blocks stop on the commanded points.
(c) Block stop at commanded position
(a) Sets the single block signal ON.
(d) Sets the single block signal OFF.
(b) Block stop on curve
(e) Restarts spline interpolation 2.
643
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Relationship with other functions
Smooth fairing
Spline interpolation 2 and smooth fairing can be used together.
A spline interpolation 2 curve is generated along the points that are compensated by smooth fairing.
Compensation by smooth fairing
Smooth fairing OFF
Smooth fairing ON
Tool radius compensation
Spline interpolation 2 and tool radius compensation can be combined. A spline curve is generated along the path
for which the radius is compensated.
High-speed high-accuracy control III
Spline interpolation 2 and high-speed high-accuracy control III can be combined. However, the fine segment processing capacity is limited.
Spline interpolation
Spline interpolation 2 (G61.4) and spline interpolation (G61.2/G05.1Q2) cannot be combined.
The following differences are between spline interpolation 2 (G61.4) and spline interpolation (G61.2/G05.1Q2).
Feature of spline curve
Parameter for adjusting the curve shape
Spline interpolation 2
(G61.4)
Passes near the commanded points.
(*1)
#2659 tolerance
Spline interpolation
(G61.2/G05.1Q2)
Passes on the commanded points.
#8026 CANCEL ANG.
#8027 Toler-1
#8028 Toler-2
#8029 FairingL
#8030 MINUTE LENGS
#8033 Fairing ON
(*1) The axis passes through the commanded points at the start and end points.
The following shows differences between the spline interpolation 2 path and spline interpolation path.
Spline interpolation 2
IB-1501278-D
Spline interpolation
644
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Others
G code
Function name
When the G codes shown on When spline interpolation 2 is enthe left are commanded while abled while the functions shown on
spline interpolation 2 is enthe left are enabled
abled
G43.4
G43.5
Tool center point control Program error (P941)
Program error (P942)
G68.2
G68.3
Inclined surface machin- Program error (P953)
ing command
Program error (P951)
G54.4
P1 to P7
Workpiece installation
error compensation
Program error (P545)
Program error (P546)
Precautions
(1) The graphic check drawing is not carried out during spline interpolation 2 (the period from G61.4 to the cancel
command).
(2) PLC interrupt is not available during spline interpolation 2. If an PLC interrupt is performed during spline interpolation 2, the operation error (M01 0180) will occur.
645
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.6 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 enables high-speed and high-accuracy machining to be achieved.
This function has two functions; fairing function to delete unnecessary fine blocks, and spline interpolation function
to connect smoothly a sequence of points commanded by the program.
The high-accuracy control function G61.1 is also valid.
The high-accuracy spline Interpolation is valid only for the first part system.
G61.2 cannot be commanded in the 2nd part system even when the multi-part system simultaneous high-accuracy
specifications are available.
There are two types of spline interpolation command format: G61.2 and G05.1Q2. Both formats can be used regardless of the parameter "#1267 ext03/bit0" setting if the spline interpolation specifications are available to the machine.
This section describes the G61.2 command. For information about differences between G05.1Q2 and G61.2 or features of spline interpolation, refer to "Spline Interpolation ; G05.1Q2".
Command format
G61.2 X__ Y__ Z__ F__ ; or G61.2 ; ... Spline mode ON
X
X axis end point coordinate
Y
Y axis end point coordinate
Z
Z axis end point coordinate
F
Feedrate
The "G61.2" high-accuracy spline interpolation mode is canceled when any of the functions of G code group 13 is
commanded.
Detailed description
(1) Fairing
Refer to "Additional functions when high-speed high-accuracy control II mode is ON" in "High-speed high-accuracy control".
(2) Spline interpolation
Refer to "Detailed description" of "Spline Interpolation".
IB-1501278-D
646
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Program example
:
G91 ;
G61.2 ;
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 ;
:
...... Spline interpolation mode ON
...... Spline interpolation mode OFF
(1) The spline interpolation is available when the following conditions are all satisfied. If the following conditions are
not satisfied, the spline function will be canceled once, and the judgment whether to carry out new spline from
the next block will be made.
- It is the movement only of three axes set to the basic axes I, J and K.
- When the block length is smaller than the value of the machining parameter "#8030 MINUTE LENGS".
- When the movement amount is not 0.
- The group 1 command is G01 (linear interpolation).
- Operation in fixed cycle modal
- It is not during hypothetical axis interpolation mode.
- It is not during 3-dimensional coordinate conversion modal.
- It is not in a single block mode.
(2) The spline function is a modal command of group 13. This function is valid from G61.2 command block.
(3) The spline function is canceled by group 13 commands (G61 to G64).
(4) The spline function is canceled by NC reset 2, reset & rewind, NC reset 1 (the setting which does not hold modal
when NC is reset) or power ON/OFF.
Precautions
(1) If this function are not provided and G61.2 is commanded, the program error (P39) will occur.
(2) Even if "-1" is set for parameter "#8030 MINUTE LENGS", the spline function will be temporarily canceled by the
cancel conditions (cancel angle, non-movement block, excessive chord error, etc.) other than the block length.
(3) Graphic check will draw the shape of when the spline interpolation OFF.
(4) A program error (P34) will occur if the number of axis in the part system does not exceed 3.
647
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
17.7 Machining Condition Selection I ; G120.1,G121
Function and purpose
After initializing the machining condition parameter groups with the machining condition selection I function, the machining condition parameter groups can be switched by G code command. Switching is also possible on the machining condition selection screen. In that case, however, the machining conditions selected on the screen are applied
to all part systems.
Command format
G120.1 P_ Q_ ; ... Machining condition selection I
P
Machining purpose
0: Reference parameter
1: Usage 1
2: Usage 2
3: Usage 3
Q
Condition
1: Condition 1
2: Condition 2
3: Condition 3
When omitted, Q1 will be applied
G121 ; ... Machining condition selection I cancel
Detailed description
(1) G120.1 and G121 commands are unmodal commands of G code group 0.
(2) Switching of the machining condition parameter group using the G120.1 or G121 command is only applied to the
commanded part system.
(3) Command G120.1 and G121 in an independent block. If not, a program error (P33) will occur.
(4) Address P in G120.1 command cannot be omitted. If omitted, a program error (P33) will occur.
(5) Address Q in G120.1 command can be omitted. If omitted, it will be handled as "Q1 (condition 1)" is commanded.
(6) When address P and Q in G120.1 command is commanded with a decimal point, the digit after the decimal point
is ignored.
(7) If other than "0 to 3" is set to address P in G120.1 command or other than "1 to 3" is set to address Q, a program
error (P35) will occur.
(8) When address P is set to "0" and address Q is omitted or set between "1" and "3" in G120.1 command, it will be
switched to the reference parameter.
(9) It will be switched to the machining condition parameter group selected in "Machining cond" screen by the G121
command.
(10) When the emergency stop and reset (reset 1, reset 2, and reset & rewind) are performed while running the machining program whose machining condition parameter group is switched by G120.1 command, it will be
switched to the selected condition parameter group machining in "Machining cond" screen.
(11) Because the parameters are switched after being decelerated by G120.1 and G121 commands, the workpiece
may be damaged. Make sure to keep the tool away from the workpiece when commanding G120.1 and G121.
(12) When the machining condition parameter group is switched by G120.1 command more than once, the parameter group commanded last becomes valid.
IB-1501278-D
648
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(13) It is switched to the selected machining condition parameter group in the "Machining cond" screen by program
end (M02 and M30).
(14) If G120.1 and G121 are commanded without initializing the machining condition parameter group, a program
error (P128) will occur.
(15) If the restart search from the block of the G120.1 or G121 command is attempted, a program error (P49) will
occur.
Program example
"Machining cond" (setting) screen
The displayed machining condition parameter group is switched depending on whether tolerance control is enabled
or disabled.
High-speed
setting
(for rough cutting
machining)
649
Standard setting
(for medium
finishing
machining)
High-accuracy
setting
(for finishing
machining)
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
(1) When "machine usage 1" and "condition 1" from the machining condition parameter group are selected in "Machining cond" (selecting) screen before running the program.
N1 G91; G28 Z0;
Operate with the machining
condition
parameter group
N2 G28; X0 Y0;
(machining usage 1/condition
1)
N3 G90 G54 G00 X2. Y2.;
N4 G43 H1 Z50.;
N5 G90 G01 Z-5. F3000;
N6 M3 S10000;
N7 F2000;
N8 G05 P10000;
N9 G01; X2.099 Y1.99;
N10 X2.199 Y1.990;
:
N1499 G05 P0;
N1500 G91; G28 Z0;
N1501 G28; X0 Y0;
N1502 M5;
N1503 G120.1 P1 Q3;
N1504 G90 G54 G00 X2.
Y2.;
N1505 G43 H1 Z50.;
... The machining condition parameter
groups are switched.
Operate with the machining condition parameter group (machining
usage 1/condition 3)
N1506 G90 G01 Z-8.
F3000;
N1507 M3 S10000;
N1508 F1200;
N1509 G05 P10000;
N1510 G01; X2.099
Y1.997;
N1511 X2.199 Y1.990;
:
N2999 G05 P0;
N3000 G91; G28 Z0;
N3001 G28; X0 Y0;
N3002 M5;
N3003 M30;
IB-1501278-D
... Return to the selected machining
condition parameter group in "Machining cond" screen at the program
end.
650
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
Relationship with other functions
(1) G code modal that cause a program error when commanding G120.1 and G121 are listed below.
G Code
Function
Program error when G120.1 and
G121 are commanded
G02.3, G03.3
Exponential interpolation
P128
G06.2
NURBS interpolation
P32
G07.1
Cylindrical interpolation
P128
G12.1
Polar coordinate interpolation
P128
G10
Parameter input by program
P421
Tool compensation input by program
G33
Thread Cutting
G38
Tool radius compensation (vector P128
designation)
P128
G39
Tool radius compensation (corner P128
arc)
G41, G42
Tool radius compensation
P128
3-dimensional tool radius compensation
G41.1/G151
Normal line control Left
P128
G42.1/G152
Normal line control Right
P128
G43
Tool length compensation (+)
P128
G44
Tool length compensation (-)
P128
G43.1
Tool length compensation along
the tool axis
P128
G43.4, G43.5
Tool center point control
P942
G66, G66.1
User macro (modal call A, B)
P128
G68.2, G68.3
Inclined surface machining
P951
G73/G74/G76/G81/G82/G83/
G84/G85/G86/G87/G88/G89
Fixed cycle
P33(When G120.1 command is issued)
P128(When G121 command is issued)
Precautions
(1) Because the parameters are switched after being decelerated once G120.1 or G121 is commanded, the workpiece may be damaged. Make sure to keep the tool away from the workpiece when commanding G120.1 and
G121.
(2) For the parameters "#8033 Fairing ON" and "#8090 SSS ON", the switched machining condition parameter group
is effective only after it has been switched on the machining condition selection screen.
(3) It is switched to the reference parameter by turning the power ON again.
(4) The machining condition parameter cannot be switched on the "Machining cond" screen and cannot be set on
the "Machining cond" screen during automatic operation.
(5) When the machining condition parameter group is switched by the G120.1 command in the machining program
during displaying the "Machining cond" screen, the selected machining condition parameter being displayed will
not be switched unless the display screen is transited to the other screen once.
(6) When G120.1 and G121 are commanded, parameters are switched when smoothing for NC axes in all part systems become "0".
(7) The machining condition parameter group neither set the parameter setting from the program by G10 command
nor read the parameters by system variables (from #100000).
(8) When the machining condition parameter group is switched, the same values are used for all NC axes which
belong to the switched part system to the parameter "#2010 Feed forward gain" and "#2659 Tolerance".
651
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
17 High-speed High-accuracy Control
IB-1501278-D
652
18
Advanced Machining Control
653
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18Advanced Machining Control
18.1 Tool Position Compensation; G43.7/G49
Function and purpose
The position compensation of a turning tool is executed when turning is performed in a machine of machining center
system. Use of the tool position compensation enables the three base axes (X, Y and Z axes) to be compensated
from the tool base position (base point).
To set the compensation amount of the three base axes, switch the tool compensation display type to tool compensation type III. The validity of this parameter depends on the MTB specifications (parameter "#1046 T-ofs disp type").
Y axis tool compensation amount
(base axis J)
X axis tool compensation
amount
(base axis I)
Z(+)
Z axis tool
compensation
amount
(base axis K)
Y(+)
Base position (base point)
X(+)
The tool position compensation function is valid for machining center compensation type II. This setting depends on
the MTB specifications (parameter "#1037 cmdtyp").
Command format
Tool position compensation start
G43.7 H__;
H
Compensation No. (H0 cancels tool position compensation.)
Tool position compensation cancel
G49;
The valid range of the compensation No. will differ according to the specifications (No. of compensation sets).
If the commanded compensation No. exceeds the specification range, the program error (P170) will occur.
The H address can be omitted. If omitted, the previously specified compensation No. is used.
Note
(1) Do not omit the H address. If the H address is omitted, an unintended operation may be performed by the H
address that is input using a command other than G43.7.
(2) Even if the H command is issued independently, the compensation amount corresponding to the compensation
No. does not become valid. The compensation amount designated by the previous command is applied continuously.
(3) If G43.7 is commanded with a type other than tool compensation type II of the machining center, the program
error (P39) will occur.
IB-1501278-D
654
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Detailed description
Three base axes
The tool position compensation function compensates the tool position for the axis specified in the parameter using
the offset specified by the compensation No. The three base axes are determined by the following parameters.
#1026 base_I (Base axis I)
#1027 base_J (Base axis J)
#1028 base_K (Base axis K)
Differences between tool length compensation and tool position compensation
[Tool length compensation (G43/G44)]
Tool length compensation amount
Z
[Tool position compensation (G43.7)]
X axis direction compensation
amount
Y axis direction compensation amount
Base position
(Base point)
Z(+)
X
Y(+)
X(+)
The H address is used to compensate only
one axis.
Z axis direction compensation amount
The H address is used to compensate three axis directions.
655
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Start-up and cancel operations
When G43.7 is commanded in the program, tool position compensation is enabled, and the axis moves using the
coordinate position, which is obtained by adding the compensation amount specified by the compensation No. to
the end point coordinates specified in the movement command of the block, as the end point.
This process is executed regardless of the absolute value command or incremental value command. Then, the compensation amount is added to the end point coordinates specified in the program until tool position compensation is
canceled with a G49 command.
Even except when the power is turned ON, G49 mode is set after M02 and M30 have been executed or after resetting has been performed.
When no movement command is included in the same block as for G43.7 or G49, the operation depends on the
MTB specifications (parameter "#1247 set19/bit0" (Movement by tool length offset)). For details, refer to "Movement
by tool length compensation".
For absolute command
R
N1 G91 G28 X0 Y0 Z0 ;
N2 G00 G90 ;
N3 G43.7 X-20. Y0. Z-40. H01 ;
N4 Z-80.
N5 G01 X-50. F500 ;
N3
N4
For incremental command
N1 G91 G28 X0 Y0 Z0 ;
N2 G00 G91 ;
N3 G43.7 X-20. Y0. Z-40. H01 ;
N4 Z-40.
N5 G01 X-30. F500 ;
N5
Workpiece
Program path
Compensation No.
(1) The compensation No. commanded in the same block as G43.7 will be valid for the following modals.
G43.7 Hh1 ;
:
Used as the tool compensation amount of (lh1).
G49;
:
Tool length compensation is canceled.
G43.7;
:
Used again as the tool compensation amount of (lh1).
(2) When G43.7 is further commanded in G43.7 mode, the compensation is applied by the tool compensation
amount commanded later.
G43.7 Hh1 ;
:
Used as the tool compensation amount of (lh1).
G43.7 Hh2 ;
:
Used as the tool compensation amount of (lh2).
(3) When the H command is issued independently during G43.7 modal, the compensation amount in modal mode
is applied continuously.
IB-1501278-D
G43.7 Hh1 ;
:
Used as the tool compensation amount of (lh1).
G43.7 Hh2 ;
:
Used as the tool compensation amount of (lh2).
Hh3 ;
:
The compensation amount designated in (lh2) is applied continuously.
656
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Tool compensation cancel at reference position return operation
If the reference position return operation is performed, the tool length compensation amount is canceled when the
reference position return is completed. However, for the manual high-speed reference position return, the axis can
be returned to the coordinates that are shifted by the tool length compensation amount again when the axis is moved
after it has reached the reference position, using the parameter. (Parameter "#8122 Keep G43 MDL M-REF")
Automatic reference position return (G28/G30)
When the axis reached
the reference position:
Manual reference position return
Dog type
High-speed type
Cancel
Cancel
Cancel
When the axis moves af- Cancel
ter the above:
Cancel
#8122 = 0: Cancel
#8122 = 1: Reactivates tool length
compensation amount that is applied before the axis reaches the
reference position.
(Example 1) Automatic reference position return operation
G43.7 Xx1 Zz1 Hh1 ;
:
G28 Xx2 Zz2 ;
Canceled when reference position is reached. (Same as when G49 is commanded.)
G01 Xx3 Zz3 Ff3 ;
:
Performs the same operation as that in G49 mode.
(Example 2) Manual dog-type reference position return operation (The same operation is also performed when
"#8122" is set to "0" and manual high-speed reference position return is valid.)
G43.7 Xx1 Zz1 Hh1 ;
:
(Interrupted by manual Canceled when reference position is reached.
dog-type reference position return.)
G01 Xx2 Zz2 Ff2 ;
:
Performs the same operation as that in G49 mode.
(Example 3) When "#8122" is set to "1" and manual high-speed reference position return is valid:
G43.7 Xx1 Zz1 Hh1 ;
:
(Interrupted by manual Canceled when reference position is reached.
high-speed reference
position return.)
G01 Xx2 Zz2 Ff2 ;
:
The end point is set for the coordinates that are shifted by the compensation
amount specified by compensation No. h1.
The movement is commanded to the G53 machine coordinate system, the axis will move to the machine position
when the tool compensation amount is canceled. If the movement command is issued first after G53, the axis returns
to the coordinates that are shifted by the tool length compensation amount.
657
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Movement by tool length compensation
If no movement command is included in the same block as for the G43.7 or G49 command, whether the axis moves
to the current position by the specified compensation amount when the G43.7 command block is executed is determined depending on the MTB specifications (parameter "#1247 set19/bit0").
G43.7/G49
Independent
command
Not moved.
(#1247 set19/bit0=1)
:
G00 Xx Yy Zz ;
G43.7 H1 ; (*1)
:
G49 ; (*2)
:
Moved.
(#1247 set19/bit0=0)
(*1)
(*2)
:
G00 Xx Yy Zz ;
G43.7 H1 ; (*3)
:
G49 ; (*4)
:
(*3)
(*4)
(*1) Not moved.
(*3) Movement by compensation amount (+)
(*2) Not moved.
(*4) Movement by compensation amount (-)
If tool position compensation is commanded in- If tool position compensation is commanded independently, the axis does not move, but the dependently, the axis moves by the tool length
tool compensation amount is applied to the pro- compensation amount.
gram position counter.
Movement
command included
:
G00 Xx Yy Zz ;
G43.7 H1 X10.; (*3)
:
G49 X5. ; (*4)
:
(*3)
(*4)
(*3) Movement by compensation amount (+)
(*4) Movement by compensation amount (-)
If the tool position compensation and axis movement command are issued in the same block,
the axis moves to the end point that is obtained by adding the tool length compensation amount
to the movement command.
IB-1501278-D
658
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Relationship with other functions
Relationship between tool position compensation command and G code function
Column A
: Operation to be performed when the tool position compensation command (G43.7/G49) and another G command are issued to the same block
Column B
:Operation to be performed when another command is issued in G43.7 mode
Column C
: Operation to be performed when G43.7 is commanded in non-G43.7 mode
○
: Can be executed.
-
: The G43.7 command is ignored.
P(xx)
: The program error will occur.
Modal
group
0/1
1
G code
G04
Function
A
Dwell
P45 (*1)
B
○
C
○
G05
High-speed high-accuracy II
P33
○
○
G05.1
High-speed high-accuracy I
P34
○
○
G07
Hypothetical axis interpolation
P33
○
○
G08
High-accuracy control
P33
○
○
G10
Parameter input by program / Compensation data P45 (*1)
input by program
○
○
G11
Parameter input by program cancel
-
○
○
G12/G13
Circular cut
P32 (H command only)
○
○
G27
Reference position check
P45 (*1)
○ (*5)
○
G28
Reference position return
P45 (*1)
○
○
G29
Start position return
P45 (*1)
○
○
G30
2nd to 4th reference position return
P45 (*1)
○
○
G30.1 - G30.6
Tool change position return
-
○
○
G37
Automatic tool length measurement
P801
P801
○
G52
Local coordinate system setting
P45 (*1)
○
○
G53
Machine coordinate system selection
P45 (*1)
○
○
G53.1/G53.6
Tool Axis Direction Control
P953
○
○
G65
User macro simple call
P231 (*1)
○
○
G115/G116
Start point timing synchronization
P32
○
○
G120.1/G121
Machining condition selection I
P33
○
○
G122
Activate sub part system I
P651, P32 (*2) ○
○
G02/G03
Circular interpolation
P33 (*1)
○
G2.3/G3.3
Exponential function interpolation
○
○
P33
G2.4/G3.4
3-dimensional circular interpolation
P75
P75
P75
P33
○
G06.2
NURBS interpolation
○
P32
7
G41.2/G42.2
3-dimensional tool radius compensation (Tool's ver- P163
tical-direction compensation)
○
P162
8
G43
Tool length compensation (+)
○ (*3)
P801
P801
G43.1
Tool length compensation along the tool axis ON
○ (*3)
P801
P930
G43.4/G43.5
Tool center point control
○ (*3)
P941
P942
G44
Tool length compensation (-)
○ (*3)
P801
P801
G49
Tool length compensation cancel
○ (*3)
○
○
9
G73 - G76
G81 - G89
Fixed cycle for drilling
P801
○
P801
14
G66
User macro modal call
- (*4)
○
○
659
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Modal
group
G code
Function
A
16
G68
3-dimensional coordinate conversion mode ON
G68.2/G68.3
19
G50.1
G51.1
21
G7.1/G107
G12.1/G112
Polar coordinate interpolation ON
G13.1/G113
Polar coordinate interpolation cancel
B
C
P923
○
○
Inclined surface machining command
P954
○
○
G command mirror image cancel
P801
○
○
G command mirror image ON
P801
P801
P801
Cylindrical interpolation
P33
○
P481
P33
○
P481
P33
○
○
24
G188/G189
G code switch of program format
P33
P29
○
27
G54.4
Workpiece installation error compensation
P546
P546
○
(*1) When the parameter "#1241 set13" is set to "1", G43.7 is ignored.
(*2) If G122 is called before G43.7, the program error (P651) will occur. If it is called after G43.7, the program error
(P32) will occur.
(*3) When "G43.7 G43 H1;" is commanded, the G43 commanded later is enabled.
(*4) Only the modal is updated.
(*5) If the reference position return (G28) is commanded during the G43.7 modal, the G43.7 modal is canceled when
the return is completed.
Circular interpolation
When the compensation by tool position compensation command G43.7 or G49 is applied to the circular movement
axis, compensation movement is superimposed with circular movement if the axis moves by the specified compensation amount in the circular command block.
Z
Z axis tool compensation
amount (Reference axis K)
Uncompensated path
Circular movement
amount
Path compensated by tool position compensation
X
Graphic check
If the tool position compensation command G43.7 is issued during graphic check, the program error (P803) will occur.
IB-1501278-D
660
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.2 Tool Length Compensation in the Tool Axis Direction ; G43.1/G49
Function and purpose
(1) Changes in the tool length compensation in the tool axis direction and compensation amount
The tool length can be compensated for in the tool axis direction even when the rotary axis rotates and the tool
axis direction becomes other than the Z axis direction. By using this function, and setting the deviation between
the tool length amount set in the program and the actual tool length as the compensation amount, a more flexible
program can be created. This is especially valid for programs in which many axis movement commands are
present.
The tool length compensation amount in the tool axis direction can be changed by rotating the manual pulse generator when the tool length compensation amount in the tool axis direction is being changed during the tool length
compensation in the tool axis direction mode.
(2) Machine configuration
The compensation using the tool length compensation in the tool axis direction function is applied to the direction
of the tool tip axis (rotary axis).
As for the axes that determine the compensation direction, a combination of the C axis (spindle) for Z axis rotation and the A axis for X axis rotation or B axis for Y axis rotation is designated using a parameter.
(d)
C
A
(e)
(d)
A/B
(e)
Z
(f)
B
(f)
C
X
(g)
Y
Axis A or B
B
A
Axis B or C
(d) Rotation center
(e) Tool
(f) Axis direction (compensation direction)
(g) Workpiece
661
(g)
Axis A or B
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Command format
Tool length compensation along the tool axis ON
G43.1 X__ Y__ Z__ H__ ;
Tool length compensation cancel
G49 X__ Y__ Z__ ;
X, Y, Z
Movement data
H
Tool length compensation No.
(If the compensation No. exceeds the specification range, a program error (P170)
will occur.)
Detailed description
(1) G43, G44 and G43.1 are in the same G code group. Therefore, it is not possible to designate more than one of
these commands simultaneously for compensation. G49 is used to cancel the G43, G44 and G43.1 commands.
(2) If the G43.1 command is designated when the specification for the tool length compensation in the tool axis direction is not provided, the program error (P930) will occur.
(3) If reference position has not been completed for any of the X, Y, Z, A or B and C axes in the G43.1 block, the
program error (P430) will occur. However, the error does not apply to the following cases.
When mechanical axes have been selected
The error does not apply to the A, B and C axes.
When "1" has been set for the "#2031 noref" zero point return parameter
The error does not apply to the axis for which "noref" is set to "1" because it is considered that the reference
position return of the axis has already completed.
IB-1501278-D
662
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Changing the amount of tool length compensation in the tool axis direction
(1) When the following conditions have been met, the handle movement amount is added to the tool length compensation amount in the tool axis direction by rotating the manual pulse generator.
When the operation mode is MDI, memory or tape operation mode and the state is "during single block
stop", "during feed hold" or "during cutting feed movement". Note that compensation amount cannot be
changed during error or warning.
During tool length compensation in the tool axis direction (G43.1).
In the tool length compensation amount in the tool axis direction changing mode (YC92/1).
In the tool handle feed & interruption mode (YC5E/1).
The 3rd axis (tool axis) is selected for the handle selection axis.
(2) The change amount is canceled when the compensation No. is changed.
Note
The coordinate value in the tool length compensation amount in the tool axis direction change mode operates
in the same manner as that when the manual ABS is ON, regardless of manual ABS switch (YC28) or base
axis specification parameter "#1061 intabs".
If compensation amount is changed during continuous operation, single block stop, or feed hold, the compensation amount will be effective immediately in the next block.
(Example) When changing compensation amount during continuous operation.
(b)
(c)
(d)
(a)
(Example) When changing compensation amount during single block stop.
(b)
(b)
(c)
(d)
(a)
(e)
(a) Compensation amount before change
(b) Changed compensation amount
(c) Path after compensation
(d) Program path
(e) Single block stop
When changing compensation amount, the compensation amount corresponding to the actual compensation
No. will be changed. However, when executing the NC reset or tool length compensation in the direction of tool
axis cancel (G49), the compensation amount will be returned to the original.
663
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Tool length compensation in the tool axis direction vector
The vectors representing the tool length compensation in the tool axis direction are as follows.
(1) When the A and C axes are set as the rotary axes:
Vx = L * sin(A) * sin(C)
Vy = -L * sin(A) * cos(C)
Vz = L * cos(A)
(2) When the B and C axes are set as the rotary axes:
Vx = L * sin(B) * cos(C)
Vy = L * sin(B) * sin(C)
Vz = L * cos(B)
Vx, Vy, Vz : Tool length compensation along the tool axis vectors for X, Y and Z axes
L : Tool length compensation amount (1h)
A, B, C : Rotation angle (machine coordinate position) of A, B and C axes
(a)
(c)
(b)
(d)
(a) Path after tool length compensation in the tool axis di- (b) G43.1 command
rection
(c) Program path
(d) G49 command
(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.
When mechanical axes are used:
Instead of the machine coordinate position of the axes, the values read out from the R registers (R2628 to
R2631) are used for the rotation angles of the A, B and C axes.
Compensation amount resetting
Tool length compensation in the tool axis direction is cleared in the following cases.
(1) When manual reference position return is completed.
(2) When reset 1, reset 2 or reset & rewind has been executed.
(3) When the G49 command has been designated.
(4) When the offset No. 0 command has been executed.
(5) When NC reset has been executed with "1" set for the basic system parameter "#1151 rstint".
(6) When the G53 command is designated while the compensation status is still established, the compensation is
temporarily canceled, and the tool moves to the machine position designated by G53.
IB-1501278-D
664
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Program example
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.
Machining program
X
N01 G91 G28 X0 Y0 Z0 ;
Compensation amount H01
= 50 mm
N07
N02 G28 B0 C0 ;
N08
N03 G90 G54 G00 X400. Y0 ;
H01 = 50mm
N09
N04 Z-150 ;
N05 B90 ;
B axis: 90°
N06 G18 ;
N07 G43.1; X250 H01;
Tool length compensation in
the tool axis direction ON
N10
Z
N08 G01 Z0 F200 ;
N09 G02 X0 Z250. I-250. K0 B0 ; Top right arc, B axis: 0°
N10 G02 X-250. Z0 I0 K-250. B90. ;
N12
N11 G01 Z-150.;
N12 G00 G49 X-400. ;
N11
Bottom right arc, B axis: -90°
Tool length compensation in
the tool axis direction OFF
N13 G91 G28 B0 C0 ;
N14 G28 X0 Y0 Z0 ;
N15 M02 ;
Tool with no compensation
Program path
Path after compensation
665
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Relationship with other functions
Relationship with 3-dimensional coordinate conversion
(1) A program error (P931) will occur if 3-dimensional coordinate conversion is carried out during tool length compensation in the tool axis direction.
(2) A program error (P921) will occur if the tool length is compensated for in the tool axis direction during 3-dimensional coordinate conversion.
(3) A program error (P923) will occur if the tool length compensation in the tool axis direction is commanded in the
same block as the 3-dimensional coordinate conversion.
Relationship with automatic reference position return
(1) A program error (P931) will occur if a command from G27 to G30 is issued during tool length compensation in
the tool axis direction.
Relationship with manual reference position return
(1) Reference position return of orthogonal axis
Tool length compensation along the tool axis will be canceled, as well as the dog-type reference position return
and the high-speed reference position return.
<Y axis Manual reference position return>
N1 G90 G00 G54 X0 Y0 Z0 ;
Z
Positioning to the workpiece origin
N2
45◦
N1
M
N2 G00 A45.;
Y
Rotating the rotary axis by 45°
N3 G43.1 H1 ;
Tool length compensation along the tool axis ON
W
N3
N4 G19 G03 Y-5.858 Z-14.142 J14.142 K-14.142
A90. ;
N4
Circular cutting
Manual dog-type reference position return (a)
N5 G00 Y0.;
(a)
N6 Z0 ;
:
:
<Movement after Y axis Manual reference position return>
N5 G00 Y0. ;
Z
Positioning to the position where tool length compensation along the tool axis was canceled.
Y
M
N6 Z0. ;
-> Positioning to the position where tool length compensation along the tool axis was canceled.
W
:
:
N6
N5
IB-1501278-D
666
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(2) Reference position return of rotary axis
Tool length compensation along the tool axis 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>
N1 G90 G00 G54 X0 Y0 Z0 ;
Z
Positioning to the workpiece origin
N2 G00 A45.;
N2
M
Y
Rotating the rotary axis by 45°
N3 G43.1 H1 ;
45°
Tool length compensation along the tool axis
ON
W N3
N3
N4 G19 G03 Y-5.858 Z-14.142 J14.142 K-14.142
A90. ;
N4
Circular cutting
Manual dog-type reference position return (a)
90°
N5 G00 Y0.;
(a)
N6 Z0 ;
:
:
<Movement after A axis Manual reference position return>
N5 G00 Y0.;
Z
M
Positioning to the position where tool length
compensation in the tool axis direction was
canceled.
Y
N6 Z0 ;
Positioning to the position where tool length
compensation in the tool axis direction was
canceled.
W
:
:
N6
N5
Relationship with graphic check
(1) Graphic check draws a path after compensation.
667
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.3 Tool Center Point Control; G43.4, G43.5/G49
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). This function can be applied for the three types of machine as below.
(1) A tool tilt type: a machine with two rotary axes set on the head.
(2) A table tilt type: a machine with two rotary axes set on the table.
(3) A combined type: a machine with one rotary axis set on the tool and another on the table.
With this function, in the case of using tool tilt type, the tool center point is controlled so that it moves on the programmed path specified on the workpiece coordinate system. In the case of using the table tilt type, the tool center
point is controlled so that it moves on the programmed path specified on the table coordinate system (a coordinate
system which rotates together with a workpiece).
(1) Tool tilt type
Tool center point control OFF and tool length compensation along the tool axis ON
Rotation center
Tool Center Point Control ON
Program path
Rotation center
Path of the tool center point
Controls so that the path of the tool holder center point Controls so that the tool center point draws a straight
draws a straight line.
line.
(2) Table tilt type
Tool center point control OFF and tool length compensation along the tool axis ON
Tool Center Point Control ON
Path of the tool center point
Z(+)
Z(+)
X(+)
X(+)
B(- )
X'(+)
Z''(+)
Rotation center
B(- )
X''(+)
Rotation center
Controls so that the tool holder center point positions on Controls so that the tool center point positions on the tathe workpiece coordinate system.
ble coordinate system.
IB-1501278-D
668
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(3) Combined type
Tool center point control OFF and tool length compensation along the tool axis ON
Tool center point control ON
Path of the tool center point
Z(+)
Z(+)
Z'(+) X(+)
X(+)
B(- )
Z''(+)
Rotation center
X'(+)
B(- )
X''(+)
Rotation center
Controls so that the tool holder center point positions on Controls so that the tool center point positions on the tathe workpiece coordinate system.
ble coordinate system.
If the tool center point control is commanded without the specifications of this function, a program error (P940)
will occur.
In addition, 3 orthogonal axes must be commanded first and 2 rotary axes alter.
When the number of simultaneous contouring control axes is 4
When the number of simultaneous contouring control axes is 4, the tool center point control is only available for the
simultaneous movement of 4 axes or less.
Using this function allows you to designate the tool center point position on the table coordinate system (which rotates as the workpiece rotates); therefore, you can easily create a machining program without calculating the workpiece rotation or spindle end point position.
[Restrictions]
5 or more simultaneous contour control
axes
Command type
G43.4/G43.5
G43.4 only (*1)
Limitations when com- None (Format error, etc. only)
manded
Interpolation mode
A single rotary axis can be commanded in
the same block. (*2)
Joint interpolation / Single axis rotation in- Joint interpolation only
terpolation (*3)
Type of passing singu- Type 1 / type 2 (*3)
lar point
Program coordinate
system selection
4 simultaneous contour control axes
Invalid (*4)
Table coordinate system / workpiece coordinate system (selected by parameter) (*3)
Rotary axis basic posi- Zero degree position basis / start position standard (*3)
tion selection
Rotary axis prefiltering Select whether this function is valid or invalid with a parameter.
Designate the time constant with a parameter.
(*1) If G43.5 is commanded, a program error (P34) will occur.
(*2) If two rotary axes are commanded, a program error (P10) occurs. However, if a single rotary axis only moves
even when two rotary axes are commanded, it is not judged to be erroneous.
(*3) Selected by a parameter.
(*4) Only the joint interpolation is available in G43.4; therefore, the singular point type is invalid.
669
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
[Restrictions in movement command]
o: Can be commanded, x: Alarm
3 orthogonal axes
or less
1 rotary axis
2 rotary axes
o
o
×
3 orthogonal axes 3 orthogonal axes
or less + 1 rotary or less + 2 rotary
axis
axes
o
×
Command format
There are two command formats: <Type 1>, where tool angle is commanded by the rotary axis; and <Type 2>,
where tool angle is commanded by the vectors of the workpiece surface, I, J, and K.
Tool center point control ON
G43.4 (X__ Y__ Z__ A__ C__) H__
;
G43.5 (X__ Y__ Z__) I__ J__ K__ H__ ;
Type 1 ON
Type 2 ON (*1)
X,Y,Z
Orthogonal coordinate axis movement command
A,C
Rotary axis movement command
I,J,K
Workpiece surface angle vector
H
Tool length compensation No.
(*1) Can only be commanded when the number of simultaneous contouring control axes is 5 or more.
Note
(1) When orthogonal coordinate axis movement command or rotary axis movement command is not issued in the
same block, start-up will be applied without axis movement (No movement for the compensation amount).
(2) Commands to I, J, and K will be ignored during the tool center point control type 1.
(3) Rotary axis movement command cannot be issued during the tool center point control type 2. If commanded, a
program error (P33) occurs.
(4) If I, J, or K is omitted when issuing the tool center point control type 2 command, the omitted address will be
considered as "0".
Tool center point control cancel
G49 (X__ Y__ Z__ A__ C__);
Note
(1) Instead of using G49, other G codes in G code group 8 can be used for canceling.
(2) If orthogonal coordinate axis command and rotary axis command are issued in the same block as G49, the tool
center point control modal will be canceled on the spot. Then, commanded axis movement will be performed. If
the cancel command is issued alone, the modal will be canceled on the spot, and yet no axis movement (movement for the compensation amount) will be performed.
IB-1501278-D
670
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Detailed description
Programming coordinate system
Specify the end position of each block looking from the programming coordinate system 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 whether to
use the table coordinate system or the workpiece coordinate system depends on the MTB specifications (parameter
"#7908 SLCT_PRG_COORD").
(1) Table coordinate system
When "0" is set to the programming coordinate system selection parameter, the table coordinate system, which
is the valid workpiece coordinate system at that time fixed to the table, is specified as the programming coordinate system. Table coordinate system rotates along the table rotation. And it does not rotate along the tool axis
rotation. The X,Y,Z addresses are considered to have been issued on the table coordinate system.
When a rotary axis movement is commanded in a block prior to G43.4/G43.5 command, the angle generated by
rotary axis movement is regarded as an initial setting at G43.4/G43.5 command.
(2) Workpiece coordinate system
When "1" is set to the programming coordinate system selection parameter, the valid workpiece coordinate system at that time is specified as the programming coordinate system. The coordinate system in this case does
not rotate along the table rotation. A linear movement is carried out for the table (workpiece) when the X,Y,Z
addresses are issued. The end position looking from the workpiece coordinate system after table rotation is
specified to the X, Y and Z.
671
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Rotary axis basic position selection
When the table coordinate system, the workpiece coordinate system fixed to the table, is to be defined as a programming coordinate system, the appropriate rotary axis angle for fixing the workpiece coordinate system to the table depends on the MTB specifications (parameter "#7911 SLCT_STANDARD_POS").
Rotary axis standard selection
The timing to be
fixed to the table
Operation example
1
(Workpiece coordinate offset 0°)
Y
Start position standard (#7911=1)
Zero degree position standard (#7911=0)
The position of rotary axis holding the work- When the position of rotary axis holding the
piece at the start of tool center point control workpiece is at 0 degree on the workpiece
coordinate system
:
G90G54G0C0
C-15. ;
G43.4 Hh;
:
C90. ;
:
Workpiece coordinate 0°
:
G90G54C0
C-15. ;
G43.4 Hh;
:
C90. ;
:
Y
X
Workpiece coordinate 0°
Y
X
0°
0°
X M
achine coordinate Machine coordinate Machine coordinate Machine coordinate Machine coordinate
system
position fixed at -15° position 90° by C90. position -15° by C-15. position 90° by C90.
command
command
command
Y
Y
Y
-15°
X
Y
X
-15°
Operation example
2
(Workpiece coordinate offset 45°)
Y
:
G90G54G0C0
C-15. ;
G43.4 Hh;
:
C90. ;
:
90°
-90°
X
Workpiece coordinate 0°
:
G90G54C0
C-15. ;
G43.4 Hh;
:
C90. ;
:
Y
X
X
X
Workpiece coordinate 0°
Y
X
45°
45°
Machine coordinate
Fixed at machine co- Machine coordinate Machine coordinate Machine coordinate
system
ordinate position 30° position 135° by C90. position 30° by C-15. position 135° by C90.
command
command
command
Y
Y
X
30°
IB-1501278-D
Y
135°
X
672
Y
X
30°
135°
X
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Start-up
(1) Independent start-up command
(a) Tool center point control type 1, type 2
When the tool center point control is ON, no axis movement is performed (including movement for the compensation amount).
<Tool tilt type>
:
G43.4 Hh;
:
or
:
G43.5 Hh;
<Table tilt type>
:
G43.4 Hh;
:
or
:
G43.5 Hh;
A (+)
Z
Z
Y
A (+)
Y
(b) Tool center point control type 2
"G43.5 Ii Jj Kk Hh ; " performs the same movement as the tool center point control type 1 in (2).
(2) Start-up with movement command (When orthogonal coordinate axis command is issued in the same block)
(a) Tool center point control type 1, type 2
When the tool center point control is ON, the tool center point moves only as much as it is ordered under the
incremental value command.
<Tool tilt type>
:
G91; (Incremental value)
G43.4 Yy Zz
Hh;
:
or
:
G43.5 Yy Zz
Hh;
:
<Table tilt type>
:
G91; (Incremental value)
G43.4 Yy Zz
Hh;
:
or
:
G43.5 Yy Zz
Hh;
:
A (+)
Z
Z
Y
Y
Z
Z
Y
Y
A (+)
Under the absolute value command, the tool center point moves to y1, z1.
<Tool tilt type>
:
G90; (Absolute
value)
G00 Yy0 Zz0;
G43.4 Yy Zz
Hh;
:
or
:
G43.5 Yy Zz
Hh;
:
<Table tilt type>
A (+)
(y0,z0)
(y1,z1)
h
z1- z0
Z
y1- y0
Y
:
G90; (Absolute
value)
G00 Yy0 Zz0;
G43.4 Yy Zz
Hh;
:
or
:
G43.5 Yy Zz
Hh;
:
(y0,z0)
(y1,z1)
h
Z
y1- y0
Y
673
z1- z0
A (+)
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(b) Tool center point control type 2
The rotary axis moves toward the commanded workpiece surface vector (I,J,K) direction along the movement
command issued.
<Tool tilt type>
:
G91; (Incremental value)
G43.5 Yy Zz
Ii Jj Kk Hh;
:
<Table tilt type>
:
G91; (Incremental value)
G43.5 Yy Zz
Ii Jj Kk Hh;
:
A (+)
Z
y
z (i,j,k)
(i,j,k)
y
Z
z
Y
Y
A (+)
(3) Start-up with movement command (When rotary axis command is issued in the same block)
(a) Tool center point control type 1
In the case of using the tool tilt type, the orthogonal axis moves according to the rotary axis angle while fixing
the tool center point to the center. In the case of using the table tilt type, the orthogonal axis moves so that
the tool center point locates on the rotated table workpiece coordinate system.
<Tool tilt type>
:
G43.4 Aa Hh;
:
a
Z
<Table tilt type>
A (+)
:
G43.4 Aa Hh;
:
z
Z
a
Y
Y
(b) Tool center point control type 2
A program error (P33) will occur.
IB-1501278-D
A (+)
674
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Cancel
(1) Independent cancel command
(a) Tool center point control type 1, type 2
Canceling the 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 canceled.
<Tool tilt type>
:
G49;
:
<Table tilt type>
:
G49;
:
A (+)
Z
Z
A (+)
Y
Y
The tool will not move.
(2) Cancellation with movement command (When orthogonal coordinate axis command is issued in the same block)
(a) Tool center point control type 1, type 2
Canceling the movement for the compensation amount is not performed regardless of absolute/incremental
value command.
Orthogonal coordinate axis movement command is executed upon cancellation of the tool center point control modal.
<Tool tilt type>
:
G91; (Incremental value)
G49 Yy Zz ;
:
<Table tilt type>
:
G91; (Incremental value)
G49 Yy Zz ;
:
A (+)
Z
z
z
Z
y
A (+)
Y
y
Y
(3) Cancellation with movement command (When rotary axis command is issued in the same block)
(a) Tool center point control type 1, type 2
Canceling the movement for the compensation amount is not performed regardless of absolute/incremental
value command.
Rotary axis movement command is executed upon cancellation of the tool center point control modal.
<Tool tilt type>
:
G49 Aa
Hh;
:
<Table tilt type>
A (+)
:
G49 Aa
Hh;
:
Z
Y
Z
a
A (+)
a
Y
675
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
During tool center point control
(1) Tool center point control type 1
(a) When executing the movement command to the orthogonal coordinate axis and rotary axis.
:
A (+)
Z
G90 ;
G43.4 Yy1 Zz1 Aa1 Hh ;
a1
a2=0
a3
Yy2 Aa2 ;
Yy3 Aa3 ;
:
The tool center point moves
along the programmed path.
z1
y1
y2
Y
y3
(b) When executing the movement command to the rotary axis only.
:
A (+)
G90 ;
G43.4 Yy1 Zz1 Aa1 Hh ;
a1
a2
Yy2 ;
Aa2 ;
Yy3 Aa3 ;
:
a3
z1
When executing the movement command to the rotary
axis only, the orthogonal
axis moves without moving
the tool center point.
y1
y2
y3
(2) Tool center point control type 2
(a) When executing the movement command to the orthogonal coordinate axis and the workpiece surface angle
vector command.
:
A (+)
(i3,j3,k3)
Z
G43.5 Yy1 Zz1
Ii1 Jj1 Kk1 Hh ;
(i1,j1,k1)
Yy2 Ii2 Jj2 Kk2 ;
Yy3 Ii3 Jj3 Kk3 ;
:
Tool center point moves
along the programmed path.
(i2,j2,k2)
z1
y1
y2
y3
(b) When executing the workpiece surface angle vector command only.
:
A (+)
G43.5 Yy1 Zz1
Ii1 Jj1 Kk1 Hh ;
(i1, j1, k1)
Yy2 ;
Ii2 Jj2 Kk2 ;
Yy3 Ii3 Jj3 Kk3 ;
:
When executing the workpiece surface angle vector
command only, the orthogonal axis moves without moving the tool center point.
IB-1501278-D
a3
(i3, j3, k3)
z1
y1
676
y2
y3
Y
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Feedrate during tool center point control
Feedrate during the tool center point control is controlled so that the tool center point moves according to the commanded speed.
Interpolation method
There are two methods of interpolation: single axis rotation interpolation and joint interpolation, which are selected
by parameter.
(1) Single axis rotation interpolation
When transforming from a start-point angle vector "r1" into an end-point angle vector "r2", interpolate so that the
angular rate of the rotary "φ" around the vector "k" axis, which is vertical to "r1"-"r2" plane, will be constant.
(r1) Start-point command vector "r1"
(k)
(r2) End-point command vector "r2"
(k) Unit vector vertical to r1-r2 plane
Y(- )
(r1)
O
Y’( - )
(r2)
Z( - )
Z’( - )
(a) Features
Tool angle vector always exists on the plane consisting of "O", "r1" and "r2".
The angular rates of each rotary axis will not be constant.
(b) Operations
(Example) Current position: Aa° , C0°
When commanding "G90 Yy A-a. C45. ;" or "G90 Yy Ii Jj Kk ;"
<Tool tilt type>
<Table tilt type>
Y(- )
Z’’ (+)
Z(+)
Z’(+)
Y(+)
Y’’ (+)
Z(- )
Y’(+)
Z(+)
Y(+)
<Combined type>
Z(+)
Z(+)
Y(+)
Z(+)
Y(+)
Z(+)
Y(+)
677
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(2) Joint interpolation
A movement from a start-point angle vector "r1" to an end-point angle vector "r2" is interpolated to keep the angular rates of each axis constant.
(a) Features
The angular rates of each rotary axis become constant.
As this control aims to keep the angular rates of each rotary axis constant, a tool angle vector may not
exist on the plane consisting of "O", "r1" and "r2".
(r1) Start-point command vector "r1"
C(+)
(r2) End-point command vector "r2"
Y(- )
A(+)
O
(r1)
Z(- ) (r2)
Passing singular point
When passing the singular point (singular position (*1)), 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. b, c) to be followed. In those
movements, the rotation angles of the A axis are the same absolute value but different in signs (+/-). The rotation
angles of the C axis corresponding the two movements are differed by 180 degrees one another.
Determine which one of the two movements are to be selected with parameter.
The figures below are the example of movements seen during tool center point control type 2. When the tool-centerpoint-side rotary axis moves in the sign (+) direction from the starting position (Fig. a), (Fig. b) is representing "passing singular point type 1". When the tool-center-point-side rotary axis moves in the sign (-) direction from the starting
position (Fig. a), (Fig. c) is representing "passing singular point type 2".
<Starting position>
Y(- )
Movement in sign (+)
Y(- )
C0
C0
Z(- )
(b)
(a)
Z(- )
Movement in sign (-)
Y(- )
C0
Z(- )
(c)
(*1) The position in which the tool-center-point-side rotary axis or the table-base-side rotary axis is 0.
IB-1501278-D
678
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(1) Passing singular point type 1
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. When the stroke limits are the same, select the one with a minus-coded rotation angle.
<Tool tilt type>
X(- )
Y(- )
(c)
(a)
(b)
Z(- )
<Table tilt type>
(a)
(b)
Z'(+)
Z(+)
Z"(+)
Y(+)
Y'( - )
Y"( - )
(c)
<Combined type>
(a)
(b)
Z(+)
Z(+)
Z(+)
Y(- )
Y(- )
Y(+)
(c)
(a) Singular point
(b) When passing near the singular point, C axis rotates 180° within the parameter "#7907 CHK_ANG" (Near
the singular judgment angle).
(c) C axis rotates 180°
679
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(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-workpieceside 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.
<Tool tilt type>
X(- )
Y(- )
(a)
Z(- )
<Table tilt type>
(a)
Z'(+)
Z(+)
Z"(+)
Y'(+)
Y(+)
Y"(+)
<Combined type>
(a)
Z(+)
Z(+)
Z(+)
Y(+)
Y(+)
Y(+)
(a) C axis does not rotate 180° when passing near the singular point.
IB-1501278-D
680
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(3) Operation near the singular point in each interpolation method
Interpolation method
Command
Single axis G43.4
rotation in- (Rotary axis
terpolation command)
G43.5
(I/J/K command)
Joint inter- G43.4
polation
(Rotary axis
command)
G43.5
(I/J/K command)
Passing sin- Command from a singular point Command to pass a singular
gular point
to a non-singular point
point
type
Type 1
Type 2
As designated in the command value. However, in the case where
the signs at the start point and end point of either tool-center-pointside rotary axis or table-base-side rotary axis differ, if tool-base-side
rotary axis or table-workpiece-side rotary axis rotates in the same
block, the tool will not pass the singular point, resulting in a program
error (P943).
Type 1
Select the one with the wider stroke
range. When the stroke range is
the same, select a minus direction
of the tool-center-point-side rotary
axis or the table-base-side rotary
axis.
Type 2
Select the one with the smaller movement amount of the tool-baseside rotary axis or the table-workpiece-side rotary axis.
Type 1
As designated in the command value.
Select the one with the samecoded end point as the start
point of the tool-center-pointside rotary axis or the tablebase-side rotary axis.
Type 2
Type 1
Select the one with the wider stroke
range. When the stroke range is
the same, select a minus direction
of the tool-center-point-side rotary
axis or the table-base-side rotary
axis.
Type 2
Select the one with the smaller movement amount of the tool-baseside rotary axis or the table-workpiece-side rotary axis.
681
Select the one with the samecoded end point as the start
point of the tool-center-pointside rotary axis or the tablebase-side rotary axis.
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Machine speed fluctuation suppression during high-accuracy control
In tool center point control during high-accuracy control, if there is no change in a center point speed command (F
command), and also if a rotary axis moves with each block's segment length short, the machine end speed (speed
of a motor that drives the tool/table) may fluctuate sharply. By enabling the parameter "#7913 MCHN_SPEED_CTRL" (Machine speed fluctuation suppression), fluctuation can be suppressed.
(1) When "#7913 = 0", the machine end speed is awaited to decelerate down to the machine end speed command
(*1).
Select this setting when a machining is desired to closely follow the movement commands.
(2) When "#7913 = 1", the next block movement command is output to the machine immediately after a movement
command output of the currently processed block is completed.
Select this setting in such a case as an execution of a machining program with non-continuous rotary axis movement commands, where a smooth movement is desired preventing a sudden deceleration of the machine end
speed between blocks.
Nevertheless, if any of the conditions below is satisfied, deceleration is awaited regardless of the parameter setting.
When judged to be a corner
When the machining program's F command is changed
When the speed is clamped
When the override is changed
(*1) A machine end speed command value means a speed command value that is output to the machine end so that
the center point speed becomes the F command value.
Nevertheless, depending on the machining program, enabling the parameter "#7913 MCHN_SPEED_CTRL" (Machine speed fluctuation suppression) may generate a machine vibration without deceleration.
<Machining program example>
Discontinuous rotary axis movement commands (a block is skipped between the movement commands)
:
G61.1;
G43.4 Hh;
G1 Ff;
:
N10 Xx1 Yy1 Zz1 Aa1;
N20 Xx2 Yy2 Zz2;
N30 Xx3 Yy3 Zz3 Aa3;
N40 Xx4 Yy4 Zz4;
:
IB-1501278-D
<Note>
Center point block lengths are even.
A machine end block length is longer when it has a rotary axis movement
command. (In this case, the machine end speed is faster in a block with
rotary axis movement than in a block without rotary axis movement.)
When SSS control is enabled, a machine speed fluctuation suppression is
disabled.
682
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(1) Speed when "#7913 = 0"
Tool center point
speed
(F)
䊶䊶 N10
N20 N30
N40 䊶䊶
(T)
Machine end
speed
(F)
䊶䊶 N10
N20 N30
N40 䊶䊶
(T)
Center point command speed
Machine end command speed
(F) Actual speed
(T) Time
Awaited to decelerate down to the machine end speed of the next block. Thus, the speed changes sharply.
(2) Speed when "#7913 = 1"
Tool center point
speed
(F)
䊶䊶 N10 N20 N30 N40 䊶䊶
(T)
Machine end
speed
(F)
䊶䊶 N10 N20 N30 N40 䊶䊶
Center point command speed
(T)
Machine end command speed
(F) Actual speed
(T) Time
Not awaited to decelerate down to the machine end command speed of the next block. Thus, the speed does not
change sharply, and the movement is smooth.
In (2), because the control does not wait for the deceleration to the machine end command speed of the next block,
the actual center point speed exceeds the command speed. In such a case, by adjusting (increasing) the setting
value of "#1570 Sfilt2" (Soft acceleration/deceleration filter 2), a range of the excess of the center point speed can
be suppressed even when it exceeds the command speed.
<Note>
When SSS control is enabled, a machine speed fluctuation suppression is disabled.
683
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
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.
This function is available for the programs which have intermittent rotary axis commands (tool angle shifts) or the
programs with inconstant shift amount of rotary axis angle (or tool angle) per unit time.
Set the filter time constant for this function with parameters.
When the rotary axis prefiltering is disabled, the tool center point shift speed may be sharply fluctuated due to the
intermittent rotary axis command, as the figure below.
(a)
Q3
Q1
(b)
Q5
Q4
Q6
Q7
Q8
(c)
Q2
P0
Q9
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
(d)
Q10
P11
(e)
(a) Without tool angle shift
(b) With tool angle shift
(c) Machine position (rotation center)
(d) Tool center point needs to be shifted at constant speed in spite of the tool angle shift.
(e) Tool center point
As shown below, the rotary axis prefiltering reduces speed fluctuation of tool center point by smoothing the rotary
axis command process.
(c)
(a)
Q1
P1
Q5
Q4
Q3
Q2
P0
(e)
(b)
P2
P3
P4
P5
Q6
P6
Q7
P7
P9
(d)
Q9
P10
(g)
(f)
(a) Tool angle before smoothing
(b) Tool angle after smoothing
(c) With tool angle shift
(d) Machine position (rotation center)
(e) Without tool angle shift
(f) Tool center point needs to be shifted at constant speed
(g) Tool center point
IB-1501278-D
P8
Q8
684
P11
Q10
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Note
(1) This function is available only when SSS control is enabled. (Not available together with a machine speed fluctuation suppression.)
(2) This function is disabled at G00 command.
(3) The actual angle of the tool may be deviated from the commanded one in the program.
(4) Even if a rotary axis prefiltering is enabled for a program without an angle shift, it does not affect the machining
quality. However, it may extend cycle time, so when executing such a machining, it is recommended that the
rotary axis prefiltering is disabled.
Mounting the rotary axis on the left-hand orthogonal coordinate system
When tool center point control is used on the machine in which the rotary axis is mounted on the left-hand orthogonal
coordinate system, all the following three conditions must be satisfied.
(1) Use tool center point control type 1 (G43.4).
(Normal operation is not assured in tool center point control type 2 (G43.5).)
(2) Set the parameter "#7910 SLCT_INT_MODE" (interpolation mode selection) to the joint interpolation method.
(Normal operation is not assured in single axis interpolation mode.)
(3) Set the rotary axis configuration parameter "rotation direction" of the rotary axis mounted on the left-hand orthogonal coordinate system to CCW.
The target "rotation direction" parameters are as follows.
"#7923 DIR_T1" (Rotation direction of the tool rotating type base-side rotary axis)
"#7933 DIR_T2" (Rotation direction of the tool rotating type / composite type tool axis)
"#7943 DIR_W1" (Rotation direction of the table rotating type base-side rotary axis)
"#7953 DIR_W2" (Rotation direction of the table rotating type / composite type workpiece axis)
685
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Circular command in tool center point control (G43.4/G43.5)
When the following conditions are met, circular command will be executed on the selected plane in tool center point
control.
<Tool tilt type>
Programming coordinate
system
Rotary axis reference position selection
Start position standard (#7911=1)
0° position standard (#7911=0)
Table coordinate system Rotary axis machine coordinate position in circular command is at 0°. (1) (2)
(#7908=0)
Workpiece coordinate system
(#7908=1)
<Table tilt type>
Programming coordinate
system
Rotary axis reference position selection
Start position standard (#7911=1)
0° position standard (#7911=0)
Table coordinate system Rotary axis workpiece coordinate posi- Rotary axis workpiece coordinate po(#7908=0)
tion at the start of tool center point con- sition in circular command is at 0°. (3)
trol coincides with that of the circular
command. (4)
Workpiece coordinate sys- Rotary axis about the I/J/K axis workpiece coordinate position in circular comtem (#7908=1)
mand is at 0°. (5)
<Combined type>
Programming coordinate
system
Rotary axis reference position selection
Start position standard (#7911=1)
Table coordinate system Table-side rotary axis workpiece coor(#7908=0)
dinate position at the start of tool center
point control coincides with that of the
circular command, and also, tool-side
rotary axis machine coordinate position
in circular command is at 0°.
0° position standard (#7911=0)
Table-side rotary axis workpiece coordinate position in circular command is
at 0° and tool-side rotary axis machine
coordinate position is at 0°.
Workpiece coordinate sys- Tool-side rotary axis machine coordinate position in circular command is at 0°
tem (#7908=1)
and table-side rotary axis workpiece coordinate position is at 0°.
<Note>
(a) A program error (P942) will occur in the following cases.
During tool center point control type 2 (G43.5)
Rotary axis command is issued in the same block
During the inclined surface machining and the workpiece installation error compensation
(b) If the circular command is issued without positioning three orthogonal axes after tool center point control has
been started independently, a program error (P70) or (P71) may occur.
IB-1501278-D
686
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(1) Tool tilt type (Rotary axis machine coordinate 0°)
<Machining program>
:
G18
G43.4 H1
:
G02 Xx Zz Ii Kk
:
(a)
Z(+)
Y(+)
Z(+)
X(+)
Y(+)
X(+)
(2) Tool tilt type (Rotary axis machine coordinate - 30°)
<Machining program>
:
G18
G43.4 H1
A-30.
:
G02 Xx Zz Ii Kk
:
A-30
A0°
Z(+)
A(-)
Y(+)
Z(+)
X(+)
Y(+)
(P)
X(+)
(3) Table tilt type (0° position standard)
<Machining program>
:
G18
G43.4 H1
:
G02 Xx Zz Ii Kk
:
Z(+)
(a)
Y(+)
Z(+)
X(+)
Y(+)
A(+)
X(+)
(a) Arc operations
(P) Program error
687
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(4) Table tilt type (Start position standard)
<Machining program>
:
G19 A-45.
G43.4 H1
:
G02 Xx Yy Ii Jj
:
Z(+)
(a)
A-45° :(s)
Y(+)
A0°
Z(+)
Y(+)
X(+)
A(+)
X(+)
(5) Table tilt type (Programming coordinate system = workpiece coordinate system)
<Machining program>
:
G18
G43.4 H1
:
G02 Xx Zz Ii Kk
:
Z(+)
(a)
Y(+)
A0°:(s)
Z(+)
(I)
X(+)
Y(+)
X(+)
(a) Arc operations
IB-1501278-D
(s) Start position
688
(I) About I axis
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Relationship with other functions
(1) F1-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.
(3) Miscellaneous function (MSTB)
Miscellaneous function (MSTB) command can be executed during tool center point control.
(When passing the singular point, strobe signal is output at the block start and the completion wait at the block
end.)
(Example)
(b)
Z
:
A (+)
(a)
(c)
G90 Aa1 ;
G43.4 Yy1 Aa2 Mm Hh ;
a2
a
:
C (+)
y1
(a) M strobe output
Y
(b) Passing singular point
(c) M completion wait
(4) Spindle/C Axis Control
Axes unrelated to the tool tilt or table tilt can be controlled.
(5) Manual reference position return
Do not perform manual reference position return during tool center point control. If performed, the tool moves off
the programmed track.
(6) Machining time computation
Machining time calculation is not performed accurately on the machining program in which the tool center point
control mode is commanded.
(7) Graphic trace
Graphic trace during the tool center point control is always traced with the tool center point.
(8) Graphic check
Graphic check during the tool center point control is always check the graphic with the tool center point.
(9) Program restart
Restart search cannot be performed during the tool center point control. If attempted, a program error (P49) occurs.
(10) Reset modal retention
Canceled during the tool center point control.
(11) Collation stop
Position in the tool center point control can be collated and stopped.
(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.
(14) Tool handle feed & interruption
Do not perform the tool handle feed & interruption during the tool center point control. If performed, the tool
moves off the programmed track.
(15) Corner chamfering/Corner R
When the corner chamfering/corner R is performed during the tool center point control, the tool center point control becomes valid to the track after the corner chamfering/corner R.
689
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(16) Mirror image by parameter setting / external mirror image input
When the tool center point control command is issued during the mirror image by parameter/external Input, a
program error (P941) occurs. Also, do not turn the mirror image by parameter/external input ON during the tool
center point control.
(17) Linear angle command
When A axis is used as a rotary axis, the linear angle command cannot be executed. When A axis is not used
as a rotary axis, tool center point control becomes valid to the shape after the linear angle command.
(18) Geometric command
When A axis is used as a rotary axis, the geometric command cannot be executed. When A axis is not used as
a rotary axis, tool center point control becomes valid to the shape after the geometric command.
(19) Figure rotation
The tool center point control becomes valid to the shape after the figure rotation.
(20) Coordinate rotation by parameter
When the tool center point control command is issued during the coordinate rotation by parameter, a program
error (P941) occurs. Also, do not turn the coordinate rotation by parameter ON during the tool center point control.
(21) Chopping
Chopping operation for the 3 orthogonal axes and 2 rotary axes cannot be performed during the tool center point
control.
(22) Macro interruption
If the macro interruption command is executed during the tool center point control, a program error (P942) occurs.
(23) Tool life management
The compensation amount of the tool center point control during the tool life management is equal to the compensation amount of the tool subjected to the tool life management.
(24) G00 non-interpolation
Functions as "G00 interpolation".
(25) Actual feedrate display
The final combined feedrate 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.
(27) Machine lock
The each axis machine lock becomes valid to the motor axis.
(28) Remaining distance counter
Remaining distance at the tool center point on the programming coordinate system is displayed.
(29) Interlock
Interlock is applied for the motor axis.
(30) Cutting feed / Rapid traverse override
Override is applied to the feedrate at the tool center point. When the feedrate is clamped, the override is applied
to the clamp speed.
(31) Manual reference position return
If the manual reference position return is performed during the tool center point control, the tool moves off the
programmed track after that.
(32) Dry run
Dry run is applied to the speed at the tool center point.
(33) NC reset
Immediately decelerates to stop when the NC reset is executed during the tool center point control. The tool center point control will be canceled even if NC reset 1 and the modal retention.
(34) Emergency stop
Immediately stops if the emergency stop is applied during the tool center point control.
(35) Stored stroke limit
limit Stored stroke limit will be valid at the motor axis for all IB, IIB and IC.
IB-1501278-D
690
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(36) MDI interruption
When the MDI interruption is performed during the tool center point control, an operation error (M01 0170) occurs.
(37) High-accuracy control function
The acceleration at rapid traverse (G00) during the high-accuracy control is same as that at cutting feedrate
(G01).
Combination with arbitrary axis exchange
When performing tool center point control in combination with an arbitrary axis exchange (G140) command, you
need to set the rotary axis configuration parameters using the 2nd axis name. Set the parameter "#1450 5axis_Spec/bit0" to "1" (setting by the 2nd axis name), and assign the axis configuration for executing tool center point
control to the rotary axis configuration parameter (#7900 or later) using the 2nd axis name (example: A1, B2).
If the G43.4/G43.5 command is issued after arbitrary tool exchange has been completed while the parameter "#1450
5axis_Spec/bit0" is not designated, a program error (P941) will occur.
You can set the configurations up to the number of valid part systems (up to four part systems) in the rotary axis
configuration parameter. With multiple configurations set, you can perform tool center point control in different axis
configurations.
Tool center point control can be performed using the axis configuration in the part system with axis exchange completed by applying the rotary axis configuration parameter in the configuration in which all axes included in the part
system are set.
691
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Relation with other G codes
Pxxx in the list indicates the program error Nos.
Column A: Operation to be carried out when the G command in the list is issued while this function is modal
Column B: Operation to be carried out when this function is commanded while the G command in the list is modal
Column C: Operation to be carried out when the G command in the list and this function are commanded for the
same block
All the G codes not listed above cannot be used.
Format
Function
A
B
C
G00
Positioning
G01
Linear interpola- Switched to a cutting
Perform tool center point Perform tool center point
tion
feedrate, and then per- control with cutting feed. control with cutting feed.
form tool center point
control.
G02/G03
P941
Circular interpo- Available when some
lation
conditions are met. Refer to "Tool Center Point
Control; G43.4/G43.5".
P941
Helical interpola- P942
tion
P941
P941
G02.1/G03.1
Spiral Interpola- P942
tion
P941
P941
G02.3/G03.3
Exponential
P942
function interpolation
P941
P941
G04
Dwell
-
Tool center point control
is ignored as dwell function takes precedence
over the tool center point
control function.
G05
Switched to a rapid tra- Perform tool center point Perform tool center point
verse feedrate, and then control at a rapid tracontrol at a rapid traperform tool center point verse feedrate.
verse feedrate.
control.
Dwelling is performed.
P1
(*1)
High-speed ma- Max. feedrate is 16.8 m/
chining mode
min when 1 mm segment G1 block is commanded with 5 axes
simultaneously
Max. feedrate is 16.8 m/ P33
min when 1 mm segment G1 block is commanded with 5 axes
simultaneously
P2
(*1)
Max. feedrate is 100 m/
min when 1 mm segment G1 block is commanded with 5 axes
simultaneously
Max. feedrate is 100 m/ P33
min when 1 mm segment G1 block is commanded with 5 axes
simultaneously
P1000 High-speed high- Max. feedrate is 100 m/
0
accuracy control min when 1 mm seg(*2)
II
ment G1 block is commanded with 5 axes
simultaneously
Max. feedrate is 100m/ P33
min when 1mm segment
G1 block is commanded
with 5 axes simultaneously
G05.1
(*2)
High-speed high- Max. feedrate is 33.7 m/
accuracy control min when 1 mm segI
ment G1 block is commanded with 5 axes
simultaneously
Max. feedrate is 33.7 m/ P33
min when 1 mm segment G1 block is commanded with 5 axes
simultaneously
G06.2
NURBS interpo- P942
lation
P*** NURBS general er- P941
ror
G07.1
G107
Cylindrical inter- P942
polation
P941
IB-1501278-D
692
P941
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Format
G08
(*2)
P0
Function
High-accuracy
control
P1
A
B
C
Perform tool center point Perform tool center point P33
control in cutting mode. control in cutting mode.
Tool center point control Tool center point control P33
is performed in the high- is performed in the highaccuracy control mode. accuracy control mode.
G09
Exact
stop check
G10/G11
-
Deceleration check is
performed at the block
end.
Parameter input P942
by program
-
P941
G10
Compensation
data input
by program
P942
-
P941
G12/G13
Circular cut
P942
-
Tool center point control
is ignored as the circular
cutting takes precedence over the tool center point control function.
G12.1/G13.1
G112/G113
Polar coordinate P942
interpolation
P941
P941
G15/G16
Polar coordinate P942
command
P941
P941
G17 to G19
Plane selection
The modal is switched to the specified plane.
G20/G21
Inch/
Metric
P942
G22/G23
Stroke check be- P942
fore travel
P941
P941
G27
Reference posi- P942
tion
Check
-
The tool center point
control is ignored as the
reference position check
becomes valid.
G28
Reference posi- P942
tion
Return
-
The tool center point
control is ignored as the
reference position return
becomes valid.
G29
Start position re- P942
turn
-
The tool center point
control is ignored as the
start position return becomes valid.
G30
2nd to 4th refer- P942
ence position return
-
The tool center point
control is ignored as the
2nd, 3rd, 4th reference
position return becomes
valid.
G30.1 to G30.6 Tool change po- P942
sition return 1 to
6
-
P941
G31
Skip
Deceleration check is
performed at the block
end.
The modal is switched to
the specified plane.
Tool center point control P941
is performed according
to the inch / metric modal.
P942
-
P941
G31.1 to G31.3 Multi-step skip
P942
-
P941
G33
Thread cutting
P942
P941
P941
G34 to G36/
G37.1
Special Fixed
Cycle
P942
-
P941
G37
Automatic tool
P942
length measurement
-
P941
693
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Format
Function
A
B
C
G38
Tool radius com- P942
pensation vector
designation
-
P941
G39
Tool radius com- P942
pensation corner
circular command
-
P941
G40/G41/G42
Tool radius com- P942
pensation
P941
P941
G40.1/G41.1/
G41.2/G150/
G151/G152
Normal line con- P942
trol
P941
P941
G43/G44/G49
Tool length com- Tool length compensapensation
tion can be performed
upon tool center point
control cancellation.
Tool center point control The subsequently comcan be performed upon manded modal takes
tool length compensa- precedence.
tion cancellation.
G43.1/G49
Tool length com- Tool length compensapensation along tion along the tool axis
the tool axis
can be performed upon
tool center point control
cancellation.
Tool center point control The subsequently comcan be performed upon manded modal takes
tool length compensa- precedence.
tion along the tool axis
cancellation.
G45/G46/
G47/G48
Tool position off- P942
set
-
P941
G50/G51
Scaling
P942
P941
P942
G50.1/G51.1
Mirror image
P942
P941
P941
G52
Local coordinate P942
system
Setting
-
The tool center point
control is ignored as the
local coordinate system
setting becomes valid.
G53
Machine coordi- P942
nate system selection
-
The tool center point
control is ignored as the
machine coordinate system selection becomes
valid.
G54 to G59/
G54.1
Workpiece coor- P942
dinate system
selection
Tool center point control P941
is performed in the currently selected workpiece coordinate
system.
G60
Unidirectional
positioning
-
The tool center point
control is ignored as the
unidirectional positioning becomes valid.
G61
Exact stop check Deceleration check is
mode
performed at the block
end.
Deceleration check is
performed at the block
end.
Deceleration check is
performed at the block
end.
G61.1
High-accuracy
control
G61.2
High-accuracy P942
spline interpolation 1
P941
P941
G62
Automatic corner P942
override
P941
P941
G63
Tapping mode
P942
P941
P941
G64
Cutting mode
Perform tool center point Perform tool center point Perform tool center point
control in cutting mode. control at a cutting fee- control in cutting mode.
drate.
IB-1501278-D
P942
Tool center point control Tool center point control Tool center point control
is performed in the high- is performed in the high- is performed in the highaccuracy control mode. accuracy control mode. accuracy control mode.
694
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Format
Function
A
B
C
Tool center point control Tool center point control Tool center point control
becomes valid even in becomes valid even in is ignored as the user
the user macro program. the user macro program. macro takes precedence over the tool center point control function.
G65 to G67/
G66.1
User macro
-
User macro sub- User macro subprogram program termi- is terminated.
nation
Tool center point control
will be ignored.
-
End position er- The end position error
ror check cancel- check cancellation belation
comes valid.
-
The end position error
check cancellation, too,
becomes valid.
G68/G69
Coordinate rota- P942
tion
P941
P941
G68IiJjKk/
G69
3-dimensional
P922
coordinate conversion
P941
P923
G70 to G89
Fixed cycle
P942
The tool center point
control is ignored as the
start fixed cycle becomes valid.
The tool center point
control is ignored as the
start fixed cycle becomes valid.
G90/G91
Absolute/Incremental value
command
The modal is switched to
the specified absolute /
incremental value command, and then tool
center point control is
performed.
Tool center point control
is performed following
the absolute / incremental modal.
Tool center point control
is performed under the
specified absolute / incremental value command.
G92
Machine coordi- P942
nate system setting
-
P941
G94
Feed per minute Tool center point control Tool center point control Tool center point control
is performed in the feed- is performed in the feed- is performed in the feedperminute mode.
perminute mode.
perminute mode.
G95
Feed per revolu- P942
tion
P941
P941
G96/G97
Constant surface P942
speed control
P941
P941
G98
Fixed cycle Initial The modal is switched to
level return
G98 and tool center
point control becomes
valid.
The modal is switched to
G98 and tool center
point control becomes
valid.
The modal is switched to
G98 and tool center
point control becomes
valid.
G99
Fixed cycle (R
The modal is switched to
point level return) G99 and tool center
point control becomes
valid.
The modal is switched to
G99 and tool center
point control becomes
valid.
The modal is switched to
G99 and tool center
point control becomes
valid.
G114.1
Spindle synchro- P942
nization
P941
P941
(*1) It is valid when the parameter "#1267 ext03/bit0" is OFF. If it is commanded when this parameter is ON, the
program error (P34) will occur.
(*2) It is valid when the parameter "#1267 ext03/bit0" is ON. If it is commanded when the parameter is OFF, the
program error (P34) will occur.
695
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4 Inclined Surface Machining ; G68.2, G68.3/G69
Function and purpose
Inclined surface machining function enables defining a new coordinate system (feature coordinate system) which is
obtained by rotating and parallel translating the origin of the present coordinate system (X, Y, Z) (a coordinate system that existed before the inclined surface machining command was issued). With this function, you can define an
arbitrary plane in a space and issue normal program commands to this plane in machining.
It's possible to automatically control the tool axis to be in the + Z direction of the newly defined feature coordinate
system. The feature coordinate system is redefined in accordance with the tool axis direction, thus there is no need
to mind the feature coordinate system's direction and tool axis' rotation direction in making machining programs.
If the inclined surface machining is commanded while this function is not defined in the specifications, it causes a
program error (P950).
Y
Z
Z
X
Y
Original coordinate system
Feature coordinate system
X
When workpiece installation error compensation is valid, the workpiece coordinate system is set to the workpiece
installation coordinate system.
In M830/M80, if the linear axis and two rotary axes are commanded to the same block, a program error (P10) will
occur.
(Example) When the following machining program is executed with machine configuration X-Y-Z-A-C
:
G68.2 X10. Y20, I0. J-45. K0.;
:
X20. A10 C20;
Program error (P10)
:
G69;
The feature coordinate system is defined using the following method.
G Code
G68.2 P0
Command method
Define using Euler angles
G68.2 P1
Define using roll-pitch-yaw angles
G68.2 P2
Define using three points in a plane
G68.2 P3
Define using two vectors
G68.2 P4
Define using projection angles
G68.2 P10
Define by selecting the registered machining surface
G68.3
Define using tool axis direction
G69
Cancel inclined surface machining command
IB-1501278-D
696
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
If address P is omitted when G68.2 is commanded, it is assumed that G68.2 P0 is designated (define using
Euler angles).
If address P is not set to "0" to "4" or "10" when G68.2 is commanded, a program error (P954) will occur.
If address P or Q of the G68.2 command includes a decimal point, it is rounded to an integer.
Make sure to command G68.2, G68.3, and G69 in an independent block. If they are commanded in the same
block as for other G codes or a motion command, etc., a program error (P954) will occur.
The G69 command cannot be issued during circular interpolation or fixed cycle mode. If issued, a program error
(P952) will occur.
697
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.1 How to Define Feature Coordinate System Using Euler Angles
Command format
Inclined surface machining mode ON (define using Euler angles) (P0 can be omitted.)
G68.2 P0 X__ Y__ Z__ I__ J__ K__ ;
X, Y, Z
Feature coordinate system's origin
Command by the absolute values with respect to the coordinate system before issuing the inclined surface machining command.
I, J, K
Euler angles (-360.0° to 360.0°)
Note
(1) If the address X, Y or Z is omitted, the address will be regarded as zero.
When all of addresses X, Y, and Z are set to "0", the feature coordinate system's origin will be the same as that
of the coordinate system before the inclined surface machining command is issued.
(2) If the address I, J or K is omitted, the address will be regarded as zero.
(3) If any address other than P, X, Y, Z, I, J and K is included, a program error (P954) will occur.
Detailed description
By commanding G68.2 P0 (define using Euler angles), the feature coordinate system (a coordinate system made
by rotating and shifting the origin of the coordinate system before inclined surface machining) is defined.
Coordinate system rotation is commanded using the Euler angles.
(Example) When "G68.2 Xx Yy Zz Ia Jb Kc;" is commanded, the feature coordinate system is established as below.
(a) Define a point (x, y, z) in the coordinate system before issuing the inclined surface machining command, as the
feature coordinate system's origin.
(b) Rotate the coordinate system, which was defined by shifting the origin in (a), by angle a about its Z axis.
(c) Rotate the coordinate system, which was defined by rotation in (b), by angle b about its X axis.
(d) Rotate the coordinate system, which was defined by rotation in (c), by angle c about its Z axis.
(e) The coordinate system created in the above steps is the feature coordinate system.
IB-1501278-D
698
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
If coordinate system's rotation is counter clockwise when viewing from the positive ends of the rotation center axis,
this rotation will be considered as forward rotation. The relationship between the coordinate system before issuing
the inclined surface machining command and the feature coordinate system is as shown below.
(a)
WZ
(c)
(b)
Z
b
z
Y
Z
Y
WY
x
WX
X
a
y
X
FY
WZ
(e)
(d)
FZ
Y
Z
X
FX WY
z
c
x
WX
699
y
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.2 How to Define Feature Coordinate System Using Roll-Pitch-Yaw Angles
Command format
Inclined surface machining mode ON (define using roll-pitch-yaw angles)
G68.2 P1 Q__ X__ Y__ Z__ I__ J__ K__ ;
X, Y, Z
Feature coordinate system's origin
Command by the absolute values with respect to the coordinate system before issuing the inclined surface machining command.
Q
Rotation order (q: Setting value for address "Q")
q
First
Second
Third
123
X
Y
Z
132
X
Z
Y
213
Y
X
Z
231
Y
Z
X
312
Z
X
Y
321
Z
Y
X
If address Q is omitted, "q" will be handled as "123".
I
Rotation angle about the X axis (roll angle) (the setting range is from -360.0° to
360.0°)
J
Rotation angle about the Y axis (pitch angle) (the setting range is from -360.0° to
360.0°)
K
Rotation angle about the Z axis (yaw angle) (the setting range is from -360.0° to
360.0°)
Note
(1) If the address X, Y or Z is omitted, the address will be regarded as zero.
When all of addresses X, Y, and Z are set to "0", the feature coordinate system's origin will be the same as that
of the coordinate system before the inclined surface machining command is issued.
(2) If the address I, J or K is omitted, the address will be regarded as zero.
(3) If any address other than P, Q, X, Y, Z, I, J and K is included, a program error (P954) will occur.
(4) A program error (P954) will occur if "q" is a value other than those listed above.
IB-1501278-D
700
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Detailed description
(Example) The feature coordinate system is established by the machining program as shown below.
G68.2 P1 Q123 Xx Yy Zz Ia Jb Kc;
(When q=123 [rotations in the order of WX, WY and WZ])
(a) Designate the feature coordinate system's origin by x, y and z (coordinates that existed before the inclined surface machining command was issued).
(b) Rotate the shifted coordinate system by angle "a" about the X axis of the coordinate system before issuing the
inclined surface machining command. (Roll angle)
(c) Rotate the coordinate system, which was defined after rotation in (b), by angle "b" about the Y axis of the coordinate system before issuing the inclined surface machining command. (Pitch angle)
(d) Rotate the coordinate system, which was defined after rotation in (c), by angle "c" about the Z axis of the coordinate system before issuing the inclined surface machining command. (Yaw angle)
(e) The coordinate system created in the above steps is the feature coordinate system.
(a)
(b)
FZ
FY
(c)
a
FY
FX
WZ
WY
FZ
FX
(x, y, z)
WX
(d)
FZ
(e)
FZ
FX
c
FY
FX
FY
FZ
FX
b
FY
701
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.3 How to Define Feature Coordinate System Using Three Points in a Plane
Command format
Inclined surface machining mode ON (define using three points in a plane)
G68.2 P2 Q0 X__ Y__ Z__ R__ ;
Shift amount setting
G68.2 P2 Q1 X__ Y__ Z__ ;
1st point coordinate setting
G68.2 P2 Q2 X__ Y__ Z__ ;
2nd point coordinate setting
G68.2 P2 Q3 X__ Y__ Z__ ;
3rd point coordinate setting
Q
Designate the points
Designate from the 1st to the 3rd points, or specify by the shift distance.
0: Shift distance
1: The 1st point
2: The 2nd point
3: The 3rd point
X, Y, Z
Shift amount between the 1st point and the feature coordinate system's origin
(Shift amount setting) Command by the incremental value with respect to the feature coordinate system
before parallel shift.
R
The angle to rotate the feature coordinate system about the Z axis (the setting range
is from -360.0° to 360.0°)
X, Y, Z
(The 1st point)
Designate the feature coordinate system's origin using with the workpiece coordinate system's position. (*1)
X, Y, Z
(The 2nd point)
Designate a point on the feature coordinate system's X axis (+ direction) using with
the workpiece coordinate system's position. (*1)
X, Y, Z
(The 3rd point)
Designate a point on the feature coordinate system's Y axis using with the workpiece coordinate system's position. (*1)
(*1) Command by the absolute values with respect to the coordinate system before issuing the inclined surface machining command.
Note
(1) If the address Q is omitted, the address will be regarded as zero.
(2) If the address X, Y or Z in Q0 to Q3 is omitted, the address will be handled as zero.
(3) If the address R is omitted, the address will be regarded as zero.
(4) If any address other than P, Q, X, Y, Z and R is included, a program error (P954) will occur.
(5) A program error (P954) will occur in the following cases.
When any other command is included among G68.2 P2 Q0 to Q3.
When any of G68.2 P2 Q1 to Q3 is lacked.
When G68.2 P2 Q0 to Q3 are overlapped.
When a value other than 0 to 3 is commanded in the address Q.
When R is commanded in more than one block.
(6) A program error (P955) will occur in the following cases.
When the same point was designated for two or more points among the 1st to the 3rd points.
When the three points exist on a straight line.
The distance between one of the three points and the straight line connecting the other two points is less
than 0.1 (mm).
IB-1501278-D
702
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Detailed description
(1) Designate the points Q1, Q2 and Q3 with respect to the coordinate system before issuing the inclined surface
machining command. The point Q1 will be the origin of the feature coordinate system.
(2) Define the X, Y and Z axes' directions of the feature coordinate system in the following procedure.
Feature coordinate system's X axis is in the direction from the 1st point (Q1) to the 2nd point (Q2). Normally,
designate a point on Y axis (+ direction) as Q3. (If the commanded X axis and Y axis are not at perfect right
angles, the Y axis will be automatically compensated to be at right angles to the X axis.)
Feature coordinate system's Z axis is in the direction of the cross product of (Q2-Q1)×(Q3-Q1).
Feature coordinate system's Y axis is determined with respect to the right-handed system.
(3) When shift distance (x0, y0, z0) of the feature coordinate system's origin is commanded, the feature coordinate
system's origin is further parallel translated by (x0, y0, z0). Command the parallel translation distance with respect to the feature coordinate system before parallel translation. Always specify x0, y0 and z0 by incremental
value.
(4) When the rotation angle a is commanded in the address R, the feature coordinate system is rotated by the angle
"a" about the Z axis of the feature coordinate system.
(Example) The feature coordinate system is established by the machining program as shown below.
G68.2 P2 Q0 Xx0 Yy0 Zz0 Ra ;
G68.2 P2 Q1 Xx1 Yy1 Zz1 ;
G68.2 P2 Q2 Xx2 Yy2 Zz2 ;
G68.2 P2 Q3 Xx3 Yy3 Zz3 ;
FZ (=FZ1)
(4)
FZ1
FY a
Q3
FY1
(3)
a
FX
(x0,y0,z0)
WZ
(1)
Q1
Q2
(x1,y1,z1) FX1 (2)
WY
WX
Coordinate system before issuing the inclined surface machining command
(Workpiece coordinate system)
703
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.4 How to Define Feature Coordinate System Using Two Vectors
Command format
Inclined surface machining mode ON (define using two vectors)
G68.2 P3 Q1 X__ Y__ Z__ I__ J__ K__ ;
G68.2 P3 Q2 I__ J__ K__ ;
Q
Designate vectors
Select the X axis direction vector or the Z axis direction vector.
1: X axis direction vector
2: Z axis direction vector
X, Y, Z
Feature coordinate system's origin
Command by the absolute values with respect to the coordinate system before issuing the inclined surface machining command.
I, J, K
The feature coordinate system's X or Z axis direction vector
When Q1 is commanded, the X axis direction vector is set. When Q2 is commanded, the Z axis direction vector is set.
Command the direction with respect to the coordinate system before issuing the inclined surface machining command. The setting range is the same as the axis setting range, and the unit is dimensionless.
Note
(1) If the address X, Y or Z is omitted, the address will be regarded as zero.
When all of addresses X, Y, and Z are set to "0", the feature coordinate system's origin will be the same as that
of the coordinate system before the inclined surface machining command is issued.
(2) If the address I, J or K in G68.2 P3 Q1 and Q2 is omitted, the omitted value will be handled as zero.
(3) If any address other than P, Q, I, J and K is included, a program error (P954) will occur. (X, Y and Z are possible
to command in G68.2 P3 Q1)
(4) A program error (P954) will occur in the following cases.
When any other command is included between G68.2P3 Q1 and Q2.
When either G68.2 P3 Q1 or Q2 is lacked.
When G68.2 P3 Q1 and Q2 are overlapped.
When a value other than 1 to 2 is commanded in the address Q.
When the address Q is omitted
(5) A program error (P955) will occur in the following cases.
When all of addresses I, J, and K are set to "0":
When the angle formed by the feature coordinate system's X and Z vectors is not a right angle, and the deviation is 5 degrees or more.
IB-1501278-D
704
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Detailed description
(1) Designate the feature coordinate system's origin by x, y and z (coordinates that existed before the inclined surface machining command was issued).
(2) Define the X, Y and Z axes' directions of the feature coordinate system in the following procedure.
Feature coordinate system's X axis positive direction is rx = (ix, jx, kx).
Feature coordinate system's Y axis positive direction is that of the cross product of (iz, jz, kz)×(ix, jx, kx).
The feature coordinate system's Z axis is determined with respect to the right-handed system.
The direction of rx=(ix, jx, kx) is the X axis of the feature coordinate system.
Normally, the direction of rz=(iz, jz, kz) is the Z axis (positive direction) of the feature coordinate system.
(If rx and rz are not at perfect right angle to each other, they will be automatically compensated so that they are
at right angle to the X axis.)
(Example) The feature coordinate system is established by the machining program as shown below.
G68.2 P3 Q1 Xx Yy Zz Iix Jjx Kkx ;
G68.2 P3 Q2 Iiz Jjz Kkz ;
rz=(iz,jz,kz)
rx=(ix,jx,kx)
FZ
FX
FY
(x,y,z)
Y
X
WZ
Z
WY
WX
Coordinate system before issuing the inclined surface machining command
(Workpiece coordinate system)
705
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.5 How to Define Feature Coordinate System Using Projection Angles
Command format
Inclined surface machining mode ON (define using projection angles)
G68.2 P4 X__ Y__ Z__ I__ J__ K__ ;
X, Y, Z
Feature coordinate system's origin
Command by the absolute values with respect to the coordinate system before issuing
the inclined surface machining command.
I
The angle to rotate the X axis about the Y axis of the coordinate system before issuing
the inclined surface machining command (the setting range is from -360.0° to 360.0°)
J
The angle to rotate the Y axis about the X axis of the coordinate system before issuing
the inclined surface machining command (the setting range is from -360.0° to 360.0°)
K
The rotation angle about the Z axis of the feature coordinate system (the setting range
is from -360.0° to 360.0°)
Note
(1) If the address X, Y or Z is omitted, the address will be regarded as zero.
When all of addresses X, Y, and Z are set to "0", the feature coordinate system's origin will be the same as that
of the coordinate system before the inclined surface machining command is issued.
(2) If the address I, J or K is omitted, the omitted value will be handled as zero.
(3) If any address other than P, X, Y, Z, I, J and K is included, a program error (P954) will occur.
(4) A program error (P955) will occur when the angle formed by the X axis after rotating by the angle designated
with address I about the Y axis, and the Y axis after rotating by the angle designated with address J about the
X axis is 1 degree or less.
Detailed description
(1) Designate the feature coordinate system's origin by x, y and z (coordinates that existed before the inclined surface machining command was issued).
(2) Define the X, Y and Z axes' directions of the feature coordinate system in the following procedure.
The direction in which the X axis of the coordinate system before issuing the inclined surface machining
command is rotated by angle a about the Y axis is defined as "ra".
The direction in which the Y axis of the coordinate system before issuing the inclined surface machining
command is rotated by angle b about the X axis is defined as "rb".
Feature coordinate system's Z axis is in the direction of the cross product of (ra × rb).
Feature coordinate system's X axis is in the direction determined by rotating "ra" by the angle "c" about the
feature coordinate system's Z axis.
Feature coordinate system's Y axis is determined with respect to the right-handed system.
Note
If "ra" and "rb" are considered to be parallel (or if the angle formed by the two vectors is 1 degree or less), a
program error (P955) will occur.
Except XZ and YZ plane, it is not possible to designate a plane that is in parallel with Z axis.
IB-1501278-D
706
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(Example) The feature coordinate system is established by the machining program as shown below.
G68.2 P4 Xx Yy Zy Ia Jb Kc ;
FZ
FZ
rb
FY
b
FY
FX
a
FX
c
ra
(x, y, z)
Y
WY
WZ
WX
X
Z
Coordinate system before issuing the inclined surface machining command
(Workpiece coordinate system)
707
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.6 Define by Selecting The Registered Machining Surface
Command format
Inclined surface machining mode ON (define R-Navi machining surface)
G68.2 P10 Q__ D__ ;
Q
Workpiece No. designated by R-Navi or workpiece name designated by R-Navi
D
Machining surface No. designated by R-Navi or machining surface name designated by R-Navi
Note
(1) When address Q is omitted, select workpiece No. 1 if Q0,Q1 is commanded.
(2) When address D is omitted, select machining surface No. 1 (BASE-SURFACE) if D0,D1 is commanded.
(3) If any address other than P, Q, and D is designated when G68.2 P10 is commanded, a program error (P954)
will occur.
(4) A program error (P954) will occur when:
a value other than 0 to 10 is commanded in address Q or an undefined workpiece name is designated;
a value other than 0 to 17 is commanded in address D or an undefined machining surface name is designated;
the workpiece name does not include a character string (command represented by "Q<>"); and
the machining surface name does not include a character string (command represented by "D<>").
(5) If no feature coordinate system can be defined for the selected machining surface, a program error (P956) will
occur.
(6) If there are multiple workpieces or machining surfaces of the same name when the workpiece name or machining
surface name is designated, a lower number is selected.
(7) When the machining surface is called from the program, [SEL] or [*] is not displayed on the screen. Various PLC
signals are not set to ON. (R-Navi machining surface selecting signal (XD28), R-Navi selecting workpiece No.
signal (R660), R-Navi selecting machining surface No. signal (R661))
(8) When the machining surface is called from the program, the basic coordinate system designated by R-Navi for
each workpiece is not selected. Before "G68.2 P10" is commanded, select a workpiece coordinate system from
the program.
(9) If you have defined a workpiece No. in address Q, define a machining surface No. in address D.
If you have defined a workpiece name in address Q, define a machining surface name in address D.
IB-1501278-D
708
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.7 How to Define Feature Coordinate System Using Tool Axis Direction
Command format
Inclined surface machining mode ON (define using tool axis direction)
G68.3 X__ Y__ Z__ R__;
X, Y, Z
Feature coordinate system's origin
Command by the absolute values with respect to the coordinate system before issuing the inclined surface machining command.
R
The angle to rotate the feature coordinate system about Z axis (the setting range is
from -360.0° to 360.0°)
Note
(1) If the address X, Y or Z is omitted, the address will be regarded as zero.
When all of addresses X, Y, and Z are set to "0", the feature coordinate system's origin will be the same as that
of the coordinate system before the inclined surface machining command is issued.
(2) If the address R is omitted, the omitted value will be handled as zero.
(3) If any address other than X, Y, Z and R is included, a program error (P954) will occur.
Detailed description
(1) Designate the feature coordinate system's origin by x, y and z (coordinates that existed before the inclined surface machining command was issued).
(2) Define the X, Y and Z axes' directions of the feature coordinate system in the following procedure.
Feature coordinate system's Z axis is in the tool axis direction.
Feature coordinate system's X axis is in the direction of the X axis of the coordinate system before issuing
the inclined surface machining command after rotating with the tool. (When all the tool-side rotary axes are
at 0 degrees (machine value), the feature coordinate system's X axis will be in the same direction as the
X axis of the coordinate system before issuing the inclined surface machining command.)
Feature coordinate system's Y axis is in the direction of the Y axis of the coordinate system before issuing
the inclined surface machining command after rotating with the tool. (When all the tool-side rotary axes are
at 0 degrees (machine value), the feature coordinate system's Y axis will be in the same direction as the
Y axis in the coordinate system before issuing the inclined surface machining command.)
Feature coordinate system is finally established by rotating the commanded angle with address R about the
Z axis.
709
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(Example) The feature coordinate system is established by the machining program as shown below.
G68.3 Xx Yy Zy Ra;
FY
a
FZ
FX
a
WZ
WY
WX
Coordinate system before issuing the inclined surface machining command
(Workpiece coordinate system)
IB-1501278-D
710
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.8 Tool Axis Direction Control; G53.1/G53.6
Function and purpose
A rotary axis is automatically moved so that the tool axis direction (direction from the tool's tip to the bottom) will be
the feature coordinate system's +Z axis direction. For table tilt type and compound type machines, feature coordinate system may change in accordance with the rotation of the table rotary axis.
The following two types of tool axis direction control can be utilized:
Type 1 (G53.1 command)
Only the rotary axis is moved.
Type 2 (G53.6 command)
The rotary axis and the orthogonal axis are moved by fixing the tool center point
position in the view from the workpiece.
Command format
Tool axis direction control (type 1): Only the rotary axis is moved.
G53.1 P__ ;
Tool axis direction control (type 2): The rotary axis and the orthogonal axis are moved by fixing the tool center point position in the view from the workpiece.
G53.6 P__ Q__ H__ ;
P
Select a solution for the rotary axis
0: Select a default solution for each machine type
1: Select a solution so that the primary rotary axis rotation is positive.
2: Select a solution so that the primary rotary axis rotation is negative.
Q
Select the rotation order of the rotary axes when the number of simultaneous contouring control axes is 4 axes or less and the operation at the time of G53.6 command is limited to simultaneous 4 axes (3 orthogonal axes + 1 rotary axis) or less.
(In the following example, there are 2 rotary axes.)
0: The axes operate in the order set in the "#7917 SLCT_G53_6_ROTAX" parameter.
1: The axes operate in the order of primary rotary axis and secondary rotary axis.
2: The axes operate in the order of secondary rotary axis and primary rotary axis.
Even if the number of simultaneous contouring control axes is 5 axes or more, the
number can be limited to the simultaneous 4 axes (3 orthogonal axes + 1 rotary axis) or fewer by address Q command. However, when address Q command is "0", 5
axes operate simultaneously regardless of the parameter settings.
H
Tool length offset No.
G53.1/G53.6 are group 00.
Note
(1) Command G53.1/G53.6 during inclined surface machining mode. If commanded in any other mode, a program
error (P953) will occur.
(2) Make sure to command G53.1/G53.6 surely in a block. If this command is issued in the same block as of other
G codes or travel command etc., a program error (P953) will occur.
(3) The travel speed when G53.1 is commanded follows the G group 1 modal (such as G00/G01) during the tool
axis direction control command.
(4) The travel speed on the feature coordinate system when G53.6 is commanded follows G group 1 modal (such
as G00/G01). The travel speed of each axis may exceed the command speed as the tool tip position is fixed in
the view from workpiece. However, rapid traverse (G00) is clamped by the parameter "#2001 rapid", and the
cutting feed (G01) is clamped by the parameter "#2002 clamp". (These parameters depend on the MTB specifications.)
711
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(5) If the address P is omitted, the omitted value will be handled as zero. If any other value than 0, 1, and 2 is command, a program error (P35) will occur.
(6) If any address other than P/N is commanded while commanding G53.1, a program error (P953) will occur.
(7) When address Q is omitted at the time of G53.6 command, it is regarded that 0 is commanded. If any other value
than 0, 1, and 2 is command, a program error (P35) will occur.
(8) If any address other than P/H/N is commanded while commanding G53.6, a program error (P953) will occur.
(9) When the address H is omitted, H modal commanded before G53.6 command will be applied. If H modal is not
commanded, a program error (P953) will occur.
(Example 1)
(Example 2)
:
G43 H1
:
G53.6 ← Use H1
:
:
G53.6 ← Error (P953)
:
(10) If the tool length offset No. is changed by address H command, a program error (P953) will occur.
(Example 1)
:
G43 H1 ← Command the tool offset No.1
:
G53.6 H2 ← If tool length offset No.2 is commanded, a program error (P953) will occur.
:
(11) If the offset amount for the tool No. that the address H is commanded is "0", a program error (P957) will occur.
(Example 1) When "H1 = 0"
(Example 2) When "H1 ≠ 0"
(Example 3) When "0" is commaned to address H
:
G43 H1
:
G53.6 ← Error (P957)
:
IB-1501278-D
:
:
G43 H1
G53.6 ← Error (P957)
:
:
H0 ← Tool length offset is "0"
: while it remains G43 modal.
G53.6 ← Error (P957)
:
712
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Detailed description
The operation of type 1 (G53.1)
For the G53.1 command, the 3 orthogonal axes (X, Y, and Z axes) do not move, however, only the 2 rotary axes
rotate simultaneously so that the tool axis direction is in line with the +Z direction of the feature coordinate system.
(1) For compound type B-C axes
When the G53.1 command is issued for a compound type (B-C axes) machine, the B axis of the tool and the C
axis of the table rotate simultaneously.
WZ
B
B
WY
FY
FZ
WX
G53.1
FX
C
C
(2) For table tilt type A-C axes
When the G53.1 command is issued for a table tilt type (A-C axes) machine, the A and C axes of the table rotate
simultaneously.
WZ
FZ
G53.1
WY
FY
FX
WX
A
A
C
C
(3) For tool tilt type B-C axes
When the G53.1 command is issued for a tool tilt type (B-C axes) machine, the B and C axes of the tool rotate
simultaneously.
C
C
WZ
B
WY
FY
B
WX
G53.1
FZ
713
FX
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Type 2 (G53.6) command
For G53.6 command, the tool axis end position of the tool axis direction seen from workpiece is fixed to be in +Z
direction in the feature coordinate system, and up to 3 orthogonal axes (x axis, Y axis, and Z axis) and 2 rotary axes
moves simultaneously.
The number of axes to be moved simultaneously is limited by the number of simultaneous contouring control axes.
If the number of simultaneous contouring control axes is 4 axes or fewer, the rotary axes move separately.
The order of rotary axes moving separately can be specified with address Q command. When the number of simultaneous contouring control axes is 5 axes or more, the rotary axes can also be moved separately by issuing the
address Q command.
[When the number of simultaneous contouring control axes is 5 axes or more]
For G53.6 command, up to 3 orthogonal axes(X axis, Y axis, and Z axis) and 2 rotary axes can be moved simultaneously.
(1) For compound type B-C axes
When the G53.6 command is issued for a compound type (B-C axes) machine, the X, Y, Z, and B axes of the
tool and the C axis of the table move simultaneously.
WZ
B
WY
WX
FY
B
FZ
G53.6
FX
C
C
(2) For table tilt type A-C axes
When the G53.6 command is issued for a table tilt type (A-C axes) machine, the X, Y, and Z axes of the tool and
the A and C axes of the table move simultaneously.
WZ
FZ
WY
G53.6
FY
WX
FX
A
A
C
IB-1501278-D
C
714
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(3) For tool tilt type B-C axes
When the G53.6 command is issued for a tool tilt type (B-C axes) machine, the X, Y, Z, B, and C axes of the tool
rotate simultaneously.
C
C
WZ
WY
B
FY
WX
G53.1
B
FZ
FX
[When the number of simultaneous contouring control axes is 4 axes or fewer]
Up to 3 orthogonal axes (X, Y, Z axes) and a rotary axis move simultaneously with G53.6 command. When 2 rotary
axes move, the order of rotary axes to move is specified with the parameter “#7917 SLCT_G53_6_ROTAX” or address Q. When specifying "1" to the address Q, the axis moves in the order of primary rotary axis and secondary
rotary axis. When setting "2" to the address Q, the axis moves in the order of the secondary axis and the primary
axis. When executing the single block operation, either performing the block stop or not at the movement completion
for each rotary axis can also be specified with parameter “#8132 G53.6 block stop”.
(1) Compound type B-C axis
(a) When moving in the order of primary rotary axis and secondary rotary axis
First, the B axis ("B" in the figure below) of the tool rotates, and then the X, Y, and Z axes of the tool also
move to fix the tool center position.
Next, the C axis ("C" in the figure below) of the table rotates, and then the X, Y, and Z axes of the tool also
move as if the tool follows the workpiece movement.
WZ
FY
WY
FZ
WX
B
G53.6
FY
B
FZ
FX
FX
C
C
WY
WX
FY
FY
FX
FX
715
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(b) When moving in the order of secondary rotary axis and primary rotary axis
First, the C axis ("C" in the figure below) of the table rotates, and then the X, Y, and Z axes of the tool also
move as if the tool follows the workpiece movement.
Next, the B axis ("B" in the figure below) of the tool rotates, and then the X, Y, and Z axes of the tool also
move to fix the tool center position.
WZ
WY
B
FY
FZ
WX
FY
FZ
B
G53.6
FX
C
F
X
FX
C
WY
WX
F
Y
FY
FY
FX
FX
(2) For table tilt type A-C axes (When moving in the order of secondary rotary axis and primary rotary axis)
First, the C axis ("C" in the figure below) of the table rotates, and then the X, Y, and Z axes of the tool also move
as if the tool follows the workpiece movement.
Next, the A axis ("A" in the figure below) of the table rotates, and then the X, Y, and Z axes of the tool also move
as if the tool follows the workpiece movement.
WZ
WY
FZ
WX
G53.6
FX
A
A
C
FY
C
WY
WX
FX
FX
FY
FY
IB-1501278-D
716
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(3) For tool tilt type B-C axis (When moving in the order of primary rotary axis and secondary rotary axis)
First, the B axis ("B" in the figure below) of the tool rotates, and then the X, Y, and Z axes of the tool also move
to fix the tool center position.
Next, the C axis ("C" in the figure below) of the tool rotates, and then the X, Y, and Z axes of the tool also move
to fix the tool center position.
C
WZ
FY
WX
B
G53.6
FY
C
WY
FZ
FZ
B
FX
FX
X
F
FY
FY
F
X
WY
WX
FX
FX
Select rotary axis' solution
When G53.1 is commanded, there are normally two types of solutions for the rotary axis' calculated angle; one is to
rotate the primary rotary axis positively, and the other negatively. Use the address P (P=0, 1 or 2) in G53.1 command
to select either one of the solutions.
These are the default solutions for each machine type.
When P is "0": Selects a default solution for each machine type
When P is "1": Selects a solution so that the primary rotary axis rotation is positive
When P is "2": Selects a solution so that the primary rotary axis rotation is negative
When the address P is omitted, P will be regarded as zero, so the default solution for each machine type is selected.
If any other value than 0,1, and 2 is command, a program error (P35) will occur.
These are the default solutions for each machine type.
Machine type
Primary rotary axis
Solution selected by default
Tool tilt type
Tool-side 2nd rotary axis
Selects a solution so that the primary rotary
axis rotation is positive
(same as when P is "1")
Table tilt type
Table-side 2nd rotary axis
Selects a solution so that the primary rotary
axis rotation is negative
(same as when P is "2")
Compound type
Tool-side rotary axis
Selects a solution so that the primary rotary
axis rotation is positive
(same as when P is "1")
717
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Primary rotary axis is the rotary axis which serves as the criteria for selecting the solution in G53.1 command.
WZ
WX
WY
FY
FZ
FX
(*1)
G53.1 P0
G53.1 P1 (*3)
B>0
G53.1 P2
B<0
FY
FZ
FY
FZ
FX
(*2)
(*2)
FX
C
C
(*1) Indicates the 1st feature coordinate system.
(*2) Indicates the 2nd feature coordinate system.
(*3) For compound type machines, a solution that makes the primary rotary axis rotation positive is selected as a
result of issuing the G53.1P0 command.
IB-1501278-D
718
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.9 Details of Inclined Surface Machining Operation
Detailed description
Operation during inclined surface machining mode
When inclined surface machining is commanded, the above-mentioned feature coordinate system is defined. By setting the parameters #8901 to #8906 to "23", you can display the coordinates of the feature coordinate system on the
counter (no machine motion). The travel commands during inclined surface machining mode are handled with respect to the feature coordinate system.
In the counter display of the feature coordinate system, whether the machining position on the program command
that does not include the tool length compensation/tool radius compensation can be selected depends on the MTB
specifications (parameter "#1287 ext23/bit1, bit2 (inclined surface coordinate display)".
Tool Axis Direction Control
When G53.1 is commanded, the rotary axis moves so that the tool axis direction will be + Z direction of the feature
coordinate system. At this time, the rotary axis moves, but X, Y and Z axes won't move. The rotary axis' travel speed
is determined based on the modal when G53.1 is commanded.
CAUTION
Depending on the feature coordinate system setting, rotary axis may move greatly in response to G53.1 command. Thus, before commanding G53.1, move the tool far enough away from the table.
Cancel inclined surface machining mode
The command G69 cancels the inclined surface machining. When this mode is canceled, the feature coordinate system setting will be canceled, the coordinate system will change back to the workpiece coordinate system when inclined surface machining was commanded, and workpiece coordinate position counter will change back to the
previous workpiece coordinate system's coordinates (no machine motion). By inputting Reset, the inclined surface
machining is also canceled.
(If the parameter "#1151 rstint" is set to "0", however, the inclined surface machining mode is kept even when Reset
1 is input.)
719
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Program example
Program example 1
The machining program #10 is for machining an identical shape on each face of the hexagonal column using a compound type machine. Feature coordinate systems on each face are defined in the blocks N1 to N6, and then same
machining is performed using the subprogram (Machining program #100). The workpiece origin is deemed to be at
the center of the hexagonal column's end-face.
Machining program #10
N1 G68.2 X86.6025 Y50. Z0. I-90. J-45. K0.;
M98 P100;
G69;
G00 Z200.;
Machining on the face (1)
N2 G68.2 X86.6025 Y-50. Z0. I-150. J-45. K0.;
M98 P100;
G69;
G00 Z200.;
Machining on the face (2)
N3 G68.2 X0. Y-100. Z0. I-210. J-45. K0.;
M98 P100;
G69;
G00 Z200.;
Machining on the face (3)
N4 G68.2 X-86.6025 Y-50. I-270. J-45. K0.;
M98 P100;
G69;
G00 Z200.;
Machining on the face (4)
N5 G68.2 X-86.6025 Y50. I-330. J-45. K0;
M98 P100;
G69;
G00 Z200.;
Machining on the face (5)
N6 G68.2 X0. Y100. I-30. J-45. K0.;
M98 P100;
G69;
G00 Z200.;
Machining on the face (6)
M30
Machining program #100
G53.1;
G90 G00 X0. Y0. Z5.;
G01 Z-5. F500 ;
G01 Y20. F1000;
G02 X20. Y0. R20. F1000;
G01 X0. F1000;
M99 ;
FY
FY
(1)
FZ
FX
(6)
86.6025
50.
(2)
WX
G
WY
(5)
(3)
(4)
G: Feature coordinate system's origin
IB-1501278-D
720
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Program example 2
The machining program #10 to #15 are for machining a shape on an inclined surface of the cube as shown in the
figure next page. The feature coordinate system is defined by designating the inclined surface in each main program,
and then same machining is done using the subprogram (Machining program #100).
Machining program #10 Euler angles
N1 G28XYZBC ;
G54X0Y0Z0 ;
M200 ;
G68.2 X33.3333 Y 33.3333 Z66.6666 I-45 J54.7356 K0;
M98 P100;
G69;
Machining program #11 Roll-pitch-yaw angles
N2 G28XYZBC ;
M200 ;
G68.2 P1 Q321 X33.3333 Y 33.3333 Z66.6666 I45 J-35.2644 K-30;
M98 P100;
G69;
M30 ;
Machining program #12 Three points in a plane
N3 G28XYZBC ;
G54X0Y0Z ;
M200 ;
G68.2 P2 Q0 X0 Y-18.7503 Z0 R0;
G68.2 P2 Q1 X50 Y50 Z100;
G68.2 P2 Q2 X50 Y0 Z50;
G68.2 P2 Q3 X50 Y50 Z100;
M98 P100;
G69;
M30 ;
Machining program #13 Two vectors
N4 G28XYZBC ;
G54X0Y0Z0 ;
M200 ;
G68.2 P3 Q1 X33.3333 Y 33.3333 Z66.6666 J-100 K0;
G68.2 P3 Q2 I-100 J-100 K100;
M98 P100;
G69;
M30 ;
721
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Machining program #14 Projection angles
N5 G28XYZBC ;
G54X0Y0Z0 ;
M200 ;
G68.2 P4 X33.3333 Y 33.3333 Z66.6666 I-45 J45 K-60;
M98 P100;
G69;
M30 ;
Machining program #15 Tool axis direction basis
N6 G28XYZBC ;
G54X0Y0Z0 ;
M200 ;
B-45. C45.;
G68.3 X33.3333 Y33.3333 Z66.6667 R0.;
M98 P100;
M69 ;
M30 ;
Machining program #100
G53.1;
G90G00X0.Y0.Z0.B0.C0.;
G00X0Y0Z0;
G01 Y50. F1000;
G02 X50. Y0. R50. F1000;
G01 X0. F1000;
M99 ;
WZ
FY
B
C
FZ
FX
100
WX
WY
100
A
100
FY
FX
B
C
G
A
(X0, Y0, Z0) = (33.3333, 33.3333, 66.6667)
G: Feature coordinate system's origin
IB-1501278-D
722
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.10 Rotary Axis Basic Position Selection
Detailed description
When inclined surface machining is commanded, the basic position for establishing the feature coordinate system's
origin can be set with the parameter (#7915 Rotary axis basic position in inclined surface machining). There are two
types of basic position selection. One is to set the feature coordinate system in view from the workpiece coordinate
system independently of the rotary axis' position when inclined surface machining is commanded (Start position basis), and the other is to set the feature coordinate system in view from a workpiece coordinate system which is determined regardless of the rotary axis position when inclined surface machining is commanded (Zero degree
position basis).
Rotary axis basic position in inclined
surface machining Start position basis
(#7915=1)
When workpiece is placed in
the workpiece coordinate system direction:
Workpiece coordinate offset
A0. C0.
:
:
G90 G54 A0. C0.
G68.2XxYyZz
Rotary axis basic position in inclined
surface machining Zero degree position basis (#7915=0)
G90 G54 A0. C0.
G68.2XxYyZz
WZ
G53.1
WZ
G53.1
WY
FY
:
WY
FY
:
FZ
FZ
FX
FX
WX
C0°
WX
WZ
C0°
WY
C0°
WX
When G68.2 is commanded:
When G68.2 is commanded:
Feature coordinate system is defined at Feature coordinate system is defined at
a position in view from a workpiece co- a position in view from a workpiece coordinate system.
ordinate system regardless of rotary
axis position.
C0°
C0°
FZ
FZ
WZ
WZ
FY
FY
WY
WY
FX
FX
WX
WX
When G53.1 is commanded:
When G53.1 is commanded:
The tool axis direction matches the Z
axis direction of the feature coordinate
system, which has been defined with
G68.2.
The tool axis direction matches the Z
axis direction of the feature coordinate
system, which has been defined with
G68.2.
723
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Rotary axis basic position in inclined
surface machining Start position basis
(#7915=1)
When workpiece is placed deviated from the workpiece coordinate system:
Workpiece coordinate offset
A0. C30.
:
:
G90 G54 A0. C30.
G68.2XxYyZz
Rotary axis basic position in inclined
surface machining Zero degree position basis (#7915=0)
G90 G54 A0. C30.
WZ
G53.1
G68.2XxYyZz
WZ
WY
G53.1
WY
FY
:
:
FZ
FZ
FY
FX
C0°
WX
C0°
WX
WZ
FX
WY
30°
30°
C0°
WX
30°
When G68.2 is commanded:
When G68.2 is commanded:
Feature coordinate system is defined at Feature coordinate system is defined at
a position in view from a workpiece co- a position in view from a workpiece coordinate system.
ordinate system regardless of rotary
axis position.
FZ
FZ
C0°
WZ
FY
WY
FX
WX
WZ
C0°
FY
WY
FX
WX
When G53.1 is commanded:
When G53.1 is commanded:
The tool axis direction does not match
the Z axis direction of the feature coordinate system, which has been defined
with G68.2 command.
The tool axis direction matches the Z
axis direction of the feature coordinate
system, which has been defined with
G68.2.
Example) Polygon machining: (Subprogram)
(Main program)
:
Machining an identical shape
:
on each of the six surfaces. G68.2 Xx Yy Zz Ii Jj Kk
G68.2 Xx Yy Zz Ii Jj Kk
G53.1
G53.1
WZ
G01 Xx Ff
M98 Pp
WY
:
G69
G69
:
(4)
(5)
(3)
M99
(Subprogram)
(6)
(2)
WX
Create a machining shape in the sub- G01 Xx Ff
(1)
program using inclined surface machin- :
ing and tool axis direction control. Need M99
to consider the rotary axis' angle before Carry out inclined surface machining
calling the subprogram.
and tool axis direction control in the
main program and create a machining
shape in the subprogram. No need to
consider the rotary axis' angle before
calling the subprogram.
IB-1501278-D
724
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Combination with tool center point (TCP) control
When inclined surface machining control is commanded together with the TCP control (G43.4), define the table-interlocked feature coordinate system by setting the parameter (#7911 Rotary axis basic position selection) for TCP
control. When zero degree position basis (#7911=0) is selected, it is possible to define the table-interlocked feature
coordinate system at an arbitrary rotary axis angle. For the start position basis (#7911=1), the table-interlocked feature coordinate system can be defined on an inclined surface only when the TCP control is commanded at the same
rotary axis angle as of the inclined surface machining command (G68.2) or tool axis direction control command
(G53.1).
When workpiece is placed in the workpiece coordinate system direction:
Rotary axis basic position selection
Workpiece coordinate system zero
point for a basis (#7911 = 0)
Inclined surface machining command
Zero degree position basis
(#7915 =0) Workpiece coordinate
offset A 0. C0.
Rotary axis basic position selection
The position when the tool center
point is commanded for a basis
(#7911 = 1)
:
G90 G54 A0. C0.
G68.2XxYyZz
WZ
G53.1
WY
FY
G43.4
FZ
:
FX
C0°
WZ
WX
WY
C0°
WX
When G68.2 is commanded:
Feature coordinate system is defined at a position in view from a workpiece
coordinate system regardless of rotary axis position.
C0°
FZ
WZ
FY
WY
FX
WX
When G53.1 is commanded:
The tool axis direction matches the Z axis direction of the feature coordinate
system, which has been defined with G68.2.
C0°
C0°
*FZ
*FZ
WZ
WZ
*FY
*FY
WY
WY
*FX
*FX
WX
When G43.4 is commanded:
WX
When G43.4 is commanded:
Feature coordinate system is fixed to Feature coordinate system is fixed to
the table at 0 degree of the coordi- the table at a position in view from a
nate system.
workpiece coordinate system regardless of rotary axis position.
725
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
When workpiece is placed deviated from workpiece coordinate system
(1) When TCP control (G43.4) is commanded at the same angle as of tool axis direction control (G53.1)
Rotary axis basic position selection
Workpiece coordinate system zero
point for a basis (#7911 = 0)
Inclined surface machining command
Zero degree position basis
(#7915 =0) Workpiece coordinate
offset A 0. C30.
Rotary axis basic position selection
The position when the tool center
point is commanded for a basis
(#7911 = 1)
:
G90 G54 A0. C0.
WZ
G68.2XxYyZz
WY
G53.1
FY
G43.4
FZ
:
FX
WZ
C-30°
WX
WY
WX
C0°
30°
When G68.2 is commanded:
Feature coordinate system is defined at a position in view from a workpiece
coordinate system regardless of rotary axis position.
C-30°
FZ
WZ
FY
WY
FX
WX
When G53.1 is commanded:
The tool axis direction matches the Z axis direction of the feature coordinate
system, which has been defined with G68.2.
C-30°
C-30°
*FZ
WZ
*FZ
WZ
*FY
WY
*FY
WY
*FX
*FX
WX
WX
When G43.4 is commanded:
When G43.4 is commanded:
Feature coordinate system is fixed to Feature coordinate system is fixed
the table at a position in view from a to the table at the position of the
workpiece coordinate system regard- present feature coordinate system.
less of rotary axis angle.
IB-1501278-D
726
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(2) When TCP control (G43.4) is commanded at a different angle from tool axis direction control (G53.1).
Rotary axis basic position selection
Workpiece coordinate system zero
point for a basis (#7911 = 0)
Inclined surface machining command
Zero degree position basis
(#7915 =0) Workpiece coordinate
offset A 0. C30.
Rotary axis is rotated before tool
center point control command
Rotary axis basic position selection
The position when the tool center
point is commanded for a basis
(#7911 = 1)
:
G90 G54 A0. C0.
WZ
G68.2XxYyZz
G53.1
WY
FY
G00 A30.
FZ
G43.4
FX
:
C-30°
WX
WZ
WY
When G68.2 is commanded:
Feature coordinate system is defined at a position in view from a workpiece
coordinate system regardless of rotary axis position.
WX
C0°
C-30°
30°
FZ
WZ
FY
WY
FX
WX
When G53.1 is commanded:
The tool axis direction matches the Z axis direction of the feature coordinate
system, which has been defined with G68.2.
FZ
FY
WZ
FX
WY
C-30°
WX
When G00 A30 is commanded:
The tool axis direction does not match the Z axis direction of the feature coordinate system, which has been defined with G68.2 command.
FZ
WZ
*FY
FY
*FZ
WY
*FX
C-30°
WZ
FX
WY
C-30°
WX
WX
When G43.4 is commanded:
When G43.4 is commanded:
Feature coordinate system is fixed to Feature coordinate system is fixed
the table at a degree determined
to the table at the position of the
based on the rotary axis position.
present feature coordinate system.
727
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Start position based inclined surface machining command (#7915=1)
If the Z axis of the feature coordinate system defined on an inclined surface matches the tool axis direction, the tableinterlocked feature coordinate system can be defined by commanding the tool center point (TCP) control.
However, if the TCP control start position basis is selected (#7911=1), the table-interlocked feature coordinate system can be defined on an inclined surface only when TCP control is commanded at the same angle as of the inclined
surface machining command (G68.2) or tool axis direction control command (G53.1).
IB-1501278-D
728
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.11 Relationship between Inclined Surface Machining and Other Functions
Relationship with other functions
Commands Available in Inclined Surface Machining Mode
If commanded in any other mode, a program error (P951) will occur.
Command
G00, G01
G02, G03
G02.1, G03.1
Function
Positioning, Linear Interpolation
Circular interpolation, Helical interpolation
Spiral interpolation
G04
Dwell
G05 P0, P1, P2, P10000
High-speed machining mode, high-speed high-accuracy control II
G05.1 Q0, Q1
High-speed high-accuracy control I
G08 P1
High-accuracy control
G09
Exact stop check
G10, G11
Parameter input by program / cancel, Compensation data input by program
G12, G13
Circular cut
G17, G18, G19
Plane selection
G22/G23
Stroke check before travel ON / cancel
G28
Automatic 1st reference position return
G29
Start position return
G30
2nd to 4th reference position return
G30.1 to G30.6
Tool exchange position return
G31
Skip (*1)
G31.1 to G31.3
Multi-step skip (*1)
G34, G35, G36, G37.1
Special Fixed Cycle
G40, G41, G42
Tool radius compensation cancel/left/right
G43, G44, G49
G43.1
G43.4, G43.5
Tool length compensation plus/minus/cancel
Tool length compensation along the tool axis
Tool center point control types I/II
G45,G46,G47,G48
Tool position offset
G50, G51
Scaling cancel/ON
G50.1, G51.1
G command mirror image cancel/ON
G53
Machine coordinate system selection
G53.1
Tool Axis Direction Control
G61
G61.1
G62
G64
Exact stop check mode
High-accuracy control
Automatic corner override
Cutting mode
G65
User macro simple call
G66, G66.1, G67
User macro modal call A/B/cancel
G69
Coordinate rotation cancel, Inclined surface machining cancel
G70 to G76, G80 to G89
Fixed cycle for drilling
(Including synchronous tapping)
G90, G91
Absolute value command, Incremental value command
G93
G94
G95
Inverse time feed
Feed per minute
Feed per revolution
G98, G99
Fixed cycle initial level return, R point level return
M98, M99
Subprogram call, main program return
F
Feedrate command
M,S,T,B
M, S, T, B command
729
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Command
Macro command
Function
Local variable, Common variable, Arithmetic Commands (such as four
basic arithmetic rule, trigonometric functions, square root) Control Commands (IF-GOTO- and WHILE-DO-)
(*1) Only the three orthogonal axes designated by the rotary axis configuration parameter can be commanded. If
two rotary axes are commanded, a program error (P951) will occur
Modes where inclined surface machining (including cancel command) is available
If inclined surface machining (G68.2 or G68.3) is commanded in a mode other than those listed below, a program
error (P952) will occur.
Mode
Function
G00, G01
Positioning, Linear Interpolation
G05 P0, P1, P2
High-speed machining mode
G05.1 Q0, Q1
High-speed high-accuracy control I
G08 P1
High-accuracy control
G13.1
Polar coordinate interpolation cancel
G15
Polar coordinate command cancel
G17, G18, G19
Plane selection
G20, G21
Inch command, Metric command
G22/G23
Stroke check before travel ON/cancel
G40
Tool radius compensation cancel
G40.1
Normal line control cancel
G43, G44
G49
Tool length compensation
Tool length compensation cancel
G50
Scaling cancel
G50.1
Mirror image by G code OFF
G54 to G59, G54.1
Workpiece coordinate system selection, Extended workpiece coordinate
system selection
G54.4 Pp
Workpiece installation error compensation
G61
G61.1
G64
Exact stop check mode
High-accuracy control
Cutting mode
G67
User macro modal call OFF
G69
Coordinate rotation cancel, 3-dimensional coordinate conversion cancel
G80
Fixed cycle cancel
G90, G91
Absolute value command, Incremental value command
G93
G94
G95
Inverse time feed
Feed per minute
Feed per revolution
G97
Constant surface speed control OFF
G98, G99
Fixed cycle initial level return, R point level return
IB-1501278-D
730
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Modes where tool axis direction control (G53.1/G53.6) is available
If tool axis direction control is commanded in a mode other than those listed below, a program error (P953) will occur.
Mode
Function
G00, G01
Positioning, Linear Interpolation
G05 P0, P1, P2
High-speed machining mode
G05.1 Q0, Q1
High-speed high-accuracy control I
G08
High-accuracy control
G13.1
Polar coordinate interpolation cancel
G15
Polar coordinate command cancel
G17, G18, G19
Plane selection
G20, G21
Inch command, Metric command
G23
Stroke check before travel OFF
G40
Tool radius compensation cancel
G40.1
Normal line control cancel
G43, G44
Tool length compensation
G49
Tool length compensation cancel
G50
Scaling cancel
G50.1
Mirror image by G code OFF
G54 to G59, G54.1
Workpiece coordinate system selection, Extended workpiece coordinate
system selection
G54.4 P
Workpiece installation error compensation
G61
Exact stop check mode
G61.1/G08P1
High-accuracy control
G64
Cutting mode
G67
User macro modal call OFF
G68.2 to G68.9
Inclined surface machining
G80
Fixed cycle cancel
G90, G91
Absolute value command, Incremental value command
G93
Inverse time feed
G94
Feed per minute
G95
Feed per revolution
G97
Constant surface speed control OFF
G98, G99
Fixed cycle initial level return, R point level return
731
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Skip during inclined surface machining command
A skip operation during the inclined surface machining command is the same as the normal skip operation. The axis
moves on the feature coordinate system.
Machining program
N1 G68.2 Xx Yy Zz Ii Jj Zz ;
N2 G53.1;
N3 G90 G31 Z0. F100;
Wz
Wy
Fy
Fx
Fz
Wz
The axis moves to the Z axis direction of the feature coordinate system in the N3 block.
For the skip function, refer to each chapter in "21 Measurement Support Functions".
Combination with arbitrary axis exchange
If you use simple inclined surface machining in combination with an arbitrary axis exchange (G140) command, you
need to set the rotary axis configuration parameters using the 2nd axis name. Set the parameter "#1450 5axis_Spec/bit0" to "1" (setting by the 2nd axis name), and assign the axis configuration for executing inclined surface
machining to the rotary axis configuration parameter (#7900 or later) using the 2nd axis name (example: A1, B2).
If the inclined surface machining is commanded after the arbitrary axis exchange has been completed while the parameter "#1450 5axis_Spec/bit0" is not designated, a program error (P952) will occur.
You can set the configurations up to the number of valid part systems (up to four part systems) in the rotary axis
configuration parameter. With multiple configurations set, you can perform inclined surface machining in different
axis configurations.
Inclined surface machining can be performed using the axis configuration in the part system with axis exchange
completed by applying the rotary axis configuration parameter in the configuration in which all axes included in the
part system are set.
IB-1501278-D
732
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.4.12 Precautions for Inclined Surface Machining
Precautions
(1) A rotary axis moves at G53.1 command. Thus, move the tool far enough away from the table before commanding
G53.1.
(2) When inclined surface machining is commanded, the coordinates of the feature coordinate system are set in the
system variables #5001 to #5100+n (excluding #5021 to #5021+n), which are used to read the position information. But, the coordinates of the machine coordinate system are set in the variables #5021 to #5021+n (machine
coordinate values) even when inclined surface machining is commanded.
n: varies depending on the number of control axes.
(3) When Reset signal is input during inclined surface machining command, the inclined surface machining mode
will be canceled, and the modal G code will be G69. (However, when the parameter "#1151 rsint" is set to "0",
the inclined surface machining mode will be kept even if Reset 1 is input.)
(4) When the external deceleration signal is input, the signal is not input to the axes of the feature coordinate system,
but to the axes of the machine coordinate system that is actually operating.
(5) If G28 or G30 is commanded after the inclined surface machining command has been issued, the control is carried out with respect to the inclined surface coordinate system up to the intermediate point, and then carried out
with respect to the machine coordinate system from the intermediate point.
(6) Tool radius compensation, mirror image by G code, fixed cycle command, tool center point control, scaling, and
tool length compensation along the tool axis should be nested in the inclined surface machining command. Thus,
these commands need to be commanded between the inclined surface machining command (G68.2, etc) and
G69.
G68.2 X_Y_Z_I_J_K_
G41 D1
:
Inclined surface machining
In tool radius compensation
:
G40
:
G69
(7) If inclined surface machining (G68.2) is commanded while tool length compensation is active, the actual tool tip
position does not match the current position. In such case, command G53.1 to align the tool axis direction with
the Z axis of the feature coordinate system, which will make the tool tip position the same as the current position.
Before commanding G68.2, the current position and actual tool tip
are the same.
Z
X
When feature coordinate system is defined in G68.2, a point obtained by compensating the tool length direction to be in the feature coordinate axis' Z direction is deemed as the current position.
Thus, the current position doesn't match with the actual tool tip position.
Z
X
Z
The actual tool tip point becomes the same as the current position
by commanding G53.1 to align the tool axis direction with the feature coordinate system's Z direction.
X
733
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(8) Coordinate conversion is not carried out upon manual interruption, so travel, by a distance equivalent to the manual interruption amount, is carried out with respect to the machine coordinate system. When manual interruption
with ABS ON, or tool center point control has been performed during inclined surface machining, return to the
position before interruption, and then restart automatic operation. If you restart automatic operation in a different
position from the one prior to the interruption, operation error (M01 0185) will occur. An interruption to a rotary
axis during inclined surface machining will also cause an operation error (M01 0185). If automatic handle interruption is attempted during inclined surface machining, an operation error (M01 0185) will occur.
(9) MDI interruption, PLC interruption and macro interruption are disabled during inclined surface machining. If MDI
interruption or PLC interruption is attempted during inclined surface machining, an operation error (M01 0185)
will occur. If macro interruption is enabled during inclined surface machining, a program error (P951) will occur.
Also when inclined surface machining is commanded while macro interruption is active, a program error (P952)
will occur.
(10) When inclined surface machining is commanded during MDI interruption, PLC interruption, or macro interruption, a program error (P952) will occur.
(11) When a circular command is graphically traced under the inclined surface machining command, circular tracing
is performed if the feature coordinate system matches the machine coordinate system. If the systems are unmatched, a linear tracing is performed instead.
(12) Tracing is carried out using the machine coordinate values.
(13) When this function is used together with tool center point control or the workpiece installation error compensation function, inclined surface machining is subject to the restraints of each function. For details, refer to each
chapter.
(14) Program restart from the block after the inclined surface machining command is issued cannot be implemented.
If commanded, a program error (P49) occurs.
Program example
N10 G00 X_Y_Z_;
Restart from the block N10 or N11 is possible.
N11 G00 X_Y_Z_B_C;
:
N20 G68.2 X_Y_Z_I_J_K;
Restart from the block N20 or later is not possible.
N21 G01 X_Y_Z_F_;
Attempting to do so will cause an alarm.
N22 G01 X_Y_Z_F_;
N23 G69
N30 G90 G00 X_Y_;
N31 G90 G00 Z_;
(15) If you want to display the coordinates on the position screen during inclined surface machining, enter "23" in
the parameters #8901 to #8906. Then, the corresponding counter is shown with respect to the feature coordinate
system.
In the inclined surface coordinate counter display, whether the machining position on the program command that
does not include the tool length compensation/tool radius compensation can be selected depends on the MTB
specifications (parameter "#1287 ext23/bit1, bit2 (inclined surface coordinate display)".
When tool tip coordinate display is enabled, inclined surface coordinates' counter can be displayed on the window by selecting the inclined surface for the counter selections 1, 2 and 3.
(16) The movement that occurs in response to the G00 command is always the interpolation type. (Non-interpolation
type is not available.)
(17) In the case of table rotation type machines, the tool axis direction is not changed in G68.3. Thus, a feature coordinate system is defined with respect to the Z axis of the coordinate system before the inclined surface machining command is issued. But, designation of feature coordinate system's origin, and the rotation R about Z
axis are enabled.
(18) When inclined surface machining is commanded during inclined surface machining, a program error (P951) will
occur.
(19) In the parameters #7900 to #7902, #7922, #7932, #7942, and #7952, designate the axes of the first part system.
If you command inclined surface machining in a part system where any of the designated axes is not ready, a
program error (P932) will occur.
IB-1501278-D
734
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(20) The feature coordinate system is defined with respect to the coordinate system (workpiece coordinate system),
which is independent of the table rotary axis' rotation angle, so it is dependent on the table rotary axis' angle
before the inclined surface machining command is issued.
(21) A linear axis command during inclined surface machining is carried out using the coordinates of the feature coordinate system. And a rotary axis command is done using the coordinates (machine values) of the workpiece
coordinate system.
(22) If the address R, I, J or K has exceeded the setting range, a program error (P35) will occur.
(23) Buffer correction cannot be implemented during inclined surface machining command.
(24) If the operation mode is switched to "reference position return" during inclined surface machining command, an
operation error (M01 0185) will occur.
(25) If a linear angle command, geometric command, or figure rotation command is issued during inclined surface
machining command, a program error (P951) will occur.
(26) If arbitrary axis exchange (G140) is issued during inclined surface machining modal, the program error (P951)
will occur.
(27) When the axis during inclined surface machining control is the target for axis exchange, the operation error
(M01 1101) will occur. The alarm will be cancelled by reset.
(28) The part system in which inclined surface machining is being carried out does not cancel mixed control regardless of the setting for the parameter "#1280 ext16/bit1" (Cancellation of mixed control by resetting) even if a reset
operation that does not reset the modal ("#1151 rstint" = "0" and NC reset 1) is carried out.
If an axis in a part system in which inclined surface machining is being carried out is specified as the axis to be
exchanged in the part system, the axis exchange will not be possible and an operation error (M01 1101) will occur regardless of whether the automatic operation mode has been established.
(29) When the number of simultaneous contouring control axes is four or less and the indexing is performed with
the indexing type 2 of R-navi on the selected machining surface, the block stop due to the completion of each
axis travel will not be performed regardless of whether the parameter "#G53.6 block stop" has been set.
(30) The axis configuration of applicable machines is as follows.
The function is effective for the machine configuration with the right-hand orthogonal coordinate system defined
in ISO standard.
(a) This function applies to three types of machine configuration as below.
Type
Description
Example of machines
Tool tilt type
Two rotary axes on tool
head side
Table tilt type
Compound type
Two rotary axes on table side
One rotary axis each
on tool head side and
table side
(B)
(B)
(A)
(A)
(A)
(B)
Primary rotary Tool-side 2nd rotary axis
axis (A)
(B)
Tool-side 1st rotary axis
Table-side 2nd rotary axis
Tool-side rotary axis
Table-side 1st rotary axis
Table-side rotary axis
In this manual, the following axes are called as primary rotary axis: the tool-side 2nd rotary axis (tool tilt type),
the table-side 1st rotary axis (table tilt type), and the tool side rotary axis (compound type).
735
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(b) This function is not applicable to machines as below.
Description
Example of machines
A machine whose rotary axis’s rotation center axis is
not parallel to any orthogonal coordinate axis.
A machine whose direction from the tool tip to the tool
base is not parallel to Z axis (Z axis positive direction)
when machine positions of the rotary axes are all 0°.
0°
Tool axis direction
A machine in which three linear axes do not form a
right-handed orthogonal coordinate system.
(31) If any of the orthogonal axes of all the active part systems is under machine lock during inclined surface machining, normal synchronous tapping is applied even though the high-speed tapping specification is provided.
IB-1501278-D
736
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
18.5 3-dimensional Tool Radius Compensation (Tool's vertical-direction
compensation) ; G40/G41.2,G42.2
Function and purpose
This function realizes the tool radius compensation for the machine with 2 rotary axes by calculating the change in
the direction of a workpiece and the inclination of the tool caused by the move of the rotary axes. Tool radius compensation is carried out three-dimensionally by calculating the tool path on the surface of a workpiece from the program command and obtaining the compensation vector on a plane (compensation plane) perpendicular to the tool
direction (offset plane).
(b)
(a)
r
r : Compensation amount
: Tool center path
r
Z
: Program path
Y
(a) Tool direction
(b) Offset plane
X
If the specification is not provided, when 3-dimensional tool radius compensation (tool's vertical-direction compensation) is commanded, a program error (P161) will occur.
Command format
3-dimensional tool radius compensation (Tool's vertical-direction compensation) left
G41.2 (X_ Y_ Z_ A_ B_ C_) D_;
3-dimensional tool radius compensation (Tool's vertical-direction compensation) right
G42.2 (X_ Y_ Z_ A_ B_ C_) D_;
3-dimensional tool radius compensation (Tool's vertical-direction compensation) cancel
G40 (X_ Y_ Z_ A_ B_ C_); or D0;
X,Y,Z
Orthogonal coordinate axis movement command (can be omitted)
A,B,C
Rotary axis movement command (can be omitted)
D
Compensation No.
"D0;" refers to a D command of compensation number "0".
Note
(1) All the G codes in the above command format belong to the modal group 7.
737
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Detailed description
This function calculates the change in the direction of a workpiece and the inclination of the tool caused by the move
of the rotary axes, and converts the programmed tool path onto the offset plane (perpendicular to the tool direction
at the compensation point) to conduct the tool radius compensation for 5-axis machining. (Refer to "How to calculate
the compensation vector" for the details of offset plane.)
The operations at the start/cancel and in compensation mode on the offset plane conform to the normal tool radius
compensation. Refer to Chapter "12.3 Tool Radius Compensation ; G38,G39/G40/G41,G42" for the operations
which are not explained in this section.
Tool radius compensation start (startup)
The type of compensation start can be selected from type A and type B by the parameter "#8157 Radius comp type
B", like the conventional tool radius compensation. Refer to "12.3 Tool Radius Compensation ; G38,G39/G40/
G41,G42" for the descriptions of type A/type B.
The startup must be carried out in the G code modal listed in "Modes in which G41.2/G42.2 command is issued" in
"Relation with other functions". If commanded in an unlisted modal, a program error (P163) will occur.
Tool radius compensation operation
For usable functions during the compensation, refer to "Commands which can be issued while G41.2/G42.2 is executed" in "Relation with other functions". If an unavailable function is commanded, a program error (P162) will occur. Interference check is not available for this function.
Tool radius compensation cancel
When any of the following condition is met, the tool radius compensation for 5-axis machining will be canceled.
(1) After the compensation cancel command (G40) is executed
(2) A command of offset number D00 is issued
(3) NC reset 1 (*1)
(4) NC reset 2 or Reset &Rewind is commanded
The type of compensation cancel can be selected from type A and type B by the parameter "#8157 Radius comp
type B", as well as the startup.
(*1) The compensation is canceled when "#1151 rstint" is ON.
IB-1501278-D
738
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
How to calculate the compensation vector
The compensation vectors for tool radius compensation are obtained as shown below.
(1) Table coordinate system
Convert the program command into the path on the surface of the table coordinate system. Table coordinate
system rotates with the workpiece (the figure below) as the table rotates. The command path on this coordinate
system is the relative command path of the tool against the workpiece.
<Default state>
<When the table rotates>
Z
Z
Y
Y
X
XX
(2) Conversion into the points on the offset plane
Reflect the obtained path on the table coordinate system onto the offset plane (vertical to the tool axis direction
at the compensation point) and calculate the points (A' and C' in the figure below) on the offset plane.
(b)
Z
Y
X
A’
C
(a)
BB
C’
(a) Tool direction at point A
(b) Tool direction at point B
A
A
Offset plane at point A
Offset plane at point B
Path on the table coordinate system
739
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(3) Compensation on the offset plane
Perform the conventional tool radius compensation on the offset plane and calculate the compensation vector
on the offset plane.
Z
Y
A’
X
C
B
C’
A
Path on the table coordinate system on the offset plane
Compensation vector on the offset plane
IB-1501278-D
740
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
When a block is inserted
When a block is inserted while cutting a corner, the direction of the tool at the single block stop is equal to that of
the previous block. (Like a feedrate and other modal data, the rotation angle of the previous block is kept.)
(b)
A
Z
Y
A’
X
C’
B
B
(b) Tool direction at point B
C
Path on the table coordinate system
Offset plane at point B
If the program moves from A, B to C as shown in the figure above, the offset plane at point B is as the figure below.
The block between the points B2 and B3 is inserted, the tool direction between B2-B3 is same as at point B2 and
the tool moves on the offset plane which is created at point B.
A’
C’
B
B1
B4
(S)
B3
B2
Path on the table coordinate system on the offset plane
(S) Single block stop point
741
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Program example
N1
G28 Z
N2
G28 BC
N3
G28 XY
N4
G90 G54 G00 X-60. Y0.
N5
G00 B30.
N6
G43.4 H1 Z-50.
N7
G42.2 G01 X-50. D1
N8
G01 X-49.990 Y-1.000 C 1.15
N9
G01 X-49.960 Y-1.999 C 2.29
N10
G01 X-49.910 Y-2.998 C 3.44
:
:
N200
G01 X50. Y0. C180.
N201
G01 Z0.
N202
G40
N203
G49
N204
G28 Z
N205
G28 BC
N206
G28 X
M30
(D1 =5.0, H1=50.0)
Z
Y
G54
Compensation amount
-50.0
50.0
-50.0
X
Programmed path
Tool center path
IB-1501278-D
742
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Relationship with other functions
Commands which can be issued in a same block as G41.2/G42.2
Function
G00
Positioning
G01
Linear interpolation
G90
Absolute value command
G91
Incremental value command
F
Feedrate command
N
Sequence No.
If unlisted commands are issued in a same block with 3-dimensional tool radius compensation (tool's vertical-direction compensation) (G41.2/G42.2), a program error (P163) will occur.
Commands which can be issued while G41.2/G42.2 is executed
Function
G00
Positioning
G01
Linear interpolation
G04
Dwell
G05 P0, G05 P1, G05 P2
High-speed machining mode
G05 P0, G05 P10000
High-speed high-accuracy control II
G08 P0, G08 P1
High-accuracy control
G09
Exact stop
G20, G21
Inch/metric command (*1)
G22, G23
Stroke check before travel ON/OFF
G40
Tool radius compensation cancel
G41.2, G42.2
3-dimensional tool radius compensation (tool's vertical-direction compensation) right/left
G61
Exact stop check mode
G61.1
High-accuracy control ON
G64
Cutting mode
G65
User macro simple call
G66
User macro modal call A
G66.1
User macro modal call B
G67
User macro modal call cancel
G90, G91
Absolute value command, Incremental value command
G93
Inverse time feed
G94
Feed per minute
G95
Feed per revolution
G96, G97
Constant surface speed control ON/OFF
M98, M99
Subprogram call, main program return
F
Feedrate command
M, S, T, B
M, S, T, B command
Macro command
Local variables and common variables
Operation commands (four basic arithmetic rule, trigonometric functions,
square root)
Control commands (IF - GOTO -, WHILE - DO -)
N
Sequence No.
(*1) If the inch/metric command switches during 3-dimensional tool radius compensation (tool's vertical-direction
compensation), a program error (P162) will occur.
743
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Modes in which G41.2/G42.2 command can be issued
Function
G00, G01
Positioning, Linear Interpolation
G17, G18, G19
Plane selection
G20, G21
Inch/Metric command
G22, G23
Stroke check before travel ON/OFF
G40
Tool radius compensation cancel
G40.1, G150
Normal line control cancel
G41.2, G42.2
3-dimensional tool radius compensation (tool's vertical-direction compensation)
left/right
G43, G44
Tool length compensation (+/-)
G43.1
Tool length compensation along the tool axis
G43.4, G43.5
Tool center point control type I/II
G49
Tool length compensation cancel
G50
Scaling cancel
G50.1
G command mirror image cancel
G54, G55, G56, G57,
G58, G59, G54.1
Workpiece coordinate system selection, extended workpiece coordinate system
selection
G54.4Pn
Workpiece installation error compensation
G61
Exact stop check mode
G61.1
High-accuracy control ON
G64
Cutting mode
G67
User macro modal call cancel
G68.2
Inclined surface machining
G68.3
Inclined surface machining command (Define using tool axis direction)
G69
3-dimensional coordinate conversion cancel
G80
Fixed cycle cancel
G90, G91
Absolute value command, Incremental value command
G93
Inverse time feed
G94
Feed per minute
G95
Feed per revolution
G96, G97
Constant surface speed control ON/OFF
G98, G99
Fixed cycle initial level return, R point level return
G15, G13.1, G113
Polar coordinate command cancel
Combination with arbitrary axis exchange control
When performing 3-dimensional tool radius compensation (tool's vertical-direction compensation) in combination
with an arbitrary axis exchange (G140) command, you need to set the rotary axis configuration parameters using
the 2nd axis name. Set the parameter "#1450 5axis_Spec/bit0" to "1" (setting by the 2nd axis name), and assign the
axis configuration for executing 3-dimensional tool radius compensation (tool's vertical-direction compensation) to
the rotary axis configuration parameter (#7900 or later) using the 2nd axis name (example: A1, B2).
If the G41.2/G42.2 command is issued after the arbitrary tool exchange has been completed while the parameter
"#1450 5axis_Spec/bit0" is not designated, a program error (P163) will occur.
You can set up to four valid part systems in the rotary axis configuration parameter. With multiple configurations set,
you can perform 3-dimensional tool radius compensation (tool's vertical-direction compensation) in different axis
configurations.
3-dimensional tool radius compensation (tool's vertical-direction compensation) can be performed using the axis
configuration in the part system with axis exchange completed by applying the rotary axis configuration parameter
in the configuration in which all axes included in the part system are set.
IB-1501278-D
744
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
Precautions
(1) Interference check is not available for 3-dimensional tool radius compensation (tool's vertical-direction compensation). The parameter "#8103 COLL. CHK OFF" to turn ON/OFF the interference check, available for conventional tool radius compensation, is invalid in 3-dimensional tool radius compensation (tool's vertical-direction
compensation).
(2) Tool radius compensation vector designation (G38) and Tool radius compensation corner arc (G39) are not available. If commanded, a program error (P162) will occur.
(3) Corner Chamfering/Corner Rounding, Linear Angle Command and Geometric Command are not available. If
commanded, a program error (P162) will occur.
(4) Manual interruption, automatic operation handle interruption, manual / automatic simultaneous, manual speed
command, manual reference position return, tool handle feed & interruption, and manual arbitrary feed mode will
cause an operation error (M01 0232) when the manual mode is ON.
(5) Macro interruption cannot be used. If 3-dimensional tool radius compensation (tool's vertical-direction compensation) is commanded when macro interruption is valid, a program error (P163) will occur. If macro interruption
valid (M96) is commanded in 3-dimensional tool radius compensation (tool's vertical-direction compensation), a
program error (P162) will occur.
(6) Tool escape and return is not available. Turning ON the tool escape and return transit point designation signal
and the manual mode will cause an operation error (M01 0232).
(7) Switching from a mode to MDI mode or from MDI mode to another mode in 3-dimensional tool radius compensation (tool's vertical-direction compensation) will cause an operation error (M01 0232).
(8) Turning ON on the PLC interruption signal in 3-dimensional tool radius compensation (tool's vertical-direction
compensation) will cause an operation error (M01 0232).
(9) Mirror image by the external input is not available for the target axis (*1) of 5-axis machining. If mirror image by
the external input is set to ON in the 3-dimensional tool radius compensation (tool's vertical-direction compensation), a program error (P162) will occur. Also, if the 3-dimensional tool radius compensation (tool's verticaldirection compensation) is commanded during mirror image by the external input, a program error (P163) will
occur.
(*1) Axes here are the axes designated with the parameters "#7900 RCDAX_I", "#7901 RCDAX_J", "#7902 RCDAX_K", "#7922 ROTAXT1", "#7932 ROTAXT2", "#7942 ROTAXW1", and "#7952 ROTAXW2". These settings depend on the MTB specifications.
(10) If 3-dimensional tool radius compensation (tool's vertical-direction compensation) is commanded in the reverse
run control mode, or if the reverse run control mode signal is set to ON in 3-dimensional tool radius compensation
(tool's vertical-direction compensation), a program error (P163) will occur.
(11) This function can be combined with the tool center point control (G43.4,G43.5/G49). However, the ON/OFF of
the 3-dimensional tool radius compensation (tool's vertical-direction compensation) must be nested in the ON/
OFF of the tool center point control and it must be commanded in the tool center point control. If the tool center
point control is commanded in 3-dimensional tool radius compensation (tool's vertical-direction compensation),
a program error (P162) will occur.
This function can also be combined with tool length compensation along the tool axis (G43.1/G49) in the same
conditions as the above.
During tool center point control
G43.4 H1
・・・
G41.2 D1
・・・
・・・
・・・
・・・
G49
3-dimensional tool radius compensation
(Tool's vertical-direction compensation)
G40
(12) When used with the tool center point control, the compensation is applied to the tool center point path.
(13) The restart search from the block in 3-dimensional tool radius compensation (tool's vertical-direction compensation) is possible while the restart search from the block concurrently using the tool center point control is impossible.
(14) Fairing in high-speed machining mode/high-speed high-accuracy control is not available. The parameter
"#8033 Fairing ON" to turn ON/OFF the fairing function in high-speed machining mode/high-speed high-accuracy control is invalid in 3-dimensional tool radius compensation (tool's vertical-direction compensation).
745
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(15) As shown in the figure below, we recommend that the tool approach to the surface of the workpiece at an angle.
The tool radius compensation amount may not be correctly reflected on the cutting when the direction of the approach is opposite to the cutting direction. So the tool must shift to the surface of the workpiece at the start of
the cutting at an angle to the tool axis direction.
×: Tool radius compensation amount may
not be correctly reflected because there
is no movement on the offset plane and
the tool radius compensation amount is
not re-calculated.
○:
Tool radius compensation amount
is correctly reflected.
Offset plane (perpendicular to the tool axis direction)
Movement on the offset plane.
(16) The buffer correction is not available in 3-dimensional tool radius compensation (tool's vertical-direction compensation). Pressing the menu [Prg correct] will display an error message.
(17) Also, if 3-dimensional tool radius compensation (tool's vertical-direction compensation) is commanded during
mirror image by parameter setting or coordinate rotation by parameter, a program error (P163) will occur. If the
parameter is turned on in 3-dimensional tool radius compensation (tool's vertical-direction compensation), a program error (P162) will occur at the next start.
IB-1501278-D
746
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
(18) The axis configuration of applicable machines is as follows:
The function is effective for the machine configuration with the right-hand orthogonal coordinate system defined
in ISO standard.
(a) This function applies to three types of machine configurations as below:
Type
Tool tilt type
Description Two rotary axes on tool
head side
Example of
machines
Table tilt type
Compound type
Two rotary axes on table side
One rotary axis each on
tool head side and table
side
(B)
(A)
(B)
(A)
(A)
(B)
Primary rota- Tool-side 2nd rotary axis
ry axis (A)
(B)
Tool-side 1st rotary axis
Table-side 2nd rotary axis
Tool-side rotary axis
Table-side 1st rotary axis
Table-side rotary axis
In this manual, the following axes are called as primary rotary axis: the tool-side 2nd rotary axis (tool tilt type),
the table-side 1st rotary axis (table tilt type), and the tool side rotary axis (compound type).
(b) This function is not applicable to machines as below:
Description
Example of machines
A machine whose rotary axis's rotation center axis is not parallel to any orthogonal coordinate axis.
A machine whose direction from the tool tip to the tool base
is not parallel to Z axis (Z axis positive direction) when machine positions of the rotary axes are all 0°.
0°
Tool axis direction
A machine in which three linear axes do not form a righthanded orthogonal coordinate system.
<Note>
This cannot be applied to a machine on which the rotary axis's rotation center axis is not parallel to any
orthogonal coordinate axis.
This cannot be applied to a machine of which the direction from the tool tip to the tool base is not parallel
to Z axis (Z axis positive direction) when machine positions of the rotary axes are all 0°.
747
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
18 Advanced Machining Control
IB-1501278-D
748
19
Coordinate System Setting Functions
749
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19Coordinate System Setting Functions
19.1 Coordinate Words and Control Axes
Function and purpose
The number of control axes is set to "3" in the standard specifications; however, up to eight axes can be controlled
if an additional axis is added. To specify each machining direction, use alphabetical coordinate words that are predefined appropriately.
X-Y table
+Z
+Z
+Y
+X
Program coordinates
Workpiece
Table
+X
+Y
Direction of table
movement
Bed
X-Y and rotating table
+Z
Workpiece
+X
Direction of table
+Y
movement
IB-1501278-D
+Y
+C
+X
Program coordinates
+C
Direction of table
revolution
750
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.2 Types of Coordinate Systems
19.2.1 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.
The workpiece coordinate systems are used for programming and in these systems the basic point on the workpiece
is set as the coordinate zero point.
The local coordinate systems are created on the workpiece coordinate systems and they are designed to facilitate
the programs for parts machining.
Upon completion of the reference position return, the basic machine coordinate system and workpiece coordinate
systems (G54 to G59) are automatically set with reference to the parameters.
The basic machine coordinate system is set so that the first reference position is brought to the position specified
by the parameter from the basic machine coordinate zero point (machine zero point).
X1
M
Y1
R#1
Y
X
W3
W4
L
W1
W2
X1
M
Z1
W1
W2
R#1
Z
X
M:
Basic machine coordinate system
W:
Workpiece coordinate system
L:
Local coordinate system
The local coordinate systems (G52) are valid on the coordinate systems designated by workpiece coordinate systems 1 to 6.
The hypothetical machine coordinate system can be set on the basic machine coordinate system using a G92 command. At this time, the workpiece coordinate system 1 to 6 is also simultaneously shifted.
Also refer to "Coordinate Systems and Coordinate Zero Point symbols".
751
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.2.2 Machine Zero Point and 2nd, 3rd, 4th Reference Position (Zero Point)
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. 2nd, 3rd and 4th reference positions relate to the
position of the coordinates that have been set beforehand by parameter from the zero point of the basic machine
coordinate system.
(M)
(R2)
x
y
(R1)
(X2,Y 2)
y
(R3)
(X1,Y 1)
x
(R4)
y
G52
(W)
x
(M) Basic machine coordinate system
(G52) Local coordinate system
(W) Workpiece coordinate systems (G54 to G59)
(R1) 1st reference position
(R2) 2nd reference position
(R3) 3rd reference position
(R4) 4th reference position
IB-1501278-D
752
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.2.3 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 first manual reference position return or the reference position is reached with the dogtype reference position return when the NC power is turned ON. The actual machining program is programmed over
the coordinate systems that have been set above.
(M)
x1
y3
y2
y1
(R1)
(G56)
(G55)
(G54)
x2
x3
y4
(G59)
(G58)
(G57)
x4
(M) Basic machine coordinate system
(R1) 1st reference position
(G54) Workpiece coordinate system 1
(G55) Workpiece coordinate system 2
(G56) Workpiece coordinate system 3
(G57) Workpiece coordinate system 4
(G58) Workpiece coordinate system 5
(G59) Workpiece coordinate system 6
Detailed description
(1) The coordinate systems created by this function are as follow:
- Basic machine coordinate system
- Workpiece coordinate systems (G54 to G59)
(2) The parameters related to the coordinate system all provide the distance from the zero point of the basic machine
coordinate system. Therefore, after deciding at which position the first reference position should be set in the
basic machine coordinate system and then set the zero point positions of the workpiece coordinate systems.
(3) When the automatic coordinate system setting function is executed, shifting of the workpiece coordinate system
with G92, setting of the local coordinate system with G52, shifting of the workpiece coordinate system with origin
set, and shifting of the workpiece coordinate system with manual interrupt will be canceled.
(4) The dog-type reference position return will be executed when the first time manual reference position return or
the first time automatic reference position return is executed after the power has been turned ON. It will be also
executed when the dog-type is selected by the parameter for the manual reference position return or the automatic reference position return for the second time onwards.
CAUTION
If the workpiece coordinate offset amount is changed during automatic operation (including during single block
operation), it will be validated from the next block or after multiple blocks of the command.
753
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.2.4 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 and all coordinate position linear type).
The workpiece coordinate position range is 0 to 359.999° for the rotating type, and 0 to ± 99999.999° for the linear
type.
The machine coordinate value and relative position differ according to the parameters.
The rotary axis is commanded with a degree (°) unit regardless of the inch or metric designation.
The rotary axis type can be set with the parameter "#8213 rotation axis type" for each axis.
Rotary axis
Rotating type rotary axis
#8213 setting value
Short-cut invalid
Short-cut valid
0
1
Linear type rotary axis
Workpiece coordi- All-coordinate posinate position linear
tion linear type
type
2
Workpiece coordi- Displayed in the range of 0° to 359.999°.
nate position
Machine coordinate Displayed in the range of 0° to 359.999°.
position/relative
position
Linear
axis
3
-
Displayed in the range of 0° to ± 99999.999°.
Displayed in the range of 0° to ±
99999.999°.
ABS command
The incremental
Moves with a shortamount from the end cut to the end point.
point to the current
position is divided by
360 degrees, and the
axis moves by the remainder amount according to the sign.
INC command
Moves in the direction of the commanded sign by the commanded incremental amount starting at the
current position.
In the same manner as the normal linear axis, it moves
according to the sign by the amount obtained by subtracting the current position from the end point (without
rounding up to 360 degrees).
Reference position Depends on the absolute command or the incremental command during the movement to the interreturn
mediate point.
Returns with movement within 360 degrees.
IB-1501278-D
754
Moves and returns in the R point
direction for the difference from
the current position to the R point.
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Operation example
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°.)
Rotary type (short-cut invalid)
(1) The machine coordinate position, workpiece coordinate position and relative position are displayed in the range
of 0° to 359.999°.
(2) For the absolute position command, the axis moves according to the sign by the remainder amount obtained by
dividing by 360°.
Program
90
Workpiece
Machine
G28 C0.
45
N3
N1 G90 C-270.
90.000
N2 C405.
45.000
45.000
225.000
225.000
N3 G91 C180.
N1
90.000
0
N2
Rotary type (short-cut valid)
(1) The machine coordinate position, workpiece coordinate position and relative position are displayed in the range
of 0° to 359.999°.
(2) For the absolute position command, the axis rotates to the direction having less amount of movement to the end
point.
Program
90
N1 G90 C-270.
45
N3
Workpiece
Machine
G28 C0.
N2 C405.
N2
N3 G91 C180.
90.000
90.000
45.000
45.000
225.000
225.000
N1
0
755
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Linear type (workpiece coordinate position linear type)
(1) 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°.
(2) The movement is the same as the linear axis.
(3) During reference position return, the axis moves in the same manner as the linear axis until the intermediate
point is reached. The axis returns with a rotation within 360° from the intermediate point to the reference position.
(4) During absolute position detection, even if the workpiece coordinate position is not within the range of 0 to
359.999°, the system will start up in the range of 0 to 359.999° when the power is turned ON again.
Program
Workpiece
Machine
90
Relative position
G28 C0.
45
N1 G90 C-270.
N3
N2 C405.
N3 G91 C180.
-270.000
90.000
90.000
405.000
45.000
45.000
585.000
225.000
225.000
After the power is turned ON
again
0
N1
Workpiece
225.000
N2
Machine
225.000
Linear type (all coordinate position linear type)
(1) The workpiece coordinate position counter is displayed in the range of 0 to ±99999.999°.
(2) The movement is the same as the linear axis.
(3) During reference position return, the axis moves in the same manner as the linear axis until the intermediate
point is reached.
The axis rotates by the difference from the intermediate point to the reference position and returns to the reference position.
(4) During absolute position detection, the system starts up at the position where the power was turned OFF when
the power is turned ON again.
Program
Workpiece
Machine
90
G28 C0.
45
N1 G90 C-270.
N3
N2 C405.
N3 G91 C180.
-270.000
-270.000
-270.000
405.000
405.000
405.000
585.000
585.000
585.000
After the power is turned ON
again
0
N1
Workpiece
585.000
N2
IB-1501278-D
Relative position
756
Machine
585.000
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.3 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.
Command format
(G90)G53 X__ Y__ Z__ α__ ;
α
Additional axis
Detailed description
(1) When the power is switched on, the basic machine coordinate system is automatically set as referenced to the
reference (zero) position return position, which is determined by the automatic or manual reference (zero) position return.
(2) The basic machine coordinate system is not changed by the G92 command.
(3) The G53 command is valid only in the designated block.
(4) In the incremental value command mode (G91), the G53 command provides movement with the incremental value in the coordinate system being selected.
(5) Even if G53 is commanded, the tool radius compensation amount for the commanded axis will not be canceled.
(6) The 1st reference coordinate position indicates the distance from the basic machine coordinate system zero
point to the reference position (zero point) return position.
(7) The G53 command will move with cutting feedrate or rapid traverse following command modal.
(8) If the G53 command and G28 command (reference position return) are issued in the same block, the command
issued last will be valid.
(500,500)
-X
(M)
R1
(M) Basic machine coordinate system
(R1) 1st reference position
-Y
1st reference position coordinate value: X=+500 and Y=+500
(9) If the G53 command and G28 command (reference position return) are issued in the same block, the command
issued last will be valid.
(10) Even if G53 is commanded, the tool radius compensation amount for the commanded axis will not be canceled.
757
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(11) Depending on the MTB specifications, all movement commands in the G53 command block may run in rapid
traverse mode (parameter "#1253 set/bit5").
(a) When the movement method of the G53 command block follows the command modal [Example in which the
G53 block is executed during G01 modal)
Program
G group 01 modal
Cutting or Rapid traverse
N01 G01 X100. Z100. F1000;
G01
Cutting
N02 G53 X200. Z200.;
G01
Cutting
N03 X300. Z300.;
G01
Cutting
[Example in which the G53 block is executed during G00 modal]
Program
G group 01 modal
Cutting or Rapid traverse
N01 G00 X100. Z100.;
G00
Rapid traverse
N02 G53 X200. Z200.;
G00
Rapid traverse
N03 X300. Z300.;
G00
Rapid traverse
(b) When all the movement methods of the G53 command block are set to rapid traverse [Example in which the
G53 block is executed during G01 modal)
Program
G group 01 modal
Cutting or Rapid traverse
N01 G01 X100. Z100. F1000;
G01
Cutting
N02 G53 X200. Z200.;
G01
Rapid traverse
N03 X300. Z300.;
G01
Cutting
The G group 01 modal does not change in the G53 command block; only the operation is set to rapid traverse.
Relationship with Other Functions
(1) Tool Compensation Functions
When the G53 command is issued, the tool compensation amount of the axis with the movement command designated is canceled temporarily.
(2) Machine coordinate system selection, Feedrate designation
If an ",F" command is specified when there are no specifications for the feedrate command for G53, a program
error (P39) will occur.
(3) Inclined surface machining
When the G53 command is issued during inclined surface machining, a program error (P951) occurs.
(4) Polar coordinate interpolation
Do not issue the G53 command during the polar coordinate interpolation mode.
(5) Polar coordinate command
The axis command with the G53 command is not interpreted as the polar coordinate command during the polar
coordinate command mode.
(6) Tool length compensation along the tool axis
When the G53 command is designated while the compensation status is still established, the compensation is
temporarily canceled, and the tool moves to the machine position designated by G53.
(7) G command mirror image
The mirror image will not be applied to the G53 command.
(8) High-speed High-accuracy Control
A program error will occur if the G53 command is issued during the high-speed high-accuracy control II mode.
(9) 3-dimensional coordinate conversion
Coordinate conversion will not be carried out for the machine coordinate system even if G53 command is issued
in the 3-dimensional coordinate conversion modal.
(10) Tool center point control
A program error (P942) will occur if the G53 command is issued during the tool center point modal.
(11) Workpiece installation error compensation
A program error (P545) will occur if the G53 command is issued during workpiece installation error compensation.
IB-1501278-D
758
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Precautions
(1) In the machine with the specifications in which all the movement commands of the G53 command block run in
rapid traverse mode, if the G53 and G01 commands are issued in the same block, the block is set to rapid traverse. However, the G group 01 modal is switched; therefore, the movement commands in the next and subsequent blocks run in cutting feed mode.
[Example in which the G53 and G01 commands are issued in the same block]
Program
N01 G00 X100. Z100.;
G group 01 modal
Cutting or Rapid traverse
G00
Rapid traverse
N02 G53 G01 X200. Z200. F1000; G01
Rapid traverse
N03 X300. Z300.;
Cutting
G01
759
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.4 Coordinate System Setting ; G92
Function and purpose
By commanding G92, the absolute value coordinate system and current position display value can be newly preset
according to the command value without moving the machine.
Command format
G92 X__ Y__ Z__ α__ ;
α
Additional axis
Detailed description
After the power is turned on, the first reference position return will be done with dog-type, and when completed, the
coordinate system will be set automatically.
(Automatic coordinate system setting)
Reference position return
completed
R
(b)
R,M
(a)
(a)
The basic machine coordinate system and
workpiece coordinate
system are created at
the preset position.
(a) Power ON position
(b) Basic machine coordinate system
(c) Workpiece coordinate system
100.
(c)
WG54 100.
200.
[Relative position]
X 0.000
Y 0.000
[Workpiece]
X 300.000
Y 200.000
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.
Coordinate system setting
R,M
200.
For example,
if G92 X0 Y0;
is commanded, the
workpiece coordinate
system will be newly
created.
100.
(d)
50.
WG54 100.
[Relative position]
X -200.000
Y -150.000
IB-1501278-D
200.
100.
-100.
(d)
WG54' 100.
- 50.
200.
WG54
300.
[Workpiece]
X 100.000
Y 50.000
R,M
(d) Tool position
760
[Relative position]
X 0.000
Y 0.000
[Workpiece]
X 0.000
Y 0.000
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Note
(1) If the workpiece coordinate system deviated because the axis is moved manually when the manual absolute position switch is OFF, etc., the workpiece coordinate system can be corrected with the following steps.
Execute reference position return while the coordinate system is deviated.
After that, command G92G53X0Y0Z0;.
With this command, the workpiece coordinate position and current position will be displayed, and the workpiece coordinate system will be preset to the offset value.
Precautions
(1) If the parameter "#1279 ext15/bit5" is set to "1", the coordinate systems setting (G92) shift amount is cleared
when the axis reaches to the manual reference position.
761
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.5 Local Coordinate System Setting ; G52
Function and purpose
The local coordinate systems can be set on the G54 through G59 workpiece coordinate systems using the G52 command so that the commanded position serves as the programmed zero point.
The G52 command can also be used instead of the G92 command to change the deviation between the zero point
in the machining program and the machining workpiece zero point.
Command format
G54(G54 to G59) G52 X__ Y__ Z__ α__ ;
α
Additional axis
Detailed description
(1) The G52 command is valid until a new G52 command is issued, and the tool does not move. This command,
G52, comes in handy for employing another coordinate system without changing the zero point positions of the
workpiece coordinate systems (G54 to G59).
(2) The local coordinate system offset will be cleared by the dog-type manual reference (zero) point return or reference (zero) point return performed after the power has been switched ON.
(3) The local coordinate system is canceled by (G54 to G59) G52 X0 Y0 Z0 α0;.
(4) Coordinate commands in the absolute value (G90) cause the tool to move to the local coordinate system position.
(G91) G52 X_Y_;
Incremental value
Ln
Absolute value
Local coordinate
system
Absolute value
Ln
Ln
Reference position
R
M
(G90)
G52 X_Y_;
Workpiece
Wn(n=1 6)
coordinate system
Workpiece coordinate system offset
(Screen setting, G10 L2 P__X__ Y__ ; )
External workpiece coordinate system offset
(Screen setting, G10 P0 X__ Z__ ; )
Machine coordinate system
<Note>
If the program is executed repeatedly, the workpiece coordinate system will deviate each time. Thus,
when the program is completed, the reference position return operation must be commanded.
IB-1501278-D
762
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(Example 1) Local coordinates for absolute value mode (The local coordinate system offset is not cumulated)
(1) G28 X0 Y0 ;
(8)
(9)
(2) G00 G90 X1. Y1. ;
Y 2500
(3)
G92 X0 Y0 ;
(4)
G00 X500 Y500 ;
(5)
G52 X1. Y1. ;
(6)
G00 X0 Y0 ;
(7)
G01 X500 F100 ;
(8)
Y500 ;
(9)
G52 X0 Y0 ;
(6)
2000
1500
W1 L1
(3)
(2)
1000
(1)
New coordinate system
created by (3)
Matched with local
coordinate system by (9).
(10)
W1
500
(10) G00 X0 Y0 ;
(7)
Local coordinate
system created by
(5).
(5)
(4)
500 1000 1500 2000 2500 3000
R#1
W1
X
Current position
The local coordinate system is created by (5), canceled (9) and matched with the coordinate system for (3).
<Note>
If the program is executed repeatedly, the workpiece coordinate system will deviate each time. Thus,
when the program is completed, the reference position return operation must be commanded.
(Example 2) Local coordinates for incremental value mode (The local coordinate system offset is cumulated.)
<Main program>
(1)
G28 X0 Y0 ;
(2)
G92 X0 Y0 ;
(3)
G91 G52 X500
Y500 ;
(4)
M98 P100 ;
(5)
G52 X1. Y1. ;
(6)
M98 P100 ;
(7)
G52 X-1.5 Y-1.5 ;
(8)
G00 G90 X0 Y0 ;
Y'
Y
2500
2000
(B)
<Subprogram>
500
(3)
(2)
(B)
G90 G00 X0 Y0 ;
(C)
G01 X500 ;
(D)
Y500 ;
(E)
G91 ;
(F)
M99 ;
(6)
(C)
W1 L2
1000
O100 ;
(D)
1500
M02 ;
(A)
Y"
(4)
X'
Local coordinate system
created by (3).
(C)
(8)
W1 L1
500
R#1
W1
Local coordinate system
created by (5).
(D)
(B)
(1)
X"
1000
1500
Current position
2000
2500
3000
X
(Matched with local coordinate
system by (7).
The local coordinate system X'Y' is created at the XY coordinate system (500,500) position by (3).
The local coordinate system X"Y" is created at the X'Y' coordinate system (1000,1000) position by (5).
The local coordinate system is created at the X"Y" coordinate system (-1500, -1500) position by (7). In other
words, the same occurs as when the local coordinate system and XY coordinate system are matched and the
local coordinate system is canceled.
763
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(Example 3) When used together with workpiece coordinate system
(1) G28 X0 Y0 ;
G54 G55
(2)
G00 G90 G54 X0 Y0 ;
X 1000 1000
(3)
G52 X500 Y500 ;
Y 500 2000
(4)
M98 P200 ;
(5)
G00 G90 G55 X0 Y0 ;
(6)
M98 P200 ;
(7)
G00 G90 G54 X0 Y0 ;
Workpiece coordinate system offset
(parameter setting value)
Y 3000
:
M02 ;
(A)
O200 ;
(B)
G00 X0 Y0 ;
(C)
G01 X500 F100 ;
(D)
Y500 ;
(E)
M99 ;
(D)
2500
(B)
2000
G55
(C)
(5) W2
1500
(D)
(B)
1000
(7) (C)
W1 L1
(3)
(2)
500
Local coordinate
system created by (3)
G54
W1
(1)
500
R#1
1000
1500
Current position
2000
2500
3000
X
The local coordinate system is created at the G54 coordinate system (500,500) position by (3), but the local coordinate system is not created for the G55 coordinate system.
During the movement for (7), the axis moves to the G54 local coordinate system's reference position (zero point).
The local coordinate system is canceled by G90G54G52X0Y0;.
IB-1501278-D
764
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(Example 4) Combination of workpiece coordinate system G54 and multiple local coordinate systems
(1) G28 X 0 Y0 ;
G54
(2)
G00 G90 G54 X0 Y0 ;
X 500
(3)
M98 P300 ;
Y 500
(4)
G52 X1. Y1. ;
(5)
M98 P300 ;
(6)
G52 X2. Y2. ;
(7)
M98 P300 ;
(8)
G52 X0 Y0 ;
:
Workpiece coordinate system offset
(parameter setting value)
3000
(7)
2500
M02 ;
(A)
O300 ;
(B)
G00 X0 Y0 ;
(C)
G01 X500 F100 ;
(D)
Y500 ;
(E)
X0 Y0 ;
(F)
M99 ;
W1 L2
Local coordinate
system created by (6)
2000
(5)
1500
W1 L1
(D)
1000
%
500
(8)
(2)
(3)
G54
(E) (C)
(B) W1
500
R#1
Local coordinate system
created by (4)
1000
1500
2000
2500
3000
Current position
The local coordinate system is created at the G54 coordinate system (1000,1000) by (4).
The local coordinate system is created at the G54 coordinate system (2000,2000) by (6).
The G54 coordinate system and local coordinate system are matched by (8).
765
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.6 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.
(2) These commands enable the tool to move to the positions in the workpiece coordinate system. There are extended workpiece coordinate systems (G54.1) in addition to 6 workpiece coordinate systems, which are used by
the programmer for programming (G54 to G59). The number of the extended workpiece coordinate systems varies depending on the MTB specifications.
(3) Among the workpiece coordinate systems currently selected by these commands, any workpiece coordinate system with coordinates that have been commanded by the current position of the tool is reset. (The "current position of the tool" includes the compensation amounts for tool radius, tool length and tool position compensation.)
(4) A hypothetical machine coordinate system with coordinates that have been commanded by the current position
of the tool is set by these commands.
(The "current position of the tool" includes the compensation amounts for tool radius, tool length and tool position
compensation.) (G54,G92)
Workpiece coordinate system
(G90) G54 to G59 ;
Workpiece coordinate system selection
(G54 to G59) G92 X__ Y__ Z__ α__ ; Set workpiece coordinate system
α
Additional axis
Extended workpiece coordinate system
G54.1 Pn ;
Extended workpiece coordinate system selection (P1 to P300) (*1)
G54.1 Pn ;
G92 X__ Y__ Z__ ;
Workpiece coordinate system setting (P1 to P300) (*1)
G10 L20 Pn X__ Y__ Z__ ;
Extended workpiece coordinate system offset amount setting (P1 to
P300) (*1)
When the offset amount of the currently designated workpiece coordinate system is rewritten
G10 G54.1 Pn X__ Y__ Z__ ;
Extended workpiece coordinate system offset amount setting (P1 to
P300) (*1)
When the extended workpiece coordinate system is selected, and the offset amount is rewritten
(*1) The maximum number of coordinate systems depends on the specifications.
IB-1501278-D
766
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Detailed description
(1) With any of the G54 through G59 commands or G54.1P1 through G54.1P300 commands, the tool radius compensation amounts for the commanded axes will not be canceled even if workpiece coordinate system selection
is commanded.
(2) The G54 workpiece coordinate system is selected when the power is turned ON.
(3) Commands G54 through G59 and G54.1P1 through G54.1P300 are modal commands (group 12).
(4) The coordinate system will move with G92 in a workpiece coordinate system.
(5) The offset setting amount in a workpiece coordinate system denotes the distance from the basic machine coordinate system zero point.
(#1)Reference position (zero point) return position
R#1
M
-X
Basic machine coordinate system zero point
- X(G54)(- 500,
- 500)
- X(G55)(- 2000,
- 1000)
W2
W1
-Y
(G54)
G54 reference position (zero point)
- Y(G55)
G55 reference position (zero point)
-Y
G54 X = -500
Y = -500
G55 X = -2000
Y = -1000
(6) The offset settings of workpiece coordinate systems can be changed any number of times. (They can also be
changed by G10 L2 Pp1 Xx1 Yy1 Zz1.)
[Handling when L or P is omitted]
G10 L2 Pn Xx Yy Zz ; n=0 : Set the offset amount in the external workpiece coordinate system.
n=1 to 6 : Set the offset amount in the designated workpiece coordinate system.
Others : The program error (P35) will occur.
G10 L2 Xx Yy Zz ;
Set the offset amount in the currently selected workpiece coordinate system.
When in G54.1 modal, the program error (P33) will occur.
G10 L20 Pn Xx Yy Zz n=1 to maximum number of coordinate systems : Set the offset amount in the desig;
nated workpiece coordinate system. (The number of extended workpiece coordinate
systems under the specifications)
Others : Program error (P35) will occur.
G10 L20 Xx Yy Zz ;
Set the offset amount in the currently selected workpiece coordinate system.
When in G54 to G59 modal, the program error (P33) will occur.
G10 Pn Xx Yy Zz ;
Set the offset amount in the designated coordinate system No. by P code.
When the currently selected coordinate system is G54 to G59, P1 to P6 corresponds
to G54 to G59 respectively. When the external coordinate system is selected, P No.
corresponds to G54.1 P1 to P300. If other values are set, the program error (P35) will
occur.
G10 Xx Yy Zz ;
Set the offset amount in the currently selected coordinate system.
G10 G54.1 Xx Yy Zz ; When there is no P code in the same block as G54.1, the program error (P33) will occur.
(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 to 6 (G55 to G59) will move in parallel
and new workpiece coordinate systems 2 to 6 will be set.
767
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(8) A hypothetical machine coordinate system is formed at the position that deviates from the new workpiece reference position (zero point) by an amount equivalent to the workpiece coordinate system offset amount.
(R1)
M
-X
M
-X
(a)
- X(G54)
- X(G55' )
W2
(b)
W1
- X(G55)
(c)
W2
- X(G54' )
W1
(d)
- Y(G55)
- Y(G54)
(e)
-Y
- Y(G54 ' )
- Y(G55 ' )
-Y
(R1) Reference position 1
(a) Hypothetical machine coordinate system based
on G92
(b) Old workpiece 1 (G54) coordinate system
(c) Old workpiece 2 (G55) coordinate system
(d) New workpiece 1 (G54) coordinate system
(e) New workpiece 2 (G55) coordinate system
After the power has been switched on, the hypothetical machine coordinate system is matched with the basic
machine coordinate system by the first automatic (G28) or manual reference position (zero point) return.
(9) By setting the hypothetical machine coordinate system, the new workpiece coordinate system will be set at a
position that deviates from that hypothetical machine coordinate system by an amount equivalent to the workpiece coordinate system offset amount.
(10) When the first automatic (G28) or manual reference position (zero point) return is completed after the power
has been turned ON, the basic machine coordinate system and workpiece coordinate systems are set automatically in accordance with the parameter settings.
(11) If G54 X- Y-; is commanded after the reference position return (both automatic or manual) executed after the
power is turned ON, the program error (P62) will occur. (A speed command is required as the movement will be
controlled with the G01 speed.)
(12) Do not command a G code for which a P code is used in the same block as G54.1 or G10L20. If a G code is
commanded, a P code is used for a prior G command or the program error occurs (P33).
(13) If there are no specifications for the extended workpiece coordinate system selection, a program error (P35)
will occur when the G54.1 command is executed. This error will also occur when one of P49 to P300 is commanded although the specifications allow up to the 48 sets.
Command
6 sets Standard
48 sets
96 sets
300 sets
6 sets
○
○
○
○
48 sets
×
○
○
○
96 sets
×
×
○
○
300 sets
×
×
×
○
○ : Movable
× : P35 Setting value range
over
(14) If there are no specifications for the extended workpiece coordinate system selection, the program error (P172)
will occur when the G10 L20 command is executed.
(15) 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 P96 will
move in parallel with it, and a new workpiece coordinate system will be set.
IB-1501278-D
768
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(16) The offset amount of the extended workpiece coordinate system is assigned to system variables #7001 onwards.
The system variables #7001 to #890n are available up to the valid number of sets. (You can use them for the
300-set specification also, but there are system variables corresponding to up to 96 sets only.)
The system variables #101001 to #11595n are available when the 300-set specification is enabled.
If you use the system variables #101001 to #11595n when the 300-set specification is disabled, the program
error (P241) will occur.
CAUTION
If the workpiece coordinate system offset amount is changed during single block stop, the new setting will be
valid from the next block.
(17) When the "#1151 Reset ini" parameter is OFF, the modal of G54.1 command will be retained even if the reset
1 is carried out.
(18) The P address of the G54.1 command cannot be commanded alone even in G54.1 modal. Even if commanded,
the designated extended workpiece coordinate system cannot be selected.
(Ex)
P54.1 P5 ;
Changed to P5 workpiece coordinate system.
P3 ;
Ignored.
G92 X0 Y0 Z0 ;
The current position becomes the zero point of P5 workpiece coordinate system.
(19) When G92 is commanded in the extended workpiece coordinate system, the coordinate system will be sifted.
Program example
(Example 1)
(1) G28 X0 Y0 ;
(R1)
(2) G53 X-1000 Y-500 ;
(3) G53 X0 Y0 ;
(1)
(2)
M
(3)
When the coordinate value of the 1st reference position (R1) is zero, the basic machine coordinate system
zero point (M) and reference position (zero point) return position (#1) will coincide.
(Example 2)
(1) G28 X0 Y0 ;
(R1)
(2) G90 G00 G53 X0 Y0 ;
(1)
(3) G54 X-500 Y-500 ;
(2)
(4) G01 G91 X-500 F100 ;
M
-X (G54) - 1000 - 500
(5) Y-500 ;
(6) X+500 ;
-X (G55)
(7) Y+500 ;
(9)
(10)
(8) G90 G00 G55 X0 Y0 ;
(3)
W2
W1
-500
(8)
(5)
(11)
(4)
(6)
-500
-1000
(7)
-1000 -1500
(9) G01 X-500 F200 ;
(10) X0 Y-500 ;
-Y
(G55)
(11) G90 G28 X0 Y0 ;
769
-Y
(G54)
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(Example 3) When workpiece coordinate system G54 (-500, -500) has deviated in Example 2. (It is assumed that
(3) to (10) in Example 2 have been entered in subprogram 1111.)
(1) G28 X0 Y0 ;
(2) G90 G00 G53 X0 Y0 ;
(This is not required when there is no G53 offset.)
(3) G54 X-500 Y-500 ;
Amount by which workpiece coordinate system deviates
(4) G92 X0 Y0 ;
New workpiece coordinate system is set.
(5) M98 P1111 ;
(R1)
(1)
(2)
-X
(c)
- X(G55)
M
- X(G54)
-X
(G54')
(d)
(a)
(3)
(4)
- X(G55')
(b)
W1
-Y
(G54)
W2
-Y
(G55)
-Y
(G54')
- Y(G55')
-Y
(R1) Reference position return position
(a)
Old G54 coordinate system
(b)
New G54 coordinate system
(c)
Old G55 coordinate system
(d)
New G55 coordinate system
Note
(1) The workpiece coordinate system will deviate each time steps (3) to (5) shown in the above figure are repeated.
The reference position return (G28) command should therefore be issued upon completion of the program.
IB-1501278-D
770
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(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
Workpiece 1 X = -100.000 Y = -100.000.....G54
Workpiece 2 X = -100.000 Y = -500.000.....G55
Workpiece 3 X = -500.000 Y = -100.000.....G56
Workpiece 4 X = -500.000 Y = -500.000.....G57
Workpiece 5 X = -900.000 Y = -100.000.....G58
Workpiece 6 X = -900.000 Y = -500.000.....G59
(2) Machining program (subprogram)
O100;
N1
G90 G00 G43 X-50. Y-50. Z-100. H10 ;
Positioning
N2
G01
X-200. F50 ;
Surface cutting
Y-200. ;
Surface cutting
X-50. ;
Surface cutting
Y-50. ;
Surface cutting
N3
G28 X0 Y0 Z0 ;
N4
G98 G81 X-125. Y-75. Z-150. R-100. F40 ;
:
Drilling 1
X-175. Y-125. ;
Drilling 2
X-125. Y-175. ;
Drilling 3
X- 75. Y-125. ;
Drilling 4
G80 ;
N5
G28 X0 Y0 Z0 ;
:
N6
G98 G84 X-125. Y-75. Z-150. R-100. F40 ;
Tapping 1
X-175. Y-125. ;
Tapping 2
X-125. Y-175. ;
Tapping 3
X- 75. Y-125. ;
Tapping 4
G80 ;
M99 ;
(3) Positioning program (main)
G28 X0 Y0 Z0 ;
At power ON
N1 G90 G54 M98 P100 ;
N2
G55 M98 P100 ;
N3
G57 M98 P100 ;
N4
G56 M98 P100 ;
N5
G58 M98 P100 ;
N6
G59 M98 P100 ;
N7 G28 X0 Y0 Z0 ;
N8 M02 ;
%
771
IB-1501278-D
-X
IB-1501278-D
-X
-X
G59
G58
772
-Y
W6
-Y
W5
-X
-X
G57
G56
-Y
W4
-Y
W3
900mm
-X
-X
2
3
1
G55
4
G54 W1
200mm
175
125
75
500mm
100mm
0 M
-Y
W2
-Y
-Y
175
125 200mm
50
75
50mm
100mm
500mm
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(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.
P8
P6
P7
P3
P11
P9
P24
P14
P22
P23
P19
P30
P38
P40
P35
P43
P41
P42
P32
P34
P36
P37
P39
P17
P31
P29
P28
P26
P16
P18
P20
P21
P27
P25
P1
P15
P13
P12
P10
P2
P4
P5
P47
P45
P44
P33
P46
01000
01001
G28 XYZ ;
Reference position return
G43 X-10.Y-10.Z-100.H10.;
#100=1 ;
Initialize added workpiece
coordinate system P No.
G01 X-30.;
G90 ;
Absolute value mode
Y-30.;
WHILE
[#100LE48]D01 ;
Repeat P No. to 48
X-10.;
G54.1 P#100 ;
Set workpiece coordinate
system
Y-10.;
M98 P1001 ;
Call sub-program
G00 G40 Z10.;
#100=#100+1 ;
P No. +1
G98 G81 X-20.Y-15.Z150.R5.F40;
Return to reference position
X-20.Y-25.;
END1 ;
G28 Z ;
P48
Contour
Drilling
X-25.Y-20.;
G28 XY ;
X-15.Y-20.;
M02 ;
G80 ;
M99 ;
773
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(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.
P3
P19 P20
P22
P23
P21
P24
P1
Z
P2
P5
P6
P4
X
B
020000 (Main)
G28 XYZB ;
Reference position return
G90 ;
Absolute value mode
G00 B0 ;
Position table to face 1
G65 P2001 A1 ;
Load workpiece offsets
M98 P2002 ;
Drilling
G00 B90 ;
Position table to face 2
G65 P2001 A7 ;
M98 P2002 ;
G00 B180 ;
Position table to face 3
G65 P2001 A13 ;
M98 P2002 ;
G00 B270 ;
Position table to face 4
G65 P2001 A19 ;
M98 P2002 ;
G28 XYB ;
Return to reference position
M02 ;
%
IB-1501278-D
774
Y
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
02001 (Transmission of workpiece offsets)
#2=5221 ;
Leading No. of workpiece coordinate system variables
#3=[#1-1]*20+7001 ;
Leading No. of added workpiece coordinate system variables
#5=0 ;
No. of sets counter clear
WHILE [#5 LT 6] DO1 ;
Check No. of sets
#6=#6+1 ;
Set transmission source 1st axis variable No.
#7=#7+1 ;
Set transmission destination 1st axis variable No.
#4=#4+1 ;
Clear No. of axes counter
WHILE [#4 LT 6] DO2 ;
Check No. of axes
#[#6]=#[#7] ;
Transmit variable data
#6=#6+1 ;
Set transmission source next axis
#7=#7+1 ;
Set transmission destination next axis
#4=#4+1 ;
No. of axes counter +1
END2 ;
#2=#2+20 ;
Transmission source Set lead of next variable set.
#3=#3+20 ;
Transmission destination Set lead of next variable set.
#5=#5+1 ;
No. of sets counter +1
END1 ;
M99 ;
%
O2002 (Drilling)
G54 M98 H100 ;
Drilling in G54 coordinate system
G55 M98 H100 ;
G55
G56 M98 H100 ;
G56
G57 M98 H100 ;
G57
G58 M98 H100 ;
G58
G59 M98 H100 ;
G59
G28 Z0 ;
M99 ;
N100 G98 G81 X-20. Y-15. Z-150. R5. F40 ;
Fixed cycle for drilling
X-25. Y-20. ;
X-20. Y-25. ;
X-15. Y-20. ;
G80 ;
G28 Z ;
M99 ;
%
775
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.7 Workpiece Coordinate System Preset ; G92.1
Function and purpose
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).
The workpiece coordinate system, which is set when the following type of operation or program command is executed, will be shifted from the machine coordinate system.
 When manual interrupt is executed while manual absolute is OFF
When movement command is issued in machine lock state
When axis is moved with handle interrupt
When operation is carried out with mirror image
When local coordinate system is set with G52
Shifting the workpiece coordinate system with G92
This function presets the shifted workpiece coordinate system to the workpiece coordinate system offset from the
machine zero point by the workpiece coordinate offset amount. This takes place in the same manner as manual
reference position return. Whether to preset the relative coordinate depends on the MTB specifications (parameter
"#1228 aux12/bit6").
Command format
G92.1
α0
X0. Y0. Z0. α0 ;
Additional axis
(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) Command G92.1 in an independent block.
(4) Whether to conduct an error check when the coordinate system preset command (G92.1) is independently issued depends on the MTB specifications (parameter "#1242 set14/bit1").
IB-1501278-D
776
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Detailed description
(1) When manual operation is carried out when manual absolute is set to OFF, or if the axis is moved with handle
interrupt.
Y
Y
(Wx)
(C)
(C)
(a)
W1’
(Wy)
W1
X
W1
X
M
(a) Manual movement amount
(C) Current position
(Wx) Workpiece coordinate x after preset
(Wy) Workpiece coordinate y after preset
If manual operation is carried out when manual absolute is set to OFF, or if the axis is moved with handle interrupt, the workpiece coordinate system will be shifted by the manual movement amount.
This function returns the shifted workpiece coordinate zero point W1' to the original workpiece coordinate zero
point W1, and sets the distance from W1 to the current position as the workpiece coordinate system's current
position.
(2) When movement command is issued in machine lock state
Y
Y
(a)
(Wx)
(C)
(b)
(C)
(Wy)
(W1)
(W1)
X
X
(a) Movement amount during machine lock
(b) Workpiece coordinate system coordinate value
(Wx) Workpiece coordinate x after preset
(Wy) Workpiece coordinate y after preset
(C) Current position
(W1) Workpiece coordinate zero point
If the movement command is issued in the machine lock state, the current position will not move, and only the
workpiece coordinates will move.
This function returns the moved workpiece coordinates to the original current position, and sets the distance from
W1 to the current position as the workpiece coordinate system's current position.
777
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(3) When operation is carried out with mirror image
Y
Y
(Wx)
(C)
(C)
(a)
(b)
(Wy)
(W1)
(W1)
X
(d)
(a) Actual operation
(b) Program command
(C) Current position
(d) Mirror image center
(Wx) Workpiece coordinate x after preset
(Wy) Workpiece coordinate y after preset
X
(W1) Workpiece coordinate zero point
If operation is carried out with mirror image, only the NC internal coordinates are used as the program command
coordinates. The other coordinates are the current position coordinates.
This function sets the NC internal coordinates as the current position coordinates.
(4) Setting local coordinate system with G52
Y
Y
(a)
(Wx)
(C)
(C)
(b)
(L1)
(Wy)
(W1)
(W1)
X
(a) Local coordinates x
(b) Local coordinates y
(Wx) Workpiece coordinate x after preset
(Wy) Workpiece coordinate y after preset
(C) Current position
(L1) Local coordinate zero point
X
(W1) Workpiece coordinate zero point
The local coordinate system is set with the G52 command, and the program commands, etc., are issued with
the local coordinate system.
With this function, the set local coordinate system is canceled, and the program commands, etc., use the workpiece coordinate system which has W1 as the zero point. The canceled local coordinate system is only the selected workpiece coordinate system.
IB-1501278-D
778
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(5) Shifting the workpiece coordinate system with G92
Y
Y
(a)
(Wx)
(C)
(C)
(b)
(W1')
(Wy)
(W1)
(W1)
X
X
(a) Local coordinates x
(b) Local coordinates y
(Wx) Workpiece coordinate x after preset
(Wy) Workpiece coordinate y after preset
(C) Current position
(W1) Workpiece coordinate zero point
(W1') Workpiece zero point after G92 command
The workpiece coordinate system shifts with the G92 command, and the distance between W1' and the current
position is set as the current position of the workpiece coordinate system.
This function returns the shifted workpiece coordinate zero point to W1, and sets the distance from W1 to the
current position as the workpiece coordinate system's present position. This is valid for all workpiece coordinate
systems.
Program example
The workpiece coordinate system shifted with G92 is preset with G92.1.
Y
Y
(5)
(4)
1500
1500
(3)
(2)
1000
1000
(W1')
500
500
(1)
(W1)
500
1000
1500
X
(W1)
(mm)
500
1000
1500
X
(mm)
(W1) Workpiece coordinate zero point
(W1') Workpiece zero point after G92 command
(Example)
G28 X0 Y0 ;
G00 G90 X1. Y1. ;
G92 X0 Y0
G00 X500 Y500 ;
G92.1 X0 Y0 ;
... (1)
... (2)
... (3)
... (4)
... (5)
779
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Relationship with other functions
Tool No./Tool Compensation No. (T Code)/tool length compensation
If the error check is enabled when the workpiece coordinate system preset is independently commanded (*1), command all the tool compensation axes when commanding "G92.1" during the tool compensation. When commanding
"G92.1" during the tool length compensation, designate the tool length compensation axis.
If those axes are not commanded, a program error (P29) will occur.
(*1) The setting depends on the MTB specifications (parameter "#1242 set14/bit1").
Tool nose radius compensation / Tool radius compensation
Cancel the tool nose radius compensation or the tool radius compensation, and command the workpiece coordinate
system preset (G92.1). When the workpiece coordinate system preset (G92.1) is commanded during the tool nose
radius compensation or the tool radius compensation, a program error (P29) will occur if none of the tool compensation axes are commanded.
3-dimensional coordinate conversion
If the workpiece coordinate system preset (G92.1) is commanded in 3-dimensional coordinate conversion, a program error (P921) will occur.
Other G code commands
If the workpiece coordinate system preset (G92.1) is commanded during the modal shown below, a program error
(P34) will occur.
(1) Scaling
(2) Coordinate rotation by program
(3) G command mirror image
(4) Tool length compensation along the tool axis
Precautions
(1) Cancel tool length compensation, tool nose radius compensation, tool radius compensation, and tool position
offset when using this function. If this function is executed without canceling them, the workpiece coordinates
will be at a position obtained by subtracting the workpiece coordinate offset amount from the machine value.
Thus, the compensation vector will be temporarily canceled.
(2) This function cannot be executed while the program is being resumed.
IB-1501278-D
780
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.8 3-dimensional Coordinate Conversion ; G68/G69
Function and purpose
With the 3-dimensional coordinate conversion function, a new coordinate system can be defined by shifting the zero
point and rotating in respect to the X, Y and Z axes of the currently set workpiece coordinate system. By using this
function, an arbitrary spatial plane can be defined, and machining on that plane can be carried out with normal program commands.
The validity of this function depends on the MTB specifications. Refer to the specifications of your machine tool.
Y
Y'
(P)
Z'
(W)
X'
Z
(M)
X
(M) Machine coordinate system (P) G68 Program coordinate system
(W) Workpiece coordinate system
When the G68 command is issued, the zero point is shifted by the command value (x, y, z) in respect to the current
local coordinate system. A new G68 program coordinate system rotated by the designated rotation angle "r" in respect to the commanded rotation center direction (i, j, k) is created.
The local coordinate system is the same as the workpiece coordinate system when the local coordinate system offset is not ON.
Command format
3-dimensional coordinate conversion mode command
G68 X__ Y__ Z__ I__ J__ K__ R__ ;
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" is designated for only one of the three axes. "0" is designated for the other two
axes.
R
Rotation angle
The counterclockwise direction looking at the rotation center from the rotation center axis direction is positive (+).
The setting range is -360 to 360°, and the unit follows the minimum command unit.
3-dimensional coordinate conversion mode cancel command
G69 ;
781
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Detailed description
(1) Command the rotation center coordinates with absolute values.
(2) If the rotation center coordinates are omitted, the zero point of the currently set coordinate system will be the
rotation center coordinates.
(3) Designate values for all of I, J and K.
If any of the I, J, K is not designated, program coordinate rotation command will be valid.
(4) Set "1" in only one of I, J and K, and set "0" for the other two.
The program error (P33) will occur if "1" is set in two or more.
(5) The program error (P33) will also occur if "0" is set for all I, J and K.
(6) When addresses I, J and K are not designated, this will be handled as the program coordinate rotation.
(7) If a number other than "0" (including numbers of two or more digits) is designated for addresses I, J and K, this
will be handled as "1".
If a blank is designated, this will be handled as "0".
(8) If a G code that cannot be commanded in the 3-dimensional coordinate conversion modal is issued, the program
error (P921) will occur.
When 3-dimensional coordinate conversion is commanded during the modal where 3-dimensional coordinate
conversion cannot be carried out, the program error (P922) or program error (P923) will also occur. For details,
refer to "Relationship with Other Functions".
(9) Command G68 in an independent block. If another G code command is issued to the same block as for the G68
command, a program error (P923) will occur.
(10) The 3-dimensional coordinate conversion command for the rotary axis will result in the program error (P32).
(11) If a 3-dimensional coordinate conversion command is issued when there are no specifications for 3-dimensional
coordinate conversion, the program error (P920) will occur.
Coordinate system
(1) By issuing the 3-dimensional coordinate conversion command, a new coordinate system (G68 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.
Thus, these coordinate systems are affected by the following coordinate system offset and coordinate system
shift amount.
When local coordinate system is set with G52
G92 shift amount by G92 command
Coordinate system offset corresponding to the workpiece coordinate system selected with the command
External workpiece coordinate offset
Manual interruption amount or manual feed amount when manual ABS is OFF
(3) If 3-dimensional coordinate conversion is commanded again during the 3-dimensional coordinate conversion
modal, a G68 program coordinate system is created on the current G68 program coordinate system, and is used
as a new G68 program coordinate system.
(4) The local coordinate system cannot be created (G52) on the G68 program coordinate system.
(If G52 is issued, the program error (P921) will occur.)
(5) G68 program coordinate system can be reset either by G69 command or reset inputting. (Exclude reset 1 when
"0" is set to the parameter "#1151 rsint")
(6) Whether to run the manual operation during the 3-dimensional coordinate conversion modal in the G68 program
coordinate system can be designated by switching the manual feed coordinate for 3-dimensional coordinate conversion.
(7) Even if the 3-dimensional coordinate conversion modal state is canceled by reset, etc., the manual operation is
possible in the G68 program coordinate system before the 3-dimensional coordinate conversion modal is canceled, until the G69 command is issued.
In the same way as during the 3-dimensional coordinate conversion modal, the target coordinate can be designated by switching the manual feed coordinate for 3-dimensional coordinate conversion.
IB-1501278-D
782
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Rotation angle
(1) For the rotation angle, the counterclockwise direction looking at the rotation center from the plus direction of the
rotation center axis is the plus (+) direction.
(2) The rotation angle command unit with no decimal point depends on the parameter "#1078 Decpt2" (Decimal pnt
type 2).
(3) If the rotation angle is omitted, the rotation angle will be handled as 0°.
Rotation center coordinates
(1) The G68 rotation center coordinate system is commanded with the local coordinate system (G68 program coordinate system during the 3-dimensional coordinate conversion modal).
(2) The rotation center coordinate designation is handled as an absolute value command whether or not an absolute/
incremental modal (G90/G91) is currently being executed.
(3) If the rotation center coordinate is omitted, it will be handled as if the zero point of the current local coordinate
(G68 program coordinate system during the 3-dimensional coordinate conversion modal) is designated for the
omitted address's axis. (The same as when "0" is just set.)
G68 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.
(2) If 3-dimensional coordinate conversion is overlapped during the 3-dimensional coordinate conversion modal, the
overlapped 3-dimensional coordinate conversion will be created on the coordinate system (G68 program coordinate system) created with 3-dimensional coordinate conversion in the modal.
Thus, the rotary axis and coordinates must be designated with this G68 program coordinate system.
If creating a 90° rotated coordinate system for X axis and Y axis each, commands must be issued as in Example
2, not Example 1.
<Example 1>
G68 X0. Y0. Z0. I1 J0 K0 R90.;
X axis rotation 90°
G68 X0. Y0. Z0. I0 J1 K0 R90.;
Y axis rotation 90°
(The Y axis designated here is the same as the Z axis in the original
coordinate system.)
<Example 2>
G68 X0. Y0. Z0. I1 J0 K0 R90.;
X axis rotation 90°
G68 X0. Y0. Z0. I0 J0 K1 R-90.;
Z axis rotation 90°
(The Z axis -90 rotation designated here is the same as the Y axis
+90 rotation in the original coordinate system.)
783
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Conversion method for 3-dimensional coordinate conversion
The coordinate values (Xp, Yp, Zp) in the newly set G68 program coordinate system and the coordinate values (Xm,
Ym, Zm) in the reference workpiece coordinate system are converted as shown below.
First G68 command
[Xm, Ym, Zm, 1]=[Xp, Yp, Zp, 1]R1 T1
-1
(Forward row)
(Reverse row)
-1
[Xp, Yp, Zp, 1]=[Xm, Ym, Zm, 1](T1 )(R1 )
Second G68 command
[Xm, Ym, Zm, 1]=[Xp, Yp, Zp, 1]R2 T2 R1 T1
[Xp, Yp, Zp, 1]=[Xm, Ym, Zm, 1](T1-1)(R1-1)(T2-1)(R2-1)
R1, R2 : Rotation row calculated from first and second G68 parameter
T1, T2 : Movement row calculated from first and second G68 parameter
The conversion rows Rn and Tn (n = 1, 2) are as follow.
Rn conversion row
I designation (rotation around X J designation (rotation around Y K designation (rotation around Z
axis)
axis)
axis)
1
0
0
0
cosR
0
- sinR
0
cosR
sinR
0
0
0
cosR
sinR
0
0
1
0
0
- sinR
cosR
0
0
0
- sinR
cosR
0
sinR
0
cosR
0
0
0
1
0
0
0
0
1
0
0
0
1
0
0
0
1
Tn conversion row
1
0
0
0
0
1
0
0
0
0
1
0
x
y
z
1
x, y, z : Rotation center coordinates (parallel movement amount)
I, J, K : Rotation axis selection
R : Rotation angle
Manual operation in G68 program coordinate system
Whether to run manual operations (jog feed, incremental feed, and manual handle feed) during the 3-dimensional
coordinate conversion modal in the coordinate system (G68 program coordinate system) after the 3-dimensional
coordinate conversion command was issued can be designated by switching the manual feed coordinate for 3-dimensional coordinate conversion.
When the axis stops during machining, operations such as a pulling operation by manual feed can be performed in
the G68 program coordinate system.
(1) Coordinate switching enable conditions
A manual operation coordinate change by switching the manual feed coordinate for 3-dimensional coordinate
conversion is available only when the output signal that enables the manual feed for 3-dimensional coordinate
conversion is set to ON. (The operation of the PLC signal depends on the MTB specifications.)
The manual operation coordinate change by switching the manual feed coordinate for 3-dimensional coordinate
conversion becomes valid after three basic axes have stopped. When the manual feed coordinate for 3-dimensional coordinate conversion is switched while even one of three basic axes is moving, a coordinate change is
performed after three basic axes have stopped.
The output signal that enables the manual feed for 3-dimensional coordinate conversion is set to ON when all of
the following conditions are satisfied.
(a) One of the jog, incremental, or handle feed modes is selected.
(b) G68 (3-dimensional coordinate conversion command) is commanded once. However, if the signal is canceled by the G69 command, it is not turnd ON until G68 is commanded again.
IB-1501278-D
784
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(2) Operation example
The absolute coordinate positions are displayed in the G68 program coordinate system with a parameter. This
depends on the MTB specifications (parameter "#1561 3Dcdc").
The machine zero point is used as the workpiece coordinate zero point. Also, the manual ABS is set to ON to
return to the position commanded by the machining program with the absolute command after a manual interruption.
<Operation procedure>
(1) Set mode selection to automatic operation (memory, MDI, tape, etc.) mode.
(2) Execute the following machining program, then perform single block stop after the N03 block has been completed... (a)
N01 G68 X0. Z0. Y0. I0 J1 K0 R45. ;
Set the G68 program coordinate system (X’Y’Z’) which has
been rotated +45°in the Y axis direction around the (X0, Z0).
N02 G00 X1.;
N03 G00 Z-10.;
Position the axis near the hole position in the G68 program coordinate system.
N04 G01 Z-20.;
Cutting in G68 program coordinate system
(3) Set the handle mode, then select the Z axis with the 1st handle. Then, check that the output signal that enables the manual feed for 3-dimensional coordinate conversion is set to ON.
(4) Set to ON the signal that switches the manual feed coordinate for 3-dimensional coordinate conversion.
(5) Move the axis by -5. with the handle in the Z' direction of the G68 program coordinate, then check the hole
position... (b)
(6) Move the axis by +7. with the handle in the Z' direction to retract the tool... (c)
(7) After executing an automatic start, execute the N04 block... (d)
X
X’
Z’
(a)
Z
(b)
(c)
(d)
Absolute coordinate
(a) Positioning
(b) Hole position check
(c) Retract
(d) Cutting
Machine coordinate
X
1.000
-6.364
Z
-10.000
-7.778
X
1.000
-9.900
Z
-15.000
-11.314
X
1.000
-4.950
Z
-8.000
-6.364
X
1.000
-13.435
Z
-20.000
-14.849
785
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(3) Precautions
(a) When the automatic and manual operation modes are selected simultaneously, the manual feed for 3-dimensional coordinate conversion cannot be commanded. However, manual operation is available only for the
axis for which the manual automatic simultaneous valid axis signal is set to ON.
(b) The speed limit is applied so that the speed distributed to the movement amount in the machine axis direction
does not exceed the clamp speed of each axis.
(c) If even one axis satisfies the external deceleration conditions, the speed limit is applied so that the movement
speed in each axis direction does not exceed the external deceleration speed.
(d) The movement amount by handle feed conforms to that on the G68 program coordinate system. If clamp
("#1281 ext17/bit4=1") is commanded with the number of handle input pulses, the movement amount on the
G68 program coordinate system becomes the integral multiple of the handle magnification.
(e) When clamp ("#1281 ext17/bit4=1") is commanded with the number of handle input pulses, if the one-scale
movement amount by manual feed for 3-dimensional coordinate conversion exceeds the movement amount
for the specified time at clamp speed, the operation error (M01 0060) occurs at the time of pulse occurrence,
not at the time of handle axis selection, and movement will fail. To move, reduce the handle magnification.
(f) The manual feed operation for 3-dimensional coordinate conversion is not available in manual reference position return mode. If it is started, an operation error (M01 0060) will occur. To use the manual reference position return mode, set to OFF the signal that switches the manual feed coordinate for 3-dimensional
coordinate conversion.
(g) The manual feed operation for 3-dimensional coordinate conversion is not available in tool retract and return
mode. If it is started, an operation error (M01 0060) will occur. To use the tool escape mode, set to OFF the
signal that switches the manual feed coordinate for 3-dimensional coordinate conversion.
(h) This function is not compatible with the manual tool length measurement function, workpiece position measurement function, and manual skip based on the manual feed for 3-dimensional coordinate conversion. If it
is started, an operation error (M01 014) will occur. While the manual tool length measurement function or
workpiece position measurement function is active or when manual skip is valid, set to OFF the signal that
switches the manual feed coordinate for 3-dimensional coordinate conversion.
(i) When the manual automatic simultaneous valid axis signal is set to ON for any of three basic axes, operation
is performed in the same way as when the manual automatic simultaneous valid axis signal for three basic
axes is set to ON.
(j) When the manual machine lock signal is set to ON for any of three basic axes, operation is performed in the
same way as when the manual machine lock signal for three basic axes is set to ON.
(k) When a factor such as manual interlock that triggers the stop of the axis under manual movement occurs at
any of three basic axes, execute deceleration stop on the three basic axes.
(l) When the 3-dimensional coordinate conversion modal state is canceled by reset, etc., the manual feed for 3dimensional coordinate conversion is possible; however, the absolute coordinate position display function
and other functions conform to the 3-dimensional coordinate conversion modal state and parameter setting.
The coordinate cannot be changed by switching the manual feed coordinate for 3-dimensional coordinate
conversion.
(m) If the G69.1 command exists up to the block to be restart-searched at program restart, it also cancels the
state that enables the manual feed in 3-dimensional coordinate conversion as the G69.1 command does.
IB-1501278-D
786
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Program example
Program example 1
N1 G68 X10.Y0. Z0. I0 J1 K0 R-30.;
N2 G68 X0. Y10. Z0. I1 J0 K0 R45.;
:
N3 G69 ;
+Z
+Y"
+Y
45
+Z"
+Y'
+X"
P"(0,10,0)
(B)
+X'
P(0,0,0)
(L)
- 30
P'(10,0,0)
(A)
+X
(1) With N1, the zero point is shifted by (x, y, z) = (10, 0, 0) in respect to the currently set local coordinate system
(L). The new G68 program coordinate system (A) rotated -30° in the counterclockwise direction using the Y axis
as the center, is set.
(2) With N2, the zero point is shifted by (x, y, z) = (0, 10, 0) in respect to the newly set G68 program coordinate
system (A). The new G68 program coordinate system (B) rotated +45° in the counterclockwise direction using
the X axis as the center, is set.
(3) With N3, the G68 program coordinate systems that have been set are all canceled, and the state prior to where
the first G68 has been commanded is resumed.
787
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Program example 2
This is only a sample program 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. By using 3-dimensional
coordinate conversion, the side can be cut using the same process (N8 block).
N01 G17 G90 G00 X0 Y0 Z0;
Position to the workpiece zero point P.
N02 G00 X100. Y200. Z200.;
Move to (100, 200, 200) with rapid traverse.
N03 G02 X100. Y400. J100. F1000;
Carry out arc cutting on workpiece top.
N04 G00 Z300.;
Escape +100 in +Z direction at rapid traverse rate.
N05 G68 X0 Y0 Z200. I0 J1 K0 R90.;
Set the G68 program coordinate system (X’Y’Z’) which has been
rotated +90°in the Y axis direction around the (0,0,200).
N06 G17 G90 G00 X0 Y0 Z0;
Position to the new program zero point P'.
N07 G00 X100. Y200. Z200.;
Move to G68 program coordinate system (100, 200, 200) and
workpiece coordinate system (200, 200, 100) at rapid traverse
rate.
N08 G02 X100. Y400. J100. F1000;
Carry out arc cutting on workpiece side.
N09 G00 Z300.;
Move +100 in + Z' direction of G68 program coordinate system
at rapid traverse rate.
N10 G69 ;
N11 M02 ;
+Y'
+Z
+Y
N4
N6
N3
N9
N7
P ’(0,0,200)
N8
N1
N2
P (0,0,0)
+Z'
+X
+X'
IB-1501278-D
788
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(2) Example of machining program using fixed cycle
In the following program, the bolt hole circle (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 using the same
process (N18 block).
N01 G90 G00 X0 Y0 Z0;
Position to the workpiece coordinate system's 1st workpiece
zero point.
N02 F2000 ;
N03 G00 X100. Y100. Z-600.;
Move to (100, 100, -600) with rapid traverse.
N04 G52 X100. Y100. Z-600.;
Set the local coordinate system (X'Y'Z') to the (100, 100, -600).
N05 G00 X100. Y10. Z 200.;
Move to (100, 10, 200) position in the local coordinate system at
a rapid traverse.
N06 G91 ;
Incremental value command
N07 G81 Z-10. R5. L0 F2000;
Drilling cancel
N08 G34 X100. Y200. I90. J270. K10.;
Bolt hole circle
N09 G80 ;
Drilling cancel
N10 G91 G00 X-200.;
Move -200 from machining end point in X axis direction at rapid
traverse rate.
N11 G90 G52 X0 Y0 Z0;
Cancel local coordinate system.
N12 G90 G00 X0 Y0 Z0;
Position to workpiece zero point.
N13 G00 X100. Y100. Z-400.;
Move to (100, 100, -400) with rapid traverse.
N14 G68 X100. Y100. Z-400. I0 J1 K0
R90.;
Set G68 program coordinate system (X",Y",Z") rotated +90° in Y
axis direction using (100, 100, -400) position as center.
N15 G00 X100.Y10. Z200.;
Move to (100, 10, 200) position in the G68 program coordinate
system at a rapid traverse rate.
N16 G91 ;
Incremental value command
N17 G81 Z-10. R5. L0 F200;
Drilling cancel
N18 G34 X100.Y200. I90. J270. K10.;
Bolt hole circle
N19 G80 ;
Drilling cancel
N20 G91 G00 X-200.;
Move -200 from machining end point in X axis direction at rapid
traverse rate.
N21 G69 ;
Cancel 3-dimensional coordinate conversion modal.
N22 M02 ;
End program.
+Y
N1
(0,0,0)
N12
+X
N20
N13
-Z
+Y’’
N10
+Z’
N7 N9
N3
+Y’
’’ (100,100, - 400)
N5
N17 N19
N15
’ (100,100, - 600)
+Z’’
+X’’
+X’
789
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Relationship with Other Functions
(1) Circular interpolation
Circular interpolation in the 3-dimensional coordinate conversion modal operates according to the coordinate
value resulting from 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.
(2) Fine spline
Designation of a spline axis should be done to the movement axis after the 3-dimensional coordinate conversion.
When a movement occurs to the axis in which spline cannot be designated, spline will be in the pause status.
(3) Reference position check
The 3-dimensional coordinate conversion is applied for the positioning commanded by G27 in the 3-dimensional
coordinate conversion modal.
(4) Reference point return
The 3-dimensional coordinate conversion is applied for the mid-point commanded by G28 and G30 in the 3-dimensional coordinate conversion modal. However, reference position return will be carried out without the 3-dimensional coordinate conversion.
(5) Tool change position return
3-dimensional coordinate conversion is not carried out for the tool change position even if a command from
G30.1 to G30.6 is issued in the 3-dimensional coordinate conversion modal. The returning order and position
will be on the machine coordinate system.
(6) Tool compensation
When executing the tool length/radius/position compensation in the 3-dimensional coordinate conversion modal,
the 3-dimensional coordinate conversion is carried out after the compensation value has been applied.
(7) Machine coordinate system selection
Coordinate conversion will not be carried out for the machine coordinate system even if G53 command is issued
in the 3-dimensional coordinate conversion modal.
(8) Mirror image
When issuing the mirror image command in the 3-dimensional coordinate conversion modal, as well as when
executing the 3-dimensional coordinate conversion in the mirror image modal, 3-dimensional coordinate conversion will be executed for the coordinate value, which is calculated by the mirror image.
(9) User macro
When a user macro call command is issued in the 3-dimensional coordinate conversion modal, the 3-dimensional coordinate conversion will be valid after the macro execution.
(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.
However, the fixed cycle hole drilling rapid traverse speed during the 3-dimensional coordinate conversion modal
is switched as shown below by the settings of the parameters "#15663 DselctDrillaxMode" and "#1564 3Dspd".
(This depends on the MTB specifications.)
Fixed cycle rapid traverse speed during 3-dimensional coordinate conversion
#1566
0 (Rapid traverse mode)
1 (Cutting mode)
#1564
-
0
Rapid traverse speed The "#2001 rapid" value for The "#2002 clamp" value
each machine axis is con- for each machine axis is
verted to the speed in the converted to the speed in
composite movement direc- the composite movement
tion, and the slowest speed direction, and the slowest
is applied.
speed is applied.
1 to 1000000
The value (mm/min) set to
"#1564 3Dspd" is applied.
<Note>
The speed of operation 1 in the table above conforms to the "#2001 rapid" value regardless of the parameter setting above.
When a macro interruption, MDI interruption, or PLC interruption is carried out in the fixed cycle during 3dimensional coordinate conversion, the rapid traverse speed in the interrupt machining program conforms to the "#2001 rapid" value regardless of the parameter setting above.
IB-1501278-D
790
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(I)
(1)
(2)
(5)
(R)
(3)
(4)
[Operation]
(1)
Position to the initial position at the rapid traverse rate.
(2)
Position to the R point at the rapid traverse rate.
(3)
Hole machining is conducted by cutting feed.
(4)
Escape to the R point.
Cutting feed or rapid traverse depending on the fixed cycle
mode.
(5)
The tool is returned to the initial point at the rapid traverse
rate.
(I) Initial point
(R) R point
Parameter "#1566" becomes valid when each fixed cycle is set to rapid traverse mode. The operation numbers
in the table below correspond to those in the figure above.
Relationships between fixed cycles and parameter "#1566"
G Code
G73
[Operation] (2)
○
[Operation] (3)
×
[Operation] (4)
○
[Operation] (5)
○
G74
○
×
×
○
G75
○
×
○
○
G76
○
×
○
○
G81
○
×
○
○
G82
○
×
○
○
G83
○
×
○
○
G84
○
×
×
○
G85
○
×
×
○
G86
○
×
○
○
G87
○
○
×
○
G88
○
×
○
○
G89
○
×
×
○
o: "#1566" is valid (rapid traverse).
x: "#1566" is irrelevant (cutting feed).
For G87, the movement completion position in operation 3 is set to R point.
Parameter "#1566" is also valid for rapid traverse operation at G76 or G87 shift.
Parameter "#1566" is also valid for G73 or G83 return operation.
(11) Synchronous tapping cycle
The synchronous tapping cycle in the 3D coordinate conversion can be executed in an oblique direction for the
orthogonal coordinate system.
The Synchronous tapping cycle in the 3-dimensional coordinate conversion modal will not function even if
"#1223 aux07/bit3" (synchronous tapping in-position check expansion valid)" is valid. Set the synchronous tapping cycle to invalid. (This parameter setting depends on the MTB specifications.)
The rapid traverse rate in synchronous tapping cycle always follows the value of #2001(rapid traverse rate)
during the 3D coordinate conversion mode, regardless of the values of #1566(switch drill axis's mode from rapid
traverse during 3D) and #1564(hole drilling cycle during 3D coordinate conversion).
If any of the orthogonal axes of all the active part systems is under machine lock during 3-dimensional coordinate
conversion, normal synchronous tapping is applied even though the high-speed synchronous tapping specification is enabled.
791
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(12) Geometric command
Geometric command can be issued in the 3-dimensional coordinate conversion modal. However, if the geometric command is issued in the same block as in the 3-dimensional coordinate conversion command (G68, G69),
"the program error (P32) will occur.
(13) Init const sur spd
When the 3-dimensional coordinate conversion command is issued while the parameter initial constant surface
speed is valid, the program error (P922) will occur. This is the same consequence as in the case where the 3dimensional coordinate conversion command is issued in the constant surface speed (G96) modal.
(14) Machine lock
The machine lock in the 3-dimensional coordinate conversion modal will be valid for the movement axis for the
coordinate value after executing the 3-dimensional coordinate conversion.
(15) Interlock
The interlock in the 3-dimensional coordinate conversion modal will be valid for the movement axis for the coordinate value after executing the 3-dimensional coordinate conversion.
(16) Coordinate read variable
When reading the workpiece coordinate system/skip coordinate system during the 3-dimensional coordinate
conversion modal, local coordinate system and G68 program coordinate system can be switched with the parameter "#1563 3Dcdrc".
(17) Workpiece coordinate display
Whether to display the workpiece coordinate system position in the 3-dimensional coordinate conversion modal,
in the workpiece coordinate system or in the G68 program coordinate system can be switched with the parameter "#1561 3Dcdc". In the same manner, absolute value can be displayed on the special display.
<Note>
1um of display deviation may occur during the 3-dimensional coordinate conversion; however, this is normal.
(18) Remaining command display
Whether to display the remaining commands in the 3-dimensional coordinate conversion modal, in the workpiece
coordinate system or in the G68 program coordinate system can be switched with the parameter "#1562
3Dremc".
<Note>
1um of display deviation may occur during the 3-dimensional coordinate conversion; however, this is normal.
(19) Graphic check
Linear tracing is applied to circular interpolation (including corner R) during 3-dimensional coordinate conversion
in graphic check mode.
(20) Manual operation in G68 program coordinate system
Refer to "Manual Operation in G68 Program Coordinate System" in Detailed description.
(21) Others
G41, G42, and the fixed cycle commands G73 to G89 have to be nested inside the G68/G69 commands.
For the block next to G68, a movement command in the G90 (Absolute value command) mode has to be issued.
(Example)
G68 X50. Y100. Z150. I1 J0 K0 R60. ;
G90 G00 X0 Y0 Z0 ;
G41 D01 ;
G40 ;
G69 ;
G00 command during 3-dimensional coordinate conversion modal is the interpolation type regardless of settings of the basic parameter "#1086 G0Intp (G00 non-interpolation)"
Origin zero cannot be executed during the 3-dimensional coordinate conversion modal.
When in a G68/G69 block during tool compensation, the program position counter indicates a position shifted by the tool length offset.
IB-1501278-D
792
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Relation with other G codes
Pxxx in the list indicates the program error Nos.
Column A: Operation to be carried out when the G command in the list is issued during 3-dimensional coordinate
conversion
Column B: Operation to be carried out when 3-dimensional coordinate conversion is commanded while the G command modal in the list is established
Column C: Operation to be carried out when the G command in the list and 3-dimensional coordinate conversion
are commanded for the same block
G command
Function
A
B
C
G00
Positioning
○
○
P923
G01
Linear interpolation
○
○
P923
G02
Circular interpolation CW ○
○
P923
Helical interpolation CW P921
P922
P923
G03
Circular interpolation
CCW
○
○
P923
Helical interpolation
CCW
P921
P922
P923
G02.3
Exponential interpolation CW
P921
P922
P923
G02.4
3-dimensional circular in- P921
terpolation CW
P922
P923
G03.3
Exponential interpolation CCW
P921
P922
P923
G03.4
3-dimensional circular in- P921
terpolation CCW
P922
P923
G04
Dwell
○
-
G04 valid, G68 ignored
G05 P0
High-speed machining
mode cancel
○
-
P923
G05 P1,2
High-speed machining
mode I, II
P34
P34
P923
G05
P10000
High-speed high-accura- P34
cy control II
P34
P923
G05.1 Q0
High-speed machining ○
mode/High-speed highaccuracy control cancel
○
P923
G05.1 Q1
High-speed high-accura- ○
cy control I
○
P923
G05.1 Q2
Fine spline
P34
P34
P923
G07.1/
G107
Cylindrical interpolation
P921
P481
P923
G09
Exact stop check
○
-
P923
G10
Parameter input by pro- ○
gram
P421
P923
Program tool compensa- ○
tion input
-
G10 valid, G68 ignored
G11
Parameter input by pro- ○
gram cancel
-
P923
G12
Circular cutting CW
-
P923
G12.1
Polar coordinate interpo- P921
lation
P481
P923
G13
Circular cutting CCW
○
-
P923
G13.1
Polar coordinate interpo- ○
lation cancel
-
P923
○
793
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
G command
Function
A
B
C
G15
Polar coordinate command cancel
○
-
P923
G16
Polar coordinate command
○
○
P923
G17
Plane selection X-Y
○
○
○
G18
Plane selection Z-X
○
○
○
G19
Plane selection Y-Z
○
○
○
G20
Inch command
○
○
○
G21
Metric command
○
○
○
G27
Reference position
check
○
-
G27 valid, G68 ignored
G28
Reference position return
○
-
G28 valid, G68 ignored
G29
Start position return
○
-
G29 valid, G68 ignored
G30
2nd to 4th reference po- ○
sition return
-
G30 valid, G68 ignored
G30.1
Tool change position re- ○
turn 1
-
G30.1 valid, G68 ignored
G30.2
Tool change position re- ○
turn 2
-
G30.2 valid, G68 ignored
G30.3
Tool change position re- ○
turn 3
-
G30.3 valid, G68 ignored
G30.4
Tool change position re- ○
turn 4
-
G30.4 valid, G68 ignored
G30.5
Tool change position re- ○
turn 5
-
G30.5 valid, G68 ignored
G30.6
Tool change position re- ○
turn 6
-
G30.6 valid, G68 ignored
G31
Skip
○
-
P923
G31.1
Multi-step skip 1
○
-
P923
G31.2
Multi-step skip 2
○
-
P923
G31.3
Multi-step skip 3
○
-
P923
G33
Thread cutting
P921
P922
P923
G34
Special fixed cycle
(bolt hole circle)
○
-
P923
G35
Special fixed cycle
(line at angle)
○
-
P923
G36
Special fixed cycle (arc) ○
-
P923
G37.1
Special fixed cycle (grid) ○
-
P923
G37
Automatic tool length
measurement
-
G37 valid, G68 ignored
G38
Tool radius compensa- ○
tion (vector designation)
-
P923
G39
Tool radius compensation (corner arc)
○
-
P923
G40
Tool radius compensation cancel
○
-
○
G41
Tool radius compensation
○
P922
P923
3-dimensional tool radius ○
compensation
P922
P923
IB-1501278-D
P921
794
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
G command
G42
Function
Tool radius compensation
A
B
C
○
P922
P923
3-dimensional tool radius ○
compensation
P922
P923
G40.1/
G150
Normal line control can- P921
cel
-
P923
G41.1/
G151
Normal line control Left
P921
P922
P923
G42.1/
G152
Normal line control Right P921
P922
P923
G43
Tool length compensation (+)
○
○
P923
G44
Tool length compensation (-)
○
○
P923
G45
Tool position compensa- ○
tion increase
-
P923
G46
Tool position compensa- ○
tion decrease
-
P923
G47
Tool position compensa- ○
tion 2-fold increase
-
P923
G48
Tool position compensa- ○
tion 2-fold decrease
-
P923
G49
Tool length compensation cancel
○
-
P923
G43.1
Tool length compensation along the tool axis
P927
P931
P923
G43.4
Tool center point control P941
type1 ON
P922
P923
G43.5
Tool center point control P941
type2 ON
P922
P923
G50
Scaling cancel
P921
-
P923
G51
Scaling ON
P921
○
P923
G50.1
Mirror image cancel
○
-
P923
G51.1
Mirror image ON
○
○
P923
G52
Local coordinate system P921
setting
-
G52 valid, G68 ignored
G53
Machine coordinate sys- ○
tem setting
-
G53 valid, G68 ignored
G54
Workpiece coordinate
system 1 selection
P921
○
P923
G55
Workpiece coordinate
system 2 selection
P921
○
P923
G56
Workpiece coordinate
system 3 selection
P921
○
P923
G57
Workpiece coordinate
system 4 selection
P921
○
P923
G58
Workpiece coordinate
system 5 selection
P921
○
P923
G59
Workpiece coordinate
system 6 selection
P921
○
P923
G54.1
Extended workpiece co- P921
ordinate system selection
○
P923
795
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
G command
G60
Function
A
B
C
Unidirectional positioning P921
-
G60 valid, G68 ignored
Unidirectional positioning P921
(Modal designation)
P922
P923
G61
Exact stop check mode
○
○
P923
G61.1
High-accuracy control
○
○
P923
G62
Automatic corner override
○
○
P923
G63
Tapping mode
P921
P922
P923
G64
Cutting mode
○
○
○
G65
User macro simple call
○
-
Update modal only
(Coordinate rotation by
program)
G66
User macro Modal call A ○
○
Update modal only
(Coordinate rotation by
program)
G66.1
User macro modal call B ○
Update modal only
(Coordinate rotation by
program)
Update modal only
(Coordinate rotation by
program)
G67
User macro modal call
cancel
○
○
Update modal only after macro (Coordinate
rotation by program)
G68
Coordinate rotation by
program ON
P921
P922
-
3-dimensional coordinate conversion ON
○
○
-
Coordinate rotation by
program
cancel
○ (3-dimensional co- ordinate conversion
cancel)
-
3-dimensional coordinate conversion cancel
○
-
-
G73
Fixed cycle (step)
○
P922
P923
G74
Fixed cycle (reverse tap- ○
ping)
(including synchronous
tapping)
P922
P923
G76
Fixed cycle
(fine boring)
○
P922
P923
G80
Fixed cycle cancel
○
-
P923
G81
Fixed cycle
(drill/spot drill)
○
P922
P923
G82
Fixed cycle
(drill/counter boring)
○
P922
P923
G83
Fixed cycle (deep drilling)
○
P922
P923
G84
Fixed cycle (tapping)
(including synchronous
tapping)
○
P922
P923
G85
Fixed cycle (boring)
○
P922
P923
G86
Fixed cycle (boring)
○
P922
P923
G87
Fixed cycle
(back boring)
○
P922
P923
G88
Fixed cycle (boring)
○
P922
P923
G89
Fixed cycle (boring)
○
P922
P923
G90
Absolute value command
○
○
○
G69
IB-1501278-D
796
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
G command
Function
A
B
C
G91
Incremental value com- ○
mand
○
○
G92
Coordinate system setting
-
P923
G94
Asynchronous feed (feed ○
per minute )
○
○
G95
Synchronous feed (feed ○
per revolution)
○
○
G96
Constant surface speed P921
control ON
P922
P923
G97
Constant surface speed P921
control OFF
-
P923
G98
Fixed cycle
(Initial level return)
○
○
○
G99
Fixed cycle
(R point level return)
○
○
○
P921
Note
(1) None of the G codes not listed above can be used.
797
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Precautions
Precautions related to arc command
If the first command after the 3-dimensional coordinate conversion command is an arc shape, and the center of the
arc did not change before and after the 3-dimensional coordinate conversion, an arc is drawn. However, an error
will occur in the following cases:
(1) For the arc in which the arc center is specified with I and J, if the center coordinate has deviated by 3-dimensional
coordinate conversion, a program error (P70 Major arc end position deviation) will occur.
G90 G28 X0 Y0 Z0 ;
F3000 G17 ;
G68 X100. Y0. Z0. I0 J0 K1 R0. ;
G02 X100. I50. ;
Y
Y
Y'
(Err.)
(a)
(E)
(X50, Y0)
(C)
X
(X100, Y0)
(a)
X
X'
(X'50, Y'0)
(C)
(X'100, Y'0)
No 3-dimensional coordinate conversion
(a) Arc center
(C) Current position
(E)
(X100, Y0)
In 3-dimensional coordinate conversion
(E) End point
(Err.) Program error
(2) For the arc in which the arc radius is specified with R, if the center coordinate has deviated by 3-dimensional
coordinate conversion, a program error (P71 Arc center calculation disabled) will occur.
G90 G28 X0 Y0 Z0 ;
F3000 G17 ;
G68 X100. Y0. Z0. I0 J0 K1 R0. ;
G02 X100. R50. ;
Y
Y
Y'
(r) = 50
(r)
X
(C)
50
(E) (X100, Y0)
(C)
(X100, Y0)
(E)
(X'100, Y'0)
(Err.)
No 3-dimensional coordinate conversion
(a) Arc center
IB-1501278-D
In 3-dimensional coordinate conversion
(C) Current position (E) End point
798
(r) Radius
(Err.) Program error
X
X'
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.9 Coordinate Rotation by Program ; G68/G69
Function and purpose
When machining a complicated shape located in a rotated position in respect to the coordinate system, this function
enables to machine the rotated shape with the program for the shape before rotation on the local coordinate system
and with the rotation angle designated by the program coordinate rotation command.
Command format
Coordinate rotation ON
G68 X__ Y__ R__;
X,Y
Rotation center coordinates
Two axes (X, Y or Z) corresponding to the selected plane are designated with absolute
positions.
R
Rotation angle
The counterclockwise direction is +.
Coordinate rotation cancel
G69;
Select the command plane with G17 to G19.
Y
r1
(x1,y1)
y1
Y'
X'
x1
W
X
W'
W : Original local coordinate
W' : Rotated local coordinate system
r1 : Rotation angle
(x1, y1) Rotation center
799
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
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 "r1" depends on the G90/
G91 modal.
(2) If the rotation center coordinates (x1, y1) are omitted, the position where the G68 command was executed will
be the rotation center.
(3) The rotation takes place in the counterclockwise direction by the angle designated in rotation angle r1.
(4) The rotation angle r1 setting range is -360.000 to 360.000. If a command exceeding 360 degrees is issued, the
remainder divided by 360 degrees will be the command.
(5) Since the rotation angle "r1" is modal data, if once commanded, it will not be changed until the new angle is commanded. Thus, the command of rotation angle "r1" can be omitted.
If the rotation angle is omitted in spite that G68 is commanded for the first time, "r1" will be regarded as “0”.
(6) The program coordinate rotation is a function used on the local coordinate system. The relationship of the rotated
coordinate system, workpiece coordinate system and basic machine coordinate system is shown below.
(R) Rotation angle
(L)
(R)
(L)
(x1,y1)=(0,0)
Local coordinate system
(W) Workpiece coordinate system
(M) Basic machine coordinate system
(W)
(M)
(7) The coordinate rotation command during coordinate rotation is processed as the changes of center coordinates
and rotation angle.
(8) If M02 or M30 is commanded or the reset signal is input during the coordinate rotation mode, the coordinate rotation mode will be canceled.
(9) G68 is displayed on the modal information screen during the coordinate rotation mode. When the mode is canceled, the display changes to G69. (The modal value is not displayed for the rotation angle command R.)
(10) The program coordinate rotation function is valid only in the automatic operation mode.
IB-1501278-D
800
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Program example
Program coordinate rotation by absolute command
N01 G28 X0. Y0.;
X'
N02 G54 G52 X200. Y100. ; Local coordinate designation
Y'
N03 T10 ;
N04 G68 X-100. Y0. R60. ; Coordinate rotation ON
Y
N05 M98 H101 ;
Subprogram execution
N06 G69 ;
Coordinate rotation cancel
N07 G54 G52 X0 Y0 ;
Local coordinate system
cancel
N08 M02 ;
End
Subprogram
(Shape programmed with original coordinate system)
60
(a)
100.
(W)
- 100.
N104
N103
X
- 100.
100.
200.
N101
N102
(b)
N101 G00 X-100. Y-40.;
N102 G83 X-150. R-20. Q-10.F100 ;
N103 G00 Y40. ;
N104 G83 X-150. R-20. Q-10.F100 ;
N105 M99
- 100.
(a) Actual machining shape
(b) Program coordinate
(W) Local coordinates (before rotation)
801
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Operation when only one axis was commanded by the first movement command
Command basically two axes in the rotation plane by an absolute value immediately after the coordinate rotation
command.
When commanding one axis only, the following two kinds of operations can be selected by the parameter "#19003
PRG coord rot type".
(1) When "#19003 PRG coord rot type" is "1", the operation is the same as when "N04" is "X50.Y0.". The end point
is calculated on the assumption that the start point rotates along with the coordinates' rotation.
N01 G17 G28 X0. Y0.;
N03 G68 X40. Y0. R90.;
X’
Y
N02 G90 G92 G53 X0. Y0.;
Coordinate rotation ON
N04 X50.;
Y=10 N05
(X’,Y’)=(50,50)
X= -10
(X’,Y’)=(40,40)
N05 Y50.;
N06 G69 ;
Coordinate rotation cancel
N07 M02 ;
End
X’ =50
N04 (a)
X
(W)
(b)
(W1)
Y’
Y’ =50
(S)
(X’ ,Y’)=(0,0)
(S) Start point
Machine movement path
(a) Center of rotation
(b) The start point is rotated virtually
(W) Local coordinate system before rotation
(W1) Local coordinate system after rotation
(2) When "#19003 PRG coord rot type" is "0", only axis commanded in N04 (X' Axis) is moved. The start point does
not rotate along with the coordinate rotation; therefore the end position is calculated based on the current position on the local coordinate system before rotation.
N01 G17 G28 X0. Y0.;
Y
N02 G90 G92 G53 X0. Y0.;
N03 G68 X40. Y0. R90.;
Coordinate rotation ON
(X’,Y’)=(50,50)
N05
N04 X50.;
X= -10
N05 Y50.;
N06 G69 ;
N07 M02 ;
Coordinate rotation cancel
End
X'
Y=10
N04
(W)
X' =50
(a)
X
(S)
(X̉,Ỷ)=(40,40)
(W1)
Y'
Y'=50
(X',Y')=(0,0)
(S) Start point
Machine movement path
IB-1501278-D
(a) Center of rotation
(b) The start point is rotated virtually
(W) Local coordinate system before rotation
(W1) Local coordinate system after rotation
802
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Local coordinate designation during program coordinate rotation
(1) When "#19003 PRG coord rot type" is "0", the position commanded on the rotated coordinate system is set as
the local coordinate zero point.
(2) When "#19003 PRG coord rot type" is "1", the position commanded on the coordinate system before it is rotated,
is set as the local coordinate zero point and the local coordinate will be rotated.
N01 G17 G28 X0. Y0.;
N02 G90 G92 G53 X0. Y0.;
N03 G68 X20. Y0. R90.;
Coordinate rotation ON
N04 G52 X10. Y10.;
Local coordinate setting
N05 X20.;
N06 Y10.;
N07 G69 ;
Coordinate rotation cancel
W: Workpiece coordinate system
N08 M02 ;
End
L : Local coordinate system
(1) Operation of #19003 = 0
(2) Operation of #19003 = 1
N03
X'
Y
Y,Y'
X
X=20
(Workpiece
coordinate
system is rotated
virtually.)
Y'
(Rotation center)
(Workpiece coordinate
systm after rotation)
W
Y=-20
X,X'
W,W '
W'
Workpiece coordinate system is rotated virtually. Workpiece coordinate system is not rotated.
N04
Y
Y,Y'
X' X"
X=30
Y"
W
Y=-10
Y'
(X,Y)=(0,0)
X"
(Local
coordinate
designation)
X
LX=30
W,W'
L
X,X'
Y=
-10
Y"
(X,Y)=(10,10)
(Rotation center)
(Local coordinate
designation)
The workpiece coordinate zero point after rotation Designate the local coordinate system on the
is considered as (X,Y)=(0,0). The position after workpiece coordinate system.
shifted by 10 each in the X and Y directions is set
as the local coordinate zero point.
The direction of the shift is not the direction of X'
and Y'.
N05
(X",Y")=(20,30)
Start
point:(X",Y")=(10,30)
Y
Y=10
Y
Y=10
(X",Y")=(10,30)
X"
Y"
L
(X",Y")=(20,-10)
X
X=40
W
X
W
(Rotation center)
X"
Y"
L
(The start point is
rotated virtually.)
Start point:
(X",Y")=(-10,-10)
The commanded axis moves on the rotation coor- The commanded axis moves on the rotation coordinate system.
dinate system.
Axis without movement command does not move. Axis without movement command moves to the
position on rotation coordinate system.
N06
(X",Y")=(20,30)
Y Y=10
X"
(X",Y")=(20,10)
Y
X=30
X=20
X
W
Y"
(X" ,Y" )=(20,10)
X"
Y=10
(X" ,Y" )=(20, - 10)
X=40
X
W
L
Y"
803
L
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Coordinate system designation during program coordinate rotation
When the coordinate system setting (G92) is executed during program coordinate rotation (G68), this program operates same as "Local coordinate designation during program coordinate rotation".
(1) When "#19003 PRG coord rot type" is "0", the position is preset to the current position commanded on the rotated
coordinate system.
(Ex.) Designation on the coordinate system (X'-Y') after rotation
Y
Y
Y'
Y'
G68 X0 Y0 R30.
G00 X10. Y10.
G92 X0. Y0.
X'
(a)
X'
(b)
10.
10.
(c)
10.
X
G54(0, 0)
(a) Position after rotation
10.
X
G54(0, 0)
(b) Commanded position
(c) G92 shift amount
(2) When "#19003 PRG coord rot type" is "1", the position is preset to the current position commanded on the coordinate system before rotation. The coordinate system is rotated after the position is commanded.
(Ex.) Setting on the coordinate system (X-Y) after rotation
Y
Y
Y'
Y'
G68 X0 Y0 R30.
G00 X10. Y10.
G92 X0. Y0.
X'
(a)
X'
(b)
10.
10.
(c)
10.
G54(0, 0)
(a) Position after rotation
X
G54(0, 0)
(b) Commanded position
10.
X
(c) G92 shift amount
<Note>
When "#19003 PRG coord rot type" is "1"and the coordinate system setting (G92) is executed during coordinate rotation mode, the rotation center of the program coordinate rotation is not shifted. (It stays at
the same position in respect to the basic machine coordinate system.)
IB-1501278-D
804
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Relationship 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 polar coordinate interpolation is commanded during the coordinate rotation
mode.
(3) Program error (P481) will occur if coordinate rotation is commanded during the polar coordinate interpolation
mode.
(4) Program error (P485) will occur if cylindrical interpolation is commanded during the coordinate rotation mode.
(5) Program error (P481) will occur if coordinate rotation is commanded during the cylindrical interpolation mode.
(6) Program error (P34) will occur if the workpiece coordinate system preset (G92.1) is commanded during the coordinate rotation mode.
(7) Program error (P34) will occur if high-accuracy control mode, high-speed machining mode, high-speed high-accuracy I or II is commanded during the coordinate rotation mode.
(8) Program coordinate rotation and figure rotation cannot be carried out simultaneously. If the coordinate rotation
is commanded during the figure rotation and vice versa, a program error (P252) will occur.
(9) If the tool position offset is commanded during the coordinate rotation mode, a program error (P141) will occur.
Precautions
(1) Always command an absolute value for the movement command immediately after G68 and G69.
(2) If the manual absolute is ON and interrupted the coordinate rotary axis, then, do not use automatic operation for
the following absolute value command.
(3) The intermediate point during reference position return is the position after the coordinates are rotated.
(4) If the workpiece coordinate system offset amount is changed during the coordinate rotation mode, the rotation
center for the program coordinate rotation will be shifted. (The center will follow the coordinate system.)
(5) If the workpiece coordinates are changed during the coordinate rotation mode (ex. from G54 to G55), the rotation
center of the program coordinate rotation will be the position on the coordinate system which the command was
issued. (It stays at the same position in respect to the basic machine coordinate system.)
(6) If coordinate rotation is executed to the G00 command for only one axis, two axes will move. If G00 non-interpolation (parameter "#1086 G0Intp" = 1) is set, each axis will move independently at the respective rapid traverse
rates. If the axis must be moved linearly (interpolated) from the start point to the end point (such as during the
hole machining cycle), always turn G00 non-interpolation OFF (parameter "#1086 G0Intp" = 0). The feedrate in
this case is the composite speed of each axis' rapid traverse rate, so the movement speed will be faster than
when moving only one axis (before coordinate rotation).
(7) If the coordinate rotation specifications are not provided, a program error (P260) will occur when coordinate rotation is commanded.
(8) The compensation during the coordinate rotation mode is carried out to the local coordinate system after coordinate rotation. The compensation direction is the coordinate system before rotation.
(9) Mirror image during the coordinate rotation mode is applied to the local coordinate system after coordinate rotation.
(10) On the display, the positions after rotation is always displayed on the local coordinate system before rotation.
(11) When the coordinate value variables are read, the positions are all on the coordinate system before rotation.
(12) The coordinates can also be rotated for the parallel axis. Select the plane that contains the parallel axis before
issuing the G68 command. The plane cannot be selected in the same block as the G68 command.
(13) The coordinates can be rotated for the rotary axis. The angle will be interpreted as the length when rotating.
805
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.10 Coordinate Rotation Input by Parameter ; G10 I_ J_/K_
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 by rotating the machining program coordinates according
to the workpiece alignment line deviation. The coordinate rotation amount is set with the parameters. The parameters can also be set with the G10 command.
Ym
G57
G56
(a)
W4'
ǰ(b)
W3'
W2
W1
G55
W2'
G54
M
W1'
Xm
(a) Center of rotation
(b) Rotation angle
To enable this function, the following conditions must be satisfied:
(1) The parameter "#8116 CoordRotPara invd" is set to "0".
(2) The parameter "#8627 Coord rot angle" is set. Alternatively, "#8625 Coord rot vctr(H)" and "#8626 Coord rot vctr(V)" are set.
IB-1501278-D
806
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Command format
G10 I__ J__ ;
G10 K__ ;
I
Horizontal vector. Command a value corresponding to the parameter "#8625 Coord rot vctr(H)".
Command range: -99999.999 to 99999.999
The value of "#8627 Coord rot angle" is automatically calculated when commanding vector
contents.
J
Vertical vector. Command a value corresponding to the parameter "#8626 Coord rot vctr(V)".
Command range: -99999.999 to 99999.999
The value of "#8627 Coord rot angle" is automatically calculated when commanding vector
contents.
K
Rotation angle Command a value corresponding to the parameter "#8627 Coord rot angle".
Command range: -360.000 to 360.000
"#8625 Coord rot vctr(H)" and "#8626 Coord rot vctr(V)" are set to "0" when commanding the
coordinate rotation angle.
Parameters specified in the parameter setting screen can be changed from the machining program.
Refer to the Instruction Manual for settings and contents of the parameters.
807
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Detailed description
(1) As for the coordinate rotation center position, designate the position on the machine coordinate system.
(2) All workpiece coordinate systems from G54 to G59, G54.1 rotate with the rotation command.
While the machine coordinate system does not rotate, it can be understood that there is a hypothetical machine
coordinate system in the coordinate system after rotation.
(3) When parameter settings are configured, their setting values become valid at the following timings.
Automatic operation: The setting values become valid from the next block after parameter settings have
been configured.
Manual operation: The setting values become valid if the PLC signal (manual feed coordinate switching for
coordinate rotation by parameter) is set to ON after parameter settings have been configured.
Concept of coordinate system
(1) Set the parameters "#8623 Coord rot centr(H)" and "#8624 Coord rot centr(V)" at the position of the machine
coordinate system.
(2) The workpiece coordinate system set on the orthogonal coordinate system rotates around the rotation center.
(3) The machine coordinate system does not rotate.
G54
G55
Workpiece coordinate
zero point
G92 (Coordinate system shift)
#8624
Rotation center
EXT (External workpiece coordinate offset)
#8623
Basic machine coordinate zero point
Workpiece coordinate system setting
Workpiece coordinate system after coordinate rotation
by parameter
Coordinate rotation start
The coordinate rotation starts when the following parameters are changed. (When the same value is reset to the
parameter, it is not considered as change)
When the parameter "#8116 CoordRotPara invd" is "1" or the parameter "#8627 coordinate rotation angle" is "0",
coordinate rotation will not start.
#8621 Coord rot plane(H)
#8622 Coord rot plane(V)
#8623 Coord rot centr(H)
#8624 Coord rot centr(V)
#8625 Coord rot vctr(H)
#8626 Coord rot vctr(V)
#8627 Coord rot angle
#8116 CoordRotPara invd (*1)
(*1) The parameter "#8116 CoordRotPara invd" is common to all part systems. Therefore, before designating this
parameter, set "0" to the parameter "#8627 Coord rot angle" in part systems in which "coordinate rotation by
parameter" is not used.
IB-1501278-D
808
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Coordinate rotation stop (cancel)
When coordinate rotation is enabled, setting the parameter "#8116 CoordRotPara invd" to "1" or "#8627 Coord rot
angle" to "0", and then issuing the following movement command cancels the parameter coordinate rotation.
Coordinate rotation temporary cancel
The coordinate rotation by parameter is temporarily canceled when in (1) or (2) as follows.
(1) Reference position return command (G28, G30)
If reference position return is performed on any of the axes in the rotated coordinate system (horizontal axis or
vertical axis), both of the two axes will temporarily cancel the coordinate rotation.
However moving to the intermediate point will not be temporarily canceled, but it will keep operating.
(2) Basic machine coordinate system selection (G53)
Only the commanded axis of basic machine coordinate system selection (G53) will be temporarily cancel the
coordinate rotation.
In items (1) and (2) above, when the coordinate rotation by parameter is canceled temporarily, the counter display
follows the setting of the parameter "#11086 PRM coordinate rotation counter".
809
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Operation example
First movement command after coordinate rotation start/end/temporary cancel
When issuing a movement command for the first time after coordinate rotation has been started, ended, reset, or
returned from temporary cancel, issue the command in G00 or G01 mode by designating the two axes configuring
the rotation plane using absolute values.
[Parameters]
[Machining program]
#8621 Coord rot plane(H) = X
N01 G17 G28 X0. Y0.;
#8622 Coord rot plane(V) = Y
N02 G54 G90 X0. Y0.;
#8623 Coord rot centr(H) = 30.0
N03 G10 K90.;
(Coordinate rotation start)
#8624 Coord rot centr(V) = 60.0
N04 G54 G90 G00 X20. Y10.;(Absolute value com#8627 Coord rot angle
= 0.0
mand to two axes)
[G54 workpiece coordinate system offset]
:
X = 10.0
Y = 10.0
<0
I
D
;:
<:
;0<0 ;0<0 :
;:
G
:
<:
<:
H
F
;:
<:
;:
0
E
;:<: ;0
(W): Workpiece coordinate system before rotation
(W1): Workpiece coordinate system after rotation
(a): Rotation center
(b): Actual axis position
(c): Workpiece coordinate system zero point after coordinate rotation
(d): N04 Commanded path
(e): N04 Actual movement path
(f): N04 End point
Note that, if the command that is issued for the first time after coordinate rotation has been started, ended, or returned from temporary cancel is any of the following, the operation differs depending on the setting of the parameter
"#19008 PRM coord rot type".
(1) Command to an axis configuring the rotation plane by the absolute value
(2) Command by incremental value
(3) Circular interpolation command
IB-1501278-D
810
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Operation when an axis configuring the rotation plane is commanded by the absolute value
The operation can be selected from the following 2 types by setting of the parameter "#19008 PRM coord rot type".
(1) When the parameter "#19008 PRM coord rot type" is "0".
The end point is calculated by virtually rotating the start point along with the coordinate rotation.
For that reason, the operation is the same as when "N04" is "G00 X20. Y0." in the following example.
[Parameters]
[Machining program]
#8621 Coord rot plane(H) = X
N01 G17 G28 X0. Y0.;
#8622 Coord rot plane(V) = Y
N02 G54 G90 X0. Y0.;
#8623 Coord rot centr(H) = 30.0
N03 G10 K90.;
(Coordinate rotation start)
#8624 Coord rot centr(V) = 60.0
N04 G54 G90 G00 X20.; (Absolute value command
#8627 Coord rot angle
= 0.0
to an axis)
[G54 workpiece coordinate system offset]
:
X = 10.0
Y = 10.0
<0
I
D
;:
<:
;0<0 ;0<0 :
;:
:
G
<:
<:
H
F
;:
<:
;:
0
E
;:<: ;0
(W): Workpiece coordinate system before rotation
(W1): Workpiece coordinate system after rotation
(a): Rotation center
(b): Actual axis position
(c): Start point rotated virtually along with the coordinate rotation
(d): N04 Commanded path
(e): N04 Actual movement path
(f): N04 End point
811
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(2) When the parameter "#19008 PRM coord rot type" is "1".
The start point does not rotate along with the coordinate rotation; therefore the end point position is calculated
based on the current position on the local coordinate system before rotation.
For that reason, only the axis commanded in N04 (X' axis) is moved.
[Parameters]
[Machining program]
#8621 Coord rot plane(H) = X
N01 G17 G28 X0. Y0.;
#8622 Coord rot plane(V) = Y
N02 G54 G90 X0. Y0.;
#8623 Coord rot centr(H) = 30.0
N03 G10 K90.;
(Coordinate rotation start)
#8624 Coord rot centr(V) = 60.0
N04 G54 G90 G00 X20.; (Absolute value command
#8627 Coord rot angle
= 0.0
to an axis)
[G54 workpiece coordinate system offset]
:
X = 10.0
Y = 10.0
<0
I
;:
<:
;0<0 D
;0<0 :
;:
:
<:
G
H
;:
0
E
;:<: ;0
(W): Workpiece coordinate system before rotation
(W1): Workpiece coordinate system after rotation
(a): Rotation center
(b): The actual axis position and start point position are the same
(d): N04 Commanded path
(e): N04 Actual movement path
(f): N04 End point
IB-1501278-D
812
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Operation when incremental value commands are given
The operation can be selected from the following 2 types by setting of the parameter "#19008 PRM coord rot type".
(1) When the parameter "#19008 PRM coord rot type" is "0".
The end point is calculated by virtually rotating the start point along with the coordinate rotation.
For that reason, the commanded path and actual movement path differs in N04.
[Parameters]
[Machining program]
#8621 Coord rot plane(H) = X
N01 G17 G28 X0. Y0.;
#8622 Coord rot plane(V) = Y
N02 G54 G90 X0. Y0.;
#8623 Coord rot centr(H) = 30.0
N03 G10 K90.;
(Coordinate rotation start)
#8624 Coord rot centr(V) = 60.0
N04 G54 G91 G00 X20. Y10.;(Incremental value
#8627 Coord rot angle
= 0.0
command to two axes)
[G54 workpiece coordinate system offset]
:
X = 10.0
Y = 10.0
<0
I
D
;:
<:
;0<0 ;0<0 :
;:
:
G
<:
<:
H
F
;:
<:
;:
0
E
;:<: ;0
(W): Workpiece coordinate system before rotation
(W1): Workpiece coordinate system after rotation
(a): Rotation center
(b): Actual axis position
(c): Start point rotated virtually along with the coordinate rotation
(d): N04 Commanded path
(e): N04 Actual movement path
(f): N04 End point
813
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(2) When the parameter "#19008 PRM coord rot type" is "1".
The start point does not rotate along with the coordinate rotation; therefore the end point position is calculated
based on the current position on the local coordinate system before rotation.
For that reason, the commanded path and actual movement path are the same in N04.
[Parameters]
[Machining program]
#8621 Coord rot plane(H) = X
N01 G17 G28 X0. Y0.;
#8622 Coord rot plane(V) = Y
N02 G54 G90 X0. Y0.;
#8623 Coord rot centr(H) = 30.0
N03 G10 K90.;
(Coordinate rotation start)
#8624 Coord rot centr(V) = 60.0
N04 G54 G91 G00 X20. Y10.;(Incremental value
#8627 Coord rot angle
= 0.0
command to two axes)
[G54 workpiece coordinate system offset]
:
X = 10.0
Y = 10.0
I
<0 ;:
<:
D
;0<0 ;0<0 :
;:
:
<:
<:
G
H
;:
0
E
;:<: ;0
(W): Workpiece coordinate system before rotation
(W1): Workpiece coordinate system after rotation
(a): Rotation center
(b): The actual axis position and start point position are the same
(d): N04 Commanded path
(e): N04 Actual movement path
(f): N04 End point
IB-1501278-D
814
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Operation when circular interpolation is commanded
The operation can be selected from the following 2 types by setting of the parameter "#19008 PRM coord rot type".
(1) When the parameter "#19008 PRM coord rot type" is "0".
The end point of an arc is calculated from the position to which the start point is virtually rotated along with the
coordinate rotation.
In this case, the start point of an arc is not rotating but the end point of an arc is rotating, so it may cause "P70:
Arc end point deviation large" due to the difference in radius between the start and end points.
[Parameters]
[Machining program]
#1084 Arc error = 0.1
N01 G17 G28 X0. Y0.;
#8621 Coord rot plane(H) = X
N02 G54 G90 X0. Y0.;
#8622 Coord rot plane(V) = Y
N03 G10 K90.;
(Coordinate rotation
#8623 Coord rot centr(H) = 30.0
start)
#8624 Coord rot centr(V) = 60.0
N04 G54 G91 G03 X20. R10. F500;(Circular interpo#8627 Coord rot angle
= 0.0
lation command)
[G54 workpiece coordinate system offset]
:
X = 10.0
Y = 10.0
<0
D
I
;0<0 ;:
<:
:
;0<0 ;:
K
G
: <:
<:
J
;:
0
F
;:
<:
E
;:<: ;0
(W): Workpiece coordinate system before rotation
(W1): Workpiece coordinate system after rotation
(a): Rotation center
(b): Actual axis position
(c): Start point rotated virtually along with the coordinate rotation
(d): N04 Commanded path
(f): End point calculated from the virtually rotated start point
(g): Start point radius
(h): End point radius
As the difference in radius between the start and end points is bigger than "#1084 RadErr", it causes program error (P70).
815
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(2) When the parameter "#19008 PRM coord rot type" is "1".
The start point and end point of an arc are calculated from the current position on the workpiece coordinate system before the coordinate rotation and the circular interpolation is performed from the current position to the end
point.
[Parameters]
[Machining program]
#1084 Arc error = 0.1
N01 G17 G28 X0. Y0.;
#8621 Coord rot plane(H) = X
N02 G54 G90 X0. Y0.;
#8622 Coord rot plane(V) = Y
N03 G10 K90.;
(Coordinate rotation
#8623 Coord rot centr(H) = 30.0
start)
#8624 Coord rot centr(V) = 60.0
N04 G54 G91 G03 X20. R10. F500;(Circular interpo#8627 Coord rot angle
= 0.0
lation command)
[G54 workpiece coordinate system offset]
:
X = 10.0
Y = 10.0
<0
D
;0<0 :
;:
: I
;:
<:
;0<0 <:
<:
G
H
;:
0
E
;:<: ;0
(W): Workpiece coordinate system before rotation
(W1): Workpiece coordinate system after rotation
(a): Rotation center
(b): The actual axis position and start point position are the same
(d): N04 Commanded path
(e): N04 Actual movement path
(f): N04 End point
IB-1501278-D
816
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
First movement command after coordinate rotation cancel
When rotation angle "0" is commanded during coordinate rotation, it will be canceled by next movement command
regardless of G90 and G91.
The calculation of the end point will be different by setting of the parameter "#19008 PRM coord rot type".
(1) When the parameter "#19008 PRM coord rot type" is "0".
The end point is calculated on the assumption that the start point rotates along with the coordinate rotation cancel.
Program the first movement command after coordinate rotation cancel either G00 or G01 mode.
[Parameters]
[Machining program]
#8621 Coord rot plane(H) = X
N01 G54 G90 X50.Y50.;
#8622 Coord rot plane(V) = Y
N02 G54 G90 X0. Y0.;
#8623 Coord rot centr(H) = 30.0
N03 G10 K0.;
(Coordinate rotation cancel)
#8624 Coord rot centr(V) = 60.0
N04 G91 G00 X20. Y10.;(Incremental value com#8627 Coord rot angle
= 90.0
mand to two axes)
[G54 workpiece coordinate system offset]
:
X = 10.0
Y = 10.0
<0
I
D
;:<: ;0<0 ;0<0 :
;:
:
<:
<:
H
G
;:
0
F
;:<: E
;:
<:
;0<0 ;0
(W): Workpiece coordinate system before rotation
(W1): Workpiece coordinate system after rotation
(a): Rotation center
(b): Actual axis position
(c): Start point rotated virtually along with the coordinate rotation cancel
(d): N04 Commanded path
(e): N04 Actual movement path
(f): N04 End point
817
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(2) When the parameter "#19008 PRM coord rot type" is "1".
The start point does not rotate along with the coordinate rotation cancel; therefore the end point position is calculated based on the current position on the local coordinate system before rotation.
[Parameters]
[Machining program]
#8621 Coord rot plane(H) = X
N01 G54 G90 X50.Y50.;
#8622 Coord rot plane(V) = Y
N02 G54 G90 X0. Y0.;
#8623 Coord rot centr(H) = 30.0
N03 G10 K0.;
(Coordinate rotation cancel)
#8624 Coord rot centr(V) = 60.0
N04 G91 G00 X20. Y10.;(Incremental value com#8627 Coord rot angle
= 90.0
mand to two axes)
:
[G54 workpiece coordinate system offset]
X = 10.0
Y = 10.0
<0
:
D
;0<0 I
;:<: ;0<0 ;:
:
G
H
<:
<:
;:
E
; :
< :
; 0< 0 ;0
0
(W): Workpiece coordinate system before rotation
(W1): Workpiece coordinate system after rotation
(a): Rotation center
(b): The actual axis position and start point position are the same
(d): N04 Commanded path
(e): N04 Actual movement path
(f): N04 End point
First movement command after temporary coordinate rotation cancel
The operation of the first movement command issued after the program coordinate rotation is returned from temporary cancel is the same as the operation that occurs when the parameter "#19008 PRM coord rot type" is set to "0"
in "First movement command after coordinate rotation".
IB-1501278-D
818
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Presetting the workpiece coordinate and counter in the rotation coordinate system
The workpiece coordinate and counter can be preset in the same way as for the orthogonal coordinate system by
commanding G92/G92.1 in the rotation coordinate system.
Figures (1) to (3) show the operations to be performed when the machining program is executed while the parameters and workpiece coordinate system offset are set as follows:
[Parameters]
[Machining program]
#19008 PRM coord rot type = 0
(1) N01 G54 G17 G28 X Y;
(Case where the start point is virtually rotated with the coN02 G90 G00 X0. Y0.
ordinate rotation)
N03 G10 K90. ;
#8621 Coord rot plane(H) = X
N04 G00 X0. Y0.;
#8622 Coord rot plane(V) = Y
N05 G00 X10. Y10.;
#8623 Coord rot centr(H) = 20.0
(2) N06 G92 X0. Y0.;
#8624 Coord rot centr(V) = 40.0
N07 G00 X10. Y10.;
#8627 Coord rot angle = 0.0
(3) N08 G92.1 X0. Y0.;
[G54 workpiece coordinate system offset]
N09 G00 X0. Y0.;
X = 10.0
N10 G00 X-10. Y10.;
Y = 10.0
(1)
(2)
YM
N04 (E)
(XW',YW')=(10,10)
(XM,YM)=N04 (E)(40,40)
(a)
(XM,YM)=(20,40)
YM
Xw’’
Xw ’
N07 G00 X10. Y10.
N04 G00 X0. Y0.
N06 (E)
(XW'',YW'')=(10,10)
(XM,YM)=(30,50)
Xw ’
(XM,YM)=(40,40)
N05 G00 X10. Y10.
N06 G92 X0. Y0.
YW’’
YW
(XM,YM)=(50,30)
Y ’
W
YW’
(b)
N02 G00
X0. Y0.
(W)
(XM,YM)=(50,30)
N03 G10 K90.
XW
(W) (XM,YM)=(10,10)
XM
M
M
XM
(3)
Xw’’
YM
Xw’
N09 G00 X0. Y0.
(W)
(XM,YM)=(40,40)
YW’’
N08 G92.1 X0. Y0.
YW’
(XM,YM)=(50,30)
N10 G00 X-10. Y10.
N09 (E)
(XW'',YW'')=(-10,10)
(XM,YM)=(40,20)
M
(W): Workpiece coordinate zero point
(a): Rotation center
(b): Axis position before coordinate rotation
(E): End point ("N04 (E)" refers to the end point of
the N04 block.)
XM
819
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Program example
(1) When used for compensating positional deviation of pallet changer.
+
Y
G57
+
G56
+
+
G55
(a)
G54
M
X
(a) Rotation movement (15 degree)
N01 G28 X0 Y0 Z0 ;
N02 M98 P9000 ;
Pallet deviation measurement
N03 G90 G53 X0 Y0 ;
Parallel movement amount shift
N04 G92 X0 Y0 ;
Parallel movement amount definition
N05 G10 K15. ;
Rotation amount definition
N06 G90 G54 G00 X0 Y0 ;
G54 workpiece machining
N07 M98 H101 ;
N08 G90 G55 G00 X0 Y0 ;
G55 workpiece machining
N09 M98 H101 ;
N10 G90 G56 G00 X0 Y0 ;
G56 workpiece machining
N11 M98 H101 ;
N12 G90 G57 G00 X0 Y0 ;
G57 workpiece machining
N13 M98 H101 ;
N14 G27 X0 Y0 Z0 ;
N15 M02 ;
Machining shape program
N101 G91 G01 G42 D01 F300 ;
N102 X100 ;
N103 G03 Y50. R25. ;
N104 G01 X-100.;
N105 G03 Y-50. R25. ;
N106 G01 G40 ;
N107 M99 ;
IB-1501278-D
820
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Relationship with other functions
(1) To use any of the following functions together with the coordinate rotation by parameter, start the coordinate rotation by parameter first and command the following function later.
Tool radius compensation
Mirror image
(2) The coordinate rotation by parameter cannot be used together with the coordinate rotation by program and the
3-dimensional coordinate conversion. If they are used at the same time the coordinate position will not be calculated right.
(3) The following high-speed high-accuracy processes are temporarily canceled during coordinate rotation by parameter.
No program errors occur; however, the processing capacity is the same as when the high-speed high-accuracy
processes are set off.
High-speed machining mode I / high-speed machining mode II
High-speed high-accuracy control I / High-speed high-accuracy control II / High-speed high-accuracy control III
(4) If the figure rotation is commanded during the coordinate rotation by parameter, a program error (P252) will occur.
(5) If the inclined surface machining command (G68.2/G68.3) is commanded during the coordinate rotation by parameter, a program error (P952) will occur.
(6) The following functions can be used together with the coordinate rotation by parameter.
Classification
Control axes
Function
Number of basic control axes (NC axes)
Memory mode
Input command
Inch/Metric changeover
Positioning/Interpolation
Positioning
Linear interpolation
Circular interpolation (Center/Radius designation)
Feed
Manual rapid traverse
Jog feed
Incremental feed
Handle feed
Manual feedrate B
Manual speed clamp
Dwell (Time-based designation)
Tool compensation
Tool length offset
Tool position offset
Tool radius compensation
Tool radius compensation diameter designation
Coordinate system
Coordinate system setting
Workpiece coordinate system selection
External workpiece coordinate offset
Workpiece coordinate system preset (G92.1)
Plane selection
Operation support functions
Single block
Graphic trace
Manual interruption
Automatic operation handle interruption
Manual absolute switch
Program support functions
Subprogram control
High-accuracy control (G61.1/G08)
Multi-part system simultaneous high-accuracy control
Machine support functions
Custom API library
821
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Precautions
(1) If rotation angle zero is commanded while carrying out coordinate rotation, it will be canceled at the next movement command regardless of the G90 or G91.
(2) Command the first movement after this command with the G00 or G01 mode. If an arc command is issued, the
arc start point will not be rotated. However, only the arc end point will rotate. This will cause the start point radius
and end point radius to differ, and the program error (P70) will occur.
(3) When data has been input using the data input/output function, it is recognized that the parameter "#8627 Coord
rot angle" has been input, and automatic calculation from the values of "#8625 Coord rot vctr(H)" and "#8626
Coord rot vctr(V)" is not carried out.
(4) Do not use this command with G54 to G59 and G90, G91. If used, the command will not be reflected correctly.
(5) If both vertical / horizontal vectors (I,J) and rotation angle are commanded, the rotation angle will be given the
priority.
IB-1501278-D
822
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.11 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.
Command format
Scaling ON (set the common scaling factor to the three basic axes)
G51 X__ Y__ Z__ P__ ;
X,Y,Z
Scaling center coordinates
P
Scaling factor
Y
y1
sc
p1
s1
s3
s2
p2
p3
x1
X
sc : Scaling center
p1,p2,p3: Program shape
s1,s2,s3: Shape after scaling
Scaling ON (When setting the scaling factor to each of the three basic axes)
G51 X__ Y__ Z__ I__ J__ K__ ;
X,Y,Z
Scaling center coordinates
I
Scaling factor of basic 1st axis
J
Scaling factor of basic 2nd axis
K
Scaling factor of basic 3rd axis
Scaling cancel
G50 ;
823
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Detailed description
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.
(1) Scaling center
- Specify the scaling center in accordance with the then absolute/incremental mode (G90/G91).
- The scaling center must be specified also when the current position is defined as a center.
- As described above, the axis valid for scaling is only the axis whose center has been specified.
(2) Scaling factor
- Use the address P or I, J, K to specify the scaling factor.
- Minimum command unit : 0.000001
- Command range: Both -99999999 to 99999999 (-99.999999 to 99.999999 times) and -99.999999 to 99.999999
is valid, but the decimal point command is valid only after the G51 command.
- When the factor is not specified in the same block as G51, the factor set with the parameter "#8072 SCALING
P" is used.
- When the address P and the address I, J, K are commanded in a same block, a factor specified by the address
I, J, K is applied for the basic three axes. And a factor specified by the address P is applied for other axes.
- If changed during the scaling mode, the value of this parameter will not become valid. Scaling is performed with
the setting value that was used when G51 was commanded.
- When the factor is not specified in either the program nor parameter, it is calculated as 1.
(3) A program error will occur in the following cases.
- Scaling was commanded though there was no scaling specification.(P350)
- The upper limit of the factor command range was exceeded in the same block as G51.(P35)
(When using the machining parameter scaling factor, the factor is calculated as 1, when -0.000001 < factor <
0.000001, or the factor is more than 99.999999 or less than -99.999999.)
Scaling cancel
When G50 is commanded, scaling is canceled.
IB-1501278-D
824
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Program example
(Example 1)
Scaling center
Y
-200.
-150.
-100.
N09
-50.
X
-50.
N11
N03
-100.
N08
N06
D01=25.000
N07
-150.
Program path after 1/2 scaling
Tool path after 1/2 scaling
Program path when scaling is not applied
Tool path when scaling is not applied
<Program>
N01 G92 X0 Y0 Z0 ;
N02 G90 G51 X-100. Y-100. P0.5;
N03 G00 G43 Z-200. H02;
N04 G41
X-50. Y-50. D01;
N05 G01
Z-250. F1000;
N06
Y-150. F200;
N07
X-150.;
N08 G02
Y-50. J50.;
N09 G01
X-50.;
N10 G00 G49 Z0;
N11 G40 G50 X0 Y0;
N12 M02;
825
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Relationship 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, G30 or reference position return command is issued during scaling, scaling is canceled at the
intermediate point and the axis returns to the reference position.
When the midpoint is to be ignored, the axis returns to the reference point directly.
When G29 is commanded during scaling, scaling is applied to the movement after the midpoint.
(3) G60 (unidirectional positioning) command
If the G60 (unidirectional positioning) command is given during scaling, scaling is applied to the final positioning
point and is not applied to the creep amount.
Namely, the creep amount is uniform regardless of scaling.
(4) Workpiece coordinate system switching
When the workpiece coordinate system is switched during scaling, the scaling center is shifted by the difference
between the offset amounts of the new and old workpiece coordinate systems.
(5) During figure rotation
When figure rotation is commanded during scaling, scaling is applied to the center of the figure rotation and the
rotation radius.
(6) Scaling command in figure rotation subprogram
By commanding the scaling in the subprogram of the figure rotation, scaling can be applied only to the shape
designated by the subprogram, not to the rotation radius of the figure rotation.
(7) During coordinate rotation
When scaling is commanded during coordinate rotation, the scaling center rotates.
Scaling is executed at that rotated scaling center.
(8) G51 command
When the G51 command is issued during the scaling mode, the axis whose center was newly specified is also
made valid for scaling.
Also, the factor under the latest G51 command is made valid.
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.
(3) For X, Y and Z, scaling is valid for only the specified axes and is not applied to unspecified axes.
(4) When an arc is commanded and scaling is valid for one of the two axes configuring the arc plane, a program
error (P70) will occur.
(5) When M02 or M30 is commanded, or when NC reset is carried out during the scaling mode, the mode switches
to a cancel mode.
(6) When the coordinate system is shifted (G92, G52 command) during scaling, the scaling center is also shifted by
the difference amount.
(7) If manual interruption is made during scaling, manual ABS selection is ignored for the movement followed by an
incremental value command and operation performed is the same as in manual ABS OFF.
IB-1501278-D
826
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.12 Reference Position (Zero Point) Return ; G28,G29
Function and purpose
After the commanded axes have been positioned by G00, they are returned respectively at rapid traverse to the first
reference position when G28 is commanded. By commanding G29, the axes are first positioned independently at
high speed to the G28 or G30 intermediate point and then positioned by G00 to the commanded position.
(R2)
(0,0,0,0)
(R1)
(x 3 ,y 3 ,z 3 ,
3
)
G30P2
G28
G28
G29
(x 1 ,y 1 ,z 1 ,
(S)
1
)
(CP)
G30
G30P3
(x 2 ,y 2 ,z 2 ,
2
G30P4
)
G29
(R3)
(R4)
(R1) 1st reference position
(R2) 2nd reference position
(R3) 3rd reference position
(R4) 4th reference position
(S) Start point
(CP) Intermediate point
Command format
G28 Xx1 Yy1 Zz1 αα1; ... Automatic reference position return
X, Y, Z, α
Coordinate value of the intermediate point (α is an additional axis)
G29 Xx2 Yy2 Zz2 αα2; ... Start point return
X, Y, Z, α
Coordinate value of the end point (α is an additional axis)
827
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Detailed description
(1)The G28 command is equivalent to the following:
G00 Xx1 Yy1 Zz1 α α1;
G00 Xx3 Yy3 Zz3 α α3;
where Xx3 Yy3 Zz3 α3 are the coordinate values of the reference position that are set in parameters "#2037
G53ofs" for the distance from the basic machine coordinate system zero point as specified by the MTB.
(2)After the power has been switched on, the axes that have not been subject to manual reference position return
are returned by the dog type of return just as with the manual type. In this case, the return direction is regarded
as the command sign direction. If the return type is straight-type return, the return direction will not be checked.
For the second and subsequence returns, the return is made at high speed to the reference (zero) position that
was stored at the first time and the direction is not checked.
(3)When reference position return is completed, the zero point arrival output signal is output and also #1 appears at
the axis name line on the setting and display unit screen.
(4)The G29 command is equivalent to the following:
G00 Xx1 Yy1 Zz1 α α1;
G00 Xx2 Yy2 Zz2 α α2;
Rapid traverse (non-interpolation type) applies independently to each axis for the positioning from the reference
position to the intermediate point.
In this case, x1 y1 z1 and α1 are the coordinate value of the G28 or G30 intermediate point.
(5)Program error (P430) occurs when G29 is executed without executing automatic reference position (zero point)
return (G28) after the power has been turned ON.
(6)When the Z axis is canceled, the movement of the Z axis to the intermediate point will be ignored, and only the
position display for the following positioning will be executed. (The machine itself will not move.)
(7)The intermediate point coordinates (x1, y1, z1, α1) of the positioning point are assigned by the position command
modal. (G90, G91).
(8)G29 is valid for either G28 or G30 but the commanded axes are positioned after a return has been made to the
latest intermediate point.
(9)The tool compensation will be canceled during reference position return unless it is already canceled, and the
compensation amount will be cleared.
(10)The intermediate point can be ignored by parameter "#1091 Ignore middle point" setting.
(11)Control from the intermediate point to the reference position is ignored for reference position return in the machine lock status. When the designated axis reaches as far as the intermediate point, the next block will be executed.
(12)Mirror image is valid from the start point to the intermediate point during reference position return in the mirror
image mode and the tool will move in the opposite direction to that of the command. However, mirror image is
ignored from the intermediate point to the reference position and the tool will move to the reference position.
(13)When G28/G29/G30 is commanded in single block mode, if "#1279 ext15/bit6 Enable single block stop at middle
point" is set to "1", single block stop at middle point will be performed; single block stop at middle point will not
be performed if set to "0".
(14)If the mode is switched to MDI mode or reference position return mode while in a single block stop at the intermediate point, an operation error (M01 0013) occurs.
(15)If the NC is reset while in a single block stop at middle point, the intermediate point for G29 start position return
will not be updated.
(16) If a miscellaneous function is commanded in the same block, the miscellaneous function completion waiting
point will be the end of commanded movement, instead of the intermediate point.
(17) If the PLC interrupt operation is operated while in a single block stop at the intermediate point, an operation
error (M01 0129) occurs.
IB-1501278-D
828
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Program example
(Example 1) G28 Xx1 Zz1 ;
(R1)
(F)
G0Xx3Zz3;
(R1)
(CP) (x1,z1)
G0Xx1Zz1;
(S)
1st operation after power has been turned
ON
2nd and subsequent operations
Near-point dog
(S) Return start position
(CP) Intermediate point
(R1) Reference position (#1)
(F) Rapid traverse rate
(Example 2) G29 Xx2, Zz2 ;
R
(C)
(G00)Xx1 Zz1;
(CP) (x1,z1)
(G00)Xx2 Zz2;
(x2,z2)
(C) Current position
(CP) G28, G30 Intermediate point
829
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(Example 3) G28
:
:
G30
:
:
G29
Xx1 Zz1 ;
(From point A to 1st reference position)
Xx2 Zz2 ;
(From point B to 2nd reference position)
Xx3 Zz3 ;
(From point C to point D)
(R1)
A
(CP2)
(x2,z2)
G30
G28
B
G29
(CP1)
(x1,z1)
D
(x3,z3)
(R2)
C
IB-1501278-D
(CP1) Old intermediate point
(CP2) New intermediate point
(R1) Reference position (#1)
(R2) 2nd reference position (#2)
830
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.13 2nd, 3rd, and 4th Reference Position (Zero Point) Return ; G30
Function and purpose
The tool can return to the second, third, or fourth reference position by specifying G30 P2 (P3 or P4).
(R2)
G30P2
G28
G28
G29
(x1,y1,z1, 1)
(CP)
(S)
G30
G30P3
G30P4
G29
(R3)
(R4)
(S) Start point
(CP) Intermediate point
(R2) 2nd reference position
(R3) 3rd reference position
(R4) 4th reference position
Command format
G30 P2(P3,P4)Xx1 Yy1 Zz1 αα1;
X, Y, Z, α
Coordinate value of the intermediate point (α is an additional axis)
P
Reference position No.
P2: 2nd reference position return
P3: 3rd reference position return
P4: 4th reference position return
831
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Detailed description
(1)The 2nd, 3rd, or 4th reference position return is specified by P2, P3, or P4.
A command without P or with other designation method will return the tool to the 2nd reference position.
(2) In the 2nd, 3rd, or 4th reference position return mode, as in the 1st reference position return mode, the tool returns to the 2nd, 3rd, or 4th reference position via the intermediate point specified by G30.
(3) The 2nd, 3rd, and 4th reference position coordinates refer to the positions specific to the machine, and these can
be checked with the setting and display unit.
(4) If G29 is commanded after completion of returning to the 2nd, 3rd, and 4th reference position, the intermediate
position used last is used as the intermediate position for returning by G29.
(R1)
-X
(CP) (x1,y1)
G30 Xx1 Yy1;
G29 Xx2 Yy2;
(R2)
(x2,y2)
(CP) Intermediate point
-Y
(R1) 1st reference position
(R2) 2nd reference position
(5) With reference position return on a plane during compensation, the tool moves without tool radius compensation
from the intermediate point as far as the reference position. With a subsequent G29 command, the tool move
without tool radius compensation from the reference position to the intermediate point and it moves with such
compensation until the G29 command from the intermediate point.
(R2)
-X
(CP)
(a)
(b)
G30 Xx1Yy1;
(x1,y1)
-Y
G29 Xx2Yy2;
(x2,y2)
(a) Tool nose center path
(b) Program path
(CP) Intermediate point
(R1) 1st reference position
(R2) 2nd reference position
IB-1501278-D
832
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
(6) The tool length compensation amount for the axis involved is canceled after the 2nd, 3rd and 4th reference position return.
(7) With second, third and fourth reference position returns in the machine lock status, control from the intermediate
point to the reference position will be ignored. When the designated axis reaches as far as the intermediate point,
the next block will be executed.
(8) With second, third and fourth reference position returns in the mirror image mode, mirror image will be valid from
the start point to the intermediate point and the tool will move in the opposite direction to that of the command.
However, mirror image is ignored from the intermediate point to the reference position and the tool moves to the
reference position.
(R2)
-X
(a)
-Y
G30 P2 Xx1Yy1;
(b)
(a) X-axis mirror image
(b) No mirror image
(R2) 2nd reference position
(9) If the 2nd, 3rd or 4th reference position is changed while G30 zero point return operation is in pause due to an
interlock, "M01 Operation Error" occurs.
(10) When G28/G29/G30 is commanded in single block mode, if "#1279 ext15/bit6 Enable single block stop at middle point" is set to "1", single block stop at middle point will be performed; single block stop at middle point will
not be performed if set to "0".
(11) If the mode is switched to MDI mode or reference position return mode while in a single block stop at the intermediate point, an operation error (M01 0013) occurs.
(12) If the NC is reset while in a single block stop at middle point, the intermediate point for G29 start position return
will not be updated.
(13) If a miscellaneous function is commanded in the same block, the miscellaneous function completion waiting
point will be the end of commanded movement, instead of the intermediate point.
(14) If the PLC interrupt operation is operated while in a single block stop at the intermediate point, an operation
error (M01 0129) occurs.
833
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.14 Tool Change Position Return ; G30.1 - G30.6
Function and purpose
By specifying the tool change position in a parameter "#8206 tool change" and also specifying a tool change position
return command in a machining program, the tool can be changed at the most appropriate position.
The axes that are going to return to the tool change position and the order in which the axes begin to return can be
changed by commands.
Command format
Tool change position return
G30.n ;
n = 1 to 6
Specify the axes that return to the tool change position and the order in which they return.
Detailed description
Commands and return order are given below.
Command
Return order
G30.1
Z axis -> X axis - Y axis (-> additional axis)
G30.2
Z axis -> X axis -> Y axis (-> additional axis)
G30.3
Z axis -> Y axis -> X axis (-> additional axis)
G30.4
X axis -> Y axis - Z axis (-> additional axis)
G30.5
Y axis -> X axis - Z axis (-> additional axis)
G30.6
X axis - Y axis - Z axis (-> additional axis)
<Note>
An arrow ( ->) indicates the order of axes that begin to return. A hyphen ( - ) indicates that the axes begin to
return simultaneously. (Example: "Z axis -> X axis - Y axis" indicates that the Z axis returns to the tool change
position, then the X axis and Y axis do at the same time.)
(1) Whether the tool exchange position return for the additional axis is enabled or disabled depends on the MTB
specifications (parameter "#1092 Tchg_A").
For the order for returning to the tool change position, the axes return after the standard axis completes the return
to the tool change position (refer to above table). The additional axis alone cannot return to the tool change position.
(2) If the axis address is commanded in the same block as the tool change position return command, a program
error (P33) will occur.
(3) After all necessary tool change position return is completed by a G30.n command, tool change position return
complete signal TCP (XC93) is turned ON. When an axis out of those having returned to the tool change position
by a G30.n command leaves the tool change position, the TCP signal is turned OFF. With a G30.1 command,
for example, the TCP signal is turned on when the Z axis has reached the tool change position after the X and
Y axes have reached the tool change position (in addition, after the additional axis has reached the tool change
position if additional axis tool change position return is valid). The TCP signal is then turned OFF when the X, Y,
or Z axis leaves the position. If tool change position return for added axes is on with parameter "#1092 Tchg_A",
the TCP signal is turned ON when the added axis or axes have reached the tool change position after the standard axes did. It is then turned OFF when one of the X, Y, Z, and added axes leaves the position.
IB-1501278-D
834
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
[TCP signal output timing chart] (G30.3 command with tool change position return for additional axes set ON)
Machining program
G30.1;
T02;
G00X - 100.
Arrival of X axis to tool change position
Arrival of Z axis to tool change position
Arrival of additional axis to tool
change position
Tool change position return complete signal (TCP)
(4) When a tool change position return command is issued, tool offset data such as for tool length offset and tool
radius compensation for the axis that moved is canceled.
(5) This command is executed by dividing blocks for every axis. If this command is issued during single-block operation, therefore, a block stop occurs each time one axis returns to the tool change position. To make the next
axis tool change position return, therefore, a cycle start needs to be specified.
835
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
Operation example
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.)
Y
G30.3
(TCP)
G30.1
G30.2
X
TCP : Tool change position
(1) G30.1 command: The Z axis returns to the tool change position, then the X and Y axes simultaneously do the
same thing. (If tool change position return is on for an added axis, the added axis also returns to the tool change
position after the X, Y and Z axes reach the tool change position.)
(2) G30.2 command: The Z axis returns to the tool change position, then the X axis does the same thing. After that,
the Y axis returns to the tool change position. (If tool change position return is on for an added axis, the added
axis also returns to the tool change position after the X, Y and Z axes reach the tool change position.)
(3) G30.3 command: The Z axis returns to the tool change position, then the Y axis does the same thing. After the
Y axis returns to the tool change position, the X axis returns to the tool change position. (If tool change position
return is on for an added axis, the added axis also returns to the tool change position after the X, Y and Z axes
reach the tool change position.)
(4) G30.4 command : The X axis returns to the tool change position, then the Y axis and Z axis simultaneously do
the same thing. (If tool change position return is on for an added axis, the added axis also returns to the tool
change position after the X, Y and Z axes reach the tool change position.)
(5) G30.5 command : The Y axis returns to the tool change position, then the X and Z axes return to the tool change
position simultaneously. (If tool change position return is on for an added axis, the added axis also returns to the
tool change position after the X, Y and Z axes reach the tool change position.)
(6) G30.6 command :The X, Y and Z axes return to the tool change position simultaneously. (If tool change position
return is on for an added axis, the added axis also returns to the tool change position after the X, Y and Z axes
reach the tool change position.)
IB-1501278-D
836
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
19.15 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 1st reference position, it outputs the reference position arrival signal to the machine in the same way as with the
G28 command. Therefore, when a machining program is prepared so that the tool will depart from the 1st reference
position and return to the 1st reference position, it is possible to check whether the tool has returned to the reference
position after the program has been run.
Command format
X__ Y__ Z__ P__ ; ... Check command
XYZ
Return control axis
P
Check No.
P1: 1st reference position check
P2: 2nd reference position check
P3: 3rd reference position check
P4: 4th reference position check
Detailed description
(1) If the P command has been omitted, the 1st reference position will be checked.
(2) The number of axes whose reference positions can be checked simultaneously depends on the number of axes
which can be controlled simultaneously.
Note that the display shows one axis at a time from the final axis.
(3) An alarm will occur if the reference position is not reached after the command is completed.
837
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
19 Coordinate System Setting Functions
IB-1501278-D
838
20
Protection Function
839
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
20 Protection Function
20Protection Function
20.1 Stroke Check before Travel ; G22/G23
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.
While the normal stored stroke limit stops entry before the prohibited area, this function causes a program error before movement to the block if a command exceeding the valid movement area is issued.
Command format
Stroke check before travel ON
G22 X__ Y__ Z__ I__ J__ K__ ;
Stroke check before travel cancel
G23 ;
XYZ
Coordinates of upper point (basic axis name and its coordinate position)
IJK
Coordinates of lower point (I,J,K address and its coordinate position)
Note
(1) In the following command format, the basic axes are X, Y and Z. If the basic axis name differs, issue the command address of upper position coordinates with the basic axis name.
Detailed description
(1) The inner side of the boundary commanded with the upper position coordinate and the lower position coordinate
is the prohibited area.
(2) If the command is omitted, "0" will be set for the address.
(3) The area designated with this function is different from the area designated with the stored stroke limit. However,
the area enabled by both functions will be the actual valid movement range.
Z
Y
(x, y, z)
Upper point designated coordinate
X
(i, j, k)
Lower point designated coordinate
Prohibited range
<Note>
The upper point and lower point are commanded with coordinate on the machine coordinate system.
IB-1501278-D
840
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
20 Protection Function
Precautions
(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.
(3) Stroke check will not be carried out for the axes having the same coordinates set for the upper point and the
lower point.
(4) The stroke check is carried out with the tool center coordinate values.
(5) If G23X_Y_Z_; etc., is commanded, the command will be interpreted as G23;X_Y_Z;(2 blocks) . Thus, the stroke
check before travel will be canceled, then movement will take place with the previous movement modal.
(6) During automatic reference position return, the check will not be carried out from the intermediate point to the
reference position. With G29, when moving from the start point to intermediate point, the check will not be carried
out.
(7) If there is an address that is not used in one block, a program error will occur.
(8) When the rotary-type rotary axis is set as a basic axis, the prohibited area will be converted to the range of from
0° to 360° in the same manner as the movement command.
If the setting extends over "0°", the side containing "0°" will be the check area.
(Example)
(a) G22 Z45. K315.
Stroke check area 45. <= Z <= 315.
(b) G22 Z-115. K-45.
Stroke check area 225. <= Z <= 315.
(c) G22 Z45. K-45.
Stroke check area 0. <= Z <=45., 315. <= Z <= 360.
(a)
(C)
(b)
45
45
0
360
315
- 115
225
- 45
315
0
360
- 45
315
Shaded area: check area
841
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
20 Protection Function
20.2 Enable Interfering Object Selection Data; G186
Function and purpose
Sixteen interfering objects to be checked in the interference check III are preset by the MTB (R register or system
variables).
The interfering object selection is enabled by the "Interference check III: Enable interfering object selection data"
signal (Y769) or the "Enable interfering object selection data" command (G186) after the target interfering object has
been selected.
When the "Interference check III mode" signal (Y76A) is set to ON after the interfering object selection has been
enabled, the interference check starts.
Refer to the PLC Interface Manual (IB-1501258) for the R register and commands issued by the PLC device.
For details on the system variables, refer to "22.29 System Variables (Interfering Object Selection)".
This section describes the "Enable interfering object selection data" command (G186).
Command format
"Enable interfering object selection data" command
G186;
Detailed description
Consistency check between interfering object definition and interfering object selection
(1) When the "Enable interfering object selection data" command (G186) or the "interference check III: Enable interfering object selection data" signal is set to ON, the consistency between the interfering object definition and interfering object selection is checked.
(2) If the consistency check causes an operation error, all axes in all part systems will stop.
An operation error can be remedied by redefining the interfering object data (*1) or resetting all part systems
(except for sub part system 2).
(*1) After correcting the interfering object data, issue the "Enable interfering object selection data" signal or "Enable interfering object selection data" command (G186).
(3) The manual operation and automatic operation are not available until all the part systems (except for subpart
system 2) are reset.
(4) In the case the alarm occurs due to the consistency check, the interfering data will not be updated. For the interference check between interfering objects, the interfering data enabled last time is continuously used.
Interference check III mode enable command
While the interference check III mode signal is set to ON after the "Enable interfering object selection data" signal
or the "Enable interfering object selection data" command (G186) has been executed, the interference between interfering objects is checked. While the interference check III is being executed, the interference check III mode active
signal is turned ON.
After the NC power is turned ON, if the interference check III mode signal is turned ON without executing the "Enable
interfering object selection data" signal or the "Enable interfering object selection data" command (G186) even once,
an operation error (M03 1001) will occur.
IB-1501278-D
842
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
20 Protection Function
Timing chart at execution of G186
G186 command
Interference check III
mode enable signal
G186
G186
(*1)
(*2)
Interference check III
mode active signal
Status of interference
check III
(*3)
(*1)
(*2)
(*3)
(*1) The first interfering data pattern is set by the G186 command.
The interference check III function executes check processing based on the first data pattern setting.
(*2) The second interfering data pattern is set by the G186 command.
The interference check III function executes check processing based on the second data pattern setting.
(*3) The interference check III function is not executed.
Relationship with other functions
Manual arbitrary reverse run
The program cannot be run backward prior to the "Enable interfering object selection data" command (G186).
Arbitrary reverse run
If the "Enable interfering object selection data" command (G186) is run backward, the interference data at the reverse run is enabled, instead of returning to the interference data at forward run.
843
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
20 Protection Function
Precautions
(1) The high-speed high-accuracy control function (high-speed machining mode, high-accuracy control, spline interpolation, etc.) generates a path appropriate for the tolerance amount to execute a machining program commanded with fine segments at high speed and smoothly. Thus, a difference arises between the path on which the
interference check III is performed and the path on which the tool actually passes. When using the interference
check III together with the high-speed high-accuracy control (high-speed machining mode, high-accuracy control, spline interpolation, etc.), define an interfering object (solid) with the clearance amount to suit the path difference that occurs depending on the tolerance amount.
(2) The axis that is stopped when an operation error (M03 0001) or (M03 0002) is detected depends on the MTB
specifications (parameter "#1444 otsys" (OT all-part-system stop enable/disable selection).
When "0" is set, all the axes in the part system which controls the axes set to "interfering object I/J/K control
axis" and "I/J/K rotary control axis" in the interfering object definition will stop.
When "1" is set, all axes in all part systems will stop.
(3) If an operation error (M03 0002) is detected between the fixed interfering objects (*1), an alarm will be output to
part system 1.
(*1) These refer to the interfering objects for which "interfering object I/J/K control axis" and "I/J/K rotary control
axis" are not set in the interfering object definition.
(4) If you perform the interference check III during the high-speed simple program check, an operation error (M03
0001) may occur at a position different from the actual operation.
(5) If multiple interfering objects including the rotary axis setting are set as one interfering object using the interfering
check III: designation of disabled interference object, only the interfering object in which a rotary axis is set will
be in rotating operation, checking the interference between the interfering objects.
(6) If an operation error (M03 0001) occurs, cancel the alarm by moving the interfering object to the retracting direction with the linear axis.
(7) The PLC axis is not available for the interference check III. However, it is available when NC axis/auxiliary axis
switching is enabled.
(8) In the interference check III, the interference is checked in 0.1μm units regardless of the control unit.
(9) At the occurrence of the operation error (M03 0001), all the axes in the part system in which the alarm has occurred will stop. If the entry to the interference alarm area is not detected by the subsequent axis travel command
(manual operation/automatic operation), the operation error (M03 0001) will be cancelled and the axes will travel.
Depending on the relative positional relation between the interfering objects or the feedrate of axes, the axis can
travel further to the interfering direction from the stopped position (a direction to which the interfering objects interfere).
Even if the axis moves toward the interfering direction, it will stop before entering the interference alarm area.
IB-1501278-D
844
21
Measurement Support Functions
845
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
21Measurement Support Functions
21.1 Automatic Tool Length Measurement ; G37
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.
When offset is already being applied to a tool, it moves the tool toward the measurement position with the offset still
applied, and if a further offset amount is generated as a result of the measurement and calculation, it provides further
compensation of the present compensation amount.
If there is one type of offset amount at this time, and the offset amount is distinguished between tool length offset
amount and wear offset amount, the wear amount will be automatically compensated.
Command format
Automatic tool length measurement command
G37 Z__ R__ D__ F__ ;
Z
Measuring axis address and coordinates of measurement position -------- X,Y,Z,α (α is the additional axis.)
R
This commands the distance between the measurement position and point where the movement is to start at
the measuring speed.
D
This commands the range within which the tool is to stop.
F
This commands the measuring feedrate.
When R_, D_ or F_ is omitted, the value set in the parameter is used instead.
<Parameter> ("Automatic tool length measurement" on the machining parameter screen)
 #8004 SPEED: 0 to 1000000 [mm/min]
 #8005 ZONE r: 0 to 99999.999 [mm]
 #8006 ZONE d: 0 to 99999.999 [mm]
IB-1501278-D
846
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Detailed description
(1) Operation with G37 command
(F1)
(f2)
(a)
D (d)
D (d)
F (fp)
R (r)
(d1)
(b)
1R
1R
1R
1R
(c)
Op1 : Normal completion as it is measurement within the allowable range.
Op2 : Alarm stop (P607) as it is outside of the measurement allowable range.
Op3 : Alarm stop (P607) as the sensor is not detected.
Op4 : Alarm stop (P607) as it is outside of the measurement allowable range. However if there is no (c) area,
normal completion will occur.
(a) Measurement allowable range
(b) Compensation amount
(d1) Distance
(F1) Speed
(f2) Feedrate
(d) Measurement range
(r) Deceleration range
Measuring position
Stop point
Sensor output
(2) The sensor signal (measuring position arrival signal) is used in common with the skip signal.
(3) The feedrate will be 1mm/min if the F command and parameter measurement speed are 0.
(4) An updated offset amount is valid unless it is assigned from the following Z axis (measurement axis) command
of the G37 command.
(5) Excluding the delay at the PLC side, the delay and fluctuations in the sensor signal processing range from 0 to
0.2ms.
As a result, the measuring error shown below is caused.
Maximum measuring error [mm] = Measuring speed [mm/min] * 1/60 * 0.2 [ms]/1000
(6) The machine position coordinates at that point in time are read by sensor signal detection, and the machine will
overtravel and stop at a position equivalent to the servo droop.
Maximum overtravel [mm] = Measuring speed [mm/min] * 1/60 * 1/Position loop gain [1/s]
The standard position loop gain is 33 (1/s).
847
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Operation example
For new measurement
[mm]
G28 Z0;
T01;
M06 T02;
G90 G00 G43 Z0 H01;
G37 Z-400. R200. D150. F1;
(Z0)
0
(a)
- 100
Coordinate value when reached the measurement position = -300.
-300.-(-400.)=100.
0+100.=100. H01=100.
(b)
- 200
F
- 300
R
(a) Tool length
(b) Movement amount by tool length measurement
(c) Measuring device
D
- 400
(c)
D
Note
(1) A new measurement is applied when the current tool length compensation amount is zero. Thus, length will be
compensated whether or not length dimension by tool compensation memory type and length wear are differentiated.
When tool compensation is applied
[mm]
G28 Z0;
T01;
M06 T02;
G43 G00 Z0 H01;
G37 Z-400. R200. D50. F10;
(Z0)
0
- 100
(d)
Coordinate value when reached the measurement position = -305.
-305.-(400.)=95.
Thus, H01=95.
- 200
F
R
- 300
(c) Measuring device
(d) Wear amount
D
- 400
(c)
D
Note
(1) A measurement for the wear amount is applied when the current tool length compensation amount is other than
zero. Thus, length wear will be compensated if length dimension by tool compensation memory type and length
wear are differentiated. If not differentiated, length dimension will be compensated.
IB-1501278-D
848
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Precautions
(1) Program error (P600) occurs if G37 is commanded when the automatic tool length measurement function is not
provided.
(2) Program error (P604) will occur when no axis has been commanded in the G37 block or when two or more axes
have been commanded.
(3) Program error (P605) will occur when the H code is commanded in the G37 block.
(4) Program error (P606) will occur when G43_H code is not commanded prior to the G37 block.
(5) Program error (P607) will occur when the sensor signal is input outside the allowable measuring range or when
the sensor signal is not detected even upon arrival at the end point.
(6) When a manual interrupt is applied while the tool is moving at the measuring speed, a return must be made to
the position prior to the interrupt and then operation must be resumed.
(7) The data commanded in G37 or the parameter setting data must meet the following conditions:
| Measurement point start point | > R command or parameter r > D command or parameter d
(8) When the D address and parameter d in (7) above are zero, the operation will be completed normally only when
the commanded measurement point and sensor signal detection point coincide. Otherwise, program error
(P607) will occur.
(9) When the R and D addresses as well as parameters r and d in (7) above are all zero, program error (P607) will
occur regardless of whether the sensor signal is present or not after the tool has been positioned at the commanded measurement point.
(10) When the measurement allowable range is larger than the measurement command distance, it becomes the
measurement allowable range for all axes.
(11) When the measurement speed movement distance is larger than the measurement command distance, all axes
move at the measurement speed.
(12) When the measurement allowable range is larger than the measurement speed movement distance, the axis
moves in the measurement allowable range at the measurement speed.
(13) The automatic tool length measurement command (G37) must be commanded together with the G43H_ command that designates the offset No.
G43 H_;
G37 Z_ R_ D_ F_;
(14) If an axis other than Z is specified for the measuring axis in G37 while the parameter "#1080 Dril_Z" is set to
"1", the program error(P606) occurs.
849
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
21.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 coordinate value is read, the remaining distance is discarded and the command in the following block is executed.
Command format
G31 X__ Y__ Z__ α__ R__ F__ ;
X,Y,Z,α
Axis coordinate value; they are commanded as absolute or incremental values according
to the G90/G91 modal when commanded.
α is the additional axis.
R
Acceleration/deceleration command
R0: Acceleration/deceleration time constant=0 (No automatic acceleration/deceleration
after interpolation.)
R1: Acceleration/deceleration time constant valid. Accelerate/decelerate with the time
constant set with the parameters "#2102 skip_tL" and "#2103 skip_t1".
R0 is applied when it is omitted.
F
Feedrate (mm/min)
IB-1501278-D
850
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Detailed description
(1) If an F command is programmed in the same block as G31, the commanded speed is set as the skip speed.
If an F 1-digit feed command is issued to program the feedrate, F 1-digit feed is disabled.
Note that, in the following cases, the skip speed and operations depend on the MTB specifications (parameter
"#12022 skipF_spec/bit2").
#12022/bit2 = 0
#12022/bit2 = 1
Skip speed if an F command is The value of parameter "#1174
not programmed in the G31
skip_F" is used as the skip speed.
block
The skip speed is determined based
on the modality of F when G31 is executed.
A program error (P603) will also occur A program error (P62) will also occur if
if the value of parameter "#1174
the value of F modality is "0".
skip_F" is "0".
Mode of commanded speed
Only feed per minute mode is avail- Follows the mode (Feed per minute/
able. Feed per minute mode is enabled Feed per revolution) that is active
even in feed per revolution mode.
when G31 is executed.
Modality of F command
The F modal is not updated even if the The F modal that is updated by an F
G31 block contains an F command. command in the G31 block varies depending on the mode (Feed per minute/Feed per revolution) that is active
when G31 is executed.
(2) The maximum speed of G31 command is determined by the machine specification.
(3) When R0 is commanded or the R command is omitted, the step acceleration/deceleration will be applied to G31
block after the interpolation without performing the automatic acceleration/deceleration.
When R1 is commanded, the automatic acceleration/deceleration will be performed according to the cutting feed
acceleration/deceleration mode set by the parameter "#2003 smgst" with the time constant set by the parameter
"#2102 skip_tL" and "#2103 skip_t1".
Even if G1 constant inclination acceleration/deceleration (the parameter "#1201 G1_acc" is set to "1") is valid,
the time constant acceleration and deceleration will be performed.
(4) When the R1 is commanded with the acceleration and deceleration command, the automatic acceleration and
deceleration will be performed after the interpolation even if the skip single is input. Note that if the value of the
parameter "#2102 skip_tL" and "#2103 skip_t1" are large, the movement will not stop immediately.
Acceleration/deceleration when R0 is commanded or R is omitted
sk1
f
t
Acceleration/deceleration when R1 is commanded
sk1
f
(tL)
(sk1) Skip signal
(tL)
t
(tL) Skip time constant
(5) Command the acceleration/deceleration command (R0/R1) whenever G31 is commanded. If R0/R1 has not
been commanded, or anything other than R0/R1 has been commanded, the acceleration/deceleration time constant is assumed to "0" (R0), and automatic acceleration/deceleration after interpolation will not be performed.
851
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
(6) When G31 is commanded, the stop conditions (feed hold, interlock, override zero and stroke end) are valid. External deceleration is also valid.
For the validity of the following various functions, refer to the MTB specifications.
Cutting feed override (parameter "#12022 skipF_spec/bit0")
Dry run (parameter "#12022 skipF_spec/bit1")
(7) The G31 command is unmodal and it needs to be commanded each time.
(8) If the skip command is input at the start of the G31 command, the G31 command will be completed immediately.
When a skip signal has not been input until the completion of the G31 block, the G31 command will also be completed upon completion of the movement commands.
(9) If the G31 command is issued during tool radius compensation or nose R compensation, program error (P608)
will occur.
(10) When there is no F command in the G31 command and the parameter speed is also zero, the program error
(P603) will occur.
(11) With machine lock or with the Z axis cancel switch ON when only the Z axis is commanded, the skip signal will
be ignored and execution will continue as far as the end of the block.
Readout of skip coordinates
The coordinate positions for which the skip signal is input are stored in the system variables #5061 (1st axis) to
#506n (n-th axis), so these can be used in the user macros.
:
G90 G00 X-100. ;
G31 X-200. F60 ;
(Skip command)
#101=#5061 ;
Skip signal input coordinate position (workpiece coordinate system) is readout to #101.
:
Note
(1) Depending on the MTB specifications (parameter "#1366 skipExTyp"), the skip coordinate value may be "0" even
if the G31 command is given in a 1-part system or in only a part of a multi-part system.
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 stop after responding to the skip signal is short, so the machine can be stopped
precisely with a small coasting amount. The coasting amount can be calculated from the following formula.
0=
F
60
Tp+
=
F
60
(Tp+t1)
1
F
60
(t1
t2)
F
60
t2
2
δ0
: Coasting amount (mm)
F
: G31 skip speed (mm/min)
Tp
: Position loop time constant (s) = (position loop gain)-1
t1
: Response delay time (s) = (time taken from the detection to the arrival of the skip signal at the controller via PC)
t2
: Response error time 0.001 (s)
When G31 is used for calculation, the value calculated from the section indicated by δ1 in the above equation
can be compensated for, however, δ2 results in calculation error.
IB-1501278-D
852
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Stop pattern with skip signal input is shown below.
F
(a)
F: Feedrate
(a) Skip signal input
(T) Time
Coasting amount
ț0
(T)
t1
t2
Tp
The relationship between the coasting amount and speed when Tp is 30ms and t1 is 5ms is shown in the following
figure.
(a) Maximum value
Tp=0.03
(b) Average value
t1=0.005
0.050
(c) Minimum value
(a)
F: Feedrate
(b) δ: Coasting amount
0.040
(c)
0.030
(mm)
0.020
0.010
0
10
20
30
40
50
60
70
F (mm/min)
Readout error of skip coordinates mm
(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 readout within the error
range in the following formula as the skip signal input coordinate values. However, coasting based on response
delay time t1 results in a measurement error and so compensation must be provided.
ε : Readout error
ε=±(F/60)×t 2
(µm)
F : Feedrate
+1
t2 : Response error time 0.001 (s)
0
60 F (mm/min)
Measurement value
-1
Readout error of skip signal input coordinates
Readout error with a 60mm/min feedrate is as shown below and the measurement value is within readout error
range of ±1μm:
ε= ± (60/60) x 0.001 = ± 0.001 (mm)
(2) Readout of other coordinates
The readout coordinate values include the coasting amount. Therefore, when coordinate values at the time of
skip signal input is required, reference should be made to the section on the G31 coasting amount to compensate
the coordinate value. As in the case of (1), the coasting amount based on the delay error time t2 cannot be calculated, and this generates a measuring error.
853
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Examples of compensating for coasting
(1) Compensating for skip signal input coordinates
:
G31 X100.F100 ;
Skip command
G04 ;
Machine stop check
#101=#5061 ;
Skip signal input coordinate readout
#102=#110*#111/60 Coasting based on response delay time
;
#105=#101-#102 ;
Skip signal input coordinates
:
#110 = Skip feedrate;
#111 = Response delay time t1;
(2) Compensating for workpiece coordinates
:
G31 X100.F100 ;
Skip command
G04 ;
Machine stop check
#101=#5061 ;
Skip signal input coordinate readout
#102=#110*#111/60 Coasting based on response delay time
;
#103=#110*#112/60 Coasting based on position loop time constant
;
#105=#101-#102#103 ;
Skip signal input coordinates
:
#110 = Skip feedrate;
#111 = Response delay time t1;
#112 = Position loop time constant Tp;
Operation to be carried out when the skip command is executed on multiple part systems at the same time
The operation resulting from the G31 command executed simultaneously on multiple part systems depends on the
MTB specifications (parameter "#1366 skipExTyp").
#1366
Operation
0
When any part system is executing the G31 command, the G31 command issued for other part
systems is subjected to a block interlock state, and such G31 command will be executed after
the current G31 command execution is completed. (No error is displayed.)
In a single-block operation, for example, where the G31 block is started in multiple part systems
at the same time, it is executed in the smallest part system first.
1
The G31 command is executed on multiple part systems at the same time.
However, the skip coordinate position is not read and is set to "0" in all part systems. (*1)
(*1) The skip coordinate position is also set to "0" when the G31 command is executed on a single part system.
Furthermore, it is set to "0" when the G31 command is executed on one part system in a multiple part system
configuration.
When the G31 command is used for measuring purposes, "#1366 skipExTyp" must be "0".
IB-1501278-D
854
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Operation example
G90 G00
G31
G01
G31
X-100000 Y0;
X-500000 F100;
Y-100000;
X-0 F100;
Y-200000;
G31 X-500000 F100;
Y-300000;
X0;
G31
- 500000
- 100000 0 Y
W
G01
G31
X
- 100000
G01
G31
- 200000
G01
G01
- 300000
855
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
21.3 Multi-step Skip Function 1 ; 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 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 and settings for each parameter depend on the MTB specifications.
Command format
G31.1 X__ Y__ Z__ α__ R__ F__ ;
X,Y,Z,α
Target coordinates
R
Acceleration/deceleration command
R0: Acceleration/deceleration time constant=0 (No automatic acceleration/deceleration
after interpolation.)
R1: Acceleration/deceleration time constant valid. Accelerate/decelerate with the time
constant set in the parameters "#2102 skip_tL" and "#2103 skip_t1".
R0 is applied when it is omitted.
F
Feedrate (mm/min)
Same with G31.2 and G31.3; Ff is not required with G04.
As with the G31 command, this command executes linear interpolation and when the preset skip signal conditions
have been met, the machine is stopped, the remaining commands are canceled, and the next block is executed.
Detailed description
(1) The skip speed is specified by program command or parameter. Feedrate G31.1 set with the parameter corresponds to "#1176 skip1f", G31.2 corresponds to "#1178 skip2f", G31.3 corresponds to "#1180 skip3f", and G04
corresponds to "#1173 dwlskp". Note that the F modal is not updated in each case.
(2) A command is skipped if it meets the specified skip signal condition.
(3) The feedrates corresponding to the G31.1, G31.2, and G31.3 commands can be set by parameters.
(4) The skip conditions (logical sum of skip signals that have been set) corresponding to the G31.1, G31.2, G31.3
and G04 commands can be set by parameters.
Parameter setting
Valid skip signal
1
1
2
2
○
3
○
○
4
○
5
○
6
7
○
○
○
○
○
○
(5) Details other than the above are the same as those on G31 (Skip function).
IB-1501278-D
3
○
856
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Operation example
(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 :7
20.0 mm/min(f1)
G31.2 :3
5.0 mm/min(f2)
G31.3 :1
1.0 mm/min(f3)
[Program example]
N10 G31.1 X200.0 ;
N20 G31.2 X40.0 ;
N30 G31.3 X1.0 ;
f
(f1)
N10
(a)
(a) Measurement distance
(F) Skip speed
(sk1) Input of skip signal 1
(sk2) Input of skip signal 2
(sk3) Input of skip signal 3
(F)
(f2)
N20
(f3)
N30
t
(sk3)
(sk2)
(sk1)
<Note>
If skip signal 1 is input before skip signal 2 in the above operation, N20 is skipped at that point and N30
is also ignored.
f
(sk3)
(sk2)
(f1)
(sk1)
N10
(f2)
(f3)
N20
(tL)
(sk1) Skip signal
(tL)
(tL)
N30
(tL)
t
(tL) Skip time constant
(2) If a skip signal with the condition set during G04 (dwell) is input, the remaining dwell time is canceled and the
following block is executed.
857
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
21.4 Multi-step Skip Function 2 ; G31 P
Function and purpose
During linear interpolation by the skip command (G31), operation can be skipped according to the conditions of the
skip signal parameter Pp.
If multi-step skip commands are issued simultaneously in different part systems as shown in the left figure, both part
systems perform skip operation simultaneously if the input skip signals are the same, or they perform skip operation
separately if the input skip signals are different as shown in the right figure. The skip operation is the same as a
normal skip command (G31 without P command).
Y1
Y1
(sk1)
($1)
(sk1)
($1)
X1
X1
Y2
Y2
(sk1)
($2)
(sk2)
($2)
X2
X2
[Same skip signals input in both
1st and 2nd part systems]
[Different skip signals input in
1st and 2nd part systems]
($1) 1st part system
($2) 2nd part system
(sk1) Skip signal 1
(sk2) Skip signal 2
If the skip condition specified by the parameter "#1173 dwlskp" (indicating external skip signals 1 to 4) is met during
execution of a dwell command (G04), the remaining dwell time is canceled and the following block is executed.
Command format
G31 X__ Y__ Z__ α__ P__ R__ F__ ;
XYZα
Target coordinates
P
Skip signal command
R
Acceleration/deceleration command
R0: Acceleration/deceleration time constant=0 (No automatic acceleration/deceleration after interpolation.)
R1: Acceleration/deceleration time constant valid. Accelerate/decelerate with the
time constant set in the parameters "#2102 skip_tL" and "#2103 skip_t1".
R0 is applied when it is omitted.
F
Feedrate (mm/min)
IB-1501278-D
858
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Detailed description
(1) The skip speed is specified by program command or parameter. The feedrate by the parameter is set by "#1174
skip_F". Note that the F modal is not updated in each case.
(2) The skip signal is specified by skip signal command p. The command range of "p" is from 1 to 255. If outside the
range is commanded, program error (P35) will occur.
Skip signal command P
Valid skip signal
8
7
6
5
4
3
2
1
1
○
2
○
3
○
4
○
5
○
6
○
○
○
○
7
8
○
○
○
○
:
:
:
253
○
○
○
○
○
○
○
254
○
○
○
○
○
○
○
255
○
○
○
○
○
○
○
○
(3) The specified skip signal command is a logical sum of the skip signals.
(Example) G31 X100. P5 F100 ;
Operation is skipped if skip signal 1 or 3 is input.
(4) If skip signal parameter Pp is not specified, it works as a skip function (G31), not as a multi-step skip function. If
speed parameter Ff is not specified, the skip speed set by the parameter "#1174 skip_F" will apply.
[Relations between skip and multi-step skip]
Skip specifications
×
Condition
○
Speed
Condition
Speed
G31 X100 ;(Without P and F)
Program error
(P601)
Skip 1
#1174 skip_F
G31 X100 P5 ;(Without F)
Program error
(P602)
Command val- #1174 skip_F
ue
G31 X100 F100 ;(Without P)
Program error
(P601)
Skip 1
G31 X100; P5 F100;
Program error
(P602)
Command val- Command value
ue
Command value
(5) If skip specification is effective and P is specified as an axis address, skip signal parameter P will be given a
priority. The axis address "P" will be ignored.
(Example) G31 X100. P500 F100 ;
This is regarded as a skip signal. (The program error (P35) will occur.)
(6) Other than above, the same detailed description as "Skip function; G31" applies.
859
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
21.5 Speed Change Skip ; G31 Fn
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__ α__ R__ F__ F1 = __ ... Fn = __ ; ("n" is the skip signal 1 to 8) ... Skip command
X, (Y,) Z, α
Target coordinates
R
Acceleration/deceleration command
R0: Acceleration/deceleration time constant=0
When the movement is stopped by the skip signal detection, the step stop will
occur.
R1: Acceleration/deceleration time constant valid.
When the movement is stopped by the skip signal detection, it will decelerate
with the time constant set in the parameter "#2102 skip_tL" and "#2103
skip_t1".
When omitted, R0 will be applied.
F
Feedrate when starting the cutting feed (mm/min)
Fn=
Feedrate after detecting the skip signal (mm/min)
Fn = 0: Movement stop
Fn ≠ 0 :Changing the feedrate to fn
F1 = Feedrate after inputting the skip signal 1
:
F8 = Feedrate after inputting the skip signal 8
IB-1501278-D
860
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Detailed description
(1) When the skip signal for which the feedrate fn≠0 is commanded, the speed is changed to the command speed
corresponding to the skip signal.
(2) When the skip signal for which the feedrate fn=0 is commanded, the movement is stopped. If R0 is commanded
or R command is omitted, the skip stop will occur when the movement is stopped by the skip signal detection
without performing the automatic acceleration/deceleration by the skip time constant.
When R1 is commanded, the automatic acceleration/deceleration will be performed with the skip time constant
after the interpolation even if the movement is stopped by the skip signal detection. Note that if the value of the
parameter "#2102 skip_tL" and #2103 skip_t1" are large, it will not stop immediately.
After the movement is stopped, the remaining movement commands are canceled and the following block will
be executed.
(3) When a skip signal has not been input until the completion of the G31 block, the G31 command will also be completed upon completion of the movement commands.
(4) When the skip return is valid, the return operation by the skip signal detection is executed after the movement is
stopped.
(5) Even if G1 constant inclination acceleration/deceleration (#1201 G1_acc) is valid, the speed change skip will be
the operation of the time constant acceleration and deceleration.
(6) When the feedrate command (Fn=fn) is not specified after detecting the skip signal, the normal G31 skip operation will be applied.
(7) If a skip signal (one of sk1 to sk4) are input during the deceleration (area (A) in the figure) after a move command
has finished:
(a) A skip signal (sk2 in the figure) for changing speed is ignored.
(b) A skip signal (sk1 in the figure) for stopping the movement is executed and the speed is set to "0".
Speed F (mm/min)
(sk4)
f
(sk3)
f4
f3
(sk1)
(sk2)
f2
f1
Time T (min)
0
(A)
(8) The skip signal without commanding the feedrate in the program will be ignored.
861
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
(9) The speed change or the movement stop is performed when detecting the rising edge of the skip signal. Note
that if several rising edges are input at 3.5ms intervals or less, they may be judged as the simultaneous input.
When they are judged as the simultaneous input, the smaller value will be valid.
Shown below are changes in time (T) and speed (F) when skip signals, 1 (sk1) to 4 (sk4), are input.
Speed F (mm/min)
(sk3+sk4)
f
(sk2)
f4
f3
(sk1)
f2
f1
Time T (min)
0
(sk4)
(sk3)
(sk2)
(sk1)
Time T (min)
(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 starts.
(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.
(12) If the skip time constant "#2102 skip_tL" is illegal, an MCP alarm (Y51 15) will occur. If the "#2103 skip_t1" is
illegal, an MCP alarm (Y51 16) will occur.
(13) Other than above, the same detailed description as "Skip function; G31" applies.
IB-1501278-D
862
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Operation example
The following shows the operations when a skip time constant and skip signals, 1 (sk1) to 4 (sk4), are input.
(1) Example of when R is not commanded
Skip time constant ((a) in the figure) and position loop time constant ((b) in the figure)
G31 X100. Ff F1=0 F2=f2 F3=f3 F4=f4 ;
Speed F (mm/min)
(sk4)
f
(sk3)
(sk2)
f4
f3
(sk1)
f2
f1
Time T (min)
0
(a)
(a)
(b)
(2) Example of when R1 is commanded
Skip time constant ((tL) in the figure)
G31 X100. R1 Ff F1=0 F2=f2 F3=f3 F4=f4;
Speed F (mm/min)
(sk4)
f
(sk3)
(sk2)
f4
f3
(sk1)
f2
f1
Time T (min)
0
(tL)
(tL)
(tL)
863
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
21.6 Torque Limitation Skip ; G160
Function and purpose
Axis movement is performed in the torque limited status, and the axis movement command is suspended to proceed
to the next block when the current command value reaches the designated torque skip value and the torque skip
turns ON. In addition to the torque, the droop value can be add to the condition of the skip ON (Droop skip).
This function enables measurement without a sensor.
Command format
Torque limitation skip
G160 X/Y/α__ Q__ D__ F__ ;
The G160 command is unmodal (group 00). When executing the G160 command continuously, it must always be
command for each block separately.
X/Y/α
Axis address and coordinate value command (mm/inch) (Decimal point command is possible)
Q
Torque skip value (0 to 500 (%))
D
Droop skip value (0 to 99999.999 mm, 0 to 9999.9999 inch)
F
Skip speed
Set it in the range of feedrates. (mm/min, inch/min, mm/rev, inch/rev)
Note
(1) Designate an axis that exits in the part system for the axis address. If an axis that does not exist in the part system, a program error (P32) will occur.
(2) Only one axis can be commanded with the axis address. If no axis is specified or if two or more axes are specified
in the same block, a program error (P595) will occur.
(3) For spindle/C axis (C axis command), a Q command is specified with 121 to 500 %, the axis is clamped at 120%.
(4) If a Q command is omitted, torque skip function is performed as specified by the MTB (parameter shown below).
NC axis (servo axis): SV014 lLMTsp (current limit value in special control)
Spindle/C axis (C axis command):
For the normal spindle, SP065 TLM1 (torque limit 1)
For spindle-mode servo, SV014 ILMTsp (current limit value in special control)
(5) If D command is omitted, a skip operation is performed using the torque skip value only.
(6) D command must be programmed within the excessive error width shown below.
NC axis (servo axis): SV023 OD1 (detected excessive error width when servo is on)
Spindle/C axis: SP023 OD1 (detected excessive error width (interpolation mode))
(7) If an F command is omitted, the feedrate depends on the MTB specifications (parameter "#1174 skip_F").
(8) A program error (P603) will occur if the skip speed in F command is 0.
IB-1501278-D
864
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Detailed description
Acceleration/deceleration when G160 is commanded
Follow the acceleration/deceleration pattern for linear interpolation (G01).
Even if G01 constant inclination acceleration/deceleration is valid, the time constant acceleration and deceleration will be performed.
Skip speed
If F command is programmed in the same block as G160, the commanded speed is set as the skip speed.
If an F 1-digit feed command is issued to program the feedrate, F 1-digit feed is disabled.
Note that, in the following cases, the skip speed and operations depend on the MTB specifications (parameter
"#12022 skipF_spec/bit2").
#12022/bit2 = 0
Skip speed if F command is not The value of parameter "#1174
programmed in the G160 block skip_F" is used as the skip speed.
#12022/bit2 = 1
The skip speed is determined based
on the modality of F when G160 is executed.
A program error (P603) will also occur A program error (P62) will also occur if
if the value of parameter "#1174
the value of F modality is "0".
skip_F" is "0".
Mode of commanded speed
Only feed per minute mode is avail- Follows the mode (Feed per minute/
able. Feed per minute mode is enabled Feed per revolution) that is active
when G160 is executed.
even in feed per revolution mode.
Modality of F command
F modal is not updated even if the
The F modal that is updated by F comG160 block contains an F command. mand in the G160 block varies depending on the mode (Feed per
minute/Feed per revolution) that is active when G160 is executed.
Control signals regarding speed control and stop
(1) For the validity of the following various functions, refer to the MTB specifications.
Cutting feed override valid/invalid (parameter "#12022 skipF_spec/bit0")
Dry run valid/invalid (parameter "#12022 skipF_spec/bit1")
(2) An operation error (M01 0102) occurs if 0% cutting feed override is performed when cutting feed override is invalid.
(3) The stop conditions (feed hold, interlock, override zero and stroke end) and external deceleration are valid when
torque limitation skip is used.
(4) The machine lock signal is valid. (The counter is updated until the program reaches the end point of the block.)
Processing when the torque skip turns on
(1) If the current value for the specified axis exceeds the torque skip value, the torque limit is reached and droop
exceeds the droop skip value, the torque skip turns on. If there is no D command, the torque skip turns on when
the torque limit is reached.
(2) The current position when the torque skip turns on is regarded as the block end point and the remaining distance
(command value - actual movement distance) is discarded.
865
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Completion of skip command
(1) If the torque skip turns on during G160 command, the program completes the current block before moving on to
the next block.
(2) If the torque skip does not turn on until G160 command reaches the end point, the skip command completes at
the end of the block and then the program moves on to the next block.
(3) Set the skip coordinate values (workpiece coordinate values) to system variables (#5061 and onwards). When
the tool has moved to the end point, set the end point position.
Droop
Droop skip value
Torque skip on
Time
Current value
Droop skip value
Time
Commanded speed
Block end point
Actual movement distance
Remaining
distance
Program command position
Interference object
Axis movement
target
Program example
:
:
Workpiece radius measurement tool
G28 Z200.
T01;
Tool selection for measurement
G00 X50. Y50. Z100. ;
G160 Z40. Q80 F20;
Torque skip command
#100=#5061;
Completion of skip command
(Coordinate position (workpiece value) read)
:
50.
40.
0.
IB-1501278-D
866
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
Relationship with Other Functions
Manual arbitrary reverse run
The skip speed is controlled with the manual arbitrary reverse run speed. Torque skip command block cannot be
executed in the reverse run.
Manual interruption
When a manual interrupt is applied during execution of torque skip, calculate the position shifted by the amount of
the manual interruption as the skip position.
Skip variables
The torque skip position is common to skip variables (#5061 and onwards) for G31 skip function.
Geometric, Corner Rounding, Corner Chamfering
Geometric, Corner Rounding, and Corner Chamfering are not available for torque skip blocks. Program error (P595)
will occur.
Torque limit
Torque skip command, if executed on the axis to which torque limits are applied, is based on the torque skip value
in the G160 command.
Functions for which torque skip command is not available
Torque skip command (G160) cannot be commanded when any of the following functions is in use. (An error will
occur.)
Function name
Error
Tool radius compensation (G40, G41, G42, G46)
Program error (P608)
Synchronous control (G114.1)
Program error (P595)
High-speed high-accuracy control (G05.1/G05)
Program error (P34)
Precautions
(1) Decreasing the torque limit value may cause a torque limit to be applied during acceleration/deceleration.
(2) When the reset button is pressed while torque skip is active, an axis moving with G160 stops. After the axis has
stopped, the original torque is restored.
(3) Writing parameters via a PLC or other host controller during execution of torque skip causes the torque limit value
to be the setting value of servo parameter SV014, possibly causing it to be no longer correct torque skip value.
(The PLC signal operations and setting values of the servo parameters are based on the MTB specifications.)
(4) When using D command (droop skip value), command a value that does not exceed the excessive error width.
(5) After a torque skip, the droop is canceled.
(6) The droop is displayed in interpolation increments on the drive monitor. They are different from the command
increments of D command.
867
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
21 Measurement Support Functions
21.7 Programmable Current Limitation ; G10 L14 ;
Function and purpose
This function allows the current limit value of the NC axis to be changed to a desired value in the program, and is
used for the workpiece stopper, etc. "#2214 SVO14(current limit value in special control)” can be changed.
The commanded current limit value is designated with a ratio of the limit current to the rated current.
Command format
G10 L14 Xn ;
L14
Current limit value setting (+ side/- side)
X
Axis address
n
Current limit value (%) Setting range: 1 to 999
Precautions
(1) If the current limit value is reached when the current limit is valid, the current limit reached signal is output.
(2) The following two modes can be used with external signals as the operation after the current limit is reached.
The external signal determines which mode applies.
[Normal mode]
The movement command is executed in the current state.
During automatic operation, the movement command is executed until the end, and then move to the next block
with the droops still accumulated.
[Interlock mode]
During the occurrence of the droops, it enters to the internal interlock state and the next movement will not be
carried out.
During automatic operation, the operation stops at the corresponding block, and the next block is not moved to.
During manual operation, the following same direction commands are ignored.
(3) The position droop generated by the current limit can be canceled when the current limit changeover signal of
external signals is canceled. (Note that the axis must not be moving.)
(4) The setting range of the current limit value is 1% to 999%. Commands that exceed this range will cause a program error (P35).
(5) If a decimal point is designated with the G10 command, only the integer will be valid.
Example) G10 L14 X10.123 ; The current limit value will be set to 10%.
(6) For the axis name "C", the current limit value cannot be set from the program (G10 command).
To set from the program, set the axis address with an incremental axis name, or set the axis name to one other
than "C".
IB-1501278-D
868
22
System Variables
869
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22System Variables
22.1 System Variables List
The M800/M80 series provides the following system variables.
Note that the available types and numbers vary depending on the machine specifications and whether the machine
is intended for use by a user or MTB.
No.
○:
Available
-:
Unavailable
Reading
Setting
#1000 - #1035,
#1200 - #1295
Signal input from PLC to NC
○ (*1)
-
22.25
#1100 - #1135
#1300 - #1395
Signal output from NC to PLC
○ (*1)
○ (*1)
22.26
#1900, #1901
Used for normal line control.
○
○
22.22
#2001 - #2000+n
#2201 - #2200+n
#2401 - #2400+n
#2601 - #2600+n
Tool offset data
○
Also refer to the variables #10001, #135001 and #230001 or larger.
○
22.6
#2501, #2601
External workpiece coordinate offset
○
○
22.10
#3000
Used to forcibly set to the alarm mode.
Designate the number and message.
-
○
22.12
#3001, #3002
Cumulative time (integrating time)
○
-
22.14
#3001, #3002
#3011, #3012
Time read variables
○
○
22.15
#3003
○
○
22.16
○
○
#3006
Inhibition of single block stop
Inhibition of miscellaneous function finish signal waiting
Prohibition of program check reverse run
Automatic operation pause OFF
Cutting override OFF
G09 check OFF
Dry run invalid
Used to display and stop a message.
-
○
22.13
#3007
Mirror image
○
-
22.19
#3901, #3902
Number of machining processes / Maximum number of machining ○
processes
○
22.18
#4001 - #4021
#4201 - #4221
G command modal information
○
-
22.2
#4101 - #4120
#4301 - #4320
Non-G command modal information
○
-
22.3
#4401 - #4421
#4507 - #4520
Modal information at macro interruption
○
-
22.4
#5001 - #5160+n
Position information
End point coordinate position of the previous block
Machine coordinate position
Workpiece coordinate position
Skip coordinate position
Tool position compensation amount
Servo deviation amount
 Macro interruption stop block coordinate position
Workpiece coordinate offset data
○
-
22.11
#3004
#5201 - #5320+n
Data type or use
Section
○
○
22.8
#7001 - #8900+n
Extended workpiece coordinate offset data (48- or 96-set specifi- ○
cation)
○
22.9
#10001 - #10000+n
#11001 - #11000+n
#16001 - #16000+n
#17001 - #17000+n
Tool offset data
○
Also refer to the variables #2001, #135001 and #230001 or larger.
○
22.6
#26000 - #26077
Workpiece installation error compensation amount
○
22.24
IB-1501278-D
870
○
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
No.
#30060 - #30068
Reading
Setting
Coordinate Rotation Parameter
Data type or use
○
-
Section
22.20
#31001 - #31023
Rotary axis configuration parameter
○
-
22.21
#31100, #31101
Number of reverse run enable blocks, reverse run enable counter ○
-
22.17
#40000 - #40097
Specification of the selected interfering object and interfering
model coordinate system offset
○
○
22.29
#50000 - #50749
#51000 - #51749
#52000 - #52749
Data of user backup area for R device
○ (*1)
○ (*1)
22.27
#50000 - #51199
ZR device access variables (C80 series only)
○
○
22.30
#60000 - #64700
Tool life management
○
○ (*2)
22.7
#68000 - #68003
Tool management
○
○ (*2)
22.5
#68011 - #68023
Basic information
○
○ (*2)
#68031 - #68040
Shape information
○
○
#68051 - #68054
Cutting conditions
○
○
#68061 - #68072
Additional information
○
○
#68081 - #68088
Tool life
○
○
#68101 - #68113
Compensation amount
○
○
#100000
Parameter No. designation
-
○
#100001
Part system No. designation
-
○
#100002
Axis No./spindle No. designation
-
○
#100010
Parameter value read
○
-
#100100
Device type designation
-
○
#100101
Device No. designation
-
○
#100102
Number of read bytes designation
-
○
#100103
Read bit designation
-
○
22.23
22.28
#100110
Reading PLC data
○
-
#101001 - #115950+n
Extended workpiece coordinate offset data (300-set specification) ○
○
22.9
#135001 - #135000+n
#136001 - #136000+n
#137001 - #137000+n
#138001 - #138000+n
Tool offset data
○
Also refer to the variables #2001, #10001 and #230001 or larger.
○
22.6
#230001 - #230000+n
Tool offset data
○
Also refer to the variables #2001, #10001 and #135001 or larger.
○
22.6
(*1) Only for MTB. This cannot be designated by the user.
(*2) Some numbers are not available depending on the contents.
871
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.2 System Variables (G Command Modal)
Detailed description
Using variable Nos. #4001 to #4021, it is possible to read the modal commands which have been issued in previous
blocks.
Similarly, it is possible to read the modals in the block being executed with variable Nos. #4201 to #4221.
Variable No.
Function
Pre-read
block
Execution
block
#4001
#4201
Interpolation mode
G00 : 0, G01 : 1, G02 : 2, G03 : 3, G33 : 33
#4002
#4202
Plane selection
G17 : 17, G18 : 18, G19 : 19
#4003
#4203
Absolute/incremental
G90 : 90, G91 : 91
#4004
#4204
No variable No.
#4005
#4205
Feed designation
G94 : 94, G95 : 95
#4006
#4206
Inch/metric
G20 : 20, G21 : 21
#4007
#4207
Tool radius compensation
G40 : 40, G41 : 41, G42 : 42
#4008
#4208
Tool length compensation
G43:43, G44:44, G49:49
#4009
#4209
Fixed cycle
G80 : 80, G73-74 : 73-74, G76 : 76, G81-89 : 8189
#4010
#4210
Return level
G98 : 98, G99 : 99
#4011
#4211
#4012
#4212
Workpiece coordinate system G54-G59 : 54-59, G54.1:54.1
#4013
#4213
Acceleration/deceleration
G61-G64 : 61-64, G61.1 : 61.1
#4014
#4214
Macro modal call
G66 : 66, G66.1 : 66.1, G67 : 67
#4015
#4215
Normal line control
G40.1 : 40.1, G41.1 : 41.1, G42.1 : 42.1
#4016
#4216
#4017
#4217
Constant surface speed
G96 : 96, G97 : 97
#4018
#4218
No variable No.
#4019
#4219
Mirror image
#4020
#4220
#4021
#4221
G50.1:50.1, G51.1:51.1
No variable No.
Example:
G28 X0 Y0 Z0;
G90 G1 X100. F1000;
G91 G65 P300 X100. Y100.;
M02;
O300;
#1=#4003; -> Group 3G modal (pre-read) #1=91.0
#2=#4203; -> Group 3G modal (active) #2=90.0
G#1 X#24 Y#25;
M99;
%
IB-1501278-D
872
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.3 System Variables (Non-G Command Modal)
Detailed description
Using variable Nos. #4101 to #4120, it is possible to read the modal commands which have been issued in previous
blocks.
Similarly, it is possible to read the modals in the block being executed with variable Nos. #4301 to #4320.
Variable No.
Modal information
Variable No.
Modal information
Pre-read
block
Execution
block
Pre-read
Execution
#4101
#4301
#4111
#4311
#4102
#4302
#4112
#4312
#4103
#4303
#4113
#4313
Miscellaneous function M
#4104
#4304
#4114
#4314
Sequence number N
#4105
#4305
#4115
#4315
Program number O (*1)
#4106
#4306
#4116
#4316
#4107
#4307
#4117
#4317
#4108
#4308
#4118
#4318
#4109
#4309
#4110
#4310
Tool radius compensation
No. D
Feedrate F
Tool length compensation
No. H
#4119
#4319
Spindle function S
#4120
#4320
Tool function T
#4130
#4330
Extended workpiece coordinate system No. P
(*1) Programs are registered as files. When the program No. (file name) is read with #4115, #4315, the character
string will be converted to a value.
(Example 1)
The file name "123" is the character string 0×31, 0×32, 0×33,
so the value will be (0×31-0×30)*100 + (0×32-0×30)*10 + (0×33-0×30) = 123.0.
Note that if the file name contains characters other than numbers, it will be "blank".
(Example 2)If the file name is "123ABC", it contains characters other than numbers, so the result will be "blank".
873
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.4 System Variables (Modal Information at Macro Interruption)
Detailed description
Modal information when control passes to the user macro interruption program can be known by reading system
variables #4401 to #4520.
The unit specified with a command applies.
System variable
Modal information
#4401
:
#4421
G code (group01)
:
G code (group21)
#4507
D code
#4509
F code
#4511
H code
#4513
M code
#4514
Sequence number N
#4515
Program number O (*1)
#4519
S code
#4520
T code
Some groups are not used.
The above system variables are available only in the user macro interrupt program.
If they are used in other programs, program error (P241) will occur.
(*1) Programs are registered as files. When the program No. (file name) is read with #4515, the character string will
be converted to a value.
(Example 1)
The file name "123" is the character string 0×31, 0×32, 0×33, so the value will be (0×31-0×30)*100 + (0×320×30)*10 + (0×33-0×30) = 123.0.
Note that if the file name contains characters other than numbers, it will be "blank".
(Example 2)
If the file name is "123ABC", it contains characters other than numbers, so the result will be "blank".
IB-1501278-D
874
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Modal information affected by user macro interruption
If modal information is changed by the interrupt program, it is handled as follows after control returns from the interrupt program to the main program.
Returning with M99;
The change of modal information by the interrupt program is invalidated and
the original modal information is restored.
With interrupt type 1, however, if the interrupt program contains a move or miscellaneous function (MSTB) command, the original modal information is not restored.
Returning with M99P__ ;
The original modal information is updated by the change in the interrupt program even after returning to the main program. This is the same as in returning
with M99P__; from a program called by M98, etc.
Main program
being executed
Interrupt program
M96Pp1 ;
Op1 ;
User macro
interruption
signal (UIT)
(Modal change)
Modal before
interrupt is
restored.
M99(p2) ;
(With Pp2 specified)
Np2 ;
Modal modified
by interrupt
program remains
effective.
Modal information affected by user macro interruption
875
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.5 System Variables (Tool Information)
Tool management (#68000 - #68003)
Variable
No.
Item / Description
Data
range
#68000
Tool designation
method
Method to designate the tool to be read or written
1 to 3
1: In-use tool designation
2: Tool number designation
3: Tool management screen registration number designation
#68001
Tool selection No.
Designate the tool selection number that matches the
setting of "#68000".
#68003
#68000
Details of "#68001"
Data range
1
ATC magazine num- 0 to 5
ber
(Used only when the
ATC is added.)
2
Tool No. (T No.)
(Tool No. and compensation No. for
lathe system)
1 to 99999999
3
Tool management
screen registration
number
1 to Number of
managed tools
Top vacant registra- The tool number indicates a vacant line number.
tion number on tool 0: No vacant registration number
management screen 1 to 999: Vacant registration number
Attribute
-/W
Refer to -/W
the "Description"
column.
0 to 999
R/-
If you command to read data to a write only variable or write to a read only variable, a program error (P241) will
occur.
If a value exceeding the allowable range is issued, a program error (P35) will occur.
(1) Tool designation method (#68000), Tool selection number (#68001)
Substitute a value to the parameters "#68000" and "#68001" to designate the tool to be read and written with the
parameters "#68011" to "#68111".
The tool designation methods are classified into three types as shown below.
Tool designation method
Details
"#68000" setting value
In-use tool desig- Reads or writes tool management data of the 1
nation
tool in use.
ATC magazine No.
Tool number
designation
Tool No. (T No.)
Reads or writes tool management data desig- 2
nated with the tool number.
Tool manageReads or writes tool management data desig- 3
ment screen reg- nated with the registration number.
istration number
designation
IB-1501278-D
"#68001" setting value
876
Tool management screen registration number
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(a) In-use tool designation (#68000=1)
For the in-use tool, when the R register is checked in the order from "1" to "3" shown below, if the value designated in the R register is other than "0", it is judged to be the in-use tool number.
Tool life management spindle tool number in machining center system (R12200: 1st part system to
R12270: 8th part system)
ATC spindle tool number (R10620: magazine 1 to R10660: magazine 5)
T code data (R536)
"#68001" designates the ATC magazine number.
If ATC is not used, this item does not need to be designated.
The "#68001" setting value has the meanings shown below.
"#68001" setting value
Meaning
"0" or no "#680001" command
Magazine 1
1 to 5
Magazine 1 to magazine 5
Note
The in-use tool is determined when "#68000=1" or "#68001" is commanded.
To designate the tool which is exchanged after the in-use tool has been determined as an in-use tool,
command "#68000=1" or "#68001" again.
(b) Tool number designation (#68000=2)
"#68001" designates the tool number.
In the lathe system, designate the T code (tool number and tool compensation number).
(c) Tool management screen registration number designation (#68000=3)
"#68001" designates the tool management screen registration number (line number).
Note
If "#68000" is commanded multiple times, the last designation method will be valid.
"#68000" and "#68001" are valid until they are reset. When the power is turned ON or when the system is
reset, "0" is set.
When #68000 is 2, and when there are multiple tools which have the same tool number and the same tool
compensation number as the ones designated by "#68001", the tool that has been found first will be selected.
A program error (P245) will occur when:
"#68000" is not designated;
"#68000=1 ;" is commanded while the in-use tool number is set to "0";
"#68000=1 ;" is commanded while the in-use tool number is not registered on the tool management screen;
"#68000=2 ;" is commanded while a read/write command is issued using "#68011" to "#68111" without commanding "#68001";
a tool not registered on the tool management screen with "#68011" is designated during the "#68000=2 ;"
command;
a write command is issued with "#68011" during the "#68000=2 ;" command;
"#68000=3 ;" is commanded while a read/write command is issued using "#68011" to "#68111" without commanding "#68001";
"#68001=0 ;" is commanded.
877
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(2) Top vacant registration number on tool management screen (#68003)
Designating this value reads the top vacant registration number on the tool management screen with "#68003".
Use example:
Follow the procedure below to measure the compensation amount with the measurement macro, etc. and search
for and register a vacant registration number when registering a new tool.
999
[Measurement macro program]
:
#68000 = 3 ;
:
Measurement
#68001=#68003 ;
Searches for a vacant registration number (No.3 in the example above), and designates registration number 3.
#68011=999 ;
Sets "999" to the tool management data "tool number" of tool management screen
registration number 3.
Note
If no vacant registration number is found because all numbers are registered, "0" is set when "#68003" is
read out.
When "#68001=#68003;", "#68001" is set to "0", and a program error (P245) will occur.
IB-1501278-D
878
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Basic information ("#68011" to "#68023")
Variable No.
Item / Description
Data range
Attribute
#68011
Tool No.
0 to 99999999
#68012
Name
Eight one-byte alphanu- R/W
meric characters
R/W
#68013
Type
0: No setting
1: Ball end mill
2: Flat end mill
3: Drill
4: Radius end mill
5: Chamfering
6: Tapping
7: Face mill
51: Turning
52: Slotting
53: Thread cutting
54: Turning drill
55: Turning tap
0 to 7, 51 to 55
R/W
#68014
Usage
0: No setting
1: External diameter
2: Internal diameter
3: Face
0 to 3
R/W
#68015
Direction: hand/ro- <Mill tool, turning drill, turning tap>
tation
0: CW
1: CCW
2: CW
3 :CW
<Turning, slotting, thread cutting>
0: Right hand / Front
1: Left hand / Front
2: Right hand / Rear
3: Left hand / Rear
0 to 3
R/W
#68016
Call
0.0 to 999.9 (mm)
0.00 to 99.99 (inch)
R/W
#68017
Number of blades
0 to 9
R/W
#68018
Tool ID
Eight one-byte alphanu- R/W
meric characters
#68019
Supplementary information
0 to 65535
R/W
#68020
Conditions
0 to 65535
R/-
#68021
Mounting angle
0.0 to 359.999 (degree)
R/W
#68023
Comb-shaped cutter offset J
±9999.999 (mm)
±999.9999 (inch)
R/W
If a value exceeding the allowable range is issued, a program error (P35) will occur.
879
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(1) Tool No. ("#68011")
The registered tool cannot be registered. If a tool is registered, the operation will be performed as shown below.
Type
Operation performed when a registered tool is designated
Machining center sys- Life management I
tem
Life management II
Program error (P245)
Life management III
Program error (P245)
The life management specifications are invalid.
Program error (P245)
Life management I
Program error (P245)
Lathe system
Program error (P245)
Life management II
Can be registered.
The life management specifications are invalid.
Can be registered.
Example: When an attempt is made to change tool management data "tool number" of No.3 (3rd line) from "11"
to "1" in life management II of the machining center system, the setting is as follows.
#68000=3
Tool management screen registration number designation
#68001=3
Designates No. 3 (3rd line)
#68013=1
Tool No. 1 is already registered with No. 1 (1st line), causing a program error (P245).
(2) Tool name ("#68012"), Tool ID ("#68018"), Material ("#68053")
(a) Read
Reads data only with the variable No. designation of the DPRNT command.
Example 1: DPRNT [#68012] ; The tool name is read.
Example 2: #100=#68012 ;
A program error (P243) will occur.
(b) Write
A string can be designated by enclosing it in parentheses ( ).
Example 1: #68012=(MTOOL1) ;
Data is written up to the number of valid characters, and the rest is ignored.
Example 2: #68012=#0 ;
A string is cleared by writing "null" characters.
Example 3: #68012= MTOOL1 ;
If parentheses are omitted, a program error will occur.
(3) Type ("#68013") to tool nose point P ("#68111")
A program error will occur in the following case.
Operation
Operation result
Type ("#68013") to tool nose point P ("#68111") is read Program error (P245)
or written for the registration number with the tool number unspecified.
(4) Compensation amount ("#68103" to "#68111")
A program error will occur in the following case.
Operation
Operation result
The compensation amount ("#68103" to "#68111") is
Program error (P170)
read or written for the tool with the compensation number
unspecified.
IB-1501278-D
880
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(5) Tool life ("#68082" to "#68086")
A program error will occur in the following case.
Operation
Operation result
The tool life ("#68082" to "#68086") is read or written for Program error (P179)
the tool with the tool life group number unspecified in tool
life management I and II of the machining center system,
or in tool life management II of the lathe system.
Shape information ("#68031" to "#68040")
Variable No.
Item / Description
#68031 to #68039
Tool shapes A to I
#68040
Tool color
1: Gray
2: Red
3: Yellow
4: Blue
5: Green
6: Light blue
7: Purple
8: Pink
Data range
Attribute
Length:
0 to 9999.999 (mm)
0 to 999.9999 (inch)
Angle:
0 to 180.000 (degree)
R/W
1 to 8
R/W
If a value exceeding the allowable range is issued, a program error (P35) will occur.
Cutting conditions ("#68051" to "#68054")
Variable No.
Item / Description
Data range
Attribute
#68051
Spindle rotation speed S
0 to 99999999
R/W
#68052
Feedrate F
0 to 1000000 (mm/min)
0 to 100000 (inch/min)
R/W
#68053
Material
Four one-byte alphanumeric characters
R/W
#68054
Coolant M code
0 to 99999999
R/W
If a value exceeding the allowable range is issued, a program error (P35) will occur.
Additional information ("#68061" to "#68072")
Variable No.
Item / Description
Data range
Attribute
#68061 to #68066
Customize 1 to 6
±999999999 (*1)
R/W
#68067 to #68072
Customize 7 to 12
±9999.999 (*1)
R/W
(*1) For customize data 1 to 12, the data range varies depending on the data format.
If a value exceeding the allowable range is issued, a program error (P35) will occur.
881
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Tool life ("#68081" to "#68088")
Variable No.
Item / Description
Life management I
#68081
Group No. (0 to 99999999)
#68082
Status (0 to 2)
Life management II
Attribute
Life management III
(Not used)
R/W
R/W
#68083
Method (Ones digit: 0 to 2, 10,100s digit: 1 to 2)
R/W
#68084
Miscellaneous (0 to 65535)
R/W
#68085
Life time / Number of uses until life limit (0 to 4000 min. / 0 to 65000 sets)
R/W
#68086
Usage time / Number of uses (0 to 4000 min. / 0 to 65000 sets)
R/W
#68087
(Not used)
(Not used)
(Not used)
-/-
#68088
(Not used)
(Not used)
(Not used)
-/-
If an unused variable is commanded, a program error (P241) will occur.
 If a value exceeding the allowable range is issued, a program error (P35) will occur.
IB-1501278-D
882
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Compensation amount ("#68101" to "#68113")
Variable No.
Item / Description
Compensation type I
Compensation type II
Compensation type III
Attribute
#68101
No. H (0 to number of tool
offset sets)
No. H (0 to number of tool
offset sets)
Tool length compensation
No.
(0 to number of tool offset
sets)
R/W
#68102
(Not used)
No. D (0 to number of tool
offset sets)
Wear compensation No.
(0 to number of tool offset
sets)
R/W
#68103
Tool length
(±9999.999999 (mm)
±999.9999999 (inch))
Length dimension
(±9999.999999 (mm)
±999.9999999 (inch))
Tool length X
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
#68104
(Not used)
(Not used)
Tool length Z
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
#68105
(Not used)
(Not used)
Additional axis tool length
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
#68106
(Not used)
Length wear
(±9999.999999 (mm)
±999.9999999 (inch))
Wear X
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
#68107
(Not used)
(Not used)
Wear Z
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
#68108
(Not used)
(Not used)
Additional axis wear
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
#68109
(Not used)
Radius dimension
(±9999.999999 (mm)
±999.9999999 (inch))
Tool nose radius
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
#68110
(Not used)
Radius wear
(±9999.999999 (mm)
±999.9999999 (inch))
Radius wear
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
#68111
(Not used)
(Not used)
Tool nose point P
(0 to 9)
R/W
#68112
(Not used)
(Not used)
2nd additional axis tool
length
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
#68113
(Not used)
(Not used)
2nd additional axis wear
(±9999.999999 (mm)
±999.9999999 (inch))
R/W
If an unused variable is commanded, a program error (P241) will occur.
If a value exceeding the allowable range is issued, a program error (P35) will occur.
883
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.6 System Variables (Tool Compensation)
Detailed description
Tool compensation data can be read and set using the variable Nos.
Type 1
Type 2
#10001 to #10000+n
Variable number range
#2001 to #2000+n
○
○ (*1)
○ Z axis shape (*1)
Type 3
#11001 to #11000+n
#2201 to #2200+n
×
○ (*2)
○ Z axis wear (*2)
#16001 to #16000+n
#2401 to #2400+n
×
○ (*3)
○ Tool nose radius
shape (*3)
#17001 to #17000+n
#2601 to #2600+n
×
○ (*4)
○ Tool nose radius wear
(*4)
#135001 to #135000+n
-
×
×
○ X axis wear
#136001 to #136000+n
-
×
×
○ Y axis wear
#137001 to #137000+n
-
×
×
○ X axis shape
#138001 to #138000+n
-
×
×
○ Y axis shape
#230001 to #230000+n
-
×
×
○ Tool nose point
(*1) Length dimension
(*2) Length wear
(*3) Radius dimension
(*4) Radius wear
"n" in the table corresponds to the tool No. Maximum "n" value is the number of tool compensation sets.
The #10000s and #2000s are equivalent functions, however, the maximum value of "n" for #2000 order is "200".
When the number of tool offset sets is larger than "200", use the variables of #10000s.
The tool compensation data is configured as data with a decimal point in the same way as other variables.
When "# 10001=100;" is programmed, "100.000" is set in tool compensation data.
Programming example
Common variable
Tool compensation data
#101=100;
#10001=#101;
#102=#10001;
#101=100.0
H1=100.000
#102=100.0
(Example 1) Calculation and tool offset data setting
G28 Z0 T01. ;
Reference position return
#1
M06;
Tool change (Spindle T01)
#1=#5003 ;
Start point memory
G00 Z-500 ;
Rapid traverse to safe position
G31 Z-100. F100.;
Skip measurement
#10001=#5063-#1 ;
G00
H1
G31
Measurement distance calculation and tool
compensation data setting
#5063
Sensor
Note
(1) In (Example 1), no consideration is given to the delay in the skip sensor signal.
#5003 is the Z axis start point position and #5063 indicates the position at which the skip signal is input while
G31 is being executed in the Z axis skip coordinates.
IB-1501278-D
884
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.7 System Variables (Tool Life Management)
Detailed description
Definition of variable Nos.
(1) Group number designation
#60000
Assign the value to this variable No. to designate the group number of the tool life management data to be read
with parameters "#60001" to "#64700". If a group No. is not designated, the data of the group registered first is
read. This is valid until reset. When the tool life management III are provided, the group No. other than 1 cannot
be used.
(2) Tool life management system variable No. (Read)
#60001 to #64700
#|a|b|c|d|e|
| a | : "6" Fix (Tool life management)
| b | c | : Details of data classification
Data class
Details
Remarks
00
For control
Refer by data types
05
Group No.
Refer by registration No.
10
Tool No.
Refer by registration No.
15
Tool data flag
Refer by registration No.
20
Tool status
Refer by registration No.
25
Life data
Refer by registration No.
30
Usage data
Refer by registration No.
35
Tool length compensation data
Refer by registration No.
40
Tool radius compensation data
Refer by registration No.
45
Auxiliary data
Refer by registration No.
The group No. and life data are common for the group.
| d | e | : Registration No. or data type
Registration No.
1 to 200
Data type
Type
Details
1
Number of registered tools
2
Life current value
3
Tool selection No.
4
Number of remaining registered tools
5
Execution signal
6
Cutting time cumulative value (min)
7
Life end signal
8
Life prediction signal
885
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
List of variables
Variable
No.
Item
Type
Details
60001
Number of regis- Common to systered tools
tem
Total number of tools registered in each 0 to 200
group.
60002
Life current value For each group
(*1)
In-use tool usage time / number of uses 0 to 4000min.
Usage data of the spindle tool or in-use 0 to 65000 sets
tool (#60003)
60003
Tool selection No.
In-use tool registration number
0 to 200
Registration number of the spindle tool
(the first tool of ST:1 when the spindle tool
is not data of the designated group, the
first tool of ST:0 when ST:1 is not defined,
or the last tool when all tools have
reached the end of their lives)
60004
Number of remaining registered tools
No. of first registered tool that has not
reached its life.
60005
Execution signal
"1" when this group is used in the pro0/1
gram being executed.
"1" when the group number of spindle tool
data matches that of the designated
group
60006
Cutting time cumulative value
(min)
Indicates the time that this group is used (Not used)
in the program being executed.
60007
Life end signal
0/1
"1" when lives of all tools in this group
have expired.
"1" when all registered tools in the designated group reach the end of their lives.
60008
Life prediction
signal
"1" when a new tool is selected with the 0/1
next command in this group.
"1" when there are no tools in use (ST: 1)
while there is an unused tool (ST: 0) in the
designated group.
(*1) Designate group number "#60000".
IB-1501278-D
Data range
886
0 to 200
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Variable
No.
Item
Type
Details
For each group / This group's No.
registration number (*2)
Tool No. of the designated tool
Data range
60500
+***
Group No.
1 to 99999999
61000
+***
Tool No.
61500
+***
Tool data
Flag
Parameters such as usage data count
0 to FF (H)
method, length compensation method,
tool radius compensation method
bit0,1: Tool length compensation data format
bit2,3: Tool radius compensation data format
0: Compensation number method
1: Incremental value compensation
amount method
2: Absolute value compensation amount
method
bit4,5: Tool life management method
0: Usage time
1: Number of mounts
2: Number of uses
62000
+***
Tool status
Tool usage state
0: Unused tool
1: In-use tool
2: Normal life tool
3: Tool error 1
4: Tool error 2
0 to 4
62500
+***
Life data
Life time or No. of lives for each tool
0 to 4000 min.
0 to 65000 sets
63000
+***
Usage data
Usage time or No. of uses for each tool
0 to 4000 min.
0 to 65000 sets
63500
+***
Tool length compensation
Data
Length compensation data set as com- Compensation No. 0
pensation No., absolute value compensa- and after
Number of tool comtion amount or increment value
pensation sets
compensation amount method.
Absolute value compensation amount
±999.999 (*1)
Incremental value
compensation amount
±999.999(*1)
64000
+***
Tool radius compensation
data
Radius compensation data set as com- Compensation No. 0
pensation No., absolute value compensa- and after
tion amount or increment value
Number of tool comcompensation amount method.
pensation sets
Absolute value compensation amount
±999.999 (*1)
Incremental value
compensation amount
±999.999(*1)
64500
+***
Auxiliary data
Spare data
1 to 99999999
0 to 65535
(*2) Designate group number "#60000" / registration number***.
However, group number / method / life is data common to groups.
887
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Program example
(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 ;
Designates the group No. of the life data to be read.
Designated group No. is valid until reset.
#104 = #60004 ;
Reads the remaining number of registered tools in group 10.
#105 = #60005 ;
Reads the signal being executed in group 10.
#111 = #61001 ;
Reads the group 10, #1 tool No.
#112 = #62001 ;
Reads the group 10, #1 status.
#113 = #61002 ;
Reads the group 10, #2 tool No.
%
(2) When the group number is not designated:
#104 = #60004 ;
Reads the remaining number of registered tools in the first registered group.
#111 = #61001 ;
Reads the #1 tool No. in the first registered group.
%
(3) When an unregistered group number is designated (group 9999 does not exist):
#60000 = #9999 ;
Designates the group No.
#104 = #60004 ;
#104 = -1.
(4) When an unused registration number is designated (15 tools for group 10):
#60000 = 10 ;
Designates the group No.
#111 = #61016 ;
#111 = -1.
(5) When a registration number not defined in the specifications is designated:
#60000 = 10 ;
#111 = #61017 ;
Program error (P241)
(6) When tool life management data is registered with G10 command after group No. is designated.
#60000 = 10 ;
Designates the group No.
G10 L3 ;
Starts the life management data registration.
The group 10 life data is registered through the commands from G10 to G11.
P10 LLn NNn ;
10 is the group No., Ln is the life per tool, Nn is the method.
TTn ;
"Tn" is the tool No.
:
G11;
Registers data in group 10 with the G10 command.
#111 = #61001 ;
Reads the group 10, #1 tool No.
G10 L3 ;
Starts the life management data registration.
The life data other than group 10 is registered from G10 to G11.
P1 LLn NNn ;
1 is the group No., "Ln" is the life per tool, "Nn" is the method.
TTn ;
"Tn" is the tool No.
:
IB-1501278-D
G11;
Registers the life data with the G10 command.
(The registered data is deleted.)
#111 = #61001 ;
Group 10 does not exist. #111 = -1.
888
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Precautions
(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. is designated and the tool life management system variable is commanded, "-1"
will be read as the data.
(3) If an unused registration No. tool life management system variable is commanded, "-1" will be read as the data.
(4) Once commanded, the group No. is valid until NC reset.
(5) When the tool life management III are provided, the group No. other than 1 cannot be used.
889
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.8 System Variables (Workpiece Coordinate Offset)
Detailed description
By using variable Nos #5201 to #532n, it is possible to read out the workpiece coordinate system compensation data
or to substitute values.
Note
(1) The number of controllable axes varies depending on the specifications.
The last digit of the variable No. corresponds to the control axis No.
Coordinate name 1st axis
External workpiece
offset
#5201
2nd
axis
#5202
3rd axis 4th axis
#5203
..... nth axis
#5204
Remarks
.....
#520n External workpiece offset specifications are required.
G54
#5221
#5222
#5223
#5224
.....
G55
#5241
#5242
#5243
#5244
.....
#522n Workpiece coordinate system offset
#524n specifications are required.
G56
#5261
#5262
#5263
#5264
.....
#526n
G57
#5281
#5282
#5283
#5284
.....
#528n
G58
#5301
#5302
#5303
#5304
.....
#530n
G59
#5321
#5322
#5323
#5324
.....
#532n
Y
(Example 1)
N1
- 90.
N1 G28 X0 Y0 Z0 ;
N2 #5221=-20. #5222=-20. ;
N3 G90 G00 G54 X0 Y0 ;
- 20.
W1
N10 #5221=-90. #5222=-10. ;
N11 G90 G00 G54 X0Y0 ;
X
N3
N11
- 10.
- 20.
W1
G54 workpiece coordinate
system defined by N10
G54 workpiece coordinate
system defined by N2
M02 ;
Basic machine coordinate
External workpiece offset
(Example 2)
G55
Coordinate
system before
change
G54
W2 (G55)
W1 (G54)
N100 #5221=#5221+#5201 ;
#5222=#5222+#5202 ;
#5241=#5241+#5201 ;
#5242=#5242+#5202 ;
#5201=0 #5202=0;
Basic machine coordinate system
M
G55
G54
Coordinate
system after
change
W2 (G55)
W1 (G54)
This is an example where the external workpiece compensation values are added to the workpiece coordinate (G54,
G55) system compensation values without changing the position of the workpiece coordinate systems.
IB-1501278-D
890
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.9 System Variables (Extended Workpiece Coordinate Offset)
Detailed description
#7001 to #890n (48- or 96-set specification)
By using variable Nos #7001 to #890n, it is possible to read out the extended workpiece coordinate system compensation data or to substitute values.
Note
(1) The system variables #7001 to #890n are available up to the valid number of sets. (You can use them for the
300-set specification also, but there are system variables corresponding to up to 96 sets only.) The last digit of
the variable No. corresponds to the control axis No.
Table 1 of syst to em variables for extended workpiece coordinate system compensation (n=1 to 8)
1st axis to nth
axis
1st axis to nth
axis
1st axis to nth
axis
1st axis to nth
axis
P1
#7001 to #700n
P25 #7481 to #748n
P49 #7961 to #796n
P73 #8441 to #844n
P2
#7021 to #702n
P26 #7501 to #750n
P50 #7981 to #798n
P74 #8461 to #846n
P3
#7041 to #704n
P27 #7521 to #752n
P51 #8001 to #800n
P75 #8481 to #848n
P4
#7061 to #706n
P28 #7541 to #754n
P52 #8021 to #802n
P76 #8501 to #850n
P5
#7081 to #708n
P29 #7561 to #756n
P53 #8041 to #804n
P77 #8521 to #852n
P6
#7101 to #710n
P30 #7581 to #758n
P54 #8061 to #806n
P78 #8541 to #854n
P7
#7121 to #712n
P31 #7601 to #760n
P55 #8081 to #808n
P79 #8561 to #856n
P8
#7141 to #714n
P32 #7621 to #762n
P56 #8101 to #810n
P80 #8581 to #858n
P9
#7161 to #716n
P33 #7641 to #764n
P57 #8121 to #812n
P81 #8601 to #860n
P10 #7181 to #718n
P34 #7661 to #766n
P58 #8141 to #814n
P82 #8621 to #862n
P11 #7201 to #720n
P35 #7681 to #768n
P59 #8161 to #816n
P83 #8641 to #864n
P12 #7221 to #722n
P36 #7701 to #770n
P60 #8181 to #818n
P84 #8661 to #866n
P13 #7241 to #724n
P37 #7721 to #772n
P61 #8201 to #820n
P85 #8681 to #868n
P14 #7261 to #726n
P38 #7741 to #774n
P62 #8221 to #822n
P86 #8701 to #870n
P15 #7281 to #728n
P39 #7761 to #776n
P63 #8241 to #824n
P87 #8721 to #872n
P16 #7301 to #730n
P40 #7781 to #778n
P64 #8261 to #826n
P88 #8741 to #874n
P17 #7321 to #732n
P41 #7801 to #780n
P65 #8281 to #828n
P89 #8761 to #876n
P18 #7341 to #734n
P42 #7821 to #782n
P66 #8301 to #830n
P90 #8781 to #878n
P19 #7361 to #736n
P43 #7841 to #784n
P67 #8321 to #832n
P91 #8801 to #880n
P20 #7381 to #738n
P44 #7861 to #786n
P68 #8341 to #834n
P92 #8821 to #882n
P21 #7401 to #740n
P45 #7881 to #788n
P69 #8361 to #836n
P93 #8841 to #884n
P22 #7421 to #742n
P46 #7901 to #790n
P70 #8381 to #838n
P94 #8861 to #886n
P23 #7441 to #744n
P47 #7921 to #792n
P71 #8401 to #840n
P95 #8881 to #888n
P24 #7461 to #746n
P48 #7941 to #794n
P72 #8421 to #842n
P96 #8901 to #890n
891
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
#101001 to #11595n (300-set specification)
By using variable Nos #101001 to #11595n, it is possible to read out the extended workpiece coordinate system
compensation data or to substitute values.
Note
(1) The system variables #101001 to #11595n are available when the 300-set specification is enabled. If you use
the system variables #101001 to #11595n when the 300-set specification is disabled, the program error (P241)
will occur.
The last digit of the variable No. corresponds to the control axis No.
Table 2 of syst to em variables for extended workpiece coordinate system compensation (n=1 to 8)
1st axis to nth axis
P1
#101001 to #10100n
P2
#101051 to #10105n
P3
#101101 to #10110n
P4
#101151 to #10115n
P5
#101201 to #10120n
P6
#101251 to #10125n
P7
#101301 to #10130n
P8
#101351 to #10135n
:
:
:
:
P298 #115851 to #101585n
P299 #115901 to #101590n
P300 #118951 to #101595n
22.10 System Variables (External Workpiece Coordinate Offset)
Detailed description
The workpiece coordinate system compensation amount can be read using variables #2501 and #2601.
By substituting a value in these variable Nos., the workpiece coordinate system compensation amount can be
changed.
System variable No.
IB-1501278-D
External workpiece coordinate system offset amount
#2501
1st axis
#2601
2nd axis
892
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.11 System Variables (Position Information)
Detailed description
Using variable Nos. #5001 to #5160+n, it is possible to read the end point coordinates, machine coordinates, workpiece coordinates, skip coordinates, tool position compensation amount and servo deviation amounts in the last
block.
Position information
Axis No.
1
2
3
...
n
Reading during
movement
End point coordinate of the last block
#5001
#5002
#5003
...
#5000+n
Valid
Machine coordinate
#5021
#5022
#5023
...
#5020+n
Invalid
Workpiece coordinate
#5041
#5042
#5043
...
#5040+n
Invalid
#5061
#5062
#5063
...
#5060+n
Valid
#5161
#5162
#5163
...
#5160+n
Skip coordi- Parameter 0
nate
"#8713"
Workpiece coordinate system
1
Feature coordinate /
Workpiece installation coordinate
Feature coordinate/Workpiece installation coordinate
Tool position compensation amount
#5081
#5082
#5083
...
#5080+n
Invalid
Servo deviation amount
#5101
#5102
#5103
...
#5100+n
Valid
Macro interruption stop Start point coordinates
#5121
#5122
#5123
...
#5120+n
Valid
Macro interruption stop End point coordinates
#5141
#5142
#5143
...
#5140+n
Valid
Note
The number of axes which can be controlled differs according to the specifications.
The last digit of the variable No. corresponds to the control axis No.
Basic machine coordinate system
M
Workpiece coordinate system W
G00
G01
Read
command
[End point
coordinates]
Workpiece
coordinate
system
W
[Workpiece
coordinates]
[Machine
coordinates]
M
893
Machine
coordinate
system
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(1) The position of the end point coordinates is position in the workpiece coordinate system.
(2) The end point coordinates, skip coordinates and servo deviation amounts can be read even during movement.
However, it must first be checked that movement has stopped before reading the machine coordinates and the
workpiece coordinates.
(3) The skip coordinates indicates the position where the skip signal is turned ON in the G31 block. If the skip signal
does not turn ON. they will be the end point position.
(For further details, refer to the section on Automatic Tool Length Measurement.)
Read
Command
Gauge,
etc.
Skip coordinates value
(4) The end point coordinates indicate the tool nose position regardless of the tool compensation and other such
factors. On the other hand, the machine coordinates, workpiece coordinates and skip coordinates indicate the
tool reference point position with consideration given to tool compensation.
Skip signal
G31
F (feedrate)
Workpiece
coordinate
system
W
[Input coordinates of skip signal]
[Workpiece
coordinates]
M
[Machine coordinates]
For "●", check stop and then proceed to read.
For "○", reading is possible during movement.
IB-1501278-D
894
Machine
coordinate
system
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Note
Skip coordinate value is the position on the workpiece coordinate system, feature coordinate system, or
workpiece installation coordinate system.
For #5061 to #5060+n, when the parameter "#8713 Skip coord. Switch" is set to "0", it is the position on
the workpiece coordinate system, and when set to "1", it is the position on the feature coordinate system
or workpiece installation coordinate system.
For #5161 to #5160+n, it is the position on the workpiece coordinate system while the inclined surface machining command or workpiece installation compensation is OFF.
For feature coordinate system, the skip coordinate value is on "the actual position where the tool length
compensation is included " regardless of the setting of the parameter "#1287 ext23/bit1, bit2 (inclined surface coordinate display)".
The values in the work installation coordinate system can be read for the orthogonal axes for 5-axis machining that have been set by the rotary axis configuration parameters. For the other axes, the values in the
workpiece coordinate system are read.
When the workpiece installation error compensation is OFF, the values in the skip coordinate system are
read for all the axes.
The coordinate value in variable Nos. #5061 to #5060+n or #5161 to #5160+n memorize the moments when
the skip input signal during movement was input and so they can be read at any subsequent time.
For details, refer to "21.2 Skip Function ; G31".
When the parameter "#1366 skipExTyp" (Multi-part system simultaneous skip command) is set to "1", the
skip coordinate value will be "0", even if G31 command is given in one-part system or G31 command is
given in only one of the multiple part systems.
(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
<Local variable>
O9031
F(#9)
200
X(#24)100.000
Y(#25)100.000
Z(#26) - 10.000
Main program
G65 P9031 X100. Y100. Z-10. F200; To subprogram
<Common variable>
#101 87.245
#102 87.245
#103 123.383
Skip input
Start point
N3
Z N8
N4
N1 #180=#4003;
N2 #30=#5001 #31=#5002;
N3 G91 G01 Z#26 F#9;
N4 G31 X#24 Y#25 F#9;
N5 G90 G00 X#30 Y#31;
N6 #101=#30- #5061 #102=#31- #5062;
N7 #103=SQR #101*#101+#102*#102 ;
N8 G91 G01Z - #26;
N9 IF #180 EQ 91 GOTO 11;
N10 G90;
N11 M99;
#102
#103
N5
#101
Y
X
#101
X axis measurement amount N1
G90/G91 modal recording
#102
Y axis measurement amount N2
X, Y start point recording
#103
Measurement linear segment N3
amount
Z axis entry amount
N4
X, Y measurement (Stop at skip input)
#5001
X axis measurement start
point
N5
Return to X, Y start point
#5002
Y axis measurement start
point
N6
X, Y measurement incremental value calculation
N7
Measurement linear segment calculation
#5061
X axis skip input point
N8
Z axis escape
#5062
Y axis skip input point
N9,N10
G90/G91 modal return
N11
Main program return
895
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(Example 2) Reading of skip input coordinates
(a) Skip signal
-X
- 150
- 25
- 75
N1 G91 G28 X0 Y0;
N2 G90 G00 X0 Y0;
N3 X0 Y- 100.;
N4 G31 X - 150. Y - 50. F80;
N5 #111=#5061#112=#5062;
N6 G00 Y0;
N7 G31 X0;
N8 #121=#5061#122=#5062;
N9 M02;
Y
X
- 50
- 75
- 100
-Y
(a)
#111=-75.+ε
#112=-75.+ε
#121=-25.+ε
#122=-75.+ε
ε is the error caused by response delay. (For details, refer to "21.2 Skip Function ; G31".)
#122 is the N4 skip signal input coordinates as there is no Y command at N7.
IB-1501278-D
896
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.12 System Variables (Alarm)
Detailed description
The NC unit can be forcibly set to the alarm state by using variable No. #3000.
#3000= 70 (CALL #PROGRAMMER #TEL #530) ;
70
Alarm No.
CALL #PROGRAMMER #TEL #530
Alarm message
Any alarm number from 1 to 9999 can be specified.
The alarm message must be written in 31 or less characters.
NC alarm 3 signal (program error) is output.
The "P277: MACRO ALM MESG" appears in the <ALARM> column on "DIAG 1." screen and the alarm message "
(CALL #PROGRAMMER #TEL #530)" and the alarm No. (70) will appear in the <Operator massage>.
Example of program (alarm when #1 = 0)
<ALARM> DIAG 1.
IF[#1 NE 0]GOTO 100 ;
#3000=70 ( CALL #PROGRAMMER #TEL #530 );
Stops with
NC alarm
N100
P277: MACRO ALM MESG
<Operator message>
CALL #PROGRAMMER #TEL #530 70
Note
(1) If zero or any number greater than 9999 is specified for the alarm No., the number will be invalid and it will not
display. However, the operation will be in the alarm status, and the specified alarm message will appear.
(2) Specify the alarm message by enclosing it in round parentheses after the alarm number. If there is any character
string between the number and the alarm message enclosed in round parentheses, the alarm message will be
invalid and it will not display. However, the operation will be in the alarm status, and the specified alarm No. will
appear.
(3) When 32 or more characters are specified for the alarm message, characters after the 32nd character will not
display.
(4) Spaces included in an alarm message character string are ignored, and will not display. To split the character
string insert a character such as "." (period).
897
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.13 System Variables (Message Display and Stop)
Detailed description
By using variable No. #3006, the operation stops after the previous block is executed and, if message display data
is commanded, the corresponding message and the stop No. will be indicated on the operator message area.
#3006 = 1( TAKE FIVE );
1 to 9999
Stop No. (When Nos. other than 1 - 9999 are set, the command will be invalidated.)
TAKE FIVE
Message (Nothing will be displayed if no message is designated.)
The message should be written in 31 or less characters and should be enclosed by round parentheses.
22.14 System Variables (Cumulative Time)
Detailed description
The integrating time during the power is turned ON or the automatic start is running, can be read or values can be
substituted by using variable Nos. #3001 and #3002.
Type
Variable No.
Unit
Power-on
3001
1ms
Automatic start
3002
Contents when power Initialization of conis switched on
tents
Same as when power
is switched off
Substitute values to
variables
Count condition
At all times while power is
ON
In-automatic start
The cumulative time is reset to "0" at approximately 2.44 × 1011ms (approximately 7.7 years).
O9010
G65P9010T (allowable time) ms ;
To sub-program
#3001=0 ;
WHILE #3001LE#20 DO1 ;
END1 :
M99 ;
Entered in local variable
#20
Local variable
T#20
IB-1501278-D
898
Allowable time portion: DO1 to END1 is
repeated and when allowable time is
reached, operations jumps to M99.
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.15 System Variables (Time Read Variables)
Detailed description
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.
(2) By adding parameter #1273/bit1, the unit (millisecond unit/hour unit) of the system variable "#3002" (cumulative
time during automatic start) can be changed.
Variable
No.
Details
#3001
The cumulative time during power ON can be read and the value can be substituted.
The unit is millisecond.
#3002
The cumulative time during automatic start can be read and the value can be substituted.
The unit can be changed between millisecond and hour with parameter #1273/bit1.
#3011
The current date can be read and written.
YYYY/MM/DD is read as a YYYYMMDD value.
If a value "YYYYMMDD" is written, it is set to YY/MM/DD (the year is indicated by the last two
digits).
Command range for year/ Year (YYYY): 2000 to 2099
month/day setting
Month (MM): 1 to 12
Day (DD): 1 to maximum number of days in one month
#3012
The current time can be read and written.
HH/MM/SS is read as a value "HHMMSS".
When a value "HHMMSS" is written in, it will be set as HH/MM/SS.
Command range for time
setting
Hour (HH): 0 to 23 (24-hour system)
Minute (MM): 0 to 59
Second (SS): 0 to 59
(3) The cumulative time is reset to "0" at approximately 2.44 × 1011ms (approximately 7.7 years).
(4) If a negative value or a value exceeding 244335917226 milliseconds (67871.08811851 hours for #3002 time
designation) is set for the cumulative time, a program error (P35) will occur.
(5) If a value exceeding the command range is set for the date or time, a program error (P35) will occur.
(6) Always set the month/date/hour/minute/second as a two-digit value when setting the date and time.
If the value only has one digit, always add 0.
(February 14, 2001 => #3011= 20010214 ;, etc.)
899
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Program example
Example of use (#3011, #3012)
(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 ; (The command value cumulative time #2: time is set to 18:13:06.)
(Example 3) By setting the following program example, the machining start/end time (year/month/date/hour/minute/
second) can be viewed.
#100=#3011 ; => Machining start year/month/date
#101=#3012 ; => Machining start hour/minute/second
G28 X0 Y0 Z0 ;
G92 ;
G0 X50. ;
:
:
:
#102=#3011 ;
#103=#3012 ;
M30 ;
=> Machining end year/month/date
=> Machining end hour/minute/second
Precautions
Limits and precautions for using time reading variable
(1) #3011 reads the date as an eight-digit value, so the difference between the two dates read in will not be the difference of days.
(2) #3012 reads the time as a six-digit value, so the difference between the two times read in will not be the difference
of hours.
IB-1501278-D
900
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.16 System Variables (Machining Information)
Detailed description
Contents of variable No. "#3003"
By substituting the values below in variable No. #3003, it is possible to suppress single block stop in the subsequent
blocks or to advance to the next block without waiting for the miscellaneous function (M, S, T, B) finish (FIN) signal.
#3003/bit
Function
Set to "1"
Inhibits stop.
Set to "0"
0
Inhibition of single block stop
1
Inhibition of miscellaneous function Does not wait for the signal. Waits for the signal.
complete signal waiting
2
Prohibition of program check reverse run
Prohibits reverse run.
Does not inhibit stop.
Allows reverse run.
3
(Not used)
-
-
4
(Not used)
-
-
5
(Not used)
-
-
6
(Not used)
-
-
7
(Not used)
-
-
Note
(1) Variable No. #3003 is set to zero by reset.
Contents of variable No. "#3004"
By substituting the values below in variable No. #3004, it is possible to make the feed hold, feedrate override and
G09 functions either valid or invalid in the subsequent blocks.
#3004/bit
Function
Set to "1"
Set to "0"
0
Automatic operation pause OFF
Invalid
Valid
1
Cutting override OFF
Invalid
Valid
2
G09 check OFF
Invalid
Valid
3
(Not used)
-
-
4
Dry run invalid
Invalid
Valid
5
(Not used)
-
-
6
(Not used)
-
-
7
(Not used)
-
-
Note
(1) Variable No. #3004 is set to zero by reset.
(2) The functions are valid when the above bits are 0, and invalid when they are 1.
(3) When the feed hold is set to invalid with #3004, the following will occur when the feed hold switch is pressed.
During thread cutting, block stop will be carried out at the end of the next block of the block where thread cutting
is completed.
During tapping with tap cycle, block stop will be carried out after the operation of R point return.
In the case other than above, block stop will be carried out after the termination of the currently executing block.
901
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.17 System Variables (Reverse Run Information)
Detailed description
Variable No.
Details
Range
#31100
Number of available
blocks for reverse run
Usage
+1 added number of the blocks that retained the reverse run information while the "Reverse run control mode" signal was ON
0 to 201
#31101
Counter of available
blocks for reverse run
Number of available blocks for reverse run (value of
#31100) when the "Reverse run" signal is turned
ON to start.
Turns "0" when the forward run has been executed
for all the blocks.
Displays "0" during normal operation.
0 to 201
22.18 System Variables (Number of Workpiece Machining Times)
Detailed description
The number of workpiece machining times can be read using variables #3901 and #3902.
By substituting a value in these variable Nos., the number of workpiece machining times can be changed.
Variable No.
Type
Data setting range
#3901
Number of workpiece machining times
0 to 999999
#3902
Maximum workpiece value
Note
(1) The number of workpiece machining times must be a positive value.
22.19 System Variables (Mirror Image)
Detailed description
By reading variable No. #3007, it is possible to ascertain the status of mirror image of the each axis at the point.
The axis corresponds to each bit of "#3007" as shown below.
0: Mirror image invalid
1: Mirror image valid
The number of axes varies depending on your machine's specifications.
#3007
Bit
15
14
13
12
11
10
9
8
nth axis
IB-1501278-D
902
7
6
5
4
3
2
1
0
8
7
6
5
4
3
2
1
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.20 System Variables (Coordinate Rotation Parameter)
Detailed description
The following variables can be read by the system variables of the variable command.
When an arbitrary axis is exchanged, this data is read in the axis arrangement that is set after the axis exchange
has been completed.
Note that writing is not possible onto these variables.
Variable No.
Parameter No.
Description
#30060
#8621
Control axis No. on the coordinate rotation plane (horizontal axis)
#30061
#8622
Control axis No. on the coordinate rotation plane (vertical axis)
#30062
#8623
Coordinate rotation center (horizontal axis)
#30063
#8624
Coordinate rotation center (vertical axis)
#30064
#8627
Coordinate rotation angle
#30065
-
SIN data for the coordinate rotation angle [SIN(Coordinate rotation angle)]
#30066
-
COS data for the coordinate rotation angle [COS(Coordinate rotation angle)]
#30067
#8625
Coordinate rotation vector (horizontal axis)
#30068
#8626
Coordinate rotation vector (vertical axis)
903
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.21 System Variables (Rotary Axis Configuration Parameter)
Detailed description
The following rotary axis configuration parameters can be read by the system variables of the variable command.
By substituting a value in these variables, the setting value of rotary axis configuration parameter can be changed.
Variable No.
IB-1501278-D
Parameter
#31001
#7903 G92_CRD
Origin zero set coordinate selection
#31002
#7904 NO_TIP
Tool handle feed function selection
#31003
#7920 SLCT_T1
Rotary axis selection (Base-side rotary axis of tool rotation type)
#31004
#7923 DIR_T1
Rotation direction (Base-side rotary axis of tool rotation type)
#31005
#7924 COFST1H
Horizontal axis rotation center offset (Base-side rotary axis of tool rotation type)
#31006
#7925 COFST1V
Vertical axis rotation center offset (Base-side rotary axis of tool rotation
type)
#31007
#7926 COFST1T
Height axis rotation center offset (Base-side rotary axis of tool rotation
type)
#31008
#7930 SLCT_T2
Rotary axis selection (Tool-side rotary axis of tool rotation type)
#31009
#7933 DIR_T2
Rotation direction (Tool-side rotary axis of tool rotation type)
#31010
#7934 COFST2H
Horizontal axis rotation center offset (Tool-side rotary axis of tool rotation type)
#31011
#7935 COFST2V
Vertical axis rotation center offset (Tool-side rotary axis of tool rotation
type)
#31012
#7936 COFST2T
Height axis rotation center offset (Tool-side rotary axis of tool rotation
type)
#31013
#7940 SLCT_W1
Rotary axis selection (Base-side rotary axis of table rotation type)
#31014
#7943 DIR_ W1
Rotation direction (Base-side rotary axis of table rotation type)
#31015
#7944 COFSW1H
Horizontal axis rotation center offset (Base-side rotary axis of table rotation type)
#31016
#7945 COFSW1V
Vertical axis rotation center offset (Base-side rotary axis of table rotation
type)
#31017
#7946 COFSW1T
Height axis rotation center offset (Base-side rotary axis of table rotation
type)
#31018
#7950 SLCT_W2
Rotary axis selection (Workpiece-side rotary axis of table rotation type)
#31019
#7953 DIR_W2
Rotation direction (Workpiece-side rotary axis of table rotation type)
#31020
#7954 COFSW2H
Horizontal axis rotation center offset (Workpiece-side rotary axis of table rotation type)
#31021
#7955 COFSW2V
Vertical axis rotation center offset (Workpiece-side rotary axis of table
rotation type)
#31022
#7956 COFSW2T
Height axis rotation center offset (Workpiece-side rotary axis of table rotation type)
#31023
#7912 NO_MANUAL
Selection of manual feed for 3-dimensional
904
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.22 System Variables (Normal Line Control Parameter)
Detailed description
The normal line control parameter can be read or written using variable Nos. "#1900" and "#1901".
Variable No.
Details
#1900
#8041
C-rot.R (Data with decimal point)
#1901
#8042
C-ins.R (Data with decimal point)
905
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.23 System Variables (Parameter Reading)
Function and purpose
Parameter data can be read in with the system variables.
Variable No.
Application
#100000
Parameter No. designation
#100001
Part system No. designation
#100002
Axis No./spindle No. designation
#100010
Parameter value read
Detailed description
The parameter values are read in with the following four blocks using these four system variables.
#100000 = 1001 ;
Designates the parameter No.
#100001 = 1 ;
Designates the part system No.
#100002 = 1 ;
Designates the axis No./spindle No.
#100 = #100010;
Reads the parameter value.
Parameter No. designation (#100000)
The parameter to be read in is designated by substituting the parameter No. in this system variable.
If the parameters are read without designating this No., the parameters will be read in the same manner as if the
minimum parameter No. (#1) is designated. Once designated, the setting is held until the parameter No. is designated again or until it is reset.
A program error (P39) will occur if a nonexistent parameter No. is set.
Part system No. designation (#100001)
(1) System variable for part system No. designation
The part system No. of the parameter to be read in is designated by substituting an index value for this system
variable. This designation will be ignored when reading in parameters that are not in a specific part system.
If the parameters are read without designating this No., the parameters will be read in the same manner as if the
index value 0 (part system in running program) is designated. Once designated, the setting is held until the part
system No. is designated again or until it is reset.
A program error (P39) will occur if a nonexistent part system No. is set.
(2) Index values
IB-1501278-D
Index values
Parameters per part system
0
Running part system
1
1st part system
2
2nd part system
3
-
:
-
9
-
10
PLC axis
906
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Axis No. /spindle No. designation (#100002)
(1) System variable for axis or spindle No. designation
The axis or spindle No. of the parameter to be read in is designated by substituting an index value for this system
variable. This designation will be ignored when reading in parameters that are neither for a specific axis nor spindle.
The axis parameter index value is the value set in the part system designated with #100001.
Thus, when reading parameters that are not in the designated part system, the part system No. must be designated again.
The spindle parameter's index value is not affected by the part system designation.
If the parameters are read without designating this number, the parameters will be read in the same manner as
when the index value 1 (1st axis/1st spindle in the designated part system) is designated. Once designated, the
setting is held until the index value is designated again or until it is reset.
A program error (P39) will occur if a nonexistent axis/spindle No. is set.
(2) Index values
Index values
Axis parameter
Spindle parameter
1
1st axis
1st spindle
2
2nd axis
2nd spindle
3
3rd axis
3rd spindle
4
4th axis
4th spindle
5
5th axis
-
6
6th axis
-
Reading the parameters (#100010)
The designated parameter data is read with this system variable.
Data to be read as follows, depending on the parameter type.
Type
Read in data
Numeric value The values displayed on the Parameter screen are output.
Text
ASCII codes are converted into decimal values.
907
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Program example
(1) To read the parameter "#1002 axisno (number of axes)" for each part system:
#100000 = 1002 ;
Designates [#1002].
#100001 = 1 ;
Designates [1st part system].
#101 = #100010;
Reads the number of axes in 1st part system.
#100000 = 1002 ;
Designates [#1002]. (can be omitted since parameter No. is same)
#100001 = 2 ;
Designates [2nd part system].
#102 = #100010;
Reads the number of axes in 2nd part system.
#100001 = 5 ;
Designates [5th part system]. (The program error (P39) will occur.)
#100001 = 10 ;
Designates [PLC axis].
#110 = #100010;
Reads the number of PLC axes.
(2) To read the axis parameter "#2037 G53ofs (#1 reference position)":
[Conditions]
#2037 G53ofs
1 part systems
2 part systems
<1st axis>
<2nd axis>
<1st axis>
<2nd axis>
100.000
200.000
300.000
400.000
[1st part system program]
#100002 = 1 ;
Designates [1st axis].
#100000 = 2037 ;
Designates [#2037].
#101 = #100010;
Reads the [#1 reference point] for the 1st axis.
(#101=100.000)
#100002 = 2 ;
Designates [2nd axis].
#102 = #100010;
Reads the [#2 reference point] for the 1st axis.
(#102=200.000)
#100001 = 2 ;
Designates [2nd part system].
#100002 = 1 ;
Designates [1st axis].
#201 = #100010;
Reads the [#2 reference position] for the 1st axis in the 1st part system.
(#201=300.000)
[2nd part system program]
#100002 = 1 ;
Designates [1st axis].
IB-1501278-D
#100000 = 2037 ;
Designates [#2037].
#101 = #100010;
Reads the [#1 reference point] for the 1st axis.
(#101=300.000)
#100002 = 2 ;
Designates [2nd axis].
#102 = #100010;
Reads the [#2 reference point] for the 1st axis.
(#102=400.000)
#100001 = 1 ;
Designates [1st part system].
#100002 = 1 ;
Designates [1st axis].
#201 = #100010;
Reads the [#1 reference position] for the 1st axis in the 1st part system.
(#201=100.000)
908
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(3) To read the parameter for each part system, axis, or spindle:
#100002 = 1 ;
Designates [1st spindle].
#100000 = 3001 ;
Designates [#3001].
#101 = #100010;
Reads the [#3001 slimt1 (Number of limit rotation gears 00)] for 1st spindle.
#100000 = 3002 ;
Designates [#3002].
#102 = #100010;
Reads the [#3002 slimt2 (Number of limit rotation gears 01)] for 1st spindle.
#100002 = 2 ;
Designates [2nd spindle].
#100000 = 3001 ;
Designates [#3001].
#201 = #100010 ;
Reads the [#3001 slimt1 (Number of limit rotation gears 00)] for 2nd spindle.
#100000 = 3002 ;
Designates [#3002].
#202 = #100010;
Reads the [#3002 slimt2 (Number of limit rotation gears 01)] for 2nd spindle.
(4) To read the text type parameter "#1169 system name" (part system name):
[Conditions]
<1st part system>
<2nd part system>
#1169 system name
SYS1
SYS2
#100000 = 1169 ;
Designates #1169.
#100001 = 1 ;
Designates 1st part system.
#101 = #100010;
This will be #101 = 1398362929 (0x53595331).
Precautions
(1) The number of part systems, axes and spindles is set at the maximum number specified by the model.
(2) The inch/metric changeover function for the setting and display is valid for the readout data.
(3) The machining condition parameter group cannot set the parameters from the program using the G10 command,
and cannot read the parameters using the system variables ("#100000" and later).
909
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.24 System Variables (Workpiece Installation Error Compensation
Amount)
Detailed description
Using the system variables below, read/write of the workpiece installation error compensation amounts is enabled.
Common
No.01
No.02
No.03
No.04
No.05
No.06
No.07
Workpiece installation error
compensation amount ∆x
#26000
#26010
#26020
#26030
#26040
#26050
#26060
#26070
Workpiece installation error
compensation amount ∆y
#26001
#26011
#26021
#26031
#26041
#26051
#26061
#26071
Workpiece installation error
compensation amount ∆z
#26002
#26012
#26022
#26032
#26042
#26052
#26062
#26072
Workpiece installation error
compensation amount ∆a
-
#26013
#26023
#26033
#26043
#26053
#26063
#26073
Workpiece installation error
compensation amount ∆b
-
#26014
#26024
#26034
#26044
#26054
#26064
#26074
Workpiece installation error
compensation amount ∆c
-
#26015
#26025
#26035
#26045
#26055
#26065
#26075
Primary rotary axis position
#26006
#26016
#26026
#26036
#26046
#26056
#26066
#26076
Secondary rotary axis position
#26007
#26017
#26027
#26037
#26047
#26057
#26067
#26077
(Note 1) The primary rotary axis position corresponds with the axis set by the parameter #7942, and the secondary
rotary axis position corresponds with the axis set by the parameter #7952.
(Note 2) If the primary and secondary rotary axis positions are not of the table-side rotary axes, the set values are
ignored.
(Note 3) The setting ranges are the same as those set in the workpiece installation error setting screen.
(Note 4) If the system variables #26000 to #26077 are written during workpiece installation error compensation, the
program error (P545) will occur.
IB-1501278-D
910
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.25 System Variables (Macro Interface Input (PLC -> NC))
Function and purpose
The status of the interface input signals can be ascertained by reading out the values of variable Nos. #1000 to
#1035, #1200 to #1295.
Note
The interface output signals can be sent by substituting values in variable Nos. #1100 to #1135, #1300 to
#1395. (For details of the system variables for the output signals, refer to "22.26 System Variables (Macro Interface Output (NC -> PLC))".)
Example of 1st part system
(a)
#1032 (R6436, R6437)
#1132 (R6372, R6373)
#1000
#1100
#1031
#1131
(c)
#1033 (R6438, R6439)
#1133 (R6374, R6375)
#1200
#1300
#1231
#1331
#1134 (R6376, R6377)
#1034 (R6440, R6441)
#1232
#1332
#1263
#1363
#1135 (R6378, R6379)
#1035 (R6442, R6443)
(a) Input signal
(b)
#1264
#1364
#1295
#1395
(b) Output signal
911
(c) Macro instructions
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Detailed description
Variable Nos. #1000 to #1035, #1200 to #1295 are for readout only, and nothing can be placed in the left side member of their operation formula.
Input here refers to input to the NC.
Whether it is per part system or common between part systems depends on the MTB specifications (parameter
"#1230 set02/bit07").
Data unit (32 bits)
All the input signals from #1000 to #1031 can be read at once by reading out the value of variable No. #1032.
The input signals from #1200 to #1231, #1232 to #1263, and #1264 to #1295 can be read by reading out the values
of variable Nos. #1033 to #1035.
The data of the 1st part system ($1) to the 8th part system ($8) is as follows.
Interface input signal
System variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1032
32
R6436,
R6437
R6444,
R6445
R6452,
R6453
R6460,
R6461
R6468,
R6469
R6476,
R6477
R6484,
R6485
R6492,
R6493
#1033
32
R6438,
R6439
R6446,
R6447
R6454,
R6455
R6462,
R6463
R6470,
R6471
R6478,
R6479
R6486,
R6487
R6494,
R6495
#1034
32
R6440,
R6441
R6448,
R6449
R6456,
R6457
R6464,
R6465
R6472,
R6473
R6480,
R6481
R6488,
R6489
R6496,
R6497
#1035
32
R6442,
R6443
R6450,
R6451
R6458,
R6459
R6466,
R6467
R6474,
R6475
R6482,
R6483
R6490,
R6491
R6498,
R6499
IB-1501278-D
912
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Bit unit
The input signal has only two values: "0" and "1".
Part system
$1
$2
$3
$4
$5
$6
$7
$8
R device
R6436R6443
R6444R6451
R6452R6459
R6460R6467
R6468R6475
R6476R6483
R6484R6491
R6492R6499
If the value is common between part systems, refer to the column of the 1st part system ($1).
Interface input signal register
System
variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1000
1
R6436/
bit0
R6444/
bit0
R6452/
bit0
R6460/
bit0
R6468/
bit0
R6476/
bit0
R6484/
bit0
R6492/
bit0
#1001
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1002
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1003
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1004
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1005
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1006
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1007
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1008
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1009
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1010
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1011
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1012
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1013
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1014
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1015
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
#1016
1
R6437/
bit0
R6445/
bit0
R6453/
bit0
R6461/
bit0
R6469/
bit0
R6477/
bit0
R6485/
bit0
R6493/
bit0
#1017
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1018
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1019
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1020
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1021
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1022
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1023
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1024
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1025
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1026
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1027
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1028
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1029
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1030
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1031
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
913
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
IB-1501278-D
Interface input signal register
System
variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1200
1
R6438/
bit0
R6446/
bit0
R6454/
bit0
R6462/
bit0
R6470/
bit0
R6478/
bit0
R6486/
bit0
R6494/
bit0
#1201
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1202
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1203
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1204
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1205
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1206
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1207
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1208
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1209
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1210
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1211
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1212
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1213
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1214
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1215
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
#1216
1
R6439/
bit0
R6447/
bit0
R6455/
bit0
R6463/
bit0
R6471/
bit0
R6479/
bit0
R6487/
bit0
R6495/
bit0
#1217
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1218
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1219
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1220
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1221
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1222
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1223
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1224
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1225
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1226
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1227
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1228
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1229
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1230
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1231
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
914
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Interface input signal register
System
variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1232
1
R6440/
bit0
R6440/
bit0
R6448/
bit0
R6456/
bit0
R6472/
bit0
R6480/
bit0
R6488/
bit0
R6496/
bit0
#1233
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1234
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1235
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1236
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1237
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1238
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1239
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1240
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1241
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1242
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1243
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1244
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1245
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1246
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1247
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
#1248
1
R6441/
bit0
R6441/
bit0
R6449/
bit0
R6457/
bit0
R6473/
bit0
R6481/
bit0
R6489/
bit0
R6497/
bit0
#1249
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1250
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1251
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1252
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1253
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1254
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1255
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1256
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1257
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1258
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1259
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1260
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1261
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1262
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1263
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
915
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
IB-1501278-D
Interface input signal register
System
variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1264
1
R6442/
bit0
R6450/
bit0
R6458/
bit0
R6466/
bit0
R6474/
bit0
R6482/
bit0
R6490/
bit0
R6498/
bit0
#1265
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1266
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1267
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1268
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1269
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1270
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1271
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1272
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1273
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1274
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1275
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1276
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1277
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1278
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1279
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
#1280
1
R6443/
bit0
R6451/
bit0
R6459/
bit0
R6467/
bit0
R6475/
bit0
R6483/
bit0
R6491/
bit0
R6499/
bit0
#1281
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1282
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1283
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1284
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1285
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1286
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1287
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1288
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1289
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1290
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1291
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1292
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1293
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1294
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1295
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
916
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.26 System Variables (Macro Interface Output (NC -> PLC))
Function and purpose
The interface output signals can be sent by substituting values in variable Nos. #1100 to #1135, #1300 to #1395.
Note
The status of the interface input signals can be ascertained by reading out the values of variable Nos. #1000 to
#1035, #1200 to #1295. (For details of the system variables for the output signals, refer to "22.25 System Variables (Macro Interface Input (PLC -> NC))".)
Example of 1st part system
(a)
#1032 (R6436, R6437)
#1132 (R6372, R6373)
#1000
#1100
#1031
#1131
#1033 (R6438, R6439)
(c)
#1133 (R6374, R6375)
#1200
#1300
#1231
#1331
#1134 (R6376, R6377)
#1034 (R6440, R6441)
#1232
#1332
#1263
#1363
#1135 (R6378, R6379)
#1035 (R6442, R6443)
(a) Input signal
(b)
#1264
#1364
#1295
#1395
(b) Output signal
917
(c) Macro instructions
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Detailed description
The status of the writing and output signals can be read in order to compensate the #1100 to #1135, #1300 to #1395
output signals.
Output here refers to the output from the NC side.
Whether it is per part system or common between part systems depends on the MTB specifications (parameter
"#1230 set02/bit07").
Note
(1) The last values of the system variables #1100 to #1135, #1300 to #1395 sent are retained as 1 or 0. (They are
not cleared even by resetting.)
(2) The following applies when any number except 1 or 0 is substituted into #1100 to #1131, #1300 to #1395.
<Blank> is treated as 0. All values other than <blank> or "0" are treated as 1.
Any value less than 0.00000001 is indefinite.
Data unit (32 bits)
All the output Nos. from #1100 to #1131 can be sent at once by substituting a value in variable No. #1132.
The output signals from #1300 to #1331, #1332 to #1363, and #1364 to #1395 can be sent by substituting a value
in variable Nos. #1133 to #1135. (20 to 231)
The data of the 1st part system ($1) to the 8th part system ($8) is as follows.
Interface output signal
System variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1132
32
R6372,
R6373
R6380,
R6381
R6388,
R6389
R6396,
R6397
R6404,
R6405
R6412,
R6413
R6420,
R6421
R6428,
R6429
#1133
32
R6374,
R6375
R6382,
R6383
R6390,
R6391
R6398,
R6399
R6406,
R6407
R6414,
R6415
R6422,
R6423
R6430,
R6431
#1134
32
R6376,
R6377
R6384,
R6385
R6392,
R6393
R6400,
R6401
R6408,
R6409
R6416,
R6417
R6424,
R6425
R6432,
R6433
#1135
32
R6378,
R6379
R6386,
R6387
R6394,
R6395
R6402,
R6403
R6410,
R6411
R6418,
R6419
R6426,
R6427
R6434,
R6435
IB-1501278-D
918
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Bit unit
The output signal has only two values: "0" and "1".
Part system
$1
$2
$3
$4
$5
$6
$7
$8
R device
R6372R6379
R6380R6387
R6388R6395
R6396R6403
R6404R6411
R6412R6419
R6420R6427
R6428R6435
If the value is common between part systems, refer to the column of the 1st part system ($1).
Interface output signal register
System
variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1100
1
R6372/
bit0
R6380/
bit0
R6388/
bit0
R6396/
bit0
R6404/
bit0
R6412/
bit0
R6420/
bit0
R6428/
bit0
#1101
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1102
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1103
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1104
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1105
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1106
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1107
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1108
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1109
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1110
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1111
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1112
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1113
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1114
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1115
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
#1116
1
R6373/
bit0
R6381/
bit0
R6389/
bit0
R6397/
bit0
R6405/
bit0
R6413/
bit0
R6421/
bit0
R6429/
bit0
#1117
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1118
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1119
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1120
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1121
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1122
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1123
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1124
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1125
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1126
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1127
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1128
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1129
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1130
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1131
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
919
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
IB-1501278-D
Interface output signal register
System
variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1300
1
R6374/
bit0
R6382/
bit0
R6390/
bit0
R6398/
bit0
R6406/
bit0
R6414/
bit0
R6422/
bit0
R6430/
bit0
#1301
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1302
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1303
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1304
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1305
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1306
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1307
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1308
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1309
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1310
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1311
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1312
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1313
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1314
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1315
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
#1316
1
R6375/
bit0
R6383/
bit0
R6391/
bit0
R6399/
bit0
R6407/
bit0
R6415/
bit0
R6423/
bit0
R6431/
bit0
#1317
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1318
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1319
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1320
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1321
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1322
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1323
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1324
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1325
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1326
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1327
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1328
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1329
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1330
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1331
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
920
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Interface output signal register
System
variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1332
1
R6376/
bit0
R6384/
bit0
R6392/
bit0
R6400/
bit0
R6408/
bit0
R6416/
bit0
R6424/
bit0
R6432/
bit0
#1333
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1334
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1335
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1336
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1337
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1338
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1339
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1340
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1341
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1342
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1343
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1344
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1345
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1346
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1347
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
#1348
1
R6377/
bit0
R6385/
bit0
R6393/
bit0
R6401/
bit0
R6409/
bit0
R6417/
bit0
R6425/
bit0
R6433/
bit0
#1349
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1350
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1351
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1352
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1353
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1354
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1355
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1356
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1357
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1358
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1359
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1360
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1361
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1362
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1363
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
921
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
IB-1501278-D
Interface output signal register
System
variable
No. of
points
$1
$2
$3
$4
$5
$6
$7
$8
#1364
1
R6378/
bit0
R6386/
bit0
R6394/
bit0
R6402/
bit0
R6410/
bit0
R6418/
bit0
R6426/
bit0
R6434/
bit0
#1365
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1366
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1367
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1368
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1369
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1370
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1371
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1372
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1373
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1374
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1375
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1376
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1377
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1378
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1379
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
#1380
1
R6379/
bit0
R6387/
bit0
R6395/
bit0
R6403/
bit0
R6411/
bit0
R6419/
bit0
R6427/
bit0
R6435/
bit0
#1381
1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
bit1
#1382
1
bit2
bit2
bit2
bit2
bit2
bit2
bit2
bit2
#1383
1
bit3
bit3
bit3
bit3
bit3
bit3
bit3
bit3
#1384
1
bit4
bit4
bit4
bit4
bit4
bit4
bit4
bit4
#1385
1
bit5
bit5
bit5
bit5
bit5
bit5
bit5
bit5
#1386
1
bit6
bit6
bit6
bit6
bit6
bit6
bit6
bit6
#1387
1
bit7
bit7
bit7
bit7
bit7
bit7
bit7
bit7
#1388
1
bit8
bit8
bit8
bit8
bit8
bit8
bit8
bit8
#1389
1
bit9
bit9
bit9
bit9
bit9
bit9
bit9
bit9
#1390
1
bit10
bit10
bit10
bit10
bit10
bit10
bit10
bit10
#1391
1
bit11
bit11
bit11
bit11
bit11
bit11
bit11
bit11
#1392
1
bit12
bit12
bit12
bit12
bit12
bit12
bit12
bit12
#1393
1
bit13
bit13
bit13
bit13
bit13
bit13
bit13
bit13
#1394
1
bit14
bit14
bit14
bit14
bit14
bit14
bit14
bit14
#1395
1
bit15
bit15
bit15
bit15
bit15
bit15
bit15
bit15
922
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.27 System Variables (R Device Access Variables)
Function and purpose
By using variable Nos. #50000 to #50749, #51000 to #51749, #52000 to #52749, it is possible to read data (R8300
to R9799, R18300 to R19799, R28300 to R29799) and substitute value in the R device user backup area.
Variable No.
R device
#50000
R8300, R8301
#50001
R8302, R8303
User backup area (1500 points)
:
#50749
R9798, R9799
Variable No.
R device
#51000
R18300, R18301
#51001
R18302, R18303
User backup area (1500 points)
:
#51749
R19798, R19799
Variable No.
R device
#52000
R28300, R28301
#52001
R28302, R28303
User backup area (1500 points)
:
#52749
R29798, R29799
Detailed description
These variables read and write the two words of R device.
Data range of these variables is -2147483648 to 2147483647.
Depending on the setting of the PLC bit selection parameter "#6455/ bit0 to 2", these variables can be changed between decimal point valid or invalid for each user backup area.
The position of the decimal point when decimal point valid is selected, varies according to the parameters "#1003
iunit" (inupt setting unit) and "#1041 I_inch" (initial inch). (This depends on the MTB specifications.)
#1041 I_inch
#1003 iunit
B
0: Metric
1: Inch
Three digits after the
decimal point
C
D
E
Four digits after the dec- Five digits after the dec- Six digits after the deciimal point
imal point
mal point
Four digits after the dec- Five digits after the dec- Six digits after the deciimal point
imal point
mal point
Seven digits after the
decimal point
These variables are retained even when the power is off.
These are common among part systems.
923
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Access from a machining program to R device
[Reading variables]
When the variable #50000 is used in a machining program as shown below, the data set in device R8300 and R8301
will be referred.
G0 X#50000 ;
R8300,R8301
Device
Value
#50000
R8301
0x0001
R8300
0xe240
0x1e240 (Hex.)
= 123456 (Decimal)
(1) When decimal point invalid is selected:
Regardless of the setting of the parameter "#1003 iunit" (input setting unit) and "#1041 I_inch" (initial inch), the
data set in the R device will be the command value.
In case of the above example, the command value will be "X123456.".
(2) When decimal point valid is selected:
The data set in the R device will be read as a data with a decimal point.
The position of the decimal point will be as follows, according to the settings of the parameters "#1003 iunit" (inupt setting unit) and "#1041 I_inch" (initial inch).
#1041 I_inch
#1003 iunit
B
C
D
E
0: Metric
X123.456
X12.3456
X1.23456
X0.123456
1: Inch
X12.3456
X1.23456
X0.123456
X0.0123456
[Substitution into variables]
When substituting a value to the variable #50001 in a machining program as shown below, data will be set in the
device R8302 and R8303.
#50001 = 123 ;
R8302,R8303
(1) When decimal point invalid is selected:
Regardless of the setting of the parameter "#1003 iunit" (inupt setting unit) and "#1041 I_inch" (initial inch), substituted value will be set in the R device.
#50001
Device
Value
123 (Decimal)
= 0x7b (Hex.)
R8303
0x0000
R8302
0x007b
When a value with a decimal point is substituted to a variable like "#50001 = 123.456 ;", the numbers after the
decimal point will be truncated and "123" will be set.
IB-1501278-D
924
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(2) When decimal point valid is selected:
According to the settings of the parameter "#1003 iunit" (inupt setting unit) and "#1041 I_inch" (initial inch), values which are shifted for the number of decimals will be set in the R device, as shown below.
#1041 I_inch
0: Metric
#1003 iunit
B
C
D
E
#50001
123000 (Decimal)
= 0x1e078 (Hex.)
1230000 (Decimal)
= 0x12c4b0 (Hex.)
12300000 (Decimal)
= 0xbbaee0 (Hex.)
123000000 (Decimal)
= 0x754d4c0 (Hex.)
R8303
0x0001
0x0012
0x00bb
0x0754
R8302
0xe078
0xc4b0
0xaee0
0xd4c0
Device
#1041 I_inch
1: Inch
#1003 iunit
B
C
D
E
#50001
1230000 (Decimal) =
0x12c4b0 (Hex.)
12300000 (Decimal) =
0xbbaee0 (Hex.)
123000000 (Decimal) =
0x754d4c0 (Hex.)
1230000000 (Decimal) =
0x49504f80 (Hex.)
Device
R8303
0x0012
0x00bb
0x0754
0x4950
R8302
0xc4b0
0xaee0
0xd4c0
0x4f80
When a value with a decimal point is substituted to a variable like "#50001 = 123.456 ;", the value will directly
be set.
#1041 I_inch
0: Metric
#1003 iunit
B
C
D
E
#50001
123456 (Decimal)
= 0x1e240 (Hex.)
1234560 (Decimal)
= 0x12d680 (Hex.)
12345600 (Decimal)
= 0xbc6100 (Hex.)
123456000 (Decimal)
= 0x75bca00 (Hex.)
R8303
0x0001
0x0012
0x00bc
0x075b
R8302
0xe240
0xd680
0x6100
0xca00
#1003 iunit
B
C
D
E
#50001
1234560 (Decimal)
= 0x12d680 (Hex.)
12345600 (Decimal)
= 0xbc6100 (Hex.)
123456000 (Decimal)
= 0x75bca00 (Hex.)
1234560000 (Decimal)
= 0x4995e400 (Hex.)
R8303
0x0012
0x00bc
0x075b
0x4998
R8302
0xd680
0x6100
0xca00
0xe400
Device
#1041 I_inch
Device
1: Inch
If the number of decimals of the substituted data exceeds the number of significant figures, the value will be
rounded off to the number of significant figures and will be set.
When "#50001 = 123.4567899 ;".
#1041 I_inch
0: Metric
#1003 iunit
B
C
D
E
#50001
123457 (Decimal)
= 0x1e241 (Hex.)
1234568 (Decimal)
= 0x12d688 (Hex.)
12345679 (Decimal)
= 0xbc614f (Hex.)
123456790 (Decimal)
= 0x75bcd16 (Hex.)
R8303
0x0001
0x0012
0x00bc
0x075b
R8302
0xe241
0xd688
0x614f
0xcd16
#1003 iunit
B
C
D
E
#50001
1234568 (Decimal)
= 0x12d688 (Hex.)
12345679 (Decimal)
= 0xbc614f (Hex.)
123456790 (Decimal)
= 0x75bcd16 (Hex.)
1234567899 (Decimal)
= 0x499602db (Hex.)
R8303
0x0012
0x00bc
0x075b
0x4996
R8302
0xd688
0x614f
0xcd16
0x02db
Device
#1041 I_inch
Device
1: Inch
925
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Use of R device access variables in control command
These variables can be used in control command.
However, note that the variable value and the condition of true/false differ between decimal point valid variables and
invalid variables.
IF [#50003 EQ 1] GOTO 30 ;
G00 X100 ;
N30
(1) When decimal point invalid is selected:
Regardless of the setting of the parameter "#1003 iunit" (input setting unit) and "#1041 I_inch" (initial inch), R
device value of #50003 whose condition is true, will be "1".
#50003
Device
Value
1 (Decimal)
= 0x01 (Hex.)
R8307
0x0000
R8306
0x0001
(2) When decimal point valid is selected:
The condition is true when #50003 is "1". So the R device value of #50003 will be as follows depending on the
setting of the parameter "#1003 iunit" (inupt setting unit) and "#1041 I_inch" (initial inch).
#1041 I_inch
0: Metric
#1003 iunit
B
C
D
E
#50003
1000 (Decimal)
= 0x3e8 (Hex.)
10000 (Decimal)
= 0x2710 (Hex.)
100000 (Decimal)
= 0x186a0 (Hex.)
1000000 (Decimal)
= 0xf4240 (Hex.)
R8307
0x0000
0x0000
0x0001
0x000f
R8306
0x03e8
0x2710
0x86a0
0x4240
#1003 iunit
B
C
D
E
#50003
10000 (Decimal)
= 0x2710 (Hex.)
100000 (Decimal)
= 0x186a0 (Hex.)
1000000 (Decimal)
= 0xf4240 (Hex.)
10000000 (Decimal)
= 0x989680 (Hex.)
R8307
0x0000
0x0001
0x000f
0x0098
R8306
0x2710
0x86a0
0x4240
0x9680
Device
#1041 I_inch
Device
IB-1501278-D
1: Inch
926
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Substitution between R device access variable and other variables.
[Substitution into R device access variables]
Common variables and coordinates variables can be substituted to the R device access variables.
(Example 1) Common variables
#101 = -123.456 ;
#50004 = #101 ;
(Example 2) #5063 : Skip coordinates #5063
#50004 = #5063 ;
(1) When decimal point invalid is selected:
Regardless of the settings of the parameter "#1003 iunit" (inupt setting unit) and "#1041 I_inch" (initial inch), the
value which is rounded off will be set.
When the common variable and coordinate variable in the above example are "-123.456":
#50004
Device
Value
-123 (Decimal) = 0xffffff85 (Hex.)
R8309
0xffff
R8308
0x0085
(2) When decimal point valid is selected:
Substitution will be as follows according to the settings of the parameter "#1003 iunit" (inupt setting unit) and
"#1041 I_inch" (initial inch).
#1041 I_inch
0: Metric
#1003 iunit
B
C
D
E
#50004
-123456 (Decimal) =
0xfffe1dc0 (Hex.)
-1234560 (Decimal) =
0xffed2980 (Hex.)
-12345600 (Decimal) =
0xff439f00 (Hex.)
-123456000 (Decimal) =
0xf8a43600 (Hex.)
Device
R8309
0xfffe
0xffed
0xff43
0xf8a4
R8308
0x1dc0
0x2980
0x9f00
0x3600
#1003 iunit
B
C
D
E
#50004
-1234560 (Decimal) =
0xffed2980 (Hex.)
-12345600 (Decimal) =
0xff439f00 (Hex.)
R8309
0xffed
0xff43
0xf8a4
0xb66a
R8308
0x2980
0x9f00
0x3600
0x1c00
#1041 I_inch
Device
1: Inch
927
-123456000 (Decimal) = -1234560000 (Decimal) =
0xf8a43600 (Hex.)
0xb66a1c00 (Hex.)
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
[Substitution of R device access variables]
#50005 = 123.456789 ;
#102 = #50005 ;
(1) When decimal point invalid is selected:
Regardless of the settings of the parameter "#1003 iunit" (inupt setting unit) and "#1041 I_inch" (initial inch), #102
will be "123".
(2) When decimal point valid is selected:
Substitution will be as follows according to the settings of the parameter "#1003 iunit" (inupt setting unit) and
"#1041 I_inch" (initial inch).
#1041 I_inch
0: Metric
#1003 iunit
B
C
D
E
#102
123.4570
123.4568
123.4568
123.4568
#1041 I_inch
1: Inch
#1003 iunit
B
C
D
E
#102
123.4568
123.4568
123.4568
123.4568
Precautions
(1) The position of a decimal point changes depending on the settings of the parameter "#1003 iunit" (input setting
unit) and "#1041 I_inch" (initial inch). Fix the decimal point position while considering these parameter settings
when setting a number to an R device.
(2) These variables do not handle <Blank>. If #0<Blank> is substituted, it will be converted into "0".
Therefore, when comparing this variable after substituting #0<Blank> and #0<Blank> with a conditional expression (EQ), it will not be formed.
(3) If a value exceeding the allowable range is substituted into this variable, a program error (P35) will occur.
(4) When these values are used as decimal point invalid, the settings of "#1078 Decpt2" (Decimal point type 2) and
"#8044 UNIT*10" will not be applied.
(5) When a graphic is being checked, writing into R device will not be executed even if a value is substituted into
these variables.
For reading of these variables (reference to the R device value) during a graphic check, "0" is always read.
IB-1501278-D
928
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.28 System Variables (PLC Data Reading)
Function and purpose
PLC data can be read in with the system variables.
Variable No.
Application
#100100
Device type designation
#100101
Device No. designation
#100102
Number of read bytes designation
#100103
Read bit designation
#100110
Reading PLC data
Note
(1) These can be used only with some models.
(2) The readable devices are limited.
Detailed description
The PLC data is read in with the following five blocks using these five system variables.
#100100 = 1 ;
Designates the device type.
#100101 = 0 ;
Designates the device No.
#100102 = 1 ;
Designates the number of bytes.
#100103 = 2 ;
Designates the bit. (Valid only when reading word device bits.)
#100=#100110;
Reads in the PLC data.
Device designation (#100100)
(1) System variable for device designation
The type of device to be read in can be designated by substituting the device designation value in this system
variable.
If the data is read without designating this variable, the data will be read in the same manner as when the minimum value (0: M device) of the device designation value is designated. Once designated, the setting is held until
the device is designated again or until it is reset.
A program error (P39) will occur if a nonexistent device is set.
(2) Device designation value
[M800/M80 series]
Device designation value
Device
0
M
Unit
Device No.
Device designation value
Device
F
Bit
F0 to F2047
Bit
M0 to M61439
10
Unit
Device No.
1
D
Word
D0 to D4095
13
L
Bit
L0 to L1023
2
C
Bit
C0 to C511
18
V
Bit
V0 to V511
4
X (*1)
Bit
X0 to X1FFF
19
ST
Bit
ST0 to ST127
5
Y (*1)
Bit
Y0 to Y1FFF
20
SD
Word
SD0 to SD2047
6
R
Word
R0 to R32767
21
SB (*1) Bit
SB0 to SB3FF
7
T
Bit
T0 to T2047
22
SW (*1) Word
SW0 to SW3FF
9
SM
Bit
SM0 to SM2047
23
B (*1)
Bit
B0 to BDFFF
24
W (*1)
Word
W0 to W2FFF
929
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
[C80 series]
Device
designation value
Device
Unit
Device
No.
Device
designation value
Device
Unit
Device
No.
0
M
Bit
M0 to M61439
10
F
Bit
F0 to F2047
1
D
Word
D0 to D8191
13
L
Bit
L0 to L1023
2
C
Bit
C0 to C511
18
V
Bit
V0 to V511
4
X (*1) (*2)
Bit
X0 to X1FFF
19
ST
Bit
ST0 to STI27
5
Y (*1) (*2)
Bit
Y0 to Y1FFF
20
SD
Word
SD0 to SD4095
6
R (*2)
Word
R0 to R32767
21
SB (*1)
Bit
SB0 to SB3FF
7
T
Bit
T0 to T2047
22
SW (*1)
Word
SW0 to SW1023
9
SM (*2)
Bit
SM0 to SM4095
23
B (*1)
Bit
B0 to BDFFF
24
W (*1)
Word
W0 to W2FFF
The unit indicates the amount of data per device No. "Word" is 16 bits, and "Bit" is one bit.
(*1) Device of which the device number is indicated in hexadecimal notation.
(*2) The device marked by an asterisk (*) in the Device column has the determined use; therefore, do not use
the undefined device number even for a vacant device.
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 when the minimum
device No. (0) is designated. Once designated, the setting is held until the device No. is designated again or until it
is reset.
A program error (P39) will occur if a nonexistent device No. is set.
Number of bytes designation (#100102)
(1) System variable for number of bytes designation
The reading size is designated by substituting the number of bytes designation value in this system variable.
If the data is read without designating this number, the data will be read in the same manner as when the minimum device designation value (0: M device) is designated. Once designated, the setting is held until the number
of bytes is designated again or until it is reset.
A program error (P39) will occur if a number of bytes that does not exist in the specifications is set.
(2) Number of bytes designation value
Number of
bytes designation value
Read in data
Size
0
1 bit
1
1 bytes
101
2
2 bytes
102
4
104
Sign
Range
-
0 to 1
No
0 to 255
Yes
-128 to 127
No
0 to 65535
Yes
4 bytes
Operation
No
Yes
Word device
Bit device
The number of bits des- The bits for the designated device
ignated is read in.
No. are read in.
The low-order byte is
read in.
8 bits are read in from the designated device No.
Two bytes are read in. 16 bits are read in from the designated device No.
-32768 to 32767
0 to 4294967295 The designated device 32 bits are read in from the desig-2147483648 (L) and next device (H) nated device No.
to 2147483647 are read in.
0 to 4 are designated without a sign, and 101 to 104 are designated with a sign.
IB-1501278-D
930
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Bit designation (#100103)
(1) 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 for the others.
If the data is read without designating this number, the data will be read in the same manner as if the minimum
bit designation value (0: bit 0) is designated. Once designated, the setting is held until the bit is designated again
or until it is reset.
A program error (P39) will occur if a nonexistent bit is set.
(2) Bit designation value
Bit designation value
Read in bit
0
Bit 0
1
Bit 1
:
:
15
Bit 15
Reading PLC data (#100110)
The data for the designated device is read in with this system variable.
Refer to the table for number of bytes designation for details on the range of data read in.
Program example
(1) To read a bit device
#100100 = 0 ;
Designates [M device].
#100101 = 0 ;
Designates [Device No. 0].
#100102 = 0 ;
Designates [Bit].
#100 = #100110;
Reads M0 (one bit).
#100102 = 1 ;
Designates [1 byte].
#101 = #100110;
Reads M0 to M7 (8 bits).
(If M7 to M0 is 0001 0010, this will be #102 = 18 (0x12).)
#100102 = 102 ;
Designates [Signed two bytes].
#102 = #100110;
Reads M0 to M15 (16 bits).
(If M15 to M0 is 1111 1110 1101 1100, this will be #102 = -292 (0xFEDC).)
#100102 = 4 ;
Designates [4 byte].
#104 = #100110;
Reads M0 to M31 (32 bits).
(If M31 to M0 is 0001 0010 0011 0100 0101 0110 0111 1000,
#104 = 305419896 (0x12345678).)
931
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(2) To read a word device
#100100 = 1 ;
Designates [D device].
#100101 = 0 ;
Designates [Device No. 0].
#100102 = 0 ;
Designates [Bit].
#100103 = 1 ;
Designates [Bit 1].
#100 = #100110;
Reads the D0 bit 1.
(If D0 = 0x0102, #101 =1.)
#100102 = 1 ;
Designates [1 byte].
#101 = #100110;
Reads the low-order byte of D0.
(If D0 = 0x0102, #101 =2.)
#100102 = 2 ;
Designates [2 byte].
#102 = #100110;
Reads D0. (If D0 = 0x0102, #102 =258.)
#100102 = 104 ;
Designates [Signed four bytes].
#104 = #100110;
Reads D0 and D1.
(If D0 = 0xFFFE and D1 = 0xFFFF, #104 =-2.)
Precautions
(1) As the PLC data is read asynchronously from the ladder execution, the data is not necessarily the one which was
gained when the program was executed. Be careful when reading devices which are changing.
(2) If reading of a nonexistent device is attempted by designating the device No. and number of bytes, the 0 value
will be read in only for the nonexistent section.
(3) When "1" is set to the parameter "#1316 CrossCom", #100100 to #100110 cannot be used as system variables
to read PLC data.
IB-1501278-D
932
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.29 System Variables (Interfering Object Selection)
Detailed description
Select 16 interfering objects to use in the interference check III with system variables or R register.
Refer to the "PLC Interface Manual" (IB-1501272) for the R register.
When selecting an interfering object, specify the specification of the selected interfering object and interfering model
coordinate system offset 1.
The write command to the system variables (#40000 to #40097) is possible only in the machine tool builder macro
programs (O100010000 to O199999998).
System
variable
R register
Item
Details
Setting range (unit)
Upper: System variable
Lower: R register
#40000 R20304
Interfering object enSet enable/disable for each interfer- 0 to 65535 (decimal)
able/disable designation ing object.
Bit designation (0: enable 1: disable)
bit0: Disable 1st interfering object
:
0x0000 to 0xFFFF (hexadecimal)
bitF: Disable 16th interfering object
#40001 R20305
preliminary
0
0
40002
R20306
#40003 R20307
1st interfering object se- Select interfering object definition
lection
No. to use.
1st interfering object
specification
0 to 128 (0: not selected)
0 to 128 (0: not selected)
In the configured solid specification 0 to 3
of the interfering object definition,
specify alarm area/warning area/
solid setting invalid of the solid in
which switching method is selected.
0, 1: Alarm area
0 to 3
2: Warning area
3: Solid setting invalid
#40004 R20308 (L)
R20309 (H)
#40005 R20310 (L)
R20311 (H)
#40006 R20312 (L)
R20313 (H)
:
1st interfering model co- Set the interfering model coordinate -99999.999 to 99999.999
ordinate system
system offset with a radius value. (I (mm) (radius value)
I axis offset 1
axis direction) (*1)
1st interfering model co- Set the interfering model coordinate
ordinate system
system offset with a radius value. (J -99999999 to 99999999
J axis offset 1
axis direction) (*1)
(μm) (radius value)
1st interfering model co- Set the interfering model coordinate
ordinate system
system offset with a radius value.
(K axis direction) (*1)
K axis offset 1
:
#40077 R20426
16th interfering object
selection
Same as above
Same as above
#40078 R20427
16th interfering object
specification selection
Same as above
Same as above
#40079 R20428 (L)
16th interfering model
coordinate system
I axis offset 1
Same as above
Same as above
16th interfering model
coordinate system
J axis offset 1
Same as above
Same as above
R20429 (H)
#40080 R20430 (L)
R20431 (H)
933
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
System
variable
R register
Item
Details
Setting range (unit)
Upper: System variable
Lower: R register
#40081 R20432 (L)
16th interfering model
coordinate system
K axis offset 1
Same as above
#40082 R20434
1st interfering object
Interference check III:
Specifying disabled interfering object
Select an interfering object that you 0 to 65535 (decimal)
do not check the interference with 0x0000 to 0xFFFF (hexathe 1st interfering object.
decimal)
bit0: Disable 1st interfering object
(inaction data)
bit1: Disable 2nd interfering object
:
bitF: Disable 16th interfering object
#40083 R204325
2nd interfering object
Interference check III:
Specifying disabled interfering object
Select an interfering object that you 0 to 65535 (decimal)
do not check the interference with 0x0000 to 0xFFFF (hexathe 2nd interfering object.
decimal)
bit0: Disable 1st interfering object
bit1: Disable 2nd interfering object
(inaction data)
:
bitF: Disable 16th interfering object
16th interfering object
Interference check III:
Specifying disabled interfering object
Select an interfering object that you 0 to 65535 (decimal)
do not check the interference with 0x0000 to 0xFFFF (hexathe 16th interfering object.
decimal)
bit0: Disable 1st interfering object
bit1: Disable 2nd interfering object
:
bitF: Disable 16th interfering object
(inaction data)
R20433 (H)
:
Same as above
:
#40097 R20449
(*1) The interfering model coordinate system offset is the sum of the interfering model coordinate system offsets 1
and 2.
Interference check III: designation of disabled interference object
(Example) In the case that you do not check the interference between the 1st interfering object and the 2nd interfering object
"R20434 (#40082): 0x0002 (disable 2nd interfering object)" or "R20435 (#40083): 0x0001 (disable 1st interfering
object)"
Since each interfering object is designated to perform the interference check, the setting of the interference check
III specifying disabled interference object is repeated, but if either one is on disabled setting, the interference check
is not performed.
Back side of spindle part
(without a workpiece)
1st interfering object
(back side of spindle part)
Back side of spindle part (with a workpiece)
1st interfering object
(back side of spindle part)
2nd interfering object (workpiece part)
By specifying the interference III disabled between the back side of spindle part (1st interfering object) and workpiece part (2nd interfering object),
these 2 parts are treated as one interfering object.
IB-1501278-D
934
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
Precautions
(1) When the interfering object selection is input with the system variables, the system variable in which the command range integer is set in R register with the value after the decimal point being ignored.
(a) When any value out of the setting range is input in #40000 to #40097, the low-order 16 bits of the input value
are set in R register.
(b) When "#0" <empty> is input in #40000 to #40097, "0" is set in R register.
(2) If you have made a write command to the system variable (#40000 to #40097) in a program except for the machine tool builder macro program, the program error (P241) occurs.
935
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
22.30 System Variables (ZR Device Access Variables) [C80]
Detailed description
System variables that can read and write data from and to the ZR device are provided by 2,250 sets (#50000 to
#52749).
Data can be read and written between the NC machining program and RCPU sequence program by using the ZR
device as shown below.
How to handle the ZR device in the RCPU sequence program depends on the MTB specifications.
Refer to the PLC Interface Manual (IB-1501258) for the DDWR/DDRD command.
RCPU
C80
Sequence program
ZR device
NC machining program
ZR50000
ZR50001
ZR50002
ZR50003
:
ZR51998
ZR51999
D(P).DDWR
D(P).DDRD
G00 X#50000 Y#50001 ;
G01 Z-100. F1000 ;
:
G31 Z-150. F100 ;
#50999 = #5063 ;
M30 ;
Number of variable sets
The table below shows a list of variables specific to C80.
A ZR device access variable is based on long-type data, and a ZR device on word-type data.
Therefore, when this variable is read or a value is substituted to this variable, it reads and writes two words of the
ZR device. The correspondence between the ZR device access variable numbers and ZR device numbers is shown
below.
Variable No. (2,250 sets)
#50000 - #50749
#51000 - #51749
#52000 - #52749
Corresponding ZR device (4,500 units)
#50000
ZR50000, ZR50001
#50001
ZR50002, ZR50003
#50002
ZR50004, ZR50005
:
:
#50000+n
ZR50000+2n, ZR50000+2n+1
:
:
#52749
ZR55498, ZR55499
#51000
ZR52000, ZR52001
:
:
#51749
ZR53498, ZR53499
#52000
ZR54000, ZR54001
:
:
#52749
ZR55498, ZR55499
(1) The data range of these variables is -2147483648 to 2147483647.
(2) The ZR device is backed up even when the power is turned OFF; therefore, the value is maintained after the
power has been turned ON again.
(3) Whether this variable is used with the decimal point invalid or valid can be selected for each user backup area
according to the MTB specifications (parameter "#6455 bit0 -bit2").
IB-1501278-D
936
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
(4) When "decimal point valid" is selected, the position of the decimal point depends on the MTB specifications (parameters "#1003 iunit" (input setting unit) and "#1041 I_inch" (initial inch)).
Therefore, to set a numeric value to a ZR device, consider the position of the decimal point according to these
parameters.
The table below shows the number of digits that is valid after the decimal point.
#1041 I_inch
#1003 iunit
B
C
D
E
Metric
3 digits
4 digits
5 digits
6 digits
Inch
4 digits
5 digits
6 digits
7 digits
937
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
22 System Variables
IB-1501278-D
938
23
Appx.1: Fixed Cycles
939
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
23 Appx.1: Fixed Cycles
23Appx.1: Fixed Cycles
[G81(O100000810) Drill, spot drill]
[G84(O100000840) Tap cyclecle]
G.1 ;
G.1 ;
IF[#30] GOTO1 ;
IF[#30] GOTO9 ;
Z#2 G#6 H#7 ;
Z#2 G#6 H#7 ;
#2=##5#3003=#8 OR1 ;
#2=##5#3003=#8 OR1#3004=#9 OR3 ;
G1 Z#3 ;
IF[#11] GOTO1 ;
IF[#4 EQ#0] GOTO2 ;
GOTO2 ;
G4 P#4 ;
N1 ;
N2 ;
IF[#14] GOTO5 ;
#3003=#8 ;
N2 G1 Z#3 ;
G0 Z-#3-#2, I#23 ;
GOTO7 ;
N1 M99 ;
N5 ;
#29=0#28=#11 ;
[G82(O100000820) Drill, counter boring]
DO1 ;
G.1 ;
#29=#29+#11 ;
IF[#30] GOTO1 ;
IF[ ABS[#29] GE[ ABS[#3]]] GOTO6 ;
Z#2 G#6 H#7 ;
G1 Z#28 ;
#2=##5#3003=#8 OR1 ;
M#53 ;
G1 Z#3 ;
G1 Z-#14 ;
G4 P#4 ;
M#54 ;
#3003=#8 ;
#28=#11+#14 ;
G0 Z-#3-#2, I#23 ;
END1 ;
N1 M99 ;
N6 G1 Z#3-#29+#28 ;
N7 G4 P#4 ;
[G83(O100000830) Deep hole drill cycle]
M#53 ;
G.1 ;
#3900=1 ;
IF[#30] GOTO2 ;
G1 Z-#3 ;
#29=#11#28=0 ;
#3004=#9 ;
Z#2 G#6 H#7 ;
G4 P#56 ;
#2=##5#3003=#8 OR1 ;
M#54 ;
DO1 ;
#3003=#8 ;
#28=#28-#11#26=-#28-#29 ;
G0 Z-#2, I#23 ;
Z#26 ;
N9 M99 ;
IF[ ABS[#28] GE[ ABS[#3]]] GOTO1 ;
G1 Z#29 ;
G0 Z#28 ;
#29=#11+#14 ;
END1 ;
N1 G1 Z#3-#26 ;
IF[#4 EQ#0] GOTO3 ;
G4 P#4 ;
N3 ;
#3003=#8 ;
G0 Z-#3-#2, I#23 ;
N2 M99 ;
IB-1501278-D
940
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
23 Appx.1: Fixed Cycles
[G85(O100000850) Boring 1]
[G88(O100000880) Boring 3]
G.1 ;
G.1 ;
IF[#30] GOTO1 ;
IF[#30] GOTO1 ;
Z#2 G#6 H#7 ;
Z#2 G#6 H#7 ;
#2=##5#3003=#8 OR1 ;
#2=##5#3003=#8 OR1 ;
G1 Z#3 ;
G1 Z#3 ;
IF[#4 EQ#0] GOTO2 ;
G4 P#4 ;
G4 P#4 ;
#3003=#8 ;
N2 ;
M5 ;
#3003=#8 ;
#3003=#8 OR1 ;
Z-#3 ;
G0 Z-#3-#2 ;
G0 Z-#2, I#23 ;
#3003=#8 ;
N1 M99 ;
M3 ;
N1 M99 ;
[G86(O100000860) Boring 2]
G.1 ;
[G89(O100000890) Boring 4]
IF[#30] GOTO1 ;
G.1 ;
Z#2 G#6 H#7 ;
IF[#30] GOTO1 ;
#2=##5#3003=#8 OR1 ;
Z#2 G#6 H#7 ;
G1 Z#3 ;
#2=##5#3003=#8 OR1 ;
G4 P#4 ;
G1 Z#3 ;
M5 ;
G4 P#4 ;
G0 Z-#3-#2 ;
#3003=#8 ;
#3003=#8 ;
Z-#3 ;
M3 ;
G0 Z-#2, I#23 ;
N1 M99 ;
N1 M99 ;
[G87(O100000870) Back boring]
G73(O100000831) Step cycle]
G.1 ;
G.1 ;
IF[#30] GOTO1 ;
IF[#30] GOTO2 ;
#3003=#8 OR1 ;
#29=0#28=#11 ;
M19 ;
Z#2 G#6 H#7 ;
X#12 Y#13 ;
#2=##5#3003=#8 OR1 ;
#3003=#8 ;
DO1 ;
Z#2 G#6 H#7 ;
#29=#29+#11 ;
#3003=#8 OR1 ;
IF[ ABS[#29] GE[ ABS[#3]]] GOTO1 ;
G1 X-#12 Y-#13 ;
G1 Z#28 ;
#3003=#8 ;
G4 P#4 ;
M3 ;
G0 Z-#14 ;
#3003=#8 OR1 ;
#28=#11+#14 ;
Z#3 ;
END1 ;
M19 ;
N1 G1 Z#3-#29+#28 ;
G0 X#12 Y#13 ;
G4 P#4 ;
Z-#2-#3 ;
#3003=#8 ;
#3003=#8 ;
G0 Z-#3-#2, I#23 ;
X-#12 Y-#13 ;
N2 M99 ;
M3 ;
N1 M99 ;
941
IB-1501278-D
M800/M80/C80 Series Programming Manual (Machining Center System) (2/2)
23 Appx.1: Fixed Cycles
[G74(O100000841) Reverse tap cycle]
[G75(O100000851) Circle cutting cycle]
G.1 ;
G.1 ;
IF[#30] GOTO9 ;
IF[#30] GOTO1 ;
Z#2 G#6 H#7 ;
#28=#18 ;
#2=##5#3003=#8 OR1#3004=#9 OR3 ;
IF[#28 GE0] GOTO2 ;
IF[#11] GOTO1 ;
#27=3#28=-#28 ;
GOTO2 ;
GOTO3 ;
N1 ;
N2#27=2 ;
IF[#14] GOTO5 ;
N3#26=#4 ;
N2 G1 Z#3 ;
IF[#26 GE#28] GOTO1 ;
GOTO7 ;
Z#2 G#6 H#7 ;
N5 ;
#2=##5#3003=#8 OR1 ;
#29=0#28=#11 ;
G1 Z#3 ;
DO1 ;
#28=#28-#26#29=#28/2 ;
#29=#29+#11 ;
G#27 X-#28 I-#29 ;
IF[ ABS[#29] GE[ ABS[#3]]] GOTO6 ;
I#28 P1 ;
G1 Z#28 ;
X#28 I#29 ;
M#53 ;
#3003=#8 ;
G1 Z-#14 ;
G0 Z-#3-#2, I#23 ;
M#54 ;
N1 M99 ;
#28=#11+#14 ;
END1 ;
[G76(O100000861) Fine boring]
N6 G1 Z#3-#29+#28 ;
G.1 ;
N7 G4 P#4 ;
IF[#30] GOTO1 ;
M#53 ;
Z#2 G#6 H#7 ;
#3900=1 ;
#2=##5#3003=#8 OR1 ;
G1 Z-#3 ;
G1 Z#3 ;
#3004=#9 ;
M19 ;
G4 P#56 ;
X#12 Y#13 ;
M#54 ;
G0 Z-#3-#2 ;
#3003=#8 ;
#3003=#8 ;
G0 Z-#2, I#23 ;
X-#12 Y-#13 ;
N9 M99 ;
M3 ;
N1 M99 ;
IB-1501278-D
942
Index
Refer to Programming Manual (Machining Center System) (1/2) for Chapter 14 and previous chapters (page 438 and before).
Refer to Programming Manual (Machining Center System) (2/2) for Chapter 15 and succeeding chapters (page 439 and later).
Symbols
Cylindrical Interpolation ................................................... 73
!n (!m ...) L ..................................................................... 522
/ ....................................................................................... 16
/n ..................................................................................... 18
D
Numerics
2nd Miscellaneous Functions (A8-digits, B8-digits or
C8-digits) .......................................................................
2nd, 3rd, and 4th Reference Position (Zero Point) Return ...
3-dimensional Circular Interpolation ..............................
3-dimensional Coordinate Conversion ..........................
3-dimensional Tool Radius Compensation ....................
3-dimensional Tool Radius Compensation (Tool’s
vertical-direction compensation) ....................................
206
831
108
781
296
737
A
Acceleration Clamp Speed ............................................ 625
Acceleration/Deceleration Mode Change in Hole Drilling
Cycle ............................................................................. 363
Actual Examples of Using User Macros ........................ 425
Arbitrary Axis Exchange ................................................ 538
Arc ................................................................................. 368
ASCII Code Macro ........................................................ 401
Automatic Coordinate System Setting ........................... 753
Automatic Corner Override .................................... 188, 194
Automatic Tool Length Measurement ............................ 846
Axis-based Unidirectional Positioning ............................. 72
Deceleration Check ....................................................... 166
Deceleration Check when Movement in The Opposite
Direction Is Reversed .................................................... 174
Decimal point input .......................................................... 34
Deep Hole Drilling Cycle ................................................ 324
Define by Selecting the Registered Machining Surface ..... 708
Detailed Description for Macro Call Instruction .............. 399
Details of Inclined Surface Machining Operation ........... 719
Diameter Designation of Compensation Amount ........... 289
Drilling Cycle High-Speed Retract ................................. 359
Drilling, Counter Boring .................................................. 323
Drilling, Spot Drilling ...................................................... 322
Dwell (Time-based designation) .................................... 200
E
Enable Interfering Object Selection Data ....................... 842
Exact Stop Check .......................................................... 161
Exact Stop Check Mode ................................................ 165
Exponential Interpolation ................................................. 89
External Output Commands .......................................... 419
F
Back Boring ................................................................... 343
Basic Machine Coordinate System Selection ................ 757
Basic Machine, Workpiece and Local Coordinate Systems .... 751
Bolt Hole Cycle .............................................................. 366
Boring .................................................... 341, 342, 345, 346
F1-Digit Feed ................................................................. 128
Fairing ............................................................................ 615
Feed Per Minute/Feed Per Revolution
(Asynchronous Feed/ Synchronous Feed) .................... 130
Feedrate Designation and Effects on Control Axes ....... 138
Figure Rotation .............................................................. 379
File Format ....................................................................... 14
Fine Boring .................................................................... 353
Fixed Cycles .......................................................... 318, 940
C
G
Changing of Compensation No. during Compensation Mode ... 274
Circular Cutting ........................................................ 80, 351
Circular Interpolation ....................................................... 47
Common Variables ........................................................ 407
Compensation Data Input by Program .......................... 495
Compensation Data Input by Program (Turning Tool) ... 501
Constant Lead Thread Cutting ........................................ 58
Constant Surface Speed Control ................................... 215
Control Commands ....................................................... 416
Coordinate Rotation by Program ................................... 799
Coordinate Rotation Input by Parameter ....................... 806
Coordinate System for Rotary Axis ............................... 754
Coordinate System Setting ............................................ 760
Coordinate Systems and Coordinate Zero Point Symbols .... 3
Coordinate Words and Control Axes ......................... 2, 750
Corner Chamfering Expansion/Corner Rounding
Expansion .............................................................. 444, 450
Corner Chamfering I ...................................................... 440
Corner Chamfering I / Corner Rounding I ...................... 440
Corner Chamfering II ..................................................... 447
Corner Chamfering II / Corner Rounding II .................... 447
Corner Rounding I ......................................................... 442
Corner Rounding II ........................................................ 449
Cutting Feed Constant Inclination Acceleration/Deceleration ... 155
Cutting Feedrate ............................................................ 127
Cutting Mode ................................................................. 197
G Code Lists .................................................................... 20
G Cole Macro Call ......................................................... 396
G Command Mirror Image ............................................. 462
G0.5 ............................................................................... 178
G0.5 P1 .......................................................................... 176
G00 .................................................................................. 42
G00 Feedrate Command (,F command) ........................ 123
G01 .................................................................................. 45
G01 A_ ........................................................................... 452
G01 A_ , G02/G03 P_Q_H_ .......................................... 457
G01 A_ , G02/G03 R_H_ ............................................... 460
G01 X_ Y_ ,C ................................................................. 440
G01 X_ Y_ ,R_ ............................................................... 442
G01 X_/Y_ A_/,A_ ......................................................... 451
G01/G02/G03 X_ Y_ ,C_ ............................................... 447
G01/G02/G03 X_ Y_ ,R_ ............................................... 449
G02, G03 ................................................................... 47, 53
G02.1/G03.1(Type1), G02/G03(Type2) ......................... 103
G02.3,G03.3 .................................................................... 89
G02.4,G03.4 .................................................................. 108
G02/G03 P_Q_ /R_ ....................................................... 455
G04 ................................................................................ 200
G05 P1, G05 P2 ............................................................ 558
G05.1 Q1/Q0, G05 P10000/P0, G05 P20000/P0 .......... 599
G05.1 Q2/Q0 ................................................................. 630
G06.2 ............................................................................. 113
B
G07 ................................................................................ 119
G07.1 ............................................................................... 73
G09 ................................................................................ 161
G10 I_ J_/K_ ................................................................. 806
G10 L100, G11 .............................................................. 503
G10 L110/L111, G11, G68.2, G69 ................................ 506
G10 L14 ......................................................................... 868
G10 L2/L10/L11/L12/L13/L20, G11 ............................... 495
G10 L2/L12/L13, G11 .................................................... 501
G10 L3, G11 .................................................................. 512
G10 L30, G11 ................................................................ 515
G10 L70/L100, G11 ....................................................... 492
G115 .............................................................................. 525
G116 .............................................................................. 528
G12,G13 .......................................................................... 80
G12.1,G13.1/G112,G113 ................................................ 82
G120.1,G121 ................................................................. 648
G122 .............................................................................. 541
G127 .............................................................................. 486
G140, G141, G142 ........................................................ 538
G16 .................................................................................. 96
G160 .............................................................................. 864
G17, G18, G19 ................................................................ 56
G17, G18, G19 and G02, G03 ........................................ 64
G186 .............................................................................. 842
G20, G21 ......................................................................... 32
G22/G23 ........................................................................ 840
G27 ................................................................................ 837
G28,G29 ........................................................................ 827
G30 ................................................................................ 831
G30.1 - G30.6 ................................................................ 834
G31 ................................................................................ 850
G31 Fn .......................................................................... 860
G31 P ............................................................................ 858
G31.n, G04 .................................................................... 856
G33 ............................................................................ 58, 62
G34 ................................................................................ 366
G35 ................................................................................ 367
G36 ................................................................................ 368
G37 ................................................................................ 846
G37.1 ............................................................................. 369
G38, G39/G40/G41, G42 .............................................. 245
G40.1/G41.1/G42.1(G150/G151/G152) ........................ 466
G40/G41, G42 ............................................................... 296
G40/G41.2,G42.2 .......................................................... 737
G41/G42 Commands and I, J, K Designation ............... 265
G43, G44/G49 ............................................................... 240
G43.1/G49 ..................................................................... 661
G43.4, G43.5/G49 ......................................................... 668
G43.7/G49 ..................................................................... 654
G45 to G48 .................................................................... 308
G50.1,G51.1 .................................................................. 462
G50/G51 ........................................................................ 823
G52 ................................................................................ 762
G53 ................................................................................ 757
G53.1/G53.6 .................................................................. 711
G54 to G59 (G54.1) ....................................................... 766
G60 .................................................................................. 70
G61 ................................................................................ 165
G61.1, G08 .................................................................... 567
G61.2 ............................................................................. 646
G61.4 ............................................................................. 639
G62 ................................................................................ 194
G63 ................................................................................ 196
G64 ................................................................................ 197
G65 ................................................................................ 388
G66 ................................................................................ 392
G66.1 ............................................................................. 394
G68.2, G68.3 ................................................................. 696
G68/G69 ................................................................ 781, 799
G73 ................................................................................ 347
G74 ................................................................................ 349
G75 ................................................................................ 351
G76 ................................................................................ 353
G81 ................................................................................ 322
G82 ................................................................................ 323
G83 ................................................................................ 324
G84 ................................................................................ 329
G85 ................................................................................ 341
G86 ................................................................................ 342
G87 ................................................................................ 343
G88 ................................................................................ 345
G89 ................................................................................ 346
G90,G91 .......................................................................... 30
G92 ........................................................................ 221, 760
G92.1 ............................................................................. 776
G93 ................................................................................ 133
G94,G95 ........................................................................ 130
G96,G97 ........................................................................ 215
G98,G99 ........................................................................ 357
General Precautions for Tool Radius Compensation .... 273
Geometric ...................................................................... 452
Geometric IB .................................................................. 454
Geometric IB (Automatic Calculation of Linear - Arc
Intersection) ........................................................... 457, 460
Geometric IB (Automatic Calculation of Two-arc Contact) ... 455
Grid ................................................................................ 369
H
Helical Interpolation ......................................................... 64
High-accuracy Control ................................................... 567
High-accuracy Spline Interpolation ................................ 646
High-speed High-accuracy Control ................................ 599
High-speed High-accuracy Control I, II, III ..................... 599
High-speed Machining Mode I, II ................................... 558
High-speed Mode Corner Deceleration ......................... 626
How to Define Feature Coordinate System
Using Euler Angles ........................................................ 698
How to Define Feature Coordinate System
Using Projection Angles ................................................. 706
How to Define Feature Coordinate System
Using Roll-Pitch-Yaw Angles ......................................... 700
How to Define Feature Coordinate System
Using Three Points in a Plane ....................................... 702
How to Define Feature Coordinate System
Using Tool Axis Direction ............................................... 709
How to Define Feature Coordinate System
Using Two Vectors ......................................................... 704
Hypothetical Axis Interpolation ...................................... 119
I
Inch Thread Cutting ......................................................... 62
Inch/Metric Conversion .................................................... 32
Inclined Surface Machining ............................................ 696
Inclined Surface Machining and Relationship with Other
Functions ....................................................................... 729
Index Table Indexing ..................................................... 207
Indexing Increment ............................................................ 8
Initial High-accuracy Control .......................................... 596
Initial Point and R Point Level Return ............................ 357
Inner Arc Override ......................................................... 195
Input Command Increment Tenfold ................................... 7
Input Setting Unit ............................................................... 6
Inputting The Tool Life Management Data
by G10 L3 Command .................................................... 512
Inputting The Tool Life Management Data
by G10 L30 Command .................................................. 515
Interference Check ........................................................ 279
Interrupt during Corner Chamfering/Interrupt
during Corner Rounding ........................................ 446, 450
Interrupts during Tool Radius Compensation ................ 271
Inverse Time Feed ........................................................ 133
L
Line at Angle ................................................................. 367
Linear Angle Command ................................................. 451
Linear Interpolation .......................................................... 45
Local Coordinate System Setting .................................. 762
Local Variables (#1 to #33) ........................................... 408
M
M*** ............................................................................... 531
M198 ............................................................................. 378
M96, M97 ...................................................................... 429
M98 I_J_K_ ................................................................... 379
M98,M99 ....................................................................... 372
Machine Zero Point and 2nd, 3rd, 4th Reference Position
(Zero Point) ................................................................... 752
Machining Condition Selection I .................................... 648
Macro Call Instructions .................................................. 388
Macro Interruption ......................................................... 429
Manual Arbitrary Reverse Run Prohibition .................... 486
Miscellaneous Command Macro Call
(for M, S, T, B Code Macro Call) ................................... 397
Miscellaneous Functions (M8-digits) ............................. 204
Modal Call A (Movement Command Call) ..................... 392
Modal Call B (for each block) ........................................ 394
Modal, Unmodal .............................................................. 20
Multi-part System Simultaneous High-accuracy ............ 597
Multi-step Skip Function 1 ............................................. 856
Multi-step Skip Function 2 ............................................. 858
N
Normal Line Control ...................................................... 466
Number of Tool Offset Sets Allocation to Part Systems .... 238
NURBS Interpolation ..................................................... 113
O
Operation Commands ................................................... 412
Optional Block Skip ......................................................... 16
Optional Block Skip Addition ........................................... 18
Other Commands and Operations during Tool Radius
Compensation ............................................................... 255
P
Parameter Input by Program ......................................... 492
Plane Selection ............................................................... 56
Polar Coordinate Command ............................................ 96
Polar Coordinate Interpolation ......................................... 82
POPEN, PCLOS, DPRNT ............................................. 419
Position Command Methods ........................................... 30
Positioning (Rapid Traverse) ........................................... 42
Precautions ................................................................... 423
Precautions Before Starting Machining ........................... 25
Precautions for Inclined Surface Machining .................. 733
Precautions for Inputting The Tool Life Management Data ... 518
Precautions for Using a Fixed Cycle ............................. 355
Precautions on High-speed High-accuracy Control ....... 627
Pre-read Buffer ................................................................ 28
Program format ............................................................... 10
Programmable Current Limitation .................................. 868
R
R Specification Circular Interpolation ............................... 53
Rapid Traverse Block Overlap ....................................... 176
Rapid Traverse Block Overlap for G00 .......................... 178
Rapid Traverse Block Overlap for G28 .......................... 186
Rapid Traverse Constant Inclination Acceleration/
Deceleration ................................................................... 142
Rapid Traverse Constant Inclination Multi-step
Acceleration/Deceleration .............................................. 147
Rapid Traverse Rate ...................................................... 122
Reference Position (Zero Point) Return ......................... 827
Reference Position Check ............................................. 837
Reverse Tapping Cycle ................................................. 349
R-Navi Data Input by Program ....................................... 506
Rotary Axis Basic Position Selection ............................. 723
S
Scaling ........................................................................... 823
Setting of Workpiece Coordinates in Fixed Cycle Mode .... 358
Simple Macro Calls ........................................................ 388
Skip Function ................................................................. 850
Small Diameter Deep Hole Drilling Cycle ...................... 326
Smooth Fairing .............................................................. 616
Special Fixed Cycle ....................................................... 365
Speed Change Skip ....................................................... 860
Spindle Clamp Speed Setting ........................................ 221
Spindle Functions .......................................................... 214
Spindle Position Control (Spindle/C Axis Control) ......... 223
Spiral/Conical Interpolation ............................................ 103
Spline Interpolation ........................................................ 630
Spline Interpolation 2 ..................................................... 639
SSS Control ................................................................... 585
Start of Tool Radius Compensation and Z Axis Cut in
Operation ....................................................................... 277
Stepping Cycle ............................................................... 347
Stroke Check before Travel ........................................... 840
Sub Part System Control I ............................................. 541
Subprogram Call .................................................... 372, 378
System Variable List ...................................................... 870
System Variables ........................................................... 411
System Variables (Alarm) .............................................. 897
System Variables (Coordinate Rotation Parameter) ...... 903
System Variables (Cumulative Time) ............................ 898
System Variables (Extended Workpiece Coordinate Offset) ... 891
System Variables (External Workpiece Coordinate Offset) ..... 892
System Variables (G Command Modal) ........................ 872
System Variables (Interfering Object Selection) ............ 933
System Variables (Machining Information) .................... 901
System Variables (Macro Interface Input (PLC -> NC)) ...... 911
System Variables (Macro Interface Output (NC -> PLC)) .... 917
System Variables (Message Display and Stop) ............. 898
System Variables (Mirror Image) ................................... 902
System Variables (Modal Information at Macro Interruption) .... 874
System Variables (Non-G Command Modal) ................ 873
System Variables (Normal Line Control Parameter) ...... 905
System Variables (Number of Workpiece Machining Times) .... 902
System Variables (Parameter Reading) ........................ 906
System Variables (PLC Data Reading) ......................... 929
System Variables (Position Information) ........................ 893
System Variables (R Device Access Variables) ............ 923
System Variables (Reverse Run Information) ............... 902
System Variables (Rotary Axis Configuration Parameter) ... 904
System Variables (Time Read Variables) ...................... 899
System Variables (Tool Compensation) ........................ 884
System Variables (Tool Information) ............................. 876
System Variables (Tool Life Management) .................... 885
System Variables (Workpiece Coordinate Offset) ......... 890
System Variables (Workpiece Installation Error
Compensation Amount) ................................................. 910
System Variables (ZR Device Access Variables) .......... 936
T
Tapping Cycle ............................................................... 329
Tapping Mode ............................................................... 196
Thread Cutting ................................................................. 58
Time Synchronization When Timing Synchronization
Ignore Is Set .................................................................. 535
Timing Synchronization ................................................. 522
Timing Synchronization Operation (! code) ................... 522
Timing Synchronization Operation Function Using M codes ... 531
Timing Synchronization Operation with Start Point
Designated (Type 1) ...................................................... 525
Timing Synchronization Operation with Start Point
Designated (Type 2) ...................................................... 528
Tolerance Control .......................................................... 589
Tool Axis Direction Control ............................................ 711
Tool Center Point Control .............................................. 668
Tool Change Position Return ........................................ 834
Tool Compensation ....................................................... 234
Tool Functions (T8-digit BCD) ....................................... 232
Tool Length Compensation / Cancel ............................. 240
Tool Length Compensation Along the Tool Axis ........... 661
Tool Life Management Set Allocation to Part Systems ... 510, 519
Tool Nose Radius Compensation (for Machining
Center System) ............................................................. 293
Tool Position Compensation ......................................... 654
Tool Position Offset ....................................................... 308
Tool Radius Compensation ........................................... 245
Tool Radius Compensation Operation .......................... 246
Tool Shape Input by Program ....................................... 503
Torque Limitation Skip ................................................... 864
U
Unidirectional Positioning ................................................ 70
User Macro .................................................................... 387
User Macro Commands ................................................. 412
V
Variable-acceleration Pre-interpolation Acceleration/
Deceleration .................................................................. 593
Variables Used in User Macros ..................................... 405
W
Workpiece Coordinate Changing during Radius
Compensation ............................................................... 291
Workpiece Coordinate System Preset ........................... 776
Workpiece Coordinate System Setting and Offset ........ 766
Revision History
Date of
revision
Manual No.
Revision details
Apr. 2015
IB(NA)1501277-A
IB(NA)1501278-A
First edition created.
Sep. 2015
IB(NA)1501277-B
IB(NA)1501278-B
The descriptions of M800 Series/M80 Series were revised in response to S/W version
A4.
The following chapters were added.
7.14.2 Inner Arc Override
15.9.3 Tool Shape Input by Program; G10 L100, G11
15.9.4 R-Navi Data Input by Program; G10 L110, G11
17.2.3 Tolerance Control
17.5 Spline Interpolation 2; G61.4
18.1.6 Define by Selecting the Registered Machining Surface
The following chapters were revised.
1.1 Coordinate Words and Control Axes
3.4.2 G Code Lists
5.3 Decimal Point Input
7.3 F1-digit Feed
7.12 Deceleration Check
7.14 Automatic Corner Override
10.2 Constant Surface Speed Control; G96, G97
11.1 Tool Functions (T8-digit BCD)
12.3 Tool Length Compensation in the Tool Axis Direction; G43.1/G49
13.1.4 Tapping Cycle; G84
14.4 Macro Call Instructions
14.5.2 Local Variables (#1 to #33)
15.8 Manual Arbitrary Reverse Run Prohibition; G127
16.2 Sub Part System Control
17.1 High-speed Machining Mode
17.2 High-accuracy Control
17.3 High-speed High-accuracy Control
17.7 Machining Condition Selection I; G120.1, G121
18.1 Inclined Surface Machining; G68.2, G68.3
19.3 Basic Machine Coordinate System Selection; G53
19.6 Workpiece Coordinate System Setting and Offset; G54 to G59 (G54.1)
19.8 3-dimensional Coordinate Conversion; G68/G69
The following chapters were moved.
Parameter Input by Program; G10 L70/L100, G11 (15.6 -> 15.9.1)
Compensation Data Input by Program; G10 L2/L10/L11, G11 (12.7 -> 15.9.2)
Tool Life Management Data Input; G10,G11 (12.7 -> 15.10)
Other contents were added/revised/deleted according to specification.
Apr. 2016
IB(NA)1501277-C
IB(NA)1501278-C
The descriptions of M800 Series/M80 Series were revised in response to S/W version
B2.
The following chapters were added.
12.5 Tool Nose Radius Compensation (for Machining Center System)
12.8 Tool Position Compensation; G43.7
15.9.3 Compensation Data Input by Program (Turning Tool); G10 L12/L13, G11
16.2 Mixed Control
16.2.1 Arbitrary Axis Exchange; G140, G141, G142
22 System Variables
(Continue to the next page)
Date of
revision
Manual No.
Revision details
(Continued from the previous page)
The following chapters were revised.
Introduction
3.4 G Codes
5.4 Decimal Point Input
6.3 Circular Interpolation; G02/G03
6.4 R Specification Circular Interpolation; G02, G03
6.7 Helical Interpolation; G17, G18, G19, and G02, G03
7.1 Rapid Traverse Rate
7.3 F1-digit Feed
7.7 Rapid Traverse Constant Inclination Acceleration/Deceleration
7.13 Rapid Traverse Block Overlap; G0.5 P1
9.3 Index Table Indexing
10.2 Constant Surface Speed Control; G96, G97
10.4 Spindle Position Control (Spindle/C Axis Control)
12.1 Tool Compensation
13.1.4 Tapping Cycle; G84
14.1 Subprogram Control; M98, M99, M198
14.2 Variable Commands
14.4 Macro Call Instructions
14.6 User Macro Commands
15.7 Normal Line Control; G40.1/G41.1/G42.1 (G150/G151/G152)
15.8 Manual Arbitrary Reverse Run Prohibition; G127
15.9 Data Input by Program
16.3.1 Sub Part System Control I; G122
17.1 High-speed Machining Mode
17.2 High-accuracy Control
17.3 High-speed High-accuracy Control
18.1 Inclined Surface Machining; G68.2, G68.3
19.6 Workpiece Coordinate System Setting and Offset; G54 to G59 (G54.1)
19.10 Coordinate Rotation Input by Parameter ; G10 I_ J_/K_
21.2 Skip Function; G31
Other mistakes were corrected.
Sep. 2016
IB(NA)1501277-D
IB(NA)1501278-D
The descriptions were revised in response to S/W version C1 of M800 Series/M80 Series.
The descriptions were revised in response to S/W version A1 of C80 Series.
The following chapters were added.
18.3 Tool Center Point Control; G43.4, G43.5/G49
18.5 3-dimensional Tool Radius Compensation (Tool's vertical-direction compensation); G40/G41.2,G42.2
20.2 Enable Interfering Object Selection Data; G186
22.29 System Variables (Interfering Object Selection)
22.30 System Variables (ZR Device Access Variables) [C80]
The following chapters were revised.
Introduction
Precautions for Safety
3.2 File Format
3.4 G Codes
6.9 Cylindrical Interpolation; G07.1
7.4 Feed Per Minute/Feed Per Revolution (Asynchronous Feed/Synchronous
Feed); G94, G95
12.3 Tool Radius Compensation ; G38,G39/G40/G41,G42
14.1 Subprogram Control; M98, M99, M198
14.6 User Macro Commands
15.9.1 Parameter Input by Program; G10 L70/L100, G11
16.3 Sub Part System Control
17.1 High-speed Machining Mode
17.3 High-speed High-accuracy Control
17.5 Spline Interpolation 2; G61.4
(Continue to the next page)
Date of
revision
Manual No.
Revision details
(Continued from the previous page)
18.1 Tool Position Compensation; G43.7
18.4 Inclined Surface Machining; G68.2, G68.3
18.5 3-dimensional Tool Radius Compensation (Tool's vertical-direction compensation); G40/G41.2, G42.2
19.7 Workpiece Coordinate System Preset; G92.1
19.10 Coordinate Rotation Input by Parameter ; G10 I_ J_/K_
21.6 Torque Limitation Skip; G160
22.1 System Variable List
22.5 System Variables (Tool Information)
22.15 System Variables (Time Read Variables)
22.21 System Variables (Rotary Axis Configuration Parameter)
22.27 System Variables (R Device Access Variables)
22.28 System Variables (PLC Data Reading)
The following chapters were moved.
Tool Length Compensation in the Tool Axis Direction ; G43.1/G49 (12.3 -> 18.2)
Tool Position Compensation; G43.7/G49 (12.8 -> 18.1 )
Other mistakes were corrected.
M800/M80/C80 Series Manual List
These contents are described in the presupposition that all functions of M800/M80/C80 Series are available.
Some functions or screens may not be available depending on the machine or specifications set by MTB. (Confirm the
specifications before use.)
The manuals issued by MTB take precedence over these manuals.
Manual
M800/M80 Series
Instruction Manual
IB No.
Purpose and Contents
- Operation guide for NC
IB-1501274
- Explanation for screen operation, etc.
C80 Series
Instruction Manual
IB-1501453
- Operation guide for NC
- Explanation for screen operation, etc.
M800/M80/C80 Series
Programming Manual
(Lathe System) (1/2)
IB-1501275
- G code programming for lathe system
- Basic functions, etc.
M800/M80/C80 Series
Programming Manual
(Lathe System) (2/2)
IB-1501276
- G code programming for lathe system
- Functions for multi-part system, high-accuracy function, etc.
M800/M80/C80 Series
Programming Manual
(Machining Center System) (1/2)
IB-1501277
- G code programming for machining center system
- Basic functions, etc.
M800/M80/C80 Series
Programming Manual
(Machining Center System) (2/2)
IB-1501278
- G code programming for machining center system
- Functions for multi-part system, high-accuracy function, etc.
M800/M80/C80 Series
Alarm/Parameter Manual
IB-1501279
- Alarms
- Parameters
Manuals for MTBs (NC)
Manual
M800/M80/C80 Series
Specifications Manual
IB No.
Purpose and Contents
- Model selection
IB-1501267 - Specifications of hardware unit
- Outline of various functions
M800W/M80W Series
Connection and Setup Manual
IB-1501268
- Detailed specifications of hardware unit
- Installation, connection, wiring, setup (startup/adjustment)
M800S/M80 Series
Connection and Setup Manual
IB-1501269
- Detailed specifications of hardware unit
- Installation, connection, wiring, setup (startup/adjustment)
C80 Series
Connection and Setup Manual
IB-1501452
- Detailed specifications of hardware unit
- Installation, connection, wiring, setup (startup/adjustment)
M800/M80 Series
PLC Development Manual
- Electrical design
- I/O relation (assignment, setting, connection), field network
IB-1501270
- Development environment (PLC on-board, peripheral development
environment), etc.
M800/M80 Series
PLC Programming Manual
- Electrical design
IB-1501271 - Sequence programming
- PLC support functions, etc.
M800/M80/C80 Series
PLC Interface Manual
IB-1501272
- Electrical design
- Interface signals between NC and PLC
M800/M80 Series
Maintenance Manual
IB-1501273
- Cleaning and replacement for each unit
- Other items related to maintenance
C80 Series
Maintenance Manual
IB-1501454
- Cleaning and replacement for each unit
- Other items related to maintenance
Manuals for MTBs (drive section)
Manual
MDS-E/EH Series
Specifications Manual
IB No.
Contents
IB-1501226 - Specifications for power supply regeneration type
MDS-E/EH Series
Instruction Manual
IB-1501229 - Instruction for power supply regeneration type
MDS-EJ/EJH Series
Specifications Manual
IB-1501232 - Specifications for regenerative resistor type
MDS-EJ/EJH Series
Instruction Manual
IB-1501235 - Instruction for regenerative resistor type
MDS-EM/EMH Series
Specifications Manual
IB-1501238 - Specifications for multi-hybrid, power supply regeneration type
MDS-EM/EMH Series
Instruction Manual
IB-1501241 - Instruction for multi-hybrid, power supply regeneration type
DATA BOOK
IB-1501252 - Specifications of servo drive unit, spindle drive unit, motor, etc.
Global Service Network
AMERICA
EUROPE
MITSUBISHI ELECTRIC AUTOMATION INC. (AMERICA FA CENTER)
MITSUBISHI ELECTRIC EUROPE B.V.
Central Region Service Center (Chicago)
500 CORPORATE WOODS PARKWAY, VERNON HILLS, ILLINOIS 60061, U.S.A.
TEL: +1-847-478-2500 / FAX: +1-847-478-2650
Minneapolis, MN Service Satellite
Detroit, MI Service Satellite
Grand Rapids, MI Service Satellite
Lima, OH Service Satellite
Cleveland, OH Service Satellite
Indianapolis, IN Service Satellite
St. Louis, MO Service Satellite
European Service Headquarter (Dusseldorf, GERMANY)
Mitsubishi-Electric-Platz 1 40882 RATINGEN, GERMANY
TEL: +49-2102-486-1850 / FAX: +49-2102-486-5910
South/East Region Service Center (Georgia)
1845 SATTELITE BOULEVARD STE. 450, DULUTH, GEORGIA 30097, U.S.A.
TEL +1-678-258-4529 / FAX +1-678-258-4519
Charleston, SC Service Satellite
Charlotte, NC Service Satellite
Raleigh, NC Service Satellite
Dallas, TX Service Satellite
Houston, TX Service Satellite
Hartford, CT Service Satellite
Knoxville, TN Service Satellite
Nashville, TN Service Satellite
Baltimore, MD Service Satellite
Pittsburg, PA Service Satellite
Allentown, PA Service Satellite
Syracuse, NY Service Satellite
Tampa, FL Service Satellite
Lafayette, LA Service Satellite
Western Region Service Center (California)
5900-B KATELLA AVE. - 5900-A KATELLA AVE. CYPRESS, CALIFORNIA 90630, U.S.A.
TEL: +1-714-699-2625 / FAX: +1-847-478-2650
San Francisco, CA Service Satellite
Seattle, WA Service Satellite
Canada Region Service Center (Tronto)
4299 14TH AVENUE MARKHAM, ONTARIO L3R OJ2, CANADA
TEL: +1-905-754-3805 / FAX: +1-905-475-7935
Edmonton, AB Service Satellite
Montreal, QC Service Satellite
Mexico Region Service Center (Queretaro)
Parque Tecnológico Innovación Querétaro, Lateral Carretera Estatal 431, Km 2+200, Lote 91 Modulos 1 y 2
Hacienda la Machorra, CP 76246, El Marqués, Querétaro, México
TEL: +52-442-153 4250
Monterrey, NL Service Satellite
Mexico City, DF Service Satellite
BRAZIL
MELCO CNC do Brasil Comércio e Serviços Ltda.
Brazil Region Service Center
AV. GISELE CONSTANTINO,1578, PARQUE BELA VISTA, VOTORANTIM-SP, BRAZIL CEP:18.110-650
TEL: +55-15-3023-9000
JOVIMAQ – Joinville, SC Service Satellite
MAQSERVICE – Canoas, RS Service Satellite
South Germany Service Center (Stuttgart)
KURZE STRASSE. 40, 70794 FILDERSTADT-BONLANDEN, GERMANY
TEL: + 49-711-770598-123 / FAX: +49-711-770598-141
France Service Center (Paris)
25, BOULEVARD DES BOUVETS, 92741 NANTERRE CEDEX FRANCE
TEL: +33-1-41-02-83-13 / FAX: +33-1-49-01-07-25
France Service Satellite (Lyon)
120, ALLEE JACQUES MONOD 69800 SAINT PRIEST FRANCE
TEL: +33-1-41-02-83-13 / FAX: +33-1-49-01-07-25
Italy Service Center (Milan)
VIALE COLLEONI, 7 - CENTRO DIREZIONALE COLLEONI PALAZZO SIRIO INGRESSO 1,
20864 AGRATE BRIANZA (MB), ITALY
TEL: +39-039-6053-342 / FAX: +39-039-6053-206
Italy Service Satellite (Padova)
VIA G. SAVELLI, 24 - 35129 PADOVA, ITALY
TEL: +39-039-6053-342 / FAX: +39-039-6053-206
U.K. Service Center
TRAVELLERS LANE, HATFIELD, HERTFORDSHIRE, AL10 8XB, U.K.
TEL: +49-2102-486-1850 / FAX: +49-2102-486-5910
Spain Service Center
CTRA. DE RUBI, 76-80-APDO. 420, 08173 SAINT CUGAT DEL VALLES, BARCELONA SPAIN
TEL: +34-935-65-2236 / FAX: +34-935-89-1579
Poland Service Center
UL.KRAKOWSKA 50, 32-083 BALICE, POLAND
TEL: +48-12-347-6500 / FAX: +48-12-630-4701
Hungary Service Center
MADARASZ VIKTOR 47-49 , BUDAPEST XIII; HUNGARY
TEL: +48-12-347-6500 / FAX: +48-12-630-4701
Turkey Service Center
MITSUBISHI ELECTRIC TURKEY A.Ş
SERIFALI MAHALLESI NUTUK SOKAK. NO.5 34775
UMRANIYE, ISTANBUL, TURKEY
TEL: +90-216-526-3990 / FAX: +90-216-526-3995
Czech Republic Service Center
AutoCont Control Systems s.r.o (Service Partner)
KAFKOVA 1853/3, 702 00 OSTRAVA 2, CZECH REPUBLIC
TEL: +420-59-5691-185 / FAX: +420-59-5691-199
Russia Service Center
NC-TECH (Service Partner)
213, B.NOVODMITROVSKAYA STR., 14/2, 127015 MOSCOW, RUSSIA
TEL: +7-495-748-0191 / FAX: +7-495-748-0192
Sweden Service Center
HAMMARBACKEN 14, P.O.BOX 750 SE-19127, SOLLENTUNA, SWEDEN
TEL: +46-8-6251000 / FAX: +46-8-966877
Bulgaria Service Center
AKHNATON Ltd. (Service Partner)
4 ANDREJ LJAPCHEV BLVD. POB 21, BG-1756 SOFIA, BULGARIA
TEL: +359-2-8176009 / FAX: +359-2-9744061
Ukraine Service Center (Kharkov)
CSC Automation Ltd. (Service Partner)
APTEKARSKIY PEREULOK 9-A, OFFICE 3, 61001 KHARKOV, UKRAINE
TEL: +380-57-732-7774 / FAX: +380-57-731-8721
Belarus Service Center
TECHNIKON Ltd. (Service Partner)
NEZAVISIMOSTI PR.177, 220125 MINSK, BELARUS
TEL: +375-17-393-1177 / FAX: +375-17-393-0081
South Africa Service Center
MOTIONTRONIX (Service Partner)
P.O. BOX 9234, EDLEEN, KEMPTON PARK GAUTENG, 1625, SOUTH AFRICA
TEL: +27-11-394-8512 / FAX: +27-11-394-8513
ASEAN
CHINA
MITSUBISHI ELECTRIC ASIA PTE. LTD. (ASEAN FA CENTER)
MITSUBISHI ELECTRIC AUTOMATION (CHINA) LTD. (CHINA FA CENTER)
Singapore Service Center
307 ALEXANDRA ROAD #05-01/02 MITSUBISHI ELECTRIC BUILDING SINGAPORE 159943
TEL: +65-6473-2308 / FAX: +65-6476-7439
China Shanghai Service Center
1-3,5-10,18-23/F, NO.1386 HONG QIAO ROAD, CHANG NING QU,
SHANGHAI 200336, CHINA
TEL: +86-21-2322-3030 / FAX: +86-21-2322-3000*8422
China Ningbo Service Partner
China Wuxi Service Partner
China Jinan Service Partner
China Hangzhou Service Partner
Philippines Service Center
Flexible (Service Partner)
UNIT NO.411, ALABAMG CORPORATE CENTER KM 25. WEST SERVICE ROAD
SOUTH SUPERHIGHWAY, ALABAMG MUNTINLUPA METRO MANILA, PHILIPPINES 1771
TEL: +63-2-807-2416 / FAX: +63-2-807-2417
VIETNAM
MITSUBISHI ELECTRIC VIETNAM CO.,LTD
Vietnam Ho Chi Minh Service Center
UNIT 01-04, 10TH FLOOR, VINCOM CENTER 72 LE THANH TON STREET, DISTRICT 1,
HO CHI MINH CITY, VIETNAM
TEL: +84-8-3910 5945 / FAX: +84-8-3910 5946
Vietnam Hanoi Service Center
6TH FLOOR, DETECH TOWER, 8 TON THAT THUYET STREET, MY DINH 2 WARD,
NAM TU LIEM DISTRICT, HA NOI CITY, VIETNAM
TEL: +84-4-3937-8075 / FAX: +84-4-3937-8076
INDONESIA
PT. MITSUBISHI ELECTRIC INDONESIA
Indonesia Service Center (Cikarang)
JL. KENARI RAYA BLOK G2-07A, DELTA SILICON 5, LIPPO CIKARANG - BEKASI 17550, INDONESIA
TEL: +62-21-2961-7797 / FAX: +62-21-2961-7794
MALAYSIA
MITSUBISHI ELECTRIC SALES MALAYSIA SDN. BHD.
Malaysia Service Center (Kuala Lumpur Service Center)
LOT 11, JALAN 219, P.O BOX 1036, 46860 PETALING JAYA, SELANGOR DARUL EHSAN. MALAYSIA
TEL: +60-3-7960-2628 / FAX: +60-3-7960-2629
Johor Bahru Service satellite
China Beijing Service Center
9/F, OFFICE TOWER 1, HENDERSON CENTER, 18 JIANGUOMENNEI DAJIE,
DONGCHENG DISTRICT, BEIJING 100005, CHINA
TEL: +86-10-6518-8830 / FAX: +86-10-6518-8030
China Beijing Service Partner
China Tianjin Service Center
UNIT 2003, TIANJIN CITY TOWER, NO 35 YOUYI ROAD, HEXI DISTRICT,
TIANJIN 300061, CHINA
TEL: +86-22-2813-1015 / FAX: +86-22-2813-1017
China Chengdu Service Center
1501-1503,15F,GUANG-HUA CENTRE BUILDING-C,NO.98 NORTH GUANG HUA 3th RD,
CHENGDU,610000,CHINA
TEL: +86-28-8446-8030 / FAX: +86-28-8446-8630
China Shenzhen Service Center
ROOM 2512-2516, 25/F., GREAT CHINA INTERNATIONAL EXCHANGE SQUARE, JINTIAN RD.S.,
FUTIAN DISTRICT, SHENZHEN 518034, CHINA
TEL: +86-755-2399-8272 / FAX: +86-755-8229-3686
China Xiamen Service Partner
China DongGuang Service Partner
China Dalian Service Center
DONGBEI 3-5, DALIAN ECONOMIC & TECHNICAL DEVELOPMENTZONE, LIAONING PROVINCE,
116600, CHINA
TEL: +86-411-8765-5951 / FAX: +86-411-8765-5952
KOREA
MITSUBISHI ELECTRIC AUTOMATION KOREA CO., LTD. (KOREA FA CENTER)
THAILAND
MITSUBISHI ELECTRIC FACTORY AUTOMATION (THAILAND) CO.,LTD
Thailand Service Center
12TH FLOOR, SV.CITY BUILDING, OFFICE TOWER 1, NO. 896/19 AND 20 RAMA 3 ROAD,
KWAENG BANGPONGPANG, KHET YANNAWA, BANGKOK 10120,THAILAND
TEL: +66-2-682-6522 / FAX: +66-2-682-6020
INDIA
MITSUBISHI ELECTRIC INDIA PVT., LTD.
CNC Technical Center (Bangalore)
PLOT NO. 56, 4TH MAIN ROAD, PEENYA PHASE 3,
PEENYA INDUSTRIAL AREA, BANGALORE 560058, KARNATAKA, INDIA
TEL : +91-80-4655-2121 FAX : +91-80-4655-2147
Chennai Service Satellite
Coimbatore Service Satellite
Hyderabad Service Satellite
North India Service Center (Gurgaon)
2ND FLOOR, TOWER A&B, DLF CYBER GREENS, DLF CYBER CITY,
DLF PHASE-III, GURGAON- 122 002, HARYANA, INDIA
TEL : +91-124-4630 300 FAX : +91-124-4630 399
Ludhiana Satellite
Panth Nagar Service Satellite
Delhi Service Satellite
Jamshedpur Service Satellite
West India Service Center (Pune)
EMERALD HOUSE, EL-3, J BLOCK, M.I.D.C., BHOSARI, PUNE - 411026, MAHARASHTRA, INDIA
TEL : +91-20-2710 2000 FAX : +91-20-2710 2100
Kolhapur Service Satellite
Aurangabad Service Satellite
Mumbai Service Satellite
West India Service Center (Ahmedabad)
UNIT NO: B/4, 3RD FLOOR, SAFAL PROFITAIRE, PRAHALADNAGAR CORPORATE ROAD,
PRAHALADNAGAR SATELLITE, AHMEDABAD – 380015, GUJRAT, INDIA
TEL : +91-265-2314699
Rajkot Service Satellite
Korea Service Center
8F GANGSEO HANGANG XI-TOWER A, 401 YANGCHEON-RO, GANGSEO-GU,
SEOUL 07528 KOREA
TEL: +82-2-3660-9609 / FAX: +82-2-3664-8668
Korea Daegu Service Satellite
TAIWAN
MITSUBISHI ELECTRIC TAIWAN CO., LTD. (TAIWAN FA CENTER)
Taiwan Taichung Service Center
NO.8-1, INDUSTRIAL 16TH RD., TAICHUNG INDUSTRIAL PARK, SITUN DIST.,
TAICHUNG CITY 40768, TAIWAN
TEL: +886-4-2359-0688 / FAX: +886-4-2359-0689
Taiwan Taipei Service Center
10F, NO.88, SEC.6, CHUNG-SHAN N. RD., SHI LIN DIST., TAIPEI CITY 11155, TAIWAN
TEL: +886-2-2833-5430 / FAX: +886-2-2833-5433
Taiwan Tainan Service Center
11F-1., NO.30, ZHONGZHENG S. ROAD, YONGKANG DISTRICT, TAINAN CITY 71067, TAIWAN
TEL: +886-6-252-5030 / FAX: +886-6-252-5031
OCEANIA
MITSUBISHI ELECTRIC AUSTRALIA PTY. LTD.
Oceania Service Center
348 VICTORIA ROAD, RYDALMERE, N.S.W. 2116 AUSTRALIA
TEL: +61-2-9684-7269/ FAX: +61-2-9684-7245
Notice
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.
COPYRIGHT 2015-2016 MITSUBISHI ELECTRIC CORPORATION
ALL RIGHTS RESERVED

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Key Features

  • User-friendly interface makes programming easy
  • Advanced control algorithms ensure precise and efficient machining
  • Robust construction for long-lasting performance
  • Wide range of features and capabilities to meet the needs of any application
  • Supports a variety of machine tools, including lathes, machining centers, and grinders
  • Can be used for a variety of applications, from simple to complex

Related manuals

Frequently Answers and Questions

What are the benefits of using the M800/M80/C80 Series?
The M800/M80/C80 Series offers a number of benefits, including increased productivity, improved accuracy and surface finish, and reduced operating costs.
What are the different models of the M800/M80/C80 Series?
The M800/M80/C80 Series includes three different models: the M800W series, the M800S series, and the M80W series.
What are the key features of the M800/M80/C80 Series?
The key features of the M800/M80/C80 Series include its user-friendly interface, advanced control algorithms, robust construction, and wide range of features and capabilities.

advertisement