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

 

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

 

Search            copyright infringement  

 

 

 

 

 

 

 

 

 

 

 

Content      ..     273      274      275      276     ..

 

 

 

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

 

 

12. PROGRAM COMMAND

 

 

B-64693EN-1/01

 

- 2154 - 

  - 

Scaling along each axis at the same rate of magnification 

Set bit 6 (XSC) of parameter No. 5400 to 0. 
If the scaling magnification P is not specified, the magnification set in parameter No. 5411 is used. 
Decimal point input is not accepted as the magnification P. If decimal point input is made, alarm PS0007, 
“ILLEGAL USE OF DECIMAL POINT”, will occur. 
A negative value cannot be specified as the magnification  P. If a negative value is specified, alarm 
PS0006, “ILLEGAL USE OF MINUS SIGN”, will occur. 
The allowable magnification range is from 0.00001 to 9999.99999. 
 

  - 

Scaling of each axis, programmable mirror image (negative magnification) 

Each axis can be scaled by different magnifications. Also when a negative magnification is specified, a 
mirror image is applied. The axis subject to the mirror image is the one that contains the scaling center. 
Set a bit 6 (XSC) of parameter No. 5400 to 1 to validate each axis scaling (mirror image). 
Using I, J, and K, specify the scaling magnifications for the basic 3 axes (X to Z axes). Use parameter No. 
1022 to specify which axes to use as the basic 3 axes.   
For those of the X to Z axes for which I, J, and K are not specified and for axes other than the basic 3 
axes, the magnification set with parameter No. 5421 is used. 
A value other than 0 must be set to parameter No. 5421. 
Decimal point programming can not be used to specify the rate of magnification (I, J, K). 
Magnification can be set within the range 

±

0.00001 

±

9999.99999. 

 

  CAUTION 

 

Specifying the following commands at the same time causes them to be 
executed in the order indicated below: 
<1>  Programmable mirror image (G51.1) 
<2>  Scaling (G51) (including a mirror image with a negative magnification) 
<3>  Mirror image due to the external switch of the CNC or the settings of the 

CNC 

 

In this case, the programmable mirror image is effective to the scaling center 
and magnification as well. 

 

To specify G51.1 and G51 at the same time, specify them in this order; to cancel 
them, specify them in the reverse order. 

 

Y axis

X axis

b

a

d

a/b

: Scaling magnification of X axis

c/d

: Scaling magnification of Y axis

  0

: Scaling center

Programmed figure

Scaled figure

0

c

 

Fig. 12.13 (b) Scaling of each axis 

B-64693EN-1/01

 

 

12. PROGRAM COMMAND

 

- 2155 - 

 

  - 

Scaling of circular interpolation 

Even if different magnifications are applied to each axis in circular interpolation, the tool will not trace an 
ellipse. 
 

G90 G00 X0.0 Y100.0 Z0.0; 

 

G51 X0.0 Y0.0 Z0.0 I2000 J1000;  (A magnification of 2 is applied to the X  direction  and a 

magnification of 1 is applied to the Y direction.)   

 

G02 X100.0 Y0.0    I0 J–100.0 F500; 

Above commands are equivalent to the following command: 
 

G90 G00 X0.0 Y100.0 Z0.0; 

 

G02 X200.0 Y0.0 I0 J–100.0 F500; 

 

(Because the end point is not on an arc, spiral interpolation is assumed.) 

 

(0,0)

(100,0)

(200,0)

Y

X

Scaled shape

 

Fig. 12.13 (c) Scaling for circular interpolation1 

 
Even for an R-specified arc, scaling is applied to each of I, J, and K after the radius value (R) is converted 
into a vector in the center direction of each axis. 
If, therefore, the above G02 block contains the following R-specified arc, the operation will be same as 
that in which I and J are specified. 
 

G02 X100.0 Y0.0 R100.0 F500 ; 

 

  - 

Scaling and coordinate system rotation 

If both scaling and coordinate system rotation are specified at the same time, scaling is performed first, 
followed by coordinate system rotation. In this case, scaling is effective to the rotation center as well. 
To specify both of them, specify scaling first and then coordinate system rotation. To cancel them, 
specify them in the reverse order. 
 
Example 

Main program 

O1 
G90 G00 X20.0 Y10.0 ; 
M98 P1000 ; 
G51 X20.0 Y10.0 I3000 J2000 ; (

×

 3 in the X direction and 

×

 2 in the Y direction) 

M98 P1000 ; 
G17 G68 X35.0 Y20.0 R30.0 ; 
M98 P1000 ; 
G69 ; 
G50 ; 
M30 ; 

Subprogram 

O1000 ; 
G01 X20.0 Y10.0 F500 ; 
G01 X50.0 ; 
G01 Y30.0 ; 

12. PROGRAM COMMAND

 

 

B-64693EN-1/01

 

- 2156 - 

G01 X20.0 ; 
G01 Y10.0 ; 
M99 ; 

 

Y

X

Scaling center

Original program

Shape after
coordinate system
rotation

Scaled shape

Rotation center
after scaling

Rotation center
before scaling

 

Fig. 12.13 (d) Scaling and coordinate system rotation 

 

  - 

Scaling and optional-angle chamfering/corner rounding 

Chamfering

Scaling

x 2 in the X direction
x 1 in the Y direction

Corner rounding

If different magnifications are applied to the individual axes, corner rounding
results in a spiral, not an arc, because scaling is applied to the end point and
radius of the arc.

Scaling

x 2 in the X direction
x 1 in the Y direction

 

Fig. 12.13 (e) Scaling and optional-angle chamfering/corner rounding 

 

Limitation 

  - 

Tool compensation 

This scaling is not applicable to cutter/tool nose radius compensation values, tool length offset values, 
and tool offset values (Fig. 12.13 (f)). 

B-64693EN-1/01

 

 

12. PROGRAM COMMAND

 

- 2157 - 

 

Cutter compensation values are not scaled. 

Programmed figure 

Scaled figure 

 

Fig. 12.13 (f) Scaling during cutter compensation 

 

  - 

Invalid scaling 

Scaling is not applicable to the Z-axis movement in case of the following canned cycle. 

Cut-in value Q and retraction value d of peck drilling cycle (G83, G73). 

Fine boring cycle (G76) 

Shift value Q of X and Y axes in back boring cycle (G87). 

 

 

Caution 

  CAUTION 

1  If a parameter setting value is employed as a scaling magnification without 

specifying P, the setting value at G51 command time is employed as the scaling 
magnification, and a change of this value, if any, is not effective. 

2  Before specifying the G code for reference position return (G27, G28, G29, G30) 

or coordinate system setting (G52 to G59, G92), cancel the scaling mode. If any 
of them is specified during scaling, alarm PS0412, “AN UNUSABLE G CODE 
WAS USED”, will occur. 

3  If scaling results are rounded by counting fractions of 5 and over as a unit and 

disregarding the rest, the move amount may become zero. In this case, the 
block is regarded as a no movement block, and therefore, it may affect the tool 
movement by cutter compensation. See the description of cutter compensation. 

4  Refrain from scaling on a rotation axis for which the rollover function is enabled. 

Otherwise, the tool may rotate in a short-cut manner, possibly resulting in 
unexpected movement. 

 

12. PROGRAM COMMAND

 

 

B-64693EN-1/01

 

- 2158 - 

Note 

NOTE 

1  The position display represents the coordinate value after scaling. 
2  When a mirror image was applied to one axis of the specified plane, the 

following results: 
(1) Circular command 

Direction of rotation is reversed. 

(2) Cutter/tool nose radius compensation  Offset direction is reversed. 
(3) Coordinate system rotation 

Rotation angle is reversed. 

 

Parameter 

 

 

#7 

#6 

#5 

#4 

#3 

#2 

#1 

#0 

5400 

 

SCR 

XSC 

 

 

 

 

 

 

 

 

[Input type]  Parameter input 

 

[Data type]  Bit path 

 

 

#6  XSC

  The setting of a scaling magnification (axis-by-axis scaling) is: 

0: 

Disabled. 

1: 

Enabled. 

 

 

#7  SCR

  Scaling (G51) magnification unit: 

0: 

0.00001 times (1/100,000) 

1: 

0.001 times 

 

 

 

#7 

#6 

#5 

#4 

#3 

#2 

#1 

#0 

5401 

 

 

 

 

 

 

 

 

SCLx 

 

 

[Input type]  Parameter input 

 

[Data type]  Bit axis 

 

 

#0  SCLx

  Scaling on this axis: 

0: 

Invalidated 

1: 

Validated 

 

5411 

 

Scaling (G51) magnification 

 

 

[Input type]  Setting input 

 

[Data type]  2-word path 

 

[Unit of data]  0.001 or 0.00001 times (Selected using bit 7 (SCR) of parameter No. 5400) 

[Valid data range]  1to999999999 

This parameter sets a scaling magnification when axis-by-axis scaling is disabled (with 
bit 6 (XSC) of parameter No. 5400 set to 0). If no scaling magnification (P) is specified in 
the program, the setting of this parameter is used as a scaling magnification. 
 

NOTE 

 

When bit 7 (SCR) of parameter No. 5400 is set to 1, the valid data 
range is 1 to 9999999. 

 

5421 

 

Scaling magnification for each axis 

 

 

[Input type]  Setting input 

 

[Data type]  2-word axis 

 

[Unit of data]  0.001 or 0.00001 times (Selected using bit 7 (SCR) of parameter No. 5400) 

B-64693EN-1/01

 

 

12. PROGRAM COMMAND

 

- 2159 - 

[Valid data range]  -999999999 to -1, 1 to 999999999 

This parameter sets a scaling magnification for each axis when axis-by-axis scaling is 
enabled (with bit 6 (XSC) of parameter No. 5400 set to 1). For the first spindle to the 
third spindle (X-axis to Z-axis), the setting of this parameter is used as a scaling 
magnification if scaling magnifications (I, J, K) are not specified in the program. 
 

NOTE 

 

When bit 7 (SCR) of parameter No. 5400 is set to 1, the valid data 
ranges are -9999999 to -1 and 1 to 9999999. 

 

Alarm and message 

  - 

Alarms common to lathe systems and machining center systems 

Number 

Message 

Description 

PS0006 

ILLEGAL USE OF MINUS SIGN 

A minus sign (–) was specified at an NC instruction word or system 
variable where no minus signal may be specified. 

PS0007 

ILLEGAL USE OF DECIMAL 
POINT 

A decimal point (.) was specified at an address where no decimal 
point may be specified, or two or more decimal points were 
specified. 

PS0142 

ILLEGAL SCALE RATE 

The scaling rate is 0 times or 10000 times or more. 
Modify the setting of the scaling rate. (G51P_ . . . or 
G51I_J_K_ . . . or parameter No. 5411 or 5421) 

PS0412 

ILLEGAL G CODE 

During scaling, the G code for reference position return (G27, G28, 
G29, G30) or coordinate system setting (G52 to G59, G92), is 
specified. Before specifying any of them, cancel the scaling mode. 

PS5007 

TOO LARGE DISTANCE 

Due to compensation, point of intersection calculation, 
interpolation or similar reasons, a movement distance that exceeds 
the maximum permissible distance was specified. 
Check the programmed coordinates or compensation amounts. 

 

  - 

Alarms only for lathe systems 

Number 

Message 

Description 

PS0300 

ILLEGAL COMMAND IN 
SCALING 

An illegal G code was specified during scaling. Modify the 
program. 

PS0509 

TOOL OFFSET COMMAND IS 
NOT AVAILABLE 

-  Tool offset (for the lathe system) was specified in the thread 

cutting block. 

-  Tool offset was specified (lathe system) in the coordinate system 

rotation mode, or programmable mirror image mode. 

 

Reference item 

Manual name 

Item name 

OPERATOR’S MANUAL (B-64694EN) 

Scaling 

 

12. PROGRAM COMMAND

 

 

B-64693EN-1/01

 

- 2160 - 

12.14 

COORDINATE SYSTEM ROTATION 

Overview 

A programmed shape can be rotated. By using this function, it becomes possible, for example, to correct 
the position of a mounted workpiece using a rotation command when the workpiece is placed with some 
angle rotated  from the machine coordinates. Further, when there is a pattern comprising some identical 
shapes in the positions rotated from a shape, the time required for programming and the length of the 
program can be reduced by preparing a subprogram of the shape and calling it after rotation. 

 

Center of 
rotation 

Angle of rotation 

 

 

Parameter 

  - 

Angle specification method of coordinate system rotation 

 

 

#7 

#6 

#5 

#4 

#3 

#2 

#1 

#0 

5400 

 

 

 

 

 

 

 

 

RIN 

 

 

[Input type]  Parameter input 

 

[Data type]  Bit path 

 

 

#0  RIN

  Coordinate rotation angle command (R) : 

0: 

Specified by an absolute method 

1: 

Specified by an absolute method (G90) or incremental method (G91) 

 

NOTE 

 

When G code system A of the lathe system is used, it is specified 
by an absolute method regardless of the setting of this parameter. 

 

  - 

Angular displacement used when no angular displacement is specified for 
coordinate system rotation 

5410 

 

Angular displacement used when no angular displacement is specified for coordinate system rotation 

 

 

[Input type]  Setting input 

 

[Data type]  2-word path 

 

[Unit of data]  0.001 deg 

[Valid data range]  -360000 to 360000 

This parameter sets the angular displacement for coordinate system rotation. When the 
angular displacement for coordinate system rotation is not specified with address R in the 
block where G68 is specified, the setting of this parameter is used as the angular 
displacement for coordinate system rotation. 
 

B-64693EN-1/01

 

 

12. PROGRAM COMMAND

 

- 2161 - 

NOTE 

 

Write this parameter in the rotation cancel (G69) state when it is 
written by using the applications (such as PMC window, FOCAS2, 
and C language executor) or the programmable parameter input 
(G10). 

 

Even if this parameter is written in the rotation mode, it is not 
immediately enabled. 

 

When the rotation start (G68) that doesn't include the rotation angle 
(R_) is specified again, it is enabled. 

 

 

 

#7 

#6 

#5 

#4 

#3 

#2 

#1 

#0 

11600 

 

 

 

AX1 

 

 

 

 

 

 

 

[Input type]  Parameter input 

 

[Data type]  Bit path 

 

 

#5  AX1

  If, in coordinate system rotation mode, a 1-axis command is issued in absolute mode, 

0: 

First, the specified position is calculated in the coordinate system before rotation, 
and then the coordinate system is rotated. 

1: 

First, the coordinate system is rotated, and then the tool moves to the specified 
position in the coordinate system. 

 

(FS16

i

/18

i

/21

i

 compatible specification) 

    

 

[Example]  G90 G0 X0 Y0 

G01 X10. Y10. F6000 
G68 X0 Y0 R45.   ........................ Coordinate system rotation command 
Y14.142   ..................................... 1-axis command (1) 
G69 
When the bit 5 (AX1) of parameter No. 11600 is set to 0:

 

 

In the coordinate system (XY) before rotation, the specified position is calculated, 
and then the coordinate system is rotated. Thus, for the command in (1), the position 
on the X-axis that is not specified is assumed to be X10, so that the specified 
position is (X10,Y14.142). Then, the tool moves to the movement position 
(X-2.929,Y17.071) resulting from 45-degree rotation. 

 

Coordinates before the coordinate 
system rotation command   
: X10,Y10 

 

45 
degrees 

Movement position 
: X-2.929,Y17.071 

 

Specified position 
: X10,Y14.142 

Tool path 

 

 

 

 

 

 

 

 

 

Content      ..     273      274      275      276     ..