FANUC Series 0i-MODEL F Plus. CONNECTION MANUAL (FUNCTION) - page 186

 

  Index      Manuals     FANUC Series 0i-MODEL F Plus. CONNECTION MANUAL (FUNCTION) B-64693EN-1/01

 

Search            copyright infringement  

 

 

 

 

 

 

 

 

 

 

 

Content      ..     184      185      186      187     ..

 

 

 

FANUC Series 0i-MODEL F Plus. CONNECTION MANUAL (FUNCTION) - page 186

 

 

9. AUXILIARY FUNCTION

 

 

B-64693EN-1/01 

- 1442 - 

  CAUTION

 

2  Though bit 0 (MMB) of parameter No. 11658 is set to 1, M00, M01, 

M02, M30 or M code preventing buffering specified by any of 
parameters other than the above must be specified alone in a 
single block. 

 

If any of these M codes is specified to any of the second command 
to the fifth command in multiple M commands in a single block, the 
M command is not recognized as M code preventing buffering. 

 

Caution 

  CAUTION 

1  M00, M01, M02, M30, M98, M99, or M198 must not be specified together with 

another M code. 

2  Some M codes other than M00, M01, M02, M30, M98, M99, and M198 cannot 

be specified together with other M codes; each of those M codes must be 
specified alone in a single block. Such M codes include those that make the 
CNC perform internal operations in addition to sending the M code signals to the 
PMC. For example, such M codes are M codes for calling program numbers 
9001 to 9009 and M codes for disabling advance reading (buffering) of 
subsequent blocks. 

 

The M codes that can be specified in a single block must be those that the CNC 
only sends the M code signals to the PMC side. 

 

If bit 0 (MMB) of parameter No. 11658 is set to 1, M code preventing buffering 
specified by any of parameters Nos. 3411 to 3420, parameters Nos. 3421 to 
3432 or parameters Nos. 11290 to 11299 can be specified together with another 
M code. 

 

Note 

NOTE 

1  CNC allows up to five M codes to be specified in one block. However, some M 

codes cannot be specified at the same time due to mechanical operation 
restrictions. For example, M42 can be specified only after the mechanical 
operation of M41 is completed. 

2  When bit 7(M3B) of parameter No. 3404 is set to 1, the 1st M code can be up to 

8 digits and 2nd, 3rd M codes can be the values up to 65535. When bit 5(M5B) 
of parameter No. 11630 is set to 1, the 1st to 5th M code can be up to 8 digits. 

 

Reference item 

Manual name 

Item name 

OPERATOR’S MANUAL (B-64694EN) 

Multiple M commands in a single block 

 

9.4 

HIGH-SPEED M/S/T/B INTERFACE 

Overview 

To accelerate M/S/T/B function execution, the high-speed M/S/T/B interface has simplified the transfer 
of the strobe and completion signals of the M/S/T/B functions. 
By shortening the execution time of M / S / T / B function, machining time can be reduced. 
Whether to use the conventional  system or high-speed system for strobe signal and completion signal 
handling can be specified by bit 7 (MHI) of parameter No. 3001.   

B-64693EN-1/01

 

 

9. AUXILIARY FUNCTION

 

- 1443 - 

The description below uses the auxiliary functions (M code commands) as an example. The same 
description applies to the spindle function (S code), tool function (T code) and 2nd auxiliary function (B 
code). 
 

Explanation 

  - 

Basic procedure 

(1)  Assume that the following program is given: 

Mxx; 
Myy; 

(2)  In response to an M command, the CNC system sends out the code signals M00 to M31. 
 

The CNC system inverts the logical level of the strobe signal MF, that is, from “0” to “1”, or from 
“1” to “0”. 

(3)  The CNC system inverts the strobe signal, then when the logical level of the auxiliary function 

completion signal MFIN becomes the same as the strobe signal, the CNC assumes the completion of 
PMC sequence.   

 

With the usual method, the operation is assumed to be completed when a falling edge (“1” to “0”) of 
the M/S/T/B completion signal FIN is received after a rising edge (“0” to “1”) of the FIN signal is 
detected. This new system, on the other hand, assumes the operation has been completed upon 
detection of only one transition of the completion signal. 

 

In addition, the conventional system uses only one completion signal (FIN) common to the M/S/T/B 
functions. This new system uses a different completion signal for each of the M, S, T, and B 
functions; the completion signals for the M, S, T, and B functions are MFIN, SFIN, TFIN, and BFIN, 
respectively. 

 
The Fig. 9.4 (a) below shows the timing chart of these signals with the new system. For comparison, Fig. 
9.4 (b) shows the timing chart of the conventional system.   
 

Mxx

Myy

Next block

Code signals

Strobe signal MF

PMC side operation

Auxiliary function
completion signal MFIN

 

Fig. 9.4 (a) Timing chart of the high-speed system   

 

Mxx

Myy

Next block

Code signals

Strobe signal MF

PMC side operation

Completion signal FIN

 

Fig. 9.4 (b) Timing chart of the conventional system   

9. AUXILIARY FUNCTION

 

 

B-64693EN-1/01 

- 1444 - 

A high-speed interface can also be used for multiple M commands issued for one block. This interface 
provides separate completion signals for each of the 5 M codes. They are called MFIN (the same name as 
for the single M command per block function), MFIN2, MFIN3, MFIN4 and  MFIN5  respectively. The 
signal transfer sequence for multiple M codes per block is the same as that for a single M code per block. 
The high-speed interface can also be used for the external operation function. In this case, special external 
operation signal EFD and completion signal EFIN are used.   
The procedure for sending and receiving these signals is identical to that for sending and receiving the 
strobe and completion signals of the auxiliary function (machining center system). 
 

Signal 

Auxiliary function completion signal MFIN<Gn005.0> 

  [Classification]  Input signal 
 

[Function]  Reports that the execution of a auxiliary function using the high-speed M/S/T/B interface 

is completed. 

 

[Operation]  For the operation and procedure of the control unit when this signal turns to “1” or “0”, 

see the description of "Basic procedure" above. 

 

Spindle function completion signal SFIN<Gn005.2> 

  [Classification]  Input signal 
 

[Function]  Reports that the execution of a spindle speed function using the high-speed M/S/T/B 

interface is completed. 

 

[Operation]  For the operation and procedure of the control unit when this signal turns to “1” or “0”, 

see the description of "Basic procedure" above. 

 

Tool function completion signal TFIN<Gn005.3> 

  [Classification]  Input signal 
 

[Function]  Reports that the execution of a tool function using the high-speed M/S/T/B interface is 

completed. 

 

[Operation]  For the operation and procedure of the control unit when this signal turns to “1” or “0”, 

see the description of "Basic procedure" above. 

 

2nd auxiliary function completion signal BFIN<Gn005.7> 

  [Classification]  Input signal 
 

[Function]  Reports that the execution of a second auxiliary function using the high-speed M/S/T/B 

interface is completed. 

 

[Operation]  For the operation and procedure of the control unit when this signal turns to “1” or “0”, 

see the description of "Basic procedure" above. 

 

2nd, 3rd, 4th and 5th  M function completion signals 

MFIN2<Gn004.4>,MFIN3<Gn004.5>, MFIN4<Gn004.6>, MFIN5<Gn004.7> 

  [Classification]  Input signal 
 

[Function]  Indicate that when the high-speed  M/S/T/B  interface is used for multiple M commands 

per block, the 2nd to 5th M functions have been completed. 

 

[Operation]  For the operation and procedure of the control unit when this signal turns to “1” or “0”, 

see the description of "Basic procedure" above. 

 

Signal address 

 

 

#7 

#6 

#5 

#4 

#3 

#2 

#1 

#0 

Gn004 

 

MFIN5 

MFIN4 

MFIN3 

MFIN2 

 

 

 

 

 

Gn005 

 

BFIN 

 

 

 

TFIN 

SFIN 

 

MFIN 

 

B-64693EN-1/01

 

 

9. AUXILIARY FUNCTION

 

- 1445 - 

Parameter 

 

 

#7 

#6 

#5 

#4 

#3 

#2 

#1 

#0 

3001 

 

MHI 

 

 

 

 

 

 

 

 

 

[Input type]  Parameter input 

 

[Data type]  Bit path 

 

 

#7  MHI

  Exchange of strobe and completion signals for the M, S, T, and B 

0: 

Normal 

1: 

High-speed 

 

 

 

#7 

#6 

#5 

#4 

#3 

#2 

#1 

#0 

3002 

 

 

 

 

 

 

 

 

CHM 

 

 

[Input type]  Parameter input 

 

[Data type]  Bit path 

 

 

#0  CHM

  For high-speed M/S/T/B, the distribution end signal DEN and an auxiliary function code 

signal M00 to M31 are: 
0: 

Not turned off even upon completion of the execution of the auxiliary function. 

1: 

Turned off upon completion of the execution of the auxiliary function. 

 

Note 

NOTE 

1  The strobe signals MF, SF, TF, and BF are “0” when the power is turned on. 
2  When the control unit is reset, MF, SF, TF, and BF are set to “0”. 
3  Using bit 0 (CHM) of parameter No. 3002, select whether to turn the distribution 

end signal DEN and the auxiliary function code signals M00 to M31 to “0” at the 
completion of one block. 

 

Reference item 

Manual name 

Item name 

CONNECTION MANUAL (FUNCTION) 
(This manual) 

Auxiliary function, 2nd auxiliary function 
Multiple M commands in a single block 
External operation function 

 

9.5 

M CODE GROUPING FUNCTION 

Overview 

Classifying up to 500 M codes into up to 127 groups allows the user: 

 

To receive an alarm if an M code that must be specified alone is included when multiple M codes are 
specified in a block. 

 

To receive an alarm if M codes belonging to the same group are specified in the same block when 
multiple M codes are specified in a block. 

 

Setting an M code group number using the setting screen 

  - 

Procedure for displaying the M code group setting screen 

You can use the “M code group setting screen” to set a group number for each M code. 
 
Display the “M code group setting screen” using the following procedure: 

9. AUXILIARY FUNCTION

 

 

B-64693EN-1/01 

- 1446 - 

Press function key 

 

  and the continuous menu key several times. Soft key [M CODE GROUP] 

appears. 

Press soft key [M CODE GROUP]. 

 
In the “NO.” field, M codes for which an M code group can be set are displayed. 
An M code group can be set for the following M codes: M00 to M99, and any 400 M codes selected from 
M100 and subsequent M codes. For details of how to add the 100th and subsequent M codes,  see the 
explanation of parameters Nos. 3441 to 3444. 
 
In the “DATA” field, the M code group number corresponding to each M code is displayed. 
 

  - 

Setting a group number 

To set an M code group number on the “M code group setting screen,” use the following procedure: 

Select the MDI mode. 

Set “PARAMETER WRITING” on the setting screen to 1.   

Display the “M code group setting screen. 

Move the cursor to the M code to be set using page keys and cursor keys. You can also enter the 
number of the M code to be set and press soft key [NO.SRH] to move the cursor to the M code. 

Enter a group number and press soft key [INPUT] or the 

 

  key. 

The valid range of M code group numbers is from 1 to 127 (127 groups). If a value of 0 is input, it is not 
registered as an M code group. 
 

  - 

Examples of setting parameters Nos. 3441 to 3444 

In the following examples, the number of digits of an M code is 4. 
<1> to <4> indicate parameters Nos. 3441 to 3444. 
 
(1) When <1> = 300, <2> = 400, <3> = 500, and <4> = 900 are set 

 

 

Number 
0000           
  :     100 codes 
0099           
0300           
  :     100 codes 
0399           
0400           
  :     100 codes 
0499           
0500           
  :     100 codes 
0599           
0900           
  :     100 codes 
0999           

M code groups can be set for M0000  to  M0099, 
M0300 to M0599, and M0900 to M0999. 
M codes M0300 to M0599 and M0900 to M0999 are 
added to the M code group setting screen.

 

 

 

B-64693EN-1/01

 

 

9. AUXILIARY FUNCTION

 

- 1447 - 

(2)  When <1> = 200, <2> = 0, <3> = 550, and <4> = 800 are set 

 

 

M code groups can be set for M0000 to M0099, 
M0200 to M0299,  M0550 to M0649, and M0800 
to M0899. 
(The setting of parameter <2> is invalid because   
it is 0.) 
In this case, M codes M0200 to M0299, M0550 to 
M0649, and M0800 to M0899 are added to the   
M code group setting screen. 

Number 
0000 
 : 
0099 
0200   
 : 
0299   
0550   
 : 
0649 
0800 
 : 
0899 

 

 

M code group check function 

When multiple M commands in a single block (enabled when bit 7 (M3B) of parameter No. 3404 is set to 
1) are used, you can check the following items. You can also select whether to check the items using bit 1 
(MGC) of parameter No. 3400. 
(1)  M code to be specified in a single block containing no other M codes 
 

If an M code which must be specified in a single block containing no other M codes is specified 
together with another M code, an alarm PS5016, ”ILLEGAL COMBINATION OF M CODES”  is 
issued. 

(2)  M codes in the same group 
 

If multiple M codes in the same group are specified together, an alarm PS5016 is issued. 

 

The valid range of group numbers is from 0 to 127 (128 groups). 
Group numbers 0 and 1 have special meaning. Note the following points: 

 

Each M code with group number 1 is assumed to be an M code to be specified in a single block 
containing no other M codes. 

 

For each M code with group number 0, the “same group M code check” is ignored. That is, when 
multiple M codes with group number 0 are specified in a single block, the alarm is not issued. 

 

For each M code with group number 0, the “check for an M code to be specified in a single block 
containing no other M codes” is not ignored. That is, if an M code with group number 1 and an M 
code with group number 0 are specified in a single block, the alarm is issued. 

 

For M codes that are not to be output to the machine such as M98,  M99,  M198, and M codes for 
subprogram and macro calls (set in parameters Nos. 6071 to 6079 and Nos. 6080 to 6089 and with 
the macro executor), be sure to set 0 as the group number. 

 

For M00, M01, M02, M30, and M codes for which buffering is suppressed (set in parameters Nos. 
3411 to 3432 and 11290 to 11299), be sure to set 1 as the group number. 

 

Parameter 

 

 

#7 

#6 

#5 

#4 

#3 

#2 

#1 

#0 

3400 

 

 

 

 

 

 

 

MGC 

 

 

 

[Input type]  Parameter input 

 

[Data type]  Bit path 

 

 

#1  MGC

  When a single block specifies multiple M commands, an M code group check is: 

0: 

Made. 

1: 

Not made. 

 

9. AUXILIARY FUNCTION

 

 

B-64693EN-1/01 

- 1448 - 

3441 

 

Start number of M codes for which an M code group can be set (1) 

 

3442 

 

Start number of M codes for which an M code group can be set (2) 

 

3443 

 

Start number of M codes for which an M code group can be set (3) 

 

3444 

 

Start number of M codes for which an M code group can be set (4) 

 

 

[Input type]  Parameter input 

 

[Data type]  2-word path 

[Valid data range]  0, 100to99999999 

Code numbers 0 to 99 on the M code group setting  screen correspond  to M00 to M99. 
When adding M codes after the first 100 M codes, specify a start M code number in these 
parameters. Thus, up to 400 M codes can be added to the M code group setting screen in 
groups of 100 M codes starting with the set value. When 0 is set, no M codes are added to 
the M code group setting screen. 
When setting these parameters, follow the setting condition described  below. If the 
condition is not satisfied, no M codes are added to the M code group setting screen as in 
the case where 0 is set. 
(Setting condition) 
 

The settings of parameters (1) to (4) (excluding the setting of 0) must satisfy: 

 

99 

<

 (1), (1)+99 

<

 (2), (2)+99 

<

 (3), (3) +99 

<

 (4) 

 

Alarm and message 

Number 

Message 

Description 

PS5016 

ILLEGAL COMBINATION OF M CODES 

M codes which belonged to the same group were specified 
in a block. Alternatively, an M code which must be 
specified without other M codes in the block was specified 
in a block with other M codes. 

 

Reference item 

Manual name 

Item name 

OPERATOR’S MANUAL (B-64694EN) 

M Code Grouping Function 

 

B-64693EN-1/01

 

 

9. AUXILIARY FUNCTION

 

- 1449 - 

9.6 

AUXILIARY FUNCTION OUTPUT IN MOVING AXIS 

Overview 

By  specifying  absolute coordinate values  and auxiliary functions  (M, B) at  G50.9 block, the auxiliary 
functions are output  to PMC when absolute coordinate enters  the  specified  area  in the next movement 
block. 
G50.9 can be specified up to 2 blocks consecutively. In other words, auxiliary function output points in   
a movement block can be specified up to two. 
Code signals and strobe signals are output to the same signal address as a usual auxiliary function. 
 

Format 

G50.9  

IP

_ Mm11 Mm12 Mm13 Bb11 ; 

G50.9  

IP

_ Mm21 Mm22 Mm23 Bb21 ; 

(Movement command block) Mm01 Mm02 Mm03 Bb01 Ss01 Tt01 ; 

IP

_    : Auxiliary function output start point. (Absolute coordinate value) 

M m11 

: 1st M auxiliary function (1st block) 

M m12 

: 2nd M auxiliary function (1st block) 

M m13 

: 3rd M auxiliary function (1st block) 

B b11 

: 2nd auxiliary function (1st block) 

M m21 

: 1st M auxiliary function (2nd block) 

M m22 

: 2nd M auxiliary function (2nd block) 

M m23 

: 3rd M auxiliary function (2nd block) 

B b21 

: 2nd auxiliary function (2nd block) 

M m01 

: 1st M auxiliary function (movement block) 

M m02 

: 2nd M auxiliary function (movement block) 

M m03 

: 3rd M auxiliary function (movement block) 

B b01 

: 2nd auxiliary function (movement block) 

  S s01 

: Spindle speed command 

  T t01  

: T command (Tool compensation) 

 
-  At

 least one axis of auxiliary function output start point must be commanded at G50.9 block. The   

alarm PS5330, ” G50.9 FORMAT ERROR” occurs if there is not an axis address at G50.9 block. 

-  At least one auxiliary function must be commanded at G50.9 block. The alarm PS5330,” G50.9 

FORMAT ERROR” occurs if an auxiliary function isn't commanded. 

-  It is possible to command G50.9 block up to 2 blocks consecutively. The alarm PS5330,” G50.9   

FORMAT ERROR” occurs if more than 3 blocks are commanded. 

-

 

Incremental programming cannot be specified in G50.9 block. The alarm PS0009, ”IMPROPER 
NC ADDRESS” occurs. Also, in case of incremental mode (G91) in G code system B/C, 
incremental programming in G50.9 block is regarded as absolute programming.

 

 

 

 

 

 

 

 

 

Content      ..     184      185      186      187     ..