The machine is equipped with safety devices which serve to protect personnel and the machine itself from
hazards arising from unforeseen accidents. However, operators must not rely exclusively on these safety
devices: they must also become fully familiar with the safety guidelines presented below to ensure accidentfree operation.
This instruction manual and the warning signs attached to the machine cover only those hazards which
Okuma can predict. Be aware that they do not cover all possible hazards.
1.Precautions Relating to Installation
(1) Please be noted about a primary power supply as follows.
• Do not draw the primary power supply from a distribution panel that also supplies a major
noise source (for example, an electric welder or electric discharge machine) since this
could cause malfunction of the CNC unit.
• If possible, connect the machine to a ground not used by any other equipment. If there is
no choice but to use a common ground, the other equipment must not generate a large
amount of noise (such as an electric welder or electric discharge machine).
(2) Installation Environment
Observe the following points when installing the control enclosure.
• Make sure that the CNC unit will not be subject to direct sunlight.
• Make sure that the control enclosure will not be splashed with chips, water, or oil.
• Make sure that the control enclosure and operation panel are not subject to excessive
vibrations or shock.
• The permissible ambient temperature range for the control enclosure is 5 to 40°C.
• The permissible ambient humidity range for the control enclosure is relative humidity 50%
or less at 40°C (no condensation).
• The maximum altitude at which the control enclosure can be used is 1000 m (3281ft.).
2.Points to Check before Turning on the Power
(1) Close all the doors of the control enclosure and operation panel to prevent the entry of water,
chips, and dust.
(2) Make absolutely sure that there is nobody near the moving parts of the machine, and that there
are no obstacles around the machine, before starting machine operation.
(3) When turning on the power, turn on the main power disconnect switch first, then the CONTROL
ON switch on the operation panel.
5327-E P-(ii)
SAFETY PRECAUTIONS
3.Precautions Relating to Manual/Continuous Operation
(1) Follow the instruction manual during operation.
(2) Do not operate the machine with the front cover, chuck cover, or another protective cover
removed.
(3) Close the front cover before starting the machine.
(4) When machining the initial workpiece, check for machine operations, run the machine under no
load to check for interference among components, cut the workpiece in the single block mode,
and then start continuous operation.
(5) Ensure your safety before rotating the spindle or moving a machine part.
(6) Do not touch chips or workpiece while the spindle is rotating.
(7) Do not stop a rotating part with hand or another means.
(8) Check that the condition of hydraulic chuck jaws as mounted, operating pressure, and
maximum permissible revolving speed.
(9) Check the condition and location of the cutting tool as mounted.
(10) Check the tool offset value.
(11) Check the zero offset value.
(12) Check that the SPINDLE OVERRIDE and FEEDRATE OVERRIDE dials on the NC operation
panel are set to 100%.
(13) When moving the turret, check the software limits for X- and Z-axes or the locations of limit
switch dogs to prevent interference with the chuck and tailstock.
(14) Check the location of the turret.
(15) Check the location of the tailstock.
(16) Cut workpieces with a transmitted power and torque within the permissible range.
(17) Chuck each workpiece firmly.
(18) Check that the coolant nozzle is properly located.
4.On Finishing Work
(1) On finishing work, clean the vicinity of the machine.
(2) Return the ATC, APC and other equipment to the predetermined retraction position.
(3) Always turn off the power to the machine before leaving it.
(4) To turn off the power, turn off the CONTROL ON switch on the operation panel first, then the
main power disconnect switch.
5327-E P-(iii)
SAFETY PRECAUTIONS
5.Precautions during Maintenance Inspection and When
Trouble Occurs
In order to prevent unforeseen accidents, damage to the machine, etc., it is essential to observe the
following points when performing maitenance inspections or during checking when trouble has
occurred.
(1) When trouble occurs, press the emergency stop button on the operation panel to stop the
machine.
(2) Consult the person responsible for maintenance to determine what corrective measures need
to be taken.
(3) If two or more persons must work together, establish signals so that they can communicate to
confirm safety before proceeding to each new step.
(4) Use only the specified replacement parts and fuses.
(5) Always turn the power off before starting inspection or changing parts.
(6) When parts are removed during inspection or repair work, always replace them as they were
and secure them properly with their screws, etc.
(7) When carrying out inspections in which measuring instruments are used - for example voltage
checks - make sure the instrument is properly calibrated.
(8) Do not keep combustible materials or metals inside the control enclosure or terminal box.
(9) Check that cables and wires are free of damage: damaged cables and wires will cause current
leakage and electric shocks.
(10) Maintenance inside the Control Enclosure
a.Switch the main power disconnect switch OFF before opening the control enclosure door.
b.Even when the main power disconnect switch is OFF, there may some residual charge in
the MCS drive unit (servo/spindle), and for this reason only service personnel are permitted
to perform any work on this unit. Even then, they must observe the following precautions.
• MCS drive unit (servo/spindle)
The residual voltage discharges two minutes after the main switch is turned OFF.
c.The control enclosure contains the NC unit, and the NC unit has a printed circuit board
whose memory stores the machining programs, parameters, etc. In order to ensure that the
contents of this memory will be retained even when the power is switched off, the memory
is supplied with power by a battery. Depending on how the printed circuit boards are handled, the contents of the memory may be destroyed and for this reason only service personnel should handle these boards.
(11) Periodic Inspection of the Control Enclosure
a.Cleaning the cooling unit
The cooling unit in the door of the control enclosure serves to prevent excessive
temperature rise inside the control enclosure and increase the reliability of the NC unit.
Inspect the following points every three months.
• Is the fan motor inside the cooling unit working?
The motor is normal if there is a strong draft from the unit.
• Is the external air inlet blocked?
If it is blocked, clean it with compressed air.
6.General Precautions
(1) Keep the vicinity of the machine clean and tidy.
(2) Wear appropriate clothing while working, and follow the instructions of someone with sufficient
training.
(3) Make sure that your clothes and hair cannot become entangled in the machine. Machine
operators must wear safety equipment such as safety shoes and goggles.
5327-E P-(iv)
SAFETY PRECAUTIONS
(4) Machine operators must read the instruction manual carefully and make sure of the correct
procedure before operating the machine.
(5) Memorize the position of the emergency stop button so that you can press it immediately at any
time and from any position.
(6) Do not access the inside of the control panel, transformer, motor, etc., since they contain high-
voltage terminals and other components which are extremely dangerous.
(7) If two or more persons must work together, establish signals so that they can communicate to
confirm safety before proceeding to each new step.
7.Symbols Used in This Manual
The following warning indications are used in this manual to draw attention to information of
particular importance. Read the instructions marked with these symbols carefully and follow them.
DANGER
indicates an imminently hazardous situation which, if not avoided, will result in death or serious
injury.
WARNING
indicates a potentially hazardous situation which, if not avoided, could result in death or serious injury.
CAUTION
indicates a potentially hazardous situation which, if not avoided, may result in minor or moderate injury.
CAUTION
5327-E P-(v)
SAFETY PRECAUTIONS
indicates a potentially hazardous situation which, if not avoided, may result in damage to your
property.
SAFETY INSTRUCTIONS
indicates general instructions for safe operation.
5327-E P-(i)
INTRODUCTION
INTRODUCTION
Thank you very much for purchasing our numerical control unit OSP-E100L/E10L.
Before using this NC unit (hereafter simply called NC), thoroughly read this programming manual (hereafter
called this manual) in order to ensure correct use.
This manual explains how to use and maintain the NC so that it will deliver its full performance and maintain
accuracy over a long term.
You must pay particular attention to the cautions given in this manual, read them carefully, and make sure you
fully understand them before operating the NC.
Display Screens
The NC display screens vary with the selected NC specifications.
The screens shown in this manual, therefore, may not exactly the same with
those displayed on your NC.
5327-E P-(i)
TABLE OF CONTENTS
TABLE OF CONTENTS
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB) .................................1
1. Notes for Using Gauging MSB................................................................................................. 1
General notes for using maker subprograms (MSB) for gauging are presented below.
1-1-1.NOEX Command
In the single block mode, sequences preceded by NOEX are excluded in single block operation.
This speeds up internal processing for checking and correcting the program in single block
operation.
When specifying the NOEX command, the restrictions stated below apply.
• NOEX cannot be specified before axis movement commands.
NOEX G00 Z100......................×
• NOEX cannot be specified before an IF statement.
NOEX IF [AA EQ 0] N004........×
• NOEX cannot be specified before a GOTO statement.
NOEX GOTO N004..................×
• NOEX cannot be specified before a sequence number/label.
NOEX can be specified after a sequence number/label.
NOEX N001 V1 = 100..............×
N001 NOEX V1 = 100.............{
• NOEX cannot be specified before a CALL statement.
NOEX CALL OWMXA...............×
In modes other than the single block mode, NOEX has no influence on the execution of a program.
If NOEX is specified in a variable setting sequence, the execution time is shortened since the
sequence is excluded from single block processing. The operation itself does not vary regardless of
whether or not NOEX is specified.
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
1-1-2.Judging Local Variable Definition Using IF Statement
N2 IF Local-variable-name N3
5327-E P-2
(1)
(2)
(3)(4)
LE61129R0200700030001
(1) Specify the sequence name of this block.
(2) This indicates that this sequence is the IF statement sequence.
(3) Specify the local variable name whose defined/undefined status is to be checked. Note that a
local variable name may not be enclosed by brackets ([ ]).
(4) Specify the sequence name of the destination block to which the program jumps if the specified
local variable has been defined.
The IF statement judges whether or not the specified local variable has been defined and causes a
jump to the N3 block if it has been defined.
If it has not been defined, the next block is executed.
Example:N1000 IF ABC N2000
If local variable ABC has been defined, the program jumps to the N2000 block.
If not, the program proceeds to the next block.
1-1-3.Calculating the Measured Value (Sensor Contact Point, Program Coordinate
System) (Gauging in the Z-axis Direction)
Measured value = VSKPZ [*] - VZOFZ - VZSHZ - VETFZ (* = 1 or 2)
After the execution of the G30 gauging cycle, the coordinate value of the contact point (in the
machine coordinate system) is set at VSKPZ.
X
Z
Machine zero
Contact point VSKPZ [*]
Measured
Zero offset
Zero shift
value
Tool offset value
value
LE61129R0200700040001
Measured value - Target value (MSP):
The difference between the “measured value” and the “target value (MSP)” is calculated as the
amount of variation and judgment is carried out based on this amount of variation.
[Supplement]
The coordinate value of the contact point is set at either variable VSKPZ [1] or VSKPZ [2]. In the
touch setter gauging cycle, the contact point coordinate value is set at VSKPZ [2]. In the touch
sensor gauging cycle (master ring gauging cycle, work gauging cycle), it is set at VSKPZ [1]. This
is also true for VSKPX [1] and VSKPX [2].
1-2.Control Statements
In gauging programs, the following control statements are used:
(1) GOTO statement
(2) IF statement
(3) CALL statement
(4) RTS statement
These control statements are all entered at the beginning of a block or immediately after the
“sequence name” which comes first in a block. They must be followed by a space or a tab code. If
no space or tab code is entered following a control statement, an alarm occurs.
However, note that since a left bracket “[“ is specified following IF statement, no space or tab code is
required after an IF instruction.
Example:
5327-E P-3
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
N1001 GOTO N2000
Enter a space or a tab code
NLAP1 GOTO NLAP2
LE61129R0200700050001
Specify either a space or a tab code immediately after an element consisting of two or more
consecutive address characters such as a sequence name or control code.
[Supplement]
A sequence name means a code that is used to identify a block in a program. It consists of four
alphanumeric digits following address N.
Sequence names can be expressed in two ways: [N] [4-digit number] and [N] [Alphabet] [3-digit
alphanumerics]
In this manual, sequence names include both of these two types of expression.
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
1-2-1.GOTO Statement (Unconditional Branch)
(1) Programming format
N0 GOTO N1
5327-E P-4
(a)
(b)
(c)
(a) Sequence name of this block. The sequence name may be omitted.
(b) Indicates a GOTO statement.
(c) Sequence name of the destination of branching. A branch destination sequence name
must always be specified.
LE61129R0200700060001
[Supplement]
The branch destination sequence name “N1” must be present in the same block where the control
statement (GOTO) is specified.
(2) Function
Program branches to the specified block (N1) unconditionally.
With a two-saddle model, branching from the turret A side program to the turret B side program
or from the turret B side program to the turret A side program is not allowed.
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
1-2-2.IF Statement (Conditional Branch)
(1) Programming format
N0 IF [Qualification] N1
5327-E P-5
(a)
(b)
(c)(d)
(a) Sequence name of this block. The sequence name may be omitted.
(b) Indicates an IF statement.
(c) There are two qualification states resulting from the comparison operation: "true" and "false."
The qualification must be enclosed by brackets ([ ]).
(d) The sequence name of the destination of branching that occurs if the result of qualification is
"true". The branch destination sequence name must always be specified.
LE61129R0200700070001
(2) Function
The program jumps to the specified block if the result of [qualification] is true.
If the result if false, the next block is executed.
Example:
N1000 IF [V1 EQ 10] N2000
This stands for "EQUAL".
LE61129R0200700070002
In the example program above, if “10” is set for variable V1 (V1 = 10), the program jumps to the
N2000 block. In other cases, the next block is executed.
(3) Evaluation of defined or undefined local variables by IF statement
N2 IF Local-variable name N3
(a)
(b)
(c)(d)
(a) Sequence name of this block.
(b) Indicates an IF statement.
(c) Local variable name whose defined/not defined status is to be evaluated. A variable name
may not be enclosed by brackets ([ ]).
(d) Sequence name of the destination of branching that occurs if the specified local variable
has been defined.
Whether the specified local variable has been defined or not is judged; if it has been
defined, the program jumps to the N3 block.
If it has not been defined, the next block is executed.
LE61129R0200700070003
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Example:
:
N1000 IF ABC N2000
:
:
N2000
In the example program above, if local variable ABC has been defined, the program jumps to
the N2000 block.
If it has not been defined, the next block is executed.
1-2-3.CALL Statement (Program Call)
(1) Programming format
N0 CALL O1 Q1 Variable-setting-part
5327-E P-6
LE61129R0200700070004
(a)
(b)
(d)
(c)(e)
(a) Sequence name of this block. The sequence name may be omitted.
(b) Indicates a CALL statement.
(c) Program name of the subprogram to be called. The program name must always be specified.
(d) The number of times the called subprogram should be repeated. The programmable range of
this repetition is from 1 to 9999. If the Q word is omitted, "Q1" is assumed.
(e) Set variables that are used in the subprogram to be called.
LE61129R0200700080001
(2) Function
The CALL statement calls and executes the specified subprogram (O1).
If variables are set in “variable setting set”, the specified variables are all registered.
Example: N1000 CALL O1234 XP1=150 ZP1=100
Calls and executes subprogram O1234 and registers variables XP1 and ZP1.
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
1-2-4.RTS Statement (Subprogram End Code)
(1) Programming format
N0 RST
(b)
(a)
(a) Sequence name of this block. The sequence name may be omitted.
(b) Indicates the end of the subprogram (RTS statement).
(2) Function
The RTS statement must always be specified at the end of a subprogram.
When this block is executed, the called subprogram ends and the program returns to the block
next to the CALL statement block.
Variables registered by the execution of the CALL statement and those registered in the called
subprogram are discarded.
Example:
5327-E P-7
LE61129R0200700090001
Main program
N1000 CALL O1234 XP1=150
ZP1=100
N1001 G00 X Z
:
:
:
Subprogram
O1234
N001 G00 X=XP1 Z=ZP1
N002
:
:
N050 RTS
:
LE61129R0200700090002
When N1000 in the main program is executed, program execution jumps to O1234 in the
subprogram and that subprogram is executed. After that, when the RTS statement in N050 is
executed, program execution jumps to the N1001 block and the blocks in the main program are
executed from N1001.
Variables XP1 and ZP1 are discarded.
program sequence
N1000 O1234
→
→→
N001N050
→
N1001
LE61129R0200700090003
The sequence name specified as the jump destination must be present in the same
subprogram.
Designation of G13 and G14 is not allowed in a subprogram.
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
2.Touch Setter Gauging and Touch Sensor Gauging
2-1.Overview
2-1-1.General Description of MSB
This section covers the list, flow chart, variable table and other information relating to the touch
setter M/A and touch sensor gauging function, taking the following maker subprogram (MSB) as an
example.
LMSA300A.MSB
The name of the gauging control software is expressed as indicated below.
LMS*????.MSB
*:Indicates the content of the gauging software.
????:Indicates the gauging software version.
In this manual, the gauging control software is represented by “MSB”.
MSBs largely differ from other control software in their contents.
Other control software is used to control signals from the machine and also input/output of part
programs and/or user’s commands.
In contrast, MSBs have the same format as part programs, and they may be considered to be
control software that executes gauging cycles instead of an operator.
In the explanation below, LMSA300A.MSB (tool nose gauging using a touch sensor) is used as an
example. A variety of MSBs exist in addition to this program and the internal specification is specific
to the individual programs. However, the basic programming format, variables to be used, etc. are
common to all MSBs.
5327-E P-8
2-2.Variable Tables
The variables used in MSBs are explained in this section.
(1) Common variables (different from common variables V1 to V200 used for parameter setting)
(2) System variables 1 (used for reading and correcting various types of data)
(3) System variables 2 (used for transmitting data between turret A and turret)
(4) System variables 3 (used as counter for gauging functions)
(5) System variables 4 (used for screen display)
(6) Input/output variables (used for input/output)
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
2-2-1.Common Variables (VS01 to VS32)
Differing from common variables (V1 to V200) used for parameter setting, common variables VS01
to VS32 are not displayed on the screen.
5327-E P-9
Variable
No.
VS01Tool offset numberFor printer outputVS17Not used
VS02Target valueFor printer outputVS18
VS03
VS04
VS05Offset value (new)For printer outputVS21
VS06Result of judgmentFor printer outputVS22
VS07Not usedVS23Tool numberWork gauging
VS08Not usedVS24
VS09Not usedVS25
VS10Not usedVS26NG processing flag
VS11
VS12Not usedVS28
VS13Not usedVS29Target point
VS14Not usedVS30Compensation data
VS15
VS16Not usedVS32Result of judgment
FunctionRemark
Gauging (measured)
value
Offset value
(previous)
Absplite value of
amount of varition
Gauging cycle
starting point X (Z)
coordinate value
(1) Common variables V1 to V200 used for setting parameters are used in common for turrets A
and B. On the other hand, the common variables VS01 to VS32 indicated above are turret
dependent.
That is, turrets A and B have an independent VS01, for example, and the VS01 for turret A must
be specified and called out from turret A, while the VS01 for turret B must be specified and
called out from turret B.
(2) Note that these common variables (VS01 to VS32) will be used in other MSBs in addition to the
gauging cycle discussed here. Therefore, if these common variables are used as variables
transferred between subprograms, numerical values might be changed during the transfer.
When these common variables are used, their processing must end within the same
subprogram.
G13
N1 NOEX VS01=100
Variables used in common in G13 side program
N2 NOEX VS02=10 VS03=20
N3 CALL OSUB1
Within a subprogram, they can be used as desired.
N4
N5
N6
N7 CALL OSUB2
N8
When calling more than one subprogram from a subprogram,
pay attention to the transfer of variables between
subprograms.
Variables used in common in G14 side program
LE61129R0200700120001
2-2-2.System Variables
System variables 1 are used in in-process gauging operations.
They have numerical values automatically determined by the CNC and are used for reading, writing,
and altering various types of data.
* The subscript expression is the numerical value that can be specified following a variable name in
the format [*].
5327-E P-11
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Variable
Name
VSIOX
VSIOZ
VSKPX
VSKPZ
VETFXPresently used tool offset data (X-axis)-99999.999 to 99999.999
VETFZPresently used tool offset data (Z-axis)-99999.999 to 99999.999
VETON Presently used tool offset number1 to 32
VETLNPresently used tool number1 to 12
VRNGX
VRNGZ
VSNX
VSNZ
VGRSL Tool number selected within a tool group0 to 121 to 12
VGRID
VTLNG
VTLOAOffset number (group 1)0 to 321 to 12
VTLGNGroup number the tool belongs to0 to 121 to 12
VTLSNTool life - preset count number0 to 99991 to 12
VTLCNActual machined number0 to 99991 to 12
VTLSTTool life - preset time0 to 3599991 to 12
VTLCTActual cutting time0 to 3599991 to 12
VTLSATool life - preset wear amount0 to 999.9991 to 12
VTLCAActual tool wear amount0 to 99999.9991 to 12
VTLLFFlag indicating the tool life status0 to 11 to 12
VTLOBOffset number (group 2)0 to 321 to 12
VTLOCOffset number (group 3)0 to 321 to 12
VZOFX X-axis zero offset data-99999.999 to 99999.999
VZOFZZ-axis zero offset data-99999.999 to 99999.999
VZSHX X-axis zero shift data-99999.999 to 99999.999
Actual position of X-axis
(program coordinate system)
Actual position of Z-axis
(program coordinate system)
Sensor contact position of X-axis
(machine coordinate system)
Sensor contact position of Z-axis
(machine coordinate system)
Master ring position (X-axis)
(program coordinate system)
Master ring position (Z-axis)
(program coordinate system)
Sensor position (X-axis)
(machine coordinate system)
Sensor position (Z-axis)
(machine coordinate system)
Flag indicating an occurrence of automatic
indexing in a tool group
Flag indicating the result in a gauging cycle was
NG
FunctionMin - Max. - Values
-99999.999 to 99999.999
-99999.999 to 99999.999
-99999.999 to 99999.9991 to 2
-99999.999 to 99999.9991 to 2
-99999.999 to 99999.999
-99999.999 to 99999.999
-99999.999 to 99999.9991 to 2
-99999.999 to 99999.9991 to 2
0 to 11 to 12
0 to 11 to 12
Subscript
Expression
5327-E P-12
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Variable
Name
VZSHZZ-axis zero shift data-99999.999 to 99999.999
VTOFX Tool offset data (X-axis)-99999.999 to 99999.9991 to 32
VTOFZTool offset data (Z-axis)-99999.999 to 99999.9991 to 32
Setting for OPTIONAL PARAMETER (GAUGING)
VSKFA
VSKFB
VNSRX Nose radius compensation data (X-axis)-99999.999 to 99999.9991 to 32
VNSRZ Nose radius compensation data (Z-axis)-99999.999 to 99999.9991 to 32
Feedrate in gauging cycle 2 (Feedrate for the first
contact detection in double-contact gauging cycle)
Setting for OPTIONAL PARAMETER (GAUGING)
Feedrate in gauging cycle 1
(Feedrate for the second contact detection in a
double-contact gauging cycle; feedrate for the
contact detection in a single-contact gauging
cycle)
FunctionMin - Max. - Values
1 to 500
1 to 500
Subscript
Expression
2-2-3.System Variables 2
System variables 2 are used for transferring data between turret A and turret B. They cannot be
displayed on the screen.
They are used in common for the two turrets.
Variable
Name
VMDT [1] Compensation dataMaster ring gauging
VMDT [2] Target valueWork gauging
VMDT [3] Gauging (measured value)Work gauging
VMDT [4] JudgmentWork gauging
VMDT [5] Compensation dataWork gauging
Tool life management specification flag
VMDT [6]
VMDT [7] Diameter gauging, upper diameter gauging value
VMDT [8] Diameter gauging, lower diameter gauging value
VMDT [9] Diameter gauging, diameter gauging value
VMDT [10] Not used
VMDT [11] Not used
VMDT [12] Not used
The system variables for data transfer, indicated above, may be used in programs other than
gauging subprograms.
They can be used in the same manner as parameter setting common variables.
(=1: Specification supported, =0: Specification not
supported)
FunctionRemarks
Tool nose gauging,
Work gauging
2-2-4.System Variables 3
System variables 3 are used as counters for gauging cycles.
They are used for counting the specified events and also for setting the intervals between gauging
cycle executions.
They are used in common for turret A and turret B.
5327-E P-13
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Variable
Name
Function
Variable
Name
Function
VMCN [1] Master ring gauging cycle ON preset value SettingVMCN [17] Not used
VMCN [2] Master ring gauging cycle ON counter CounterVMCN [18] Not used
VMCN [3] Work gauging cycle ON preset value SettingVMCN [19] Not used
VMCN [4] Work gauging cycle ON counter CounterVMCN [20] Not used
VMCN [5] Read-out cycle ON preset value SettingVMCN [21] Not used
VMCN [6] Read-out cycle ON counter CounterVMCN [22] Not used
VMCN [7] Tool breakage detection cycle ON preset value SettingVMCN [23] Not used
VMCN [8] Tool breakage detection cycle ON counter CounterVMCN [24] Not used
VMCN [9] Not usedVMCN [25] Not used
VMCN [10] Not usedVMCN [26] Not used
VMCN [11] Not usedVMCN [27] Not used
VMCN [12] Not usedVMCN [28] Not used
VMCN [13] Not usedVMCN [29] Not used
VMCN [14] Not usedVMCN [30] Not used
VMCN [15] Not usedVMCN [31] Not used
VMCN [16] Not usedVMCN [32] Not used
Subprogram OCNCK is used for automatically incrementing a counter; when the counter data
reaches the preset value, it is cleared.
When the setting is “0”, the corresponding counter does not operate.
System variables VMCN[1] to VMCN[32] correspond to counters No. 1 to No. 32, respectively.
LE61129R0200700150001
System variables not assigned specific functions may be used and displayed in the same manner as
common variables.
Note that the range of numerical values that can be handled by these parameters is 0 to 9999
(positive integer).
2-2-5.System Variables 4
System variables 4 are used for display.
When a numerical value is set for the system variables indicated below, the set numerical value is
displayed at the specified field in the display screen.
They are independent for each of the turrets.
5327-E P-14
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Variable
Name
ID master ring gauging, Upper surface gauging
VIMDX [1]
VIMDX [2]
VIMDX [3]
VIMDX [4]
VIMDX [5]
VIMDX [6]
VIMDX [7]
VIMDX [8]
VIMDX [9] Not usedDisplay available
VIMDX [10] Not usedDisplay available
VIMDX [11] Spare
VIMDX [12] Spare
value
OD master ring gauging, X gauging value
ID master ring gauging, Lower surface gauging
value
Zero offset, Compensation data in the X-axis
direction (amount of variation)
Work gauging, Gauging (measured) value in the Xaxis direction
Touch setter gauging, Gauging (measured) value
in the X-axis direction
Tool offset, Compensation data in the X-axis
direction (amount of variation)
Diameter gauging, Upper diameter gauging
(measured) value in the X-axis direction
Diameter gauging, Lower diameter gauging
(measured) value in the X-axis direction
FunctionRemarks
Master ring gauging
Master ring gauging
Master ring gauging
Work gauging
Touch setter gauging
Work/touch setter
gauging
Work gauging
Work gauging
No display with standard
specification
No display with standard
specification
5327-E P-15
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Variable
Name
VIMDZ [1]
Master ring gauging, Gauging (measured) value in
the Z-axis direction
FunctionRemarks
Master ring gauging
VIMDZ [2] Not usedDisplay available
VIMDZ [3]
VIMDZ [4]
VIMDZ [5]
VIMDZ [6]
Zero offset, Gauging (measured) value in the -Z
direction
Work gauging, Gauging (measured) value in the Zaxis direction
Touch setter gauging, Gauging (measured) value
in the Z-axis direction
Tool offset, Compensation data in the Z-axis
direction (amount of variation)
Master ring gauging
Work gauging
Touch setter gauging
Work/touch setter
gauging
VIMDZ [7] Not usedDisplay available
VIMDZ [8] Not usedDisplay available
VIMDZ [9] Not usedDisplay available
VIMDZ [10] Not usedDisplay available
VIMDZ [11] Spare
VIMDZ[12] Spare
No display with standard
specification
No display with standard
specification
The data is displayed by selecting the IN-PROCESS GAUGING screen in the operation mode
(automatic, MDI, manual).
LE61129R0200700160001
The data set for VIMDX [*] and VIMDZ [*] (*: 1 to 10) is displayed on the screen shown above.
For VIMDX [*] and VIMDZ [*] (*: 11 and 12), data is not displayed with the standard specification.
The data input at the turret A side is displayed in the XA and ZA columns and the data input at the
turret B side is displayed in the XB and ZB columns.
Variables VIMDX [*] and VIMDZ [*] (*: 11, 12), which are not displayed on the screen, can be used
as variables.
2-2-6.Input/Output Variables
These variables are used to input and output signals to and from the MSB.
VDOUT is used for outputs and VDIN is used for inputs. The subscript determines the contents of
the inputs and outputs.
Output Variables
5327-E P-16
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Variable
Name
VDOUT [1] = 1:+NG indicating lamp is turned ON.
VDOUT [2] = 1:+OK indicating lamp is turned ON.
VDOUT [3] = 1:OK indicating lamp is turned ON.
VDOUT [4] = 1:-OK indication lamp is turned ON.
VDOUT [5] = 1:-NG indicating lamp is turned ON.
VDOUT [9] = 0:All judgment indicating lamps are turned OFF.
VDOUT [991] = ####: Outputs “ALARM C user reserve code ####”.
VDOUT [992] = ####: Outputs “ALARM B user reserve code ####”
VDOUT [993] = ####: Outputs “ALARM A user reserve code ####”.
Function
Special Input/Output Variables
The inputs and outputs of the input/output variables indicated below correspond to each other and
when the output variable is set ON (=1), the corresponding input is also set ON.
Variable
Name
VDOUT [31] = 1:The master ring gauging cycle ON lamp is turned on and “1” is set for VDIN [31].
VDOUT [32] = 1:The work gauging cycle ON lamp is turned on and “1” is set for VDIN [32].
VDOUT [33] = 1:The trial-cut gauging cycle ON lamp is turned on and “1” is set for VDIN [33].
VDOUT [34] = 1:The touch setter gauging cycle ON lamp is turned on and “1” is set for VDIN [34].
VDOUT [35]
VDIN [31]
VDIN [32] = 1:The work gauging cycle is turned ON. This is not checked within a subprogram.
VDIN [33]
VDIN [34]
VDIN [35]
= 1:The touch setter breakage detection cycle ON lamp is turned on and “1” is set
for VDIN [35].
= 1:The master ring gauging cycle is turned ON. This is checked within a
subprogram.
= 1:The trial-cut gauging cycle is turned ON. This is not checked within a
subprogram.
= 1:The touch setter gauging cycle is turned ON. This is checked within a
subprogram.
= 1:The touch setter breakage detection cycle is turned ON. This is checked within
a subprogram.
Function
2-3.Print
The print (PRNT) command can be used when the gauging data print function is selected.
When PRNT* (*: 1 to 14) is specified, the measured data is output to the printer.
The number to be specified with the PRNT command is fixed for each type of data to be output.
5327-E P-17
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Command
No.
PRNT 1Work gauging cycle; turret A, X-axis
PRNT 2Work gauging cycle; turret A, Z-axis
PRNT 3Work gauging cycle; turret B, X-axis
PRNT 4Work gauging cycle; turret B, Z-axis
PRNT 5Master ring gauging cycle; turret A, X-axis
PRNT 6Master ring gauging cycle; turret A, Z-axis
PRNT 7Master ring gauging cycle; turret B, X-axis
PRNT 8Master ring gauging cycle; turret B, Z-axis
PRNT 9Touch setter gauging cycle; X-axis; data of the designated turret
PRNT 10Touch setter gauging cycle; Z-axis; data of the designated turret
PRNT 11Work gauging cycle; X-axis; data of the designated turret
PRNT 12Work gauging cycle; Z-axis data of the designated turret
PRNT 13Master ring gauging cycle; X-axis; data of the designated turret
PRNT 14Master ring gauging cycle; Z-axis; data of the designated turret
2-3-1.Print Out Data
Set the measured data at the corresponding common variables (VS01 to VS06).
Items indicated by “{” are printed.
Function
Output
Variable
VS01
VS02Target value{{{
VS03 Measured value{{{
VS04Offset data before compensation{{ ×
VS05Offset data after compensation{{ ×
VS06
Tool offset number whose tool offset data is
corrected
Result of judgment: 0 for ±OK, ±1 for OK, ±2 for ±NG
Function
Master
Ring
Gauging
×{{
×{{
Work
Gauging
Touch
Setter
Gauging
2-3-2.Print Format
Output format is indicated below.
Master ring gauging cycle
5327-E P-18
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
(1)
* * * MASTER RING GAUGING * * *
A.MIN A-TURRET X-AXIS
COMMAND
ACTUAL LAST-DATA NEW-DATAJUDGE
50.000 50.050 1568.000 1568.050 +OK
1997.8.28 THURSDAY 16:18:20
(2)(3)(4)(5)
(1) Name of file in which gauging cycle has been called
(2) Data set at VS02 (0 for turret B)
(3) Data set at VS03 (0 for turret B)
(4) Data set at VS04
(5) Data set at VS05
A-TURRET X-AXIS for PRNT5 (PRNT13 for turret A)
A-TURRET Z-AXIS for PRNT6 (PRNT14 for turret A)
B-TURRET X-AXIS for PRNT7 (PRNT13 for turret B)
B-TURRET Z-AXIS for PRNT8 (PRNT14 for turret B)
LE61129R0200700200001
In the printout of the data for turret B, the data for COMMAND and ACTUAL are both “0”.
This is because the actual gauging cycle is carried out by turret A and the data for turret B tools is
corrected using these data.
For the measured value in the X-axis direction in the ID master ring gauging cycle, the target value
with the amount of variation added is output to facilitate checking of the amount of variation.
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Work gauging cycle
PRNT1 (PRNT11 on turret A)A-TURRET X-AXIS
PRNT2 (PRNT12 on turret A)A-TURRET Z-AXIS
PRNT3 (PRNT11 on turret B)B-TURRET X-AXIS
PRNT4 (PRNT12 on turret B)B-TURRET Z-AXIS
* * * WORK GAUGING * * *
B.MIN A-TURRET X-AXIS
TOFF.NO. COMMAND ACTUAL LAST-DATA NEW-DATA JUDGE
7 50.000 50.050 10.000 9.950 +OK
1997.8.28 THURSDAY 16:18:20
5327-E P-19
(1)(2)(3)(4)(5)
(1) Data set at VS01
(2) Data set at VS02
(3) Data set at VS03
(4) Data set at VS04
(5) Data set at VS05
(6) Data set at VS06
Set any of 0, ±1 and ±2 for VS06, the variable for judgment.
The output is as indicated below according to this setting.
SettingOutput Result
0OK
+1+OK
+2+NG
-1-OK
-2-NG
(6)
LE61129R0200700200002
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Touch setter gauging cycle
Turret A
•
PRNT9..........A-TURRET X-AXIS
PRNT10.........A-TURRET Z-AXIS
• Turret B
PRNT9...........B-TURRET X-AXIS
PRNT10.........B-TURRET Z-AXIS
* * * TOUCH SETTER GAUGING * * *
B.MIN A-TURRET X-AXIS
TOFF.NO. COMMAND ACTUAL JUDGE
8 50.000 50.050 +OK
5327-E P-20
1997.3.24 THURSDAY 17:25:31
(1)(2)(3)(4)
(1) Data set at VS01
(2) Data set at VS02
(3) Data set at VS03
(4) Data set at VS06
(The judgment result is displayed in the same manner as in the work gauging cycle.)
LE61129R0200700200003
2-4.Program
2-4-1.Table of Subprograms
The subprograms and their functions are briefly described below.
5327-E P-21
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Subprogram No.
(1)ORGIA
(2)ORGOA
(3)ORNGB
(25)OZTM
(4)OWMXA
(5)OWMZA
(6)OWXBA
(7)OWZBA
(8)OWXBB
(9)OWZBB
(10)OWXZ
(12)OTNSL
(14)OMSSF
Subprogram
Name
Function
Master ring gauging ID: To be called from turret A
If called while the chuck is closed, an alarm occurs.
Master ring gauging OD: To be called from turret A
Used for correcting the zero offset data of the X- and Z-axis for turret A.
Master ring gauging - processing at turret B: To be called from turret B
Used for correcting the zero offset data of the X- and Z-axis for turret B
based on the data for turret A.
Judgment cycle for master ring gauging cycle
To be called within a gauging subprogram
The result of measurement is classified into five levels: OK, ±OK and
±NG.
Work gauging - Turret A in the X-axis direction: To be called from turret A
Measures the dimension of a workpiece machined by a tool on turret A in
the X-axis direction and corrects the X offset data.
Work gauging - Turret A in the Z-axis direction: To be called from turret A
Measures the dimension of a workpiece machined by a tool on turret A in
the Z-axis direction and corrects the Z offset data.
Work gauging - Turret B in the X-axis direction: To be called from turret A
Measures the dimension of a workpiece machined by a tool on turret B in
the X-axis direction
For turret B, OWXBB must be called.
Work gauging - Turret B in the Z-axis direction: To be called from turret A
Measures the dimension of a workpiece machined by a tool on turret B in
the Z-axis direction
For turret B, OWZBB must be called.
Work gauging - Turret B in the X-axis direction: To be called from turret B
To be called from turret B when OWXBA is called at turret A.
Based on the data measured at turret A, the X direction tool offset data is
corrected for tools on turret B.
Work gauging - Turret B in the Z-axis direction: To be called from turret B
To be called from turret B when OWZBA is called at turret A.
Based on the data measured at turret A, the Z direction tool offset data is
corrected for tools on turret B.
Work gauging - processing of measured data: To be called within the
gauging cycle subprogram
Measured data is processed according to the result of judgment.
Checks ATG and AOG commands, and selects the tool number and tool
offset number.
To be called within a subprogram. Determines whether the tool life
management function is used or not. An alarm occurs if an ATG or AOG
command is not correct.
Cancels the gauging cycle START conditions: To be called from both
turrets A and B
Turns off all gauging cycle START conditions.
5327-E P-22
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Subprogram No.
(15)OTRCK
(16)OTST
(13)OCNCK
(17)OTLLS
(18)OTFRD
(19)OTMXZ
(20)OSKPX
(21)OSKPZExecutes the same processing as OSKPX in the direction of Z-axis.
(22)OSPCX
(23)OSPCZExecutes the same processing as OSPCX in the Z-axis direction.
(24)OT1MEExecutes a 0.1 sec dwell.
(11)OWTM
(26)ODOAA
(27)ODIAA
Subprogram
Name
Function
Checks conditions for starting the trial-cut gauging cycle: To be called
from both turrets A and B
Turns ON the conditions for starting the trial-cut gauging cycle when
automatic tool indexing is conducted by the tool life management
function.
Checks conditions for starting the touch setter gauging cycle: To be called
in the block before the tool gauging cycle block.
Turns ON the conditions for starting the touch setter gauging cycle when
they are turned on by the counter or when automatic tool indexing has
been executed by the tool life management function.
Counter for checking the gauging cycle START conditions: To be called
from either turret A or turret B.
Compares the value set at the gauging cycle counter with the counter
data and turns on the gauging cycle START conditions if the counter data
has reached the preset value.
Touch setter gauging - tool breakage detection cycle: To be called from
the turret on which the tool to be measured is set.
Checks chipping or breakage of the tool both in the X- and Z-axis
directions.
Touch setter gauging - tool offset data read-out cycle: To be called from
the turret on which the tool to be measured is set.
Checks the wear amount of the tool both in the X- and Z-axis direction and
corrects the tool offset data.
Touch setter gauging cycle - processing cycle: To be called from OTFRD
or OTLLS.
Executes a gauging cycle by calling OWTM and processes the obtained
data.
Executes an actual gauging cycle in the X-axis direction with the gauging
cycle start command (G30). This subprogram also determines whether
the cycle programmed is the “single-contact” cycle or the “double-contact”
cycle. This determination is based on whether argument APPS
(argument that specifies the second approach point in the double-contact
gauging cycle) is specified or not. This subprogram is called from a
gauging cycle subprogram.
Converts the coordinate value of the X-axis direction sensor “touch” point,
which is read in terms of the machine coordinate system, into the
coordinate value in the program coordinate system.
Work gauging/Touch setter gauging - Measuring and judgment cycle: To
be called from a gauging subprogram
The result of actual measurement is classified into five levels: OK, ±OK
and ±NG.
Diameter gauging - OD by turret A: To be called from turret A
Measures the dimension (OD in the X-axis direction) of the workpiece
machined by a tool on turret A and corrects the X-axis tool offset data.
Diameter gauging - ID by turret A: To be called from turret A
Measures the dimension (ID in the X-axis direction) of the workpiece
machined by a tool on turret A and corrects the X-axis tool offset data.
5327-E P-23
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Subprogram No.
(28)ODOBA
(29)ODIBA
(30)ODMBB
(31)ODWTM
(32)OTGNMObtains the maximum value of the tool group No.
(33)OSNCA
(34)OSNMZ
(35)OSNMX
Subprogram
Name
Function
Diameter gauging - OD by turret B: To be called from turret B
Measures the dimension (OD in the X-axis direction) of the workpiece
machined by a tool on turret B.
For turret B, ODMBB must be called.
Diameter gauging - ID by turret B: To be called from turret B
Measures the dimension (ID in the X-axis direction) of the workpiece
machined by a tool on turret B.
For turret B, ODMBB must be called.
Diameter gauging - Turret B: To be called from turret B
Based on the data measured at turret A, the tool offset data on turret B is
corrected.
Measuring and judgment cycle for diameter gauging: To be called from a
gauging subprogram
The result of actual measurement is classified into five levels: OK, ±OK
and ±NG.
Touch setter gauging for correcting the sensor position.
This subprogram measures and compensates the sensor position.
Touch setter gauging called by OSNCA.
This subprogram measures and corrects the sensor position in the Z-axis
direction.
Touch setter gauging called by OSNCA.
This subprogram measures and corrects the sensor position in the X-axis
direction.
Terminating the gauging cycle after synchronization with turret B
NA10
RTS
Retracting the sensor to the start point
M154: air blow OFF
LE61129R0200700220003
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Master ring OD gauging cycle
This subprogram is called from turret A.
ORGOA
5327-E P-27
VRSTT=0
YES
M100
VDIN[31]=0
Waiting for synchronization
with turret B
NO
YES
NO
Storing the
start position
XSTP=VSIOX
ZSTP=VSIOZ
G00 X=XP1 Z=ZP1 T=TLN*100+TOF M155
X=XP2 Z=ZP2
Z=ZP3
VS29=VRNGX
VS19=1
OSKPX
VIMDX[1]=VS31
Moving the sensor to P2
Setting the gauging target value (X-coordinate of ring upper face)
Determining the sensor input number
Calling the X-direction gauging subprogram
Measured value
Sequence restart OFF?
Gauging cycle is not ON
3B
Setting the
printing data
VS32=VS31-VRNGX
VS27=0
OZTM
VIMDX[2]=0
VIMDX[3]=VS32
VS02=VRNGX
VS03=VS31
VS04=VZOFX
VS06=VS30
2A
CRT display (variation)
Target value
Measured value
Previous zero offset
LE61129R0200700220004
2A
5327-E P-28
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
CRT display
VZOFX=VZOFX+VIMDX[3]
VS05=VZOFX
PRNT 13
Print command
VMDT[1]=-VIMDX[3]
M100
G00 Z=ZP2
Waiting for synchronization with turret B
Moving the sensor to P2
X=XP3
VS29=VRNGZ
OSKPZ
VMIRZ=0
Setting the target value (Z-coordinate of master ring)
Calling the Z-direction gauging subprogram
YES
NO
VS31=-VS31
NB2
VIMDZ[1]=VS31
VS32=VS31-VRNGZ
VS27=1
Zero offset in X direction
New zero offset
Setting the variation at the system variable common to
turrets A and B (to transfer the variation to turret B)
Do machine coordinate and program coordinate
system have the same Z-axis direction?
Measured value
Variation
Setting the printing
data
VZOFZ=VZOFZ+VIMDZ[3]
VS05=VZOFZ
OZTM
VIMDZ[3]=VS32
VS02=VRNGZ
VS03=VS31
VS04=VZOFZ
VS06=VS30
3A
Target value
Measured value
Previous zero offset
LE61129R0200700220005
3A
5327-E P-29
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
PRNT 14
VMDT[1]=VIMDZ[3]
M100
G00 X=XP2
X=XP1 Z=ZP1
X=XSTP Z=ZSTP M154
M100
Print command
Setting the variation at the system variable common to
turrets A and B (to transfer the variation to turret B)
Waiting for synchronization with turret B
Moving the sensor to P2
Retracting the sensor to P1
Retracting the sensor to the start point
M154: air blow OFF
Terminating the gauging cycle after
synchronization with turret B
Waiting for completion of Z-direction gauging on turret A
Setting the previous zero offset X (for printing)
Zero offset in X-direction on turret B
Setting the new zero offset X (for printing)
Setting the variation in X-direction displayed on CRT at the system
variable common to turrets A and B (gauging result obtained on turret A)
Print command
Waiting for completion of Z - direction gauging on turret A
Setting the previous zero offset Z (for printing)
Zero offset in Z-direction on turret B
Setting the new zero offset Z (for printing)
Setting the variation in Z-direction displayed on CRT at the system
variable common to turrets A and B (gauging result obtained on turret A)
Print command
Terminating the gauging cycle after synchronization with turret A
NC1
LE61129R0200700220007
2-5-2.Work Gauging
Work gauging cycle (Turret A, in the X/Z-axis direction)
This subprogram is called from turret A.
Setting the flag for judging
the gauging direction
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
OWMXAOWMZA
VS27=0VS27=1
Gauging in
X direction
ND1
M155
Air blow ON
5327-E P-30
Gauging in Z direction
NO
VRSTT=0
Sequence restart OFF?
YES
VDOUT[9]=0
VS25=0
VS29=MSP
VS19=1
OTNSL
Judgment indicator lamp OFF
Flag for NG double-touch gauging
Setting the gauging target point
Determining the sensor input number
Determining whether the tool life management function
is used or not, checking ATG and AOG commands, and
selecting the tool number and the tool offset number
VS17=0
OWTM
Executing the gauging cycle and judging the
measured data
Starting the gauging cycle in synchronization with turret B
Waiting for the tool offset number to be selected on turret B
Judgment indicator lamp OFF
Flag for NG double-touch gauging
Setting the gauging target point
VS17=0
VS19=1
OWTM
Determining the sensor input number
Executing the gauging cycle and judging the measured data
Target point Setting the left values at the system
Measured value variables common to turrets A and B
Judgment (to transfer the values to turret B)
Compensation data
Using the absolute value of the result for the subsequent
processing executed after synchronization
VS18=2
NE2
M100
YES ±NG
NO
Ignoring NG YES
Starting the gauging data
processing on turret B
VMDT[6]=0
VDIN[21]=1
NE3
M100
Waiting for the data processing on turret B
Gauging in Z direction
Tool life management function OFF?
YES
NO
NG ignore button ON?
NO
M100
M154
RTS
Waiting for synchronization when the result is ±NG
NE4
Air blow OFF
M100 code (waiting for synchronization) is issued to turret B only twice
when the result is NG through it is issued three times when the result is OK.
This is to prevent the turret A from finishing the gauging subprogram and
executing the next sequence before the alarm occurs on turret B. If NG is
ignored (no alarm occurs), however, M100 is issued three times as in the
case where the result is OK or ±OK.
LE61129R0200700230002
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
j
Work gauging cycle (Turret B, in the X/Z-axis direction)
This subprogram is called from turret A in combination with OWXBA or OWZBA.
5327-E P-32
OWZBB
Gauging in Z direction
Setting the flag for
udging the gauging
direction
NO
OWXBB
VS27=0VS27=1
Gauging in
X direction
NF1
VRSTT=0
Sequence restart OFF?
YES
M100
OTNSL
Determining whether the tool life management function is
used or not, checking ATG and AOG commands, and
selecting the tool number and the tool offset number
M100
M100
VS27=0
X direction
VIMDX[4]=VMDT[3]
VS04=VTOFX[VS01]
OWXZ
Starting the gauging cycle by turret A
Waiting for completion of the turret A gauging cycle
NO
YES
Z direction
NF2
VIMD4[4]=VMDT[3]
VS04=VTOFZ[VS01]
OWXZ
Calling the gauging data
CRT display
Setting the measured value
(gauging result on turret A)
through the system variable
common to turrets A and B
Previous tool offset (for printing)
processing subprogram
VIMDX[6]=-VMDT[5]VIMDZ[6]=-VMDT[5]
CRT display
Setting the variation in tool offset
(gauging result on turret A)
PRNT 11
NF3
M100
Waiting for synchronization with turret A
PRNT 12
through the system variable
common to turrets A and B
M100
RTS
Waiting for synchronization when the result is NG
NF4
LE61129R0200700230003
5327-E P-33
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Work gauging cycle (Measured data processing, screen output, printer output)
VS02 to VS06: variables used for output to the printer
Target value
Measured value
Result of judgment
Using the absolute value of the result to determine the processing
to be executed
NO (OK processing, ±NG processing)
Printing the new offset data (previous data if the result is ±NG or OK)
Setting the variation at the system variable common to turrets A and B
(variation is 0 if the result is ±NG or OK)
YES(±NG)
NO
No action is
taken when the
result is OK
VMDT[6]=0
NG1
VS06>=0
NO (Tool life management)
VDIN[21]=1
YES
NO(-NG)
YES(+NG)
M154M154
VDOUT[992]=1001+VS27*2
Alarm No.1001 for X-direction gauging (VS27=0)
Alarm No.1003 for Z-direction gauging (VS27=1)
VDOUT[992]=1000+VS27*2
Alarm No.1000 for X-direction gauging (VS27=0)
Alarm No.1002 for Z-direction gauging (VS27=1)
YES (NG ignored)
NO
Setting the NG flag at
the tool life management
table without causing
any alarm
VTLNG[VS23]=1
VDIN[1255]AND32≠32
NG5YES
VS27=0
NONO
NG6YESNG4YES
VTOFX[VS01]=VTOFX[VS01]
-VMDT[5]
VS05=VTOFX[VS01]
VTOFZ[VS01]=VTOFZ[VS01]
-VMDT[5]
VS05=VTOFZ[VS01]
NG7
Tool life management function OFF?
VMDT[6]=0
NO
TRCT
TRCT specified?
YES
TRCT=1
Addition of compensation data ignored?
NO
VTLCA[VS23]=VTLCA[VS23]
+ABS[VMDT[5]]
NG9
RTS
NO
Adding the compensation data
to the accumulated wear in the
tool life management table C
VS27=0
VTWOX[VS01]=VTWOX[VS01]
-VMDT[5]
VS05=VTWOX[VS01]
YES
NO
YES
VTWOZ[VS01]=VTWOZ[VS01]
-VMDT[5]
VS05=VTWOZ[VS01]
1
LE61129R0200700230004
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Work gauging data judgment cycle
5327-E P-34
NG double-touch
gauging?
YES
1
Judgment
indicator lamp
ON
OWTM
NH1
VS25=1
VS27=0
NO
NH2
YES
OSKPX
Calling the X-direction
gauging and judging
subprogram
OSKPZ
Calling the Z-direction
gauging and judging
subprogram
Is the turret-B program for touch setter IA gauging unused?
VS17=0
YES
NO
VS27=1
Gauging in X direction?
YES
NH3A
NO
VS32=VS29-VS31VS32=VS31-VS29
NH3B
VS11=ABS[VS32]
Using the absolute value of the variation for the subsequent
judgment
VIMDX[12]=VS11
VIMDZ[12]=DNG
±NG?
VIMDX[12]
>VIMDZ[12]
NO
VIMDZ[12]=DOK
YES
APPS
NO
YES
VIMDX[12]
>VIMDZ[12]
VS25=0
NH4
NO
VS32>0
+NG
YESYES
VDOUT[1]=1
VS30=2
NO
NH5
-NG
VDOUT[5]=1
VS30=-2
NH7
VS32>0
+OK
VDOUT[2]=1
VS30=1
NH9
RTS
The touch sensor gauging may be performed simultaneously on turret A
and turret B(though work gauging is performed only on turret A), and so
the target value, measured value, ,judgment, and compensation data are
set at the common variables prepared separately for turrets A and B. For
work gauging, these values are set at the variables common to turrets A
and B to transfer the data from turret A to turret B.
1
Regarding that the sensor
has touched the work twice
Variation = Measured value
- Target value
NH6
±OK?
NO
YES
+OK?
NO
NH8
-OK
VDOUT[4]=1
VS30=-1
OK
VDOUT[3]=1
VS30=0
LE61129R0200700230005
Tool offset number indexing
OTNSL
VS01=0
NO
ATG
YES
AOG
YES
N14
VMDT[6]=1
N12
VMDT[6]=0
NO
5327-E P-35
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
OTNSL: subprogram for checking ATG and AOG
command values and selecting tool offset number
VS01: variable used to output the tool offset number to
the printer
Tool offset number?
Is ATG (tool group number) specified?
NO
N13 YES
VS01=TOFN
TOFN
N17
OTGNM
Setting the maximum tool group number at VS07
Is ATG command value within allowable range?
0<ATG<VS07
NO
YES
VS23=VGRSL[ATG]
VS23=0
AOG=1
Are tools registered in the specified tool group?
AOG=2
AOG=3
NONONO
YESYESYES
VS01=VTLOA[VS23]VS01=VTLOB[VS23]VS01=VTLOC[VS23]
VS01=0
Tool offset number unregistered?
YES
N18
NO
VDOUT[992]=1008
N19
RTS
M154
M126
When both ATG and AOG are specified, data is processed assuming the tool life
management specification. If one of the commands is omitted, the tool offset number
is obtained from TOFN assuming that the tool life specification is not supported.
VDMT[6]..Tool life management function flag
=0: Tool life management specification is not supported.
=1: Tool life management specification is supported.
LE61129R0200700230006
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Gauging cycle START condition check counters
OCNCK
5327-E P-36
Is "0" set at the gauging counter No.
1 (master ring gauging start)?
VMCN[2]=VMCN[2]+1
Is the counter value smaller than
the preset value?
Master ring gauging cycle start condition
is met.
VMCN[4]=VMCN[4]+1
Is the counter value smaller than
the preset value?
Work gauging cycle start condition
is met.
VMCN[6]=VMCN[6]+1
VRSTT=0
YES
VMCN[1]=0
NO
VMCN[2]<VMCN[1]
NO
VMCN[2]=0
VDOUT[31]=1
N1
VMCN[3]=0
NO
VMCN[4]<VMCN[3]
NO
VMCN[4]=0
VDOUT[32]=1
N2
VMCN[5]=0
NO
NO
YES
YES
YES
YES
YES
1
Checking the master ring
gauging cycle start condition
Checking the work gauging
cycle start condition
Is the counter value smaller than
the preset value?
Offset data readout cycle start
condition is met.
Is the counter value smaller than
the preset value?
Tool breakage detection cycle start
condition is met.
VMCN[6]<VMCN[5]
NO
VMCN[6]=0
VDOUT[34]=1
N3
VMCN[7]=0
NO
VMCN[8]=VMCN[8]+1
VMCN[8]<VMCN[7]
NO
VMCN[8]=0
VDOUT[35]=1
N4
RTS
YES
YES
YES
Checking the offset data
readout cycle start condition
in touch setter gauging
Checking the tool breakage
detection cycle start
condition in touch setter
gauging
1
LE61129R0200700230007
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Gauging cycle START condition cancel
OMSSF
Sequence restart OFF?
VRSTT=0
YES
M100
NO
Synchronization with the OMSSF called from turret B
5327-E P-37
VDOUT[31]=0
VDOUT[32]=0
VDOUT[33]=0
VDOUT[34]=0
VDOUT[35]=0
Master ring gauging cycle start condition cancel
Work gauging cycle start condition cancel
Trial cut part gauging cycle start condition cancel
Offset data readout cycle start condition cancel in touch setter gauging
Tool breakage detection cycle start condition cancel in touch setter gauging
NK1
RTS
[Supplement]
Synchronization (M100) is necessary to avoid the following
case: if either of the turrets fails meet to the gauging condition,
the other turret does not perform required gauging.
Automatic tool indexing check for trial-cut gauging cycle
OTRCK
Trial cut part
gauging ON
VDOUT[33]=1
NL2
NO
NO
VRSTT=0
YES
RTG=1
OTGNM
NL1
VGRID[RTG]=0
YES
RTG>=VS07
NL3
Local variable
Setting the maximum tool
group number at VS07
Is a tool in the tool group
automatically indexed?
Repeating the index check
in all the tool groups
RTG=RTG+1
LE61129R0200700230008
M100
Synchronization with the
index check on turret B
NL4
RTS
Even when a tool is indexed on turret B, the actual gauging
is perform on turret A. Synchronization is thus necessary
for the gauging processing. (Do not start the gauging cycle
independently on turret A or turret B).
LE61129R0200700230009
2-5-3.Touch Setter Gauging
Gauging cycle START condition check
This subprogram should be called before calling the touch setter gauging cycle.
5327-E P-38
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
OTST
NO
YES
YES
NM2
YES
VS20=1
Gauging cycle start
conditions are met.
VRSTT=0
When activating the tool life management
YES
VS20=0
VDIN[35]=1
specification is supported, VS20 is used
as a tool tip gauging start condition.
NO
Is the tool breakage
detection cycle ON?
NO
VDIN[34]=1
NO
RTG=1
OTGNM
Is the offset data
readout cycle ON?
RTG is a local variable.
Setting the maximum tool
group number at VS07
NM1
VGRID[RTG]=1
NO
RTG>=VS07
YES
NM3
Is a tool in the tool group
automatically indexed?
Repeating the index check
in all the tool groups
NO
RTG=RTG+1
RTS
The touch setter gauging is performed by turret A or turret
B independently. The turret A does not need to wait the
gauging start conditions to be checked on turret B.
LE61129R0200700240001
Tool breakage detection cycle
OTLLSOTLLAOTLLBOTLLM
NN1
VS17=0
VS16=0
NN3
NO
NO
4D2A
NN22NN8
VRSTT=0
YES
OTNSL
VDIN[35]=1
YES
VS28=1
VS17=1VS17=0
NN2
VS16=1
Checking A TG and AOG commands
Tool breakage detection cycle ON?
Tool breakage detection cycle
LE61129R0200700240002
Tool offset data read-out cycle
5327-E P-39
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
OTFRD
NN4
VS17=0
VS16=0
NN6
NO
VRSTT=0
OTNSL
VDIN[34]=1
YES
YES
VMDT[6]=0
VGRID[ATG]=0
NO
NN7
VS28=0
4D2A
YES
NO
NO
OTFRA
OTFRB
VS17=1
NN5
VS16=1
Checking A TG and AOG commands
Offset data readout cycle ON?
Tool life management specification not
supported?
Automatic tool index not executed?
Readout cycle
OTFRM
VS17=0
YES
Even if readout cycle is
not ON, execution of the
automatic tool index
starts the gauging cycle.
At this time, however,
the gauging ON lamp
does not light.
NN22NN8
LE61129R0200700240003
2A
5327-E P-40
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
YES
Moving
the tool
nose to
P1
VS26=0
XSTP=VSIOX
ZSTP=VSIOX
Clearing the NG flag
Storing the actual position
(start point)
Clears the data
displayed on
the screen if
gauging cycle is
not executed.
Clears the data
displayed on
the screen if
gauging cycle is
not executed.
4B4A4C
NN20NN21
4B4A4C4D
PRNT 9
G00 Z=ZP2
VS26=0
Returning the tool nose to P2
Is result other than ±NG?
YES
NO
NN20
M126
VDOUT[992]=2000+VETLN+VS28*100
NN21
G00 X=XP1 Z=ZP1
X=XSTP Z=ZSTP
Retracting the tool nose to P1
Retracting the tool nose to the stored
start point
NN22
RTS
LE61129R0200700240005
LE61129R0200700240006
Cycle judgment subprogram
OTMXZ
5327-E P-42
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
VDOUT[9]=0
VS19=2
VS25=1
Mirror-image specification supported?
VDIN[1236]
AND 2=2
YES
VS16=0
NO
VS19=3
NO1
X-direction gauging?
VS27=0
YES
NO3
VS29=VSNX[MSPX]
-VZOFX-VZSHX
VS19=3
YES
VS29=-VS29
NO4
OWTM
Calling the gauging and data processing subprogram
Judgment indicator lamp OFF
Sensor number (always "2" for touch setter gauging)
NG double-touch flag (must be "1" because touch setter does not
perform double-touch when the gauging result is NG)
NO
YES
NO
Setting the
target valve
YES
VS29=VSNZ[MSPZ]
-VZOFZ-VZSHZ
VMIRZ=0
NO2
NO
VS29=-[VSNZ[MSPZ]
-VZOFZ-VZSHZ]
NO
VS02=VS29
VS03=VS31
VS06=VS30
VS18=ABS[VS06]
±OK?
VS18=1VS28=0
Target value
Measured value
Judgment
Absolute value of judgment data
YESYESYES
NO
1A4A2A3A
Tool breakage detection
NO
VSIN[1255]
AND 32≠32
NO
Processing
VS27=0
X-axis data
NO
Processing
YES
Z-axis data
NO9NO12
LE61129R0200700240007
5327-E P-43
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Processing
Z-axis data
VIMDZ[5]=VS03
VIMDZ[6]=0
NO14
NO
VS18=2
YES
VMDT[6]=0
NO
VORD[OT21]=1
YES
VTLNG[VETLN]=1
NG flag
ON
NO16
NO12NO9
1A
NO
VS27=0
YES
Processing
X-axis data
VIMDX[5]=VS03
VIMDX[6]=0
Is the result NG?
Tool life management
specification not supported?
YES
NO
NO15
VS26=1
2A3A
VS17=1
VTOFX[VS01]=
VS32-VTOFX[VS01]
NO11
VIMDX[5]=VS03
VIMDX[6]=VS32
4A
YES
YES
NO
NO
VS27=0
NO5
VS17=1
NO6
VTWOX[VS01]=
VS32-VTWOX[VS01]
NO7
VIMDX[5]=VS03
VIMDX[6]=VS32
NO
YES
VTOFX[VS01]=
VS32+VTOFX[VS01]
CRT display
Measured value
Variation
VTWOX[VS01]=
VS32+VTWOX[VS01]
VTOFZ[VS01]=
VS32+VTOFZ[VS01]
VIMDZ[5]=VS03
VIMDZ[6]=VS32
VTWOZ[VS01]=
VS32+VTWOZ[VS01]
VIMDZ[5]=VS03
VIMDZ[6]=VS32
RTS
LE61129R0200700240008
Gauging cycle - X-axis
OSKPX
5327-E P-44
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
VS15=VSIOX
Storing the actual value for double-touch gauging
Is APPS specified (for double-touch gauging)?
APPS
YESNO1
VS29≤VS15
NO
Comparing the target value
with the actual value
YES
NO
G00 X=VS29-APP
G00 X=VS29+APP
NO3
G30 X=VS29 D=APP L=IMP F=VSKFA
OSPCX
Converting the measured value into a value
in the program coordinate system
OTIME
Dwelling for 0.1 sec
X=VS31 D=APPS L=IMP F=VSKFB
OSPCX
Converting the measured value into a value
in the program coordinate system
NO4
G00 X=VS15
Returning to the sensor to the gauging cycle start point
RTS
G30 X=VS29 D=APP L=IMP F=VSKFB
OSPCX
NO2
Gauging by first touch
Gauging by second touch by regarding
the first touch point as the target value
LE61129R0200700240009
Gauging cycle - Z-axis
OSKPZ
5327-E P-45
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
VS15=VSIOZ
Storing the actual value for double-touch gauging
Is APPS specified (for double-touch gauging)?
APPS
YESNR1
VS29≤VS15
NO
Comparing the target value
with the actual value
YES
NO
G00 Z=VS29-APP
G00 Z=VS29+APP
NR3
G30 Z=VS29 D=APP L=IMP F=VSKFA
OSPCZ
Converting the measured value into a value
in the program coordinate system
OTIME
Dwelling for 0.1 sec
Z=VS31 D=APPS L=IMP F=VSKFB
OSPCZ
Converting the measured value into a value
in the program coordinate system
NR4
Returning to the sensor to the gauging cycle start point
G00 Z=VS15
RTS
G30 Z=VS29 D=APP L=IMP F=VSKFB
OSPCZ
NR2
Gauging by first touch
Gauging by second touch by
regarding the first touch point
as the target value
LE61129R0200700240010
Converting gauged data into the coordinate value in the program coordinate system
- X-axis
OSPCX
VS31=VSKPX[VS19]-VZOFX-VZSHX-VETFX
VS19=3
NO
Value in the program
coordinate system
YES
VS31=-VS31
NP1
RTS
= Measured value in the
(machine coordinate system)
- Zero offset value - Zero
shift value - Tool offset value
LE61129R0200700240011
5327-E P-46
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Converting gauged data into the coordinate value in the program coordinate system
- Z-axis
OSPCZ
0.1 sec dwell
NTIM1
NO
VMIRZ=0
YES
VS31=VSKPZ[VS19]-VZOFZ
-VZSHZ-VETFZ
NP3
RTS
OTIME
TIM1=VDIN[1000]
TIM2=VDIN[1000]
TIM3=TIM2-TIM1
Registering the 1-ms counter value at TIM1
Registering the 1-ms counter value
at TIM2
Calculating the elapsed time
Is TIM3 value positive?
TIM3>0
NTIM2
YES
Has 0.1 second elapsed?
TIM3>100
NO
NP2
VS31=-[VSKPZ[VS19]-VZOFZ
-VZSHZ-VETFZ]
NO
TIM1=TIM2
If TIM3 value is negative, the
1-ms counter is reset to "0".
LE61129R0200700240012
RTS
YES
LE61129R0200700240013
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Work gauging data judgment cycle
OZTM
VDOUT[9]=0
5327-E P-47
VS11=ABS[VS32]
VIMDX[12]=VS11
Is DNG command specified?
DNG
NS1
YES
VIMDZ[12]=DNG
VIMDX[12]>
VIMDZ[12]
YES
VS32>0
YES
Judgment
indicator
lamp ON
VDOUT[1]=1
VS30=2
VS32=0
Using the absolute value of the variation amount for the subsequent judgment
NO
Is DNG command specified?
NO
NO
+NG
NS2
VDOUT[5]=1
VS30=-2
VS32=0
-NG+OK-OKOK
VDOUT[2]=1
VS30=1
NS3NS4
DOK
NS5
YES
VS32>0
NS6
VDOUT[4]=1
VS30=-1
NO
NO
YES
YES
VIMDZ[12]=DOK
VIMDX[12]>
VIMDZ[12]
NS7
VDOUT[3]=1
VS30=0
VS32=0
NO
M154M154
VDOUT[992]
=1301+VS27*2
NS8
RTS
VDOUT[922]
=1300+VS27*2
LE61129R0200700240014
2-5-4.Diameter Gauging
Diameter gauging (OD/ID, turret A)
These subprograms are called from turret A.
5327-E P-48
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
OD gauging
Sequence restart OFF?
XSTP=VSIOX
ZSTP=VSIOZ
TSON=VETON
VDOUT[9]=0
ODOAA
VS24=0
NS1
M155
VRSTT=0
VS27=0
VS25=0
VS19=1
OTNSL
ODWTM
Air blow ON
YES
X-direction
gauging
ODIAA
VS24=0
ID gauging
NO
2B
NS4
Storing the
start position
Storing the currently used tool offset number
Judgment lamp OFF
Flag for NG double-touch gauging
Determining the sensor input number
Determining whether the tool life management
function is used or not, checking ATG and AOG
commands, and selecting the tool number and
the tool offset number
Calling the diameter gauging and data judging
subprogram
Target point
Measured value
Judgment
Compensation data
Measured value at upper gauging point
Measured value at lower gauging point
Measured diameter
Measured diameter (displayed on CRT)
Measured value at upper gauging point (displayed on CRT)
Measured value at lower gauging point (displayed on CRT)
NO
YESNS2
VS04=VTOFX[VS01]VS04=VTWOX[VS01]
NS3
2A
LE61129R0200700250001
2B2A
5327-E P-49
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
OWXZ
Calling the measured data processing
subprogram
VIMDX[6]=-VMDT[5]
PRNT 11
Variation amount in tool offset data (displayed on CRT)
Print command
G00 X=XSTP Z=ZSTP T=TSON
NS4
M154
Air blow OFF
RTS
Returning the sensor to gauging start point
LE61129R0200700250002
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Diameter gauging (OD/ID, turret B)
These subprograms are called from turret A.
5327-E P-50
OD gauging
Sequence restart OFF?
XSTP=VSIOX
ZSTP=VSIOZ
TSON=VETON
VDOUT[9]=0
ODOBA
VS24=0
NT1
M155
VRSTT=0
YES
VS27=0
M100
M100
VS25=0
VS19=1
ODIAA
VS24=1
ID gauging
Air blow ON
NO
X-direction
gauging
2B
NT4
Storing the
start position
Storing the currently used tool offset number
Starting the gauging cycle in synchronization with turret B
Waiting for tool offset number to be selected on turret B
Judgment lamp OFF
Flag for NG double-touch gauging
Determining the sensor input number
Calling the diameter gauging and data judging
subprogram
Target point
Measured value
Judgment
Compensation data
Measured value at upper gauging point
Measured value at lower gauging point
Measured diameter
Using the absolute value of the judgment data for the
subsequent processing executed after synchronization
LE61129R0200700250003
2B2A
VS18=2
NT2
M100
NT3
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Is the result ±NG?
YES
NO
YES
±NG
VMDT[6]=0
NO
VDIN[21]=1
NO
5327-E P-51
Tool life management specification
not supported?
YES
NG ignore button ON?
M100
M100
Waiting for data processing on turret B
Waiting for synchronization when the result is ±NG
G00 X=XSTP Z=ZSTP T=TSON
NT4
M154
RTS
Air blow OFF
M100 code (waiting for synchronization) is issued to
turret B only twice when the result is NG though it is
issued three times when the result is OK. This is to
prevent the turret A from finishing the gauging
subprogram and executing the next sequence before
the alarm occurs on turret B.
If NG is ignored (no alarm occurs), however, M100 is
issued three times as in the case where the result is
OK or ±OK.
Returning to the sensor to the gauging start
position
LE61129R0200700250004
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Diameter gauging (OD/ID, turret B)
These subprograms are called from turret B.
ODMBB
NO
VRSTT=0
VS27=0
Sequence restart OFF?
YES
X-direction gauging
5327-E P-52
M100
OTNSL
Waiting for synchronized gauging with turret A
Determining whether the tool life management function
is used or not, checking ATG and AOG commands, and
selecting the tool number and the tool offset number
M100
M100
Starting the gauging cycle on turret A
Waiting for completion of gauging cycle on turret A
Print command
Waiting for synchronization with turret A
Waiting for synchronization when the result is NG
NV1
RTS
Measured diameter (displayed on CRT)
Measured value at upper gauging point (displayed on CRT)
Measured value at lower gauging point (displayed on CRT)
Previous tool offset (for printing)
Variation in tool offset (displayed on CRT)
LE61129R0200700250005
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Diameter gauging (Data judgment)
ODWTM
OD gauging?
VS24=0
YES
G00 X=XP1 Z=ZP1 T=TOF2
1A
NU3
G00 Z=ZP2
NO
G00 X=-[VTOFX[TOF1]
-VTOFX[TOF2]]/2
Z=ZP1
T=TOF1
NU1
VDIN[1255]
AND 32
≠32
NU2 YES
5327-E P-53
NO
G00 X=-[[VTOFX[TOF1]
+VTWOX[TOF1]]
-[VTOFX[TOF2]
-VTWOX[TOF2]]]/2
Z=ZP1 T=TOF1
VS29=MSP
OSKPX
VS22=VS31
OD gauging?
VS24=0
YES
G00 Z=ZP1
X=-XP1 T=TOF1
Z=ZP2
NU6
VS29=-MSP
OSKPX
2A
Setting the target value (of the upper gauging point)
Calling the X-direction gauging and processing
subprogram
String the value measured at the upper gauging point
NONU4
VDIN[1255]
AND 32
≠32
NO
NU5 YES
G00 X=[VTOFX[TOF1]
-VTOFX[TOF2]]/2
T=TOF2
G00 X=-[[VTOFX[TOF1]
+VTWOX[TOF1]]
-[VTOFX[TOF2]
-VTWOX[TOF2]]]/2
T=TOF2
Setting the target value (of the lower gauging point)
Calling the X-direction gauging and processing
subprogram
LE61129R0200700250006
2A
5327-E P-54
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
VS21=[VS22-VS31]/2
VS24=0
G00 Z=ZP1
X=XP1 T=TOF2
NU9
VS32=VS21+VS29
VS11=ABS[VS32]
VIMDX[12]=VS11
VIMDZ[12]=DNG
VIMDX[12]>
VIMDZ[12]
APPS
YES
VS25=1
1A
VS25=0
NU10
VS32>0VS32>0
NU3
VDOUT[1]=1
VS30=2
OD gauging?
YES
±NG?
YES
YES
NO
NG double-
touch
gauging?
NO
NONO
+NG
Measured diameter = [upper gauging point - lower gauging point]/2
NO
G00 Z=ZP1
VDIN[1255]
AND32≠32
NU8
G00 X=[VTOFX[TOF1]
-VTOFX[TOF2]]/2
T=TOF1
G00 X=-[[VTOFX[TOF1]
+VTWOX[TOF1]]
-[VTOFX[TOF2]
-VTWOX[TOF2]]]/2
T=TOF1
Variation amount = Measured value - Target value
Using the absolute value of the variation amount for the
subsequent judgment
NO
NU12
Is the judgment ±OK or OK?
VIMDZ[12]=DOK
±OK?
VIMDX[12]>
VIMDZ[12]
NO
YES
YESYES
VDOUT[5]=1
VS30=-2
-NG
VDOUT[2]=1
VS30=1
+OK-OKOK
VDOUT[4]=1
VS30=-1
VDOUT[3]=1
VS30=0
NU15
RTS
LE61129R0200700250007
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Calculating the maximum tool group number
OTGNM
VDIN[1255]
AND 16=16
NO
NV1
VDIN[1255]
AND 4=4
NO
NV2
VDIN[1255]
AND 2=2
NO
NV3
VS07=32
NV4
RTS
YES
YES
YES
Tool life management
specification of 96 tool groups
Tool life management
specification of 64 tool groups
VS07=64VS07=96
5327-E P-55
Tool life management
of 200 tool groups
VS07=200
LE61129R0200700250008
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Sensor position compensation
5327-E P-56
OSNCA
VS17=0
VS19=2
VS16=0
NW2
VRSTT=0
OTNSL
VS26=0
XSTP=VSIOX
ZSTP=VSIOZ
VMDT[6]=0
YES
VDIN[1241]
AND 7=0
NW3
TLN1=TLN
TLN1=TLN1/100
TLN1=FIX[TLN1]
TLN=TLN-TLN1*100
VS17=1
G00 X=XP1 Z=ZP1
T=TLN
NW6
VS01=VETON
NW11
X=XP2 Z=ZP2
OSNCBOSNCM
VS17=1
VS19=2
NW1
VS16=0
NO
YES
Determining whether the tool life management function
is used or not, checking ATG and AOG commands,
and selecting the tool number and the tool offset number
Resetting the NG flag
Storing the actual position
NO
YES
ATC unprovided?
NO
NW4
YES
NW5
NO
G00 X=XP1 Z=ZP1
TM=TLN
Offset number output to the printer
Moving the tool nose to P2
NW9
VS17=1
YES
NO
G00 X=XP1 Z=ZP1
TG=ATG OG=AOG
VS17=0
VS19=3
Set "3" as the sensor
number for turret B with
mirror-image function
Sequence restart
2B
NW17
NW7
NO
NW8
G00 X=XP1 Z=ZP1 OG=AOG
VDIN[1241]
AND 7=0
YES
NW10
G00 X=XP1 Z=ZP1
TM=VS23*100+VS01
2A
LE61129R0200700250009
2A
5327-E P-57
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
VIMDZ[5]=0
VIMDZ[6]=0
1
YES
NW12 NO
NW13
NW14
G00 Z=ZP2
NW15
MSPZ=0
X=XP3
OSNMZ
G00 X=XP2
VS26=0
YES
MSPX=0
NO
Z=ZP3
OSNMX
VS26=0
NO
M126
Z-axis offset
NO
YES
YES
VIMDX[5]=0
VIMDX[6]=0
NG processing
VIMDX[5]=0
VIMDX[6]=0
1
VDOUT[992]=2310
NW16
G00 X=XP1 Z=ZP1
X=XSTP Z=ZSTP
NW17
RTS
2B
LE61129R0200700250010
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Sensor position compensation (Z-axis direction)
This subprogram is called from OSNCA.
OSNMZ
Is the same coordinate
system used?
VMIRZ=0
YES
VS29=VSNZ[MSPZ]-VZOFZ-VZSHZ
NY2
OSKPZ
VS32=VS31-VS29
NO
DNG
YES
NY5
VIMDX[12]=ABS[VS32]
VIMDZ[12]=DNG
NO
VS29=-[VSNZ[MSPZ]-VZOFZ-VZSHZ]
5327-E P-58
NY1
Setting the
target value
VIMDX[12]>
VIMDZ[12]
NY6
NO
YES
VS29=VS32
NO
VMIRZ=0
YES
NO
VS29=-VS29
NY7
VSNZ[MSPZ]=VS29+VSNZ[MSPZ]
NY8
VIMDZ[5]=VS31
VIMDZ[6]=VS32
Setting the measured value and the
offset value for display
RTS
VS26=1
LE61129R0200700250011
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Sensor position compensation (X-axis direction)
This subprogram is called from OSNCA.
OSNMX
VS29=VSNX[MSPX]-VZOFX-VZSHX
5327-E P-59
VS19=3
NO
YES
VS29=-VS29
NX1
OSKPX
VS32=VS31-VS29
NO
NX2
DNG
YES
VIMDX[12]=ABS[VS32]
VIMDZ[12]=DNG
VIMDX[12]>
YES
VIMDZ[12]
NO
NX3
VSNX[MSPX]=VS32+VSNX[MSPX]
NX4
VIMDX[5]=VS31
VIMDX[6]=VS32
VS26=1
RTS
LE61129R0200700250012
2-6.Program List
ORGIA (Master ring gauging (ID), called from turret A)
Determines whether the tool life management function is used or not.
Selects tool number and tool offset number from group number.
To be called within a subprogram.
NOEX VS02=VMDT[2] VS03=VMDT[3] VS06=VMDT[4] VS18=ABS[VS06]
IF[VS18 EQ 1]NG3
NOEX VS05=VS04 VMDT[5]=0
IF[VS18 NE 2]NG9
IF[VMDT[6] EQ 0]NG1
IF[VDIN[21] NE 1]NG1
NOEX VTLNG[VS23]=1
GOTO NG9
NG1 IF[VS06 LT 0]NG2
M154
NOEX VDOUT[992]=1001+VS27*2
GOTO NG9
NG2 M154
NOEX VDOUT[992]=1000+VS27*2
GOTO NG9
NG3 IF[[VDIN[1255]AND 32]NE 32]NG5
IF[VS27 EQ 0]NG4
IF [[VDIN[1255] AND 16] NE 16]NV1
NOEX VS07=200
GOTO NV4
NV1 IF [[VDIN[1255] AND 12] NE 12]NV2
NOEX VS07=96
GOTO NV4
NV2 IF [[VDIN[1255] AND 10] NE 10]NV3
NOEX VS07=64
GOTO NV4
NV3 NOEX VS07=32
NV4 RTS
NOEX VS29=VSNX[MSPX]-VZOFX-VZSHX
IF [VS19 NE 3]NX1
NOEX VS29=-VS29
NX1 CALL OSKPX
NOEX VS32=VS31-VS29
IF DNG NX2
GOTO NX3
NX2 NOEX VIMDX[12]=ABS[VS32] VIMDZ[12]=DNG
IF [VIMDX[12] LE VIMDZ[12]]NX3
NOEX VS26=1
GOTO NX4
NX3 NOEX VSNX[MSPX]=VS32+VSNX[MSPX]
NX4 NOEX VIMDX[5]=VS31 VIMDX[6]=VS32
RTS
5327-E P-74
5327-E P-75
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
3.Touch Sensor Gauging (Automatic Zero Offset Function)
3-1.General Description of MSB
This section covers the list, flow chart and variable table relating to the automatic zero offset taking
the following maker subprogram (MSB) as an example.
LMSC300A.MSB
MSBs largely differ from other control software in their contents.
Other control software is used to control signals from the machine and also input/output of part
programs and/or user’s commands.
In contrast, MSBs have the same format as part programs, and they may be considered to be
control software which executes gauging cycles instead of an operator.
3-2.Variable Tables
The variables used in MSB are explained in this section.
(1) Common variables (different from common variables V1 to V200 used for parameter setting)
(2) System variables 1 (used for reading and correcting various types of data)
(3) System variables 2 (used for transmitting data between turret A and turret B)
(4) Input/output variables (used for input/output)
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
3-2-1.Common Variables (VS01 to VS32)
Differing from common variables (V1 to V200) used for parameter setting, common variables VS01
to VS32 are not displayed on the screen.
5327-E P-76
Variable
Name
VS01Sensor input numberVS17Not used
For storing the Z-coordinate
VS02
VS03
VS04Not usedVS20Not used
VS05Not usedVS21Not used
VS06Not usedVS22Not used
VS07Not usedVS23Not used
VS08Not usedVS24Not used
VS09Not usedVS25Not used
VS10Not usedVS26Not used
VS11Not usedVS27Not used
VS12Not usedVS28Not used
VS13Not usedVS29Not used
VS14Not usedVS30Not used
VS15Not usedVS31Not used
VS16Not usedVS32Not used
value of the gauging cycle
starting point
Measured value (program
coordinate value, used for
calculating compensation
values)
FunctionRemark
Variable
Name
VS18Not used
VS19Not used
FunctionRemark
(1) Common variables V1 to V200 used for setting parameters are used in common for turrets A
and B. On the other hand, the common variables VS01 to VS32 indicated above are turret
dependent.
That is, turrets A and B have an independent VS01, for example, and the VS01 for turret A must
be specified and called out from turret A, while the VS01 for turret B must be specified and
called out from turret B.
5327-E P-77
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
(2) Note that these common variables (VS01 to VS32) will be used in other MSBs in addition to the
gauging cycle discussed here. Therefore, if these common variables are used as variables
transferred between subprograms, numerical values might be changed during the transfer.
When these common variables are used, their processing must end within the same
subprogram.
G13
N1 NOEX VS01=100
Variables used in common in G13 side program
N2 NOEX VS02=10 VS03=20
N3 CALL OSUB1
Within a subprogram, they can be used as desired.
N4
N5
N6
N7 CALL OSUB2
N8
Do not use common variables for transferring
numerical values from OSUB1 to OSUB2.
N9
N10
G14
N1
N2 NOEX VS01=100 VS02=50
Variables used in common in G14 side program
N3 CALL OSUB1
N4
* Not used for transferring numerical values
N5
N6 NOEX VS01=100 VS03=60
N7 CALL OSUB3
N8
N9
When calling more than one subprogram from a subprogram,
pay attention to the transfer of variables between subprograms.
M02
LE61129R0200700290001
3-2-2.System Variables 1
System variables 1 are used in a touch sensor gauging subprogram.
They are used for reading and writing numerical values stored in the CNC memory and those
displayed and set as parameters, zero offset data, tool offset data, etc.
5327-E P-78
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Variable
Name
VSIOZActual position of Z-axis-99999.9999 to 99999.9999
VSKPZSensor contact position of Z-axis-99999.9999 to 99999.99991 to 2
VZOFZZero offset of Z-axis-99999.9999 to 99999.9999
VSHZZero shift of Z-axis-99999.9999 to 99999.9999
VETFZPresently used tool offset data (Z-axis)-99999.9999 to 99999.9999
Setting for OPTIONAL PARAMETER
VSKFA
VSKFB
(GAUGING) Feedrate in gauging cycle 2
(Feedrate for the first contact detection in
double-contact gauging cycle)
Setting for OPTIONAL PARAMETER
(GAUGING) Feedrate in gauging cycle 1
(Feedrate for the second contact detection in a
double-contact gauging cycle; feedrate for the
contact detection in a single-contact gauging
cycle)
[Supplement]
Concerning VSKFA and VSKFB, the setting unit in the optional parameters is fixed at “mm/min”.
However, the value appropriate for the selected unit system is set for these system variables.
FunctionMin. - Max. Values
1 to 500
1 to 500
Subscript
Expression
3-2-3.System Variables 2
System variables 2 are used in common for turret A and turret B.
They are used for transferring data between turret A and turret B.
They cannot be displayed on the screen.
Variable
Name
VMDT [1]
VMDT [2] Not used
VMDT [3] Not used
VMDT [4] Not used
VMDT [5] Not used
VMDT [6] Not used
VMDT [7] Not used
VMDT [8] Not used
VMDT [9] Not used
VMDT [10] Not used
VMDT [11] Not used
VMDT [12] Not used
Compensation data (used for the two-saddle specification: for transferring the
compensation data calculated at the turret A side to the turret B side)
Function
3-3.Program
3-3-1.Flow Chart
5327-E P-79
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
OZOFA
Storing the actual value
(gauging start point)
Checking the positional relation
between the target value and the
actual value
Moving the sensor to a point
close to the target value with a
distance of APP between them.
First gauging
Converting the
measured value
into a value in the
program coordinate
VS03=VSKPZ[VS01]-VZOFZ
-VZSHZ-VETFZ
system
Executing the second
gauging by regarding the
first touch point as the
target value
VRSTT=0
YES
VS01=1
APPS
YES
NA2
NO
Setting "1" as the position for entering
the touch sensor gauging skip data
NO
VS02=VSIOZ
MSP≤VS02
YES
NA3
NO
G00 Z=MSP-APPG00 Z=MSP+APP
NA4
G30 Z=MSP D=APP
L=IMP F=VSKFA
Z=VS03 D=APPS
L=IMP F=VSKFB
NA11
2B
G30 Z=MSP D=APP
L=IMP F=VSKFB
VS03=VSKPZ[VS01]-VZOFZ
-VZSHZ-VETFZ
Converting the
measured value
into a value in the
program coordinate
system
Converting the
measured value
into a value in the
program coordinate
system
VS03=VSKPZ[VS01]
-VZOFZ-VZSHZ-VETFZ
G00 Z=VS02
NA5
2A
Returning the sensor to the gauging start point
LE61129R0200700320001
2A
5327-E P-80
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
VS03=VS03-MSP
VS11=ABS[VS03]
VIMDX[12]=VS11
DNG command specified?
NA6
VIMDZ[12]=DNG
YES
NA7
VDOUT[992]
=3003
VS03=0VS03=0
VZOFZ=VZOFZ+VS03
DNG
YES
VIMDX[12]
<VIMDZ[12]
NO
+NG?
VS03>0
NO
VDOUT[992]
=3002
NA10
VMDT[1]=VS03
M100
NA11
RTS
Calculating the difference from the current zero position
Obtaining the absolute value of the difference
NO
NG?
YES
NO
NA9
DOK
YES
NA8
DOK command
specified?
VIMDZ[12]=DOK
Setting
the alarm
number
VIMDX[12]
<VIMDZ[12]
OK?
NO
YES
Adding the compensation data to the previous
zero offset amount
Transferring the offset amount to turret B (by setting the offset
amount at the system variable common to turrets A and B)
2B
VS03=0
LE61129R0200700320002
Waiting for the gauging and processing
to be completed on turret A
Correcting the zero position in Z
direction on turret B
OZOFB
VRSTT=0
NO
YES
M100
VZOFZ=VZOFZ+VMDT[1]
NB1
RTS
LE61129R0200700320003
3-3-2.Program List
OZOFA (Automatic zero offset (processing at turret A), called from turret A)
OZOFB (Automatic zero offset (processing at turret B), called from turret B)
IF[VRSTT NE 0 ]NB1
M100
NOEX VZOFZ =VZOFZ+VMDT[1]
NB1 RTS
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
4.Automatic C-axis Zero Offset Function
4-1.General Description of MSB
This section covers the list, flow chart, variable table and other information relating to the automatic
C-axis zero offset function, taking the following maker subprogram (MSB) as an example.
LMSD300A.MSB
The name of the gauging control software is expressed as indicated below.
LMS*????.MSB
*:Indicates the content of the gauging software.
????:Indicates the gauging software version.
MSBs largely differ from other control software in their contents.
Other control software is used to control signals from the machine and also input/output of part
programs and/or user’s commands.
In contrast, MSBs have the same format as part programs, and they may be considered to be
control software that executes gauging cycles instead of an operator.
5327-E P-82
4-2.Variable Tables
The variables used in MSBs are explained in this section.
(1) Common variables (different from common variables V1 to V200 used for parameter setting)
(2) System variables 1 (used for reading and correcting various types of data)
(3) System variables 2 (used for screen display)
(4) System variables 3 (used for transmitting data between turret A and turret B)
(5) Input/output variables (used for input/output)
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
4-2-1.Common Variables (VS01 to VS32)
Differing from common variables (V1 to V200) used for parameter setting, common variables VS01
to VS32 are not displayed on the screen.
5327-E P-83
Variable
No.
VS01VS17Not used
VS02Both sides / one side of keywayVS18Not used
VS03VS19Not used
VS04C-axis target valueVS20Not used
VS05Number of groove searchesVS21Not used
VS06VS22Not used
VS07C-axis actual positionVS23Not used
VS08Skip feedrate (1st time)VS24Not used
VS09Skip feedrate (2nd time)VS25Not used
VS10VS26Not used
VS11C-axis direction of rotationVS27Not used
VS12VS28Not used
Offset between the sensor
VS13
VS14
VS15Skip feedrateVS31Not used
VS16VS32Not used
center and the sensor head in
CCW rotation of the C-axis
Offset between the sensor
center and the sensor head in
CW rotation of the C-axis
FunctionRemark
Variable
No.
VS29Not used
VS30Not used
FunctionRemark
(1) Common variables V1 to V200 used for setting parameters are used in common for turrets A
and B. On the other hand, the common variables VS01 to VS32 indicated above are turret
dependent.
That is, turrets A and B have an independent VS01, for example, and the VS01 for turret A must
be specified and called out from turret A, while the VS01 for turret B must be specified and
called out from turret B.
5327-E P-84
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
(2) Note that these common variables (VS01 to VS32) will be used in other MSBs in addition to the
gauging cycle discussed here. Therefore, if these common variables are used as variables
transferred between subprograms, numerical values might be changed during the transfer.
When these common variables are used, their processing must end within the same
subprogram.
G13
N1 NOEX VS01=100
Variables used in common in G13 side program
N2 NOEX VS02=10 VS03=20
N3 CALL OSUB1
Within a subprogram, they can be used as desired.
N4
N5
N6
N7 CALL OSUB2
N8
Do not use common variables for transferring
numerical values from OSUB1 to OSUB2.
N9
N10
G14
N1
N2 NOEX VS01=100 VS02=50
Variables used in common in G14 side program
N3 CALL OSUB1
N4
* Not used for transferring numerical values
N5
N6 NOEX VS01=100 VS03=60
N7 CALL OSUB3
N8
N9
When calling more than one subprogram from a subprogram,
pay attention to the transfer of variables between subprograms.
M02
LE61129R0200700360001
4-2-2.System Variables 1
System variables 1 are used in this gauging subprogram.
They are used for reading and writing numerical values stored in the CNC memory and those
displayed and set as parameters, zero offset data, tool offset data, etc.
5327-E P-85
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Variable
Name
VSIOX
VSIOC
VSKPC
VZOFCZero offset of C-axis0 to 359.999
VZSHCZero shift of C-axis0 to 359.999
VSNWD
VSNTU
VCDIRDirection of rotation of C-axis15, 16
VRUND360000 (constant of 360)
VCPFIFlag which indicates the presence of a groove0, 128
VRSTT
VUNITUnit amount2, 4
VSKFA
VSKFB
Actual position of X-axis (program coordinate
system)
Actual position of C-axis (program coordinate
system)
C-axis skip position (machine coordinate
system)
Offset between sensor center and sensor head
in CW rotation of C-axis
Offset between sensor center and sensor head
in CCW rotation of C-axis
Flag which indicates that sequence restart is in
progress
Setting for OPTIONAL PARAMETER
(GAUGING) Feedrate in gauging cycle 2
(Feedrate for the first contact detection in the
double-contact gauging cycle)
Setting for OPTIONAL PARAMETER
(GAUGING) Feedrate in gauging cycle 1
(Feedrate for the second contact detection in
the double-contact gauging cycle; feedrate for
the contact detection in the single-contact
gauging cycle)
FunctionMin. - Max. Values
-9999.999 to 9999.999
0 to 359.999
0 to 359.9991 to 2
0 to 359.999
0 to 359.999
0, 128
1 to 500
1 to 500
Subscript
Expression
4-2-3.System Variables 2
System variables 2 are used for display.
When a numerical value is set for the system variables indicated below, the set numerical value is
displayed at the specified field in the display screen.
They are independent for each of the turrets.
5327-E P-86
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Variable
Name
VIMDX [9] Variable for displaying measured values
VIMDX [10] Variable for displaying compensation data
4-2-4.System Variables 3
System variables 3 are used for transferring data between turret A and turret B.
They are used in common for the two turrets.
Variable
Name
VMDT [10] Variable for data transfer between turret A and turret B
4-2-5.Input/Output Variables
Input/output variables are used for user reserve alarm code ouput from MSB.
Variable
Name
VDOUT [992] Alarm B user reserve code
VDOUT [993] Alarm A user reserve code
Function
Function
Function
4-3.Programs
4-3-1.Table of Subprograms
Subprogram No.
(1)OZOFDKeyway gauging (both sides)
(2)OZOFCKeyway gauging (one side)
(3)OZOFFKey gauging (both sides)
(4)OZOFEKey gauging (one side)
(5)OCPFIGroove index cycle in the Z-axis direction
(6)OCPFXGroove index cycle in the X-axis direction
(7)ORDOFConversion of angle data into a value between 0 and 359.999
(8)OFCALCalculation of C-axis feedrate F
(9)OZOFG
(10)OZOFH
Subprogram
Name
Compensation in a different coordinate system (Correcting the offset data
at the other turret in the same spindle mode)
Compensation in a different coordinate system (Correcting the offset data
in a different spindle mode)
Function
4-3-2.Flow Charts
Keyway gauging (both sides, one side)
5327-E P-87
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
C-axis disconnected?
VS11=VCDIR+113
VS15=VSKFB
NO
NA2
NO
NA5
OZOFDOZOFC
Keyway gauging cycle
(both sides)
VS02=0VS02=1
NA1
VRSTT=0
YES
VCACN=0
NO
YES
NO
Storing the previous C-axis
rotation command
OFCAL
Calculating the skip feedrate
VS08=VS15
APPS
YES
VS15=VSKFA
OFCAL
Calculating the first skip feedrate from the value set at the
OPTIONAL PARAMETER (GAUGING) No.2 Feedrate in gauging cycle 2
VS09=VS15
NA3
Key one-side gauging?
VS02=1
NA4
YES
VS11=128
M15?
YES
NO
M16
Keyway gauging cycle
(one side)
NO
VMLOK=0
Machine lock OFF?
YES
VDOUT[993]=102
NA20
4C
NA10
2D
Alarm A
(user reserve code)
VS07=VSIOC-CMW/2
ORDOF
APPS
Converting the target value to a value within the range from 0° to 360°
NO
YES
G30 C=VS07 CD=CMW/2
CL=CMW/2 F=VS09
VS07=VSKPC[1]-VZOFC-VZSHC
ORDOF
Converting the target value to a value within the range
from 0° to 360°
2A
NA8
2C
Calculating the sensor touch position
(in the program coordination system)
LE61129R0200700420001
2A
5327-E P-88
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
VS10=VS07
VS07=VSIOC-VS10
ORDOF
YES
VS07≥APPS
Calculating the distance between the actual valve and
the first touch position valve
Converting the distance into a valve within the range from 0° to 360°
NO
M15
VS07=VS10+APPS
ORDOF
Moving the sensor from the first touch position by a distance of
APPS in the opposite direction
G00 C=VS07
M16
NA7
G30 C=VS10 CD=APPS
CL=CMW/2 F=VS08
NA9
VS10=VSKPC[1]-VZOFC-VZSHC
VS13=ATAN[VSNTU/VS10X*2]
VS07=VS10-VS13
NA8
2C
G30 C=VS07 VD=CMW/2
CL=CMW/2 F=VS08
Calculating the sensor touch position
(in the program coordinate system)
Subtracting the sensor diameter from the measured value
2D
ORDOF
VS13=VS07
VS02=1
NA10
NO
M15
VS07=VSIOC+CMW/2
ORDOF
APPS
YES
3A
NA11
Keyway gauging cycle (one side)?
YES
Gauging on the other side
NO
NA16
4B
NA13
3C
LE61129R0200700420002
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
3A
G30 VS07 CD=CMW/2
CL=CMW/2 F=VS09
VS07=VSKPC[1]-VZOFC-VZSHC
ORDOF
VS10=VS07
VS07=VS10-VSIOC
ORDOF
5327-E P-89
VS07≥APPS
YES
NO
M16
VS07=VS10-APPS
ORDOF
G00 C=VS07
Target value for indexing
the keyway
M15
NA12
G30 C=VS10 CD=APPS
CL=CMW/2 F=VS08
NA14
VS10=VSKPC[1]-VZOFC-VZSHC
VS14=ATAN[VSNWD/VSIOX*2]
VS07=VS10-VS14
ORDOF
NA13
3C
G30 C=VS07 CD=CMW/2
CL=CMW/2 F=VS08
VS14=VS07
4A
LE61129R0200700420003
4A
Keyway gauging cycle (one side)?
VS02=1
NO
VS07=[VS14+VS13]/2
VS14≥VS13
NO
VS07=VS07+VRUND/2
NA141
ORDOF
NA15
VS14=VS07
NA17
VIMDX[9]=VS14
VS07=VS14-COF
5327-E P-90
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
YES
Calculating the middle position
between the gauging points on
both sides of the keyway
YES
NA16
4B
VS14=VS13
Setting the gauging data to be displayed
Calculating the compensation data
VIMDX[10]=VS07
VMDT[10]=VS07
VS07=VZOFC+VS07
VZOFC=VS07
Selecting the C-axis
rotating direction
specified before
gauging cycle
ORDOF
ORDOF
VS11=128
M16
NA20
RTS
Setting the compensation data to be displayed
Transferring the compensation data to the other coordinate system
Calculating the new C-axis offset data
Converting the offset data into a valve within the
range from 0° to 360°
Setting the C-axis zero offset
YES
NA18
NO
M15
4C
LE61129R0200700420004
SECTION 1 MAKER SUBPROGRAMS FOR GAUGING (MSB)
Key gauging (both sides, one side)
5327-E P-91
C-axis disconnected?
VS11=VCDIR+113
VS15=VSKFB
NO
NA2
VS15=VSKFA
NO
OZOFF
VS02=0
NA1
VRSTT=0
YES
VCACN=0
NO
OFCAL
VS08=VS15
APPS
YES
OFCAL
VS09=VS15
NA3
VS02=1
NA4
YES
VS11=128
NA5
NO
M16
Key gauging cycle
(both sides)
OZOFE
Key gauging cycle
(one side)
VS02=1
NO
YES
Machine lock OFF?
NO
Storing the previous
C-axis rotation command
VMLOK=0
YES
VDOUT[993]=102
Alarm A
(user reserve code)
NA20
Calculating the skip
feedrate
Calculating the first skip feedrate from the value set at the
OPTIONAL PARAMETER (GAUGING) No.2 Feedrate in gauging cycle 2
Key gauging cycle (one side)?
6B
M15?
YES
4A
VS07=CSIOC-VRUND/2
ORDOF
APPS
Subtracting 180
Calculating the target value into a valve whthin the range from 0
NO
YES
G30 C=VS07 CD=VRUND/2
CL=VRUND/360000*179000 F=VS09
VS07=VSKPC[1]-VZOFC-VZSHC
ORDOF
Calculating the target value into a valve whthin the range from 0
2A
° from the actual valve to determine the target value
° to 360°
NA8
2C
Calculating the sensor touch position
(in the program coordinate system)
° to 360°
LE61129R0200700420005
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.