� � ��� ������ �16 Although subprograms are useful for repeating the same operation, the custom macro function also allows use of variables, arithmetic and logic operations, and conditional branches for easy development of general programs such as pocketing and user–defined canned cycles.A machining program can call a custom macro with a simple command, just like a subprogram.
O0001 ; : : : G65 P9010 R50.0 L2 ; : : M30 ;
Machining program Custom macro
O9010 ; #1=#18/2 ; G01 G42 X#1 Y#1 F300 ; G02 X#1 Y–#1 R#1 ; : : : M99 ;
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
215
An ordinary machining program specifies a G code and the travel distance directly with a numeric value; examples are G100 and X100.0. With a custom macro, numeric values can be specified directly or using a variable number. When a variable number is used, the variable value can be changed by a program or using operations on the MDI panel.
#1=#2+100 ;
G01 X#1 F300 ;
When specifying a variable, specify a number sign (#) followed by a variable number. Personal computers allow a name to be assigned to a variable, but this capability is not available for custom macros.
Example: #1
An expression can be used to specify a variable number. In such a case, the expression must be enclosed in brackets.
Example: #[#1+#2–12]
Local and common variables can have value 0 or a value in the following ranges : –1047 to –10–29
10–29 to 1047
If the result of calculation turns out to be invalid, an alarm No. 111 is issued.
When a variable value is defined in a program, the decimal point can be omitted.
Example: When #1=123; is defined, the actual value of variable #1 is 123.000.
When the value of a variable is not defined, such a variable is referred to as a ”null” variable. Variable #0 is always a null variable. It cannot be written to, but it can be read.
16.1 VARIABLES
� ���������
� Variable representation
� Range of variable values
� Omission of the decimal point
� Undefined variable
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
216
Variables are classified into four types by variable number.
Table 16.1 Types of variables
Variable number
Type of variable
Function
#0 Always null
This variable is always null. No value can be assigned to this variable.
#1 – #33 Local variables
Local variables can only be used within a macro to hold data such as the results of operations. When the power is turned off, local variables are initialized to null. When a macro is called, arguments are assigned to local variables.
#100 – #149
#500 – #531
Common variables
Common variables can be shared among different macro programs. When the power is turned off, variables #100 to #149 are initialized to null. Variables #500 to #531 hold data even when the power is turned off.
#1000 – System variables
System variables are used to read and write a variety of NC data items such as the current position and tool compensation val- ues.
To reference the value of a variable in a program, specify a word address followed by the variable number. When an expression is used to specify a variable, enclose the expression in brackets.
Example: G01X[#1+#2]F#3;
A referenced variable value is automatically rounded according to the least input increment of the address.
Example: When G00X#1; is executed on a 1/1000–mm CNC with 12.3456 assigned to variable #1, the actual command is interpreted as G00X12.346;.
To reverse the sign of a referenced variable value, prefix a minus sign (–) to #.
Example: G00X–#1;
When an undefined variable is referenced, the variable is ignored up to an address word.
Example: When the value of variable #1 is 0, and the value of variable #2 is null, execution of G00X#1Y#2; results in G00X0;.
� Types of variables
� Referencing variables
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
217
Procedure for displaying variable values
1 Press the MENUOFFSET key to display the tool compensation screen.
2 Press the soft key [MACRO] to display the macro variable screen.
3 After press the No.
key, enter a variable number, then press
INPUT key.
The cursor moves to the position of the entered number.
VARIABLE O1234 N1234 NO. DATA NO. DATA 100 123.456 108 101 0.000 109 102 110 103 111 104 112 105 113 106 114 107 115
ACTUAL POSITION (RELATIVE) X 0.000 Y 0.000 Z 0.000 B 0.000
[ OFFSET ] [ MACRO ] [ MENU ] [ WORK ] [ ]
⋅ When the value of a variable is blank, the variable is null.
⋅ The mark ******** indicates an overflow (when the absolute value of a variable is greater than 99999999) or an underflow (when the absolute value of a variable is less than 0.0000001).
Program numbers, sequence numbers, and optional block skip numbers cannot be referenced using variables. Example:
Variables cannot be used in the following ways: O#1; /#2G00X100.0; N#3Y200.0;
� Displaying variable values
�� ������
���� � � �
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
218
System variables can be used to read and write internal NC data such as tool compensation values and current position data. Note, however, that some system variables can only be read. System variables are essential for automation and general–purpose program development.
Signals can be exchanged between the programmable machine controller (PMC) and custom macros.
Table 16.2(a) System variables for interface signals
Variable number
Function
#1000–#1015
#1032
A 16–bit signal can be sent from the PMC to a custom macro. Variables #1000 to #1015 are used to read a sig- nal bit by bit. Variable #1032 is used to read all 16 bits of a signal at one time.
#1100–#1115
#1132
A 16–bit signal can be sent from a custom macro to the PMC. Variables #1100 to #1115 are used to write a signal bit by bit. Variable #1132 is used to write all 16 bits of a signal at one time.
#1133 Variable #1133 is used to write all 32 bits of a signal at one time from a custom macro to the PMC. Note, that values from –99999999 to +99999999 can be used for #1133.
For detailed information, refer to the connection manual (B–62543EN–1).
Tool compensation values can be read and written using system variables. Usable variable numbers depend on the number of compensation pairs, and whether a distinction is made between tool length compensation and cutter compensation. When the number of compensation pairs is not greater than 200, variables #2001 to #2400 can also be used.
Table 16.2(b) System variables for tool compensation memory A
Compensation number System variable
1 :
200
#10001 (#2001) :
#10200 (#2200)
Table 16.2(c) System variable for macro alarms
Variable number
Function
#3000 When a value from 0 to 99 is assigned to variable #3000, the NC stops with an alarm. After an expression, an alarm message not longer than 26 characters can be described. The CRT screen displays alarm numbers by adding 500 to the value in variable #3000 along with an alarm message.
16.2 SYSTEM VARIABLES
Explanations
� Interface signals
� Tool compensation values
� Macro alarmsww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
219
Example: #3000=1(TOOL NOT FOUND); → The alarm screen displays ”501 TOOL NOT FOUND.”
The control state of automatic operation can be changed.
Table 16.2(d) System variable (#3003) for automatic operation control
#3003 Single block Completion of an auxiliary function
0 Enabled To be awaited
1 Disabled To be awaited
2 Enabled Not to be awaited
3 Disabled Not to be awaited
⋅ When the power is turned on, the value of this variable is 0.
⋅ When single block stop is disabled, single block stop operation is not performed even if the single block switch is set to ON.
⋅ When a wait for the completion of auxiliary functions (M, S, and T functions) is not specified, program execution proceeds to the next block before completion of auxiliary functions. Also, distribution completion signal DEN is not output.
Table 16.2(e) System variable (#3004) for automatic operation control
#3004 Feed hold Feedrate Override Exact stop
0 Enabled Enabled Enabled
1 Disabled Enabled Enabled
2 Enabled Disabled Enabled
3 Disabled Disabled Enabled
4 Enabled Enabled Disabled
5 Disabled Enabled Disabled
6 Enabled Disabled Disabled
7 Disabled Disabled Disabled
⋅ When the power is turned on, the value of this variable is 0.
⋅ When feed hold is disabled:
1. When the feed hold button is held down, the machine stops in the single block stop mode. However, single block stop operation is not performed when the single block mode is disabled with variable #3003.
2. When the feed hold button is pressed then released, the feed hold lamp comes on, but the machine does not stop; program execution continues and the machine stops at the first block where feed hold is enabled.
⋅ When feedrate override is disabled, an override of 100% is always applied regardless of the setting of the feedrate override switch on the machine operator’s panel.
� Automatic operation control
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
220
⋅ When exact stop check is disabled, no exact stop check (position check) is made even in blocks including those which do not perform cutting.
O0001 ; N1 G00 G91 X#24 Y#25 ; N2 Z#18 ;
G04 ; N3 #3003=3 ; N4 #3004=7 ; N5 G01 Z#26 F#9 ; N6 M04 ; N7 G01 Z–[ROUND[#18]+ROUND[#26]] ;
G04 ; N8 #3004=0 ; N9 #3003=0 ; N10 M03 ;
M99 ;
Fig. 16.2(a) Example of using variable #3004 in a tapping cycle
N1
N2
N3, N4
N6
N7
N8, N9, N10
N5
Settings can be read and written. Binary values are converted to decimals.
REVX : X–axis mirror image on/off REVY : Y–axis mirror image on/off TVON : TV check on/off ISO : Output code, EIA/ISO INCH : Metric input/inch input ABS : Incremental programming/absolute programming SEQ : Sequence–number automatic insertion on/off REV4 : Fourth axis mirror image on/off
#15 #14 #13 #12 #11 #10 #9 #8 REV4Setting
#7 #6 #5 #4 #3 #2 #1 #0
SEQ ABS INCH ISO TVON REVY REVXSetting
#3005
The number (target number) of parts required and the number (completion number) of machined parts can be read and written.
Table 16.2 (f) System variables for the number of parts required and the number of machined parts
Variable number Function
#3901 Number of machined parts (completion number)
#3902 Number of required parts (target number)
NOTE Do not substitute a negative value.
� ��������
� Number of machined parts
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
221
Modal information specified in blocks up to the immediately preceding block can be read.
Table 16.2(g) System variables for modal information
Variable number
Function
#4001 #4002 #4003 #4004 #4005 #4006 #4007 #4008 #4009 #4010 #4011 #4012 #4014 #4015 #4016
: #4022 #4102 #4107 #4109 #4111 #4113 #4114 #4115 #4119 #4120
G00, G01, G02, G03, G33 (Group 01) G17, G18, G19 (Group 02) G90, G91 (Group 03)
(Group 04) G94, G95 (Group 05) G20, G21 (Group 06) G40, G41, G42 (Group 07) G43, G44, G49 (Group 08) G73, G74, G76, G80–G89 (Group 09) G98, G99 (Group 10) G50, G51 (Group 11) G65, G66, G67 (Group 12) G54–G59 (Group 14) G61–G64 (Group 15) G68, G69 (Group 16) : :
(Group 22) B code D code F code H code M code Sequence number Program number S code T code
Example: When #1=#4001; is executed, the resulting value in #1 is 0, 1, 2, 3, or 33.
Position information cannot be written but can be read.
Table 16.2(h) System variables for position information
Variable number
Position information
Coordinate system
Tool com- pensation
value
Read operation
during movement
#5001–#5004 Block end point Workpiece coordinate system
Not included
Enabled
#5021–#5024 Current position Machine coordinate system
Included Disabled
#5041–#5044 Current position Workpiece coordinate
#5061–#5064 Skip signal position coordinate system Enabled
#5081–#5084 Tool offset value Disabled
#5101–#5104 Deviated servo position
� Modal information
� Current position
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
222
⋅ The first digit (from 1 to 4) represents an axis number. Digit 1 corresponds to the X–axis, digit 2 to the Y–axis, digit 3 to the Z–axis, and digit 4 to the fourth axis.
⋅ The tool offset value currently used for execution rather than the immediately preceding tool offset value is held in variables #5081 to 5088.
⋅ The tool position where the skip signal is turned on in a G31 (skip function) block is held in variables #5061 to #5068. When the skip signal is not turned on in a G31 block, the end point of the specified block is held in these variables.
⋅ When read during movement is ”disabled,” this means that expected values cannot be read due to the buffering (preread) function.
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
223
Workpiece zero point offset values can be read and written.
Table 16.2 (i) System variables for workpiece zero point offset values
Variable Number Function
#2500 #2501 #2502 #2503 #2504 #2505 #2506
First–axis external workpiece zero point offset value First–axis G54 workpiece zero point offset value First–axis G55 workpiece zero point offset value First–axis G56 workpiece zero point offset value First–axis G57 workpiece zero point offset value First–axis G58 workpiece zero point offset value First–axis G59 workpiece zero point offset value
#2600 #2601 #2602 #2603 #2604 #2605 #2606
Second–axis external workpiece zero point offset value Second–axis G54 workpiece zero point offset value Second–axis G55 workpiece zero point offset value Second–axis G56 workpiece zero point offset value Second–axis G57 workpiece zero point offset value Second–axis G58 workpiece zero point offset value Second–axis G59 workpiece zero point offset value
#2700 #2701 #2702 #2703 #2704 #2705 #2706
Third–axis external workpiece zero point offset value Third–axis G54 workpiece zero point offset value Third–axis G55 workpiece zero point offset value Third–axis G56 workpiece zero point offset value Third–axis G57 workpiece zero point offset value Third–axis G58 workpiece zero point offset value Third–axis G59 workpiece zero point offset value
#2800 #2801 #2802 #2803 #2804 #2805 #2806
Fourth–axis external workpiece zero point offset value Fourth–axis G54 workpiece zero point offset value Fourth–axis G55 workpiece zero point offset value Fourth–axis G56 workpiece zero point offset value Fourth–axis G57 workpiece zero point offset value Fourth–axis G58 workpiece zero point offset value Fourth–axis G59 workpiece zero point offset value
� Workpiece coordinate system compensation values (workpiece zero point offset values)
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
224
The operations listed in Table 16.3(a) can be performed on variables. The expression to the right of the operator can contain constants and/or variables combined by a function or operator. Variables #j and #K in an expression can be replaced with a constant. Variables on the left can also be replaced with an expression.
Table 16.3(a) Arithmetic and logic operation
Function Format Remarks
Definition #i=#j
Sum
Difference
Product
Quotient
#i=#j+#k;
#i=#j–#k;
#i=#j*#k;
#i=#j/#k;
Sine
Cosine
Tangent
Arctangent
#i=SIN[#j];
#i=COS[#j];
#i=TAN[#j];
#i=ATAN[#j]/[#k];
An angle is specified in de- grees. 90 degrees and 30 minutes is represented as 90.5 degrees.
Square root
Absolute value
Rounding off
Rounding down
Rounding up
#i=SQRT[#j];
#i=ABS[#j];
#i=ROUND[#j];
#i=FIX[#j];
#i=FUP[#j];
OR
XOR
AND
#i=#j OR #k;
#i=#j XOR #k;
#i=#j AND #k;
A logical operation is per- formed on binary numbers bit by bit.
Conversion from BCD to BIN
Conversion from BIN to BCD
#i=BIN[#j];
#i=BCD[#j];
Used for signal exchange to and from the PMC
The units of angles used with the SIN, COS, TAN, and ATAN functions are degrees. For example, 90 degrees and 30 minutes is represented as 90.5 degrees.
After the ATAN function, specify the lengths of two sides separated by a slash. A result is found where 0� �result�360.
Example : When #1=ATAN[1]/[–1], the value of #1 is 135.0
⋅ When the ROUND function is included in an arithmetic or logic operation command, IF statement, or WHILE statement, the ROUND function rounds off at the first decimal place.
Example: When #1=ROUND[#2]; is executed where #2 holds 1.2345, the value of variable #1 is 1.0.
16.3 ARITHMETIC AND LOGIC OPERATION
Explanations
� Angle units
� ATAN function
� ROUND function
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
225
⋅ When the ROUND function is used in NC statement addresses, the ROUND function rounds off the specified value according to the least input increment of the address.
Example: Creation of a drilling program that cuts according to the values of variables #1 and #2, then returns to the original position Suppose that the increment system is 1/1000 mm, variable #1 holds 1.2345, and variable #2 holds 2.3456. Then, G00 G91 X–#1; Moves 1.235 mm. G01 X–#2 F300; Moves 2.346 mm. G00 X[#1+#2]; Since 1.2345 + 2.3456 = 3.5801, the travel distance is 3.580, which does not return the tool to the original position. This difference comes from whether addition is performed before or after rounding off. G00X–[ROUND[#1]+ROUND[#2]] must be specified to return the tool to the original position.
With NC, when the absolute value of the integer produced by an operation on a number is greater than the absolute value of the original number, such an operation is referred to as rounding up to an integer. Conversely, when the absolute value of the integer produced by an operation on a number is less than the absolute value of the original number, such an operation is referred to as rounding down to an integer. Be particularly careful when handling negative numbers.
Example: Suppose that #1=1.2 and #2=–1.2. When #3=FUP[#1] is executed, 2.0 is assigned to #3. When #3=FIX[#1] is executed, 1.0 is assigned to #3. When #3=FUP[#2] is executed, –2.0 is assigned to #3. When #3=FIX[#2] is executed, –1.0 is assigned to #3.
When a function is specified in a program, the first two characters of the function name can be used to specify the function.
Example: ROUND → RO FIX → FI
(1) Functions (2) Operations such as multiplication and division (*, /, AND, MOD) (3) Operations such as addition and subtraction (+, –, OR, XOR)
Example) #1=#2+#3*SIN[#4];
(1)
(2)
(3)
(1), (2), and (3) indicate the order of operations.
� Rounding up and down to an integer
� Abbreviations of arithmetic and logic operation commands
� Priority of operations
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
226
Brackets are used to change the order of operations. Brackets can be used to a depth of five levels including the brackets used to enclose a function. When a depth of five levels is exceeded, alarm No. 118 occurs.
Example) #1=SIN [ [ [#2+#3] *#4 +#5] *#6] ;
(1)
(2)
(3)
(4)
(5) (1) to (5) indicate the order of operations.
Brackets ([, ]) are used to enclose an expression. Note that parentheses are used for comments.
Errors may occur when operations are performed.
Table 16.3(b) Errors involved in operations
Operation Average error
Maximum error
Type of error
a = b*c 1.55×10–10 4.66×10–10
a = b / c 4.66×10–10 1.88×10–9
1.24×10–9 3.73×10–9
a = b + c
a = b – c
2.33×10–10 5.32×10–10
a = SIN [ b ]
a = COS [ b ]
5.0×10–9 1.0×10–8
a = ATAN [ b ] / [ c ] (*4) 1.8×10–6 3.6×10–6
NOTE 1 The relative error depends on the result of the operation. 2 Smaller of the two types of errors is used. 3 The absolute error is constant, regardless of the result of
the operation. 4 Function TAN performs SIN/COS.
� Bracket nesting
�����������
� Brackets
� Operation error
�
a a� b�
Relative error(*1)
�
b Min
�
c,
(*2)
Absolute error(*3)
degrees�
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
227
⋅ The precision of variable values is about 8 decimal digits. When very large numbers are handled in an addition or subtraction, the expected results may not be obtained.
Example: When an attempt is made to assign the following values to variables #1 and #2: #1=9876543210123.456 #2=9876543277777.777 the values of the variables become: #1=9876543200000.000 #2=9876543300000.000 In this case, when #3=#2–#1; is calculated, #3=100000.000 results. (The actual result of this calculation is slightly different because it is performed in binary.)
⋅ Also be aware of errors that can result from conditional expressions using EQ, NE, GE, GT, LE, and LT.
Example: IF[#1 EQ #2] is effected by errors in both #1 and #2, possibly resulting in an incorrect decision. Therefore, instead find the difference between the two variables with IF[ABS[#1–#2]LT0.001]. Then, assume that the values of the two variables are equal when the difference does not exceed an allowable limit (0.001 in this case).
⋅ Also, be careful when rounding down a value. Example:
When #2=#1*1000; is calculated where #1=0.002;, the resulting value of variable #2 is not exactly 2 but 1.99999997. Here, when #3=FIX[#2]; is specified, the resulting value of variable #1 is not 2.0 but 1.0. In this case, round down the value after correcting the error so that the result is greater than the expected number, or round it off as follows: #3=FIX[#2+0.001] #3=ROUND[#2]
When a divisor of zero is specified in a division or TAN[90], alarm No. 112 occurs.
� Divisor
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
228
The following blocks are referred to as macro statements:
⋅ Blocks containing an arithmetic or logic operation (=)
⋅ Blocks containing a control statement (such as GOTO, DO, END)
⋅ Blocks containing a macro call command (such as macro calls by G65, G66, G67, or other G codes, or by M codes)
Any block other than a macro statement is referred to as an NC statement.
⋅ Even when single block mode is on, the machine does not stop. Note, however, that the machine stops in the single block mode when bit 5 of parameter 011 is 1.
⋅ Macro blocks are not regarded as blocks that involve no movement in the cutter compensation mode (see Section 16.7).
⋅ Subprogram call blocks (blocks in which subprogram calls using M98, M codes, or T codes are specified) which only contain addresses O, N, P, and L have the same features as a macro statement.
⋅ Blocks containing M99 and addresses O, N, P, and L have the same features as a macro statement.
16.4 MACRO STATEMENTS AND NC STATEMENTS
� ����� ����
� Differences from NC statements
� NC statements that have the same property as macro statements
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
229
In a program, the flow of control can be changed using the GOTO statement and IF statement. Three types of branch and repetition operations are used:�
Branch and repetition GOTO statement (unconditional branch)
IF statement (conditional branch: if ..., then...)
WHILE statement (repetition while ...)
A branch to sequence number n occurs. When a sequence number outside of the range 1 to 9999 is specified, alarm No. 128 occurs. A sequence number can also be specified using an expression.
GOTO n ; n: Sequence number (1 to 9999)
Example: GOTO1; GOTO#10;
Specify a conditional expression after IF. If the specified conditional expression is satisfied, a branch to sequence number n occurs. If the specified condition is not satisfied, the next block is executed.
IF [#1 GT 10] GOTO 2 ;
N2 G00 G91 X10.0 ; :
If the value of variable #1 is greater than 10, a branch to sequence num- ber N2 occurs.
If the condi- tion is not sa- tisfied Processing If the condition is satisfied
A conditional expression must include an operator inserted between two variables or between a variable and constant, and must be enclosed in brackets ([, ]). An expression can be used instead of a variable.
16.5 BRANCH AND REPETITION
16.5.1 Unconditional Branch (GOTO Statement)
16.5.2 Conditional Branch (IF Statement)
� ����� ����
� Conditional expression
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
230
Operators each consist of two letters and are used to compare two values to determine whether they are equal or one value is smaller or greater than the other value. Note that the inequality sign cannot be used.
Table 16.5.2 Operators
Operator Meaning
EQ Equal to (=)
NE Not equal to (�)
GT Greater than (>)
GE Greater than or equal to (�)
LT Less than (<)
LE Less than or equal to (�)
The sample program below finds the total of numbers 1 to 10.

Specify a conditional expression after WHILE. While the specified condition is satisfied, the program from DO to END is executed. If the specified condition is not satisfied, program execution proceeds to the block after END.
WHILE [conditional expression] DO m ; (m=1,2,3)
END m ; :
ProcessingIf the condition is not satisfied
If the condition is satisfied
While the specified condition is satisfied, the program from DO to END after WHILE is executed. If the specified condition is not satisfied, program execution proceeds to the block after END. The same format as for the IF statement applies. A number after DO and a number after END are identification numbers for specifying the range of execution. The numbers 1, 2, and 3 can be used. When a number other than 1, 2, and 3 is used, alarm No. 126 occurs.
� Operators
Sample program
16.5.3 Repetition (While Statement)
� ����� ����
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
231
The identification numbers (1 to 3) in a DO–END loop can be used as many times as desired. Note, however, when a program includes crossing repetition loops (overlapped DO ranges), alarm No. 124 occurs.
1. The identification numbers (1 to 3) can be used as many times as required.
WHILE [ 0 ] DO 1 ;
END 1 ; :
WHILE [ 0 ] DO 1 ;
END 1 ;
WHILE [ 0 ] DO 1 ;
END 1 ; :
WHILE [ 0 ] DO 2 ;
END 2 ;
WHILE [ 0 ] DO 1 ;
WHILE [ 0 ] DO 2 ; :
WHILE [ 0 ] DO 3 ; :
END 3 ; :
END 2 ; :
END 1 ;
WHILE [ 0 ] DO 1 ;
END 1 ;
IF [ 0 ] GOTO n ;
Nn
WHILE [ 0 ] DO 1 ;
END 1 ;
IF [ 0 ] GOTO n ;
Nn 0 ;
:
2. DO ranges cannot overlap.
Processing
Processing
Processing
Processing
Processing
3. DO loops can be nested to a maximum depth of three lev- els.
4. Control can be transferred to the outside of a loop.
5. Branches cannot be made to a location within a loop.
When DO m is specified without specifying the WHILE statement, an infinite loop ranging from DO to END is produced.
When a branch to the sequence number specified in a GOTO statement occurs, the sequence number is searched for. For this reason, processing in the reverse direction takes a longer time than processing in the forward direction. Using the WHILE statement for repetition reduces processing time.
In a conditional expression that uses EQ or NE, a null value and zero have different effects. In other types of conditional expressions, a null value is regarded as zero.
� Nesting
�����������
� Infinite loops
� Processing time
� Undefined variable
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
232
The sample program below finds the total of numbers 1 to 10.
O0001; #1=0; #2=1; WHILE[#2 LE 10]DO 1; #1=#1+#2; #2=#2+1; END 1; M30;
Sample program
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
233
A macro program can be called using the following methods:
Macro call Simple call ((G65) modal call (G66, G67) Macro call with G code Macro call with M code Subprogram call with M code Subprogram call with T code
Macro call (G65) differs from subprogram call (M98) as described below.
⋅ With G65, an argument (data passed to a macro) can be specified. M98 does not have this capability.
⋅ When an M98 block contains another NC command (for example, G01 X100.0 M98Pp), the subprogram is called after the command is executed. On the other hand, G65 unconditionally calls a macro.
⋅ When an M98 block contains another NC command (for example, G01 X100.0 M98Pp), the machine stops in the single block mode. On the other hand, G65 does not stops the machine.
⋅ With G65, the level of local variables changes. With M98, the level of local variables does not change.
When G65 is specified, the custom macro specified at address P is called. Data (argument) can be passed to the custom macro program.
G65 P p L� � <argument–specification> ;
P : Number of the program to call � : Repetition count (1 by default) Argument : Data passed to the macro
O0001 ; : G65 P9010 L2 A1.0 B2.0 ; : M30 ;
O9100 ; #3=#1+#2 ; IF [#3 GT 360] GOTO 9 ; G00 G91 X#3 ; N9 M99 ;
⋅ After G65, specify at address P the program number of the custom macro to call.
⋅ When a number of repetitions is required, specify a number from 1 to 9999 after address L. When L is omitted, 1 is assumed.
⋅ By using argument specification, values are assigned to corresponding local variables.
16.6 MACRO CALL
����������
� Differences between macro calls and subprogram calls
16.6.1 Simple Call (G65)
�� ��������
� Call ww
w. cn
cc en
ter .co
m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
234
Two types of argument specification are available. Argument specification I uses letters other than G, L, O, N, and P once each. Argument specification II uses A, B, and C once each and also uses I, J, and K up to ten times. The type of argument specification is determined automatically according to the letters used.
Argument specification I
A B C D E F H
#1 #2 #3 #7 #8 #9 #11
I J K M Q R S
#4 #5 #6 #13 #17 #18 #19
T U V W X Y Z
#20 #21 #22 #23 #24 #25 #26
Address Address AddressVariable number
Variable number
Variable number
⋅ Addresses G, L, N, O, and P cannot be used in arguments.
⋅ Addresses that need not be specified can be omitted. Local variables corresponding to an omitted address are set to null.
Argument specification II Argument specification II uses A, B, and C once each and uses I, J, and K up to ten times. Argument specification II is used to pass values such as three–dimensional coordinates as arguments.
A B C I1 J1 K1 I2 J2 K2 I3 J3
#1 #2 #3 #4 #5 #6 #7 #8 #9 #10 #11
K3 I4 J4 K4 I5 J5 K5 I6 J6 K6 I7
#12 #13 #14 #15 #16 #17 #18 #19 #20 #21 #22
J7 K7 I8 J8 K8 I9 J9 K9 I10 J10 K10
#23 #24 #25 #26 #27 #28 #29 #30 #31 #32 #33
Address Variable number
Address Variable number
Address Variable number
⋅ Subscripts of I, J, and K for indicating the order of argument specification are not written in the actual program.
G65 must be specified before any argument.
The NC internally identifies argument specification I and argument specification II. If a mixture of argument specification I and argument specification II is specified, the type of argument specification specified later takes precedence.
The units used for argument data passed without a decimal point correspond to the least input increment of each address. The value of an argument passed without a decimal point may vary according to the system configuration of the machine. It is good practice to use decimal points in macro call arguments to maintain program compatibility.
� Argument specification
�����������
� Format
� Mixture of argument specifications I and II
� Position of the decimal point
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
235
Calls can be nested to a depth of four levels including simple calls (G65) and modal calls (G66). This does not include subprogram calls (M98).
⋅ Local variables from level 0 to 4 are provided for nesting.
⋅ The level of the main program is 0.
⋅ Each time a macro is called (with G65 or G66), the local variable level is incremented by one. The values of the local variables at the previous level are saved in the NC.
⋅ When M99 is executed in a macro program, control returns to the calling program. At that time, the local variable level is decremented by one; the values of the local variables saved when the macro was called are restored.
O0001 ; : #1=1 ; G65 P2 A2 ; : : M30 ;
O0002 ; : : G65 P3 A3 ; : : M99 ;
O0003 ; : : G65 P4 A4 ; : : M99 ;
O0004 ; : : G65 P5 A5 ; : : M99 ;
O0005 ; : : : : : M99 ;
#1 1
::
#33
#1 2
::
#33
#1 3
::
#33
#1 4
::
#33
#1 5
::
#33
#100–, #500–
Main program (level 0) Macro (level 1) Macro (level 2) Macro (level 3)
Macro (level 4)
Local variables (level 0) (Level 1) (Level 2) (Level 3) (Level 4)
Common variables
Variables that can be read from and written to by macros at different levels
� Call nesting
� Local variable levels
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
236
A macro is created which drills H holes at intervals of B degrees after a start angle of A degrees along the periphery of a circle with radius I. The center of the circle is (X,Y). Commands can be specified in either the absolute or incremental mode.

Sample program (bolt hole circle)
� Calling format
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16.
Note: L0 can also be used.
   M99;
Meaning of variables:
#3: Stores the G code of group 3. #5: X coordinate of the next hole to drill #6: Y coordinate of the next hole to drill
� Program calling a macro program
� Macro program (called program)
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
238
Once G66 is issued to specify a modal call a macro is called after a block specifying movement along axes is executed. This continues until G67 is issued to cancel a modal call.
O0001 ; : G66 P9100 L2 A1.0 B2.0 ; G00 G90 X100.0 ; Y200.0 ; X150.0 Y300.0 ; G67 ; : M30 ;
O9100 ; : G00 Z–#1 ; G01 Z–#2 F300 ; : : : : M99 ;
G66 P p L� � <argument–specification> ;
P : Number of the program to call � : Repetition count (1 by default) Argument : Data passed to the macro
⋅ After G66, specify at address P a program number subject to a modal call.
⋅ When a number of repetitions is required, a number from 1 to 9999 can be specified at address L.
⋅ As with a simple call (G65), data passed to a macro program is specified in arguments.
When a G67 code is specified, modal macro calls are no longer performed in subsequent blocks.
Calls can be nested to a depth of four levels including simple calls (G65) and modal calls (G66). This does not include subprogram calls (M98).
Modal calls can be nested by specifying another G66 code during a modal call.
⋅ In a G66 block, no macros can be called.
⋅ G66 needs to be specified before any arguments.
⋅ No macros can be called in a block which contains a code such as a miscellaneous function that does not involve movement along an axis.
⋅ Local variables (arguments) can only be set in G66 blocks. Note that local variables are not set each time a modal call is performed.
16.6.2 Modal Call (G66)
�� ��������
� Call
� Cancellation
� Call nesting
� Modal call nesting
����������
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
239
The same operation as the drilling canned cycle G81 is created using a custom macro and the machining program makes a modal macro call. For program simplicity, all drilling data is specified using absolute values.
Z=0
R
Z
The canned cycle consists of the following basic operations:
Operation 1: Positioning along the X–axis and Y–axis
Operation 2: Rapid traverse to point R
Operation 3: Cutting feed to point Z
Operation 4: Rapid traverse to point R or I
Rapid traverse
Cutting feed
Operation 1 Position I
Operation 2 Operation 4
Position R
Operation 3
Position Z
G65 P9110 X x Y y Z z R r F f L l ;
X : X coordinate of the hole (absolute specification only) (#24). . . . . Y : Y coordinate of the hole (absolute specification only) (#25). . . . . Z : Coordinates of position Z (absolute specification only) (#26). . . . R : Coordinates of position R (absolute specification only) (#18). . . .
M99;
Sample program
� Calling format
� Program that calls a macro program
� Macro program (program called)ww
w. cn
cc en
ter .co
m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
240
By setting a G code number used to call a macro program in a parameter, the macro program can be called in the same way as for a simple call (G65).
O0001 ; : G81 X10.0 Y20.0 Z–10.0 ; : M30 ;
O9010 ; : : : N9 M99 ;
Parameter 220 = 81
By setting a G code number from 1 to 255 used to call a custom macro program (9010 to 9019) in the corresponding parameter (220 to 229), the macro program can be called in the same way as with G65. For example, when a parameter is set so that macro program O9010 can be called with G81, a user–specific cycle created using a custom macro can be called without modifying the machining program.
O9010 O9011 O9012 O9013 O9014 O9015 O9016 O9017 O9018 O9019
220 221 222 223 224 225 226 227 228 229
Program number Parameter number
As with a simple call, a number of repetitions from 1 to 9999 can be specified at address L.
As with a simple call, two types of argument specification are available: Argument specification I and argument specification II. The type of argument specification is determined automatically according to the addresses used.
In a program called with a G code, no macros can be called using a G code. A G code in such a program is treated as an ordinary G code. In a program called as a subprogram with an M or T code, no macros can be called using a G code. A G code in such a program is also treated as an ordinary G code.
16.6.3 Macro Call Using G Code
�� ��������
� Correspondence between parameter numbers and program numbers
� Repetition
� Argument specification
����������
� Nesting of calls using G codesww
w. cn
cc en
ter .co
m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
241
By setting an M code number used to call a macro program in a parameter, the macro program can be called in the same way as with a simple call (G65).
O0001 ; : M50 A1.0 B2.0 ; : M30 ;
O9020 ; : : : M99 ;
Parameter 230 = 50
By setting an M code number from 1 to 255 used to call a custom macro program (9020 to 9029) in the corresponding parameter (230 to 239), the macro program can be called in the same way as with G65.
O9020 O9021 O9022 O9023 O9024 O9025 O9026 O9027 O9028 O9029
230 231 232 233 234 235 236 237 238 239
Program number Parameter number
As with a simple call, a number of repetitions from 1 to 9999 can be specified at address L.
As with a simple call, two types of argument specification are available: Argument specification I and argument specification II. The type of argument specification is determined automatically according to the addresses used.
– An M code used to call a macro program must be specified at the start of a block.
– In a macro called with a G code or in a program called as a subprogram with an M or T code, no macros can be called using an M code. An M code in such a macro or program is treated as an ordinary M code.
16.6.4 Macro Call Using an M Code
�� ��������
� Correspondence between parameter numbers and program numbers
� Repetition
� Argument specification
����������
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
242
By setting an M code number used to call a subprogram (macro program) in a parameter, the macro program can be called in the same way as with a subprogram call (M98).
O0001 ; : M03 ; : M30 ;
O9001 ; : : : M99 ;
Parameter 240 = 03
By setting an M code number from 1 to 255 used to call a subprogram in a parameter (240 to 242), the corresponding macro program (9001 to 9009) can be called in the same way as with M98.
O9001 O9002 O9003
240 241 242
Program number Parameter number
As with a simple call, a number of repetitions from 1 to 9999 can be specified at address L.
Argument specification is not allowed.
An M code in a macro program that has been called is treated as an ordinary M code.
In a macro called with a G code or in a program called with an M or T code, no subprograms can be called using an M code. An M code in such a macro or program is treated as an ordinary M code.
16.6.5 Subprogram Call Using an M Code
�� ��������
� Correspondence between parameter numbers and program numbers
� Repetition
� Argument specification
� M code
����������
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
243
By enabling subprograms (macro program) to be called with a T code in a parameter, a macro program can be called each time the T code is specified in the machining program.
O0001 ; : T23 ; : M30 ;
O9000 ; : : : M99 ;
Bit 5 of parameter 040 = 1
By setting bit 5 of parameter 040 to 1, the macro program O9000 can be called when a T code is specified in the machining program. A T code specified in a machining program is assigned to common variable #149.
In a macro called with a G code or in a program called with an M or T code, no subprograms can be called using a T code. A T code in such a macro or program is treated as an ordinary T code.
16.6.6 Subprogram Calls Using a T Code
�� ��������
� Call
����������
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
244
By using the subprogram call function that uses M codes, the cumulative usage time of each tool is measured.
⋅ The cumulative usage time of each of tools T01 to T05 is measured. No measurement is made for tools with numbers greater than T05.
⋅ The following variables are used to store the tool numbers and measured times:
#501
#502
#503
#504
#505
Cumulative usage time of tool number 1
Cumulative usage time of tool number 2
Cumulative usage time of tool number 3
Cumulative usage time of tool number 4
Cumulative usage time of tool number 5
⋅ Usage time starts being counted when the M03 command is specified and stops when M05 is specified. System variable #3002 is used to measure the time during which the cycle start lamp is on. The time during which the machine is stopped by feed hold and single block stop operation is not counted, but the time used to change tools and pallets is included.
Set 3 in parameter 240, and set 05 in parameter 241.
Set 0 in variables #501 to #505.
     M30;
16.6.7 Sample Program
Conditions
Operation check
� Parameter setting
� Variable value setting
� Program that calls a macro program
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16.

 M99;
Macro program (program called)
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
246
For smooth machining, the NC statement is preread to be performed next. This operation is referred to as buffering. In cutter compensation mode (G41, G42), the NC prereads NC statements two or three blocks ahead to find intersections. Macro statements for arithmetic expressions and conditional branches are processed as soon as they are read into the buffer. Blocks containing M00, M01, M02, or M30, blocks containing M codes for which buffering is suppressed by setting parameters 111 to 112, and blocks containing G31 are not preread.
N1 G31 X100.0 ; N2 #100=1 :
>
> :Block being executed
NC statement execution
Macro statement execution
Buffer
N1
N2
N1 X100.0 ;>
> : Block being executed � : Block read into the buffer
NC statement execution
Macro statement execution
Buffer
N1
N2 N3
N4
N2 #1=100 ; N3 #2=200 ; N4 Y200.0 ; :
N4
When N1 is being executed, the next NC statement (N4) is read into the buffer. The macro statements (N2, N3) between N1 and N4 are processed during execution of N1.
16.7 PROCESSING MACRO STATEMENTS
Explanations
� When the next block is not buffered (M codes that are not buffered, G31, etc.)
� Buffering the next block in other than cutter compensation mode (G41, G42) (normally prereading one block)
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
247
N1 G01 G41 G91 X50.0 Y30.0 F100 Dd ;>
> : Block being executed � : Blocks read into the buffer
NC statement execution
Macro statement execution
Buffer
N1
N2
N3
N2 #1=100 ; N3 X100.0 ; N4 #2=200 ; N5 Y50.0 ; :
N4
N5
N3
When N1 is being executed, the NC statements in the next two blocks (up to N5) are read into the buffer. The macro statements (N2, N4) between N1 and N5 are processed during execution of N1.
N1 G01 G41 X100.0 G100 Dd ;>
> : Block being executed � : Blocks read into the buffer
N1
N2
N3
N2 #1=100 ; N3 Y100.0 ; N4 #2=200 ; N5 M08 ; N6 #3=300 ; N7 X200.0 ; :
N4
N3
N5
N6
N7
NC statement execution
Macro statement execution
Buffer
When the NC1 block is being executed, the NC statements in the next two blocks (up to N5) are read into the buffer. Since N5 is a block that involves no movement, an intersection cannot be calculated. In this case, the NC statements in the next three blocks (up to N7) are read. The macro statements (N2, N4, and N6) between N1 and N7 are processed during execution of N1.
� Buffering the next block in cutter compensation mode (G41, G42)
� When the next block involves no movement in cutter compensation C (G41, G42) mode
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
248
Custom macro programs are similar to subprograms. They can be registered and edited in the same way as subprograms. The storage capacity is determined by the total length of tape used to store both custom macros and subprograms.
16.8 REGISTERING CUSTOM MACRO PROGRAMS
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
249
Macro call can be specified in automatic operation. During automatic operation, however, it is impossible to switch to the MDI mode for a macro program call.
A custom macro program cannot be searched for a sequence number.
 A block containing a macro call command (G65, G66, or G67) does not stop even when the single block mode is on. Blocks containing arithmetic operation commands and control commands can be stopped in single block mode by setting (bit 5 of parameter 011) to 1. Single block stop operation is used for testing custom macro programs. Note that when a single block stop occurs at a macro statement in cutter compensation C mode, the statement is assumed to be a block that does not involve movement, and proper compensation cannot be performed in some cases. (Strictly speaking, the block is regarded as specifying a movement with a travel distance 0.)
A / appearing in the middle of an <expression> (enclosed in brackets [ ] on the right–hand side of an arithmetic expression) is regarded as a division operator; it is not regarded as the specifier for an optional block skip code.
Registered custom macro programs and subprograms should be protected from being destroyed by accident. By setting (bit 0 of parameter 389 #2) and (bit 4 of parameter 010) to 1, deletion and editing are disabled for custom macro programs and subprograms with program numbers 8000 to 8999 and 9000 to 9999. When the entire memory is cleared (by
pressing the RESET and DELET keys at the same time to turn on the power),
the contents of memory such as custom macro programs are deleted.
Local variables and common variables #100 to #199 are cleared to null values by a reset operation. They can be prevented from being cleared by setting, (bits 6 and 7 of parameter 040). System variables #1000 to #1133 are not cleared. A reset operation clears any called states of custom macro programs and subprograms, and any DO states, and returns control to the main program.
As with M98, the M and T codes used for subprogram calls are not displayed.
When a feed hold is enabled during execution of a macro statement, the machine stops after execution of the macro statement. The machine also stops when a reset or alarm occurs.
+0.0000001 to +99999999 –99999999 to –0.0000001 The number of significant digits is 8 (decimal). If this range is exceeded, alarm No. 003 occurs.
16.9 LIMITATIONS
� MDI operation
� Sequence number search
� Single block
� Optional block skip
� Operation in EDIT mode
� Reset
� Display of the PROGRAM RESTART page
� Feed hold
� Constant values that can be used in <expression>
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
250
In addition to the custom macro commands, the following macro commands are available. They are referred to as external output commands. – BPRNT – DPRNT – POPEN – PCLOS These commands are provided to output variable values and characters through the reader/punch interface.
Specify these commands in the following order:
Open command: POPEN Before specifying a sequence of data output commands, specify this command to establish a connection to an external input/output device.
Data output command: BPRNT or DPRNT Specify necessary data output.
Close command: PCLOS When all data output commands have completed, specify PCLOS to release a connection to an external input/output device.
POPEN POPEN establishes a connection to an external input/output device. It must be specified before a sequence of data output commands. The NC outputs a DC2 control code.
BPRNT [ a #b [ c ] … ]
Number of significant decimal places Variable
Character
The BPRNT command outputs characters and variable values in binary.
(i) Specified characters are converted to corresponding codes according to the setting (ISO) that is output at that time. Specifiable characters are as follows: – Letters (A to Z) – Numbers – Special characters ( * , /, +, –, etc.) An asterisk (*) is output by a space code.
(ii) All variables are stored with a decimal point. Specify a variable followed by the number of significant decimal places enclosed in brackets. A variable value is treated as 2–word (32–bit) data, including the decimal digits. It is output as binary data starting from the highest byte.
(iii)When specified data has been output, an EOB code is output according to the ISO code settings on the parameter screen.
(iv) Null variables are regarded as 0.
16.10 EXTERNAL OUTPUT COMMANDS
� ����� ����
� Open command POPEN
� Data output command BPRNT
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
251
Example )
LF 12 (0000000C) M –1638400(FFE70000)
�
410 (0000019A) X Space �
BPRINT [ C** X#100 [3] Y#101 [3] M#10 [0] ] Variable value #100=0.40596 #101=–1638.4 #10=12.34
DPRNT [ a #b [ c d ] … ]
Number of significant decimal places
Number of significant digits in the integer part
Variable
Character
The DPRNT command outputs characters and each digit in the value of a variable according to the code set in the settings (ISO).
(i) For an explanation of the DPRNT command, see Items (i), (iii), and (iv) for the BPRNT command.
(ii) When outputting a variable, specify # followed by the variable number, then specify the number of digits in the integer part and the number of decimal places enclosed in brackets. One code is output for each of the specified number of digits, starting with the highest digit. For each digit, a code is output according to the settings (ISO). The decimal point is also output using a code set in the settings (ISO). Each variable must be a numeric value consisting of up to eight digits. When high–order digits are zeros, these zeros are not output if (bit1 of parameter 040) is 1. If it is 0, a space code is output each time a zero is encountered. When the number of decimal places is not zero, digits in the decimal part are always output. If the number of decimal places is zero, no decimal point is output. When (bit 1 of parameter 040) is 0, a space code is output to indicate a positive number instead of +; if it is 1, no code is output.
� Data output command DPRNT
ww w.
cn cc
en ter
.co m
PROGRAMMING16. CUSTOM MACRO B B–62574EN/02
252
Example )
sp
spspsp
sp
sp
DPRINT [ X#2 [53] Y#5 [53] T#30 [20] ] Variable value #2=128.47398 #5=–91.2 #30=123.456
(1) Parameter (No.040#1)=0
L F
T
Y –
X
91.200
128.474
23
sp
LF
T23
Y–91.200
X128.474
(2) Parameter (No.040#1)=1
PCLOS ; The PCLOS command releases a connection to an external input/output device. Specify this command when all data output commands have terminated. DC4 control code is output from the CNC.
Specify the channel use for parameter. According to the specification of this parameter, set data items (such as the baud rate) for the reader/punch interface. The remote buffer cannot be specified. Specify that the reader/punch interface is used as the output device for punching. (Never specify output to the FANUC CASSETTE or floppy disks.) To indicate the end of a line of data in ISO code, specify whether to use only an LF (bit 4 of parameter 057 is 0) or an LF and CR (bit 4 of parameter 057 is 1).
� Close command PCLOS
� Required settingww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 16. CUSTOM MACRO B
253
NOTE 1 It is not necessary to always specify the open command
(POPEN), data output command (BPRNT, DPRNT), and close command (PCLOS) together. Once an open command is specified at the beginning of a program, it does not need to be specified again except after a close command was specified.
2 Be sure to specify open commands and close commands in pairs. Specify the close command at the end of the program. However, do not specify a close command if no open command has been specified.
3 When a reset operation is performed while commands are being output by a data output command, output is stopped and subsequent data is erased. Therefore, when a reset operation is performed by a code such as M30 at the end of a program that performs data output, specify a close command at the end of the program so that processing such as M30 is not performed until all data is output.
ww w.
cn cc
en ter
.co m
PROGRAMMING 17. PROGRAMMABLE PARAMETER ENTRY (G10) B–62574EN/02
254
����� �� �� ��� ���������������17 The values of parameters can be entered in a lprogram. This function is used for setting pitch error compensation data when attachments are changed or the maximum cutting feedrate or cutting time constants are changed to meet changing machining conditions.
ww w.
cn cc
en ter
.co m
PROGRAMMINGB–62574EN/02 17. PROGRAMMABLE PARAMETER
ENTRY (G10)
255
G10L50; Parameter entry mode setting N_P_;
G11; Parameter entry mode cancel
N_: Parameter No. (4digids) or data No. for pitch errors compensation P_: Parameter setting value (Leading zeros can be omitted.)
������ � � � �� ���
��� ��
Can not use a decimal point in a value set in a parameter (P_). a decimal point cannot be used in a custom macro variable for P_ either.
WARNING 1 Do not fail to perform reference point return manually
after changing the pitch error compensation data or backlash compensation data. Without this, the machine position can deviate from the correct position.
2 The canned–cycle mode must be cancelled before entering of parameters.
NOTE Other NC statements cannot be specified while in parameter input mode.
G10L50 ; Parameter entry mode N500 P50 ; G11 ; cancel parameter entry mode
To change the length of the effective area (in–position) along
the X–axis
Format
Explanations
� ���� ����� ������ � � ����� (P_)
Examples
ww w.
cn cc
en ter
.co m
PROGRAMMING18. ROTARY AXIS ROLL–OVER B–62574EN/02
256
�� �� � ��� � ���������18 The roll–over function prevents coordinates for the rotation axis from overflowing. The roll–over function is enabled by setting bit 1 of parameter 398 to 1.
For an incremental command, the tool moves the angle specified in the command. For an absolute command, the coordinates after the tool has moved are values set in parameter No. 860, and rounded by the angle corresponding to one rotation. The tool moves in the direction in which the final coordinates are closest when bit 2 of parameter No. 398 is set to 0. Displayed values for relative coordinates are also rounded by the angle corresponding to one rotation when bit 3 of parameter No. 398 is set to 1.
Assume that axis A is the rotating axis and that the amount of movement per rotation is 360.000 (parameter No. 1260 = 360000). When the following program is executed using the roll–over function of the rotating axis, the axis moves as shown below.
G90 A0 ; Sequence
number Actual
movement value
Absolute coordinate value after movement
end
N1 G90 A–150.0 ; N1 –150 210
N2 G90 A540.0 ; N2 –30 180
N3 G90 A–620.0 ; N3 –80 100
N4 G91 A380.0 ; N4 +380 120
N5 G91 A–840.0 ; N5 –840 0
Relative coordinate value –720°
–0°
–360°
–0° –0°
–0° 360°
–0°
N1
N2
N3
N4
N5
210°(Absolute)
180° 100°
120°
Absolute coordinate value
Genera �
Explanations
��������
ww w.
cn cc
en ter
.co m
III OPERATION
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 1. GENERAL
259
1 �������
ww w.
cn cc
en ter
.co m
OPERATION1. GENERAL B–62574EN/02
260
The CNC machine tool has a position used to determine the machine position. This position is called the reference position, where the tool is replaced or the coordinate are set. Ordinarily, after the power is turned on, the tool is moved to the reference position. Manual reference position return is to move the tool to the reference position using switches and pushbuttons located on the operator’s panel.
Reference position
Tool
Machine operator’s panel
Fig.1.1 (a) Manual reference position return
The tool can be moved to the reference position also with program commands. This operation is called automatic reference position return (See II–6).
1.1 MANUAL OPERATION
Explanations � Manual reference
position return (See Section III–3.1)
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 1. GENERAL
261
Using machine operator’s panel switches, pushbuttons, or the manual handle, the tool can be moved along each axis.
Tool
Workpiece
Machine operator’s panel
Manual pulse generator
Fig.1.1 (b) The tool movement by manual operation
The tool can be moved in the following ways:
(i) Jog feed (See III–3.2) The tool moves continuously while a pushbutton remains pressed.
(ii) Incremental feed (See III–3.3) The tool moves by the predetermined distance each time a button is pressed.
(iii) Manual handle feed (See III–3.4) By rotating the manual handle,the tool moves by the distance corresponding to the degree of handle rotation.
� The tool movement by manual operation
ww w.
cn cc
en ter
.co m
OPERATION1. GENERAL B–62574EN/02
262
Automatic operation is to operate the machine according to the created program. It includes memory, DNC, and MDI operations. (See III–4).
Program
Tool
01000 ; M_S_T ; G92_X_ ; G00... ; G01...... ;
.
.
.
.
Fig.1.2 (a) Tool Movement by Programming
After the program is once registered in memory of CNC, the machine can be run according to the program instructions. This operation is called memory operation.
CNC Machine
Memory
Fig.1.2 (b) Memory Operation
In this mode of operation, the program is not registered in the CNC memory. It is read from the connected I/O unit instead. This mode is useful when the program is too large to fit the CNC memory.
After the program is entered, as an command group, from the MDI keyboard, the machine can be run according to the program. This operation is called MDI operation.
MDI keyboard CNC
Manual program input
Machine
Fig.1.2 (c) MDI operation
1.2 TOOL MOVEMENT BY PROGRAMING – AUTOMATIC OPERATION
Explanations � ���� �� � � �����
� DNC operation
� MDI operation
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 1. GENERAL
263
Select the program used for the workpiece. Ordinarily, one program is prepared for one workpiece. If two or more programs are in memory, select the program to be used, by searching the program number (III–9.3).
G92
O1001 Program number
M30
G92
O1002 G92
M30
Program number Program number search
Automatic operation
O1003 ––––––
M30
––––––
––––––
Work–1 program
Work–2 program
Program number
Work–3 program
In memory or on a tape
Fig.1.3 (a) Program Selection for Automatic Operation
Pressing the cycle start pushbutton causes automatic operation to start. By pressing the feed hold or reset pushbutton, automatic operation pauses or stops. By specifying the program stop or program termination command in the program, the running will stop during automatic operation. When one process machining is completed, automatic operation stops.
Cycle start
Feed hold Reset
Program stop Program end
Stop caused by program
Start
Stop Automatic operation
Fig.1.3 (b) Start and Stop for Automatic Operation
1.3 AUTOMATIC OPERATION
Explanations
� Program selection
� Start and stop (See III–4)
ww w.
cn cc
en ter
.co m
OPERATION1. GENERAL B–62574EN/02
264
Before machining is started, the automatic running check can be executed. It checks whether the created program can operate the machine as desired. This check can be accomplished by running the machine actually or viewing the position display change (without running the machine) (See III–5).
Remove the workpiece, check only movement of the tool. Select the tool movement rate using the dial on the operator’s panel.
Tool
Table
Fig.1.4 (a) Dry run
Check the program by changing the feed rate specified by the program.
Tool
Feed rate specified by program : 100 mm/min.
Feed rate after feed rate override : 20 mm/min.
Workpiece
Fig1.4 (b) Feedrate Override
1.4 TESTING A PROGRAM
1.4.1 Check by Running the Machine
Explanations
� Dry run (See III–5.4)
� Feedrate override (See III–5.2)
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 1. GENERAL
265
When the cycle start pushbutton is pressed, the tool executes one operation then stops. By pressing the cycle start again, the tool executes the next operation then stops. The program is checked in this manner.
Cycle start
Cycle start
Cycle start
Cycle start
StopStop
Stop
Tool
���������
Fig.1.4 (c) Single Block
Tool
CRT/MDI
X Y
The tool remains stopped, and only the positional displays of the axes change.
Workpiece
Fig1.4 (d) Machine Lock
When automatic running is placed into the auxiliary function lock mode during the machine lock mode, all auxiliary functions (spindle rotation, tool replacement, coolant on/off, etc.) are disabled.
� Single block (See III–5.5)
1.4.2 How to View the Position Display Change without Running the Machine
Explanations
� Machine lock (See III–5.1)
� Auxiliary function lock (See III–5.1)
ww w.
cn cc
en ter
.co m
OPERATION1. GENERAL B–62574EN/02
266
After a created program is once registered in memory, it can be corrected or modified from the CRT/MDI panel (See III–9). This operation can be executed using the part program storage/edit function.
Program registration
CRT/MDI
CNC CNC
Program correction or modification
Tape reader
CNC tape (program)
Fig. 1.5 (a) Part Program Editing
1.5 EDITING A PART PROGRAM
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 1. GENERAL
267
The operator can display or change a value stored in CNC internal memory by key operation on the CRT/MDI screen (See III–11).
Data setting
CRT/MDI
Data display
Screen Keys
CNC memory
Fig.1.6 (a) Displaying and Setting Data
Tool compensation number1 12.3 25.0 Tool compensation number2 20.0 40.0 Tool compensation number3 ⋅⋅⋅ ⋅⋅⋅ ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅ ⋅⋅⋅ ⋅⋅⋅
Setting
Display
CNC memory
Screen Keys
CRT/MDI
Geometry compensation
Wear com- pensation
Fig.1.6 (b) Displaying and Setting Offset Values
The tool has the tool dimension (length, diameter). When a workpiece is machined, the tool movement value depends on the tool dimensions. By setting tool dimension data in CNC memory beforehand, automatically generates tool routes that permit any tool to cut the workpiece specified by the program. Tool dimension data is called the offset value (See III–11.4.1).
1.6 DISPLAYING AND SETTING DATA
Explanations
� Offset value
ww w.
cn cc
en ter
.co m
OPERATION1. GENERAL B–62574EN/02
268
Machined shape
1st tool path
2nd tool path
Offset value of the 1st tool
Offset value of the 2nd tool
Fig.1.6 (c) Offset Value
Apart from parameters, there is data that is set by the operator in operation. This data causes machine characteristics to change. For example, the following data can be set: ⋅Inch/Metric switching ⋅Selection of I/O devices ⋅Mirror image cutting on/off The above data is called setting data (See III–11.5.3).
⋅ ⋅ ⋅
Setting
DisplayingScreen Keys
Setting data
⋅Inch/Metric switching ⋅Selection of I/O device ⋅Mirror image ON/OFF setting
CNC Memory
Program Automatic operation
Operational characteristics
Movement of the machine
Fig.1.6 (d) Displaying and Setting Operator’s setting data
� Displaying and setting operator’s setting data
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 1. GENERAL
269
The CNC functions have versatility in order to take action in characteristics of various machines. For example, CNC can specify the following:
⋅ Rapid traverse rate of each axis ⋅ Whether increment system is based on metric system or inch system. ⋅ How to set command multiply/detect multiply (CMR/DMR) Data to make the above specification is called parameters (See III–11.5.1). Parameters differ depending on machine tool.
CRT/MDI
CNC memory
Parameter Rapid traverse rate Position control Reference position return Backlash compensation data Pitch error compensation data ⋅
⋅ ⋅
Program
Operational characteristics
Setting
DisplayScreen Keys
Automatic operation
Movement of the machine
Fig.1.6 (e) Displaying and setting parameters
A key called the data protection key can be defined. It is used to prevent part programs from being registered, modified, or deleted erroneously (See III–11).
Program
CNC memory
Screen Keys
CRT/MDI Protection Key
Registration / modification inhibition
Program edition
Fig.1.6 (f) Data Protection Key
� Displaying and setting parameters
� Data protection key
ww w.
cn cc
en ter
.co m
OPERATION1. GENERAL B–62574EN/02
270
The contents of the currently active program are displayed. In addition, the programs scheduled next and the program list are displayed.
 USED ’ 10 FREE ’ 53 MEMORY AREA USED ’ 960 FREE ’ 5280
PROGRAM LIBRARY LIST O0001 O0002 O0010 O0020 O0040 O0050 O0100 O0200 O1000 O1100
PRGRM CONDNS
EDIT
1.7 DISPLAY
1.7.1 Program Display (See III–11.2.1 and III–11.3.1)
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 1. GENERAL
271
The current position of the tool is displayed with the coordinate values. The distance from the current position to the target position can also be displayed.
Y
�
�
�
Workpiece coordinate system
ACTUAL POSITION (ABSOLUTE)
X 150.000 Y 300.000 Z 100.000
��� ���ABS
BUF AUTO
O0003 N0003
When a trouble occurs during operation, error code and alarm message are displayed on CRT screen. See APPENDIX 7 for the list of error codes and their meanings.
ALARM MESSAGE O1000 N0003
��� �� � ����
����
09 : 52 : 24 ALARM
�� �
1.7.2 Current Position Display (See III–11.1.1 to 11.1.3)
1.7.3 Alarm Display (See III–7.1)
ww w.
cn cc
en ter
.co m
OPERATION1. GENERAL B–62574EN/02
272
When an option is selected, two types of run time and number of parts are displayed on the screen.
 GENERAL
273
Programs, offset values, parameters, etc. input in CNC memory can be output to paper tape, cassette, or a floppy disk for saving. After once output to a medium, the data can be input into CNC memory.
Memory
Program
Offset
Parameters
Reader/puncher interface
Portable tape reader
CNC Automatic programming system
Floppy disk
FANUC Floppy cassette adaptor
FANUC cassette
SYSTEM P
FANUC PPR
Paper tape
.
.
.
Fig.1.8 (a) Data Output
1.8 DATA OUTPUT (See III–8)
ww w.
cn cc
en ter
.co m
OPERATION2. OPERATIONAL DEVICES B–62574EN/02
274
2 ��� � ���� ������� The peripheral devices available include the CRT/MDI panel attached to the CNC, machine operator’s panel and external input/output devices such as tape reader, PPR, floppy cassette, and FA card.
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 2.  OPERATIONAL DEVICES B–62574EN/02
276
�������� �� �� ���� ��� ���
CRT (9” amber) (1) Reset key (4) Adress and numeric keys
(7) Program edit key
(5) Input key
(2) Start/output key
(9) Cursor move key (10) Page change key
(8) Function key
(6) Cancel key
(3) Soft keys
Fig. 2.1(b) 9” small monochrome or color CRT/MDI (with softkey)
Table2.1 Explanation of the MDI keyboard
Number Name Explanation
1 RESET key Press this key to reset the CNC, to cancel an alarm, etc.
2 START key This key is used to start MDI operation or automatic operation, depending on the machine. Refer to the manual provided by the machine tool builder. This key is also used to output data to an input/output unit.
3 Soft keys (option) The soft keys have various functions, according to the Applications. The soft key functions are displayed at the bottom of the CRT screen.
4 Address and numeric keys Press these keys to input alphabetic, numeric, and other characters.
5 INPUT key When an address or a numerical key is pressed, the data is input to the buffer, and it is displayed on the CRT screen. To copy the data in the key input buffer to the offset register, etc., press the <INPUT> key. This key is also used to input data from an input/output unit.
6 Cancel key Press this key to delete the last character or symbol input to the key input buffer.
7 Program edit keys Press these keys when editing the program.
RESET
OUTPT- START
(N 4 …
INPUT
CAN
ALTER INSRT DELET : Alteration
: Insertion
: Deletion
ALTER
DELET
INSRT
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 2. OPERATIONAL DEVICES
277
Table2.1 Explanation of the MDI keyboard
Number ExplanationName
8 Function keys Press theses keys to switch display screens for each function. See 2.2 for detailas of the function keys.
9 Cursor move keys There are two different cursor move keys.
: This key is used to move the cursor in a downward or forward direction. The cursor is moved in small units in the forward direction.
: This key is used to move the cursor in an upward or reverse direction. The cursor is moved in small units in the reverse direction.
10 Page change keys Two kinds of page change keys are described below.
: This key is used to changeover the page on the CRT screen in the forward direction.
: This key is used to changeover the page on the CRT screen in the reverse direction.
…POS PRGRM
CURSOR
PAGE
ww w.
cn cc
en ter
.co m
OPERATION2. OPERATIONAL DEVICES B–62574EN/02
278
1 Press a function key on the CRT/MDI panel. The chapter selection soft keys that belong to the selected function appear.
2 Press one of the soft keys. The screen for the selected chapter appears. If the soft key for a target chapter is not displayed, press the continuous menu key (next–menu key). In some cases, additional chapters can be selected within a chapter.
3 To redisplay the previous soft keys, press the return menu key.
The general screen display procedure is explained above. However, the actual display procedure varies from one screen to another. For details, see the description of individual operations.
If the soft keys are not provided, press a key having the equivalent function to select the desired chapter. The functions of the soft keys are automatically displayed, depending on the configuration. The functions are displayed, irrespective of the function configuration, if bit 7 of parameter 048 is specified accordingly.
2.2 FUNCTION KEYS AND SOFT KEYS
2.2.1 General Screen Operations
Function keys
Chapter selection soft keys Operation selection key
Return menu key Continuous menu key
MENU
OFSET PRGRMPOS
DGNOS
PARAM
OPR
ALARM
AUX
GRAPH
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 2. OPERATIONAL DEVICES
279
Function keys are provided to select the type of screen to be displayed. The following function keys are provided on the CRT/MDI panel:
Press this key to display the position screen .
Press this key to display the program screen .
Press this key to display the offset screen .
Press this key to display the parameter/diagnosis screen .
Press this key to display the alarm screen.
This key is not used.
2.2.2 ���� ���� ���
POS
PRGRM
MENU
OFSET
DGNOS
PARAM
OPR
ALARM
AUX
GRAPH
ww w.
cn cc
en ter
.co m
OPERATION2. OPERATIONAL DEVICES B–62574EN/02
280
When an address and a numerical key are pressed, the character corresponding to that key is input once into the key input buffer. The contents of the key input buffer is displayed at the bottom of the CRT screen. The key input buffer begins with ”ADDRESS”. When an address is input, the key input buffer begins with ”NUMERIC”.
Key input buffer display
[ ] [ ] [ ] [ ] [ ]
Fig. 2.2.3 Key input buffer display
Key input buffer display af- ter address input
[ ] [ ] [ ] [ ] [ ]
Address
�������
On the standard key panel, the same key is used to input both an address and a numeric value. When the key input buffer begins with ”ADDRESS”, pressing that key inputs the address. When the key input buffer begins ”NUMERIC”, pressing that key inputs the numeric value.
[ ]
[ ]
4 X
[ ]
[ ]
4 X
Address
Numeric X
Numeric X
Numeric X 4
Press key Press key
2.2.3 Key Input and Input Buffer
Explanations
� For standard key
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 2. OPERATIONAL DEVICES
281
Data of one word (address + numeric value) can be entered into the key input buffer at one time. The following data input keys are used to input addresses. Each time the key is pressed, the input address changes as shown below:
4th B D B 4th
K J I I J K
L P Q P Q L
NO.
D 4th is the address of the
fourth axis. If an additional
axis is not provided,
either D or B is input.
Pressing the CAN key deletes all the data input to the key input buffer.
When bit 7 of parameter 0394 is set to 1, each press of the CAN key deletes
only the most recently entered character during data input using the parameter, diagnostic, or offset screen.
ww w.
cn cc
en ter
.co m
OPERATION2. OPERATIONAL DEVICES B–62574EN/02
282
Five types of external input/output devices are available. This section outlines each device. For details on these devices, refer to the corresponding manuals listed below.
Table 2.3(a) External I/O device
Device name Usage Max. storage capacity
Reference manual
FANUC Handy File Easy–to–use, multi function input/output device. It is de- signed for FA equipment and uses floppy disks.
3600m B–61834E
FANUC Floppy Cassette Input/output device. Uses floppy disks.
2500m B–66040E
FANUC FA Card Compact input/output device. Uses FA cards.
160m B–61274E
FANUC PPR Input/output device consist- ing of a paper tape reader, tape punch, and printer.
275m B–58584E
Portable Tape Reader Input device for reading pa- per tape.
______ Appendix H
The following data can be input/output to or from external input/output devices: 1. Programs 2. Offset data 3. Parameters 4. Custom macro common variables For how data is input and output, see Chapter 8.
2.3 EXTERNAL I/O DEVICES
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 2. OPERATIONAL DEVICES
283
Before an external input/output device can be used, parameters must be set as follows.
Series 0–D
MEMORY CARD
Channel 1
M5
RS–232–C
Reader/ puncher
I/O = 0 or I/O = 1
Series 0–D has one channels of reader/punch interfaces. The input/output device to be used is specified by setting the channel connected to that device in setting parameter I/O. The specified data, such as a baud rate and the number of stop bits, of an input/output device connected to a specific channel must be set in parameters for that channel in advance. For channel 1, two combinations of parameters to specify the input/output device data are provided. The following shows the interrelation between the reader/punch interface parameters for the channels.
I/O
Specify a channel for an input/output device.
I/O = 0 : Channel 1 = 1 : Channel 1
I/O = 0 (channel 1)
002 Stop bit and other data
038 #6,#7 Number specified for the input/output device
552 Baud rate
I/O = 1 (channel1 )
012 Stop bit and other data
038 #6,#7 Number specified for the input/output device
553 Baud rate
Parameter Number
SETTING
���������
ww w.
cn cc
en ter
.co m
OPERATION2. OPERATIONAL DEVICES B–62574EN/02
284
The Handy File is an easy–to–use, multi function floppy disk input/output device designed for FA equipment. By operating the Handy File directly or remotely from a unit connected to the Handy File, programs can be transferred and edited. The Handy File uses 3.5–inch floppy disks, which do not have the problems of paper tape (i.e., noisy during input/output, easily broken, and bulky). One or more programs (up to 1.44M bytes, which is equivalent to the memory capacity of 3600–m paper tape) can be stored on one floppy disk.
RS–232–C Interface (Punch panel, etc.)
FANUC Handy File
RS–232–C Interface
When the Floppy Cassette is connected to the NC, machining programs stored in the NC can be saved on a Floppy Cassette, and machining programs saved in the Floppy Cassette can be transferred to the NC.
 OPERATIONAL DEVICES
285
An FA Card is a memory card used as an input medium in the FA field. It is compact, but has a large memory capacity with high reliability, and requires no special maintenance. When an FA Card is connected to the CNC via the card adapter, NC machining programs stored in the CNC can be transferred to and saved in an FA Card. Machining programs stored on an FA Card can also be transferred to the CNC.
RS–232–C Interface (Punch panel, etc.)
READY
EJECT
READ
WRITE
ALARM
RESET
FANUC
The FANUC PPR consists of three units: A printer, paper tape punch, and paper tape reader. When the PPR is used alone, data can be read from the tape reader and printed or punched out. It is also possible to perform TH and TV checks on data that was read.
RS–232–C Interface (Punch panel, etc.)
2.3.3 FANUC FA Card
2.3.4 FANUC PPR
ww w.
cn cc
en ter
.co m
OPERATION2. OPERATIONAL DEVICES B–62574EN/02
286
The portable tape reader is used to input data from paper tape.
}
�
+
�
+ +
RS–232–C Interface (Punch panel, etc.)
2.3.5 Portable Tape Reader
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 2. OPERATIONAL DEVICES
287
Procedure of turning on the power
1 Check that the appearance of the CNC machine tool is normal. (For example, check that front door and rear door are closed.)
2 Turn on the power according to the manual issued by the machine tool builder.
3 After the power is turned on, check that the position screen is displayed. If the software configuration screen is being displayed, a system failure may have occurred.
ACTUAL POSITION (ABSOLUTE) O0010 N0010
X 123. 456 Y 363. 233 Z 0. 000
��� ���ABS
PART COUNT 16 RUN TIME 0H 57M CYCLE TIME 0H 0M38S ACT.F 3000 MM/M
BUF AUTO
4 Check that the fan motor is rotating.
WARNING When pressing the <POWER ON> key, do not touch any other CRT/MDI or thin type display/MDI panel keys, until the positional or alarm screen is displayed. Some keys are used for the maintenance or special operation purpose. When they are pressed, unexpected operation may be caused.
2.4 POWER ON/OFF
2.4.1 Turning on the Power
Procedure
ww w.
cn cc
en ter
.co m
OPERATION2. OPERATIONAL DEVICES B–62574EN/02
288
O471–04 CNC control software SERVO : 9030–16
PMC : zzzz–zz Digital servo ROM PMC
1 Check that the LED indicating the cycle start is off on the operator’s panel.
2 Check that all movable parts of the CNC machine tool is stopping.
3 If an external input/output device such as the Handy File is connected to the CNC, turn off the external input/output device.
4 Continue to press the POWER OFF pushbutton for about 5 seconds.
NOTE Refer to the machine tool builder’s manual for turning off the power to the machine.
2.4.2 Display of Software Configuration
2.4.3 Power Disconnection
Procedure
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 3. MANUAL OPERATION
289
3 ������� � � ����� MANUAL OPERATION are five kinds as follows : 1. Manual reference position return 2. Jog feed 3. Incremental feed 4. Manual handle feed 5. Manual absolute on/off
ww w.
cn cc
en ter
.co m
OPERATION3. MANUAL OPERATION B–62574EN/02
290
The tool is returned to the reference position as follows : The tool is moved in the direction specified in parameter (bit 0 to #3 of No. 003) for each axis with the reference position return switch on the machine operator’s panel. The tool moves to the deceleration point at the rapid traverse rate, then moves to the reference position at the FL speed. The rapid traverse rate and FL speed are specified in parameters (No. 518 to 521, 533, and 534). Fourstep rapid traverse override is effective during rapid traverse. When the tool has returned to the reference position, the reference position return completion LED goes on. The tool generally moves along only a single axis, but can move along three axes simultaneously when specified so in parameter (bit 4 of No.049).
ÇÇ ÇÇ ÇÇ
Rapid traverse rate (rapid traverse override is effective)
Rapid traverse motion Decelerated motion FL speed
ÇÇ ÇÇ ÇÇ
Reference position
Deceleration point
Procedure for Manual Reference Position Return
1 Press the reference position return switch, one of the mode selection swithces.
2 To decerease the feedrate, press a rapid traverse override switch. When the tool has returned to the reference position, the reference position return completion LED goes on.
3 Press the feed axis and direction selection switch corresponding to the axis and direction for reference position return. Continue pressing the switch until the tool returns to the reference position. The tool can be moved along three axes simultaneously when specified so in an appropriate parameter setting. The tool moves to the deceleration point at the rapid traverse rate, then moves to the reference position at the FL speed set in a parameter.
4 Perform the same operations for other axes, if necessary. The above is an example. Refer to the appropriate manual provided by the machine tool builder for the actual operations.
 MC?
3.1 MANUAL REFERENCE POSITION RETURN
REMOTE MDIMEMORYEDIT
ZERO RETURN
TEACHJOGHANDLE
MODE
50 10025F0
RAPID TRAVERSE OVERRIDE (%)
+C +Z +Y
+X–X
–C–Y –Z
RAPID
AXIS DIRECTION
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 3. MANUAL OPERATION
291
If the parameter for automatic coordinate system setting (bit 7 of parameter 010) is specified, the coordinate system is determined automatically when a manual reference position return is made. If α , β , γ, and δare specified in parameters 708 to 711, the system specifies a workpiece coordinate system such that the tip of the basic tool or a reference position on the tool holder, after reference position return, becomes X =α, Y = β, Z =γ, and 4th =δ.
Once the REFERENCE POSITION RETURN COMPLETION LED lights at the completion of reference position return, the tool does not move unless the REFERENCE POSITION RETURN switch is turned off.
The REFERENCE POSITION RETURN COMPLETION LED is extinguished by either of the following operations: – Moving from the reference position. – Entering an emergency stop state.
For the distance (Not in the deceleration condition) to return the tool to the reference position, refer to the manual issued by the machine tool builder.
Explanations
� Automatic coordinate system setting
������ �����
� ����� � ���� ����� � ���
� ������� �� ��������� ������ ���������� ���
� ���� ����� �� ��� ������� �� ������� �� ��������
ww w.
cn cc
en ter
.co m
OPERATION3. MANUAL OPERATION B–62574EN/02
292
In the jog mode, pressing a feed axis and direction selection switch on the machine operator’s panel continuously moves the tool along the selected axis in the selected direction. The jog feedrate is specified in Table 3.2.
Table 3.2 Jog Feedrate
Rotary switch
Feedrate Rotary switch
Feedrate switch
position Metric input (mm/min)
Inch input (inch/min)
switch position Metric input
(mm/min) Inch input (inch/min)
0 0 0 8 50 2.0
1 2.0 0.08 9 79 3.0
2 3.2 0.12 10 126 5.0
3 5.0 0.2 11 200 8.0
4 7.9 0.3 12 320 12
5 12.6 0.5 13 500 20
6 20 0.8 14 790 30
7 32 1.2 15 1260 50
NOTE The feedrate error (about +3%) affects on the feedrate in the table above.
The jog feedrate can be adjusted with the jog feedrate override dial. Pressing the rapid traverse switch moves the tool at the rapid traverse feedrate regardless of the postiotion of the jog feedrate override dial. Manual operation is allowed for one axis at a time. 3 axes can be selected at a time by parameter JAX (No.049#4).
ÇÇ ÇÇ ÇÇ
Z
X
Y
While a switch is pressed, the tool moves in the direction specified by the switch.
3.2 JOG FEED
ÂÂ ÂÂ
REMOTE MDIMEMORYEDIT
ZERO RETURN
TEACHJOGHANDLE
MODE
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 3. MANUAL OPERATION
293
Procedure for Jog Feed
1 Press the jog switch, one of the mode selection switches.
2 Press the feed axis and direction selection switch corresponding to the axis and direction the tool is to be moved. While the switch is pressed, the tool moves at the feedrate specified in Table 3.2. The tool stops when the switch is released.
3 The jog feedrate can be adjusted with the jog feedrate override dial.
4 Pressing the rapid traverse switch while pressing a feed axis and direction selection switch moves the tool at the rapid traverse rate while the rapid traverse switch is pressed. Rapid traverse override by the rapid traverse override switches is effective during rapid traverse.
The above is an example. Refer to the appropriate manual provided by the machine tool builder for the actual operations.
Feedrate, time constant and method of automatic acceleration/ deceleration for manual rapid traverse are the same as G00 in programmed command.
Changing the mode to the jog mode while pressing a feed axis and direction selection switch does not enable jog feed. To enable jog feed, enter the jog mode first, then press a feed axis and direction selection switch.
If reference position return is not performed after power–on, pushing RAPID TRAVERSE button does not actuate the rapid traverse but the remains at the JOG feedrate. This function can be disabled by setting parameter (No.010 #0).
� ����������
� ��� � ������� � � ��� ����� ���� ���� � ���� ��
� � ��� � ��� �� �
� ���� � ���� �� � ������ �� � � � �� � ��������� � ����
+C +Z +Y
+X–X
–C–Y –Z
RAPID
AXIS DIRECTION
0 1260
JOG FEED RATE OVERRIDE
50 10025F0
RAPID TRAVERSE OVERRIDE (%)
ww w.
cn cc
en ter
.co m
OPERATION3. MANUAL OPERATION B–62574EN/02
294
�� ���� ������������ �� ��� ������ ��������� �� ����� �"��� ���� ��������� ���������� �!����� ��� ���� �������� ����������� ������ �� ��� ���� ����� ��� ����� ������ ���� ��������� �"��� ��� ���� ��������� ����������� � ��� ������� ��������� ���� ����� ��� �� ��� ��� ���� ������ ������ ����������� � ���� ����� ��� ��� ���� ����� ��� ����� ������ ���� ������ ������ ����������� � ���� ����� ��� ������� �� !���� �� ������� ������ ���������� ��� ��� ����������
Tool Each time a switch is pressed, the tool moves one step in the direction specified by the switch.
Z
X
Y
Procedure for Incremental Feed
1 Press the STEP switch, one of the mode selection switches.
2 ������� ���� ��������� ��� ��� �� ��� ���� ����� ����� !���� ��� �������������� �����
3 Press the feed axis and direction selection switch corresponding to the axis and direction the tool is to be moved. Each time a switch is pressed, the tool moves one step. The feedrate is the same as the jog feedrate.
4 If an axis direction selection switch is pressed after rapid traverse has been selected, movement is made at the rapid traverse rate. Rapid traverse override by the rapid traverse override switch is effective during rapid traverse.
The above is an example. Refer to the appropriate manual provided by the machine tool builder for the actual operations.
3.3 INCREMENTAL FEED
X10 X100
X1 X1000
+C +Z +Y
+X–X
–C–Y –Z
RAPID
AXIS DIRECTION
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 3. MANUAL OPERATION
295
In the handle mode, the tool can be minutely moved by rotating the manual pulse generator on the machine operator’s panel. Select the axis along which the tool is to be moved with the handle feed axis selection switches. The minimum distance the tool is moved when the manual pulse generator is rotated by one graduation is equal to the least input increment. Or the distance the tool is moved when the manual pulse generator is rotated by one graduation can be magnified by 10 times or by one of the two magnifications specified by parameters (No. 121 and 699).
�
�
�
Manual pulse generator
ÇÇ ÇÇ ÇÇ
Procedure for Manual Handle Feed
1 Press the HANDLE switch, one of the mode selection switches.
2 Select the axis along which the tool is to be moved by pressing a handle feed axis selection switch.
3 Select the magnification for the distance the tool is to be moved by pressing a handle feed magnification switch. The minimum distance the tool is moved when the manual pulse generator is rotated by one graduation is equal to the least input increment.
4 Move the tool along the selected axis by rotating the handle. Rotating the handle 360 degrees moves the tool the distance equivalent to 100 graduations. The above is an example. Refer to the appropriate manual provided by the machine tool builder for the actual operations.
3.4 MANUAL HANDLE FEED
REMOTE MDIMEMORYEDIT
ZERO RETURN
TEACHJOG
MODE
HANDLE
Manual pulse generator
ww w.
cn cc
en ter
.co m
OPERATION3. MANUAL OPERATION B–62574EN/02
296
Parameter (bit 0 of No. 013) enables or disables the manual handle feed in the JOG mode. When the parameter (bit 0 of No. 013) is set 1,both manual handle feed and incremental feed are enabled.
Parameter (bit 6 of No. 002) enables or disables the manual handle feed in the TEACH IN JOG mode.
Parameter (bit 4 of No. 060) specifies as follows:
SET VALUE0: The feedrate is clamped at the rapid traverse rate andgenerated pulses exceeding the rapid traverse rate are ignored.(The distance the tool is moved may not match the graduations on the manual pulse generator.)
SET VALUE1: The feedrate is clamped at the rapid traverse rate and generated pulses exceeding the rapid traverse rate are not ignored but accumulated in the CNC. (No longer rotating the handle does not immediately stop the tool. The tool is moved by the pulses accumulated in the CNC before it stops.)
WARNING Rotating the handle quickly with a large magnification such as x100 moves the tool too fast. The feedrate is clamped at the rapid traverse feedrate.
NOTE Rotate the manual pulse generator at a rate of five rotations per second or lower. If the manual pulse generator is rotated at a rate higher than five rotations per second, the tool may not stop immediately after the handle is no longer rotated or the distance the tool moves may not match the graduations on the manual pulse generator.
� ����� ����
� Availability of manual pulse generator in Jog mode
� Availability of manual pulse generator in TEACH IN JOG mode
� A command to the MPG exceeding rapid traverse rate
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 3. MANUAL OPERATION
297
Whether the distance the tool is moved by manual operation is added to the coordinates can be selected by turning the manual absolute switch on or off on the machine operator’s panel. When the switch is turned on, the distance the tool is moved by manual operation is added to the coordinates. When the switch is turned off, the distance the tool is moved by manual operation is not added to the coordinates.
O P1
P2
Y axis
X axis
Manual operation
The coordinates values change by the amount of manual operation.
Fig. 3.5(a) Coordinates with the switch ON
X2
X1
Y1
Y2
P1
P2
O1
O2
The coordinates do not change.
 MANUAL OPERATION B–62574EN/02
298
The following describes the relation between manual operation and coordinates when the manual absolute switch is turned on or off, using a program example.
G01G90 X200.0Y150.0 X100.0Y100.0F010
X300.0Y200.0
; (1) ; (2) ; (3)
The subsequent figures use the following notation:
Movement of the tool when the switch is on Movement of the tool when the switch is off
The coordinates after manual operation include the distance the tool is moved by the manual operation. When the switch is off, therefore, subtract the distance the tool is moved by the manual operation.
Coordinates when block (2) has been executed after manual operation (X–axis +20.0, Y–axis +100.0) at the end of movement of block (1).
 MANUAL OPERATION
299
Coordinates when the feed hold button is pressed while block (2) is being executed, manual operation (Y–axis +75.0) is performed, the control unit is reset with the RESET button, and block (2) is read again
(300.0 , 275.0)
(200.0,150.0) (300.0 , 200.0)
(150.0 , 200.0) (200.0,225.0)
(150.0 , 125.0)(100.0 , 100.0)
Y
X Switch OFF
Switch ON
Manual operation
When there is only one axis in the following command, only the commanded axis returns.
Manual operation
N2
N1
N3
N1G01X100.0Y100.0F500; N2X200.0; N3Y150.0;
Y
X (100.0 , 100.0)
(200.0 , 100.0)
(200.0 , 150.0)
Switch OFF
Switch ON
When the following commands are incremental commands, operation is the same as when the switch is OFF.
When the switch is OFF After manual operation is performed with the switch OFF during cutter compensation, automatic operation is restarted then the tool moves parallel to the movement that would have been performed if manual movement had not been performed. The amount of separation equals to the amount that was performed manually.
Manual operation
Cutter path
Programmed path
Cutter path after manual operation
� When reset after a manual operation following a feed hold
� When a movement command in the next block is only one axis
� When the next move block is an incremental
� Manual operation during cutter compensation
ww w.
cn cc
en ter
.co m
OPERATION3. MANUAL OPERATION B–62574EN/02
300
When the switch is ON during cutter compensation Operation of the machine upon return to automatic operation after manual intervention with the switch is ON during execution with an absolute command program in the cutter compensation mode will be described. The vector created from the remaining part of the current block and the beginning of the next block is shifted in parallel. A new vector is created based on the next block, the block following the next block and the amount of manual movement. This also applies when manual operation is performed during cornering.
Manual operation performed in other than cornering Assume that the feed hold was applied at point PH while moving from PA to PB of programmed path PA, PB, and PC and that the tool was manually moved to PH’. The block end point PB moves to the point PB’ by the amount of manual movement, and vectors VB1 and VB2 at PB also move to VB1’ and VB2’. Vectors VC1 and VC2 between the next two blocks PB – PC and PC – PD are discarded and new vectors VC1’ and VC2’ (VC2’ = VC2 in this example) are produced from the relation between PB’ – PC and PC – PD. However, since VB2’ is not a newly calculated vector, correct offset is not performed at block PB’ – PC. Offset is correctly performed after PC.
VC1
VC2
PA
PD
PC
PH’
PB
VB2
VB1
VB2’
VC1’
PH VB1’
Cutter path after manual operation
Programmed path (absolute command)
Cutter path before manual operation
Manual operation
P’B
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 3. MANUAL OPERATION
301
Manual operation during cornering This is an example when manual operation is performed during cornering. VA2’, VB1’, and VB2’ are vectors moved in parallel with VA2, VB1 and VB2 by the amount of manual movement. The new vectors are calculated from VC1 and VC2. Then correct cutter compensation is performed for the blocks following Pc.
VB2
VB1
VC1
VC2
PA’
PCPB
VC1’
VA1VA2
VA2’ VA1’PH’
PH
PA
VB1’
VB2’
Cutter path after manual operation
Programmed path (absolute command)
Cutter path before manual operation
Manual operation
P’B
Manual operation after single block stop Manual operation was performed when execution of a block was terminated by single block stop. Vectors VB1 and VB2 are shifted by the amount of manual operation. Sub–sequent processing is the same as case a described above. An MDI operation can also be interveneted as well as manual operation. The movement is the same as that by manual operation.
VB2
VB1
VC1
VC2PC
PB’
VC1’
VB2’
VB1’
PB
PA
Cutter path after manual operation
Manual operation
Programmed path (absolute command)
Cutter path before manual operation
ww w.
cn cc
en ter
.co m
OPERATION4. AUTOMATIC OPERATION B–62574EN/02
302
4 ���������� � � ����� Programmed operation of a CNC machine tool is referred to as automatic operation. This chapter explains the following types of automatic operation:
⋅ MEMORY OPERATION Operation by executing a program registered in CNC memory
⋅ MDI OPERATION Operation by executing a program entered from the MDI panel
⋅ DNC OPERATION Function for operating a machine while reading a program from an input/output unit
⋅ MIRROR IMAGE Function for enabling mirror–image movement along an axis during automatic operation
⋅ SEQUENCE NUMBER SEARCH This function is usually used to search for a sequence number within a program and to start or resume the program from the block having that sequence number.
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 4. AUTOMATIC OPERATION
303
Programs are registered in memory in advance. When one of these programs is selected and the cycle start switch on the machine operator’s panel is pressed, automatic operation starts, and the cycle start lamp goes on. When the feed hold switch on the machine operator’s panel is pressed during automatic operation, automatic operation is stopped temporarily. When the cycle start switch is pressed again, automatic operation is restarted. When the reset switch on the CRT/MDI panel is pressed, automatic operation terminates and the reset state is entered. The following procedure is given as an example. For actual operation, refer to the manual supplied by the machine tool builder.
Procedure for Memory Operation
1 Press the AUTO mode selection switch.
2 Select a program from the registered programs. To do this, follow the steps below.
2–1 Press PRGRM to display the program screen.
2–2 Press address O . 2–3 Enter a program number using the numeric keys.
2–4 Press the cursor key .
3 Press the cycle start switch on the machine operator’s panel. Automatic operation starts, and the cycle start lamp goes on. When automatic
operation terminates, the cycle start lamp goes off.
4 To stop or cancel memory operation midway through, follow the steps below.
a. Stopping memory operation Press the feed hold switch on the machine operator’s panel. The
feed hold lamp goes on and the cycle start lamp goes off. The
machine responds as follows:
(i) When the machine was moving, feed operation decelerates and
stops.
(ii) When dwell was being performed, dwell is stopped.
(iii) The current operation, instigated by executing by an M, S, or
T command, is continued.
When the cycle start switch on the machine operator’s panel is
pressed while the feed hold lamp is on, machine operation restarts.
b. Terminating memory operation
Press the RESET key on the CRT/MDI panel.
Automatic operation is terminated and the reset state is entered.
When a reset is applied during movement, movement decelerates
then stops.
4.1 MEMORY OPERATION
Procedure
ww w.
cn cc
en ter
.co m
OPERATION4. AUTOMATIC OPERATION B–62574EN/02
304
After memory operation is started, the following are executed:
(1) A one–block command is read from the specified program. (2) The block command is decoded. (3) The command execution is started. (4) The command in the next block is read. (5) Buffering is executed. That is, the command is decoded to allow
immediate execution. (6) Immediately after the preceding block is executed, execution of
the next block can be started. This is because buffering has been executed.
(7) Hereafter, memory operation can be executed by repeating the steps (4) to.(6)
Memory operation can be stopped using one of two methods: Specify a stop command, or press a key on the machine operator’s panel.
– The stop commands include M00 (program stop), M01 (optional stop), and M02 and M30 (program end).
– There are two keys to stop memory operation: The feed hold key and reset key.
Memory operation is stopped after a block containing M00 is executed. When the program is stopped, all existing modal information remains unchanged as in single block operation. The memory operation can be restarted by pressing the cycle start button. Operation may vary depending on the machine tool builder. Refer to the manual supplied by the machine tool builder.
Similarly to M00, memory operation is stopped after a block containing M01 is executed. This code is only effective when the Optional Stop switch on the machine operator’s panel is set to ON. Operation may vary depending on the machine tool builder. Refer to the manual supplied by the machine tool builder.
When M02 or M30 (specified at the end of the main program) is read, memory operation is terminated and the reset state is entered. In some machines, M30 returns control to the top of the program. For details, refer to the manual supplied by the machine tool builder.
When Feed Hold button on the operator’s panel is pressed during memory operation, the tool decelerates to a stop at a time.
Automatic operation can be stopped and the system can be made to the
reset state by using RESET key on the CRT/MDI panel or external reset
signal. When reset operation is applied to the system during a tool moving status, the motion is slowed down then stops.
When the optional block skip switch on the machine operator’s panel is turned on, blocks containing a slash (/) are ignored.
Explanation
Memory operation
Stopping and terminating memory operation
� ����� �� ���� ( ��)
� ����� �� ���� ( ��)
� ����� �� ��� � ���� ��)
� ����� ����
� �����
� Optional block skipww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 4. AUTOMATIC OPERATION
305
In the MDI mode, a program can be inputted in the same format as normal programs and executed from the MDI panel. MDI operation is used for simple test operations. The following procedure is given as an example. For actual operation, refer to the manual supplied by the machine tool builder.
Procedure for MDI Operation – A
One command block can be entered from the CRT/MDI for execution.
1 Press MDI key on the mode select switch.
2 Press the PRGRM button.
3 Press soft key [MDI] to display a screen with MDI at the top left.
PROGRAM O9501 N9501 (MDI) (MODAL)
[ PRGRM ][ CURRNT ][ NEXT ] [ MDI ] [ ]
ADRS. MDI
G67 G00 F G97 G17 R G54 G90 P G64 G22 Q G69 G94 H D G15 G21 M G25 G40 S G49 T G80 B G98 G50
4 Input ”X 10.5” by address/numeric key.
5 Press INPUT key.
The data, X 10.5, is input and displayed. If you are aware of an
error in the keyed–in number before pressing the INPUT key , press
the CAN key and key in X and the correct number again.
6 Input ”Y 200.5” by address/numeric key.
7 Press INPUT key.
The data, Y200.5 is input and displayed. If you pressed wrong number keys, correct the operation following the instruction described above.
4.2 MDI OPERATION
�������� � � ����� ������
ww w.
cn cc
en ter
.co m
OPERATION4.
MDI [ PRGRM ][ CURRNT ][ NEXT ] [ MDI ] [ ]
8 Press the OUTPTSTART key.
Press the cycle start button on the machine operator’s panel (depending on the machine tool).
To modify X10.5Y200.5 to X10.5, cancel Y200.5, by following the steps described below:
1 Press Y CAN INPUT keys.
2 Press the OUTPTSTART or the cycle start button on the machine operator’s
panel.
WARNING Modal G codes cannot be cancelled. Enter the correct data again.
�� A single MDI operation executes a single input block. Two or more blocks cannot be executed at one time.
� The end–of–block symbol (;) need not be entered. � A subprogram call or macro call cannot be specified. � In MDI operation, the setting (absolute) determines whether the
commands are absolute or incremental. The G code (G90/G91) is ignored.
� The input block is cleared when the MDI operation is completed or when a reset is specified.
��� �� � ��� � �� ������ � ������ ������
Limitations
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 4. AUTOMATIC OPERATION
307
In DNC operation, the machine is not operated by a program registered in memory of the CNC, instead being operated by a program read directly from a connected input/output unit. This mode is used when the program is too large to be registered in the memory of the CNC.
Procedure for DNC Operation
1 Select the MDI mode and specify the channel for the connected input/output unit in the I/O field on the setting screen.
2 Select AUTO mode.
3 Search for the beginning of the program of the input/output unit.
4 Input the DNCI signal. (For details of the actual operation, refer to the manual provided by the machine tool builder.)
5 Press the cycle start key.
DNC operation starts. The operation can be stopped and resumed in the same way as for memory operation.
� In DNC operation mode, the current program can call a subprogram registered in memory.
� In DNC operation mode, the current program can specify a custom macro. However, a repeat instruction or branch instruction cannot be programmed.
� In DNC operation mode, the current program can call a macro program registered in memory.
� In DNC operation mode, to return the system from the current subprogram or macro program to the calling program, a sequence number (M99P****) cannot be specified.
� The DC3 code is output and reading is stopped at the end of each block (each time the EOB is read). To enable continuous reading of the blocks, specify bit 7 of parameter 0390 accordingly.
� In DNC operation mode, no program can be displayed. Only the current block and subsequent block can be displayed.
� In DNC operation mode, F is displayed as the address of the program number at the top right corner of the CRT screen.
4.3 DNC OPERATION
Explanations
ww w.
cn cc
en ter
.co m
OPERATION4. AUTOMATIC OPERATION B–62574EN/02
308
During automatic operation, the mirror image function can be used for
movement along an axis. To use this function, set the mirror image switch
to ON on the machine operator’s panel, or set the mirror image setting to
ON from the CRT/MDI panel.
Y
X
Y–axis mirror image goes on.
Programmed tool path
Tool path after the mirror image function is used
Tool
Fig 4.4 (a) Mirror Image
The following procedure is given as an example. For actual operation,
refer to the manual supplied by the machine tool builder.
1 Press the single block switch to stop automatic operation. When the mirror image function is used from the begining of operation, this step
is omitted.
2 Press the mirror image switch for the target axis on the machine operator’s panel.
Alternatively, turn on the mirror image setting by following the steps
below:
2–1 Set the MDI mode.
2–2 Press the DGNOSPARAM function key.
2–3 Press the page key for chapter selection to display the setting screen.
PARAMETER O0100 N0002
(SETTING 1) _REVX = 0 REVY = 0 TVON = 0 ISO = 1 (0:EIA 1:ISO ) INCH = 0 (0:MM 1:INCH) I/O = 0 ABS = 0 (0:INC 1:ABS) SEQ = 0 NO. REVX =
MDI [ PARAM ][ DGNOS ][ ][ SV–PRM ][ ]
4.4 MIRROR IMAGE
Procedure
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 4. AUTOMATIC OPERATION
309
2–4 Move the cursor to the mirror image setting position, then set the target axis to 1.
3 Enter an automatic operation mode (AUTO mode or MDI mode), then press the cycle start button to start automatic operation.
⋅For the mirror image switches, refer to the manual supplied by the machine tool builder.
The direction of movement during manual operation, the direction of movement from an intemidiate point to the reference position during automatic reference position return, the direction of approach during unidirectional positioning (G60), and the shift direction in a boring cycle (G76, G87) cannot be reserved.
Explanations
Restrictions
ww w.
cn cc
en ter
.co m
OPERATION4. AUTOMATIC OPERATION B–62574EN/02
310
Sequence number search operation is usually used to search for a sequence number in the middle of a program so that execution can be started or restarted at the block of the sequence number.
Example)Sequence number 2346 in a program (O0002) is searched for.
O0001 ; N1234 X100.0 Z100.0 ; S12 ; : O0002 ; N2345 X20.0 Z20.0 ; N2346 X10.0 Y10.0 ; : O0003 ; :
Program
Selected program
Target sequence number is found.
This selection is searched starting at the beginning. (Search operation is performed only within a program.)
Procedure for sequence number search
1 Select AUTO mode.
2 Press PRGRM key.
3 ⋅ If the program contains a sequence number to be searched for, perform the operations 4 to 7 below.
⋅ If the program does not contain a sequence number to be searched for, select the program number of the program that contains the sequence number to be searched for.
4 Key in address N .
5 Key in a sequence number to be searched for.
6 Press the cursor key.
7 Upon completion of search operation, the sequence number searched for is displayed in the upper–right corner of the CRT screen.
Those blocks that are skipped do not affect the CNC. This means that the data in the skipped blocks such as coordinates and M, S, and T codes does not alter the CNC coordinates and modal values. So, in the first block where execution is to be started or restarted by using a sequence number search command, be sure to enter required M, S, and T codes and coordinates. A block searched for by sequence number search usually represents a point of shifting from one process to another. When a block in the middle of a process must be searched for to restart execution at the block, specify M, S, and T codes, coordinates, and so forth as required from the MDI after closely checking the machine tool and NC states at that point.
4.5 SEQUENCE NUMBER SEARCH
Explanations
� Operation during Searchww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 4. AUTOMATIC OPERATION
311
During search operation, the following checks are made : ⋅Optional block skip ⋅P/S alarm (No. 003 to 010) A P/S alarm 003 to 010 occurring during the sequence number search can be ignored if bit 1 of parameter 050 is specified accordingly.
During sequence number search operation, M98Pxxxx (subprogram call) is not executed. So an alarm (No. 060) is raised if an attempt is made to search for a sequence number in a subprogram called by the program currently selected.
O1234 : : M98 P5678 ; : :
O5678 : N8888 : M99 ; :
Main program Subprogram
If an attempt is made to search for N8888 in the example above, an alarm is raised.
������ � � �
�� ������ � � �� �� � ���� �� ���� ���� ���� � �� �� � � �� �� �
���� �� � �����
� Checking during search
Limitations
� Searching in sub–program
�����
ww w.
cn cc
en ter
.co m
OPERATION5. TEST OPERATION B–62574EN/02
312
5 � � ����� ��� The following functions are used to check before actual machining whether the machine operates as specified by the created program. 1. Machine Lock and Auxiliary Function Lock 2. Feedrate Override 3. Rapid Traverse Override 4. Dry Run 5. Single Block
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 5. TEST OPERATION
313
To display the change in the position without moving the tool, use machine lock. There are two types of machine lock: all–axis machine lock, which stops the movement along all axes, and Z–axis machine lock, which stops the movement along Z–axis only. In addition, auxiliary function lock, which disables M, S, and T commands, is available for checking a program together with machine lock.
CRT/MDI
X Y
The tool does not move but the position along each axis changes on the display.
Tool
Workpiece
Fig. 5.1 Machine lock
Procedure for Machine Lock and Auxiliary Function Lock
Press the machine lock switch on the operator’s panel. The tool does not move but the position along each axis changes on the display as if the tool were moving. Some machines have a Z–axis machine lock switch. Refer to the appropriate manual provided by the machine tool builder for machine lock. The position relationship between the workpiece coordinates and machine coordinates may change after automatic operation by the machine lock function has been executed. If this occurs, reset the workpiece coordinate system by specifying the coordinate system setting command or by making a manual reference position return.
Press the auxiliary function lock switch on the operator’s panel. M, S, and T codes are disabled and not executed. Refer to the appropriate manual provided by the machine tool builder for auxiliary function lock.
M, S, and T commands are executed in the machine lock state.
When a G27, G28, or G30 command is issued in the machine lock state, the command is accepted but the tool does not move to the reference position and the reference position return LED does not go on.
M00, M01, M02, M30, M98, and M99 and commands are executed even in the auxiliary function lock state.
5.1 MACHINE LOCK AND AUXILIARY FUNCTION LOCK
� Machine Lock
� Auxiliary Function Lock
Restrictions
� M, S, T command by only machine lock
� Reference position return under Machine Lock
� �� � ���� � �� � � ��� �� ��� � ���� ����� �� � �
ww w.
cn cc
en ter
.co m
OPERATION5. TEST OPERATION B–62574EN/02
314
A programmed feedrate can be reduced or increased by a percentage (%) selected by the override dial.This feature is used to check a program. For example, when a feedrate of 100 mm/min is specified in the program, setting the override dial to 50% moves the tool at 50 mm/min.
Tool Check the machining by altering the feedrate from the value specified in the program.
Feedrate 100 mm/min (Specified by programmed)
Feedrate 50 mm/min after 50% feedrate override
Workpiece
Fig. 5.2 Feedrate override
Procedure for Feedrate Override
Set the feedrate override dial to the desired percentage (%) on the machine operator’s panel, before or during automatic operation. On some machines, the same dial is used for the feedrate override dial and jog feedrate dial. Refer to the appropriate manual provided by the machine tool builder for feedrate override.
The override that can be specified ranges from 0 to 150% (10% steps). For individual machines, the range depends on the specifications of the machine tool builder.
5.2 FEEDRATE OVERRIDE
0 150
JOG FEED RATE OVERRIDE
��� ��� ����
� Override Range
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 5. TEST OPERATION
315
An override of four steps (F0, 25%, 50%, and 100%) can be applied to the rapid traverse rate. F0 is set by a parameter (No. 533).
ÇÇ ÇÇ ÇÇ
ÇÇ ÇÇ ÇÇ
Rapid traverse rate10m/min
Override 50%
5m/min
Fig. 5.3 Rapid traverse override
Rapid Traverse Override
Select one of the four feedrates with the rapid traverse override switch during rapid traverse. Refer to the appropriate manual provided by the machine tool builder for rapid traverse override.
The following types of rapid traverse are available. Rapid traverse override can be applied for each of them. 1) Rapid traverse by G00 2) Rapid traverse during a canned cycle 3) Rapid traverse in G27, G28 and G30 4) Manual rapid traverse 5) Rapid traverse in manual reference position return
5.3 RAPID TRAVERSE OVERRIDE
100 25 50
LOW
Rapid traverse override
� ���������
ww w.
cn cc
en ter
.co m
OPERATION5. TEST OPERATION B–62574EN/02
316
The tool is moved at the feedrate specified by a parameter regardless of the feedrate specified in the program. This function is used for checking the movement of the tool under the state taht the workpiece is removed from the table.
Tool
Table
Fig. 5.4 Dry run
Procedure for Dry Run
Press the dry run switch on the machine operator’s panel during automatic operation. The tool moves at the feedrate specified in a parameter. The rapid traverse switch can also be used for changing the feedrate. Refer to the appropriate manual provided by the machine tool builder for dry run.
The dry run feedrate changes as shown in the table below according to the rapid traverse switch and parameters.
Rapid tra- verse button
Program command verse button
Rapid traverse Feed
ON Rapid traverse rate Jog maximum feedrate
OFF Jog feedrate or rapid traverse rate *1)
Jog feedrate
*1 : Jog feedrate when parameter (bit 6 of No. 001) is 1. Rapid traverse rate when that parameter is 0.
5.4 DRY RUN
��� � ����
� � �� � � ���� ���
DRY RUN
MC LOCK
SINGLE BLOCK
OPT STOP
MST LOCK
BLOCK SKIP
WORK LIGHT
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 5. TEST OPERATION
317
Pressing the single block switch starts the single block mode. When the cycle start button is pressed in the single block mode, the tool stops after a single block in the program is executed. Check the program in the single block mode by executing the program block by block.
Cycle start
Stop
Workpiece
Cycle start
Cycle start
Stop
Stop
Tool
Fig.5.5 Single block
Procedure for Single block
1 Press the single block switch on the machine operator’s panel. The execution of the program is stopped after the current block is executed.
2 Press the cycle start button to execute the next block. The tool stops after the block is executed.
Refer to the appropriate manual provided by the machine tool builder for single block execution.
If G28 to G30 are issued, the single block function is effective at the intermediate point.
5.5 SINGLE BLOCK
���������
Explanation
� Reference position return and single block
ww w.
cn cc
en ter
.co m
OPERATION5. TEST OPERATION B–62574EN/02
318
In a canned cycle, the single block stop points are the end of ,(1) (2), and (6) shown below. When the single block stop is made after the point (1) or (2), the feed hold LED lights.
(6)
(1)
(3)
(4)
(5)
Rapid traverse
Feed
(2)
S
S
S
(S)
S : Single block stop point
Fig.5.5(a) Single block during canned cycle
Single block stop is not performed in a block containing M98P_;. M99; or G65. However, single block stop is even performed in a block with M98P_ or M99 command, if the block contains an address other than O, N or P.
� Single block during a canned cycle
� Subprogram call and single block
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 6. SAFETY FUNCTIONS
319
6 ��� �� ���� ��� To immediately stop the machine for safety, press the Emergency stop button. To prevent the tool from exceeding the stroke ends, Overtravel check and Stroke check are available. This chapter describes emergency stop., overtravel check, and stroke check.
ww w.
cn cc
en ter
.co m
OPERATION6. SAFETY FUNCTIONS B–62574EN/02
320
If you press Emergency Stop button on the machine operator’s panel, the machine movement stops in a moment.
EMERGENCY STOP
Red
Fig. 6.1 Emergency stop
This button is locked when it is pressed. Although it varies with the machine tool builder, the button can usually be unlocked by twisting it.
EMERGENCY STOP interrupts the current to the motor. Causes of trouble must be removed before the button is released.
6.1 EMERGENCY STOP
� ���������
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 6. SAFETY FUNCTIONS
321
When the tool tries to move beyond the stroke end set by the machine tool limit switch, the tool decelerates and stops because of working the limit switch and an OVER TRAVEL is displayed.
Y
�
Deceleration and stop
Stroke end Limit switch
Fig. 6.2 Overtravel
When the tool touches a limit switch along an axis during automatic operation, the tool is decelerated and stopped along all axes and an overtravel alarm is displayed.
In manual operation, the tool is decelerated and stopped only along the axis for which the tool has touched a limit switch. The tool still moves along the other axes.
Press the reset button to reset the alarm after moving the tool to the safety direction by manual operation. For details on operation, refer to the operator’s manual of the machine tool builder.
No. Description
5n6 The tool has exceeded the hardware–specified overtravel limit along the positive nth axis (n : 1 to 3).
5n7 The tool has exceeded the hardware–specified overtravel limit along the negative nth axis (n : 1 to 3).
Setting bit 5 of parameter 0057 enables or disables the overtravel limit switch. For details, refer to the manual provided by the machine tool builder.
6.2 OVERTRAVEL
Explanation
� Overtravel during automatic operation
� Overtravel during manual operation
� Releasing overtravel
� Alarm
ww w.
cn cc
en ter
.co m
OPERATION6. SAFETY FUNCTIONS B–62574EN/02
322
Two areas which the tool cannot enter can be specified with stored stroke limit 1, 2 and stored stroke limit 3.
ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
(I,J,K)
ÇÇÇ ÇÇÇ�Forbidden area for the tool
ÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇ
(X,Y,Z)
ÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇ
Fig. 6.3(a) Stroke check
When the tool exceeds a stored stroke limit, an alarm is displayed and the tool is decelerated and stopped. When the tool enters a forbidden area and an alarm is generated, the tool can be moved in the reverse direction from which the tool came.
Parameters (Nos. 700 to 707 or Nos. 743 to 750) set boundary. Outside the area of the set limits is a forbidden area. The machine tool builder usually sets this area as the maximum stroke.
Confirm the checking position (the top of the tool or the tool chuck) before programming the forbidden area. If point A (The top of the tool) is checked in Fig. 6.3 (b) , the distance “a” should be set as the data for the stored stroke limit function. If point B (The tool chuck) is checked, the distance “b” must be set. When checking the tool tip (like point A), and if the tool length varies for each tool, setting the forbidden area for the longest tool requires no re–setting and results in safe operation.
ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ ÇÇÇÇÇÇÇÇÇÇÇÇÇÇ
A
B
a
b
� �� ������� � � � � �
����� � ���� �� ��� ��
������� � �����
����� ��� ����
Fig. 6.3(b) Setting the forbidden area
6.3 STROKE CHECK
Explanation
� Stored stroke limit 1 and 2
� Checkpoint for the forbidden area
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 6. SAFETY FUNCTIONS
323
If the maximum rapid traverse rate is F mm/minute, the maximum overrun amount, L mm, of the stored stroke limit is obtained from the following expression:
L mm = F/7500 The tool enters the specified inhibited area by up to L mm. The tool can be stopped at a position up to L mm in front of the inhibited area if bit 7 of parameter 0076 is specified accordingly. In this case, the tool will not enter the inhibited area.
Bit 3 of parameter 065 is used to select whether each stroke limit is enabled, either immediately after power–on or later, after a manual reference position return or reference position return by G28. After the power is turned on, if the reference position is in the forbidden area of each limit, an alarm is generated immediately.
If a stroke check alarm occurs, manually retract the tool from the inhibited area in the direction opposite to the displayed alarm direction. Press the reset key to cancel the alarm.
NOTE In setting a forbidden area, if the two points to be set are the same, the area is as follows:
1 When the forbidden area is limit 1, 2, all areas are forbidden areas.
2 When the forbidden area is limit 3, all areas are movable areas.
Number Message Contents
5n0 OVER TRAVEL: +n Exceeded the n–th axis (1–8) + side stored stroke limit 1 or 2.
5n1 OVER TRAVEL: –n Exceeded the n–th axis (1–8)� � side stored stroke limit 1 or 2.
� Overrun amount of stored stroke limit
� Effective time for a forbidden area
� Releasing the alarms
Alarms
ww w.
cn cc
en ter
.co m
OPERATION 7. ALARM AND SELF–DIAGNOSIS FUNCTIONS B–62574EN/02
324
7 � ���� ���� �� ��� ��� � �� ����� �� When an alarm occurs, the corresponding alarm screen appears to indicate the cause of the alarm. The causes of alarms are classified by error codes. The system may sometimes seem to be at a halt, although no alarm is displayed. In this case, the system may be performing some processing. The state of the system can be checked using the self–diagnostic function.
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 7. ALARM AND SELF–DIAGNOSIS
FUNCTIONS
325
When an alarm occurs, the alarm screen appears.
ALARM MESSAGE O0000 N0000
100 P/S ALARM 417 SERVO ALARM : X AXIS DGTL PARAM 427 SERVO ALARM : Y AXIS DGTL PARAM
NOT READY ALARM MDI [ ALARM ][ OPR ][ MSG ][ ][ ]
In some cases, the alarm screen may not be displayed. Instead, ALARM will blink at the bottom of the screen.
PARAMETER O0100 N0002
(SETTING 1) REVX = 0 REVY = 0 TVON = 0 ISO = 1 (0:EIA 1:ISO ) INCH = 0 (0:MM 1:INCH) I/O = 0 ABS = 0 (0:INC 1:ABS) SEQ = 0 NO. ISO = NOT READY ALARM MDI [ PARAM ][ DGNOS ][ ][ SV–PRM ][ ]
In this case, display the alarm screen as follows:
1. Press the function OPRALARM key .
2. Press the soft key [ALARM] .
7.1 ALARM DISPLAY
Explanations
� Alarm screen
� Another method for alarm displays
ww w.
cn cc
en ter
.co m
OPERATION 7. ALARM AND SELF–DIAGNOSIS FUNCTIONS B–62574EN/02
326
Error codes and messages indicate the cause of an alarm. To recover from an alarm, eliminate the cause and press the reset key.
The error codes are classified as follows: No. 000 to 250: Program errors(*1) No. 3n0 to 3n8: Absolute pulse coder (APC) alarms (*2) No. 3n9: Serial pulse coder (SPC) alarms (*2) No. 400 to 495: Servo alarms No. 510 to 581: Overtravel alarms No. 600 to 607: PMC alarms No. 700 to 704: Overheat alarms No. 910 to 988: System alarms
*1) For an alarm (No. 000 to 250) that occurs in association with background operation, the indication ”xxxBP/S alarm” is provided (where xxx is an alarm number). Only a BP/S alarm is provided for No. 140.
*2) n is controlled axis number. See the error code list in the appendix for details of the error codes.
� Reset of the alarm
� Error codes
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 7. ALARM AND SELF–DIAGNOSIS
FUNCTIONS
327
The system may sometimes seem to be at a halt, although no alarm has occurred. In this case, the system may be performing some processing. The state of the system can be checked by displaying the self–diagnostic screen.
Procedure for Diagnois
1 Press the function key DGNOSPARAM .
2 Press the soft key [DGNOS].
3 The diagnostic screen has more than 1 pages. Select the screen by the following operation.
(1) Change the page by the 1–page change key.
(2) · Press the No. key.
· Key input the number of the diagnostic data to be displayed.
· Press the INPUT key.
PARAMETER O1224 N0000 NO. DATA NO. DATA 0700 00000000 0725 00000000 0701 00000000 0726 00000000 0710 00000000 0727 00000000 0711 00000000 0730 00000000 0712 00000000 0731 00000000 0720 00000000 0732 00000000 0721 00000000 0733 00000000 0722 00000000 0734 00000000 0723 00000000 0735 00000000 0724 00000000 0736 00000000 NO. 0700 = 04:02:02 AUTO [ PARAM ][ DGNOS ][ ][ SV–PRM ][ ]
#7 #6 #5 #4 #3 #2 #1 #0
CSCT CITL COVZ CINP CDWL CMTN CFIN0700
When a digit is ”1”, the corresponding status is effective.
CFIN : The M, S, O, or T function is being executed.
CMTN : A move command in the cycle operation is being executed.
CDWL : Dwell is being executed.
CINP : An in–posiiton check is being executed.
COVZ : Override is at 0%.
CITL : Interlock signal (STLK) is turned on.
CSCT : Speed arrival signal of spindle is turned on.
7.2 CHECKING BY SELF–DIAGNOSTIC SCREEN
ww w.
cn cc
en ter
.co m
OPERATION 7. ALARM AND SELF–DIAGNOSIS FUNCTIONS B–62574EN/02
328
#7 #6 #5 #4 #3 #2 #1 #0 CRST0701
CRST : One of the following : The reset button on the MDI panel, emergency stop, or remote reset is on.
#7 #6 #5 #4 #3 #2 #1 #0 STP REST EMS RSTB CSU0712
Indicates automatic operation stop or feed hold status. These are used for troubleshooting.
STP : The flag which stops the automatic operation. This is set at the following condition. ⋅ External reset signal is turned on. ⋅ Emergency stop signal is turned on. ⋅ Feed hold signal is turned on. ⋅ Reset button on the CRT/MDI panel is turned on. ⋅ The mode is changed to the manual mode, such as JOG,
HANDLE/STEP, TEACH INJOG, TEACH IN HANDLE. ⋅ Other alarm is generated.
REST : This is set when one of the external reset, emergency stop, or reset button is set on.
EMS : This is set when the emergency stop is set on.
RSTB : This is set when the reset button is on.
CSU : This is set when the emergency stop is turned on, or when the servo alarm has been generated.
ww w.
cn cc
en ter
.co m
OPERATIONB–62574EN/02 8. DATA INPUT/OUTPUT
329
8 �� �� ��� �� � NC data is transferred between the NC and external input/output devices such as the Handy File. The following types of data can be entered and output :
1.Program 2.Offset data 3.Parameter 4.Pitch error compensation data 5.Custom macro common variable
Before an input/output device can be used, the input/output related parameters must be set.
FANUC Handy File
�������
������� �
��������
������� �
� �� �� ������ �� ����
ww w.
cn cc
en ter
.co m
OPERATION8. DATA INPUT/OUTPUT B–62574EN/02
330
Of the external input/output devices, the FANUC Handy File and FANUC Floppy Cassette use floppy disks as their input/output medium, and the FANUC FA Card uses an FA card as its input/output medium. In this manual, an input/output medium is generally referred to as a floppy. However, when the description of one input/output medium varies from the description of another, the name of the input/output medium is used. In the text below, a floppy represents a floppy disk or FA card. Unlike an NC tape, a floppy allows the user to freely choose from several types of data stored on one medium on a file–by–file basis. Input/output is possible with data extending over more than one floppy disk.