0% found this document useful (0 votes)
1K views364 pages

Automatic Error

This document provides safety precautions for operating industrial robots. It defines roles like operators, programmers, and maintenance engineers. It emphasizes that only trained personnel should work inside safety fences during robot operation, programming, and maintenance. The document outlines general safety rules like using proper clothing and safety shoes, attending training, installing safety fences with interlocks, drawing work area boundaries, and checking for hazards before starting robots. It stresses the importance of periodic data backups and following installation and transport procedures.

Uploaded by

DANIEL
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views364 pages

Automatic Error

This document provides safety precautions for operating industrial robots. It defines roles like operators, programmers, and maintenance engineers. It emphasizes that only trained personnel should work inside safety fences during robot operation, programming, and maintenance. The document outlines general safety rules like using proper clothing and safety shoes, attending training, installing safety fences with interlocks, drawing work area boundaries, and checking for hazards before starting robots. It stresses the importance of periodic data backups and following installation and transport procedures.

Uploaded by

DANIEL
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 364

<>!

R-30+B CONTROLLER
Optional Function

OPERATOR'S MANUAL

B-83284EN-2/01
• Original Instructions

Before using the Robot, be sure to read the "FANUC Robot Safety Manual (B-80687EN)" and
understand the content.

• No part of this manual may be reproduced in any form.


• All specifications and designs are subject to change without notice.

The products in this manual are controlled based on Japan’s “Foreign Exchange and
Foreign Trade Law”. The export from Japan may be subject to an export license by the
government of Japan.
Further, re-export to another country may be subject to the license of the government of
the country from where the product is re-exported. Furthermore, the product may also be
controlled by re-export regulations of the United States government.
Should you wish to export or re-export these products, please contact FANUC for advice.

In this manual we have tried as much as possible to describe all the various matters.
However, we cannot describe all the matters which must not be done, or which cannot be
done, because there are so many possibilities.
Therefore, matters which are not especially described as possible in this manual should be
regarded as “impossible”.
B-83284EN-2/01 SAFETY PRECAUTIONS

SAFETY PRECAUTIONS
Thank you for purchasing FANUC Robot.
This chapter describes the precautions which must be observed to ensure the safe use of the robot.
Before attempting to use the robot, be sure to read this chapter thoroughly.

Before using the functions related to robot operation, read the relevant operator's manual to become
familiar with those functions.

If any description in this chapter differs from that in the other part of this manual, the description given in
this chapter shall take precedence.

For the safety of the operator and the system, follow all safety precautions when operating a robot and its
peripheral devices installed in a work cell.
In addition, refer to the “FANUC Robot SAFETY HANDBOOK (B-80687EN)”.

1 WORKING PERSON
The personnel can be classified as follows.

Operator:
• Turns robot controller power ON/OFF
• Starts robot program from operator’s panel

Programmer or teaching operator:


• Operates the robot
• Teaches robot inside the safety fence

Maintenance engineer:
• Operates the robot
• Teaches robot inside the safety fence
• Maintenance (adjustment, replacement)

- An operator cannot work inside the safety fence.


- A programmer, teaching operator, and maintenance engineer can work inside the safety fence. The
working activities inside the safety fence include lifting, setting, teaching, adjusting, maintenance,
etc..
- To work inside the fence, the person must be trained on proper robot operation.

During the operation, programming, and maintenance of your robotic system, the programmer, teaching
operator, and maintenance engineer should take additional care of their safety by using the following
safety precautions.

- Use adequate clothing or uniforms during system operation


- Wear safety shoes
- Use helmet

s-1
SAFETY PRECAUTIONS B-83284EN-2/01

2 DEFINITION OF WARNING, CAUTION AND


NOTE
To ensure the safety of user and prevent damage to the machine, this manual indicates each precaution on
safety with "Warning" or "Caution" according to its severity. Supplementary information is indicated by
"Note". Read the contents of each "Warning", "Caution" and "Note" before attempting to use the
oscillator.

WARNING
Applied when there is a danger of the user being injured or when there is a
danger of both the user being injured and the equipment being damaged if the
approved procedure is not observed.

CAUTION
Applied when there is a danger of the equipment being damaged, if the
approved procedure is not observed.

NOTE
Notes are used to indicate supplementary information other than Warnings and
Cautions.

• Read this manual carefully, and store it in a sales place.

3 WORKING PERSON SAFETY


Working person safety is the primary safety consideration. Because it is very dangerous to enter the
operating space of the robot during automatic operation, adequate safety precautions must be observed.
The following lists the general safety precautions. Careful consideration must be made to ensure
working person safety.

(1) Have the robot system working persons attend the training courses held by FANUC.

FANUC provides various training courses. Contact our sales office for details.

(2) Even when the robot is stationary, it is possible that the robot is still in a ready to move state, and is
waiting for a signal. In this state, the robot is regarded as still in motion. To ensure working
person safety, provide the system with an alarm to indicate visually or aurally that the robot is in
motion.
(3) Install a safety fence with a gate so that no working person can enter the work area without passing
through the gate. Install an interlocking device, a safety plug, and so forth in the safety gate so that
the robot is stopped as the safety gate is opened.

The controller is designed to receive this interlocking signal of the door switch. When the gate
is opened and this signal received, the controller stops the robot (Please refer to "STOP
TYPE OF ROBOT" in SAFETY PRECAUTIONS for detail of stop type). For connection, see
Fig.2 (a) and Fig.2 (b).

s-2
B-83284EN-2/01 SAFETY PRECAUTIONS

(4) Provide the peripheral devices with appropriate grounding (Class A, Class B, Class C, and Class D).
(5) Try to install the peripheral devices outside the work area.
(6) Draw an outline on the floor, clearly indicating the range of the robot motion, including the tools
such as a hand.
(7) Install a mat switch or photoelectric switch on the floor with an interlock to a visual or aural alarm
that stops the robot when a working person enters the work area.
(8) If necessary, install a safety lock so that no one except the working person in charge can turn on the
power of the robot.

The circuit breaker installed in the controller is designed to disable anyone from turning it on
when it is locked with a padlock.

(9) When adjusting each peripheral device independently, be sure to turn off the power of the robot
(10) Operators should be ungloved while manipulating the operator’s panel or teach pendant. Operation
with gloved fingers could cause an operation error.
(11) Programs, system variables, and other information can be saved on memory card or USB memories.
Be sure to save the data periodically in case the data is lost in an accident.
(12) The robot should be transported and installed by accurately following the procedures recommended
by FANUC. Wrong transportation or installation may cause the robot to fall, resulting in severe
injury to workers.
(13) In the first operation of the robot after installation, the operation should be restricted to low speeds.
Then, the speed should be gradually increased to check the operation of the robot.
(14) Before the robot is started, it should be checked that no one is in the area of the safety fence. At the
same time, a check must be made to ensure that there is no risk of hazardous situations. If detected,
such a situation should be eliminated before the operation.
(15) When the robot is used, the following precautions should be taken. Otherwise, the robot and
peripheral equipment can be adversely affected, or workers can be severely injured.
- Avoid using the robot in a flammable environment.
- Avoid using the robot in an explosive environment.
- Avoid using the robot in an environment full of radiation.
- Avoid using the robot under water or at high humidity.
- Avoid using the robot to carry a person or animal.
- Avoid using the robot as a stepladder. (Never climb up on or hang from the robot.)
(16) When connecting the peripheral devices related to stop(safety fence etc.) and each signal (external
emergency , fence etc.) of robot. be sure to confirm the stop movement and do not take the wrong
connection.
(17) When preparing trestle, please consider security for installation and maintenance work in high place
according to Fig.3 (c). Please consider footstep and safety bolt mounting position.

s-3
SAFETY PRECAUTIONS B-83284EN-2/01

RP1
Pulsecoder
RI/RO,XHBK,XROT
RM1
Motor power/brake

EARTH

Safety fence

Interlocking device and safety plug that are activated if the


gate is opened.

Fig. 3 (a) Safety fence and safety gate

Dual chain Emergency stop board


(Note)
(Note)
orPanel
Panelboard
board
EAS1 In case
In caseofofR-30iB
R-30iA
TerminalsEAS1,EAS11,EAS2,EAS21
Terminals EAS1,EAS11,EAS2,EAS21 areorprovided
FENCE1,FENCE2
on the
EAS11 are provided
emergency onboard.
stop the operation box or on the terminal block
of the printed circuit board.
EAS2
Refer
In casetoof R-30iA
the ELECTRICAL
Mate CONNCETIONS Chapter of
EAS21 CONNECTION of controller maintenanceare
Terminals EAS1,EAS11,EAS2,EAS21 manual for details.
provided
on the emergency stop board or connector panel.
(in case of Open air type)

Termianls FENCE1,FENCE2 are provided


on the emergency stop board.
Single chain
Panel board
Refer to controller maintenance manual for details.
FENCE1

FENCE2

Fig. 3 (b) Limit switch circuit diagram of the safety fence

s-4
B-83284EN-2/01 SAFETY PRECAUTIONS

Hook for safety belt

Fence

Steps

Trestle

Footstep
for maintenance

Fig.3 (c) Footstep for maintenance

3.1 OPERATOR SAFETY


The operator is a person who operates the robot system. In this sense, a worker who operates the teach
pendant is also an operator. However, this section does not apply to teach pendant operators.

(1) If you do not have to operate the robot, turn off the power of the robot controller or press the
EMERGENCY STOP button, and then proceed with necessary work.
(2) Operate the robot system at a location outside of the safety fence
(3) Install a safety fence with a safety gate to prevent any worker other than the operator from entering
the work area unexpectedly and to prevent the worker from entering a dangerous area.
(4) Install an EMERGENCY STOP button within the operator’s reach.

The robot controller is designed to be connected to an external EMERGENCY STOP button.


With this connection, the controller stops the robot operation (Please refer to "STOP TYPE
OF ROBOT" in SAFETY PRECAUTIONS for detail of stop type), when the external
EMERGENCY STOP button is pressed. See the diagram below for connection.

Dual chain
External stop button (Note)
Emergency stop board Connect EES1 and EES11, EES2 and EES21 or EMGIN1
Panel board
or Panel board and EMGIN2
EES1
(Note)
EES11
In case R-30iB
Connect EES1and EES11,EES2 and EES21or EMGIN1and EMGIN2.
EES1,EES11,EES2,EES21 are on the emergency stop board
EES2 In case of R-30iA
EES1,EES11,EES2,EES21 or EMGIN1,EMGIN2 are on the panel board.
EES21 Refer to the ELECTRICAL CONNCETIONS Chapter
In case
of of R-30iA Mate of controller maintenance manual
CONNECTION
EES1,EES11,EES2,EES21 are on the emergency stop board
for details
or connector panel (in case of Open air type).
Single chain EMGIN1,EMGIN2 are on the emergency stop board.
External stop button Refer to the maintenance manual of the controller for details.
Panel board
EMGIN1

EMGIN2

Fig.3.1 Connection diagram for external emergency stop button

s-5
SAFETY PRECAUTIONS B-83284EN-2/01

3.2 SAFETY OF THE PROGRAMMER


While teaching the robot, the operator must enter the work area of the robot. The operator must ensure
the safety of the teach pendant operator especially.

(1) Unless it is specifically necessary to enter the robot work area, carry out all tasks outside the area.
(2) Before teaching the robot, check that the robot and its peripheral devices are all in the normal
operating condition.
(3) If it is inevitable to enter the robot work area to teach the robot, check the locations, settings, and
other conditions of the safety devices (such as the EMERGENCY STOP button, the DEADMAN
switch on the teach pendant) before entering the area.
(4) The programmer must be extremely careful not to let anyone else enter the robot work area.
(5) Programming should be done outside the area of the safety fence as far as possible. If programming
needs to be done in the area of the safety fence, the programmer should take the following
precautions:
- Before entering the area of the safety fence, ensure that there is no risk of dangerous situations
in the area.
- Be prepared to press the emergency stop button whenever necessary.
- Robot motions should be made at low speeds.
- Before starting programming, check the entire system status to ensure that no remote instruction
to the peripheral equipment or motion would be dangerous to the user.

Our operator panel is provided with an emergency stop button and a key switch (mode switch) for selecting the
automatic operation mode (AUTO) and the teach modes (T1 and T2). Before entering the inside of the safety
fence for the purpose of teaching, set the switch to a teach mode, remove the key from the mode switch to prevent
other people from changing the operation mode carelessly, then open the safety gate. If the safety gate is opened
with the automatic operation mode set, the robot stops (Please refer to "STOP TYPE OF ROBOT" in SAFETY
PRECAUTIONS for detail of stop type). After the switch is set to a teach mode, the safety gate is disabled. The
programmer should understand that the safety gate is disabled and is responsible for keeping other people from
entering the inside of the safety fence.

Our teach pendant is provided with a DEADMAN switch as well as an emergency stop button. These button and
switch function as follows:
(1) Emergency stop button: Causes an emergency stop (Please refer to "STOP TYPE OF ROBOT" in SAFETY
PRECAUTIONS for detail of stop type) when pressed.
(2) DEADMAN switch: Functions differently depending on the teach pendant enable/disable switch setting
status.
(a) Disable: The DEADMAN switch is disabled.
(b) Enable: Servo power is turned off when the operator releases the DEADMAN switch or when the
operator presses the switch strongly.
Note) The DEADMAN switch is provided to stop the robot when the operator releases the teach pendant or
presses the pendant strongly in case of emergency. The R-30iB employs a 3-position DEADMAN
switch, which allows the robot to operate when the 3-position DEADMAN switch is pressed to its
intermediate point. When the operator releases the DEADMAN switch or presses the switch strongly,
the robot stops immediately.

The operator’s intention of starting teaching is determined by the controller through the dual operation of setting the
teach pendant enable/disable switch to the enable position and pressing the DEADMAN switch. The operator
should make sure that the robot could operate in such conditions and be responsible in carrying out tasks safely.

Based on the risk assessment by FANUC, number of operation of DEADMAN SW should not exceed about 10000
times per year.

s-6
B-83284EN-2/01 SAFETY PRECAUTIONS

The teach pendant, operator panel, and peripheral device interface send each robot start signal. However the
validity of each signal changes as follows depending on the mode switch and the DEADMAN switch of the operator
panel, the teach pendant enable switch and the remote condition on the software.

In case of R-30iB controller


Software
Teach pendant
Mode remote Teach pendant Operator panel Peripheral device
enable switch
condition
Local Not allowed Not allowed Not allowed
On
AUTO Remote Not allowed Not allowed Not allowed
mode Local Not allowed Allowed to start Not allowed
Off
Remote Not allowed Not allowed Allowed to start
Local Allowed to start Not allowed Not allowed
On
T1, T2 Remote Allowed to start Not allowed Not allowed
mode Local Not allowed Not allowed Not allowed
Off
Remote Not allowed Not allowed Not allowed
T1,T2 mode: DEADMAN switch is effective.

(6) To start the system using the operator’s panel, make certain that nobody is the robot work area and
that there are no abnormal conditions in the robot work area.
(7) When a program is completed, be sure to carry out a test operation according to the procedure
below.
(a) Run the program for at least one operation cycle in the single step mode at low speed.
(b) Run the program for at least one operation cycle in the continuous operation mode at low
speed.
(c) Run the program for one operation cycle in the continuous operation mode at the intermediate
speed and check that no abnormalities occur due to a delay in timing.
(d) Run the program for one operation cycle in the continuous operation mode at the normal
operating speed and check that the system operates automatically without trouble.
(e) After checking the completeness of the program through the test operation above, execute it in
the automatic operation mode.
(8) While operating the system in the automatic operation mode, the teach pendant operator should
leave the robot work area.

3.3 SAFETY OF THE MAINTENANCE ENGINEER


For the safety of maintenance engineer personnel, pay utmost attention to the following.

(1) During operation, never enter the robot work area.


(2) A hazardous situation may arise when the robot or the system, are kept with their power-on during
maintenance operations. Therefore, for any maintenance operation, the robot and the system should
be put into the power-off state. If necessary, a lock should be in place in order to prevent any other
person from turning on the robot and/or the system. In case maintenance needs to be executed in the
power-on state, the emergency stop button must be pressed.
(3) If it becomes necessary to enter the robot operation range while the power is on, press the
emergency stop button on the operator panel, or the teach pendant before entering the range. The
maintenance personnel must indicate that maintenance work is in progress and be careful not to
allow other people to operate the robot carelessly.
(4) When entering the area enclosed by the safety fence, the maintenance worker must check the entire
system in order to make sure no dangerous situations exist. In case the worker needs to enter the
safety area whilst a dangerous situation exists, extreme care must be taken, and entire system status
must be carefully monitored.

s-7
SAFETY PRECAUTIONS B-83284EN-2/01

(5) Before the maintenance of the pneumatic system is started, the supply pressure should be shut off
and the pressure in the piping should be reduced to zero.
(6) Before the start of teaching, check that the robot and its peripheral devices are all in the normal
operating condition.
(7) Do not operate the robot in the automatic mode while anybody is in the robot work area.
(8) When you maintain the robot alongside a wall or instrument, or when multiple workers are working
nearby, make certain that their escape path is not obstructed.
(9) When a tool is mounted on the robot, or when any moving device other than the robot is installed,
such as belt conveyor, pay careful attention to its motion.
(10) If necessary, have a worker who is familiar with the robot system stand beside the operator panel
and observe the work being performed. If any danger arises, the worker should be ready to press
the EMERGENCY STOP button at any time.
(11) When replacing a part, please contact FANUC service center. If a wrong procedure is followed, an
accident may occur, causing damage to the robot and injury to the worker.
(12) When replacing or reinstalling components, take care to prevent foreign material from entering the
system.
(13) When handling each unit or printed circuit board in the controller during inspection, turn off the
circuit breaker to protect against electric shock.
If there are two cabinets, turn off the both circuit breaker.
(14) A part should be replaced with a part recommended by FANUC. If other parts are used, malfunction
or damage would occur. Especially, a fuse that is not recommended by FANUC should not be used.
Such a fuse may cause a fire.
(15) When restarting the robot system after completing maintenance work, make sure in advance that
there is no person in the work area and that the robot and the peripheral devices are not abnormal.
(16) When a motor or brake is removed, the robot arm should be supported with a crane or other
equipment beforehand so that the arm would not fall during the removal.
(17) Whenever grease is spilled on the floor, it should be removed as quickly as possible to prevent
dangerous falls.
(18) The following parts are heated. If a maintenance worker needs to touch such a part in the heated
state, the worker should wear heat-resistant gloves or use other protective tools.
- Servo motor
- Inside the controller
- Reducer
- Gearbox
- Wrist unit
(19) Maintenance should be done under suitable light. Care must be taken that the light would not cause
any danger.
(20) When a motor, reducer, or other heavy load is handled, a crane or other equipment should be used to
protect maintenance workers from excessive load. Otherwise, the maintenance workers would be
severely injured.
(21) The robot should not be stepped on or climbed up during maintenance. If it is attempted, the robot
would be adversely affected. In addition, a misstep can cause injury to the worker.
(22) When performing maintenance work in high place, secure a footstep and wear safety belt.
(23) After the maintenance is completed, spilled oil or water and metal chips should be removed from the
floor around the robot and within the safety fence.
(24) When a part is replaced, all bolts and other related components should put back into their original
places. A careful check must be given to ensure that no components are missing or left not mounted.
(25) In case robot motion is required during maintenance, the following precautions should be taken :
- Foresee an escape route. And during the maintenance motion itself, monitor continuously the
whole system so that your escape route will not become blocked by the robot, or by peripheral
equipment.
- Always pay attention to potentially dangerous situations, and be prepared to press the emergency
stop button whenever necessary.

s-8
B-83284EN-2/01 SAFETY PRECAUTIONS

(26) The robot should be periodically inspected. (Refer to the robot mechanical manual and controller
maintenance manual.) A failure to do the periodical inspection can adversely affect the performance
or service life of the robot and may cause an accident
(27) After a part is replaced, a test operation should be given for the robot according to a predetermined
method. (See TESTING section of “Controller operator’s manual”.) During the test operation, the
maintenance staff should work outside the safety fence.

4 SAFETY OF THE TOOLS AND


PERIPHERAL DEVICES
4.1 PRECAUTIONS IN PROGRAMMING
(1) Use a limit switch or other sensor to detect a dangerous condition and, if necessary, design the
program to stop the robot when the sensor signal is received.
(2) Design the program to stop the robot when an abnormal condition occurs in any other robots or
peripheral devices, even though the robot itself is normal.
(3) For a system in which the robot and its peripheral devices are in synchronous motion, particular care
must be taken in programming so that they do not interfere with each other.
(4) Provide a suitable interface between the robot and its peripheral devices so that the robot can detect
the states of all devices in the system and can be stopped according to the states.

4.2 PRECAUTIONS FOR MECHANISM


(1) Keep the component cells of the robot system clean, and operate the robot in an environment free of
grease, water, and dust.
(2) Don’t use unconfirmed liquid for cutting fluid and cleaning fluid.
(3) Employ a limit switch or mechanical stopper to limit the robot motion so that the robot or cable does
not strike against its peripheral devices or tools.
(4) Observe the following precautions about the mechanical unit cables. When theses attentions are not
kept, unexpected troubles might occur.
• Use mechanical unit cable that have required user interface.
• Don’t add user cable or hose to inside of mechanical unit.
• Please do not obstruct the movement of the mechanical unit cable when cables are added to
outside of mechanical unit.
• In the case of the model that a cable is exposed, Please do not perform remodeling (Adding a
protective cover and fix an outside cable more) obstructing the behavior of the outcrop of the
cable.
• Please do not interfere with the other parts of mechanical unit when install equipments in the
robot.
(5) The frequent power-off stop for the robot during operation causes the trouble of the robot. Please
avoid the system construction that power-off stop would be operated routinely. (Refer to bad case
example.) Please execute power-off stop after reducing the speed of the robot and stopping it by
hold stop or cycle stop when it is not urgent. (Please refer to "STOP TYPE OF ROBOT" in
SAFETY PRECAUTIONS for detail of stop type.)
(Bad case example)
• Whenever poor product is generated, a line stops by emergency stop.
• When alteration was necessary, safety switch is operated by opening safety fence and
power-off stop is executed for the robot during operation.
• An operator pushes the emergency stop button frequently, and a line stops.

s-9
SAFETY PRECAUTIONS B-83284EN-2/01

• An area sensor or a mat switch connected to safety signal operate routinely and power-off stop
is executed for the robot.
(6) Robot stops urgently when collision detection alarm (SRVO-050) etc. occurs. The frequent urgent
stop by alarm causes the trouble of the robot, too. So remove the causes of the alarm.

5 SAFETY OF THE ROBOT MECHANISM


5.1 PRECAUTIONS IN OPERATION
(1) When operating the robot in the jog mode, set it at an appropriate speed so that the operator can
manage the robot in any eventuality.
(2) Before pressing the jog key, be sure you know in advance what motion the robot will perform in the
jog mode.

5.2 PRECAUTIONS IN PROGRAMMING


(1) When the work areas of robots overlap, make certain that the motions of the robots do not interfere
with each other.
(2) Be sure to specify the predetermined work origin in a motion program for the robot and program the
motion so that it starts from the origin and terminates at the origin.
Make it possible for the operator to easily distinguish at a glance that the robot motion has
terminated.

5.3 PRECAUTIONS FOR MECHANISMS


(1) Keep the work areas of the robot clean, and operate the robot in an environment free of grease, water,
and dust.

5.4 PROCEDURE TO MOVE ARM WITHOUT DRIVE POWER


IN EMERGENCY OR ABNORMAL SITUATIONS
For emergency or abnormal situations (e.g. persons trapped in or by the robot), brake release unit can be
used to move the robot axes without drive power.
Please refer to controller maintenance manual and mechanical unit operator’s manual for using method of
brake release unit and method of supporting robot.

6 SAFETY OF THE END EFFECTOR


6.1 PRECAUTIONS IN PROGRAMMING
(1) To control the pneumatic, hydraulic and electric actuators, carefully consider the necessary time
delay after issuing each control command up to actual motion and ensure safe control.
(2) Provide the end effector with a limit switch, and control the robot system by monitoring the state of
the end effector.

s-10
B-83284EN-2/01 SAFETY PRECAUTIONS

7 STOP TYPE OF ROBOT


The following three robot stop types exist:

Power-Off Stop (Category 0 following IEC 60204-1)


Servo power is turned off and the robot stops immediately. Servo power is turned off when the robot is
moving, and the motion path of the deceleration is uncontrolled.
The following processing is performed at Power-Off stop.
- An alarm is generated and servo power is turned off.
- The robot operation is stopped immediately. Execution of the program is paused.

Controlled stop (Category 1 following IEC 60204-1)


The robot is decelerated until it stops, and servo power is turned off.
The following processing is performed at Controlled stop.
- The alarm "SRVO-199 Controlled stop" occurs along with a decelerated stop. Execution of the
program is paused.
- An alarm is generated and servo power is turned off.

Hold (Category 2 following IEC 60204-1)


The robot is decelerated until it stops, and servo power remains on.
The following processing is performed at Hold.
- The robot operation is decelerated until it stops. Execution of the program is paused.

WARNING
The stopping distance and stopping time of Controlled stop are longer than the
stopping distance and stopping time of Power-Off stop. A risk assessment for
the whole robot system, which takes into consideration the increased stopping
distance and stopping time, is necessary when Controlled stop is used.

When the emergency stop button is pressed or the FENCE is open, the stop type of robot is Power-Off
stop or Controlled stop. The configuration of stop type for each situation is called stop pattern. The stop
pattern is different according to the controller type or option configuration.

There are the following 3 Stop patterns.

Emergency External
Stop Servo
Mode stop Emergency FENCE open SVOFF input
pattern disconnect
button stop
AUTO P-Stop P-Stop C-Stop C-Stop P-Stop
A T1 P-Stop P-Stop - C-Stop P-Stop
T2 P-Stop P-Stop - C-Stop P-Stop
AUTO P-Stop P-Stop P-Stop P-Stop P-Stop
B T1 P-Stop P-Stop - P-Stop P-Stop
T2 P-Stop P-Stop - P-Stop P-Stop
AUTO C-Stop C-Stop C-Stop C-Stop C-Stop
C T1 P-Stop P-Stop - C-Stop P-Stop
T2 P-Stop P-Stop - C-Stop P-Stop
P-Stop: Power-Off stop
C-Stop: Controlled stop
-: Disable

s-11
SAFETY PRECAUTIONS B-83284EN-2/01

The following table indicates the Stop pattern according to the controller type or option configuration.
Option R-30iB
Standard A (*)
Controlled stop by E-Stop (A05B-2600-J570) C (*)
(*) R-30iB does not have servo disconnect.

The stop pattern of the controller is displayed in "Stop pattern" line in software version screen. Please
refer to "Software version" in operator's manual of controller for the detail of software version screen.

"Controlled stop by E-Stop" option


When "Controlled stop by E-Stop" (A05B-2600-J570) option is specified, the stop type of the following
alarms becomes
Controlled stop but only in AUTO mode. In T1 or T2 mode, the stop type is Power-Off stop which is
the normal operation of the system.

Alarm Condition
SRVO-001 Operator panel E-stop Operator panel emergency stop is pressed.
SRVO-002 Teach pendant E-stop Teach pendant emergency stop is pressed.
SRVO-007 External emergency stops External emergency stop input (EES1-EES11, EES2-EES21) is
open. (R-30iB controller)
SRVO-218 Ext. E-stop/Servo Disconnect External emergency stop input (EES1-EES11, EES2-EES21) is
open. (R-30iB controller)
SRVO-408 DCS SSO Ext Emergency Stop In DCS Safe I/O connect function, SSO[3] is OFF.
SRVO-409 DCS SSO Servo Disconnect In DCS Safe I/O connect function, SSO[4] is OFF.

Controlled stop is different from Power-Off stop as follows:


- In Controlled stop, the robot is stopped on the program path. This function is effective for a system
where the robot can interfere with other devices if it deviates from the program path.
- In Controlled stop, physical impact is less than Power-Off stop. This function is effective for
systems where the physical impact to the mechanical unit or EOAT (End Of Arm Tool) should be
minimized.
- The stopping distance and stopping time of Controlled stop is longer than the stopping distance and
stopping time of Power-Off stop, depending on the robot model and axis. Please refer to the
operator's manual of a particular robot model for the data of stopping distance and stopping time.

When this option is loaded, this function cannot be disabled.

The stop type of DCS Position and Speed Check functions is not affected by the loading of this option.

WARNING
The stopping distance and stopping time of Controlled stop are longer than the
stopping distance and stopping time of Power-Off stop. A risk assessment for
the whole robot system, which takes into consideration the increased stopping
distance and stopping time, is necessary when this option is loaded.

s-12
B-83284EN-2/01 TABLE OF CONTENTS

TABLE OF CONTENTS
SAFETY PRECAUTIONS............................................................................s-1
1 INTRODUCTION ..................................................................................... 1
1.1 MANUAL PLAN ............................................................................................. 1
2 OVERVIEW ............................................................................................. 3
3 SOFTFLOAT FUNCTION........................................................................ 4
3.1 JOINT / CARTESIAN SOFTFLOAT............................................................... 4
3.2 PUSHOUT SOFTFLOAT ............................................................................... 8
3.3 KNOWHOW OF SOFTFLOAT..................................................................... 10
3.4 KNOWHOW OF CARTESIAN SOFTFLOAT ............................................... 11
3.5 CAUTIONS / RESTRICTIONS..................................................................... 12
4 CONTINUOUS ROTATION FUNCTION ............................................... 14
5 OPERATION GROUP DO OUTPUT FUNCTION.................................. 20
6 AUTOMATIC ERROR RECOVERY FUNCTION................................... 22
6.1 OVERVIEW ................................................................................................. 22
6.2 AUTOMATIC ERROR RECOVERY FUNCTION ......................................... 22
6.3 RESUME PROGRAM FUNCTION .............................................................. 22
6.4 FAST EXIT/ENTRY FEATURE.................................................................... 23
6.5 RESUME_PROG INSTRUCTION ............................................................... 24
6.6 RETURN_PATH_DSBL INSTRUCTION...................................................... 26
6.7 MAINT_PROG INSTRUCTION.................................................................... 28
6.8 SETTING OF THE AUTOMATIC ERROR RECOVERY FUNCTION........... 30
6.9 MANUAL OPERATION SCREEN OF THE RESUME PROGRAM FUNCTION
..................................................................................................................... 41
6.10 EXECUTION OF THE RESUME PROGRAM FROM THE TEACH PENDANT
AND TEST MODE ....................................................................................... 43
6.11 CHANGING CONDITIONS FOR EXECUTING THE RESUME PROGRAM 43
6.12 OTHER SPECIFICATIONS AND RESTRICTIONS ..................................... 44
6.13 WARNINGS (Be sure to read this section for safety.).................................. 45
7 REMOTE TCP FUNCTION.................................................................... 46
7.1 SUMMARY .................................................................................................. 46
7.2 SETUP......................................................................................................... 48
8 HIGH SENSITIVITY COLLISION DETECTION..................................... 51
8.1 OVERVIEW ................................................................................................. 51
8.2 SPECIFICATION ......................................................................................... 51
8.3 SETTINGS................................................................................................... 51
8.4 COLLISION GUARD SETUP SCREEN ....................................................... 52
8.5 PROGRAM INSTRUCTIONS ...................................................................... 53
8.5.1 COL DETECT ON / COL DETECT OFF .............................................................53
8.5.2 COL GUARD ADJUST .........................................................................................54
c-1
TABLE OF CONTENTS B-83284EN-2/01

8.6 CAUTIONS .................................................................................................. 56


9 LOAD ESTIMATION ............................................................................. 57
9.1 OVERVIEW ................................................................................................. 57
9.2 OPERATING PROCEDURE........................................................................ 57
9.3 LOAD ESTIMATION PROCEDURE (for 6-Axis Robots) ............................. 57
9.4 CALIBRATION PROCEDURE (for 6-Axis Robots) ...................................... 60
9.5 OTHER RELATED MATTERS..................................................................... 63
10 COLLISION DETECTION FOR AUXILIARY AXIS ............................... 64
10.1 GENERAL ................................................................................................... 64
10.2 CAUTION .................................................................................................... 64
10.3 INITIAL SETTING ........................................................................................ 64
10.4 TUNING PROCEDURE ............................................................................... 64
11 GRAVITY COMPENSATION................................................................. 67
11.1 SYSTEM VARIABLES ................................................................................. 67
11.2 MOTION SCREEN ...................................................................................... 67
11.3 MASTERING ............................................................................................... 68
11.3.1 “Normal Mastering” and “GC Mastering” .............................................................68
11.3.2 How to Choose Mastering Method.........................................................................69
11.3.3 Mastering Procedure...............................................................................................69
11.3.4 Guidance of GC Mastering.....................................................................................70

12 OPERATION LOG BOOK ..................................................................... 71


12.1 OVERVIEW ................................................................................................. 71
12.2 RECORDED EVENTS ................................................................................. 73
12.3 SETTING UP BOOK.................................................................................... 76
12.4 OPERATIONS ............................................................................................. 77
12.5 EXTENDED ALARM LOG ........................................................................... 81
12.5.1 Setup.......................................................................................................................81
12.5.2 How to Display Alarm Log ....................................................................................82

13 PROGRAM TOOLBOX ......................................................................... 84


13.1 SOFT LIMIT SETTING ................................................................................ 84
14 ADVANCED CONSTANT PATH........................................................... 87
14.1 OVERVIEW ................................................................................................. 87
14.2 LINEAR DISTANCE..................................................................................... 87
14.2.1 How it Works .........................................................................................................89
14.2.2 Limitations..............................................................................................................90
14.2.3 How to Use Linear Distance...................................................................................91
14.3 CORNER REGION TERMINATION TYPE (CRy)........................................ 92
14.3.1 CRy Versus Segment Distance...............................................................................92
14.3.2 Teaching Techniques..............................................................................................93
14.3.3 Constant Path with Respect to Program Speed Changes........................................93
14.3.4 Compatibilities and Limitations .............................................................................94
14.4 PROCESS SPEED ...................................................................................... 95
14.4.1 Limitations..............................................................................................................97
14.5 MAX SPEED................................................................................................ 97
14.5.1 Limitations..............................................................................................................98
c-2
B-83284EN-2/01 TABLE OF CONTENTS

15 AUTO SINGULARITY AVOIDANCE FUNCTION ............................... 100


15.1 OVERVIEW ............................................................................................... 100
15.2 HOW TO USE AUTO SINGULARITY AVOIDANCE.................................. 100
15.2.1 How to Use Auto Singularity Avoidance in Jogging ...........................................100
15.2.2 How to Use Auto Singularity Avoidance in TPE Program ..................................100
15.3 LIMITATIONS ............................................................................................ 101
15.4 CAUTIONS ................................................................................................ 101
16 PATH SWITCHING FUNCTION .......................................................... 102
17 AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION ............ 108
17.1 INTRODUCTION ....................................................................................... 108
17.2 SPECIFICATION ....................................................................................... 108
17.3 CONSTRAINTS ......................................................................................... 110
17.4 SETTINGS................................................................................................. 110
17.5 ATTENTION .............................................................................................. 113
17.6 PROGRAMMING....................................................................................... 114
18 DUAL MOTOR DRIVE ........................................................................ 118
18.1 INTRODUCTION ....................................................................................... 118
18.2 SETUP....................................................................................................... 118
19 MULTI UOP INTERFACE FUNCTION ................................................ 120
19.1 INTRODUCTION ....................................................................................... 120
19.1.1 SPECIFICATION ................................................................................................120
19.1.2 SOFTWARE OPTIONS.......................................................................................120
19.2 PERIPHERAL I/O ...................................................................................... 120
19.2.1 Setting of the Number of UOP Set .......................................................................122
19.2.2 Modification and Addition of Signal....................................................................123
19.2.3 HOLD#1~#N........................................................................................................124
19.2.4 CSTOPI#1~#N .....................................................................................................124
19.2.5 START#1~#N ......................................................................................................125
19.2.6 RSR ......................................................................................................................125
19.2.7 PNSTROBE#1~#N,PROD_START#1~#N .........................................................126
19.2.8 CMDENBL#1~#N ...............................................................................................126
19.2.9 SYSRDY#1~#N ...................................................................................................126
19.2.10 PROGRUN#1~#N,PAUSED#1~#N ....................................................................126
19.2.11 HELD#1~#N ........................................................................................................127
19.2.12 FAULT#1~#N ......................................................................................................127
19.2.13 ATPERCH............................................................................................................127
19.3 SELECT PROGRAM ................................................................................. 127
19.3.1 Setting of Motion Groups Intended by Each UOP Set.........................................129
19.3.2 Select Program at Running or Paused ..................................................................130
19.3.3 Program Edit Screen Display When Operating Motion Group is Changed .........130
19.4 RUN PROGRAM ....................................................................................... 131
19.4.1 Robot Service Request (RSR) ..............................................................................131
19.4.2 Program Number Select (PNS) ............................................................................131
19.5 STOP PROGRAM ..................................................................................... 131
19.5.1 Pause Program by UOP ........................................................................................131
19.5.2 Abort Program by UOP........................................................................................131
19.5.3 Other.....................................................................................................................132
19.6 SYSYTEM VARIABLES............................................................................. 132
c-3
TABLE OF CONTENTS B-83284EN-2/01

20 ERROR CODE OUTPUT FUNCTION ................................................. 135


20.1 INTRODUCTION ....................................................................................... 135
20.2 SPECIFICATION ....................................................................................... 135
20.2.1 Types of Alarms ...................................................................................................135
20.2.2 Input and Output Signals......................................................................................135
20.3 MEANING OF ALARM CODE ................................................................... 136
20.3.1 Severity of Alarm .................................................................................................137
20.3.2 Alarm ID...............................................................................................................138
20.3.3 Alarm Number......................................................................................................139

21 DATA MONITOR FUNCTION ............................................................. 140


21.1 DATA MONITOR SETUP .......................................................................... 141
21.2 DATA MONITOR SCHEDULE................................................................... 147
21.3 PROGRAMMING....................................................................................... 150
21.4 DATA MONITOR CHART .......................................................................... 151
22 BRAKE CHECK FUNCTION............................................................... 153
22.1 OVERVIEW ............................................................................................... 153
22.2 INITIAL SETTING BEFORE USE .............................................................. 153
22.3 START BRAKE CHECK ............................................................................ 154
22.4 RESULTS OF BRAKE CHECK.................................................................. 155
22.5 LIMITATIONS ............................................................................................ 155
22.6 CAUTION .................................................................................................. 155
23 PANEL WIZARD ................................................................................. 156
23.1 OVERVIEW ............................................................................................... 156
23.2 SOFTWARE REQUIREMENTS AND EXPLANATION .............................. 156
23.3 SETTING UP ............................................................................................. 156
23.3.1 Overview ..............................................................................................................156
23.3.2 Available iPendant Controls.................................................................................159
23.3.3 Setting Up Fast Label ...........................................................................................160
23.3.4 Setting Up Fast Lamp...........................................................................................161
23.3.5 Setting Up Fast Switch .........................................................................................163
23.3.6 Addition of Button Change Control .....................................................................164
23.3.7 Addition of Command Button Control.................................................................168
23.3.8 Addition of Edit Box Control...............................................................................169
23.3.9 Addition of Label Control ....................................................................................169
23.3.10 Addition of Toggle Button Control ......................................................................170
23.3.11 Addition of Toggle Lamp Control........................................................................172
23.3.12 Modification of Panel...........................................................................................173
23.3.13 Modification of Control........................................................................................174
23.3.14 Delete of Control ..................................................................................................175
23.3.15 Cut/Copy Paste of Control ...................................................................................176
23.3.16 Modification of Page ............................................................................................177
23.3.17 Re-creation of Panel .............................................................................................178
23.4 RUN KAREL PROGRAM BY PANEL ........................................................ 179
23.4.1 Caution for Creation of KAREL Program............................................................180
23.4.2 Creation of Run Button ........................................................................................180
23.5 USAGE ...................................................................................................... 181
23.5.1 Display of Panel ...................................................................................................181
23.5.2 Backup/Restore ....................................................................................................182

c-4
B-83284EN-2/01 TABLE OF CONTENTS

24 ENHANCED MIRROR IMAGE ............................................................ 183


24.1 PARALLEL MIRROR IMAGE..................................................................... 184
24.2 ROTATIONAL MIRROR IMAGE................................................................ 186
24.3 MIRROR IMAGE USING EXISTING FRAMES AND MIRROR PLANES, WITH
CONTROLLED ORIENTATION................................................................. 187
24.4 MIRROR IMAGE OF EXTENDED AXES................................................... 188
25 KAREL USE SUPPORT FUNCTION .................................................. 198
25.1 OVERVIEW ............................................................................................... 198
25.2 KAREL CONFIG ........................................................................................ 198
25.2.1 Start the KAREL Config Screen ..........................................................................198
25.2.2 Use KAREL Config Screen..................................................................................198
25.2.3 Run KAREL Program ..........................................................................................199
25.2.4 Abort the Program ................................................................................................200
25.2.5 Start Mode Config ................................................................................................201
25.2.6 Detail of KAREL Config .....................................................................................202
25.2.7 Limitation and Caution of KAREL Config ..........................................................203
25.2.8 Cycle Power .........................................................................................................203
25.3 CUSTOM MENU........................................................................................ 204
25.3.1 Starting Custom Menu..........................................................................................204
25.3.2 Set Custom Menu .................................................................................................204
25.3.3 Delete Set .............................................................................................................206

26 KAREL PROGRAM EXECUTION HISTORY RECORD ..................... 208


26.1 OVERVIEW ............................................................................................... 208
26.2 HARDWARE AND SOFTWARE ................................................................ 208
26.2.1 Hardware and Software Requirements .................................................................208
26.2.2 Hardware ..............................................................................................................208
26.2.3 Software................................................................................................................209
26.2.4 Performance..........................................................................................................209
26.3 SETUP AND OPERATIONS...................................................................... 209
26.3.1 Setting Up the KAREL Program Execution History Record ...............................209
26.3.2 Dump Selections Screen.......................................................................................210
26.3.3 Task Selection Screen ..........................................................................................211
26.3.4 Stop Logging Tasks Screen ..................................................................................212
26.3.5 List Selected Tasks Screen ...................................................................................214
26.3.6 Event Class Selection Screen ...............................................................................215
26.3.7 Event Detail Selection Screen ..............................................................................217
26.3.8 Enable or Disable All Event Logging ..................................................................217
26.4 LOGGING EVENTS................................................................................... 218
26.4.1 Setting Up Events.................................................................................................218
26.4.2 Logging Events to an ASCII File .........................................................................219
26.4.3 ASCII File General Event Information ................................................................219
26.4.4 ASCII File Specific Event Information ................................................................220
26.5 EXAMPLES ............................................................................................... 223
26.5.1 Overview ..............................................................................................................223
26.5.2 KAREL Program Example...................................................................................224
26.5.3 Teach Pendant Program Example ........................................................................224
26.5.4 ASCII File Example .............................................................................................225

27 TORQUE LIMIT FUNCTION................................................................ 227


27.1 INTRODUCTION ....................................................................................... 227
c-5
TABLE OF CONTENTS B-83284EN-2/01

27.2 TORQUE LIMIT FUNCTION FEATURE .................................................... 228


27.3 TORQUE LIMIT MULTI-AXIS SETUP FUNCTION.................................... 229
27.3.1 Torque Limit Multi-Axis Setup Function.............................................................229
27.4 LIMITATIONS ............................................................................................ 230
27.5 CAUTION .................................................................................................. 230
28 TCP SPEED OUTPUT......................................................................... 231
28.1 OVERVIEW ............................................................................................... 231
28.2 LIMITATIONS ............................................................................................ 231
28.3 SETTING UP TCP SPEED OUTPUT ........................................................ 232
28.4 TCP SPEED OUTPUT INSTRUCTION ..................................................... 234
29 TP DRAM/FILE STORAGE FUNCTION ............................................. 236
29.1 STORAGES............................................................................................... 236
29.1.1 CMOS Programs ..................................................................................................236
29.1.2 SHADOW Programs ............................................................................................236
29.1.3 SHADOW ONDEMAND Programs ....................................................................237
29.1.4 FILE Programs .....................................................................................................237
29.2 STORAGE CONFIGURATION .................................................................. 237
29.3 SAVE / LOAD PROGRAMS ...................................................................... 241
29.3.1 Save / Load TP Files ............................................................................................241
29.3.2 Copy Programs .....................................................................................................241
29.3.3 Save / Load LS Files ............................................................................................241
29.3.4 Make Backup of Programs ...................................................................................241
29.4 LOADING PROCESS IN PROGRAM EXECUTION .................................. 242
29.5 PROGRAM EXCHANGE FUNCTION WITHOUT ENOUGH MEMORY SPACE
................................................................................................................... 242
29.6 PRECAUTION ........................................................................................... 243
29.6.1 Cause and Remedy for Alarm Occurrence ...........................................................243
29.6.2 Effect of Alarm Occurrence .................................................................................244

30 CYCLE TIME TRACKING ................................................................... 245


30.1 OVERVIEW ............................................................................................... 245
30.1.1 Cycle Time Categories .........................................................................................245
30.1.2 Cycle Time Screen Items......................................................................................245
30.2 DISPLAY MODES OF CYCLE TIME ......................................................... 246
30.2.1 Cycle Mode ..........................................................................................................246
30.2.2 Hourly Mode ........................................................................................................247
30.2.3 Line-by-Line Mode ..............................................................................................248
30.3 TRACKING CYCLE TIME.......................................................................... 248
30.3.1 Change Display Format of Cycle Time Data .......................................................249
30.3.2 Save Cycle Time Data ..........................................................................................249
30.3.3 Update Cycle Time Data ......................................................................................249
30.3.4 Display Target Cycle Time Line ..........................................................................250
30.3.5 Display Reference Cycle Time Line ....................................................................250
30.4 EXECUTION EXAMPLE OF SPOT PROGRAM........................................ 251
31 MATH FUNCTION INSTRUCTION ..................................................... 253
31.1 TYPE OF MATH FUNCTIONS .................................................................. 253
31.2 INSTRUCTION FORMAT OF MATH FUNCTION...................................... 253
31.2.1 Instruction Format of Assignment Statements .....................................................253

c-6
B-83284EN-2/01 TABLE OF CONTENTS
31.2.2 Instruction Format of Relational Statements ........................................................254
31.2.3 Instruction Format of Wait Command Statements ...............................................255
31.3 FUNCTION SPECIFICATION OF MATH FUNCTIONS............................. 255
31.3.1 Square Root(SQRT)........................................................................................255
31.3.2 Trigonometric Function(SIN) .........................................................................255
31.3.3 Trigonometric Function(COS) ........................................................................256
31.3.4 Trigonometric Function(TAN)........................................................................256
31.3.5 Inverse Trigonometric Function(ASIN)..........................................................256
31.3.6 Inverse Trigonometric Function(ACOS) ........................................................257
31.3.7 Inverse Trigonometric Function(ATAN2) ......................................................257
31.3.8 Inverse Trigonometric Function(ATAN) ........................................................258
31.3.9 Exponent...............................................................................................................258
31.3.10 Natural Logarithm ................................................................................................258
31.3.11 Absolute(ABS)................................................................................................259
31.3.12 Truncate(TRUNC) ..........................................................................................259
31.3.13 Round Off(ROUND).......................................................................................259
31.4 BACKGROUND OPERATION OF MATH FUNCTION .............................. 260
31.5 TEACH MATH FUNCTION INSTRUCTION............................................... 260
31.6 RESTRICTION OF TEACHING MATH FUNCTION .................................. 262
31.7 EXCEPTIONS AND RESTRICTION.......................................................... 262
32 SERVO TOOL CHANGE FUNCTION ................................................. 264
32.1 OUTLINE ................................................................................................... 264
32.1.1 Feature of Function ..............................................................................................264
32.1.2 Basic Specification ...............................................................................................264
32.1.3 Restrictions...........................................................................................................264
32.1.4 System Configuration...........................................................................................265
32.1.5 Outline of Installation...........................................................................................267
32.2 INITIAL SETUP.......................................................................................... 267
32.3 PRELIMINARY TOOL ATTACH OPERATION .......................................... 268
32.4 TOOL CHANGE SETUP............................................................................ 270
32.5 SETTING THE REFERENCE POSITION .................................................. 275
32.5.1 Battery-less Type Tools........................................................................................275
32.5.2 Battery-Mounted Type Tools ...............................................................................275
32.6 TOOL CHANGE INSTRUCTION ............................................................... 276
32.6.1 TOOL DETACH Instruction................................................................................276
32.6.2 TOOL ATTACH Instruction................................................................................276
32.6.3 Sample Program ...................................................................................................276
32.6.4 Forward Execution ...............................................................................................277
32.6.5 Backward Execution.............................................................................................277
32.7 TOOL CHANGE SEQUENCE.................................................................... 278
32.8 TOOL CHANGE STATUS ......................................................................... 278
32.9 TEACHING ................................................................................................ 279
32.9.1 Notice for Teaching..............................................................................................279
32.9.2 Sample Program ...................................................................................................280
32.10 CONSTRUCTION OF SERVO TOOL CHANGE SCREEN........................ 280
32.11 TOOL CHANGE INITIAL SETUP............................................................... 281
32.11.1 Setting Motion Parameters for Servo Tool Axes..................................................281
32.11.2 Assigning Tool Numbers to Servo Tool Axes .....................................................281
32.11.3 Setting System Variables......................................................................................283

c-7
TABLE OF CONTENTS B-83284EN-2/01

32.12 TOOL CHANGE REFERENCE POSITION SETUP METHOD


(BATTERY-LESS TYPE) ........................................................................... 283
32.12.1 Reference Position Setup for Calibration Types 3 and 4 .....................................283
32.12.2 Reference Position Setup for Calibration Types 5 and 6 .....................................285
32.12.3 Quick Mastering Reference Position Setup..........................................................287
32.13 TROUBLESHOOTING............................................................................... 288
32.13.1 The Attach Instruction is Executed when the Tool is not Attached. ....................288
32.13.2 The Robot Stopped during Calibration. ...............................................................288
32.13.3 Calibration Motion Failed. ...................................................................................289
32.13.4 A Different Tool from that Specified by the Attach Instruction is Attached. ......289
32.13.5 The Attached Tool has been Detached by Mistake (without Using the Detach
Instruction). ..........................................................................................................290
32.13.6 The Tool Axis of a Detached Tool has Moved. ...................................................290
32.13.7 The Battery Voltage has Fallen. ...........................................................................290
32.13.8 The Battery Ran Low while the Tool was Detached............................................291

33 OPERATION WITHOUT SHIFT FUNCTION ....................................... 292


33.1 JOG OPERATION WITHOUT SHIFT ........................................................ 292
33.2 TEST EXECUTION OPERATION WITHOUT SHIFT................................. 293
34 HIGH SPEED SHIFT KEY FUNCTION ............................................... 295
34.1 SETUP FOR HIGH SPEED SHIFT KEY FUNCTION ................................ 295
34.2 HIGH SPEED SHIFT JOG OPERATION................................................... 295
34.3 HIGH SPEED SHIFT TEST EXECUTION OPERATION ........................... 296
35 iRDiagnostics..................................................................................... 298
35.1 OVERVIEW ............................................................................................... 298
35.2 ROBOT CONDTION DETECTION ............................................................ 298
35.2.1 Setup.....................................................................................................................298
35.2.2 Execute Program ..................................................................................................299
35.2.3 Robot Condition Detection Status ........................................................................300
35.2.4 After Replacement................................................................................................300
35.3 SERVO DIAGNOSIS ................................................................................. 300
35.4 MOTION PROFILER ................................................................................. 302
35.4.1 Setup.....................................................................................................................302
35.4.2 Results ..................................................................................................................302

36 MENU UTILITY FUNCTION ................................................................ 304


36.1 SETUP ABOUT MENU UTILITY................................................................ 304
36.1.1 Prompt Box Msg ..................................................................................................305
36.1.2 Prompt Box Yes/No Menu ...................................................................................307
36.1.3 List Menu .............................................................................................................309
36.1.4 Status Menu..........................................................................................................312
36.1.5 Operator Entry Menu............................................................................................315

37 4D GRAPHICS FUNCTION................................................................. 319


37.1 OVERVIEW ............................................................................................... 319
37.1.1 Graphic Models ....................................................................................................319
37.1.2 Operation Procedure.............................................................................................320
37.2 4D GRAPHICS SCENE ............................................................................. 322
37.2.1 4D GRAPHICS Display .......................................................................................322
37.2.2 4D GRAPHICS Node Map ..................................................................................325
37.2.3 4D GRAPHICS Frame Display............................................................................327
c-8
B-83284EN-2/01 TABLE OF CONTENTS
37.2.4 4D GRAPHICS TCP Trace ..................................................................................328
37.2.5 4D GRAPHICS Position Register ........................................................................328
37.3 HOW TO DESCRIBE WORKCELL4D.XML............................................... 330
37.3.1 Cells......................................................................................................................330
37.3.2 Example................................................................................................................330
37.3.3 How to Describe WORKCELL4D .XML ............................................................331

c-9
B-83284EN-2/01 1. INTRODUCTION

1 INTRODUCTION
This chapter explains the manual plan.

Contents of this chapter


1.1 MANUAL PLAN

1.1 MANUAL PLAN


About this manual
FANUC Robot series R-30iB CONTROLLER Optional Function OPERATOR’S MANUAL.
This manual describes how to operate the FANUC Robot, an all-purpose compact robot. It is controlled by
the FANUC R-30iB controller (called the robot controller hereinafter) containing the FANUC Robot
software.

This manual describes the software optional functions. Each chapter describes one software option. Please
select and refer to the chapters describing your required function.

Related manuals
The following manuals are available:

Robot controller Optional Function Intended readers:


OPERATOR’S MANUAL Operators responsible for designing, introducing, operating, and
B-83284EN-2 adjusting the robot system at the work site.
(This manual) Topics:
Description of the software optional functions.
Use:
Guide to teaching, introducing, and adjusting the robot at the work
site, and application designing.
OPERATOR’S MANUAL Intended readers:
(Basic Operation) Operators responsible for designing, introducing, operating, and
B-83284EN adjusting the robot system at the work site.
Topics:
Functions, operations and the procedure for operating the robot.
Programming procedure, interface and alarm.
Use:
Guide to teaching, introducing, and adjusting the robot at the work
site, and application designing.
OPERATOR'S MANUAL Topics:
(Alarm Code List) Error code listings, causes, and remedies.
B-83284EN-1 Use:
Installing and activating the system, connecting the mechanical
unit to the peripheral device and maintenance the robot.
Arc Welding Function Intended readers:
OPERATOR’S MANUAL Operators responsible for designing, introducing, operating, and
B-83284EN-3 adjusting the robot system at the work site.
Topics:
Description of the setting and operation for arc welding application
software.
Use:
Guide to teaching, introducing, and adjusting the robot at the work
site, and application designing.

-1-
1. INTRODUCTION B-83284EN-2/01

Robot controller Intended readers:


Spot Welding Function
OPERATOR’S MANUAL Operators responsible for designing, introducing, operating, and
B-83284EN-4 adjusting the robot system at the work site.
Topics:
Description of the setting and operation for spot welding
application software.
Use:
Guide to teaching, introducing, and adjusting the robot at the work
site, and application designing.
Dispense Function Intended readers:
OPERATOR’S MANUAL Operators responsible for designing, introducing, operating, and
B-83284EN-5 adjusting the robot system at the work site.
Topics:
Description of the setting and operation for dispense application
software.
Use:
Guide to teaching, introducing, and adjusting the robot at the work
site, and application designing.
MAINTENANCE MANUAL Topics:
B-83195EN Installing and activating the system, connecting the mechanical
unit to the peripheral device and maintenance the robot.
Mechanical unit OPERATOR’S MANUAL Topics:
Installing and activating the robot, connecting the mechanical unit
to the controller, maintaining the robot.
Use:
Guide to installation, activation, connection, and maintenance.

-2-
B-83284EN-2/01 2. OVERVIEW

2 OVERVIEW
This manual describes the following software options.

Chapter 3 SOFT FLOAT FUNCTION


Chapter 4 CONTINUOUS ROTATION FUNCTION
Chapter 5 OPERATION GROUP DO OUTPUT FUNCTION
Chapter 6 AUTOMATIC ERROR RECOVERY FUNCTION
Chapter 7 REMOTE TCP FUNCTION
Chapter 8 HIGH SENSITIVITY COLLISION DETECTION
Chapter 9 LOAD ESTIMATION
Chapter 10 COLLITION DETECTION FOR AUXILIARY AXIS
Chapter 11 GRAVITY COMPENSATION
Chapter 12 OPERATION LOG BOOK
Chapter 13 PROGRAM TOOLBOX
Chapter 14 ADVANCED CONSTANT PATH
Chapter 15 AUTO SINGULARITY AVOIDANCE FUNCTION
Chapter 16 PATH SWITCHING FUNCTION
Chapter 17 AUXILIATY AXIS SERVO OFF (LOCAL STOP) FUNCTION
Chapter 18 DUAL MOTOR DRIVE
Chapter 19 MULTI UOP INTERFACE FUNCTION
Chapter 20 ERROR CODE OUTPUT FUNCTION
Chapter 21 DATA MONITOR FUNCTION
Chapter 22 BRAKE CHECK FUNCTION
Chapter 23 PANEL WIZARD
Chapter 24 ENHANCED MIRROR IMAGE
Chapter 25 KAREL USE SUPPORT FUNCTION
Chapter 26 KAREL PROGRAM EXECUTION HISTORY RECORD
Chapter 27 TORQUE LIMIT FUNCTION
Chapter 28 TCP SPEED OUTPUT INSTRUCTION
Chapter 29 TP DRAM/FILE STORAGE FUNCTION
Chapter 30 CYCLE TIME TRACKING
Chapter 31 MATH FUNCTION INSTRUCTION
Chapter 32 SERVO TOOL CHANGE FUNCTION
Chapter 33 OPERATION WITHOUT SHIFT FUNCTION
Chapter 34 HIGH SPEED SHIFT FUNCTION
Chapter 35 iRDIAGNOSTICS
Chapter 36 MENU UTILITY FUNCTION
Chapter 37 4D GRAPHICS FUNCTION

-3-
3. SOFTFLOAT FUNCTION B-83284EN-2/01

3 SOFTFLOAT FUNCTION
Usually, the robot moves accurately toward the goal specified using the teach pendant (taught point).
When the robot is used to mount workpieces on a machine tool, variances in workpiece precision may result
in a shift in the workpiece position relative to the tool, thus possibly causing interference between the
workpiece and tool.
A softfloat function has been added which is effective in mounting workpieces with variances in precision
onto a machine tool.
The softfloat function is also very effective if the synchronization speed is unstable as in the extraction of
workpieces in sync with hydraulic extrusion, and if workpieces that the robot cannot grip accurately, such
as rough-machined workpieces, are to be handled.

3.1 JOINT / CARTESIAN SOFTFLOAT


Function
The joint / Cartesian softfloat function works as follows:
● Two types of softfloat are supported: joint softfloat for specifying the softness related to the direction
of rotation of each arm of the robot, and Cartesian softfloat for specifying the softness on the Cartesian
axes.
● The function is enabled/disabled using an instruction in the program. Its conditions are also specified
using the instruction.
● ”Servo flexibility” can be specified for each axis. The term servo flexibility indicates how strongly the
axis resists external forces. It is specified between 0% and 100%. A servo flexibility of 100%
corresponds to being the most flexible. The servo flexibility is specified using a condition table that
contains a set of data for one group (for nine axes).
● If an external force above a certain level (so high as to overcome a static frictional force) is applied to
a robot, the axis of the robot is pressed and moved.
● An external force applied to a robot may prevent it from reaching the taught point. The distance
between the taught point and the point the robot can reach is nearly proportional to the magnitude of
the external force.
● If static load is applied to a robot, the robot controls force to maintain its attitude even if the softfloat
function is enabled.

The detailed descriptions of the softfloat function follow.

Program instruction
The following three program instructions related to the softfloat function are supported.

- SOFTFLOAT[n]
The softfloat function is enabled using condition n.
* The setting of softfloat condition is explained in ”Condition setting menu”.

- SOFTFLOAT END
The softfloat function is disabled.

- FOLLOW UP
When an external force is removed from a robot, it usually tries to go back to the taught point.
However, this instruction causes the robot to assume that the current position is the taught point, and
prevents it from going back to the taught point.

-4-
B-83284EN-2/01 3. SOFTFLOAT FUNCTION

Softfloat function effective range


The SOFTFLOAT[n] instruction can be used in two modes; in one mode it is used solely in a program and
in the other mode it is used as an auxiliary motion instruction after a motion statement. The range in which
the softfloat function is effective for robot operation is determined according in to which mode this
instruction is used.

- Sole instruction
The softfloat function is enabled after the end of the motion specified on the line preceding the solely
specified SOFTFLOAT[n] instruction.
In the following example, the softfloat function is enabled after the motion specified on line 1 ends,
and disabled by SOFTFLOAT END on line 5.

1: J P[1] 100% FINE


2: SOFTFLOAT[1]
3: L P[2] 100mm/sec FINE
4: L P[3] 100mm/sec FINE
5: SOFTFLOAT END
P[1] P[2] P[3]

The soft float function is enabled.

- Auxiliary motion instruction


The softfloat function becomes enabled during execution of a motion statement attached with a
SOFTFLOAT [n] instruction.
The point at which the softfloat function becomes enabled is determined by a softfloat condition ”Exec
Start Ratio.”
Auxiliary motion instruction is specified as the ratio (from 0% to 100% in 1% steps) of a distance to be
traveled before the robot reaches the taught point corresponding to a motion statement attached with a
SOFTFLOAT[n].
In the following example, the softfloat function is effective between P[1] taught using a motion
statement on line 1 and P[2] taught using a motion statement on line 2 attached with the
SOFTFLOAT[n] instruction.

1: J P[1] 100% FINE


2: L P[2] 100mm/sec FINE SOFTFLOAT[1]
3: L P[3] 100mm/sec FINE
4: SOFTFLOAT END
P[1] P[2] P[3]

100%
50%
0%
The soft float function is enabled.

NOTE
The auxiliary motion instruction is not supported by Cartesian softfloat.

- Condition setting menu


The softfloat conditions are specified on the [SETUP Softfloat] menu, which consists of the following
two menus.
● List menu
-5-
3. SOFTFLOAT FUNCTION B-83284EN-2/01

● Detail menu
A function key is used to select either menu.
- Pressing the F3, DETAIL key on the list menu selects the detail menu.
- Pressing the F3, LIST key on the detail menu selects the list menu.
Up to 10 conditions can usually be specified for the softfloat function.

List menu
SETUP/SOFTFLOAT
Group1 1/10
No Type Start(%) Comment
1 JOINT 0 [ ]
2 CART ********[ ]
3 CART ********[ ]
4 CART ********[ ]
5 CART ********[ ]
6 CART ********[ ]
7 CART ********[ ]
8 CART ********[ ]
9 CART ********[ ]
10 CART ********[ ]

[ TYPE ] GROUP DETAIL

F3, DETAIL F3, LIST

Joint softfloat screen Cartesian softfloat screen


SOFTFLOAT(JOINT) SOFTFLOAT(CARTESIAN)
1/11 1/9
Group1 Group 1
1 Schedule No[ 1]:[****************] 1 Schedule No[ 2]:[****************]
2 Exec start ratio : 0 % 2 Enable/Disable : [DISABLE]
3 Axis1 Soft ratio : 0 % DISABLE 3 Coordinate : [WORLD]
4 Axis2 Soft ratio : 0 % DISABLE Soft Rat Soft Tol
5 Axis3 Soft ratio : 0 % DISABLE 4 X direction: [ 0]% [ 0]%
6 Axis4 Soft ratio : 0 % DISABLE 5 Y direction: [ 0]% [ 0]%
7 Axis5 Soft ratio : 0 % DISABLE 6 Z direction: [ 0]% [ 0]%
8 Axis6 Soft ratio : 0 % DISABLE 7 X rotation: [ 0]% [ 0]%
9 Axis7 Soft ratio : 0 % DISABLE 8 Y rotation: [ 0]% [ 0]%
10 Axis8 Soft ratio : 0 % DISABLE 9 Z rotation: [ 0]% [ 0]%

[TYPE] NUMBER LIST JOINT CART > [TYPE] NUMBER LIST JOINT CART >
GROUP LIST > GROUP LIST >

The following data can be specified on the detail menu.

Table 3.1 Setting items of Softfloat detail menu


Items Descriptions
Condition No. / Softfloat condition number. By default, ten numbers can be set.
Comment Pressing the input key with the cursor on line 1 enables entering a comment. The comment
text can be specified in the same way as on other menus.
Exec start ratio Line 2 specifies the point where the softfloat function is enabled if the SOFTFLOAT [n] is used
as an auxiliary motion instruction. See ”Softfloat function effective range” for the softfloat start
ratio.

-6-
B-83284EN-2/01 3. SOFTFLOAT FUNCTION

Items Descriptions
Soft ratio Soft ratio for each axis can be specified on line 3 and the subsequent lines. The soft ratio
indicates how strongly the axis resist external forces. It is specified between 0% and 100%. A
soft ratio of 100% corresponds to being the most flexible.
Whether the softfloat function is enabled/disabled can be specified for each axis on line 3 and
the subsequent lines. Setting the cursor at the rightmost end (enabled/disabled setting
position) of each line causes the F4 (ENABLE) and F5 (DISABLE) keys to appear.
Use these keys to specify whether to enable/disable the softfloat function.
NOTE Pressing the F2 (NUMBER) key selects another page of the detail menu for other
conditions.

10 Axis8 Soft ratio : 0 % DISABLE


11 Axis9 Soft ratio : 0 % DISABLE

[ TYPE ] NUMBER LIST JOINT CART >

10 Axis8 Soft ratio : 0 % DISABLE


11 Axis9 Soft ratio : 0 % DISABLE

[ TYPE ] NUMBER LIST ENABLE DISABLE >

Enable/Disable When this item is set to DISABLE, softfloat cannot be executed.


Coordinate Select one of WORLD, USER, and TOOL.
NOTE If the remote TCP is used, USER indicates the coordinate system on the remote TCP.
X direction etc. Set the softness on or around the X-, Y-, and Z-axes. If Soft Rat increases, the spring constant
decreases, allowing the robot to move with less force.
If Soft Tol increases, the maximum force and moment applied by the robot in that direction
decreases, allowing the robot to move with less force.
The difference between Soft Rat and Soft Tol is illustrated below.

Force or moment

Soft Tol

Soft Rat

Position deviation

Operation area limitation


Operation area during Cartesian softfloat is able to be limited.
If he position error between TCP of motion command and actual TCP in the frame which is set in softfloat
schedule exceeds the threshold, alarm occurs and robot stops.
For safety, following system variables have to be set to avoid interference before the program which
executes Cartesian softfloat runs.
To reflect new value of these system variables, power OFF/ON is necessary.
-7-
3. SOFTFLOAT FUNCTION B-83284EN-2/01

• $param_group[g].$cb_mass =1.0 :enable limitation


• $param_group[g].$cb_ix =Threshold in X direction [mm]
(0.0 occurs alarm)
• $param_group[g].$cb_iy =Threshold in Y direction [mm]
(0.0 occurs alarm)
• $param_group[g].$cb_iz =Threshold in Z direction [mm]
(0.0 occurs alarm)

3.2 PUSHOUT SOFTFLOAT


Pushout softfloat is suitable for the extraction of workspaces in sync with hydraulic extrusion.
Each softfloat type has the following features.
Each softfloat schedule can select different softfloat type.
- Joint softfloat
Softness around robot joint can be specified.
- Cartesian softfloat
Softness along Cartesian coordinate and around Cartesian coordinate can be specified.
It is good at contouring and face matching with robot motion.
- Pushout softfloat
In this softfloat, force and moment necessary become smaller than current Cartesian softfloat.
Softness around Cartesian coordinate can not be specified.
This softfloat does not work in where J5 = -3.5~+3.5 [deg].
It is good at following the pushout.

Procedure 3-1 Procedure to show pushout softfloat screen


Select “PUSH” in softfloat detail screen.
Step
1 Push MENU key to show screen list.
2 Select “6 SETUP”.
3 Push F1, [TYPE] key to show screen list.
4 Select “softfloat”. Softfloat list screen will be shown.

SETUP/SOFTFLOAT
Group1 10/10
No Type Start(%) Comment
1 CART ********[ ]
2 CART ********[ ]
3 CART ********[ ]
4 CART ********[ ]
5 CART ********[ ]
6 CART ********[ ]
7 CART ********[ ]
8 CART ********[ ]
9 CART ********[ ]
10 CART ********[ ]

[ TYPE ] GROUP DETAIL

5 Set cursor on schedule No. to set pushout softfloat, and push F3, DETAIL key.
6 Push NEXT key until “PUSH” are shown on function key line.
7 Push F4, PUSH key. Detail screen of pushout softfloat will be shown.

-8-
B-83284EN-2/01 3. SOFTFLOAT FUNCTION
SOFTFLOAT(PUSHOUT)
Group1 1/6
1 Schedule No.[10]:[**************]
2 Enable/Disable:[DISABLE]
3 Coordinate:[WORLD]
Motion Type
4 J1:[PUSH ] J2:[PUSH ] J3:[PUSH ]
5 J4:[PUSH ] J5:[PUSH ] J6:[PUSH ]
6 Soft direction:[None ]

[ TYPE ] NUMBER LIST

Procedure 3-2 Procedure to set pushout softfloat


In addition to the setup of Cartesian softfloat, “motion type” and “soft direction” should be set. “Soft rat”
and ”soft tol” are removed.

Step
1 Set “enable/disable” and “coordinate” same as current softfloat.
2 Set “soft direction” to the direction which should be soft in the schedule No.
3 Set motion type of the axis which should move passively following the force from outside to “FREE”.
Only one axis can be “FREE” in one group.

SOFTFLOAT(PUSHOUT)
Group1 4/6
1 Schedule No.[10]:[**************]
2 Enable/Disable:[ENABLE]
3 Coordinate:[WORLD]
Motion Type
4 J1:[PUSH ] J2:[PUSH ] J3:[FREE ]
5 J4:[PUSH ] J5:[PUSH ] J6:[PUSH ]
6 Soft direction:[None ]

[ TYPE ] NUMBER LIST

Example)
When J1 is 90 degree, to make X direction of world coordinate soft, motion type of J1 should be “FREE”.

-9-
3. SOFTFLOAT FUNCTION B-83284EN-2/01

Procedure 3-3 Procedure to use pushout softfloat


Procedure is the same as that of joint/Cartesian softfloat function.

Step
1 In edit screen, open the program to use pushout softfloat.
2 Push NEXT key until [INST] is shown on function key.
3 Teach softfloat[…] instruction on the line to start pushout softfloat.
4 Set softfloat schedule No. of pushout softfloat in the index of softfloat[…] instruction.
5 Teach softfloat end instruction on the line to stop pushout softfloat.

1: J P[1] 100% FINE


2: SOFTFLOAT[10]
3: WAIT 10.00(sec)
4: SOFTFLOAT END

3.3 KNOWHOW OF SOFTFLOAT


Timing to start softfloat
Force from outside should not be added when softfloat starts.
If softfloat starts with not only gravity force but also force from outside, robot will move above or below,
and “Stop/Move error excess” or “Softfloat time out” alarm will occur.
For example in pushout handing application, you should make program as that softfloat starts before hand
closed.
This know-how is effective in all softfloat of joint, Cartesian and pushout.

Bad example)
Force from outside will be added if
1: CALL HNDCLOSE softfloat starts after hand closed.
2: SOFTFLOAT[10]
3: WAIT 10.00(sec)
4: SOFTFLOAT END

Good example)
Force from outside will not be
1: SOFTFLOAT[10]
added if softfloat starts before hand
2: CALL HNDCLOSE
closed.
3: WAIT 10.00(sec)
4: SOFTFLOAT END

Know-how to improve softness


Even with the same softfloat schedule setting, the softness of softfloat differs depending on the direction of
the motion just before softfloat starts.
It is caused by the feature of that softfloat is more soft to move in the same direction to the motion just
before and less soft to move in the opposite direction to the motion just before.
So, you should make program as that just before softfloat starts, move robot a little in the direction opposite
to the direction robot should move by softfloat, then move robot back to the position to start softfloat. The
distance necessary is 1~2[mm] or longer.
For example, when you want to start softfloat to move in +X direction in P[1], you should add the following
motion instruction between the motion instruction to P[1] and softfloat instruction.

- 10 -
B-83284EN-2/01 3. SOFTFLOAT FUNCTION

To go back to P[1] in the next line,


1: J P[1:sflt start pos] 100% FINE move opposite direction in this line.
2: L P[2:-x1mm] 100mm/sec CNT0 INC
3: L P[3:+x1mm] 100mm/sec CNT0 INC Move back to P[1] in the the direction
4: SOFTFLOAT[10] to move by softfloat.
5: CALL HNDCLOSE
6: WAIT 10.00(sec)
7: SOFTFLOAT END

By this method, robot will become more soft to move +X direction and less soft to move –X direction.
This know-how is effective in all softfloat of joint, Cartesian and pushout.
Bad example) Good example)

Motion direction just Motion direction just


before softfloat before softfloat =P[3] INC

P[1] P[1]

Direction to move by softfloat Direction to move by softfloat

3.4 KNOWHOW OF CARTESIAN SOFTFLOAT


Softness along Cartesian coordinate and around Cartesian coordinate can be specified.
It is good at contouring and face matching with robot motion.
Know-how to use it effectively will be explained.

All application common know-how


- Layout and tool selection
Area in 10~20[%] inside from the outside border of mechanical unit operation area is recommended.
And select the tool as short as possible.

Area suitable
for softfloat
Mechanical unit
operation area

- Schedule setup
Set 100% in “soft rat” of the direction or rotation that you want to make soft.
Adjust “soft tol” of pushing direction to limit force to avoid pushing with too large force.

- Velocity teaching
In softfloat with robot motion, robot may keep still with small velocity taught.
Teach the velocity more than about 100 mm/s.

Contouring application know-how


- Schedule setup
Example) In case pushing Z direction

- 11 -
3. SOFTFLOAT FUNCTION B-83284EN-2/01

Soft Rat Soft Tol


X direction 100 % 0 %
Make X, Y direction soft.
Y direction 100 % 0 %
Z direction 0 % 70 % Limit force to avoid pushing with too large force.
X rotation 0 % 0 %
Y rotation 0 % 0 % Make rotation hard.
Z rotation 0 % 0 %

- TCP setup
In application which should keep tool direction, TCP should be X, Y and Z =0 when softfloat starts.
By this, difference between soft direction and hard direction appears well.

Example)
Tool frame whose X=0, Y=0, Z=0 and
1: UTOOL_NUM=9
W, P, R are the same as actual tool
2: SOFTFLOAT[10]
3: UTOOL_NUM=2
TCP set as actual tool
4: WAIT 10.00(sec)
5: SOFTFLOAT END

Face matching application know-how


- Schedule setup
Example) In case pushing Z direction

Soft Rat Soft Tol


X direction 0 % 0 %
Make X, Y direction hard.
Y direction 0 % 0 %
Z direction 0 % 70 % Limit force to avoid pushing with too large force.
X rotation 100 % 0 %
Y rotation 100 % 0 % Make rotation soft.
Z rotation 100 % 0 %

- TCP setup
Use the tool frame set as actual tool. You don’t have to change TCP when softfloat starts.
Select the tool as short as possible. X, Y and Z direction can’t become hard enough if tool is long.
Moment of the direction to match face is necessary. Select tool that can generate moment of the
direction to match face by pushing even with largest orientation mismatch.

3.5 CAUTIONS / RESTRICTIONS


When using the softfloat function, observe the following cautions / restrictions.
● Restrictions imposed when the softfloat function is enabled
- It is not guaranteed that the robot always follows the taught path.
- The taught route changes according to override.
- The required operation time may be prolonged compared with normal operation.
● The softfloat function is disabled automatically when:
- Program execution starts.
- Program execution ends.
- The program stops due to an alarm that turns off the servo.
- Jog feed is performed with the program at pause.
- The program is restarted after the cursor is moved manually with the program at pause.
- Backward execution is performed.
- Power is applied.
- 12 -
B-83284EN-2/01 3. SOFTFLOAT FUNCTION
● If the program is caused to pause, then restarted, the states of the softfloat function (such as
enabled/disabled and the softfloat start ratio) are set to the conditions which exist before the program is
caused to pause. However, the softfloat function is disabled if the operation listed above is done.
● The softfloat function cannot be enabled by any method other than the SOFTFLOAT instruction.
● When the softfloat function is enabled, the robot moves in the CNT 0 mode (no position check is
made) even if FINE has been specified as motion statement positioning mode.
● When the softfloat function is enabled, if an external force causes the robot to move beyond a certain
distance, the following servo alarms occur.
- If the robot is at rest :
[SRVO-023 Stop error excess(G:i A:j)]
- If the robot is operating :
[SRVO-024 Move error excess(G:i A:j)]
● If an attempt is made to enable the softfloat function with a brake applied, the brake is released
automatically before the function is enabled.
● When the softfloat function is enabled, brake control is ineffective.
● If the motion group mask in a program is [*,*,*,*,*,*,*,*] (there is no motion group), when the
program issues instructions with the softfloat function, the following alarm occurs:
[INTP-216 (program name, line number) Invalid value for group number]
● The range of motion with the softfloat function enabled should be minimized. A weight balance may
vary depending on the softfloat ratio and travel distance, thus shifting the vertical axis upward or
downward.
The range of motion with an auxiliary motion instruction issued should also be minimized for the same
reason. In addition, the speed of motion should be kept low.
● When the softfloat function is enabled, follow-up processing is normally performed for individual
motion instructions.
This processing is enabled or disabled according to system variable $SFLT_DISFUP.

$SFLT_DISFUP Default value: FALSE


- If FALSE, follow-up is performed at the start of each motion instruction in the program.
- If TRUE, follow-up is not performed for individual motion instructions in the program.
● This function cannot be used with arc tools.
● Force from outside should not be added when softfloat starts, when softfloat ends and when follow up
is doing.
If softfloat starts with not only gravity force but also other force from outside, robot will move above
or below, and “Stop/Move error excess” or “Softfloat time out” alarm will occur.
In such cases, please modify TP program by changing position data or by adding wait instruction as
softfloat starts and ends without other force.

NOTE
Follow-up
With the softfloat function, external forces are applied to the robot so that it
operates at positions slightly different from those specified. When the external
force is removed after the completion of the operation, the robot usually attempts
to move back to a specified point abruptly. Follow-up prevents this abrupt
movement.

- 13 -
4. CONTINUOUS ROTATION FUNCTION B-83284EN-2/01

4 CONTINUOUS ROTATION FUNCTION


The continuous rotation function allows continuous and limitless rotation about the final axis or an
additional rotation axis of the robot in one direction.

NOTE
For example, the ”final axis” refers to the J6 axis of a robot having six axes.

For example, this function is useful for rotating those devices that require continuous rotation, such as
conveyers, pumps, and grinders, about a robot axis or additional rotation axis.
To specify the items for this function, such as disable/enable, use the SETUP Continuous Turn screen. The
start and stop of continuous rotation are directed from a program.
Before this function can be used, the setup necessary for continuous rotation must be performed.
Only a single continuous rotation axis can be allocated for each operation group. The axis must satisfy the
following conditions:
● Final axis of the robot
● Final axis of the built-in additional rotation axes
● Any of the normal additional rotation axes
● Final axis of the independent additional axes
The continuous rotation axis must satisfy the following mechanical conditions:
● The mechanism must allow continuous operation (must be free of obstacles such as stoppers).
● The gear reduction ratio (value of Gear Ratio (motor) / Gear Ratio (axis) on the setting screen, the
speed of the motor required for one rotation about the axis) must be 4000 or less.
To use this function, an option (continuous rotation function) is required.

Function
When this function is enabled, the axis allocated as a continuous rotation axis allows limitless rotation. The
angle on the axis is, therefore, represented by a relative degree within +180°, not by an absolute one. For
example, the figure below shows rotation from 0° to 200° in the positive direction. The angle on the axis
after the rotation is -160°, not 200°.

0 deg

+200 deg

-160 deg

Fig. 4 (a) Angle on the continuous rotation axis

When this function is enabled but continuous rotation is not performed (see the next page for an explanation
of how to use continuous rotation), rotation is performed about the continuous rotation axis from the current
angle to the target angle in whichever direction incurs the least amount of motion. (Usually, the direction of
rotation about the axis is determined with the relationship between the current and target angles.)
This ”shorter-way operation” is effective in reducing the cycle time.

- 14 -
B-83284EN-2/01 4. CONTINUOUS ROTATION FUNCTION

Current angle

Shorter way

Target angle Target angle

Fig. 4 (b) Shorter-way operation


Setup
To use the function,
● Perform setup on the SETUP Continuous Turn screen, and
● Specify the start/stop of continuous rotation with the operation add instruction, ”continuous rotation
speed instruction.”

Procedure 4-1 Setting up the continuous rotation function


Step
1 Press MENU. The screen menu appears.
2 Select SETUP.
3 Press F1, [TYPE]. The screen switching menu appears.
4 Select Cont Turn. The continuous rotation setup screen appears.

SETUP Continuous Turn


1/4
1 Group: 1
2 Continuous Turn Axis Num : 0
3 Gear Ratio(motor) : 0
4 Gear Ratio(axis) : 0

[ TYPE ] DONE

5 Specify the necessary items using the numeric and other keys.
● To disable the continuous rotation function, set ”0” for Continuous Turn Axis Num.
● The maximum value for Gear Ratio (motor) and Gear Ratio (axis) is 2147483646.
● Set the operation group number for Group. If a different number (number of the operation group
to be viewed) is entered in this field, the other settings are changed to those of the operation
group.
6 After specifying the items, press F4, DONE. The following message appears.
“WARNING : Must COLD start to take effect.”
7 Turn off the power, then turn it back on with a cold start.

The items on the continuous rotation setup screen are described below.

- 15 -
4. CONTINUOUS ROTATION FUNCTION B-83284EN-2/01

Table 4 Contents of the continuous rotation setup screen


Item Description
Group Set the operation group number.
Continuous Turn Axis Num Set the number of the continuous rotation axis. If ”0” is set, this function is disabled for
the operation group.
Gear Ratio (motor) Set the gear reduction ratio for the continuous rotation axis set for the above item. A
Gear Ratio (axis) value from 0 to 2147483646 can be set for each item. The items must, however,
satisfy the following:
Gear Ratio (motor) ÷ Gear Ratio (axis) ≤ 4000

Using the function


After setting up the continuous rotation axis, specify the start point of continuous rotation using the
operation add instruction, ”continuous rotation speed instruction.”
The following ”continuous rotation speed instruction” is supported. The ”continuous rotation speed
instruction” must be specified as an operation add instruction.
* The specification method is the same as that for other operation add instructions, and is therefore omitted.
(→ Subsection 5.3.4, ”Teaching an Additional Motion Instruction” in FANUC Robot series R-30iB
CONTROLLER OPERATOR’S MANUAL (Basic Operation) (B-83284EN))
● Continuous rotation speed instruction CTV i
* where i = –100 to 100, which is the ratio of the rotation axis speed to the maximum axis speed (%)

Starting continuous rotation


Continuous rotation is started as soon as an operation statement with a continuous rotation speed instruction
added is started.

Stopping continuous rotation


Continuous rotation is stopped when the first operation statement with no continuous rotation speed
instruction added is started since a continuous rotation speed instruction was started.
When continuous rotation is stopped, the operation on the other axes for the same operation group also
terminates. The robot, therefore, decelerates even if the positioning format for the previous operation is
CNT.
The robot starts decelerating to stop on the continuous rotation axis after it has completely stopped on the
other axes. At this time, the robot is not necessarily at the specified position on the continuous operation
axis. Thus, the synchronization of the operation on the continuous rotation axis with the operation on the
other axes (including those for other operation groups) is lost.
If an operation statement is specified next, the robot rotates in the same direction as the previous continuous
rotation direction to move to the specified position.

Notes
● Continuous rotation continues even if logic instructions (instructions other than those in operation
statements) are executed.
● During program playback, the turn number for the continuous rotation axis is ignored, and is always
assumed to be ”0”.
● The turn number for the continuous rotation axis at a point specified when this function is enabled is
always stored as ”0”.
● If the rotation axis speed for a continuous rotation speed instruction is specified as ”0,” continuous
operation is not performed. If an operation statement is specified next, shorter-way operation is
performed on the continuous rotation axis. This feature is useful if continuous rotation about the
continuous rotation axis is to be stopped temporarily but temporary stop of the robot due to the end of
the continuous rotation is to be avoided. (See the next section, ”Example of use.”)
● In single-step execution (both forward and backward), continuous rotation is not performed even if a
continuous rotation speed instruction is added; shorter-way operation is performed.
● Continuous rotation stops due to a hold. If program execution is subsequently restarted, if the target
position has already been reached on axes other than the continuous rotation axis, continuous rotation
- 16 -
B-83284EN-2/01 4. CONTINUOUS ROTATION FUNCTION
is not performed. If the target position has not been reached on axes other than the continuous rotation
axis, continuous rotation is restarted.
● Continuous rotation about the continuous rotation axis is possible from jog feed.

Example of use
The following shows an example of using the continuous rotation speed instruction.

1:J P[1] 100% FINE


2:J P[2] 100% CNT100 CTV100
3:J P[3] 100% FINE
4:J P[4] 100% CNT100 CTV100
5:J P[5] 100% FINE CTV0
6:J P[6] 100% FINE
7:J P[7] 100% FINE CTV100
8:WAIT 100.0sec
9:J P[8] 100% FINE

● Description of lines 1 to 3:
During operation from P[1] to P[2], continuous operation is performed. Although the positioning
format specified on line 2 is ”CNT”, the robot decelerates (stops temporarily on all axes at the start of
the operation on line 3) because a continuous rotation speed instruction is not added to the next line,
line 3.
● Description of lines 4 to 6:
Continuous rotation starts as soon as the execution of line 4 starts. Because the rotation axis speed
specified with the continuous rotation speed instruction on line 5 is 0, continuous rotation stops
temporarily at the start of the execution of line 5. Because continuous rotation continues, the
positioning format CNT100 on line 4 is valid and the robot does not decelerate.
When line 6 is executed, shorter-way operation is performed on the continuous rotation axis.
● Description of lines 7 to 9:
Continuous rotation starts at the start of operation on line 7. Continuous rotation continues during the
execution of the wait instruction (logic instruction) on line 8.
The robot stops temporarily on all axes at the start of operation on line 9, and continuous rotation
stops.

Notes/restrictions
Note the following when using this function:
● When continuous rotation is to be performed on a robot axis or built-in additional axis, The X and Y
components of the tool coordinate system must both be 0. (Only the Z-axis component can have a
value other than 0.)
If this condition is not satisfied, the path of linear or circular or circle arc motion cannot be guaranteed
in normal motion other than continuous rotation.
● This function cannot be used together with the following functions:
- Asynchronous addition axis speed instruction. (The synchronous additional axis speed
instruction can be used.)
- Arc sensor
- Weaving
- TCP speed estimation function (sealing flow rate control)
- Cannot use Incremental instruction (INC) for Continuous rotation axis. (Can use only for
non-continuous rotation axis or the continuous rotation axis is disabled case)
● This function automatically updates the mastering data (for the continuous rotation axis only)
according to the amount of rotation about the continuous rotation axis. Thus, previously recorded
mastering data may not match the current mastering data.
After this function is disabled, it is not necessary to perform mastering.
● When this function is disabled, the current position on the continuous rotation axis may fall outside the
stroke limits. If this occurs, move the position on continuous rotation axis within the stroke limits
using jog feed or a program.

- 17 -
4. CONTINUOUS ROTATION FUNCTION B-83284EN-2/01

● If, on a multi-group system, the settings on the SETUP Continuous Turn screen are changed and the F4,
DONE key is pressed, it is necessary to set system variable
$PARAM_GROUP[group].$SV_OFF_ENB[i] (where i is an axis number) to FALSE to disable break
control for all the axes for all operation groups before turning the power back on with a cold start.
● On a multi-group system, even if there are multiple continuous rotation axes, separate continuous
rotation speeds cannot be specified for them.
● At the end of continuous rotation, one or more rotations about the continuous rotation may be
performed to ensure smooth deceleration and stop. (The amount of rotation differs depending on the
acceleration/deceleration constant.)
● Even during backward execution (single-step execution), shorter-way operation is performed on the
continuous rotation axis. If, therefore, forward step execution and backward execution are performed
sequentially in an operation statement with the movement angle being very close to 180°, rotation may
be performed about the continuous rotation axis in the same direction during the forward and
backward executions.
• Original Path Resume feature is disabled when continuous turn loaded. Even if system variable
($SCR.$ORG_PTH_RSM) set enabled, feature is disabled when cycle power.
• If continuous turn axis is in any of the motion groups, Cycle Time Priority feature for Cartesian motion
and Constant Path feature are disabled in all groups.
- If Cycle Time Priority feature for Cartesian motion is disabled, the cycle time is possible to be
longer.
- If Constant Path feature is disabled in servogun system, alarm “SVGN-149 CP enable is
required” is possible to be posted.
• Following setup allows Cycle Time Priority feature for Cartesian motion and Constant Path feature to
work in those motion groups that DOES NOT involve continuous turn axis.
(1) Set bit22 of $SCR.$UPDATE_MAP1 TRUE [ Example 1 ].
(2) Set $SCR_GRP[g].$USE_TBCART = TRUE.
(3) Set $GROUP[g].$CARTFLTRENB = TRUE.
(4) Set $CPCFG.$CP_ENABLE = TRUE (Default TRUE).
(5) Reset bit 0, bit4 and bit10 of $SCR.$MB_DSBL_MSK False [ Example 2 ].
(6) If $SGSYSCFG.$LIN_DST_ENB and $SGSYSCFG.$LIN_DST_ENB are changed for SVGN-149
countermeasure, reset TRUE.
(7) Cycle power.

[ Example 1 ] In case of $SCR.$UPDATE_MAP1 = 52983009


• Set the value binary.
11 0010 1000 0111 0100 1110 0001 (0x32874E1)
• Set bit22 TRUE.
11 0110 1000 0111 0100 1110 0001 (0x36874E1)
• Reset the value decimal and update the system variable.
57177313

[ Example 2 ] In case of $SCR.$MB_DSBL_MSK = 3089


• Set the value binary
1100 0001 0001 (0xC11)
• Set bit0, bit4 and bi10 FALSE.
1000 0000 0000 (0x800)
• Reset the value decimal and update system variable.
2048

Note that above setting affects robot behavior such as path and cycle time.
Please execute program carefully after above setup.

• Note that following limitations when Constant Path feature is allowed to work.

- 18 -
B-83284EN-2/01 4. CONTINUOUS ROTATION FUNCTION
- Continuous turn does not work in Robot ( except Independent axis and Positioner ). If
continuous turn axis is set in robot, “CPMO-004 Feature not Supported (G:%d^2) ” alarm is
posted at starting program.
- Only Independent axis and Positioner are allowed to involve continuous turn axis.
- For multi group program, if continuous turn axis is in any of the groups, alarm “CPMO-004
Feature not Supported (G:%d^2) ” is posted. To use continuous turn in a program, please separate
groups that involve continuous turn axis from groups that DOES NOT involve continuous turn
axis. [ Example 3 ]

[ Example 3 ] Following configuration is supported to use continuous turn in Constant Path and
Cycle Time Priority enabled program.
• G1 : Robot, G2 : Servogun, G3 : Continuous turn axis (Independent axis with 1 axis)
- Program 1 : G1 + G2 ( Robot + Servogun ) --- < 1, 1, * >
- Program 2 : G3 ( Continuous Turn axis ) only --- < *, *, 1 >
• In Program1, Constant Path and Cycle Time Priority are active.
• In Program2, Continuous Turn can work in a program.
• To combine Constant Path and Cycle Time Priority with continuous turn, run Program2 in
Program1 concurrently.

- 19 -
5. OPERATION GROUP DO OUTPUT FUNCTION B-83284EN-2/01

5 OPERATION GROUP DO OUTPUT


FUNCTION
The operation group DO output function outputs information about the operation groups that are capable of
jog feed, and about the operation groups of the programs being executed/temporarily stopped, to an external
device with a digital output signal (DO) or robot output signal (RO). This allows devices other than the
teach pendant to recognize the currently effective operation groups, thus improving safety. This function is
effective when the multi-group option is used.

Function
This function allows the allocation of two DOs (jog signal and program signal) to a single operation group.
For DOs, any digital output signals or robot output signals of the robot can be used.
Each allocated DO signal turns on/off under the following conditions:

- Jog signals
When the teach pendant is disabled, all signals turn off.
When the teach pendant is enabled, the signal for the currently selected operation group on the teach
pendant turns on, while the other signals turn off.

- Program signals
Regardless of whether the teach pendant is enabled or disabled, the signal for the operation group of
the program currently being executed/temporarily stopped turns on. (The signal does not turn on when
the program is merely selected.)
If other programs are being executed/temporarily stopped with the multitask option, the signals for the
operation groups of these programs also turn on.

Setup
To set up the operation group DO output function, use the [SETUP Motion DO] screen.
To change the signal number for an operation group, move the cursor to the signal number and enter a new
value.

Motion group DO
1/3
Group No. PROGRAM JOG
1 RO[ 1] RO[ 2]
2 DO[ 3] DO[ 3]
3 RO[ 0] RO[ 0]

[ TYPE ] RO DO

To change the type of a signal, position the cursor to the signal number and press function key F4, RO or F5,
DO.
To disable a signal, set the number of the signal to 0.
The same signal can be set for both the program and jog signals for the same operation group. In this case,
the output signal is the OR of the two signals. That is, the signal turns on if either the program or jog signal
turns on. (The signal turns off only if both the program and jog signals turn off.)
- 20 -
B-83284EN-2/01 5. OPERATION GROUP DO OUTPUT FUNCTION

Example of using this function with the multitask option


This section explains the operation of this function when a subprogram call or the multitask option is used.
The output program signal is the OR of the signals for all the operation groups of the program currently
being executed or temporarily stopped.
If a program without an operation group calls a program having an operation group by using a subprogram
call, the signal for the operation group of the subprogram turns on only while the subprogram is being
executed. (The signal does not turn on when the main program without an operation group is merely
selected/executed.)
If the execution instruction of the multitask function is to start another program that operates the robot (the
main program that has the execution instruction does not have an operation group), the signal for the
operation group of the program started by the execution instruction does not turn on when the main program
is merely selected/executed. The program signal turns on when the program that operates the robot is
actually started.
Consider the following three example programs:

PROGRAM MAIN : Operation group[*,*,*,*,*,*,*,*]


1:RUN PRG A
2:RUN PRG B
:

PROGRAM PRG A : Operation group[1,*,*,*,*,*,*,*]


1:J P[1] 100% FINE
:

PROGRAM PRG B : Operation group[*,1,*,*,*,*,*,*]


1:L P[1] 500mm/sec CNT100
:

Program MAIN, which does not have an operation group, starts PRG A and PRG B having operation groups
by using execution instructions. PRG A uses operation group 1 and PRG B uses operation group 2.
● The program signals for the groups do not turn on when program MAIN is merely selected.
● When line 1 of MAIN is executed, PRG A is started and the signal for operation group 1 turns on.
● When line 2 of MAIN is executed, PRG B is started and the signal for operation group 2 turns on.
● When PRG A and PRG B terminates, the respective signals for operation groups 1 and 2 turn off.

Notes
Note the following when using this function:
● The same signal cannot be defined for different operation groups.
● While a program is being executed/temporarily stopped, the type (DO or RO) and number of the
program signal cannot be changed.

- 21 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

6 AUTOMATIC ERROR RECOVERY


FUNCTION
6.1 OVERVIEW
This section consists of the following items:

a) Automatic error recovery function


b) Resume program function
c) Fast exit/entry feature
d) RESUME_PROG instruction
e) RETURN_PATH_DSBL instruction
f) MAINT_PROG instruction
g) Setting of the automatic error recovery function
h) Manual operation screen of the resume program function
i) Execution of the resume program from the teach pendant and test mode
j) Changing conditions for executing the resume program
k) Other specifications and restrictions
l) Warnings (Be sure to read this section for safety.)

This function is an optional function. (A05B-2600-J664)

6.2 AUTOMATIC ERROR RECOVERY FUNCTION


Robots are sometimes stopped by various alarms even during production. If a robot is stopped, it is
necessary to perform recovery operation then resume the program that was originally running. For example,
suppose that a robot is performing arc welding. An alarm due to an arc start failure may be issued, stopping
the robot. In such a case, the operator must jog the robot to a safe position to, for example, cut the end of the
wire or clean the nozzle, then resume the original program.
The automatic error recovery function is provided to support automatic operation of the above sequence.

The automatic error recovery function consists of the following two functions.
• Resume program function
• Fast exit/entry feature

6.3 RESUME PROGRAM FUNCTION


This function is a function to remove the cause of the alarm by using the resume program when the robot are
stopped by the alarm when being producing, and to resume the original program.

- 22 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION

Robot
WIRE_CUT.TP

WELD.TP
1 4
2 3
Work
Wire cutting

2-3: Welding path


×: Position where arc start failed
WELD.TP: Original program
WIRE_CUT.TP: Resume program

Fig.6.3 Resume program function

In the example shown above, the robot is operated by executing WELD.TP to perform welding along the
path from 2 to 3.
Assume that an arc start failure occurs at the arc start position 2. At this time, if the resume program function
is used, another program called the resume program, which is WIRE_CUT.TP in this case, can be started at
the next start signal input. After this program terminates, another start signal input resumes the original
program. If the resume operation function is then enabled (which is set on the welding system setting
screen), the robot automatically returns to the original position where the robot was stopped, then the
original program is resumed. If the return distance for resume operation is set, the robot returns from the
stop position by the set distance, then the original program is resumed. If no arc is produced, a scratch start
takes place.

6.4 FAST EXIT/ENTRY FEATURE


If an alarm is issued during operation in a complicated environment, the robot moves from the stopped
position to the taught point to execute the resume program. In this case, the robot may interfere with part of
a workpiece or peripheral devices. After recovery operation, similar interference may occur when an
attempt is made to execute the original program. The fast exit/entry feature is provided to avoid the
possibility of such interference.

WIRE_CUT.TP

Robot
WELD.TP
1 4
2 3
Work
Wire cutting

2-3: Welding path


×: Position where alarm is issued
WELD.TP: Original program
WIRE_CUT.TP: Maintenance program

Fig.6.4 Fast exit/entry feature

- 23 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

In the example shown above, the robot is operated by executing WELD.TP to perform welding along the
path from 2 to 3. At this time, when the alarm of something is issued between positions 2-3 and the robot
stops, the fast exit/entry feature automatically does the following operation.
1 From the stopped position, disable arc welding, and execute only the move statements of the original
program up to the end.
2 Execute a maintenance program, which is WIRE_CUT.TP in this case.
3 Disable arc welding, execute the move statements of the original program from the beginning to move
the robot to the stopped position.
4 Enable arc welding, and resume the original program operation.

Thereafter, in this manual, above-mentioned operation 1-4 is called FFR sequence (Fast Fault Recovery
sequence).

6.5 RESUME_PROG INSTRUCTION


The resume program function executes a resume program defined in an original program, in lieu of the
original program. The resume program instructions to define the resume program are the following five
instructions. RESUME_PROG[1] can be used in single-task/multi-task, and RESUME_PROG[2-5] can be
used in the multi-task.
• RESUME_PROG[1:Comment] : For Single-task/Multi-task
• RESUME_PROG[2:Comment] : For Multi-task
• RESUME_PROG[3:Comment] : For Multi-task
• RESUME_PROG[4:Comment] : For Multi-task
• RESUME_PROG[5:Comment] : For Multi-task
To erase the defined resume program, use the following instruction.
• CLEAR_RESUME_PROG

To teach the resume instructions, press F1, [INST] to display the related menu, then select “Program
control” from the menu.

Instruction 1 Instruction 2 Instruction 3


1 Registers 1 Skip 1 Tool_Offset
2 I/O 2 Payload 2 LOCK PREG
3 IF/SELECT 3 Offset/Frames 3 MONITOR/MON. END
4 WAIT 4 Multiple control 4 String
5 JMP/LBL 5 Program control 5
6 CALL 6 MACRO 6
7 Miscellaneous 7 FOR/ENDFOR 7
8 --next page-- 8 --next page-- 8 --next page--

RESUME_PROG[1:Comment]
The program name defined by RESUME_PROG[1:Comment] is registered as a resume program when
RESUME_PROG[1:Comment] is executed in original program, and when the alarm is issued while
defining the resume program, the resume program is executed.

RESUME_PROG[1:Comment] = WIRE_CUT

Resume program name


Resume program comment

Instruction number

- 24 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION
To use the resume program instructions, the following option is needed.
• To use the RESUME_PROG[1-5], the Auto error recovery function (A05B-2600-J664) is needed.
• In addition, to use the RESUME_PROG[2-5], the following options is needed.

RESUME_PROG[2]
Dual Arm Control A05B – 2600 – J605

RESUME_PROG[2-5]
Multi UOP interface function A05B – 2600 – J964

When the instruction number of RESUME_PROG[ ] is defined, it is necessary to accord the following
conditions.
TP Program that can be started by RESUME_PROG[1:Comment]
START#1/PROD_STAR#1 of UOP
TP Program that can be started by RESUME_PROG[2:Comment]
START#2/PROD_STAR#2 of UOP
TP Program that can be started by RESUME_PROG[3:Comment]
START#3/PROD_STAR#3 of UOP
TP Program that can be started by RESUME_PROG[4:Comment]
START#4/PROD_STAR#4 of UOP
TP Program that can be started by RESUME_PROG[5:Comment]
START#5/PROD_STAR#5 of UOP

For instance, in multi-task, the RESUME_PROG[3:Comment] can be used only by the program that can be
started by START#3/ PROD_STAR#3 of UOP.
The RESUME_PROG[2-5] cannot be used in the single-task because it is for multi-task. Therefore, use the
RESUME_PROG[1:Comment] in the single-task.

To define the resume program instructions, there is the following conditions.


• Multiple resume program instructions cannot be defined in the original program.
• The resume program instructions cannot be defined in the resume/maintenance program.
• A resume program instruction the same instruction number cannot be executed by the plural. For
instance, the RESUME_PROG[5] cannot be executed by other programs while the resume program is
already being defined by the RESUME_PROG[5]. However, the RESUME_PROG[1-4] can be
executed by other programs.
• The resume program instructions cannot be defined in the programs executed by the RUN instruction.

CLEAR_RESUME_PROG
When the CLEAR_RESUME_PROG is executed, the resume program defined by RESUME_PROG[ ] is
erased. Therefore, even if the alarm is issued after the CLEAR_RESUME_PROG is executed, the resume
program is not executed. Moreover, the CLEAR_RESUME_PROG is effective only in the program in
which the CLEAR_RESUME_PROG is defined. For instance, in multi task, when the
CLEAR_RESUME_PROG is executed in the program in which the RESUME_PROG[1] is defined, only
the resume program defined by the RESUME_PROG[1] is erased. At this time, the resume program defined
by the RESUME_PROG[2-5] is never erased.

The resume program is erased also when:


• Backward execution is performed in original program.
• The cursor line is changed manually in original program.
• The original program terminates.

- 25 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

CAUTION
When the resume program is erased while the resume program is pausing, the
resume program cannot be restarted. The original program restarts from the
pause position of the resume program.

The following programs are examples that use the RESUME_PROG[2] and the
CLEAR_RESUME_PROG.

WELD.TP
Motion group: [*,1,*,*,*,*,*,*]
WELD
1/7
1: J P[1] 40% FINE
2: RESUME_PROG[2:WIRE CUT]=WIRE_CUT
3: L P[2] 300mm/sec FINE
: Arc Start[2]
4: L P[3] 50mm/sec FINE
: Arc End[2]
5: CLEAR_RESUME_PROG
6: J P[4] 40% FINE
[End]

POINT TOUCHUP >

WIRE_CUT.TP
Motion group: [*,1,*,*,*,*,*,*]
WIRE_CUT
1/8
1: L P[1] 50mm/sec FINE
2: J P[2] 50% FINE Wire feed
3: WO[4]=PULSE, 0.5sec
4: L P[3] 20mm/sec FINE
5: L P[4] 50mm/sec FINE Wire cut
6: WAIT 0.8sec
7: J P[5] 50% FINE
[End]

POINT TOUCHUP >

In the above program example, the WIRE_CUT.TP is taught in the second line of the WELD.TP and is
erased in the fifth line. Since the WIRE_CUT.TP is defined as the resume program between the third to
fourth lines, it is executed as the resume program. In the sixth and subsequent lines, the resume program has
been erased, so the resume program is not executed.

6.6 RETURN_PATH_DSBL INSTRUCTION


In arc tool systems, the resume operation function is generally enabled. With this function enabled, return to
the original stop position is always performed then arc is produced when the original program resumes after
the resume program terminates. In some systems, however, return to the original stop position should not
sometimes be performed. For example, when the nozzle touch state is input through DI, a resume program
is used to relieve the torch slightly in the torch direction. If the resume operation function operates, return to
the original stop position is performed even when relieve operation has been performed. As a result, the
nozzle touch state is observed again. In such a case, the resume operation function needs to be kept enabled,
but it should be disabled only after the execution of the resume program.
This can be performed with the RETURN_PATH_DSBL instruction. By using this instruction within the
resume program, the resume operation function can be disabled only when the original program is resumed
next. This instruction is valid only when it is executed within a resume program; the instruction is invalid
when executed in a program other than the resume program.
- 26 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION
The RETURN_PATH_DSBL instruction appears in the menu containing the RESUME_PROG[]
instruction.

Instruction 1 Instruction 2 Instruction 3


1 Registers 1 Skip 1 Tool_Offset
2 I/O 2 Payload 2 LOCK PREG
3 IF/SELECT 3 Offset/Frames 3 MONITOR/MON. END
4 WAIT 4 Multiple control 4 String
5 JMP/LBL 5 Program control 5
6 CALL 6 MACRO 6
7 Miscellaneous 7 FOR/ENDFOR 7
8 --next page-- 8 --next page-- 8 --next page--

RETURN_PATH_DSBL
The RETURN_PATH_DSBL is effective only in the resume program in which the
RETURN_PATH_DSBL is defined. For instance, in multi task, when RETURN_PATH_DSBL is executed
in the resume program defined by RESUME_PROG[1], only the resume operation function of the original
program in which RESUME_PROG[1] is defined becomes invalid. The resume operation function of the
original program in which other RESUME_PROG[2-5] is defined is effective.

The following programs are examples that use the RETURN_PATH_DSBL. The RETURN_PATH_DSBL
instruction is valid only when it is taught within resume program. Use this instruction as shown in the
sample program given below. If the instruction is taught as shown below, the resume operation function
does not operate when the original program resumes after the resume program terminates, even if the
resume operation function is enabled.

WELD.TP
Motion group: [*,1,*,*,*,*,*,*]
WELD
1/7
1: J P[1] 40% FINE
2: RESUME_PROG[2:WIRE CUT]=WIRE_CUT
3: L P[2] 300mm/sec FINE
: Arc Start[2]
4: L P[3] 50mm/sec FINE
: Arc End[2]
5: CLEAR_RESUME_PROG
6: J P[4] 40% FINE
[End]

POINT TOUCHUP >

WIRE_CUT.TP
Motion group: [*,1,*,*,*,*,*,*]
WIRE_CUT
1/9
1: L P[1] 50mm/sec FINE
2: J P[2] 50% FINE Wire feed
3: WO[4]=PULSE, 0.5sec
4: L P[3] 20mm/sec FINE
5: L P[4] 50mm/sec FINE Wire cut
6: WAIT 0.8sec
7: J P[5] 50% FINE
8: RESUME_PATH_DSBL
[End]

POINT TOUCHUP >

- 27 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

6.7 MAINT_PROG INSTRUCTION


The fast exit/entry feature automatically does the following operation.
1 From the stopped position, disable arc welding, and execute only the move statements of the original
program up to the end.
2 Execute a maintenance program.
3 Disable arc welding, execute the move statements of the original program from the beginning to move
the robot to the stopped position.
4 Enable arc welding, and resume the original program operation.
Thereafter, in this manual, above-mentioned operation 1-4 is called FFR sequence (Fast Fault Recovery
sequence).
The maintenance program instructions to define the maintenance program are the following five
instructions. MAINT_PROG[1] can be used in single-task/multi-task, and MAINT_PROG[2-5] can be
used in the multi-task.
• MAINT_PROG[1:Comment] : For Single-task/Multi-task
• MAINT_PROG[2:Comment] : For Multi-task
• MAINT_PROG[3:Comment] : For Multi-task
• MAINT_PROG[4:Comment] : For Multi-task
• MAINT_PROG[5:Comment] : For Multi-task

The MAINT_PROG[ ] instruction appears in the menu containing the RESUME_PROG[ ] instruction.

Instruction 1 Instruction 2 Instruction 3


1 Registers 1 Skip 1 Tool_Offset
2 I/O 2 Payload 2 LOCK PREG
3 IF/SELECT 3 Offset/Frames 3 MONITOR/MON. END
4 WAIT 4 Multiple control 4 String
5 JMP/LBL 5 Program control 5
6 CALL 6 MACRO 6
7 Miscellaneous 7 FOR/ENDFOR 7
8 --next page-- 8 --next page-- 8 --next page--

MAINT_PROG[1:Comment]

MAINT_PROG [1:Comment] = WIRE_CUT

Maintenance program name

Maintenance program comment

Instruction number

The program name defined by MAINT_PROG[1:Comment] is registered as a maintenance program when


MAINT_PROG[1:Comment] is executed in original program, and when the alarm is issued while defining
the maintenance program, the FFR sequence is executed.

To use the maintenance program instructions, the following option is needed.


• To use the MAINT_PROG[1-5], the Auto error recovery function (A05B-2600-J664) is needed.
• In addition, to use the MAINT_PROG[2-5], the following options is needed.

MAINT_PROG[2]
Dual Arm Control A05B – 2600 – J605

- 28 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION
MAINT_PROG[2-5]
Multi UOP interface function A05B – 2600 – J964

When the instruction number of MAINT_PROG[ ] is defined, it is necessary to accord the following
conditions.
TP Program that can be started by START#1/PROD_STAR#1 of UOP MAINT_PROG[1:Comment]
TP Program that can be started by START#2/PROD_STAR#2 of UOP MAINT_PROG[2:Comment]
TP Program that can be started by START#3/PROD_STAR#3 of UOP MAINT_PROG[3:Comment]
TP Program that can be started by START#4/PROD_STAR#4 of UOP MAINT_PROG[4:Comment]
TP Program that can be started by START#5/PROD_STAR#5 of UOP MAINT_PROG[5:Comment]

For instance, in multi-task, the MAINT_PROG[3:Comment] can be used only by the program that can be
started by START#3/ PROD_STAR#3 of UOP.
The MAINT_PROG[2-5] cannot be used in the single-task because it is for multi-task. Therefore, use the
MAINT_PROG[1:Comment] in the single-task.

When the FFR sequence is completed, the following messages are displayed on the teach pendant.

MOTN-431 Fast fault recovery 1 When the FFR sequence executed by the MAINT_PROG[1]
is completed.
MOTN -432 Fast fault recovery 2 When the FFR sequence executed by the MAINT_PROG[2]
is completed.
MOTN -433 Fast fault recovery 3 When the FFR sequence executed by the MAINT_PROG[3]
is completed.
MOTN -434 Fast fault recovery 4 When the FFR sequence executed by the MAINT_PROG[4]
is completed.
MOTN -435 Fast fault recovery 5 When the FFR sequence executed by the MAINT_PROG[5]
is completed.

To define the maintenance program instructions, there is the following conditions.


• Multiple maintenance program instructions cannot be defined in the original program.
• The maintenance program instructions cannot be defined in the resume/maintenance program.
• A maintenance program instruction the same instruction number cannot be executed by the plural. For
instance, the MAINT_PROG[5] cannot be executed by other Programs while the maintenance
program is already being defined by the MAINT_PROG[5]. However, the MAINT_PROG[1-4] can
be executed by other Programs.
• The maintenance program instructions cannot be defined in the programs executed by the RUN
instruction.

The maintenance program is erased also when:


• Backward execution is performed in original program or maintenance program.
• The cursor line is changed manually in original program or maintenance program.
• The original program or the maintenance program terminates.

CAUTION
When the definition of the maintenance program is deleted while executing the
FFR sequence, the maintenance program or the original program cannot be
restarted by the FFR sequence.

The following programs are examples that use the MAINT_PROG[2].

- 29 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

WELD.TP
Motion group: [*,1,*,*,*,*,*,*]
WELD
1/6
1: J P[1] 40% FINE
2: MAINT_PROG[2:WIRE CUT]=WIRE_CUT
3: L P[2] 300mm/sec FINE
: Arc Start[2]
4: L P[3] 50mm/sec FINE
: Arc End[2]
5: J P[4] 40% FINE
[End]

POINT TOUCHUP >

WIRE_CUT.TP
Motion group: [*,1,*,*,*,*,*,*]
WIRE_CUT
1/8
1: L P[1] 50mm/sec FINE
2: J P[2] 50% FINE Wire feed
3: WO[4]=PULSE, 0.5sec
4: L P[3] 20mm/sec FINE
5: L P[4] 50mm/sec FINE Wire cut
6: WAIT 0.8sec
7: J P[5] 50% FINE
[End]

POINT TOUCHUP >

In the above program example, the WIRE_CUT.TP is taught in the second line of the WELD.TP. Since the
WIRE_CUT.TP is defined as the maintenance program between the third to final lines, it is executed as the
maintenance program. And when the execution of the WELD.TP ends, the definition of the maintenance
program is automatically deleted.

6.8 SETTING OF THE AUTOMATIC ERROR RECOVERY


FUNCTION
On the setting screen of the automatic error recovery function, the following settings can be made:
• Instruction number : Selecting the instruction number
Error recovery function common setup
• Error Recovery Function : Enabling/disabling the automatic error recovery function
• Approval DI Index No.* : Defining the recovery switch DI
• Incomplete End DO Index No.* : Defining the incomplete end DO
• Reset DI Index No.* : Defining the incomplete-end reset DI
• Automatic Start Feature : Enabling/disabling the alarm-time automatic start feature
• Alarm setting screen : Enabling/disabling the alarm code monitoring function
• DI_alarm setting screen : Defining the automatic error recovery alarm conditions
Resume program type recovery
• RESUME comment : Defining the resume program comment
• Status DO Index No.* : Defining the resume program information DO
• Auto Start Max Count : Setting the maximum number of automatic start repetitions
• Auto Start Max Count R[ ] : Setting the automatic start count register
Maintenance program type recovery
• MAINT comment : Defining the maintenance program comment
• Fast Exit/Entry Feature : Enabling/disabling the fast exit/entry feature
• Dry Run Exit/Entry : Enabling/disabling dry run exit/entry operation
- 30 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION

• MAINT DO Index No.* : Defining the FFR sequence information DO

(* Set this to zero if you do not want to use this feature.)

To display the setting screen of the automatic error recovery function, first press MENU to display the
screen menu, then select ”6 SETUP”. Then, press F1, [TYPE] to display the screen switching menu, then
select Err recovery.
[MENU] → 6 SETUP → Err recovery

Error Recovery Set


1/14
1 Instruction number: 1

Error recovery function common setup


2 Error recovery function: DISABLED
3 Approval DI index No.: 0
4 Incomplete end DO index No.: 0
5 Reset DI index No.: 0
6 Automatic start (global): DISABLED

RESUME PROGRAM type recovery


7 RESUME comment[********************]
8 Status DO index No.: 0
9 Auto start Max count: 2
10 Auto start count R[] No.: 0

MAINTENANCE PROGRAM type recovery


11 MAINT comment [********************]
12 Fast exit/entry feature: DISABLED
13 Dry run exit/entry: DISABLED
14 MAINT DO index No.: 0

[ TYPE ] ALARM DIALARM

To alarm setting screen To DI_alarm setting screen

Selecting the instruction number


This screen can be displayed by each instruction number of the resume program instruction and the
maintenance program instruction. It is possible to switch to a setup screen of other instruction numbers by
changing this item.

For multi-task
For instance, instruction number 1-3 can be selected by this item in the system
that can use RESUME_PROG[1-3] and MAINT_PROG[1-3].

Error recovery function common setup

Enabling/disabling the automatic error recovery function


This item enables or disables the automatic error recovery function. When the automatic error recovery
function is enabled, and neither monitored alarm codes nor the recovery switch DI are defined, the resume
program is always executed at restart from the suspended state (except when the resume program
information DO is off). And, when the automatic error recovery function and the fast exit/entry feature are
enabled, and neither monitored alarm codes nor the recovery switch DI are defined, the FFR sequence is
always executed at restart from the suspended state(except when the FFR sequence information DO is off).
When this item is disabled, the resume program and the FFR sequence is not executed.

- 31 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

For multi-task
This item can be set by each instruction number.

Defining the recovery switch DI


To use the recovery switch DI function, define an DI number. After the number is defined, power must be
turned off then back on.
With this function, the operator can choose whether to execute the resume program or the FFR sequence or
not at the time of restart from the suspended state by using a peripheral device. When DI is OFF, neither the
resume program nor the FFR sequence are executed. If this signal number is not defined, this function is
disabled.
The specifications of the recovery switch DI function are listed below.

Table.6.8 (a) Specifications of the recovery switch DI function


Recovery switch DI Execution of resume program or FFR
DI number definition DI status
function status sequence at restart
0 Disabled  Executed
Valid number defined On Executed
Enabled
Off Not executed

CAUTION
To continue a resume program at program restart after the resume program is
suspended, input the on state of the recovery switch DI. If it is off, the original
program is executed.

For multi-task
This item can be set by each instruction number.

Defining the incomplete end DO


When an incomplete end DO number is defined, the incomplete end DO is output if a certain forced
termination alarm is issued during execution of the resume program or the maintenance program. The
output incomplete end DO is turned off by the next start signal input.
Before inputting the start signal, the operator must check the incomplete end DO signal status. If this signal
is on, the resume program or the maintenance program terminates in the middle, so the robot is not in a
specified position.

CAUTION
When the resume program or the maintenance program terminates in the middle,
and the start signal is input, the robot might do action not predictable. Therefore,
before inputting the start signal, check the program name and the program start
line that will be executed with the next start signal. And, if an interfering object
exists, jog the robot to a position where interfering object doesn't exist, then input
the start signal.

This signal may be added to the PLC start signal acceptance conditions.
If this signal is set to 0, this function is disabled.

For multi-task
This item can be set by each instruction number.

- 32 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION

Start signal
Resume program terminated midway

Execution of
resume program

Incomplete end DO

Fig.6.8 (a) Incomplete end DO output timing chart

Defining the incomplete-end reset DI


When the incomplete end DO is included in the PLC start signal acceptance conditions, the operator
requires a means to turn off the incomplete end DO externally. Inputting the incomplete-end reset DI signal
turns off the incomplete end DO. When the incomplete end DO is output, the operator must first check the
program name and the program start line that will be executed with the next start signal. And, if an
interfering object exists, jog the robot to a position where interfering object doesn't exist, input the
incomplete-end reset DI, then input the start signal.
If this signal is set to 0, this function is disabled.

For multi-task
This item can be set by each instruction number.

Enabling/disabling the alarm-time automatic start feature


When this item is enabled, and an alarm defined in the monitored alarm codes is issued, the resume program
or the FFR sequence are automatically executed without outputting the alarm signal and stopping the robot.
When the resume program has terminated, the original program is resumed automatically by this function
(In the fast exit/entry feature, when the maintenance program has terminated, the original program is
resumed automatically by FFR sequence.). During then, the operator need not input the start signal.
Because the alarm signal is not output, other robots are not stopped when multiple robots are operating. The
robot for which the alarm was issued moves by itself to the recovery station, and after recovery work, the
original program is resumed.
When this item is disabled, and an alarm defined in the monitored alarm codes is issued, the program
outputs an alarm signal and stops running. Input of the start signal executes the defined resume program or
FFR sequence. In the resume program function, after the resume program terminates, another start signal
input restarts the suspended original program. Another start signal to resume an original program need not
be input for the fast exit/entry feature. The original program is resumed automatically by FFR sequence.

For multi-task
- This item cannot be set by each instruction number. When this item is enabled in
either of instruction number, this function of all the instruction numbers are
automatically enabled.
- Even if this function is enabled, this function is not executed when the alarm
defined in the monitored alarm codes is issued while the alarm is being issued in
other robots. In that case, the program outputs an alarm signal and stops running.
Input of the start signal executes the defined resume program or FFR sequence.

Enabling/disabling the alarm code monitoring function


When this function is enabled, and only when an alarm defined in the monitored alarm codes is issued, the
resume program or the FFR sequence are executed. When the monitored alarm code is defined, and the
resume program or the maintenance program are defined, this function is enabled automatically. If no alarm
code is defined, this function is disabled. In this case, before the suspended original program is resumed, the

- 33 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

resume program or the FFR sequence are always executed (except when the recovery switch DI function is
enabled).
To define alarm codes to be monitored, press the F2, ALARM key. A screen for defining alarm codes is
displayed.

Error Recovery Setup:1


1/10

1 Monitored alarm code 53013


2 Monitored alarm code 53018
3 Monitored alarm code 12278
4 Monitored alarm code 0
5 Monitored alarm code 0
6 Monitored alarm code 0
7 Monitored alarm code 0
8 Monitored alarm code 0
9 Monitored alarm code 0
10 Monitored alarm code 0

[ TYPE ] DONE HELP

When a defined alarm code is issued, and a program is suspended, the resume program or FFR sequence are
executed at restart.
Each alarm code consists of an alarm code ID and alarm number. The alarm code ID indicates the type of
alarm. For an arc start failure alarm, for example, the following alarm code is indicated:

ARC – 013 Arc Start failed = 53 013


ID (53) Number ID Number

For alarm numbers, refer to FANUC Robot series R-30iB CONTROLLER OPERATOR’S MANUAL
(Alarm Code List) (B-83284EN-1).

Up to ten alarm codes can be defined as standard. To change the maximum number of alarm codes (up to 20
codes) that can be defined, change system variable $RSMPRG_SV.$NUM_ALARM, turn the power off
then on.

Instruction number System variable


1 $RSMPRG_SV.$NUM_ALARM
2 $RSMPRG_SV2.$NUM_ALARM
3 $RSMPRG_SV3.$NUM_ALARM
4 $RSMPRG_SV4.$NUM_ALARM
5 $RSMPRG_SV5.$NUM_ALARM

Pressing the F5, HELP key displays the following screen:

Error Recovery Setup:1


HELP Arrows to scroll, PREV to exit

Typical alarm code IDs are specified as


follows.

PROG : 3, SRVO : 11, INTP : 12


PRIO : 13, MOTN : 15, SPOT : 23
SYST : 24, PALT : 26, LASR : 50
SEAL : 51, ARC : 53, MACR : 57
SENS : 58, COMP : 59

- 34 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION
If the following conditions are met, the alarm code monitoring function is disabled:
• The recovery switch DI is off.
• There is no alarm code defined.
• The resume program or the maintenance program are not defined in the program currently being
executed.
• The resume program or the FFR sequence is executing.

The specifications of the alarm code monitoring function are listed below.

Table.6.8 (b) Specifications of the alarm code monitoring function


Alarm code Issuance of defined Execution of resume program or
Alarm code definition
function status alarm FFR sequence at restart
0 Disabled  Executed
At least one alarm code Issued Executed
Enabled
is defined Not issued Not executed

CAUTION
Defined alarms must have the suspension alarm attribute. Do not define any
warning alarm as an alarm code.

For multi-task
This item can be set by each instruction number.

Resume program is being executed

Execution of
resume program Original program is being suspended
Execution of original
program

Alarm code DSBL ENBL DSBL ENBL DSBL


monitoring function
↑ ↑
Execution of Execution of
RESUME_PROG[ ] CLEAR_RESUME_PROG

Fig.6.8 (b) Enabling/disabling the alarm code monitoring function in the resume program function

- 35 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

FFR sequence is being executed

Execution of FFR Maintenance program is being executed


sequence

Execution of
maintenance program
Original program is being suspended
Execution of original
program

DSBL ENBL ENBL


Alarm code DSBL
monitoring function

Execution of
MAINT_PROG[ ]

Fig.6.8 (c) Enabling/disabling the alarm code monitoring function in the fast exit/entry feature

Defining automatic error recovery alarm conditions


By inputting a defined digital input signal, an automatic error recovery alarm can be issued. When this
alarm is defined for the alarm-time automatic start feature, the resume program or the FFR sequence can be
executed automatically by inputting the digital input signal.
As the message for an automatic error recovery alarm, a message defined for a user alarm can be used. The
alarm severity can be set to either LOCAL or GLOBAL selectively. When LOCAL is selected, the alarm is
issued only for a program that defines the resume program or the maintenance program. The status of a
digital input signal to be monitored can be set by selecting the signal type from among DI, RI, and WI,
changing the signal number, and selecting the trigger status between on and off.
Define the conditions for issuing an automatic error recovery alarm on the definition screen that is displayed by
pressing F3, DI_ALARM.

Error Recovery Setup


1/3
UALM Severity Type Value
1 [ 1] LOCAL DI[ 3] ON
2 [ 5] GLOBAL RI[ 6] OFF
3 [ 10] LOCAL DI[ 2] ON

[ TYPE ] DONE HELP

On this screen, the items shown below can be set. The alarm code of the automatic error recovery alarm is
12278.
• User alarm number
When the automatic error recovery alarm is issued, the user alarm message with the set number is
displayed as an alarm message. When this item setting has been changed, the new setting becomes
effective immediately.
• Alarm severity
This item can choose whether the automatic error recovery alarm is a local alarm or global alarm.
When LOCAL is set, the automatic error recovery alarm is issued only for the program that defines the
resume program or the maintenance program. If there is no program that defines the resume program
or the maintenance program, the alarm is regarded as a global alarm. When this item setting has been
changed, the new setting becomes effective immediately.
• Signal type
Choose the type of the digital signal for issuing the automatic error recovery alarm from among DI, RI,
and WI. When this item setting has been changed, the power must be turned off then back on for the
new setting to become effective.

- 36 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION

• Signal number
Set the number of the digital signal for issuing the automatic error recovery alarm. When this setting
has been changed, the power must be turned off then back on for the new setting to become effective.
• Detection signal status
Set the status of the digital signal for issuing the automatic error recovery alarm to ON (high) or OFF
(low). When this setting has been changed, the power must be turned off then back on for the new
setting to become effective.

The standard number of automatic error recovery alarm conditions is three. This number can be increased to
up to five by changing system variable $RSMPRG_SV.$NUM_DI_ALM. After this system variable has
been changed, the power must be turned off then back on for the new setting to become effective.

For multi-task
• This item cannot be set by each instruction number. When this item is enabled in
either of instruction number, this function of all the instruction numbers are
automatically enabled.
• When the alarm severity issues the automatic error recovery alarm of LOCAL
alarm when there are multiple programs that define the resume program or the
maintenance program, the automatic error recovery alarm of the number of
programs is issued.
• Define the automatic error recovery alarm code in all the instruction numbers that
can be used when the automatic start feature is enabled, and the automatic error
recovery alarm code is defined in the monitored alarm codes. When LOCAL alarm
is defined in the automatic error recovery alarm only by the limited instruction
number, even if the LOCAL alarm is issued while multiple programs are executed
at the same time, the automatic start feature might not be able to be executed.

Resume program type recovery

Defining the resume program comment


A comment can be specified for the resume program instruction. Move the cursor to this item and press the
enter key. The screen enters comment input mode. A resume program comment is used to describe
additional information to be displayed on the program edit screen together with the resume program
instruction.

For multi-task
This item can be set by each instruction number.

Defining the resume program information DO


When the alarm code monitoring function and recovery switch DI function are both disabled, the resume
program is always executed at the time of restart after the original program is suspended. When both the
functions are enabled, it is difficult to determine whether the original program or resume program is to be
executed at restart.
The resume program information DO is on only when the resume program is executed at restart. When the
signal is off, the original program is executed at restart. With this function, the operator can know which
program is to be executed next.
If the following conditions are met, the resume program information DO goes on:
• The automatic error recovery function is enabled.
• Not the single step mode.
• The resume program is defined in the original program.
• The original program has a motion group.
• The original program is suspended, and the resume program is not yet completed.
- 37 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

• There is no optional function that disables the automatic error recovery function. See “Other
specifications and restrictions.”
• The user condition parameter is true. See “Conditions for executing the resume program.”

RESUME_PROG instruction User condition parameter


RESUME_PROG[1:Comment] $AUTORCV_ENB
RESUME_PROG[2:Comment] $AUTORCVENB2
RESUME_PROG[3:Comment] $AUTORCVENB3
RESUME_PROG[4:Comment] $AUTORCVENB4
RESUME_PROG[5:Comment] $AUTORCVENB5

• When the teach pendant is enabled:


- The operation mode (on the automatic error recovery manual operation screen) is TP_TEST.
• When the teach pendant is disabled:
- The operation mode (on the automatic error recovery manual operation screen) is AUTO.
- The remote conditions are met when system variable $RMT_MASTER is 0.
- There is no alarm code defined. If any alarm code is defined, the alarm code is issued.
- The recovery switch DI function is disabled. If this function is enabled, the recovery switch DI
signal is on.

CAUTION
1. While the resume program is being executed, single step operation cannot be
performed.
2. Even if the resume program information DO is on, the resume program is not
executed when backward execution of the original program is performed.
3. Backward execution in the resume program is possible.
4. The update cycle period for the resume program information DO is 300 ms. When
the conditions listed above have been changed, wait 300 ms before program
execution.

Start signal
Conditions are not met
Resume Program
Information DO

Conditions are met Execution of Execution of original


resume program program

Fig.6.8 (d) Resume program information DO output timing chart

For multi-task
This item can be set by each instruction number.

Setting the maximum number of automatic start repetitions


When a defined alarm is issued, the alarm-time automatic start feature automatically executes the resume
program, then resumes the original program. If the defined alarm is issued again when the original program
is resumed, the automatic start feature functions again. For example, the automatic start feature is activated
by an alarm indicating an arc start failure, then the same alarm is issued again when the original program has
resumed.
To prevent such an endlessly repeated condition, set the maximum number of automatic start repetitions.

- 38 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION
The number of times the resume program is started repeatedly is counted internally. If the count exceeds the
set value, “INTP-134 Over automatic start Max counter” is issued, and the resume program information DO
is turned off at the same time. If this occurs, eliminate the cause of the alarm issued in the original program.
Then input the start signal.

CAUTION
The number of repetitions counted internally is cleared when the execution of a
move statement has terminated and when the CLEAR_RESUME_PROG
instruction has been executed.

For multi-task
This item can be set by each instruction number.

Defining the automatic start count register


As mentioned above, the resume program may be executed several times repeatedly by the automatic start
feature. When the automatic start count register is defined, a different program can be executed as the
resume program each time the resume program is executed. For example, when the resume program is
executed for the first time by the automatic start feature, the register value is 1. When an alarm is issued
again during execution of the original program, and the resume program is then executed again by the
automatic start feature, the register value is 2. By executing a different subprogram in the resume program
according to the register value, different resume program operation can be performed each time the
repetition count is incremented.

CAUTION
When the resume program is executed by other than the automatic start feature,
the register value is 0. Therefore, a resume program must be created so that the
same subprogram is called when the register value is 0 and when the value is 1.

For multi-task
This item can be set by each instruction number.

Maintenance program type recovery


Defining the maintenance program comment
A comment can be specified for the maintenance program instruction. Move the cursor to this item and
press the enter key. The screen enters comment input mode. A maintenance program comment is used to
describe additional information to be displayed on the program edit screen together with the maintenance
program instruction.

For multi-task
This item can be set by each instruction number.

Enabling/disabling the fast exit/entry feature


This item enables or disables the fast exit/entry feature.
When the automatic error recovery function and the fast exit/entry feature are enabled, and neither
monitored alarm codes nor the recovery switch DI are defined, the FFR sequence is always executed at
restart from the suspended state (except when the FFR sequence information DO is off).
When this item is disabled, the FFR sequence is not executed.

For multi-task
This item can be set by each instruction number.

- 39 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

Enabling/disabling dry run exit/entry operation


In the fast exit/entry feature, this item specifies whether exit from the stopped position and return to the
stopped position after maintenance program execution are to be performed at dry run speed. This item can
be set only for instruction number 1 in the single-task.

For multi-task
This item can be set by each instruction number.

Defining the FFR sequence information DO


When the alarm code monitoring function and recovery switch DI function are both disabled, the FFR
sequence is always executed at the time of restart after the original program is suspended. When both the
functions are enabled, it is difficult to determine whether the original program or the FFR sequence is to be
executed at restart.
The FFR sequence information DO is on only when the FFR sequence is executed at restart. And, because
the FFR sequence is not executed though the original program is executed at restart when the signal is off,
the maintenance program is not executed after the original program is completed. With this function, the
operator can know the FFR sequence is to be executed next.
If the following conditions are met, the FFR sequence information DO goes on:
• The automatic error recovery function is enabled.
• Not the single step mode.
• The maintenance program is defined in the original program.
• The resume program information DO is not on.
• The FFR sequence is being executed.
• The fast exit/entry feature is enabled.
• When the teach pendant is disabled:
- The remote conditions are met when system variable $RMT_MASTER is 0.
- There is no alarm code defined. If any alarm code is defined, the alarm code is issued.
- The recovery switch DI function is disabled. If this function is enabled, the recovery switch DI
signal is on.

CAUTION
1 Perform neither backward execution nor the single step operation while the FFR
sequence is executed.
2 The update cycle period for the FFR sequence information DO is 300 ms. When
the conditions listed above have been changed, wait 300 ms before program
execution.
3 When the teach pendant is enabled, the FFR sequence is not executed.

Start signal
Conditions are not met
FFR Sequence
Information DO

Execution of FFR Execution of original


Conditions are met Sequence program

Fig.6.8 (e) FFR sequence information DO output timing chart

For multi-task
This item can be set by each instruction number.

- 40 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION

6.9 MANUAL OPERATION SCREEN OF THE RESUME


PROGRAM FUNCTION
A manual operation screen is supported for the resume program function (The fast exit/entry feature is not
supported.). To display the manual operation screen, first press MENU to display the screen menu, then
select ”3 MANUAL FCTNS”. Then, press F1, [TYPE] to display the screen switching menu, then select Err
recovery.
[MENU] → 3 MANUAL FCTNS → Err recovery

Error Recovery MNFC


1/1

Instruction number: 1
Error recovery DO status: OFF
Original program:
[WELD ]
Defined resume program:
[WIRE_CUT ]
RESUME comment: [Wire cutting ]

1 Operation mode: AUTO

[ TYPE ] DETAIL NUMBER [CHOICE]

Error Recovery MNFC


1/11

Instruction number: 1
1 Auto error recovery enabled: Yes
2 PAUSED & resume prog incomp: No
3 Program has motion group: No
4 Not in single step mode: No
5 Resume program is defined: No
6 Mode is(AUTO ): Yes
7 Approval DI is ON: None
8 Defined alarm occurs: None
9 Remote when $RMT_MASTER is 0: None
10 No disabled options: None
11 User condition param enable: Yes

[ TYPE ] DONE

Selecting the instruction number


The instruction number of the resume program instruction is indicated. It is possible to switch to a manual
operation screen of other instruction numbers by changing this item.

Resume program information DO status


The resume program information DO status is indicated. Even when the resume program information DO is
not defined, its status can be indicated. From this information, the operator can know which program, the
resume program or original program, is to be executed.

Original program
The name of the original program that defines the resume program is indicated.

Defined resume program


The name of the resume program defined in the currently selected program is indicated. From this
information, the operator can check whether a wrong resume program is defined or not.

- 41 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

CAUTION
If a wrong program is defined as the resume program, the robot operation is
unpredictable. Therefore, check that the resume program is correct.

Resume program comment


The comment specified for the resume instruction is indicated.

Operation mode
There are three operation modes. The standard setting is AUTO. When the display changes from this screen
to another, AUTO is automatically set again.

Operation mode Explanation


AUTO This mode should be set when the teach pendant is disabled. When this mode is
selected, the resume program is executed according to the status of the alarm code
monitoring function and recovery switch DI function. If this mode is selected when the
teach pendant is enabled, the resume program is not executed.
NO_EXEC When this mode is selected, the resume program information DO is always off.
Therefore, in this mode, the resume program is not executed.
TP_TEST This mode should be set when the teach pendant is enabled.
When this mode is selected, and when the teach pendant is enabled, the resume
program is always executed regardless of the status of the alarm code monitoring
function or error recovery switch DI function.

Displaying detail conditions of the resume program information DO

When F2, DETAIL is pressed on the manual operation screen of the automatic error recovery function,
detail conditions related to the resume program information DO status are displayed. When all items on the
detail screen are set to Yes or None, the resume program information DO is turned on. When the resume
program information DO is off, and you cannot find the cause of the DO being off, check this screen.

Auto error recovery enabled


This item indicates whether this function is enabled or disabled on the setting screen of the automatic error
recovery function.

PAUSED & resume prog incomp


This item indicates the following conditions:
• The original program must be in the suspended state.
• A resume program must be defined in the original program, and the execution of the resume program
must not have been completed.

Program has motion group


This item indicates that the selected program has a motion group.

Not in single step mode


This item indicates that the single step mode is not set.
The single step LED on the teach pendant indicates the single step status of the original program. Even
when the single step key is pressed while the resume program is suspended, and the single step LED goes on,
the resume program information DO is held on. This is because the LED indicates that the original program
is in single step mode; the resume program is not in single step mode.

Resume program is defined


This item indicates that a resume program is defined in the original program.

Mode is (xxxx)
- 42 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION
This item indicates that the operation mode is suitable for the current status.
For example, when the teach pendant is disabled, “AUTO” is indicated in the portion “xxxx.” When the
teach pendant is enabled, “TP_TEST” is indicated.

Approval DI is ON
This item indicates the recovery switch DI status. When the DI number is not defined, or when the teach
pendant is enabled, “None” is indicated.

Defined alarm occurs


This item indicates that an alarm code is defined, and that alarm is issued.
When no alarm code is defined, or when the teach pendant is enabled, “None” is indicated.

Remote when $RMT_MASTER is 0


This item indicates that remote conditions are met. This function is enabled only when the teach pendant is
disabled, system variable $RMT_MASTER is 0, and system variable $RSMPRG_SV.$CHK_REMOTE is
true.

No disabled options
There are options that cannot be used together with the automatic error recovery function. This item
indicates whether such options are present or not.

User condition param enable


This item indicates the status of the user condition parameter. For how to use the user condition parameter,
see “Changing conditions for executing the resume program.”

6.10 EXECUTION OF THE RESUME PROGRAM FROM THE


TEACH PENDANT AND TEST MODE
Normally, the automatic error recovery function is used when production is started with the teach pendant
disabled. When checking the resume program during teaching, set the operation mode to TP_TEST on the
manual operation screen. In TP_TEST mode, the resume program can be executed regardless of the
recovery switch DI status and whether a defined alarm is issued or not. A manual operation screen is not
supported for the fast exit/entry feature.

6.11 CHANGING CONDITIONS FOR EXECUTING THE RESUME


PROGRAM
To use resume program execution conditions other than alarm codes, use user condition parameter and the
status monitoring function.

RESUME_PROG instruction User condition parameter


RESUME_PROG[1:Comment] $AUTORCV_ENB
RESUME_PROG[2:Comment] $AUTORCVENB2
RESUME_PROG[3:Comment] $AUTORCVENB3
RESUME_PROG[4:Comment] $AUTORCVENB4
RESUME_PROG[5:Comment] $AUTORCVENB5

For example, to execute the resume program when R[1] is 1, create the following monitor program, and start
MONIT1.CH on the system monitor screen.

- 43 -
6. AUTOMATIC ERROR RECOVERY FUNCTION B-83284EN-2/01

MONIT1.CH DORESUME.TP
1:WHEN R[1]=1,CALL DORESUME 1:$AUTORCV ENB=1
2:WHEN R[1]<>1,CALL NORESUME 2:MONITOR MONIT3

MONIT2.CH NORESUME.TP
1:WHEN R[1]=1,CALL DORESUME 1:$AUTORCV ENB=0
2:MONITOR MONIT2

MONIT3.CH
1:WHEN R[1]<>1,CALL NORESUME

The start conditions can be changed by modifying the monitor program. For how to use the status
monitoring function, refer to the operator’s manual on the status monitoring function. In this case, the
automatic start function is unavailable.

6.12 OTHER SPECIFICATIONS AND RESTRICTIONS


Automatic error recovery function
• The automatic error recovery function supports the power failure handling function.
• The automatic error recovery function is disabled when one of the following options is loaded:
- Arc sensor
- AVC (TIG arc length control)
- Root path memorization
- Line tracking
- Soft float
- Continuous turn
- Remote TCP

Resume program function


• While the resume program is being executed, single step operation is not performed. Single step mode
is valid only for the original program.
• When the cursor line is changed and executed while the original program is suspended, the resume
program is not executed.
• While the resume program is being executed, the resume program execution status cannot be checked
on the program edit screen. On the edit screen, the suspended original program is displayed.
• The resume program instructions cannot be defined in the program executed by the RUN instruction.
• When the program execution is done after the cursor line in the original program is moved while the
resume program is suspended, the popup menu to confirm the movement of the cursor is displayed.
When Yes is selected for the question on the popup menu, the original program is executed starting
from the new cursor line. When No is selected, the resume program is restarted.
• Programs other than the original program cannot be selected by PNSTROBE signal while the resume
program is executed.
• When PNSTROBE signal has been on when the resume program starts, the alarm is issued. Turn off
PNSTROBE signal when the resume program starts.
• When programs other than the original program are selected while executing a original program, the
original program is automatically selected again at the same time as the resume program's
starting/ending.
• Never teach the arc and weaving instructions in the resume program. If an arc instruction is executed in
the resume program while arc welding is being performed by the original program, alarm is issued. In
addition, weaving operation is not performed within the resume program.

- 44 -
B-83284EN-2/01 6. AUTOMATIC ERROR RECOVERY FUNCTION

Fast exit/entry feature


• When an original program is a single step mode, the FFR sequence is not started.
• When the cursor line is changed and executed while the original program is suspended, the FFR
sequence is not executed.
• The maintenance program instructions cannot be defined in the program executed by the RUN
instruction.
• Programs other than the maintenance program cannot be selected by PNSTROBE signal while the
FFR sequence is executed.
• When PNSTROBE signal has been on when the FFR sequence starts/ends, the alarm is issued. Turn
off PNSTROBE signal when the FFR sequence starts/ends.
• When programs other than the original program are selected while executing a original program, the
original program is automatically selected again at the same time as the FFR sequence 's starting.

6.13 WARNINGS (Be sure to read this section for safety.)


When using the automatic error recovery function, observe the following safety precautions:
• If a wrong program or a program causing wrong operation is defined as a resume program or a
maintenance program, the robot moves in a direction the operator cannot predict. Define a correct
program.
• Before inputting the start signal and before pressing the execution key on the teach pendant, for safety,
check the resume program information DO status to confirm whether the original program or resume
program is to be started.
• Before inputting the start signal and before pressing the execution key on the teach pendant, for safety,
check the FFR sequence information DO status to confirm whether the original program or
maintenance program is to be started.
• If the operation mode is set to TP-TEST on the manual operation screen of the automatic error
recovery function, the resume program is started even when a defined alarm is not issued or when the
recovery switch DI is off.
• When an operation mode other than AUTO is set on the manual operation screen of the automatic error
recovery function, then the display is changed to another screen, the operation mode is set to AUTO
again automatically. To use an operation mode other than AUTO, always keep displaying the manual
operation screen of the automatic error recovery function.
• When the resume program or the maintenance program terminates in the middle, and the start signal is
input, the robot might do action not predictable. Therefore, before inputting the start signal, check the
program name and the program start line that will be executed with the next start signal. And, if an
interfering object exists, jog the robot to a position where interfering object doesn't exist, then input the
start signal.
• Perform neither backward execution nor the single step operation while the FFR sequence is executed.

- 45 -
7. REMOTE TCP FUNCTION B-83284EN-2/01

7 REMOTE TCP FUNCTION


7.1 SUMMARY
The REMOTE TCP function is used to process the work by moving the work which is placed on the robot
hand. Robot can keep the relation between the tool fixed on the ground and work.

Example of using REMOTE TCP function (by Sealing application)

Sealing Gun Remote TCP

Work

Arm

Advantage of Remote TCP


● The gun is fixed on the ground, then the cabling of tool is easy.
● It is not necessary to take the heavy gun.
● Even if you do not use the REMOTE TCP function, you could process the work by moving the work
which is placed on the robot hand. But if you rotate the work against the TCP, the tool can not do the
coordinate motion against the work.

Case of using REMOTE TCP function

The robot can rotate to keep the point at which Remote TCP taught the work

- 46 -
B-83284EN-2/01 7. REMOTE TCP FUNCTION
Case of NOT using REMOTE TCP function

As the center of rotation is changed by the variation of work position, the robot can not
rotate to keep the point at which Remote TCP taught the work.

● You can get the easy teaching operation by remote TCP jog function.

Remote TCP No Remote TCP

Easy to jog the Remote TCP No easy to jog the Remote TCP.
regardless of location and
orientation.

● You can reduce teaching point drastically.

Remote TCP No Remote TCP

You need the minimum teaching You need many teaching points
points regardless of the orientation according to the direction and
and location of work. position of work.

- 47 -
7. REMOTE TCP FUNCTION B-83284EN-2/01

● You can do uniform sealing against work.

Remote TCP No Remote TCP

The robot moves with the taught You can not do teaching to keep the
speed, so you can do uniform sealing. relative speed, so you can not do
uniform sealing.

Required option
● Remote TCP (A05B-2600-J624)

Limitation
● REMOTE TCP cannot be used in joint motion and Wrist joint motion.
● REMOTE TCP cannot be used in the robot which is installed the coordinated motion function.
● REMOTE TCP cannot be used with the following functions.
- Line tracking
- Weaving
- Touch sensor
- Arc sensor
- AVC(TIG arc length control)
- Root path memorization
- Auto singularity avoidance
● In TCP speed output function, when the robot motion changes from REMOTE TCP to normal, the
accuracy of the speed prediction function may lower.

7.2 SETUP
Setting up
If you use the REMOTE TCP function, you need to teach the tool center point which is fixed on the ground
to the robot.

Z(Tool Direction)

You can set REMOTE TCP position by using the same method for User frame.
1 Press MENU.
2 Select SETUP.
3 Press F1, [TYPE].
4 Select Frames.
- 48 -
B-83284EN-2/01 7. REMOTE TCP FUNCTION
5 If user frame is not displayed, press F3, [OTHER], and select User/RTCP If F3, [OTHER], is not
displayed, press PREV.
6 Move the cursor to the REMOTE TCP frame to use.

SETUP Frames
User/RTCP G1 / Direct Entry 3/9
X Y Z Comment
1 0.0 0.0 0.0 [ ]
2 0.0 0.0 0.0 [ ]
3 0.0 0.0 0.0 [ ]
4 0.0 0.0 0.0 [ ]
5 0.0 0.0 0.0 [ ]
6 0.0 0.0 0.0 [ ]
7 0.0 0.0 0.0 [ ]
8 0.0 0.0 0.0 [ ]
9 0.0 0.0 0.0 [ ]

Active UFRAME/RTCP $MNUFRAMENUM[1] = 1

[ TYPE ] DETAIL [OTHER ] CLEAR SETIND >

7 Press F2, DETAIL.


8 Select the method from Direct Entry, Three Point or Four Point, and set the frame by using the same
method for User frame.

Remote TCP jog


When you do transitional jogging under the remote TCP mode, the robot behaves the same as it is under
normal jogging.

REMOTE TCP jogging is done by using the following procedure.


1 Enter to REMOTE TCP jogging mode.
2 Select the frame.
JOINT, REMOTE TCP USER, REMOTE TCP TOOL, REMOTE TCP JOG
3 Jog the robot.
4 Return from REMOTE TCP jogging mode.

< Change to REMOTE TCP jogging mode >


Please perform the following procedure to enter to REMOTE TCP jogging mode.
1 Press FCTN.
Select “TOGGLE REMOTE TCP”.
The screen is changed as follows.

T2 R1 TOOL 100%

The robot motion is performed according to REMOTE


TCP TOOL No.1

R1 TOOL

REMOTE TCP motion is performed according to the


tool frame.

Please perform the following procedure to return from REMOTE TCP jogging mode.
1 Press FCTN.
2 Select “TOGGLE REMOTE TCP”.

- 49 -
7. REMOTE TCP FUNCTION B-83284EN-2/01

Select frame
You change the coordinate system by pressing the COORD key. Please select the frame except for JOINT.

T2 R1 TOOL 100%

The display status is changed as follows.


JOINT R1/JFRM R1/WRLD R1/TOOL R1/USER

Select REMOTE TCP frame


When the robot enters to REMOTE TCP mode, you can select REMOTE TCP frame by using how to select
the normal frame. And you can change REMOTE TCP frame by the following method, too.
1 Press FCTN key.
2 Select “CHANGE RTCP FRAME”.
The number is changed as follows.
1 2 3 4 5 1

T2 R1 TOOL 30%

SETUP Frames
User/RTCP G1 / Direct Entry 3/5
X Y Z Comment
1 0.0 0.0 0.0 [ ]
2 0.0 0.0 0.0 [ ]
3 0.0 0.0 0.0 [ ]
4 0.0 0.0 0.0 [ ]
5 0.0 0.0 0.0 [ ]
6 0.0 0.0 0.0 [ ]
7 0.0 0.0 0.0 [ ]
8 0.0 0.0 0.0 [ ]
9 0.0 0.0 0.0 [ ]

[ TYPE ] DETAIL [OTHER ] CLEAR SETIND >

Programming and running by using REMOTE TCP


If you specify REMOTE TCP motion option, the robot moves remote TCP instead of robot TCP.
Please perform the following procedure to specify REMOTE TCP motion option.
1 Move the cursor to end of program line.
2 Press F4, [CHOICE].
3 Select “RTCP”.
Please perform the following procedure to remove REMOTE TCP motion option.
1 Move the cursor to end of program line.
2 Press F4, [CHOICE].
3 Select “No Option”.

You can not use RTCP with JOINT motion.

<Programming example>
L P[1] 100mm/sec FINE RTCP
The work is moved to P[1] by the relative speed 100 mm/sec between the work and the remote tool.
C P[1]
P[2] 100mm/sec FINE RTCP
The work is moved to P[2] via P[1] by the relative speed 100 mm/sec between the work and the remote tool.

- 50 -
B-83284EN-2/01 8. HIGH SENSITIVITY COLLISION DETECTION

8 HIGH SENSITIVITY COLLISION DETECTION


8.1 OVERVIEW
High-sensitivity collision detection provides a highly sensitive method to detect that the robot has collided
with an object and then stops the robot immediately. This helps to minimize the potential for damage to the
end-of-arm tooling and robot.

8.2 SPECIFICATION
1) When collision is detected, the function issues an alarm and stops the robot quickly by decelerating it
in such a way that shocks to the robot can be decreased.
2) Since the detection sensitivity has previously been adjusted for each robot type, you can use this
function without adjusting it.
3) You can change the detection sensitivity by the program instruction or in the setting screen.
4) You can temporarily enable/disable this function by the program instructions. (It is impossible to
disable this function regularly.)
5) You can output signal to a DO when collision is detected.
6) You can output status of the collision detection (enabled / disabled) to a DO.
7) The detection sensitivity is automatically increased during teaching operation.
8) This function is enabled since the power of the robot controller is on.

8.3 SETTINGS
Payload information (Basic)
Set the function with load information and the information about devices installed on the robot.
Since the function uses the load information and device information to detect a collision, it is necessary to
set the function with these pieces of information. Be sure to specify the weight of the load, the center of
gravity, and the weight of each device on the robot accurately.
If the inertia (shape) of the load is large, it may be necessary to specify the inertia around the gravity center
of the load. (If the tool is big, and simply specifying its weight and gravity center does not assure accurate
detection, specify its inertia.)
See Section 9.9, “LOAD SETTING” in FANUC Robot series R-30iB CONTROLLER OPERATOR’S
MANUAL (Basic Operation) (B-83284EN) or Section 9, “ LOAD ESTIMATION” in this manual, for how
to specify load information.

Collision Guard Setup screen (Optional)


The detection sensitivity has previously been adjusted for each robot type. If you want to change the
sensitivity, set in this screen.
Also, If you want to output the status of the collision detection (enabled / disabled), set in this screen.
See Section 8.4, "Collision Guard Setup Screen".

Program instructions (Optional)


If it is previously anticipated that a strong force will be exerted during an operation and users want to
temporarily disable collision detection or change the detection sensitivity, insert program instructions.
See Section 8.5, "Program Instructions".

- 51 -
8. HIGH SENSITIVITY COLLISION DETECTION B-83284EN-2/01

8.4 COLLISION GUARD SETUP SCREEN


Set as below.

1 Press MENU key.


2 Select "6 SETUP".
3 Press F1, [TYPE].
4 Select "Coll Guard". The screens as below is shown.

COL GUARD SETUP


1/4
GROUP: 1

Collision Guard status: DISABLED


1 Sensitivity: 100%
2 Sensitivity Def. Reg.: R[ 0]
3 Collision Guard Error: DO[ 0]
4 Col. Guard enabled: DO[ 0]

[ TYPE ] HELP GROUP


Fig. 8.4 Collision guard setup screen

5 Setup each item of Collision Guard Setup screen referring Table 8.4.

Table 8.4 Setup items of collision guard setup screen


Item default Description

Group 1 This item indicates the currently selected group to which the other items in the
menu apply. Note that you cannot edit this field directly. Instead, the current
group is selected by pressing F3, GROUP and entering the group number you
wish to display. You will only be able to select a group that supports
High-Sensitivity Collision Detection.

Collision Guard ENABLED This item specifies whether collision detection is enabled or disabled for the
Status currently selected group.
This item cannot be changed in this setup screen.

Sensitivity 100% This item allows you to set the level of sensitivity for Collision Detection for the
currently selected group.
Minimum is 1%. Maximum is 200%.
The lower the value, the lower the sensitivity.
The higher the value, the higher the sensitivity.
In some cases, you can decrease the sensitivity value to eliminate false
alarms. In some cases, you can increase the sensitivity value to provide faster
response.

Sensitivity Def. Reg. 0 This item allows you to specify the register that can be used with the COL
GUARD ADJUST teach pendant instruction to adjust the sensitivity of
Collision Detection within a program. A register number of 0 indicates that the
register is not used.

Collision Guard Error 0 This item allows you to specify a Digital Output that will be turned ON when a
Collision Detect Alarm occurs. A value of 0 indicates that no output will be
turned on.

- 52 -
B-83284EN-2/01 8. HIGH SENSITIVITY COLLISION DETECTION

Item default Description

Col. Guard enabled 0 This item allows you to specify a Digital Output that will be turned on whenever
Collision Detection is enabled via this setup menu, and turned off whenever
Collision Detection is disabled via this setup menu. A value of 0 indicates that
no output will be used.

CAUTION
You can make the collision detection sensitivity insensitive by setting "Sensitivity"
less than 100, but in this case, this function cannot work effectively. Please use
this function by not decreasing "Sensitivity" as much as possible, and if you
decrease "Sensitivity" by necessity, please be very careful.
If robot repeatedly absorb force as much as collision is detected, the mechanical
parts become strained and the life of the robot is shorten. It is desirable to change
program to lessen the force instead of changing the sensitivity.

NOTE
It is impossible to set the "Collision Guard Setup" at the group which includes a
robot that is not supported "High-Sensitivity Collision Detection" function.

8.5 PROGRAM INSTRUCTIONS


The program instructions below are reserved.
• COL DETECT ON
• COL DETECT OFF
• COL GUARD ADJUST

8.5.1 COL DETECT ON / COL DETECT OFF


These instructions allows you to enable/disable collision detection during program execution.
By default, collision detection is enabled.

• To disable collision detection temporarily, include the "COL DETECT OFF" instruction in a teach
pendant program.
• To enable collision detection again, include the "COL DETECT ON" instruction in a teach pendant
program.

When the program is finished or aborted, collision detection turns enabled automatically.

Example
10: J P[1] 100% FINE
11: COL DETECT OFF
12: L P[2] 2000mm/sec CNT100
13: L P[3] 2000mm/sec CNT100
14: L P[4] 2000mm/sec CNT100
15: COL DETECT ON
16: J P[2] 50% FINE
This program disables collision detection with lines 12 to 14.

- 53 -
8. HIGH SENSITIVITY COLLISION DETECTION B-83284EN-2/01

CAUTION
While collision detection is disabled, not only "High-Sensitivity Collision Detection"
function but also the basic collision detection function is disabled. Please be
careful adequately. For safety's sake, please set the collision detection disable
region as short as possible.

NOTE
The COL DETECT ON and COL DETECT OFF instructions will only apply to the
motion groups that are included in the group mask of the teach pendant program
that calls them. For example, if COL DETECT OFF is used in a teach pendant
program that contains group 2 only in its group mask, then Collision Detection will
only be disabled for group 2; it will remain enabled for all other groups.

8.5.2 COL GUARD ADJUST


This instruction allows you to adjust the sensitivity of collision detection within a teach pendant program.
The sensitivity value set by this instruction will temporarily override what has been set in the COL GUARD
SETUP menu.

This instruction can be used in three way. (See Table 8.5.2.)

Table 8.5.2 COL GUARD ADJUST instruction


number of arguments the new sensitivity value
0 value of register whose register number is specified in the
Collision Guard Setup menu
1 (directly set) value entered explicitly
1 (indirectly set) value of set register

CAUTION
You can make the collision detection sensitivity insensitive by setting "Sensitivity"
less than 100, but in this case, this function cannot work effectively. Please use
this function by not decreasing "Sensitivity" as much as possible, and if you
decrease "Sensitivity" by necessity, please be very careful.
If robot repeatedly absorb force as much as collision is detected, the mechanical
parts become strained and the life of the robot is shorten. It is desirable to change
program to lessen the force instead of changing the sensitivity.

NOTE
"COL GUARD ADJUST" instruction will apply only to the motion group(s) that are
indicated in the group mask of the program that uses COL GUARD ADJUST. For
example, if COL GUARD ADJUST is used in a program whose group mask is
group 2 only, then the new sensitivity will apply only to group 2; the sensitivity of all
other groups will remain unchanged.

If the group mask of the program that uses COL GUARD ADJUST contains a group that does not support
High-Sensitivity Collision Detection, a warning message will be posted as follows:

MOTN-404 Group # does not support HSCD

This message is just a warning to indicate that no action was taken on that group.
- 54 -
B-83284EN-2/01 8. HIGH SENSITIVITY COLLISION DETECTION
To Use the COL GUARD ADJUST instruction without arguments in a TP program, the following
procedure should be used:
• Set the register(s) specified in the COLL GUARD SETUP menu for the appropriate group(s) to the
new sensitivity value(s).
NOTE If the TP program is a multiple group program, the appropriate register for
each group needs to be set.
• Insert the COL GUARD ADJUST instruction into the TP program at the desired location.

NOTE If the register number in the COL GUARD SETUP menu is zero for one of the groups being
adjusted, then an error will be posted.

MOTN-400 No Coll. Guard Reg. Defined

If a valid register number is specified in the setup menu, but the data in that register is not an integer
between 1 and 200, then the following error will be posted:

MOTN-401 Coll. Guard Reg. Data Error

See the following screen for an example.


10: J P[1] 100% FINE
11: R[11]=80
12: COL GUARD ADJUST
13: L P[2] 2000mm/sec CNT100
14: L P[3] 2000mm/sec CNT100
15: L P[4] 2000mm/sec CNT100
16: R[11]=100
17: COL GUARD ADJUST
18: J P[5] 50% FINE

This example would apply to a single group program (say, a group 1 only program). In the example, it is
assumed that the register number has been set to 11 for group 1 in the COL GUARD SETUP menu.

Alternatively, the COL GUARD ADJUST instruction can be supplied with the new sensitivity value
directly. An example of how this could be done is as follows:
10: J P[1] 100% FINE
11: COL GUARD ADJUST 80
12: L P[2] 2000mm/sec CNT100
13: L P[3] 2000mm/sec CNT100
14: L P[4] 2000mm/sec CNT100
15: R[1]=100
16: COL GUARD ADJUST R[1]
17: J P[5] 50% FINE

To use the COL GUARD ADJUST instruction in this way, after inserting the instruction into the program,
move the cursor to the right of the instruction. Then, either type in the new sensitivity value directly, or
select F3"INDIRECT" and type in the desired register number.

As stated above, the COL GUARD ADJUST instruction will apply to all groups in the group mask of the TP
program that called it. However, if the instruction is used with an argument, the user also has the option to
restrict the groups whose sensitivity will be adjusted. This is accomplished by moving the cursor to the
argument filed and pressing the F1, GP_MASK key. Doing so will display the following menu at the top of
the Teach Pendant screen:
- 55 -
8. HIGH SENSITIVITY COLLISION DETECTION B-83284EN-2/01

Collision Detect 1
1 Default
2 [GP:]
3
4
5
6
7
8

Selecting "1" for "Default" means default behavior of the instruction, i.e. all groups in the group mask are
adjusted. Selecting "2" inserts a "GP" modifier into the instruction as follows:

COL GUARD ADJUST GP1,2: ##

The cursor will then be on the "##", which is the field where the sensitivity can be directly entered. The user
can then move the cursor to the left to highlight the "GP1,2" field. Once this field is highlighted, the
function keys will have labels displayed for each available motion group, i.e. F1 will have "GP1", F2 will
have "GP2", etc. Pressing the appropriate function key will toggle the appearance of that group number in
the "GP1,2" field. Once the "GP1,2" field has been set, only those groups listed in this field will have their
sensitivity updated by the instruction.

By default, when a TP program that calls COL GUARD ADJUST is aborted, the sensitivity will be reset to
the value specified in the COL GUARD SETUP menu for each group in the program's group mask. This
feature can be disabled by setting the following system variable:

$HSCDMNGRP[g].$AUTO_RESET = 0

where "g" refers to the group number.

8.6 CAUTIONS
1 Collision Detection might detect a false collision when a collision has not occurred in the following
cases:
• Payload information has not been set correctly.
• The payload is larger than the maximum payload for the robot, or the inertia of the payload is too
large.
• Not enough voltage has been supplied to the controller.
• Low temperature.
• The ACC motion option has been used, causing jerky robot motion.
• Severe motion such as reverse motion which Cnt. is used.
• Linear motion occurs near singularity point where axes revolve in high speed.
Action: If collision misdetection occurred for the reasons above, try removing these reasons first.
If necessarily, insert COL GUARD ON / OFF or COL GUARD ADJUST instructions at the top
and bottom of where misdetection occurs for avoiding alarm stop.
2 Collision Detection is disabled in the following cases:
• Soft Float is enabled.
• The robot brakes are on.
• Calibration is not finished.
• While not releasing SHIFT key after pressed SHIFT + RESET
3 In order to decrease the force of collision, Collision Detection allows the robot axes to sag away from
the collision for a short time after detecting a collision. When this happens, vertical robot axes might
fall slightly after detecting a collision, due to the effect of gravity.
- 56 -
B-83284EN-2/01 9. LOAD ESTIMATION

9 LOAD ESTIMATION
9.1 OVERVIEW
Load estimation is a function for estimating the weight of the load, such as tool and workpiece, mounted on
the hand of the robot.
The function enables the information stated above to be estimated automatically by running the robot.
Using the load estimation function requires the High Sensitive Collision detection Package option
(A05B-2600-J684). Using the function also requires that your model support the load estimation function.
If your model does not support the function, you cannot use it.

9.2 OPERATING PROCEDURE


Load is estimated in the following flow:
1 Set the range of motion to be subjected to load estimation.
2 Execute load estimation.
Once a mechanical part such as a motor is replaced, it becomes necessary to make calibration.
If no calibration is made after mechanical part replacement, the precision of load estimation becomes lower.

9.3 LOAD ESTIMATION PROCEDURE (for 6-Axis Robots)


This procedure is performed on the load estimation screen.
This screen is entered from the motion performance screen.
1 Press MENU to display the screen menu.
2 Select “6 SYSTEM” described on the next page.
3 Press F1, [TYPE] to display the screen switching menu.
4 Select Motion. The list screen appears. (If any other screen appears, press PREV key several times
until the list screen appears.) For a multi-group system, the list screen of another group can be reached
by pressing F2, GROUP.

MOTION PERFORMANCE
Group1 1/10
No. PAYLOAD[kg] Comment
1 0.00 [ ]
2 0.00 [ ]
3 0.00 [ ]
4 0.00 [ ]
5 0.00 [ ]
6 0.00 [ ]
7 0.00 [ ]
8 0.00 [ ]
9 0.00 [ ]
10 0.00 [ ]
Active PAYLOAD number = 0

[ TYPE ] GROUP DETAIL ARMLOAD SETIND >

5 Press NEXT, then press F2, IDENT. The load estimation screen appears.

- 57 -
9. LOAD ESTIMATION B-83284EN-2/01

MOTION/PAYLOAD ID
1/4
Group 1
Schedule No[ 1]:[****************]
1 PAYLOAD ESTIMATION *****
Previous Estimated value (Maximum)
Payload [Kg] : 0.00 ( 165.00)
Axis Moment [Nm]
J4: 0.00E+00 ( 9.02E+02)
J5: 0.00E+00 ( 9.02E+02)
J6: 0.00E+00 ( 4.41E+02)
Axis Inertia [Kg cm^2]
J4: 0.00E+00 ( 8.82E+05)
J5: 0.00E+00 ( 8.82E+05)
J6: 0.00E+00 ( 4.41E+05)

2 MASS IS KNOW [NO ] 165.000[Kg]

3 CALIBRATION MODE [OFF]


4 CALIBRATION STATUS *****

[ TYPE ] GROUP NUMBER EXEC APPLY >

6 Place the robot in the position where load estimation is to be performed.

CAUTION
1 Only the J5 and J6 axes move during load estimation. The other axes stay in the
position where they are when load estimation begins.
The range of motion is defined as an interval between two points specified on
estimation position 1 and 2 screens. (See steps 10 and 12.)
2 Put the J5 rotation axis in a horizontal position.
The more vertical posture the J5 rotation axis takes, the lower the precision of
estimation becomes.

7 Press F3, NUMBER, and select the load setting condition No. for which a load estimate is to be set up.
8 If the mass of the load for which load estimation is to be performed is known, move the cursor to line
2, select “YES”, and specify (enter) the mass.

- 58 -
B-83284EN-2/01 9. LOAD ESTIMATION

NOTE
The estimation precision becomes higher when a mass is specified. Specify the
mass as much as possible.
Even if no mass is specified, estimation is possible provided that the following
condition is satisfied. However the precision becomes lower.
● The moment around the J5 and J6 axes must be sufficiently high.
J5 rotation axis

B J6 rotation axis

Load gravity center

● The mass must be sufficiently great, and the distance between points A and B
must be sufficiently large.
● The load gravity center must be sufficiently far from the J5 and J6 rotation axes.
● As for positions set up on estimation position 1 and 2 screens, the gravity center of
the load must be in or near the plane that contains the J5 and J6 rotation axes.
J5 rotation axis

Load gravity center

J6 rotation axis

● As for the J6 axis, the interval between points specified on the estimation position
1 and 2 screens must be 180° in terms of angle.

9 Press NEXT, then press F4, DETAIL. The estimation position 1 screen appears.

MOTION/ID POS1 ID
1/5
Group 1
1 POSITION for ESTIMATION POSITION1
J1 <**********>
J2 <**********>
J3 <**********>
J4 <**********>
2 J5 < -90.000>
3 J6 < -90.000>
J7 <**********>
J8 <**********>
J9 <**********>

4 SPEED Low < 1%> High <100%>


5 ACCEL Low <100%> High <100%>

[ TYPE ] POS.2 DEFAULT MOVE_TO RECORD

- 59 -
9. LOAD ESTIMATION B-83284EN-2/01

10 Specify estimation position 1. (Alternatively, the initial value can be used.)


Specify the positions of the J5 and J6 axes by entering their values directly. Alternatively, move the
robot to the desired position by jogging, then press SHIFT key + F5, RECORD to record the position.
Now pressing SHIFT key + F4, MOVE_TO moves the robot to estimation position 1. Use this
procedure to identify the set position.
11 Pressing F2, POS.2 displays the estimation position 2 screen.

MOTION/ID POS2 ID
1/5
Group 1
1 POSITION for ESTIMATION POSITION2
J1 <**********>
J2 <**********>
J3 <**********>
J4 <**********>
2 J5 < 90.000>
3 J6 < 90.000>
J7 <**********>
J8 <**********>
J9 <**********>

4 SPEED Low < 1%> High <100%>


5 ACCEL Low <100%> High <100%>

[ TYPE ] POS.1 DEFAULT MOVE_TO RECORD

12 Specify estimation position 2. (Alternatively, the initial value can be used.)


Specify the positions of the J5 and J6 axes by entering their values directly. Alternatively, move the
robot to the desired position by jogging, then press SHIFT key + F5, RECORD to record the position.
Now pressing SHIFT key + F4, MOVE_TO moves the robot to estimation position 2. Use this
procedure to identify the set position.
13 Press PREV key to return to the estimation screen.
14 Set the teach pendant enable switch to OFF, and press F4, EXEC. The message “Robot moves and
estimates. Ready?” appears.
15 Specify whether to execute load estimation. (Selecting “YES” causes the robot to move. Pay
sufficient care to avoid danger.)
● To perform load estimation by running the robot, press F4, YES.
● To quit execution, press F5, NO.
16 After low-speed and high-speed operations are finished, load information is estimated. (Operation
switches automatically from low speed to high speed. Even when the robot is running at low speed, do
not get close to it, because otherwise you may get in a dangerous situation when the robot suddenly
starts running at high speed.)
17 Press F5, APPLY to set the estimate at a load setting condition No. The message “Path and Cycle time
will change. Set it?” appears.
18 Specify whether to set the estimate.
● To set the estimate, press F4, YES.
● Not to set the estimate, press F5, NO.
19 If the value to be set is greater than the maximum allowable load (indicated in parentheses), the
message “Load is OVER spec ! Accept?” appears. Specify whether to set this value, just as in the
above step.

9.4 CALIBRATION PROCEDURE (for 6-Axis Robots)


Once a mechanical part such as a motor is replaced, it becomes necessary to make calibration.
If no calibration is made after mechanical part replacement, the precision of load estimation becomes lower.
Calibration is controlled, using the load estimation screen. Calibration is started by setting the calibration
switch to ON and executing load estimation.

- 60 -
B-83284EN-2/01 9. LOAD ESTIMATION
1 Make sure that there is nothing on the hand of the robot.
Calibration must be made without attaching anything to the hand of the robot.

NOTE
If calibration is performed with anything attached to the robot hand, incorrect
calibration data is set up, thus hampering a normal estimation.
In this case, make calibration again, properly this time.

2 Press MENU to display the screen menu.


3 Select “6 SYSTEM” described on the next page.
4 Press F1, [TYPE] to display the screen switching menu.
5 Select Motion. The list screen appears. (If any other screen appears, press PREV key several times
until the list screen appears.) For a multi-group system, the list screen of another group can be reached
by pressing F2, GROUP.

MOTION PERFORMANCE
Group1 1/10
No. PAYLOAD[kg] Comment
1 0.00 [ ]
2 0.00 [ ]
3 0.00 [ ]
4 0.00 [ ]
5 0.00 [ ]
6 0.00 [ ]
7 0.00 [ ]
8 0.00 [ ]
9 0.00 [ ]
10 0.00 [ ]
Active PAYLOAD number = 0

[ TYPE ] GROUP DETAIL ARMLOAD SETIND >

6 Press NEXT, then F2, IDENT. The load estimation screen appears.

MOTION/PAYLOAD ID
1/4
Group 1
Schedule No[ 1]:[****************]
1 PAYLOAD ESTIMATION *****
Previous Estimated value (Maximum)
Payload [Kg] : 0.00 ( 165.00)
Axis Moment [Nm]
J4: 0.00E+00 ( 9.02E+02)
J5: 0.00E+00 ( 9.02E+02)
J6: 0.00E+00 ( 4.41E+02)
Axis Inertia [Kg cm^2]
J4: 0.00E+00 ( 8.82E+05)
J5: 0.00E+00 ( 8.82E+05)
J6: 0.00E+00 ( 4.41E+05)

2 MASS IS KNOW [NO ] 165.000[Kg]

3 CALIBRATION MODE [OFF]


4 CALIBRATION STATUS *****

[ TYPE ] GROUP NUMBER EXEC APPLY >

7 Place the robot in the position where load estimation is to be performed.

- 61 -
9. LOAD ESTIMATION B-83284EN-2/01

NOTE
1 Only the J5 and J6 axes move during load estimation. The other axes stay in the
position where they are when load estimation begins.
The range of motion is defined as an interval between two points specified on
estimation position 1 and 2 screens. (See steps 9, 10, and 12.)
2 Put the J5 rotation axis in a horizontal position.
The more vertical posture the J5 rotation axis takes, the lower the precision of
estimation becomes.

8 Press NEXT, then F4, DETAIL. The estimation position 1 screen appears.

MOTION/ID POS1 ID
1/5
Group 1
1 POSITION for ESTIMATION POSITION1
J1 <**********>
J2 <**********>
J3 <**********>
J4 <**********>
2 J5 < -90.000>
3 J6 < -90.000>
J7 <**********>
J8 <**********>
J9 <**********>

4 SPEED Low < 1%> High <100%>


5 ACCEL Low <100%> High <100%>

[ TYPE ] POS.2 DEFAULT MOVE_TO RECORD

9 Specify estimation positions 1 and 2. Try to use default values as much as possible.
Press F3, DEFAULT, and specify default values for estimation positions 1 and 2, speed, and
acceleration.
10 Pressing SHIFT + F4, MOVE_TO moves the robot to estimation position 1. Make sure that it is safe to
move the robot to estimation position 1.
If it is dangerous to move the robot to estimation position 1, manipulate the J1 to J4 axes by jogging to
move the robot to a position where the robot can move safely.
11 Pressing F2, POS.2 displays the estimation position 2 screen.

MOTION/ID POS2 ID
1/5
Group 1
1 POSITION for ESTIMATION POSITION2
J1 <**********>
J2 <**********>
J3 <**********>
J4 <**********>
2 J5 < 90.000>
3 J6 < 90.000>
J7 <**********>
J8 <**********>
J9 <**********>

4 SPEED Low < 1%> High <100%>


5 ACCEL Low <100%> High <100%>

[ TYPE ] POS.1 DEFAULT MOVE_TO RECORD

12 Pressing SHIFT key + F4, MOVE_TO moves the robot to estimation position 2. Make sure that it is
safe to move the robot to estimation position 2.

- 62 -
B-83284EN-2/01 9. LOAD ESTIMATION
If it is dangerous to move the robot to estimation position 2, manipulate the J1 to J4 axes by jogging to
move the robot to a position where the robot can move safely.
If you moved any of the J1 to J4 axes, press F2, POS.1 to go back to the estimation position 1 screen,
and follow this procedure again from step 10.
13 Press PREV key to return to the load estimation screen.
14 Move the cursor to CALIBRATION MODE on line 3 to turn it “on.”

NOTE
Once calibration is completed, CALIBRATION MODE becomes “off”
automatically.
Do not change CALIBRATION MODE during calibration or load estimation.
Otherwise, calibration may be made incorrectly or may not be made at all.

15 Move the cursor to line 4 (so that “EXEC” appears at F4), and set the teach pendant enable switch to
OFF, then press “EXEC”. The message “Robot moves and estimates. Ready?” appears.
16 Specify whether to perform load estimation. (Selecting “YES” causes the robot to move. Pay
sufficient care to avoid danger.)
● To perform load estimation by running the robot, press F4, YES.
● To quit execution, press F5, NO.
17 After low-speed and high-speed operations are finished, calibration is completed. (Operation switches
automatically from low speed to high speed. Even when the robot is running at low speed, do not get
close to it, because otherwise you may get in a dangerous situation when the robot suddenly starts
running at high speed.)

9.5 OTHER RELATED MATTERS


(1) Motion range
If the motion range between estimation positions 1 and 2 becomes narrower, the estimation precision may
get lower.
The actual motion range should preferably be as wide as the default motion range.
(2) Acceleration for motion used in load estimation
The estimation precision is low for the load whose moment inertia is relatively low compared with the
maximum allowable load of the robot. This is because the influence by the moment inertia to the torque of
the robot motor is weak.
The estimation precision for this light load may be able to be increased by increasing the acceleration used
during operation for load estimation.
Try to increase the acceleration by specifying a larger value in “ACCEL - High” on the estimation position
1 and 2 screens; however, do not specify so large a value that vibration becomes serious during operation.
(3) Calibration data
The following system variable hold calibration data.
SPLCL_GRP[group].$TRQ_MGN[axis]
group : Group number
axis : Axis number
If improper calibration data is set up, for example, by making calibration with a load mounted by mistake,
reassigning the previous data to the system variable can restore the previous calibration data.
It is recommended to keep note of the previous calibration data so as to enable restoration.

- 63 -
10. COLLISION DETECTION FOR AUXILIARY AXIS B-83284EN-2/01

10 COLLISION DETECTION FOR AUXILIARY


AXIS
10.1 GENERAL
The Collision Detection Function is the feature that stops the robot immediately and reduces the damage to
the robot, when the robot collides with other objects.
Generally, this feature has been applied for the robot axes.
But, this feature has not been applied for the auxiliary axis. Because the auxiliary axis is design by customer,
then the parameters for this feature can not be set beforehand.
To apply this feature to the auxiliary axis, the parameter tuning is required with tuning procedure on this
manual.

NOTE
To tune the collision detection parameters for auxiliary axis, High Sensitive
Collision Detection Package Option (A05B-2600-J684) is required.

10.2 CAUTION
The load ratio of auxiliary axis should be less than 5.
Load ratio = (Load Inertia + Motor Inertia) / Motor Inertia
When the auxiliary axis is designed, you must consider above.

If the load ratio of auxiliary axis is more than 5 times, the motion performance and sensitivity for collision
detection may deteriorate.

10.3 INITIAL SETTING


1 Setup auxiliary axis (Gear ratio, acceleration time, and etc.) normally.
2 Turn power on.
3 Set the following system variables.
$SBR[n].$PARAM[112] = 2097152 / ($SBR[n].$PARAM[47])
$SBR[n].$PARAM[119] = 7282
$SBR[n].$PARAM[120] = -7282
n : Hardware axis number of auxiliary axis
n=7~ for aux. Axis / n=1~6 for robot axes
4 Cycle power.

10.4 TUNING PROCEDURE


The sensitivity of collision detection will be tuned by below procedure. It should be tuned without
mis-detection.
1 Create the program that includes heavy motion like an inverse motion with CNT100 beforehand.
If the program for production is already exist, It can be used to tune. In this case, the sensitivity can be
optimized for production with this program.
(However, if other program was run, the mis-detection might occur. Also, if this program was
modified, the re-tuning might be required.)
2 Run the above program.
- 64 -
B-83284EN-2/01 10. COLLISION DETECTION FOR AUXILIARY AXIS

On this occasion, note that this program must not be paused because the disturbance torque displayed
in the screen explained below will be cleared at just restarting it.
3 Measure the max. / min. disturbance torque on STATUS/AXIS/ DISTURB screen after running the
program.

STATUS Axis

GRP[ 1 ]
Disturbance Torque (A)
Curr./ Max.(Allowed)/Min.(Allowed)
J1 : 0.0 20.0( 40.0) -19.0( -40.0)
J2 : 0.0 19.0( 40.0) -20.0( -40.0)
J3 : 0.0 22.0( 40.0) -10.0( -40.0)
J4 : 0.0 12.0( 20.0) -5.0( -20.0)
J5 : 0.0 10.0( 20.0) -11.0( -20.0)
J6 : 0.0 8.0( 20.0) -4.0( -20.0)
J7 : 0.0 24.0( 56.0) -30.0( -56.0)

[ TYPE ] MONITOR TRACKING DISTURB [UTIL ] >

As said above, the disturbance torque will be reset at the start of each program.
If there are some programs,
● make new program that call all programs for tuning and run this main program.
● record the max. / min. disturbance torque for each programs and find max. / min. value in these
recorded value.
4 Move the cursor to allowed value in parentheses for the axis.
Change the allowed value to same as measured max. or min. value.

STATUS Axis

GRP[ 1 ]
Disturbance Torque (A)
Curr./ Max.(Allowed)/Min.(Allowed)
J1 : 0.0 20.0( 40.0) -19.0( -40.0)
J2 : 0.0 19.0( 40.0) -20.0( -40.0)
J3 : 0.0 22.0( 40.0) -10.0( -40.0)
J4 : 0.0 12.0( 20.0) -5.0( -20.0)
J5 : 0.0 10.0( 20.0) -11.0( -20.0)
J6 : 0.0 8.0( 20.0) -4.0( -20.0)
J7 : 0.0 24.0( 24.0) -30.0( -30.0)

[ TYPE ] MONITOR TRACKING DISTURB [UTIL ] >

- 65 -
10. COLLISION DETECTION FOR AUXILIARY AXIS B-83284EN-2/01

CAUTION
When the disturbance torque exceeds above allowed value, the following
WARNING occurs
SRVO-053 Disturbance excess (G:x,A:x)
Following servo alarm (servo power off) occurs when the disturbance torque
exceeds below ALARM LEVELs.
Upper Limit = Max. allowed value + 0.3 ±
Max. current of amp.
Lower Limit = Min. allowed value - 0.3 ±
Max. current of amp.
SRVO-050 Collision Detect alarm (G:x,A:x)
Part of 0.3 × Max. current of amp. is the margin to prevent the miss-detection.
For example in above screen with 40A amplifier,
Upper Limit = 24.0 + 0.3 ± 40 = 36 A
Lower Limit = -30.0 - 0.3 ± 40 = -42 A

5 Run the programs again with above disturbance allowed setting, and confirm that there is no
miss-detection.
6 Finished.

- 66 -
B-83284EN-2/01 11. GRAVITY COMPENSATION

11 GRAVITY COMPENSATION
Gravity compensation calculates the bending of the robot arm caused by the tool/work on the flange, the
equipment on the arm, and the self weight of the arm. Then it compensates the motor position depending on
the calculation of the bending, and it improves the absolute position accuracy.
Gravity Compensation option (A05B-2600-J649) is necessary to use this function.
This function can not be used with Soft float (A05B-2600-J612).

11.1 SYSTEM VARIABLES


Gravity Compensation
$PARAM_GROUP[group].$SV_DMY_LNK[8]
[Name] Gravity Compensation Enable/Disable
[Meaning] TRUE Gravity Compensation Enable
FALSE Gravity Compensation Disable

Except some specific system configuration, Gravity Compensation is disabled when the robot is
shipped. To enable Gravity Compensation, set this variable to TRUE and cycle power.

To set back to be disabled, set this variable to FALSE and cycle power.

$PARAM_GROUP[group].$MOUNT_ANGLE
[Name] Mount Angle of Robot (Unit: deg)
[Meaning] Set 0 deg for floor mount type, 180 deg for upside down type, or the mount angle
for wall mount or angle mount type. Cycle power after setting.

11.2 MOTION SCREEN


1 Payload and armload (equipment on the arm) parameters are set in this screen.
2 This setting screen has three sub-screens. (MOTION screen / PAYLOAD SET screen / ARMLOAD
SET screen)
3 This screen is sub-screen in SYSTEM.
MOTION Screen (Default screen)
MOTION PERFORMANCE
Group1 1/10
No. PAYLOAD[kg] Comment
1 100.00 [ ]
2 120.00 [ ]
: : :
10 120.00 [ ]
Active PAYLOAD number = 1

[ TYPE ] GROUP DETAIL ARMLOAD SETIND >

4 Payload information (Schedule No.1 to 10) can be setup. Move cursor to the line of one of the
schedule numbers, and press F3, DETAIL to enter the payload set screen.

- 67 -
11. GRAVITY COMPENSATION B-83284EN-2/01

PAYLOAD SET Screen


MOTION/PAYLOAD SET
1/8
Group 1
1 Schedule No[ 1]:[****************]
2 PAYLOAD [Kg] 100.00
3 PAYLOAD CENTER X [cm] 10.00
4 PAYLOAD CENTER Y [cm] 0.00
5 PAYLOAD CENTER Z [cm] 10.00
6 PAYLOAD INERTIA X [Kgfcms^2] 0.00
7 PAYLOAD INERTIA Y [Kgfcms^2] 0.00
8 PAYLOAD INERTIA Z [Kgfcms^2] 0.00

[ TYPE ] GROUP NUMBER DEFAULT HELP

5 Setup the payload, payload center, and payload inertia. X, Y, and Z directions in this screen mean X,
Y, and Z axes of the default (the settings are all 0) tool frame.
After the value is input, the message “Path and Cycle time will change. Set it ?” is displayed. Please
input F4, YES or F5, NO.
6 To enter the payload set screen of the other schedule number, press F3, NUMBER. To enter the screen
for other group, press F2, GROUP. (Only in the multi-group system)
7 Press PREV key to go back to the motion screen (default screen). Press F5, SETIND and input the
schedule number to use.
8 Press F4, ARMLOAD in the motion screen (default screen) to enter the armload set screen.

ARMLOAD SET Screen


MOTION/ARMLOAD SET
1/2
Group 1
1 ARM LOAD AXIS #1 [Kg] 20.00
2 ARM LOAD AXIS #3 [Kg] 10.00

[ TYPE ] GROUP DEFAULT HELP

9 Setup the armload on axis #1 and axis #3.


After the value is input, the message “Path and Cycle time will change. Set it ?” is displayed. Please
input F4, YES or F5, NO.
After setting up the armload, cycle power.

11.3 MASTERING
CAUTION
From R-30iB Controller, we can execute mastering even when Gravity
Compensation is ENABLED. Because the procedure has been changed from that
of R-30iA Controller, please read and understand this section before mastering
execution.

11.3.1 “Normal Mastering” and “GC Mastering”


You have 2 types of mastering method.

(1) Normal Mastering : Mastering with Gravity Compensation DISABLED


- 68 -
B-83284EN-2/01 11. GRAVITY COMPENSATION
(2) GC Mastering : Mastering with Gravity Compensation ENABLED

• Basically you should choose the same method as the one which you have chosen at the previous
mastering. This is because the result of (1) and (2) is different from each other.
• Gravity Compensation works with either mastering result. But you can achieve better absolute
position accuracy with GC Mastering.
• If you switch the method from Normal Mastering to GC Mastering, TCP will shift a little. Therefore,
please confirm in advance that TCP shift will cause no problem. When you do mastering for switching,
use Vision Mastering or Jig Mastering (in other words, don’t use Single Axis Mastering). For details
of Vision Mastering, refer to “FANUC Robot series R-30iA/R-30iA Mate/R-30iB CONTROLLER
iRCalibration OPERATOR’S MANUAL” (B-82784EN).

Mastering method at the shipment of the robot


For some specific system configuration, GC Mastering has been done at the shipment of the robot. You can
find this information in the “Inspection Data Sheet” which is attached to your robot controller.

“Mastering with Gravity Compensation” in Inspection Data Sheet Mastering method at the shipment

“Yes” GC Mastering

“No” Normal Mastering

11.3.2 How to Choose Mastering Method


The following system variable indicates which mastering method the current mastering counts are derived
from.

$DMR_GRP[group].$GRAV_MAST

Value Description Mastering method you should choose

Current mastering data is


1 • Choose GC Mastering.
derived from GC Mastering.

• Basically, choose the Normal Mastering.


Current mastering data is
0 • If you need to improve absolute position accuracy, choose GC
derived from Normal Mastering.
Mastering.

• Choose the same one as “Mastering method at the shipment of


-1 Unknown (not set).
the robot” which is described above.

This system variable is updated every time you execute mastering.

11.3.3 Mastering Procedure


Mastering procedure for Normal Mastering
1 If Gravity Compensation is ENABLED, disable it.
2 Perform mastering.
3 If you have disabled Gravity Compensation in step 1, enable it again.

Mastering procedure for GC Mastering


1 Perform mastering with Gravity Compensation ENABLED.
* Please refer to the next subsection for guidance.

After mastering execution, record (write down) the value of $DMR_GRP[group].$GRAV_MAST together
with mastering counts ($DMR_GRP[group].$MASTER_COUN[ ]).
- 69 -
11. GRAVITY COMPENSATION B-83284EN-2/01

NOTE
.When you use Gravity Compensation function, you must treat
$DMR_GRP[group].$GRAV_MAST as a part of mastering data. So please
remember to record (write down) the value of this system variable together with the
mastering counts. You need this value if we manually enter the mastering data to
system variable.

Example of mastering data


$DMR_GRP[1].$MASTER_COUN[1] = 137859
.$MASTER_COUN[2] = 22309853
.$MASTER_COUN[3] = 30596 In addition to $MASTER_COUN[ ],
.$MASTER_COUN[4] = 810348
$GRAV_MAST is also a part of
.$MASTER_COUN[5] = 87291
mastering data.
.$MASTER_COUN[6] = 23124
$DMR_GRP[1].$GRAV_MAST = 1

11.3.4 Guidance of GC Mastering


Keep the following rules of GC Mastering.

1 Before you perform GC Mastering, set correct payload parameters via MOTION screen.
2 When you write down joint angles of a reference position which will be used for mastering, do it under
the following condition;
- Gravity Compensation is ENABLED, and
- Calibration is completed, and
- Correct payload parameters are set.
3 When you perform Single Axis Master, keep the following rules;
• Just to be safe, write down the Mastering Data ($DMR_GRP[group].$MASTER_COUN[axis])
of all axes before you perform mastering.
• If there are more than one axes which need to be mastered, you must select and master them all at
once.
ex) Single Axis Master after J2, J4 and J5 motor replacement
You must master J2, J4 and J5 all at once.
You cannot do master solo J2 when J4 and J5 remain to be mastered.
* If you have no way to master multiple axes all at once, work around in the following way;
(NOTE: Master in ascending order. In other words, from robot base to flange)
(1) First, master J2, J4 and J5 all at once. You need to master J2 correctly. At this time, you
don’t need to master J4 and J5 correctly, but master them moderately correctly. In other
words, do temporary master for J4 and J5.
(2) Next, master J4 correctly.
(3) Finally, master J5 correctly.
• If you move no-need-master axes to the angle which you have wrote down for a reference
position in advance, do it after performing temporary mastering of need-master axes.
ex) Single Axis Master using reference angle of J1,J2,J4,J5,J6 after J3 motor replacement
(1) First, master J3 moderately correctly, then do CALIBRATE.
(2) Next, move no-need-master axes (J1,J2,J4,J5,J6) to the angle which you have wrote down
for a reference position.
(3) Finally, master J3 correctly.
• If you perform “mastering after temporary mastering” as described above, master count of the
axis which has an interaction with the target axis of mastering will change. This causes
unexpected position change. Therefore, after performing mastering, verify that master count of
no-need-master axis keeps the original value. If this value has been changed, enter the original
value which you have written down in advance.
- 70 -
B-83284EN-2/01 12. OPERATION LOG BOOK

12 OPERATION LOG BOOK


12.1 OVERVIEW
Operation Log Book automatically records teach pendant operations and alarms in a buffer that can be
displayed in the Log Book menu of the teach pendant or saved as a text file. Some operations can include a
screen image to help in analyzing the event.
A system can have multiple Log Books and you can specify which events are recorded in each Log Book. In
this way, frequent and infrequent events can be recorded to separate Log Books.
When a Log Book buffer is full and a new record is added, the oldest record is deleted. The number of
events that can be stored in a Log Book buffer varies based on the type of events saved because not all
events are the same size. You can change the size of the buffer by setting a system variable.
To use function it is necessary to order the Operation Log Book option (J695).

Note : This function is independent of the password log function.

See the following example of a Log Book.

Log book
Operation ( 20.0 k) 1/790
1*SHIFT,F5(TOUCHUP) is pressed, line 2
2 '+Y^(J6)' is pressed
3 SHIFT+FWD is pressed
4*Select 'YES' in 'You are in the diff
5 SHIFT+FWD is pressed
6 SHIFT+FWD is pressed
7 Single step ON
8 'STEP' is pressed
9 'LINER' is selected
10*SHIFT,F1(POINT) is pressed line 2/2
11 '-Y^(J6)' is pressed
12*'50' is entered
13*'Cnt' is selected in 'Motion modify'
14*SHIFT,F1(POINT) is pressed, line 1/1
15 '-Y^(J2)' is pressed
16 '-Y^(J3)' is pressed
17 '+Y^(J5)' is pressed
18 '-Y^(J5)' is pressed
19 Override 40%
20 '+%' is pressed
21 Override 35%
22 '+%' is pressed
23 Override 30%
24 '+%' is pressed
25 Override 25%
26 '+%' is pressed
27 Override 20%
28 '+%' is pressed
29 Override 15%
30 '+%' is pressed
31 '-Y^(J5)' is pressed
32 'RESET' is pressed
33 Menu changed 'PNS0001'
34*'PNS0001' is entered
35*F2(CREATE) is pressed, line 1/16
36 Menu changed 'SELECT'
37 'SELECT' is pressed

[ TYPE ] [ BOOK ] DETAIL CLEAR

- 71 -
12. OPERATION LOG BOOK B-83284EN-2/01

The lines marked with an “*” have an associated screen image, as seen in the example of line 12 below. The
screen image shows the previous value of the changed item.

Log book
Operation ( 50.0 k) 12/790
50 is entered
10-JUL-21 16:16 :06
--Screen image---------------------------

PNS0001 LINE 0 \T2\ ABORTED


PNS0001\\\\\\\\\\\\\\\\\\\\\\\\ i
1/2
1:J P[1] 100% CNT100
[End]

General Limitations
Note the following general limitations for Log Book:
• Log Book does not support certain iPendant operations. See following examples.
- Selecting a link on a web page
- Operations in screens for iPendant only. For example, operations in browser, panel setup,
iPendant setup screen.
• Operations are not recorded in controlled start just after initial start. Cold start must be performed to
begin logging events.
• Operations in the configuration menu are not recorded.
• If you change the size of a log book, all data in the log book are lost.
• Some events are cyclically monitored for logging. Some of the following operations may not be
recorded if they occur faster than the monitoring cycle:
- Override (“Override x%”)
- Coordination (JOINT coordinate, User Coordinate etc.)
- Single step (Single step ON/OFF)
- Motion group (“Motion group x”)
- Sub group (“Sub group ROBOT/EXT”)
- User frame number (“User frame x”)
- Tool frame number (“Tool frame x”)
• If you change the dictionary, some entries in the LOG BOOK screen cannot be read. To read such log,
you must use the language that was used when the log was recorded.
• If passwords are enabled and $LOGBOOK.$LOG_ENT is a valid book number when you log in, your
password input is recorded as “’x’ is entered”. Passwords for other functions are also recorded. To
prevent passwords from being recorded, you can use screen filtering to filter out the screens that
contain passwords. Refer to Subsection 12.4 Operations.
• ‘y’ of “’x’ is selected in ‘y’ window” is based on the 1st line of prompt window. If the 1st line is blank,
y contains nothing. Please refer to screen image for analysis.
• If you press a function key that has no label, the key number followed by empty parentheses will be
recorded.
Example
If the function key line is as follows:

[ TYPE ] ON OFF

F3 has no label. If you press F3 and $LOGBOOK $LOG_FNKEY is a valid value, “F3( )” is
pressed” is recorded.

- 72 -
B-83284EN-2/01 12. OPERATION LOG BOOK
• If you change the remote TCP number in remote TCP jog mode, this is recorded as a change of user
frame.
• If you changed current JOG coordination by parameter instruction, the change is recorded when the
group is selected.
• Screen image doesn’t support double height font, which is used in the “on the fly” screen of ArcTool.
It is recorded as two lines which have the same characters.
Example
0.0 Amps
in “On the fly” screen is recorded as

0.0 Amps
0.0 Amps

• For KAREL read instructions, screen image is recorded just after input.
• KCL is not supported.
• If the TP and CRT are used at the same time, log book records the operations of both of them. It might
be difficult to distinguish between TP and CRT operations in a log.
• Screen changes caused by the automatic backup function are not recorded.
• “’x’ is saved” and “’x’ is loaded” may be recorded by internal process.

12.2 RECORDED EVENTS


The following is the list of all events that can be recorded by the Log Book function.
Recording of individual events can be disabled by setting the system variable specified in the 'Parameter'
column. If it is 0, the event is not recorded. Some of them are disabled by default. If the system variable is
not 0, the value indicates the Log Book No. to which the event is recorded.
Some events have a screen image. This information helps to analyze the record. However, screen images
take a lot of space in the Log Book; you can disable the recording of screen images by setting the system
variable specified in the 'Save screen' column.

Refer to “12.4 Operations” later in this section.

Table 12.2 Events recorded by log book


Parameter Save Screen
Message Event
(Default) (Default)

Alarm history When an alarm occurs, the alarm message is $LOGBOOK. None
recorded. This record is the same as the record of $LOG_ER (1)
the alarm history menu. To choose the alarms to be
recorded, the 'filtering' function is provided.

'x' is entered When a value or a word is entered, this is recorded. $LOGBOOK. $LOGBOOK.
The 'x' in the message is the entered value or word. If $LOG_ENT (1) $IMG_ENT
screen image is enabled for this event, it will contain (TRUE)
the previous value. Values will be recorded even if
they are invalid. If you cancel an input, it is not
recorded.

'x' is selected When a menu item is selected, this is recorded. The $LOGBOOK. $LOGBOOK.
'x' is selected in 'y' menu 'x' in the message is the selected item. If the menu $LOG_SEL (1) $IMG_SEL
has a title, the 'y' in the message shows the title. If (TRUE)
screen image is enabled for this input, it will show the
screen just before opening the menu.

- 73 -
12. OPERATION LOG BOOK B-83284EN-2/01

Parameter Save Screen


Message Event
(Default) (Default)

'x' is selected in 'y' window When an item is selected in warning window, this is $LOGBOOK. $LOGBOOK.
recorded. The 'x' in the message is the selected item. $LOG_WIN (1) $IMG_WIN
The 'y' in the message is the beginning of the (TRUE)
message in the warning window. If screen image is
enabled for this event it will show the warning
window.

'x' is selected in MENU When an item is selected by MENU key or FCTN $LOGBOOK. None
'x' is selected in FCTN key, this is recorded. The 'x' in the message is the $LOG_MENU (1)
selected item

JOG menu TOOL 'x' Operations of the JOG menu are recorded with these $LOGBOOK. None
JOG menu USER 'x' messages. $LOG_JGMN (1)
JOG menu JOG 'x'
JOG menu GROUP 'x'
JOG menu ROBOT
JOG menu EXT

Menu changed 'x' When a menu is changed, this is recorded. The 'x' in $LOGBOOK. None
the message is the title of the new menu. Changes to $LOG_MNCHG (1)
sub menus such as Config or Detail are not
recorded.

'x' is pressed When a key is pressed, this message is recorded


with the key name. It is not recorded when the key is
released. If SHIFT is held when the key is pressed,
the word 'SHIFT,' is added to the key name(except
SELECT, EDIT, DATA). The keys are grouped as
follows, and you can disable recording of each group.

F1, F2, F3, F4, F5 $LOGBOOK. $LOGBOOK.


$LOG_FNKEY (1) $IMG_FNKE
Y (TRUE)

+X(J1), -X(J1), +Y(J2), -Y(J2), +Z(J3), -Z(J3), $LOGBOOK. None


+X^(J4), -X^(J4), +Y^(J5), -Y^(J5), +Z^(J6), -Z^(J6) $LOG_JGKY (1)
+(J7), -(J7), +(J8), -(J8)

SELECT, EDIT, DATA, $LOGBOOK. None


$LOG_PRGKEY
(1)

UF1, UF2, UF3, UF4, UF5, UF6, UF7 $LOGBOOK. None


$LOG_UFKY (1)

+%, -%, COORD $LOGBOOK. None


$LOG_OVRKY (1)

FWD, BWD $LOGBOOK. None


$LOG_FWDKY (1)

HOLD $LOGBOOK. None


$LOG_HLDKY (1)

STEP $LOGBOOK. None


$LOG_STPKY (1)

PREV $LOGBOOK. None


$LOG_PRVKY (1)

- 74 -
B-83284EN-2/01 12. OPERATION LOG BOOK

Parameter Save Screen


Message Event
(Default) (Default)

'x' is pressed ENTER $LOGBOOK. None


$LOG_ENTKY (1)

ITEM $LOGBOOK. None


$LOG_ITMKY (1)

RESET $LOGBOOK. None


$LOG_RSTKY (1)

Override x% When override is changed, this is recorded. The 'x' in $LOGBOOK. None
the message is the new override value. This records $LOG_OVR (1)
all change of override by any method. For example,
'+%' key, TP is enabled, override instruction of
program.

JOINT coordinate When coordinate is changed, this is recorded. This $LOGBOOK. None
USER coordinate records all change of coordinate by any method. $LOG_CRD (1)
TOOL coordinate
JOG coordinate
PATH coordinate

Single step ON When single step is changed, this is recorded. This $LOGBOOK. None
Single step OFF records all change of single step by any method. $LOG_STEP (1)

Motion group x When motion group is changed, this is recorded. The $LOGBOOK. None
'x' in the message is the new motion group. This $LOG_GRP (1)
records all change of motion group by any method.

Sub group ROBOT When sub group is changed, this is recorded. This $LOGBOOK. None
Sub group EXT records all change of sub group by any method. $LOG_SGRP (1)

User frame x When user frame number is changed, this is $LOGBOOK. None
recorded. The 'x' in the message is the new user $LOG_UF (1)
frame number. This records all change of user frame
number by any method.

Tool frame x When tool frame number is changed, this is $LOGBOOK. None
recorded. The 'x' in the message is the new tool $LOG_UT (1)
frame number. This records all change of tool frame
number by any method.

Save file x File x is saved. $LOGBOOK. None


Load file x File x is loaded. $LOG_FILE (1)
These events are ONLY for file save/load in following
screens.
• File screen
• Program list screen

WAIT is released (x, y) The waiting WAIT instruction is canceled by WAIT $LOGBOOK. None
RELEASE in program x line y. $LOG_WTRLS (0)

Create program x TP program x is created. $LOGBOOK. None


Delete program x TP program x is deleted. $LOG_PGCHG (0)
Write line x of y Line x of TP program y is written.
Delete line x of y Line x of TP program y is deleted.

Write P[x] of y Position data P[x] of TP program y is written. These $LOGBOOK. None
are also recorded when program is changed $LOG_SETPOS(0)
internally.

- 75 -
12. OPERATION LOG BOOK B-83284EN-2/01

Parameter Save Screen


Message Event
(Default) (Default)

TP 'x' ON This records the low level key operation. All key $LOGBOOK. None
TP 'x' OFF operations of Teach Pendant are recorded. When a $LOG_TPKY (0)
key is pressed, 'TP x ON' is recorded. When a key is
released, 'TP x OFF' is recorded. ENABLE switch
and E-STOP are also recorded. SHIFT key is treated
as normal key. CRT operations are not recorded by
this event. 'x' in the message is key name, the
following keys are recorded.
ENABLE, ESTOP
PREV, F1, F2, F3, F4, F5, NEXT
SHIFT, MENU, SELECT, EDIT, DATA,FCTN, i
UP, DOWN, LEFT, RIGHT, DISP
RESET, STEP, BACKSPACE, ITEM,
HOLD, FWD, BWD, COORD, +%, -%, GROUP
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -/,, ., ENTER, HELP/DIAG,
UF1, UF2, UF3, UF4, UF5, UF6, UF7,
+X(J1), -X(J1), +Y(J2), -Y(J2), +Z(J3), -Z(J3),
+X^(J4), -X^(J4), +Y^(J5), -Y^(J5), +Z^(J6), -Z^(J6),
+(J7), -(J7), +(J8), -(J8)

Cold start Start mode is recorded. $LOGBOOK. None


Power failure recovery $LOG_STMD(1)
Controlled start

12.3 SETTING UP BOOK


A system can have 16 books at a maximum. User can setup each book by system variable. Followings are
items user can setup.
• Title
• Size
• Memory to store buffer
• Visible/invisible

Table 12.3 System variables to setup book


System variable Type Default Range Description
name
$LOG_BUF[1-16]. String [1-16] ‘’ Max 13 Title of every buffer. This string is displayed
$TITLE chars on the top line of LogBook menu.
It also be displayed in pop up menu of
F2([BOOK]) in LogBook menu.
If the value is ‘’, the default title is displayed.
Default title of BOOK1 is ‘Operation’.
Default title of ‘BOOK2 is ‘I/O”.
Default title of BOOK3 is ‘BOOK 3’

- 76 -
B-83284EN-2/01 12. OPERATION LOG BOOK

System variable Type Default Range Description


name
$LOG_BUF[1-16]. Integer [1] 50 0, Size of the buffer to save log. Unit is K Bytes.
$SIZE [2] 100 2147483647 One record takes about 300 bytes
[3-16] 0 If this value is too big, maximum available
size of Log Book buffer is allocated
automatically.
If there is not enough memory to make Log
book buffer,
SYST – 188 WARN “book(%d) was not
created”
is posted and the book is not created.
Cycle power is needed to enable the change
of this variable.
$LOG_BUF[1-16]. Integer [1] 0 0, Memory type of every buffer.
$MEM_TYPE [2] 1 2147483647 0: In SRAM, Log is kept at power down.
[3-16] 0 1: In DRAM, Log is cleared at power down.

$LOG_BUF[1-16]. Boolean [1] TRUE FALSE, If FALSE, the buffer is not displayed in pop
$VISIBLE [2] FALSE TRUE up menu of F2([BOOK]) in LogBook menu.
[3-16] TRUE

12.4 OPERATIONS
Displaying the Log Book Screen
1 Press MENU.
2 Select 4, ALARM.
3 Press F1, [TYPE].
4 Select Log Book. You will see a screen similar to the following:

Log book
Operation ( 20.0 k) 1/790
1*SHIFT,F5(TOUCHUP) is pressed, line 2
2 '+Y^(J6)' is pressed
3 SHIFT+FWD is pressed
4*Select 'YES' in 'You are in the diff
5 SHIFT+FWD is pressed
6 SHIFT+FWD is pressed
7 Single step ON
8 'STEP' is pressed
9 'LINER' is selected
10*SHIFT,F1(POINT) is pressed line 2/2

[ TYPE ] [ BOOK ] DETAIL CLEAR

5 To change to a different Log Book, press F2, BOOK.


6 To view the screen image for a line that is marked with a “*”, select the line and press F3, DETAIL.
You will see a screen similar to the following:

- 77 -
12. OPERATION LOG BOOK B-83284EN-2/01

Log book
Operation ( 50.0 k) 1/790
*SHIFT,F5(TOUCHUP) is pressed, line 2/3
10-JUL-21 16:16 :06
--Screen image---------------------------

PNS0001 LINE 0 \T2\ ABORTED


PNS0001\\\\\\\\\\\\\\\\\\\\\\\\ i
2/3
1:J P[1] 100% CNT50
\\\2:J P[2] 100% FINE
[End]

7 To view details of an entry, select the entry and press F3, DETAIL. You will see a screen similar to the
following:

Log book
Operation ( 50.0 k) 5/790
SRVO-001 Operation panel E-stop

SERVO 00110110
24-JUN-00 14:17 :36

8 To clear the log, press F5, CLEAR, then press F4, YES.

Saving Log Book data as a Text File


Log Book data is saved as text file LOGBOOK.LS. There are two ways to save data:
• At the FILE menu, press F4, BACKUP, and select “Error Log”.
LOGBOOK.LS is saved along with the error log files.
• In the Log Book menu, press the FCTN key and select SAVE.
LOGBOOK.LS is saved to the selected device.

See the following example of a LOGBOOK.LS file.

- 78 -
B-83284EN-2/01 12. OPERATION LOG BOOK
Operation
============================================================
*SHIFT,F5(TOUCHUP) is pressed, line 2/3
00/06/02 14:17:36
--Screen image-------------------------------
PNS0001\\\\\\\\\\\\\\\\\\\\\\\JOINT\\10\%
1 J P[1] 100% CNT59
2 J P[2] 100% FINE
[END]
POINT TOUCHUP>
============================================================
'+Y^(J6)' is pressed
00/06/02 14:17:20
============================================================
SHIFT+FWD is pressed
00/06/02 14:17:12
============================================================
Select 'YES' in 'The cursor is on a different' window
00/06/02 14:16:40
--Screen image-------------------------------
PNS0001\\\\\\\\\\\\\\\\\\\\\\\JOINT\\10\%
+------------------------------+
|The cursor is on a different |
|line from where the program |
1 |PAUSED [1]. |
2 |Are you sure you want to run |
[END|from this line ? |
| |
| \\\\YES\\\\ NO |
| |
+------------------------------+
POINT TOUCHUP>
============================================================
SHIFT+FWD is pressed
00/06/02 14:16:30
============================================================
SHIFT+FWD is pressed
00/06/02 14:16:28
============================================================

Filtering Alarms and Screens


You can set system variables to filter specific alarms and screens.
By default, Log Book filters out warning errors. You can filter errors to be logged by severity, type, and
item number.

Table 12.4 (a) System variables used for filtering


System Variable Name Type Default Range Description

$LOG_ER_SEV INTEGER 6 -2147483648 Filter by severity of error.


2147483647 When a bit in this is True, the corresponding errors
are logged.
• Bit 0 (1): Log warning errors.
• Bit 1 (2): Log pause errors.
• Bit 2 (4): Log abort errors.
Ex. 6 = pause and abort errors are logged.
Priority of this is lower than $LOG_ER_TYP and
$LOG_ER_ITM.

- 79 -
12. OPERATION LOG BOOK B-83284EN-2/01

System Variable Name Type Default Range Description

$LOG_ER_TYP[1-n] INTEGER 0 -2147483648 Filter by type of error.


2147483647 If a positive value is specified, alarms of the
specified type are logged.
Ex. 11 = SRVO alarms are logged.
If a negative value is specified, alarms of the
specified type are not logged.
Ex. -11 = SRVO alarms are not logged.
Priority of this is higher than $LOG_ER_SEV but
lower than $LOG_ER_ITM.

$LOG_ER_ITM[1-n] INTEGER 0 -2147483648 Filter by individual error.


2147483647 If a positive value is specified, the specified alarm
is logged.
Ex. 11001 = SRVO-001 is logged.
If a negative value is specified, the specified alarm
is not logged.
Ex. -11001 = SRVO-001 is not logged.
Priority of this is higher than $LOG_ER_SEV and
$LOG_ER_TYP.

Control error filtering by setting the following system variables.


• $LOG_ER_ITM[1-n]
• $LOG_ER_SEV
• $LOG_ER_TYP[1-n]

The priority of the settings is: $LOG_ER_SEV < $LOG_ER_TYP < $LOG_ER_ITM
See the following for an example of error filtering:

SRVO-001 "Operator panel E-stop" Severity=PAUSE Type=11 Item=11001


SRVO-038 "Pulse mismatch" Severity=ABORT Type=11 Item=11038
TPIF-104 "Teach pendant is disabled" Severity=WARN Type=9 Item=9104

Table 12.4 (b) Alarm filtering example


$LOG_ER_SEV $LOG_ER_TYP $LOG_ER_ITM SRVO-001 SRVO-038 TPIF-104

6 0, 0, .. 0 ,0, .. Logged Logged Not logged


6 0, 0, .. 9104, 0, .. Logged Logged Logged

6 0, 0, .. 9104, -11001, .. Not logged Logged Logged

7 -11, 0, .. 11001, 0, .. Logged Not logged Logged

0 11, 9, .. -11001 Not logged Logged Logged

Screen filtering enables Logbook to log UIF events that occur in the screens you specify. Screen filtering
supports the following events (UIF events).
• 'x' is entered.
• 'x' is pressed.
• 'x' is selected.
• 'x' is selected in 'y' menu.
• 'x' is selected in 'y' window.
• 'x' is selected in MENU.
• 'x' is selected in FCTN.
• JOG menu TOOL 1 etc.

- 80 -
B-83284EN-2/01 12. OPERATION LOG BOOK

NOTE
TP’x’ ON/OFF is not supported.

By default, screen filtering is disabled. Screen filtering is enabled/disabled by $LOGBOOK.$SCRN_FL.


• If $LOGBOOK.$SCRN_NO_ENT is TRUE, events in registered screens are recorded. If FALSE,
events in NOT registered screens are recorded.
• To register screens, softpart ID and screen ID must be set to $LOG_SCRN_FL[ ].$SP_ID and
$LOG_SCRN[ ].$SCRN_ID. By default, no screen is registered for filter.

Table 12.4 (c) System variables for screen filtering


System Variable Name Type Default Range Description

$LOGBOOK.$SCRN_FL BOOLEAN FALSE FALSE/TRUE Screen filter is disabled/enabled.

$LOGBOOK.$SCRN_NO_ENT BOOLEAN TRUE FALSE/TRUE TRUE: Events on registered screens are


not recorded. Events on other screens
are recorded.
FALSE: Events on registered screens
are recorded Events on other screens
are not recorded.

$LOGBOOK.$NUM_SCRN_FL Integer 20 1,200 Number of $LOG_SCRN_FL

$LOG_SCRN_FL[ ].$SCRN_ID ULONG 0 0,4294967295 Screen ID of screen for filter

$LOG_SCRN_FL[ ].$SP_ID ULONG 0 0,4294967295 Softpart ID of screen for filter

To filter screens so that passwords are not recorded, set the following:

$LOGBOOK.$SCRN_FL = TRUE
$LOG_SCRN_FL[1].$SP_ID = 935
$LOG_SCRN_FL[1].$SCRN_ID = 1

12.5 EXTENDED ALARM LOG

12.5.1 Setup
This example name BOOK3 as “ALARM” and use it for only for record of alarms. This configuration uses
PERM memory of 500kbytes. The number of alarms that can be stored in the book depends on contents of
alarms. Suppose user alarm with undefined alarm message occurred. The book can record the alarm about
5000 times.

NOTE
Because size of book is large, please check the rest of PERM memory before
using this setting. The rest of PERM memory should be more than 150KB after the
book is established. If the book uses 500KB, the rest of PERM memory should be
more than 650KB(500KB + 150KB).

Table 12.5.1 System variables


System
Type Default value Value Comment
variable
$LOG_BUF[3]. String ‘’ ALARM Title of book
$TITLE
$LOG_BUF[3]. Integer 0 500 Size of book is 500kbytes. The number of alarms that this
$SIZE book can store depends on contents of alarms.

- 81 -
12. OPERATION LOG BOOK B-83284EN-2/01

System
Type Default value Value Comment
variable
$LOG_BUF[3]. Integer 0 0 Buffer of this book is made on permanent pool.
$MEM_TYPE Cycle power doesn’t clear records.
$LOG_BUF[3]. Boolean TRUE TRUE The book of “ALARM” is displayed in F2 ([BOOK]) pull up
$VISIBLE menu. Please note that this book is not always displayed
as the 3rd item on the pull-up menu.
$LOGBOOK. Integer 1 3 Alarms are recorded in book3.
$LOG_ER
$LOG_ER_SEV Integer 6 7 Filter by severity of error.
When a bit in this is TRUE , the corresponding errors are
logged.
• Bit 0 (1): Log warning errors.
• Bit 1 (2): Log pause errors.
• Bit 2 (4): Log abort errors.
Ex. 7 = warn, pause and abort errors are logged (All
alarms are recorded).

Cycle power is needed to enable these changes.

12.5.2 How to Display Alarm Log


1) Press MENU.
Select ALARM.
Press F1 and select “Log book”. Logbook screen is displayed.

Log book
Operation ( 50.0 k) 4/220
1 RESET is pressed
2 FOCUS changed to ‘Log book’
3 Menu changed ‘Log book’
4 Power failure recovery
5 PREV is pressed
6*F1([ TYPE ]) is pressed
7*F1([ TYPE ]) is pressed
8 Menu changed ‘Log book’
9 ‘ALARM’ is selected in MENU
10 Menu changed ‘DATA Registers’
11 DATA is pressed

[ TYPE ] [ BOOK ] DETAIL CLEAR

2) Press F2 and select “ALARM”.

Log book
Operation ( 50.0 k) 5/221
1*F2([ BOOK ]) is pressed
2 RESET is pressed
3 Focus changed to ‘Log book’
4 Menu changed ‘Log book’
5 Power failure recovery
6 PREV is pressed
7*F1([ TYPE ]) is pressed
8*F1([ TYPE ]) is pressed
9 Menu changed ‘Log book’
10 ‘ALARM’ is selected in MENU
BOOK 1
11
1 Menu changed ‘DATA Registers’
Operation
2 ALARM

[ TYPE ] [ BOOK ] DETAIL CLEAR

- 82 -
B-83284EN-2/01 12. OPERATION LOG BOOK
3) Contents of book “ALARM” , which is made by setting of this example, is displayed.

Log book
ALARM (500.0 k) 2/5588
1 R E S E T
2 SYST-040 Operation mode AUTO S
3 SRVO-233 TP OFF in T1,T2/Door
4 SRVO-012 Power failure recover
5 INTP-127 Power fail detected
6 SYST-043 TP disabled in T1/T2
7 R E S E T
8 PWD-026 Load FRS:FRSR.VR as P
9 R E S E T
10 PWD –020 Write pos 1, AA_02.TP
11 PWD –020 Write pos 1, AA_02.TP

[ TYPE ] [ BOOK ] DETAIL CLEAR

4) F3 shows detail screen.

Log book
ALARM (500.0 k) 2/5588
SYST-040 Operation mode AUTO selected

SERVO 00110110
01-JUN-06 15:49 :36

- 83 -
13. PROGRAM TOOLBOX B-83284EN-2/01

13 PROGRAM TOOLBOX
The Program Toolbox has the following features. Installing the Program Toolbox option software makes
available the following Program Toolbox options:
● Soft limit setting

13.1 SOFT LIMIT SETTING


Using the soft limit setting option enables the software axis limits for a robot to be determined
automatically; so the hard stop locations for the J1 axis can be determined. Setting up axis limits without
using the soft limit setting option requires executing all programs step by step, recording the maximum
value for each angle before the axis joint limits can be set up manually. It also requires jogging the robot to
the position limits specific to the J1 axis and determining the best hardware stop position for the J1 axis
manually.
The soft limit setting option reads all of the programmed positions on the robot automatically and
determines the maximum and minimum taught joint angles used in all programs. It then uses the
information to set up the specified joint limits automatically while taking a user-specified limit buffer into
account. The soft limit setting option also reports the appropriate locations for the J1 axis hard stop
according to the same maximum taught joint angle for all programs.
By default, software axis limits are set up only for the J1, J2, and J3 axes. If necessary, they can be set up for
other axes.
A limit buffer is added to the detected limits to allow tolerance for motion between positions when a
program is executed. When the robot moves from one position to another, the motion of the robot between
the positions might get out of the axis limits. The limit buffer is applied to the detected maximum and
minimum taught points to ease the axis limits so that a joint limit error will not occur on the robot motion
between the taught points.
A limit buffer can be set anywhere between 0 and 50 degrees. A limit buffer of 10 degrees is set up by
default. In many cases, this limit buffer degree provides adequate ease. If many limit errors occur during
program execution after the soft limit setting option is used, increase the limit buffer and try again.
Before limits are set up, axes to which the limits are to be applied must be selected and, if necessary, the
limit buffer value must be re-set. Factory-set limits can be restored if newly set values become unnecessary.

Using the limit setting option


Table 13.1 lists each soft limit setup item. Use Procedure 13-1 to calculate mounting locations for limit
blocks on the robot flange.

Table 13.1 Toolbox soft limit setup menu items


Item Description

Axis This item is the number assigned to the axis for which limits can be set up.

Set Limit This item indicates whether a limit has been set up.

Procedure 13-1 Using the soft limit setting option to set up software axis limits
Step
1. Press MENU key.
2. Select UTILITIES.
3. Press F1, [TYPE].
4. Select Limit Set. The following menu appears.

- 84 -
B-83284EN-2/01 13. PROGRAM TOOLBOX
Limit Set
1/10
GROUP:1 ( R-2000iB/210F)
Axis Set Limit
1 YES
2 YES
3 YES
4 NO
5 NO
6 NO
7 NO
8 NO
9 NO
Limit Buffer: 10 deg
0% of program done

[ TYPE ] GROUP EXECUTE YES NO >

5. To select an axis for limit setting, follow the steps below:


a. Move the cursor to the number assigned to a desired axis.
b. Press F4, Yes to select the axis. If F5, No is pressed, no limit is set up for the axis,
6. To specify a limit buffer, move the cursor to Limits buffer, enter a degree, and press ENTER.
7. To set up the axis limits, press F3, EXECUTE.
When limit setting is completed, the following information is displayed on the screen.

Limit Set
1/12
GROUP:1 ( R-2000iB/210F)
Axis Limits
Axis LOWER UPPER
J1 -180 180 dg
J2 -60 76 dg
J3 -132 230 dg
J4 -360 360 dg
J5 -125 125 dg
J6 -360 360 dg
J7 0 0 dg
J8 0 0 dg
J9 0 0 dg

MECHANICAL STOPPER LOCATIONS


(REFER TO MECH MANUAL FOR AVAILABILITY)

J1 MECHANICAL STOPPER LOCATION


Min Minus Side: -180
Min Plus Side: 180

J2 MECHANICAL STOPPER LOCATION


Min Minus Side: -60
Min Plus Side: 76

J3 MECHANICAL STOPPER LOCATION


Min Minus Side: ****
Min Plus Side: ****
YOU MUST COLD START TO TAKE EFFECT

[ TYPE ]

The displayed mechanical stop numbers indicate the locations of the limit blocks on the J1, J2, and J3
axes. Mounting the limit block on the J1 axis requires aligning the hole at the center of the limit block
with the reported J1 axis mechanical stop hole on the base of the robot.
Additional information
The displayed mechanical stop numbers indicate the positions of the center bolt hole on each
mechanical stop.

- 85 -
13. PROGRAM TOOLBOX B-83284EN-2/01

Note: The current version does not support the mounting positions of mechanical stops.
Additional information
The following operation is not supported on some robot models.
8. To reset the axis limits to their factory settings, press F1, DEFAULT.
Additional information
Enabling new software axis limit settings always requires cold-starting the controller.
9. After axis limit setting is completed, enable the new software axis limit settings by cold-starting the
controller according to the following steps.
a. If the controller is already on, turn it off.
b. On the teach pendant, press and hold down the SHIFT and RESET keys.
c. While still holding down the teach pendant keys, turn the power on.
d. After the teach pendant has displayed its menu, release the teach pendant keys.
Additional information
If many joint limit errors occur during program execution, increase the limit buffer and re-run the
program.

- 86 -
B-83284EN-2/01 14. ADVANCED CONSTANT PATH

14 ADVANCED CONSTANT PATH


14.1 OVERVIEW
In addition to the Constant Path feature, ADV-CP Speed CTRL (R806) and ADV-Max Speed CTRL
(R805) consist of the following functions, as well as and features for easy teaching and cycle time
reduction.

ADV-CP Speed CTRL


- Linear Distance
- Corner Region

ADV_Max Speed CTRL


- Process Speed
- Max Speed

It requires that the Constant Path option be loaded and enabled.

14.2 LINEAR DISTANCE


Linear Distance is a robot motion feature that is useful for pick and place material handling applications
such as palletizing.
Fig.14.2(a) PICK and PLACE Application shows a typical pick and place application. If all termination
types are FINE or CNT0, then the pick and place path would be as shown.

P2 P1 P4

Linear Linear
move move

PICK PLACE

P3 P5

Fig. 14.2 (a) PICK and PLACE application

The robot starts at P1 and goes through P2 and picks up a part at P3. It then goes through P2 to P4 and then
to P5 where it places the part.

Typically, however, FINE and CNT0 is used only to reach P3 for PICK and to PLACE at P5. For all other
motions, high CNT values are used. For instance, the actual path might look like Fig.14.2(b) PICK and
PLACE Application with CNT100 .

- 87 -
14. ADVANCED CONSTANT PATH B-83284EN-2/01

P2 P1 P4

CNT100 CNT100

PICK PLACE
FINE FINE
P3 P5

Robot is at P1
J P[2] 100% CNT100
L P[3] 2000mm/sec FINE
L P[2] 2000mm/sec CNT100
L P[4] 2000mm/sec CNT100
L P[5] 2000mm/sec FINE

Fig. 14.2 (b) PICK and PLACE application with CNT100

This kind of a path will give you better cycle time. However, you do not know how much linearity you will
get going from P2 to P3 (for pick) or from P4 to P5 (for place). In order to get the desired linearity, you
would adjust either the positions P2 or P4, or you would experiment with different CNT values. For
example, you might shift P2 or P4 higher or lower, or you might use CNT50 at P2 or P4.
With Linear Distance, you do not have to guess and experiment. If you want the last 100mm before pick and
the last 150mm above place to always be straight above P3 and P5 respectively, you can use Linear
Distance for specifying these amounts. Refer to Fig.14.2(c) Adjusting P3 and P5 with Linear Distance .

P2 P1 P4

CNT100 CNT100

LD=150mm
LD=100mm
P3 P5
PICK PLACE

The program would be (from P1)


J P[2] 100% CNT100
L P[3] 2000mm/sec FINE AP_LD100
L P[2] 2000mm/sec CNT100 RT_LD100
L P[4] 2000mm/sec CNT100
L P[5] 2000mm/sec FINE AP_LD150

Fig. 14.2 (c) Adjusting P3 and P5 with linear distance

This is a convenient way to design motions for pick and place. By only adjusting the linear distance, you
can determine the appropriate tradeoff between cycle time and approach/retract linearity.

- 88 -
B-83284EN-2/01 14. ADVANCED CONSTANT PATH

NOTE
Linear Distance is implemented on the controller to control the linearity
immediately after a pickup at the infeed and just before placement on the pallet.
Linear Distance guarantees the distances you specify. Due to ITP resolution,
Linear Distance cannot match your value exactly. However, the linear distance
that you specify will be the minimum value that system will try to achieve. For
example, if you specify 100 mm linear distance, the system might provide 103 mm
linear distance, but it will never provide linear distance less than what you
specified.

14.2.1 How it Works


Linear Distance uses two motion option elements:

AP_LD: Approach Linear Distance


AP_LD is used for a place motion.
L P[2] 2000mm/s CNT0 AP_LD100
L P[2] 2000mm/s CNT0 AP_LDR[1]

In the second example, the distance is specified indirectly via register #1.

RT_LD: Retract Linear Distance


RT_LD is used for a pick-up motion.

L P[3] 2000mm/s CNT100 RT_LD100


L P[3] 2000mm/s CNT100 RT_LDR[1]

CNT 50
P2
WITHOUT USING LINEAR DISTANCE
P1
Robot is at P3

•Dashed line example : CNT 100


L P[2] 2000mm/sec CNT50
J P[1] 100% CNT100

•Solid line example :


L P[2] 2000mm/sec CNT100 Desired LD = 100mm
J P[1] 100% CNT100 P3

P2 CNT50

USE OF LINEAR DISTANCE P1


Robot is at P3
CNT100
•Dashed line example :
L P[2] 2000mm/sec CNT50 RT_LD100
J P[1] 100% CNT100

•Solid line example : Desired LD = 100mm


L P[2] 2000mm/sec CNT100 RT_LD100 P3
J P[1] 100% CNT100

Fig. 14.2.1 (a) RT_LD: effect of CNT value

- 89 -
14. ADVANCED CONSTANT PATH B-83284EN-2/01

The RT_LD value affects the corner of P3-P2-P1 in Fig.14.2.1(a) RT_LD: Effect of CNT Value . The
higher the value of RT_LD, the smaller the corner will be. When the RT_LD value is greater than or equal
to the distance between P3 to P2, the corner will become 0. The motion will automatically become FINE
regardless of the CNT value you specify.

CNT50
P1 P4

WITHOUT USING LINEAR DISTANCE


CNT100
Robot is at P1

•Dashed line example :


J P[4] 100% CNT50
L P[5] 2000mm/sec CNT100
Desired LD = 100mm
•Solid line example :
J P[4] 100% CNT100
L P[5] 2000mm/sec CNT100
P5

P1 CNT50 P4

CNT100
USE OF LINEAR DISTANCE
Robot is at P1

•Dashed line example :


J P[4] 100% CNT50
L P[5] 2000mm/sec CNT100 AP_LD100 Desired LD = 100mm

•Solid line example :


J P[4] 100% CNT100
L P[5] 2000mm/sec CNT100 AP_LD100 P5
図 14.2.1 (b) Place motion: two possible traces

The AP_LD value affects the corner of P1-P4-P5 in Fig.14.2.1(b) Place Motion: Two Possible Traces . The
higher the value of AP_LD, the smaller the corner will be. When the AP_LD value is greater than or equal
to the distance between P4 to P5, the corner will become 0. The preceding motion (motion from P1 to P4)
will become FINE regardless of the CNT value for that move.

14.2.2 Limitations
- The linear distance function only supports motion group 1 by default. Set the system variable
$LDCFG.$group_msk to 3 to support a second group.
- The linear distance function only supports the linear motion type.
- The linear distance function only supports position (x, y, and z) and not orientation (w, p, and r).
- The linear distance function only supports articulated robots and does not support Independent axes or
Positioners.
- The local condition trigger time might be different than without Linear Distance. However the timing
is repeatable.
- When multiple group motion is used, the motion will be synchronized. However, if more than one
group has linear distance enabled, all the groups will have linear distance satisfied.
- When using max_speed (refer to max speed section below), the specified Linear Distance may not be
guaranteed.

- 90 -
B-83284EN-2/01 14. ADVANCED CONSTANT PATH

- Linear Distance function does NOT support Coordinated Motion (Linear Distance function will be
automatically disabled for motions with COORD option).
- Linear Distance function does NOT support Continuous Motion Types such as Weave, Continuous
Turn, and Robot Link. (The Linear Distance function will be automatically disabled with the
continuous motion type.)
- Linear Distance function might not work with TCP speed prediction function (TCPP). With Linear
Distance specified, TCPP results might not be correct.

14.2.3 How to Use Linear Distance


NOTE
Due to ITP resolution, Linear Distance cannot match your value exactly. However,
the linear distance that you specify will be the minimum value that system will try to
achieve. For example, if you specify 100 mm linear distance, the system might
provide 103 mm linear distance, but it will never provide linear distance less than
what you specified.

Conditions
- You have created a teach pendant program.
- Your teach pendant program contains at least one linear motion instruction.

Steps
1 Press SELECT.
2 Move the cursor to the name of the program you want to modify and press ENTER.
3 Continuously press the DEADMAN switch and turn the teach pendant ON/OFF switch to ON.
4 To touch up and modify motion instructions, move the cursor to the line number of the motion
instruction you want to modify.

NOTE
To use Linear Distance function, please modify linear motion instruction without
fail.

5 Move the cursor to the empty space at the end of the linear motion instruction that you want to modify
and press F4, [CHOICE]. You will see menus similar to the following.

Motion Modify 1 Motion Modify 2 Motion Modify 3


1 No option 1 Offset,PR[ ] 1 Skip,LBL,PR
2 Wrist Joint 2 Incremental 2 TIME AFTER
3 ACC 3 Retract_LD 3 DISTANCE BEFORE
4 Skip,LBL[] 4 Approach_LD 4 PTH
5 BREAK 5 Tool_Offset 5
6 Offset/Frames 6 Tool_Offset,PR[ 6
7 PSPD 7 TIME BEFORE 7
8 –next page-- 8 –next page-- 8 –next page--

6 If you want to use Linear Distance on an approach point, select Approach_LD.


If you want to use Linear Distance on a retract point, select Retract_LD.
7 Type the number of millimeters that you want the tool center point (TCP) to approach or retract using
Linear Distance.

NOTE
The default value is “direct” which means that the value is a specific number in
millimeters. To use a value stored in a register, press F3, INDIRECT, and type the
register number.
- 91 -
14. ADVANCED CONSTANT PATH B-83284EN-2/01

14.3 CORNER REGION TERMINATION TYPE (CRy)


L P[2] 100 mm/sec CRy
CRy is an optional termination type that can be used to adjust the corner rounding for Cartesian motions.
When you use the CR termination type, you must specify the corner region value, y, (in millimeters).
Corner Region value is the distance from the starting of a corner path to the taught position, as shown in the
following figure. When CRy is specified, TCP path will maintain the corner path within the specified region,
meaning that the actual distance from the starting/ending of a corner path to the taught position is less than
or equal to the specified corner region value (y).

CRy[mm]
P1
P2

Corner path starts here.

Corner path ends here.

P3

Fig. 14.3 Corner path

When you set corner region, use the following guidelines:


- Specify the corner region in millimeters.
- Corner region value can range in value from 0 mm to 1000 mm.
- The smaller the corner region value, the closer the robot will get to the taught position, and the less the
corner rounding.
- With a larger corner region value specified, the robot will not get as close to the position and the more
corner rounding.

14.3.1 CRy Versus Segment Distance


If the specified corner region value, y, is greater than half the segment distance, then the actual value used is
limited to half segment distance as shown below.

- 92 -
B-83284EN-2/01 14. ADVANCED CONSTANT PATH

CRy [mm] > half segment distance


Actual CRx=half segment distance

CR y[mm]
P1 x[mm]
P2

P3

Unequal segment lengths case


Actual CR=half segment distances x1, x2

CR y[mm]

P1 x1[mm]
P2

x2[mm]

P3

Fig. 14.3.1 Half segment length

14.3.2 Teaching Techniques


You must be careful about the half distance rule stated above. Keep in mind that because of the half distance
rule, with large specified corner region value, corner path may still be close to the taught position when the
segment distance is short. Use the following guidelines when you teach a path:
- Minimize the number of taught positions.
- Reteach positions using the CR termination type to fit the path instead of adding positions.

14.3.3 Constant Path with Respect to Program Speed Changes


Program section with consecutive CRy – path could be maintained much better compared to other
termination types even when program speed changes, as shown in the following figure.

- 93 -
14. ADVANCED CONSTANT PATH B-83284EN-2/01

CR
Path closed to taught pts
Constant Path wrt Prog Speed

CNT100
Path changes
as Prog Speed changes

Fig. 14.3.3 Program speed changes

14.3.4 Compatibilities and Limitations


Motion Type
- CRy supports Cartesian motion types such as LINEAR and CIRCULAR.
- J motion type is not supported.

Multi Group Motion


For multi group motions, motion will be synchronized. The corner path is generated as a result of the
synchronization of applicable CRy for all involved groups.

CRy termination type only supports articulated robots and does not support Independent axes or
POSITIONERs.

Motion Options
CRy supports the following motion options:
- Group motions
- RTCP
- Line Tracking

CRy has no obvious geometric meaning (corner path would be naturally generated by motion blending)
during the following transitions:
- between RTCP and non-RTCP
- between Tracking and non-tracking

CRy termination type may not work with TCP speed prediction function (TCPP). That is, with CRy
termination type, TCPP results may not be correct.

If the angle between the motion and the next motion is almost zero, CRy termination type does not work and
the path become the same as CNT100.

If you specify both Linear Distance and CRy termination type, then Linear Distance has preference over
CRy in determining a corner path, as shown in the following figures.

- 94 -
B-83284EN-2/01 14. ADVANCED CONSTANT PATH

P[x]

CR50 [mm]

L P[x] 2000mm/sec CR50


L P[y] 2000mm/sec CNT100 AP_100

AP_LD100

P[y]

P[x]

CR100 [mm]

L P[x] 2000mm/sec CR100


AP_LD125
L P[y] 2000mm/sec CNT100 AP_LD125

P[y]
Fig. 14.3.4 Corner path determined by CRy if linear dist is satisfied

14.4 PROCESS SPEED


PSPD xxx
Process speed is a motion option control feature that allows you to adjust robot speed to be faster or
slower along a given path (if applicable, the path would be maintained the same regardless of xxx),
where xxx is an integer you specify. The larger the value of xxx is, the faster the robot will move along
the given path.
Process speed is useful for applications with continuous path motion that don’t normally use
maximum program speed; for example, sealing and waterjet cutting. Typically, the process controls
the program speed: how fast the sealing gun can dispense, and how fast the waterjet can cut.
For these applications, teach the desired path using normal methods, tweaking taught position, speed,
term type and ACC.
After the path is taught, if you want to adjust its process speed from the nominal taught value, but do
not want to change the path, you can use the Process Speed feature.
Add this motion option to the range of motion lines where adjustment is required.
- PSPD 100 is equivalent to the default cases without PSPD option.

- 95 -
14. ADVANCED CONSTANT PATH B-83284EN-2/01

- PSPD greater than 100 means faster process speed, while maintaining the same path.
- PSPD less than 100 means slower process speed, while maintaining the same path.
- You can still change other fields in the motion for further tweaking, but the same original rules apply;
that is, the path will change. This allows you to adjust the path easily, even though PSPD is used.
- For PSPD greater than 100, the system internally limits the achievable (but higher) process speed,
based on the jerk/acceleration margin available from the default case.

Be careful to use the PSPD option to reduce cycle time while maintaining the same path since
jerk/acceleration value will be higher. An example is palletizing, where additional factors such as vibration,
duty cycle, reducer life, and so forth, affect cycle time.

• Path Teaching • Cycle Time Optimization


J P[1] 100% FINE J P[1] 100% FINE
L P[2] 500mm/sec CNT100 ACC120 L P[2] 500mm/sec CNT100 ACC120 PSPD110
L P[3] 1000mm/sec CNT0 ACC130 L P[3] 1000mm/sec CNT0 ACC130 PSPD110

P[2] P[2]

No path variation

P[3] P[3]
P[1] P[1]

Fig. 14.4 Process speed tweaking

CAUTION
Process Speed can cause jerky motion if applied too aggressively. To avoid jerky
motion, use a reduced speed.

PSPDxxx can be added to any selective motion line in a TP program, and is applicable to all motion types.
For examples, see the following:
- Case 1 : *** = 100, motion behavior is exactly the same as 100% speed override in the default case, as
though there were no PSPD100.
- Case 2 : *** > 100, the speed will be faster than 100% speed override in the default case.
- Case 3 : *** < 100, the speed will be slower than 100% speed override in the default case.

- Default case :

J P[1] 50% FINE


L P[2] 500mm/sec CNT100
L P[3] 500mm/sec CNT0

P[1] P[2]

Corner path
(Default case)

P[3]

- 96 -
B-83284EN-2/01 14. ADVANCED CONSTANT PATH

- Faster motion case (path is the same, cycle time is shorter.):

J P[1] 50% FINE PSPD110


L P[2] 500mm/sec CNT100 PSPD110
L P[3] 500mm/sec CNT0 PSPD110

P[1] P[2]

Corner path
Same as default case

P[3]
- Slower motion case (path is the same, cycle time is longer.):

J P[1] 50% FINE PSPD50


L P[2] 500mm/sec CNT100 PSPD50
L P[3] 500mm/sec CNT0 PSPD50

P[1] P[2]

Corner path
Same as default case

P[3]

NOTE
The system will internally limit the speed override such that the resulting motion
performance is within mechanical capabilities. As a result, a large value of xxx
may not take effect in some cases and the actual speed override may be smaller
than the specified value.

14.4.1 Limitations
- Under T1 mode, PSPDxxx (with xxx>100) will not take effect.
- PSPDxxx (with xxx>100) might not take effect for the motion line that has max_speed as
programmed speed in a TP program.
- The PSPD option does NOT support TCP speed prediction function (TCPP). That is, for the
motions with PSPD option, TCPP might not result in correct results.
- With large PSPD value or very short segments, the actual corner path might deviate from the
one without PSPD option.

14.5 MAX SPEED

L P[1] max_speed CNT100

- 97 -
14. ADVANCED CONSTANT PATH B-83284EN-2/01

In some applications, the desired speed is the maximum speed that the robot can deliver. For joint motion
moves, the system delivers the maximum capability of the robot; that is, one of the axes reaches its
maximum speed. For linear moves, the system delivers the speed that is specified in the teach pendant
instruction. However, the maximum linear speed of 2000mm/sec imposes a limit on the capability of the
motor to reach higher speeds. The robot can move faster than the speed specified in the motion instruction.

The max speed option allows you to specify a linear motion that will use the maximum speed capability of
the robot. It improves cycle times in Load/Unload applications by speeding up long linear motions. When
this option is loaded, the choice of max_speed will be displayed in the speed field of the teach pendant
motion instruction for a linear motion. The max_speed option affects only the motions for which the speed
is specified as max_speed.

NOTE
When you load this option, the itp_time will be set to at least 12ms.

- If you change the motion type from Linear to Joint, the speed field will change to 100%.
- When the speed field changes from max_speed to another choice, the speed value will return to the
original speed value.

WARNING
When you specify max_speed, the robot will run at high speed. Be sure any loose
parts are firmly attached and that the workpiece is secured.
Otherwise, you could injure personnel or damage equipment.

14.5.1 Limitations
- If unsupported options are used, max_speed will be disabled automatically. No warning or error
message will be displayed. This option does not support the following:
- Any tracking option, such as line tracking, TAST, Coordinated motion, and so forth.
- Multiple group motion
- RTCP function

- If you run a program with an override speed different than 100%, the system will drive the robot such
that one of its axes will reach the override value of its maximum joint speed.
- The local condition trigger time might have some variation.
- If the path becomes too aggressive, you might need to use ACC to smooth it.
- If you are using Dry Run, max speed will be disabled and the speed specified in dry run will be used.
- If you are using Org path resume, max speed will be disabled for the motion line that is resumed.
- If T1 is selected, the T1 speed will be used.
- In single step mode (FWD/BWD) max speed will be disabled and the maximum speed value will be
used.
- Max speed will be disabled automatically for a circular motion.
- The max speed option will still apply when the Miscellaneous teach pendant instruction
LINEAR_MAX_SPEED is used.

The robot will try to attain the maximum speed capability of at least one of its axes. It determines the
maximum speed for the current move by comparing the teach pendant instruction
LINEAR_MAX_SPEED with the maximum linear speed of 2000 mm/sec. The ratio of these two
speeds is the percentage of the maximum axis speed that the axis will reach.

For example: the maximum linear speed is 2000 mm/sec.

- 98 -
B-83284EN-2/01 14. ADVANCED CONSTANT PATH

1. LINEAR_MAX_SPEED = 1200
2. L P[1] max_speed CNT1000

The ratio of 1200 to 2000 is 60%. The system will drive the robot such that one of its axes will reach
60% of its maximum joint speed for line 2 of the program above.

- Max speed does not work with TCP speed prediction function (TCPP). That is, with Max speed, TCPP
results may not be accurate.
- Max speed does not support the following functions (the system will automatically disable Max speed
feature):
- Line Tracking
- RTCP function
- Multi group motions

- 99 -
15. AUTO SINGULARITY AVOIDANCE FUNCTION B-83284EN-2/01

15 AUTO SINGULARITY AVOIDANCE


FUNCTION
15.1 OVERVIEW
For most of six-axis robots in FANUC, the singularity that occurs at elbow (at the boundary between "up"
and "down" configurations) or at the boundary between "front" and "back" configurations causes regional
structure degeneracy. This kind of singularity can easily be avoided by restricting the workplace of a robot.
However, the wrist singularity may happen virtually any place inside the workplace. When a FANUC robot
travels through/near a wrist singular position, motion performance becomes undesirable because
· Joint 4 and 6 will change a lot within a short time period;
· The TCP speed of the robot will slowdown;
· Path may deviate from the commanded one if a motor speed exceeds its limit.

Auto singularity avoidance function will provide a real-time solution to avoid the wrist singularity. With
this function, the followings are achieved.
· The rotation of joint 4 and 6 is minimized, and robot can travel through/near a wrist singular
position smoothly, and TCP speed can be maintained;
· This function works for both LINEAR TPE program motion and LINEAR jogging.

Auto singularity avoidance function is option (A05B-2600-R512). Some robot models does not support this
function.

15.2 HOW TO USE AUTO SINGULARITY AVOIDANCE


How to use auto singularity avoidance in jogging and TPE program will be explained below.

15.2.1 How to Use Auto Singularity Avoidance in Jogging


Enabled/disabled status of auto singularity avoidance function in jogging can be confirmed by checking
whether “S/” is added before the manual-feed coordinate system shown in the teach pendant. Example:
“S/WORLD”
If “S/” is added, the auto singularity avoidance in jogging is enabled. If “S/” is not added, the auto
singularity avoidance in jogging is disabled. Enabled/disabled is automatically determined at power on
depending on the selected program.
In order to select enabled/disabled, refer to the following procedure.

Procedure 15-1 Select enabled/disabled of auto singularity avoidance in jogging


Step
1. Press the FCTN key, and select “T/Singularity JOG” to toggle enabled/disabled of auto singularity
avoidance in jogging.

15.2.2 How to Use Auto Singularity Avoidance in TPE Program


Enabled/disabled of auto singularity avoidance in TPE program can be selected for each program. When a
new TPE program is created, the enabled/disabled of the program is automatically determined depending on
the enabled/disabled status of auto singularity avoidance in jogging. Please note that in the case that the
user loads a TPE program which is saved before the auto singularity avoidance option is added or is saved in

- 100 -
B-83284EN-2/01 15. AUTO SINGULARITY AVOIDANCE FUNCTION
the system which does not have the auto singularity avoidance option, the auto singularity avoidance is
disabled for the TPE program.
In order to select enabled/disabled for each program, refer to the following procedure.

Procedure 15-2 Select enabled/disabled of auto singularity avoidance in program


Step
1 In the program select screen, move the cursor to the program and press the F2, DETAIL key to enter
the detail screen.
2. Press the F3, NEXT key, and the screen shown below is displayed. (This screen shows the auto
singularity avoidance is disabled.)
Singularity Avoidance Func 1/1
Program Header

1 Enable Singularity Avoidance: FALSE

END PREV NEXT TRUE FALSE

3. In order to enable the singularity avoidance, press F4, TRUE. In order to disable the singularity
avoidance, press F5, FALSE.

15.3 LIMITATIONS
Auto singularity avoidance function has the following limitations.
・ This function is supported only in Handling Tool.
・ Some robot models does not support this function.
・ This function can not be ordered with Coordinated motion option.
・ This function can not be ordered with Line tracking option.
・ This function can not be ordered with Continuous turn option.
・ This function can not be ordered with Shape GenerationII option.
・ This function can be used only for linear motion. This function can not be used for Circular/Arc
motion.

15.4 CAUTIONS
Keep the following important information in mind when you set up and use auto singularity avoidance.
・ With the auto singularity avoidance function, actual wrist configuration (flip/nonflip) might be
different from the taught destination positions. The function might change configuration internally not
only for the destination position in the motion line where singularity is detected but also for the
subsequent destination positions in the following motions in the TP program.
・ Since the function will change configuration internally, single step forward and backward might
produce different behavior. To prevent the above from happening, during single step forward motion,
the system will post a warning message "MOTN-208 Config Not Reached" at the point where the
actual configuration is different from the taught one. By observing the message, the user should
re-touch up the taught point at the specific line shown in the warning message this will update the
taught configuration to the actual configuration. As a result, when stepping backward, the motion will
behave the same way as stepping forward.
・ Jogging and program motion might be different when the robot moves near singularity.
・ If the destination position is inside singularity zone, the taught position is changed.
・ The function might not help for the singularity at the corner path.
- 101 -
16. PATH SWITCHING FUNCTION B-83284EN-2/01

16 PATH SWITCHING FUNCTION


Path switching function (A05B-2600-J693) is the function to execute the assignment statements at the
several points in a motion path.
When Path Switching (hereinafter called PS) instruction is specified in the DB calling program as follows,
PS statements define the trigger point and the assignment statement to be executed.

DB CALL statement
1: L P[1] 200mm/sec FINE DB 100mm, CALL A

Contents of sub-program A
1: PS -100mm +0.2sec,DO[1]=(ON)
2: PS -150mm -0.2sec,IF(DI[1]),DO[2]=(DI[2] AND !DI[3])

The distance specified just after DB statement does not affect to the each trigger timing of the PS commands
in the sub-program. The PS statements in the sub program start their execution when the motion starts. User
can mix another normal logical statement with the PS statement in the sub program.

-100mm
+0.2sec (= +40mm)

-150mm
-0.2sec (= -40mm)

IF (DI[1]),DO[2]=(DI[2] AND !DI[3]) DO[1]=(ON) P[1]

Fig. 16 (a) Path switching application

PS instruction is composed of two parts, trigger point and assignment statement.

PS -100mm +0.2sec,DO[1]=(ON)
Trigger point Assignment statement.

Trigger point part specifies the distance (mm) from the destination position and the offset time (sec).
The negative value means the before the motion is completed.
The positive value means the after the motion is completed.
The offset time is converted to the distance according to the specified speed, in the above case, 0.2sec is
converted to 40mm (= 200mm/sec * 0.2sec). This conversion is not precise in the acceleration and
deceleration period.

According to the sign of the trigger distance value, its behavior is treated as distance-before or
distance-after type. As described in the following section, trigger timing of distance-before is much
different from that of distance-after type. And the time value to tune the trigger timing is affected by
override value. So to avoid unexpected trigger by override change, if the initial distance value is minus
value, regardless of the time value, actual PS trigger point will be clamped to -0.0mm as distance-before
type, internally. And if the initial distance value is plus value, regardless of the time value, actual PS trigger
point will be clamped to +0.0mm as distance after type.
Assignment statement part specifies the statement to be executed at the trigger point.
The assignment statement can have IF condition.

PS -150mm -0.2sec,IF (DI[1]),DO[1]=(ON)

- 102 -
B-83284EN-2/01 16. PATH SWITCHING FUNCTION
In this case, when DI[1] is ON, DO[1] is turned on, when DI[1] is OFF, DO[1] is not changed.
The assignment statement can use the following items and operators.

Items for left side Operator for right side or IF condition Items for right side or IF condition
DO[] () ON OFF
RO[] + Constant value
WO[] - DI[] DO[]
AO[] * RI[] RO[]
GO[] / WI[] WO[]
SO[] MOD AI[] AO[]
UO[] DIV GI[] GO[]
F[] AND SI[] SO[]
R[] OR UI[] UO[]
PR[i,j] ! F[]
System variables = (comparison) M[]
M[] < R[]
TC_ONLINE > PR[i,j]
<= TIMER[]
>= System variables
<> TCP_SPD[]

Marker assignment and TC_ONLINE can be specified in PS statement.


AR[] (calling parameter) can not be specified in PS statement.

Up to 20 operations can be specified in one motion line as total of right side formula and IF condition.
One motion statement can have up to 20 PS statements.

Case that the trigger point is negative and it is farther than the start position
(distance-before type)
If the trigger point is negative and it is farther than the start position, this is triggered immediately.

1: L P[1] 200mm/sec FINE


2: L P[2] 200mm/sec FINE DB 100mm, CALL A

Contents of sub-program A
1: PS -1000mm +0sec,DO[1]=(ON)

P[1] -1000mm P[2]

Trigger at this point


DO[1]=(ON)
Fig. 16 (b) Path switch application

You can choose to cause error at this situation by following parameter setting.

$PS_CONFIG.$DB_IMMTRIG (distance-before type)


$PS_CONFIG.$DA_IMMTRIG (distance-after type)

- 103 -
16. PATH SWITCHING FUNCTION B-83284EN-2/01

Value Description
0 Trigger PS condition immediately, but post neither alarm nor warning.
1 (default) Trigger PS condition immediately, and post “INTP-539 PS(program name, line number,
distance[mm]) Already in area” (warning).
other than (0, 1) Not triggered, and post “INTP-540 PS(program name, line number, distance[mm]) Already in
area” (PAUSE).

Case that the trigger point is passed by jog while the program is paused
When original path resume is disabled ($SCR.$ORG_PTH_RSM=FALSE), if the program is paused during
the motion with PS, and jogged by TP, and the trigger point is passed by jog, then the PS condition is
triggered immediately when the program is resumed.

When original path resume is enabled ($SCR.$ORG_PTH_RSM=TRUE), once back to the paused position
on the original motion path and re-start the program. In this case, the PS condition is triggered when the
trigger point is passed after resume and re-start.

You can choose to cause error at this situation by above parameter setting.
($PS_CONFIG. $DB_IMMTRIG, $DA_IMMTRIG)

1: L P[1] 200mm/sec FINE


2: L P[2] 200mm/sec FINE DB 100mm, CALL A

Contents of sub-program A
1: PS -500mm +0sec,DO[1]=(ON)

-500mm

Jogged by TP
P[1] Pause Resume P[2]
Trigger at this point
DO[1]=(ON)

Fig. 16 (c) Path switch application (original path resume is disabled)

Case that TCP path moves away without entering the trigger area on CNT
motion
In case of CNT motion, teaching point does not on the actual robot path. If the robot path is too far from the
trigger area, reminding untriggered distance-before type PS conditions are triggered when the TCP path
starts to move away from the teaching point.

1: L P[1] 200mm/sec FINE


2: L P[2] 200mm/sec CNT100 DB 100mm, CALL A
3: L P[3] 200mm/sec FINE

Contents of sub-program A
1: PS -10mm +0sec,DO[1]=(ON) (distance-before type)
2: PS +10mm +0sec,DO[2]=(ON) (distance-after type)

- 104 -
B-83284EN-2/01 16. PATH SWITCHING FUNCTION

P[1] P[2]

20mm
The point to move away from P[2] on the path.
All PS conditions that are closer than this point DO[1]=(ON)
are triggered at this point. DO[2]=(ON)

P[3]

Fig. 16 (d) Path switch application

You can choose to cause error at this situation by following parameter setting.

$PS_CONFIG.$DB_NOTRIG (distance-before type)


$PS_CONFIG.$DA_NOTRIG (distance-after type)

Value Description
0 Trigger PS condition at the closest point, but post neither alarm nor warning.
1 (default) Trigger PS condition at the closest point, and post “INTP-541 PS(program name, line
number, distance[mm]) Forced trigger” (warning).
other than (0, 1) Not triggered, and post “INTP-542 PS(program name, line number, distance[mm]) No
trigger” (PAUSE).

Case that the trigger point is positive and it is farther than the destination
position (distance-after type)
If the trigger point is positive and it is farther than the destination position of the next motion, the PS
condition is triggered when the next motion is completed.

You can choose to cause error at this situation by above parameter setting.
($PS_CONFIG. $DB_NOTRIG, $DA_NOTRIG)

1: L P[1] 200mm/sec FINE


2: L P[2] 200mm/sec FINE DB 100mm, CALL A
3: L P[3] 200mm/sec FINE

Contents of sub-program A
1: PS +1500mm +0sec,DO[1]=(ON)

P[1] P[2] P[3]

+1500mm

Trigger at this point


DO[1]=(ON)

Fig. 16 (e) Path switch application

- 105 -
16. PATH SWITCHING FUNCTION B-83284EN-2/01

About multi group configuration


In case of multi group configuration, the PS statement is implicitly executed for the first motion group in the
group mask of the TP program. For example, if the motion mask is [*,1,1,*,*,*,*,*], then the PS statement
is executed for group 2.

Limitations
PS statement is not available for the following motion type.
• Weaving motion
• Tracking motion which can not define actual destination point beforehand, as line-tracking, MIG-EYE,
Robot-Link.

Caution
• PS statement is interpreted in a flash only at the start of the new motion line. When the motion including
PS statement is paused, if you edit and change the PS statement in the sub program during this pause
status, modified PS commands do not take effect until the motion line is newly executed. After pausing
program, to take effect of the modified PS statement immediately, you can BWD the motion line and
re-start. Then the modified PS statements will take effect.

• PS command for joint motion is not prohibited. But it must be used carefully. Regardless of the motion
type Linear, Circular, or Joint, PS command is checking the linear distance between TCP and
destination point as trigger threshold.

NOTE
In cases of PS command's Distance-Before type usage, If TCP once goes into the defined
sphere around the destination point, the PS command will be triggered regardless how
long the rest of path. Please note the distance which is being checked in PS motion is not
the total remaining path length to the destination point. Please see the following figure for
example.

PS trigger point
DO[1]=(ON)
J P[2]

P[1] PS trigger distance : 100mm

1: J P[1] 100% FINE


2: J P[2] 100% FINE DB 100mm, CALL PROG1

Contents of sub-program PROG1


1: PS -100mm +0.0sec, DO[1] = ON

- 106 -
B-83284EN-2/01 16. PATH SWITCHING FUNCTION

TP editor operation
1. "Path Switching" item is displayed in the [INST] menu.

Instruction 1 Instruction 2 Instruction 3


1 Registers 1 Skip 1 Tool_Offset
2 I/O 2 Payload 2 Lock PREG
3 IF/SELECT 3 Offset/Frames 3 MONITOR/MON. END
4 WAIT 4 Multiple control 4 String
5 JMP/LBL 5 Program control 5 Path Switch
6 CALL 6 MACRO 6 DIAGNOSE
7 Miscellaneous 7 FOR/ENDFOR 7
8 –next page-- 8 –next page-- 8 –next page--

2. Select "Path Switching" item, the following menu is displayed.

PATH SWITCH INSTRUCTION 1


1 PS , ...
2 PS , IF ...
3 PS TC_ONLINE
4
5
6
7
8

3. The distance and offset time can be set, and the assignment statement can be edited as the same way as
mixed logic instructions.

1: PS +150mm +0.2sec, DO[1]=(ON)

[CHOICE]

4. When the cursor is on 'PS ' item, you can switch "PS ..." to "PS ... IF ..." and vice versa from menu.

1: PS +150mm +0.2sec, IF (...)、DO[1]=(ON)

[CHOICE]

- 107 -
17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION B-83284EN-2/01

17 AUXILIARY AXIS SERVO OFF (LOCAL


STOP) FUNCTION
17.1 INTRODUCTION
In the robot system that auxiliary axis controls a jig, there is a requirement to cut off the power of auxiliary
axis for safety when an operator do a job with that jig. Auxiliary axis servo off (Local Stop) is a function for
that purpose. This function can turn off motor power supply for each auxiliary axis respectively and prevent
axis from unexpected movements.

This function has following merits.


• Keep safety for operator who works at jig (auxiliary axis).
• Improvement of cycle time in comparison with using machine lock. In case of machine lock, cycle
time becomes long because power supply to amplifier is controlled (OFF/ON).
• Output servo ON/OFF signal by just using macro program or press button.

This function is an optional. And dedicated hardware (Local Stop Unit) is required.

17.2 SPECIFICATION
• Order number for software option
A05B-2600-J806

• Way to cut off motor power supply


This function cut off power supply at power cable between servo amplifier and motor. Even in the
local stop mode (power supply for motor is cut off), power is supplied to the amplifier.

• Motor for the auxiliary axis


Please be sure to use motor with brake for this function and enable brake control when you set up
auxiliary axis.

• Local Stop Unit


Brake unit and Local Stop Unit are united.

• Line of local stop


The unit (group) in which power supply of motors is controlled synchronously is called as Line of
local stop. Line concept corresponds to the software motion group. Motors in the same line must have
the same brake number and motors in the different line must have the different brake number. Software
supports 3 local stop lines at maximum.

Line of local stop Software motion group Brake number

• Number of axes in the local stop line


If there are multiple axes in the one local stop line, power supply for those motors will be controlled
synchronously. In this case, there are multiple axes in one motion group. Power supply for those
motors cannot be controlled separately. If you want to, please separate a local stop line.

- 108 -
B-83284EN-2/01 17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION

Configuration of local stop function is determined by the number of lines and the
number of axes in one line.

• Example of system configuration


When there are two axes that use local stop function, possible configurations are as follows.

2 lines / 1 axis in each line 1 line / 2 axes

Group1 Group2 Group3 Group1 Group2


Robot Robot
Local Stop Local Stop Local Stop
1st line 2nd line 1st line

LSU1 LSU2 LSU1 LSU2

Power supply for those motors can Power supply for those motors will
be controlled respectively. be controlled synchronously.

• Necessary signals for local stop function


Two input signals and one output signal are required for each local stop line.
1. Input signal #1
Signal from a Local Stop Unit to a robot controller.
This signal is used by the software internally to check that Local Stop Unit functions normally.
Please do not operate this signal directly.
2. Input signal #2
Local stop command signal by the user.
When this signal is ON, power is supplied to the motor and axis can move.
When this signal is OFF, power is not supplied to the motor and axis cannot move.
3. Output signal
Signal from a robot controller to a Local Stop Unit.
This signal will be output by the software automatically according to the input signal #2.
Please do not operate this signal directly.

Please assign general I/O or robot I/O only for input signal #2 (Rest of signals are assigned to the
specialized I/O of a robot controller).

• Basic flow of process


When user input the input signal #2, software output signal to the Local Stop Unit and power supply
for motor will be controlled. Software checks the status of Local Stop Unit by the input signal #1.
Please connect a peripheral device such as push button to the input signal #2.

- 109 -
17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION B-83284EN-2/01

Input signal #2
(local stop command) Output signal

Peripheral Robot controller Local Stop Unit


device
Input signal #1

In case a macro program will input that local stop command, please output general output signal in that
program to the peripheral device such as PLC and control input signal #2 according to that output.

General output
(Indirect local stop command)

Macro Program
Output signal

PLC Robot controller Local Stop Unit

Input signal #2 Input signal #1


(local stop command)

17.3 CONSTRAINTS
• Alarm occurs when user command cutting off the power supply while auxiliary axis is moving.
Running program will be paused and robot stops when this alarm occurs. Please command power off
while axis is not moving.
• Alarm occurs when user tried to move axis while the power supply is cut off. Axis does not move in
this case. Please turn on power supply for auxiliary axis before you move axis.

17.4 SETTINGS
1. Firstly, please connect Local Stop Unit.
2. Secondly, please set system variables. For each local stop line, motion group number and setting of
input signal #1, input signal #2, and output signal are necessary. Please specify port type and port
number for those signals.

Procedure to set up:


1. Display the SYSTEM Variables screen.
a) Press the MENU key.
b) Select 0 NEXT and then 6 SYSTEM.
c) Press F1, [TYPE] key.
d) Select Variables, and then SYSTEM variables screen will be shown.
2. Move the cursor to $LS_IOPORT and press the ENTER key. You will see a screen similar to the
following.

- 110 -
B-83284EN-2/01 17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION
SYSTEM Variables
$LS_IOPORT 1/3
1 [1] LS_IOPORT_T
2 [2] LS_IOPORT_T
3 [3] LS_IOPORT_T

[ TYPE ] DETAIL

3. Select the local stop line (1~3) that needs to be configured and press the ENTER key. You will
see a screen similar to the following.

SYSTEM Variables
$LS_IOPORT[1] 1/10
1 $MO_GRP_NUM 0
2 $SDI1_P_TYPE 11
3 $SDI1_P_NUM 12
4 $SDI1_P_STAT FALSE
5 $SDI2_P_TYPE 1
6 $SDI2_P_NUM 1
7 $SDI2_P_STAT TRUE
8 $SDO_P_TYPE 12
9 $SDO_P_NUM 14
10 $SDO_P_STAT TRUE

[ TYPE ]

4. Please refer to the below tables and set up the system variables according to the actual I/O
connection.

Table 17.4 (a) Description of system variable (Following settings are necessary for each local stop line)
Variable name Description
$MO_GRP_NUM Motion group number that uses a local stop function. Valid range is 2-5. Setting this
variable to 0 disables local stop function.
$SDI1_P_TYPE Port type for input signal #1 (signal to check the status of a Local Stop Unit).
$SDI1_P_NUM Port number for input signal #1.
$SDI1_P_STAT Status of input signal #1. Please do not modify this variable.
$SDI2_P_TYPE Port type for input signal #2 (local stop command signal by a user).
$SDI2_P_NUM Port number for input signal #2.
$SDI2_P_STAT Status of input signal #2. Please do not modify this variable.
$SDO_P_TYPE Port type for output signal (local stop command signal from a robot controller to a Local
Stop Unit).
$SDO_P_NUM Port number for output signal.
$SDO_P_STAT Status of output signal. Please do not modify this variable.

Values for port type ($****_P_TYPE) are as follows.


The input signal #1 and output signal for local stop function are assigned to the operator panel I/O.
Please assign general I/O or robot I/O only for the input signal #2.

Value for port type Type of signal


1 DI (General input signal)
2 DO (General output signal)
8 RI (Robot input signal)
9 RO (Robot output signal)
11 SI (Operator panel input signal)
12 SO (Operator panel output signal)

- 111 -
17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION B-83284EN-2/01

Initial values for system variables


System variables are set as follows initially. When you use a local stop function, please change these
variables properly according to the actual signal connection.

Table 17.4 (b) Initial value of the system variables (* It is unnecessary to change SI and SO for LINE1,2)
Role of signal System variable Signal to be used
LINE
in local stop function name value by this setting
$LS_IOPORT[1].$SDI1_P_TYPE 11
Input signal #1 (*) SI[12]
$LS_IOPORT[1].$SDI1_P_NUM 12
$LS_IOPORT[1].$SDI2_P_TYPE 1
1 Input signal #2 DI[1]
$LS_IOPORT[1].$SDI2_P_NUM 1
$LS_IOPORT[1].$SDO_P_TYPE 12
Output signal (*) SO[14]
$LS_IOPORT[1].$SDO_P_NUM 14
$LS_IOPORT[2].$SDI1_P_TYPE 11
Input signal #1 (*) SI[13]
$LS_IOPORT[2].$SDI1_P_NUM 13
$LS_IOPORT[2].$SDI2_P_TYPE 1
2 Input signal #2 DI[2]
$LS_IOPORT[2].$SDI2_P_NUM 2
$LS_IOPORT[2].$SDO_P_TYPE 12
Output signal (*) SO[15]
$LS_IOPORT[2].$SDO_P_NUM 15
$LS_IOPORT[3].$SDI1_P_TYPE 1
Input signal #1 DI[3]
$LS_IOPORT[3].$SDI1_P_NUM 3
$LS_IOPORT[3].$SDI2_P_TYPE 1
3 Input signal #2 DI[4]
$LS_IOPORT[3].$SDI2_P_NUM 4
$LS_IOPORT[3].$SDO_P_TYPE 2
Output signal DO[1]
$LS_IOPORT[3].$SDO_P_NUM 1

5. When you use more than 2 local stop lines, please set system variables for 2nd or 3rd line too.
6. Please do not modify $LS_CONFIG and $LS_SYSTEM.
7. That is all for software setup. In order to make settings available, please cycle power once. After
cycling power, setting will be available.
8. To confirm settings are proper, please do check by following procedure for each local stop lines.

Confirmation of exiting from the local stop mode

When you set input signal #2 to ON,

Output signal becomes ON and Input signal #1 becomes OFF.

Confirmation of entering into the local stop mode

When you set input signal #2 to OFF,

Output signal becomes OFF and Input signal #1 becomes ON.

- 112 -
B-83284EN-2/01 17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION

NOTE
Please perform these checks when the system is NOT in servo off status.
If any alarm factor such as panel board e-stop, teach pendant e-stop, deadman
switch release, external emergency stop, etc. exists, please clear these alarms
first. Then perform a test when the system is in servo on status.

9. If no alarm occurs and signals change like above, local stop function works correctly.
10. Following alarms could occur.
LSTP-006 DI1 ON timer expired (G:%d) or LSTP-007 DI1 OFF timer expired (G:%d)
In case that
LSTP-006 DI1 ON timer expired (G:%d) occurs but Input signal #1 becomes ON or
LSTP-007 DI1 OFF timer expired (G:%d) occurs but Input signal #1 becomes OFF
, please increase following system variables
$LS_CONFIG.$SDI_ON_LAG and $LS_CONFIG.$SDI_OFF_LAG 100 by 100 until alarm
does not occur. Default value for these variables is 1000. Please set the same value to these
variables.

SYSTEM Variables
$LS_CONFIG 2/6
1 $IO_SCANRATE 12
2 $SDI_ON_LAG 1000
3 $SDI_OFF_LAG 1000
4 $BRK_ON_LAG 414
5 $BRK_OFF_LAG 544
6 $LS_DEBUG 0

[ TYPE ]

When LSTP-006 DI1 ON timer expired (G:%d) or LSTP-007 DI1 OFF timer expired (G:%d)
occurs, it is necessary to cycle power once to clear alarm status.
11. If alarms occur except for the above situation, please refer to FANUC Robot series R-30iB
CONTROLLER OPERATOR’S MANUAL (Alarm Code List) (B-83284EN-1) and check the
settings of system variable, setting of brake control, and hardware connections.

17.5 ATTENTION
• Note for moving auxiliary axis right after exiting from local stop mode (servo ON command)
Please do not move auxiliary axis until input signal #1 becomes OFF.

Example) Assuming the system in which I/O has been set up like below.

DO[3] ON
Macro program

DI[4]
DO[5] ON
ON
PLC Robot Controller Local Stop Unit

DI[6] OFF

In this case, please make a TP program like below.


- 113 -
17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION B-83284EN-2/01

servo ON command

TEST SERVOON
1/3 1/3
1: CALL SERVOON 1: DO[3]=ON
2: J P[1] 100% FINE 2: WAIT DI[6]=OFF
[End] [End]

[INST] [EDCMD] > [INST] [EDCMD] >

After servo ON command, wait for


that input signal #1 becomes OFF.

If you teach motion instruction right after servo ON command without WAIT instruction,
LSTP-011 Motion grp %d is in LSTOP alarm might occur.

• Motion group mask of a TP program in which servo OFF will be commanded


Please set a motion group mask to (*,*,*,*,*,*,*,*) for a TP program in which servo OFF will be
commanded to a certain auxiliary axis group by RO or DO. (NOTE: Please set a motion group mask at
creating a program)
• When turning on a robot controller, servo ON command will be output once.
This is due to the initialization of software internal status. If the input signal #2 is ON, the status will be
kept (servo ON). If the input signal #2 is OFF, servo OFF command will be output and auxiliary axis
will enter into the local stop mode (servo OFF).

17.6 PROGRAMMING
Suppose a system like below.
• 3 groups welding system that consists of a robot and two positioners (A and B).
• Operator loads/unloads a workpiece at one side of the positioner while robot welds at another
positioner.
• Two Local Stop lines are required.
Positioner B (Group 3)
Local Stop Line #2

Robot (Group 1)

Local Stop status


indication lamp

Operator

weld cycle
start button
Positioner A (Group 2)
Local Stop Line #1

• Assume that I/O is connected like below.


- 114 -
B-83284EN-2/01 17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION

DO[10] DI[10]

DI[7] DO[7]
PLC Robot Local Stop line #1 Positioner A
DI[8] DO[8]
controller Positioner B
Local Stop line #2
DO[11] DI[11]

Suppose a welding sequence as follows.


A) Robot completes welding of a workpiece B at positioner B and returns to a home position.
B) An operator confirms that workpiece A of positioner A is ready and starts program A by pressing cycle
start button.
C) WELD_A.TP program starts.
C.1 In macro UNLOCK_A, positioner A exits from local stop mode.
C.2 In LOAD_B.TP, positioner B moves to the position for loading/unloading workpiece B.
C.3 In macro LOCK_B, positioner B enters into local stop mode.
C.4 In WELD_G2.TP, robot starts to weld a workpiece A at positioner A.
C.5 An operator confirms that a lamp (This lamp is connected to the input signal #1) indicates
positioner B is in local stop mode. Then an operator unloads welded workpiece B and loads a new
workpiece B.
D) Robot completes welding of a workpiece A at positioner A and returns to a home position.
E) An operator confirms that a workpiece B is ready and starts next program B by pressing button.
F) Repeat C)~D) and then go back to program A.

- 115 -
17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION B-83284EN-2/01

Cycle flow of the above-mentioned example.

Positioner A

Positioner B
An operator confirms that a workpiece A is ready and starts
program A (WELD_A.TP) by pressing button.

Local Stop
Macro UNLOCK_A: positioner A exits from local stop mode

Servo ON
CALL WELD_G2 RUN LOAD_B
positioner B moves

Macro LOCK_B
Robot completes welding positioner B enters into local stop mode
a workpiece A

Servo ON

Local Stop
Operator unloads welded workpiece B
and load a new workpiece B

An operator confirms that a workpiece B is ready and starts


program A (WELD_B.TP) by pressing button.

Macro UNLOCK_B: positioner B exits from local stop mode

RUN LOAD_A CALL WELD_G3


positioner A moves
Servo ON

Macro LOCK_A
positioner A enters into local stop mode
Robot completes welding
Local Stop

a workpiece B
Operator unloads welded workpiece A
and load a new workpiece A

- 116 -
B-83284EN-2/01 17. AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION
For example, following programs accomplish this sequence.

Program A for welding of a workpiece A : WELD_A

UNLOCK_A.TP
Main program for welding Group Mask [*,*,*,*,*,*,*,*]
a workpiece A
This macro turns DO[10] ON
WELD_A.TP 1: DO[10] = ON
and commands servo ON to
Group Mask [*,*,*,*,*,*,*,*] 2: WAIT DI[10] = OFF
positioner A
[End]
1: CALL UNLOCK_A
2: RUN LOAD_B LOAD_B.TP
3: CALL WELD_G2 Group Mask [*,*,1,*,*,*,*,*]
[End]
This macro moves positioner
1: J P[1] 100% FINE
B to the workpiece B load /
2: RUN LOCK_B
unload position
WELD_G2.TP [End]
Group Mask [1,1,*,*,*,*,*,*]
LOCK_B.TP
Program for welding Group Mask [*,*,*,*,*,*,*,*]

GRP1(ROBOT) and This macro turns DO[11] OFF and


1: DO[11] = OFF
commands servo OFF to positioner B
GRP2(POSITIONER A) move [End]
Robot welds at positioner A while an
[End]
operator loads / unloads a workpiece Operator unloads or
B at positioner B loads workpiece B

Program B for welding of a workpiece B : WELD_B

UNLOCK_B.TP
Main program for welding Group Mask [*,*,*,*,*,*,*,*]
a workpiece B
This macro turns DO[11] ON
WELD_B.TP 1: DO[11] = ON
and commands servo ON to
Group Mask [*,*,*,*,*,*,*,*] 2: WAIT DI[11] = OFF
positioner B
[End]
1: CALL UNLOCK_B
2: RUN LOAD_A LOAD_A.TP
3: CALL WELD_G3 Group Mask [*,1,*,*,*,*,*,*]
[End]
This macro moves positioner
1: J P[1] 100% FINE
A to the workpiece A load /
2: RUN LOCK_A
unload position
WELD_G3.TP [End]
Group Mask [1,*,1,*,*,*,*,*]
LOCK_A.TP
Program for welding Group Mask [*,*,*,*,*,*,*,*]

GRP1(ROBOT) and This macro turns DO[10] OFF and


1: DO[10] = OFF
commands servo OFF to positioner A
GRP3(POSITIONER B) move [End]
Robot welds at positioner B while an
[End]
operator loads / unloads a workpiece Operator unloads or
A at positioner A loads workpiece A

- 117 -
18. DUAL MOTOR DRIVE B-83284EN-2/01

18 DUAL MOTOR DRIVE


18.1 INTRODUCTION
The Dual Motor Drive (Dual Drive) feature allows single axis control of two motors. One motor is called
the master motor and the other motor is called the slave motor.

Master motor Slave motor

Synchronous control

• The main function of the Dual Drive feature is to compensate for synchronous error due to servo delay
between master and slave axes.
• Dual Drive feature can realize a large size and high-load system which cannot be realized by a single
motor.
• Dual Drive feature suppresses the slave motor status on the current position screen, teaching screen, and
so on. By jogging or teaching only of the master motor, both motors move in synchronization.

In order to use this function, Dual Drive function option (A05B-2600-J836) is required. Also only
Independent axis (A05B-2600-H895) and Positioner (A05B-2600-H896) can be used as Dual Drive.

18.2 SETUP
Preparation
Setup Independent Additional Axes or Positioner axes which you plan to assign as a pair of Dual Drive
motors.
• The pair of Dual Drive motors must belong to the same motion group.
• In this step, setup both the master motor and the slave motor individually.
• The slave motor must be the last axis in the group. If there exist multiple Dual Drive motor pairs in one
group, the order of the slave axes is unconfined while they must be the last axes in the group.

J1 J2 J3
Independent Additional Axes or Positioner axes

Master Slave The slave motor must be the last axis of the group.
motor motor

A pair of Dual Drive motors

- 118 -
B-83284EN-2/01 18. DUAL MOTOR DRIVE

Dual Drive motor axes setup


Set the following variables, then cycle the power.

System Variable Description


$SCR_GRP[g].$NUM_AXES This system variable means the total number of axes in the group. Here,
count a pair of Dual Drive motors as one axis. In other words, change this
variable to the original number minus the number of Dual Drive motor pairs.
$SCR_GRP[g].$NUM_ROB_AXS Change this variable in the same manner as $NUM_AXES.
$SCR_GRP[g].$NUM_DUAL Enter the number of Dual Drive motor pairs. The maximum value of this
system variable is 3.
$DUAL_DRIVE[g].$M_AXIS_NUM[n] Enter the axis number of the master motor. “n” is an index of the Dual Drive
motor pair. For the first pair, n = 1.
$DUAL_DRIVE[g].$S_AXIS_NUM[n] Enter the axis number of the slave motor.

[Example 1]
System configuration:
- Group 2 has three motors as Independent Additional Axes.
- J2-J3 of Group 2 are a pair of Dual Drive motors.
- J2 is the master motor and J3 is the slave motor.
Setting:
- $SCR_GRP[2].$NUM_AXES = (3→) 2
- $SCR_GRP[2].$NUM_ROB_AXS = (3→) 2
- $SCR_GRP[2].$NUM_DUAL = 1
- $DUAL_DRIVE[2].$M_AXIS_NUM[1] = 2
- $DUAL_DRIVE[2].$S_AXIS_NUM[1] = 3

When jogging or teaching, the Dual Drive pair is treated as “J2”.

[Example 2]
System configuration:
- Group 2 has four motors as Independent Additional Axes.
- J1-J3 and J2-J4 of Group 2 are pairs of Dual Drive motors.
- J1 and J2 are the master motors and J3 and J4 are the slave motors.
Setting:
- $SCR_GRP[2].$NUM_AXES = (4→) 2
- $SCR_GRP[2].$NUM_ROB_AXS = (4→) 2
- $SCR_GRP[2].$NUM_DUAL = 2
- $DUAL_DRIVE[2].$M_AXIS_NUM[1] = 1
- $DUAL_DRIVE[2].$M_AXIS_NUM[2] = 2
- $DUAL_DRIVE[2].$S_AXIS_NUM[1] = 3
- $DUAL_DRIVE[2].$S_AXIS_NUM[2] = 4

When jogging or teaching, the Dual Drive pairs are treated as “J1” and “J2”.

- 119 -
19. MULTI UOP INTERFACE FUNCTION B-83284EN-2/01

19 MULTI UOP INTERFACE FUNCTION


19.1 INTRODUCTION
Multi UOP Interface function enable us to use up to 5 UOP sets that have a connection with start of program.
Therefore, It is possible to control (select, execute, pause and so on) multiple program independently with a
single robot controller.

19.1.1 SPECIFICATION
The number of usable UOP set
Up to 5 UOP sets are usable.

UOP Interface
The number of UOP signals depend on how many UOP sets is used.

Number of set 1 2 3 4 5
Input 18 23 32 41 50
Output 20 26 36 46 56

19.1.2 SOFTWARE OPTIONS


The following software option is needed for Multi UOP Interface function.

Multi UOP Interface A05B-2600-J964

If 2 or more motion groups (multiple robot, independent axis and so on) is used, the following software
option is needed.

Multi-Group Motion A05B-2600-J601

19.2 PERIPHERAL I/O


The following signals are provided in response to the number of UOP set.

- 120 -
B-83284EN-2/01 19. MULTI UOP INTERFACE FUNCTION
INPUT SIGNAL OUTPUT SIGNAL
<Number of set : 1>

*IMSTP CMDENBL#1
*HOLD#1 SYSRDY#1
*SFSPD PROGRUN#1
CSTOPI#1 PAUSED#1
FAULT_RESET HELD#1
START#1 FAULT#1
HOME ATPERCH
ENBL TPENBL
RSR1/PNS1/STYLE1 BATALM
RSR2/PNS2/STYLE2 BUSY
RSR3/PNS3/STYLE3 ACK1/SNO1
RSR4/PNS4/STYLE4 ACK2/SNO2
RSR5/PNS5/STYLE5 ACK1/SNO1
RSR6/PNS6/STYLE6 ACK1/SNO1
RSR7/PNS7/STYLE7 ACK1/SNO1
RSR8/PNS8/STYLE8 ACK1/SNO1
PNSTROBE#1 ACK1/SNO1
PROD_START#1 ACK1/SNO1
SNACK
RESERVE

Total 18 points Total 20 points


<Number of set : 2>

*HOLD#2 CMDENBL#2
START#2 SYSRDY#2
PNSTROBE#2 HELD#2
PROD_START#2 FAULT#2
CSTOPI#2 PROGRUN#2
PAUSED#2

Total 23 points Total 26 points


<Number of set : 3>

RSR9 ACK9
RSR10 ACK10
RSR11 ACK11
RSR12 ACK12
*HOLD#3 CMDENBL#3
START#3 SYSRDY#3
PNSTROBE#3 HELD#3
PROD_START#3 FAULT#3
CSTOPI#3 PROGRUN#3
PAUSED#3

Total 32 points Total 36 points

- 121 -
19. MULTI UOP INTERFACE FUNCTION B-83284EN-2/01

<Number of set : 4>

RSR13 ACK13
RSR14 ACK14
RSR15 ACK15
RSR16 ACK16
*HOLD#4 CMDENBL#4
START#4 SYSRDY#4
PNSTROBE#4 HELD#4
PROD_START#4 FAULT#4
CSTOPI#4 PROGRUN#4
PAUSED#4

Total 41 points Total 46 points


<Number of set : 5>

RSR17 ACK17
RSR18 ACK18
RSR19 ACK19
RSR20 ACK20
*HOLD#5 CMDENBL#5
START#5 SYSRDY#5
PNSTROBE#5 HELD#5
PROD_START#5 FAULT#5
CSTOPI#5 PROGRUN#5
PAUSED#5

Total 50 points Total 56 points

I/O Configuration:

In case that DI/DO are 40 points


Number of set 1 2 3 4 5
Specialized input(UI) 18 23 32 - -
General-purpose input(DI) 22 17 8 - -
Specialized output(UO) 20 26 36 - -
General-purpose output(DO) 20 14 4 - -

In case that DI/DO are 96 points


Number of set 1 2 3 4 5
Specialized input(UI) 18 23 32 41 50
General-purpose input(DI) 78 73 64 55 46
Specialized output(UO) 20 26 36 46 56
General-purpose output(DO) 76 70 60 50 40

19.2.1 Setting of the Number of UOP Set


The number of UOP set is 1 by default. Please change $MULTI_ROBO.$NUM_PROG from 1 to the
number you want to use when you want to change the number of UOP set. You can change the value up to
5. And the number of UOP set is changed after you cycle power.

Then the number of UI/UO signal is changed, but signal assignment isn’t changed. If you clear assignment,
new assignment in response to new number of UI/UO signal is given automatically (You can clear

- 122 -
B-83284EN-2/01 19. MULTI UOP INTERFACE FUNCTION
assignment by selecting F5, CLR_ASG in I/O Link Device screen. Power cycling is needed after that. And
all assignments are cleared. If this is inconvenient for you, please change assignment manually).

Here from, ‘N’ means the number of UOP set, in other words, the value of $MULTI_ROBO.$NUM_PROG (‘N’ is
used for explanation after “19.2.3 HOLD#1~#N”).

19.2.2 Modification and Addition of Signal


In Multi UOP Interface Function, the meaning of the following signals are changed.

Input: HOLD#1: UI[2] HOLD is changed to HOLD#1.


CSTOPI#1: UI[4] CSTOPI is changed to CSTOPI#1.
START#1: UI[6] START is changed to START#1.
PNSTROBE#1: UI[17] PNSTROBE is changed to PNSTROBE#1.
PROD_START#1: UI[18] PROD_START is changed to PROD_START#1.

Output: CMDENBL#1: UO[1] CMDENBL is changed to CMDENBL#1.


SYSRDY#1: UO[2] SYSRDY is changed to SYSRDY#1.
PROGRUN#1: UO[3] PROGRUN is changed to PROGRUN#1.
PAUSED#1: UO[4] PAUSED is changed to PAUSED#1.
HELD#1: UO[5] HELD is changed to HELD#1.
FAULT#1: UO[6] FAULT is changed to FAULT#1.

In Multi UOP Interface Function, the following signals are added.

<Number of set : 2> <Number of set : 3>


Specialized I/O signal UI/UO[*] Specialized I/O signal UI/UO[*]
Input HOLD#2 UI[19] Input RSR9 UI[24]
START#2 UI[20] RSR10 UI[25]
PNSTROBE#2 UI[21] RSR11 UI[26]
PROD_START#2 UI[22] RSR12 UI[27]
CSTOPI#2 UI[23] HOLD#3 UI[28]
START#3 UI[29]
Output CMDENBL#2 UO[21] PNSTROBE#3 UI[30]
SYSRDY#2 UO[22] PROD_START#3 UI[31]
HELD#2 UO[23] CSTOPI#3 UI[32]
FAULT#2 UO[24]
PROGRUN#2 UO[25] Output ACK9 UO[27]
PAUSED#2 UO[26] ACK10 UO[28]
ACK11 UO[29]
ACK12 UO[30]
CMDENBL#3 UO[31]
SYSRDY#3 UO[32]
HELD#3 UO[33]
FAULT#3 UO[34]
PROGRUN#3 UO[35]
PAUSED#3 UO[36]

- 123 -
19. MULTI UOP INTERFACE FUNCTION B-83284EN-2/01

<Number of set : 4> <Number of set : 5>


Specialized I/O signal UI/UO[*] Specialized I/O signal UI/UO[*]
Input RSR13 UI[33] Input RSR17 UI[42]
RSR14 UI[34] RSR18 UI[43]
RSR15 UI[35] RSR19 UI[44]
RSR16 UI[36] RSR20 UI[45]
HOLD#4 UI[37] HOLD#5 UI[46]
START#4 UI[38] START#5 UI[47]
PNSTROBE#4 UI[39] PNSTROBE#5 UI[48]
PROD_START#4 UI[40] PROD_START#5 UI[49]
CSTOPI#4 UI[41] CSTOPI#5 UI[50]

Output ACK13 UO[37] Output ACK17 UO[47]


ACK14 UO[38] ACK18 UO[48]
ACK15 UO[39] ACK19 UO[49]
ACK16 UO[40] ACK20 UO[50]
CMDENBL#4 UO[41] CMDENBL#5 UO[51]
SYSRDY#4 UO[42] SYSRDY#5 UO[52]
HELD#4 UO[43] HELD#5 UO[53]
FAULT#4 UO[44] FAULT#5 UO[54]
PROGRUN#4 UO[45] PROGRUN#5 UO[55]
PAUSED#4 UO[46] PAUSED#5 UO[56]

19.2.3 HOLD#1~#N

Here from, the word “Program#1” appears. “Program#1” means the program selected by UOP set 1. “Program#2” ~
“Program#N” are same as “Program#1”. Please refer to “19.3 SELECT PROGRAM”.

Multi UOP Interface has one HOLD signal per UOP set (#1 ~ #N). The function of HOLD signal is changed
by setting system variable “$MULTI_ROBO.$HOLD_TYPE.

• In case of $MULTI_ROBO.$HOLD_TYPE = 0(Default)


If whichever of HOLD signals (HOLD#1~ #N) is turned OFF, all the executing programs are paused.

• In case of $MULTI_ROBO.$HOLD_TYPE = 1
If HOLD#X is turned OFF, “Program#X' is paused (X = 1 ~ N).
The running program which is not selected as “Program#X”, can NOT be held. Please turn off ENBL
to pause the program.
(However, if “Program#X” is not selected, when HOLD#X is OFF, all the programs in execution are
paused.)

But, when a program is tried to execute, regardless of $MULTI_ROBO.$HOLD_TYPE value, if any


HOLD signal is OFF, it is impossible to execute program. Then if program execution is needed, please turn
ON all HOLD signals.

19.2.4 CSTOPI#1~#N
Multi UOP Interface has one CSTOPI signal per UOP set (#1 ~ #N). The function of CSTOPI signal is
changed by setting “CSTOPI for ABORT” or “Abort all programs by CSTOPI” in System Config screen.

- 124 -
B-83284EN-2/01 19. MULTI UOP INTERFACE FUNCTION

• When “Abort all programs by CSTOPI” is FALSE (Default)


If CSOTPI#X is turned ON, “Program#X” is aborted (X = 1 ~ N).
It also release (clear) programs in UOP set X queue from the wait state by RSR.
Please refer to “19.2.6 RSR”.

• When “Abort all programs by CSTOPI” is TRUE


If whichever of CSTOPI signals (HOLD#1~ #N) is turned ON, all the executing programs are aborted.
It also release (clear) programs in all UOP set queue from the wait state by RSR.

TRUE for “Abort all programs by CSTOPI” is recommended for Multi UOP Interface function.

The way of terminating program is changed by setting “CSTOPI for ABORT” in System Config screen.

• When “CSTOPI for ABORT” is FALSE (Default)


If CSOTPI signal is turned ON, this signal aborts the program in execution as soon as execution of the
program completes.

• When “CSTOPI for ABORT” is TRUE


If CSOTPI signal is turned ON, this signal immediately aborts the program in execution.

19.2.5 START#1~#N
Note)
In the system with Multi UOP Interface, multiple programs are controlled at the same time, and
it is more complex to control program than control single program. So it is recommended that
the Multi UOP Interface is in condition that “START for CONTINUE only:“ in system config
screen is “TRUE”. Only paused program can be started by START signal under this setting. In
case of starting the ended program, use RSR or PROD_START signal, please.

Multi UOP Interface has one START signal per UOP set (#1 ~ #N).

“Program#X” is started when START#X is turned off (X = 1 ~ N).

The program is continued to execute from paused line in case that START signal is input with paused
program.

When “START for CONTINUE only:“ in system config screen is “TRUE”, the program, which is aborted
(neither running nor paused), can NOT be started and the message “PROG-023 Task is not paused” is
displayed in TP screen in case that START signal is inputted with the ended program (neither running nor
paused).

19.2.6 RSR
Multi UOP Interface has four RSR signal per UOP set (#1 ~ #N).
(However, if the number of UOP set is 1, eight RSR is usable.)

Number of set RSR1~4 RSR5~8 RSR9~12 RSR13~16 RSR17~20


1 #1 - - -
2 #1 #2 - - -
3 #1 #2 #3 - -
4 #1 #2 #3 #4 -
5 #1 #2 #3 #4 #5

- 125 -
19. MULTI UOP INTERFACE FUNCTION B-83284EN-2/01

And each UOP set has RSR queue, so the number of RSR queue is N.
Please refer to “19.4.1 Robot Service Request (RSR)”.

19.2.7 PNSTROBE#1~#N,PROD_START#1~#N
Multi UOP Interface has one PNSTROBE and one PROD_START signal per UOP set (#1 ~ #N).
Please refer to “19.4.2 Program Number Select (PNS)”.

19.2.8 CMDENBL#1~#N
Multi UOP Interface has one CMDENBL signal per UOP set (#1 ~ #N).

CMDENBL#1 is ON if all the following conditions are satisfied.


• Remote condition is satisfied.
• No alarm. (Every FAULT#X are OFF. (X = 1 ~ N))
• No single step.
• If Isolation switch is used, motion groups that is intended by UOP set 1 are connected.
(“Remote condition” and “motion groups that is intended by UOP set 1”are mentioned after.)

In case of CMDENBLE#2 ~ #N, only last condition is different.


• If Isolation switch is used, motion groups that is intended by UOP set 2 ( ~ N) are connected.

1. Remote Condition:
・ The Teach Pendant enable switch is set OFF.
・ Setting of Remote/Local is set to Remote.
・ The *SFSPD input is ON.
・ The ENBL input is ON.
・ The system variable $RMT_MASTER is 0 (UOP).

2. Motion groups that is intended by UOP set


Motion groups that is intended by UOP set is changed by setting system variable
“$MULTI_ROBO.$MULTI_PROGC”.
Please refer to “19.3.1 Setting of Motion Group Intended by Each UOP Set”.

19.2.9 SYSRDY#1~#N
Multi UOP Interface has one SYSRDY signal per UOP set (#1 ~ #N).

SYSRDY#1 is ON if all the following conditions are satisfied.


• All the axes are ready. (If system has Isolation switch, all the axes except for isolated are ready.)
• If Isolation switch is used, motion groups that is intended by UOP set 1 are connected.

In case of SYSRDY#2 ~ #N, only last condition is different.


• If Isolation switch is used, motion groups that is intended by UOP set 2 (~ N) are connected.

19.2.10 PROGRUN#1~#N,PAUSED#1~#N
Multi UOP Interface has one PROGRUN and one PAUSED signal per UOP set (#1 ~ #N).
PROGRUN and PAUSED signals show the program execution status as the following.

• When program is running:


PROGRUN#X (X = 1 ~ N)
- 126 -
B-83284EN-2/01 19. MULTI UOP INTERFACE FUNCTION

・ In case that “Program#X” is in execution.

In case that the program, which is not “Program#X”, is in execution, every PROGRUN#X is output.
(Default)

If the value of the system variable $MULTI_ROBO.$UNSELOUTPUT is 0, the behavior of signals is


changed as follows.
In case that the program, which is not “Program#X”, is in execution, PROGRUN#X is not output. But
BUSY is output.

• When program is paused:


PAUSED#X (X = 1 ~ N)
・ In case that “Program#X” is paused.

In case that the program, which is not “Program#X”, is paused, every PAUSED#X is output. (Default)

If the value of the system variable $MULTI_ROBO.$UNSELOUTPUT is 0, the behavior of signals is


changed as follows.
In case that the program, which is not “Program#X”, is paused, PAUSED#X is not output.

19.2.11 HELD#1~#N
Multi UOP Interface has one HELD signal per UOP set (#1 ~ #N).

HELD#X is ON if one of the following conditions is satisfied. (X = 1 ~ N)


• HOLD#X is OFF.
• The HOLD switch on the Teach Pendant is pushed.
• The HOLD switch on the Operator Panel is pushed.

19.2.12 FAULT#1~#N
Multi UOP Interface has one FAULT signal per UOP set (#1 ~ #N).

FAULT#X turns ON when the alarm occurs by “Program#X” execution or other than program execution.
(X = 1 ~ N)

When system is in alarm status, at least one of FAULT#X must be ON.

19.2.13 ATPERCH
The specified signal ATPERCH is set to ON when the robot of motion group 1 is at the reference position 1.
Please assign reference position output except motion group 1.

19.3 SELECT PROGRAM


In Multi UOP Interface function, it is possible for each UOP set to select program individually.
One UOP set is given one program # for selected program.

Here from, “Program#1” means the program selected by UOP set 1.

“Program#1” is run by UOP START#1, PROD_STAR#1.


On program selection screen, “#1” is displayed to the right of program name that is used as “Program #1”.

- 127 -
19. MULTI UOP INTERFACE FUNCTION B-83284EN-2/01

“Program#2” ~ “Program#N” are same as “Program#1”.

On the contrary, a program that is displayed on program edit screen is referred as “selected program”.
FWD/BWD keys on teach pendant or start button on Operator Panel run “selected program”.
“Selected program” is displayed on left side of second line of TP screen.

Selected program : SAMPLE1

SAMPLE1 LINE 0 T2 ABORTED JOINT 10%


Select
65432 bytes free 1/4
No. Program name Comment
1 SAMPLE1 #1 [SAMPLE PROGRAM1 ]
2 SAMPLE2 #2 [SAMPLE PROGRAM2 ]
3 PROG001 [PROGRAM001 ]
4 PROG002 [PROGRAM002 ]

Program#1 : SAMPLE1

Program#2 : SAMPLE2

[ TYPE ] CREATE DELETE MONITOR [ATTR ] >

If you set cursor to a program and presses ENTER, “selected program” is changed to the program.
Then, the program changes to “Program#X” automatically (What # is set depend on motion group of the
program and what motion group is intended by each UOP sets).

For example, when the number of UOP sets is 2, and UOP set 1 intends Motion group 1 and UOP set 2
intends Motion group 2, the behavior is as the following figure.

SELECT G1
1 A (1*) Select A SELECT G1
2 B (11) Select B SELECT G1 1 A #1 (1*)
3 C (**) Select C 1 A (1*) 2 B (11)
4 D (*1) Select D 2 B #1 (11) 3 C (**)
3 C (**) 4 D (*1)
4 D (*1)

SELECT G1
SELECT G1 1 A (1*)
1 A (1*) 2 B (11)
2 B (11) 3 C #1 (**)
3 C (**) 4 D (*1)
4 D #2 (*1)

(1*) The program has only group 1.


(*1) The program has only group 2.
(11) The program has group 1 and 2.

- 128 -
B-83284EN-2/01 19. MULTI UOP INTERFACE FUNCTION

19.3.1 Setting of Motion Groups Intended by Each UOP Set


What UOP set intends what motion group, in other words, what # is set to a program is changed by setting
system variable “$MULTI_ROBO.$MULTI_PROGC.

$MULTI_PROGC has 5 alignments, and each one corresponds one UOP set. If the number of UOP set is
smaller than 5, $MULTI_PROGC alignments are available as many as the number of UOP set, and the other
alignments is ineffective.

UOP set 1: $MULTI_PROGC[1]


UOP set 2: $MULTI_PROGC[2]
UOP set 3: $MULTI_PROGC[3]
UOP set 4: $MULTI_PROGC[4]
UOP set 5: $MULTI_PROGC[5]

The each bit of $MULTI_PROGC value is equivalent to each motion group.

Bit31 ・・・ Bit1 Bit0


Motion Group32 ・・・ Motion Group2 Motion Group1

For example, the default values of $MULTI_PROGC are set as the following, it is assumed that one UOP
set is equivalent to one motion group.

Example1 (Default)
UOP set 1: $MULTI_PROGC[1] = 1
UOP set 2: $MULTI_PROGC[2] = 2
UOP set 3: $MULTI_PROGC[3] = 4
UOP set 4: $MULTI_PROGC[4] = 8
UOP set 5: $MULTI_PROGC[5] = 16

In case that PROGRAM1 is equivalent to motion group 1,4,


PROGRAM2 is equivalent to motion group 2,5,
and PROGRAM3 is equivalent to motion group 3,
$MULTI_PROGC value is the following.

Example 2
UOP set 1: $MULTI_PROGC[1] = 9
UOP set 2: $MULTI_PROGC[2] = 18
UOP set 3: $MULTI_PROGC[3] = 4
UOP set 4: $MULTI_PROGC[4] = 0
UOP set 5: $MULTI_PROGC[5] = 0

Every UOP set can select a program having no motion group. However, when a program having no motion
group is selected by TP, if $MULTI_PROGC[#x] is 0, the program become “Program#X” by priority.

Detailed explanation is mentioned in “19.6 SYSTEM VARIABLES”. Please refer.

- 129 -
19. MULTI UOP INTERFACE FUNCTION B-83284EN-2/01

19.3.2 Select Program at Running or Paused


When “Program#1” is paused, if you try to select another program as “Program#1”:

• When program is selected by UOP, you can not select the program, and the message “TPIF-013 Other
program is running” is displayed.
• When program is selected by Teach Pendant and Teach Pendant Enable switch is OFF, you can not
select the program, and the message “TPIF-013 Other program is running” is displayed.
• When program is selected by Teach Pendant and Teach Pendant Enable switch is ON, the original
“Program#1” is aborted, and the selected program becomes “Program#1”.(This is the case that “Multi
Program Selection” is disabled. If “Multi Program Selection” is enabled, “Program#1” doesn’t
change.)

When “Program#1” is running, if you select another program as “Program#1”, you can not select the
program regardless of selection way, and the message “TPIF-013 Other program is running” is displayed.

“Program#2” ~ “Program#N” are same as “Program#1”.

19.3.3 Program Edit Screen Display When Operating Motion Group is


Changed
When user teach motions to each motion group, user needs to operate to select motion group that can be
operated by teach pendant.
It is possible to select motion group to select “CHANGE GROUP” in function menu.

Currently selected motion group is displayed on teach pendant like “G1”,”G2”.

By changing motion group, “selected program” is also changed according to selected motion group.
Changed ”selected program” is displayed on program edit screen.

For example, UOP set 1 intends Motion group 1, and UOP set 2 intends Motion group 2.
Suppose “Program #1 “ has only group1 and “Program #2 has” only group2.
By Selecting group1, “Program #1”
By Selecting group2, “Program #2”
automatically becomes “selected program” and the program is displayed on program edit screen.

SELECT G1
1 A #1 (1*)
2B (11)
3C (**)
4 D #2 (*1)

A G1 D G2
1 JP[1] Changing motion group to group2 1 JP[2]
2 DO[1]=ON Changing motion group to group1
2 DO[2]=ON
3 3

If “Selected program” has both group1 and group2 or “selected program” has no motion group, change of
motion group doesn’t change “selected program”.
- 130 -
B-83284EN-2/01 19. MULTI UOP INTERFACE FUNCTION
To change “selected program” in these cases, display program selection screen, set cursor to a program that
you want to display and press ENTER.

19.4 RUN PROGRAM

19.4.1 Robot Service Request (RSR)


If the number of UOP set is 1, when RSR1~8 are turned on, the program corresponded to the RSR number
is started if the program is aborted.
If another program is running or paused, the request is joined to the queue. And the program is started when
the running program is completed.

Multi UOP Interface has four RSR signals per UOP set (#1 ~ #N) if the number of UOP set is 2 and over.
RSR1~4 are for UOP set 1. RSR5~8, RSR9~12, … are same as RSR1~4 (Please refer to “19.2.6 RSR”.).
And each UOP set has RSR queue, so the number of RSR queue is N.
By this function, N programs can run at the same time.

The program started by RSR1~4 becomes “Program#1”.

In the following situation, program is not started.

• The program started by RSR1~4 does not have motion group intended by UOP set 1 and it has motion
group intended by other UOP set.

In this case, message “TPIF-44 Program is unsuitable for robot” is displayed.

RSR5~8, RSR9~12, … are same as RSR1~4.

19.4.2 Program Number Select (PNS)


Multi UOP Interface has one PNSTROBE and one PROD_START signal per UOP set (#1 ~ #N).

The program selected by PNSTROBE#X becomes “Program#X”. This program can be started by
PROD_START#X and it is resumed from pause by START#X (X = 1 ~ N).

In the following situation, program is not selected.

• The program selected by PNSTROBE#X does not have motion group intended by UOP set X and it
has motion group intended by other UOP set.

In this case, message “TPIF-44 Program is unsuitable for robot” is displayed.

19.5 STOP PROGRAM

19.5.1 Pause Program by UOP


When whichever of HOLD signals (HOLD#1~ #N) is turned OFF, running program is paused.
Please read “19.2.3 HOLD#1~#N” for detail.

19.5.2 Abort Program by UOP


If “CSTOPI for ABORT” in System Config is TRUE, programs are aborted when CSTOPI turns ON.
- 131 -
19. MULTI UOP INTERFACE FUNCTION B-83284EN-2/01

The default setting of ‘CSTOPI for ABORT’ is FALSE.


Please read “19.2.4 CSTOPI#1~#N” for detail.

19.5.3 Other
When hold button on Teach Pendant or Operator Panel, all running programs are paused.

19.6 SYSYTEM VARIABLES


Name $MULTI_ROBO.$MLT_ENABLE
Default TRUE
Type BOOLEAN
Protection Not protected
Range TRUE/FALSE
Meaning Enable/Disable multi robot control function.
TRUE: Multi robot control function is enabled.
FALSE: Multi robot control function is disabled.

Name $MULTI_ROBO.$HOLD_TYPE
Default 0
Type INTEGER
Protection Not protected
Range 0/1
Meaning Select the function of HOLD#1 ~ #N.
0: All programs are paused when one of the HOLD#1~#N signals turns OFF.
1: “Program#X” is paused when HOLD#X turns OFF.

Name $MULTI_ROBO.$NUM_PROG
Default 1
Type INTEGER
Protection Not protected
Range 1~5
Meaning The number of UOP set to use.

Name $MULTI_ROBO.$MULTI_PROGC[5]
Default [1]1, [2]2, [3]4, [4]8, [5]16
Type INTEGER
Protection Not protected
Range 0 ~ 0xFFFF
Meaning Bit mask for intended motion group of each UOP set.

In the default, UOP set 1 intends Motion group 1, UOP set 2 intends Motion
group 2, and so on.

[ Supplement ] Basis of selection for program #

We can select program by UOP or TP, and program number is set on the basis of $MULTI_PROGC.
Program number setting rule is the following:

< Common rule for UOP and TP >


Rule 1) If motion group of $MULTI_PROGC[#n] and motion group of program match at least one group,
the program can be set #n.
Rule 2) No motion group program can be set ALL program number.
Rule 3) If motion group of every $MULTI_PROGC[#n] and motion group of program match none, the
program is treated equally as no motion group program. (So conform to Rule 2.)
- 132 -
B-83284EN-2/01 19. MULTI UOP INTERFACE FUNCTION
Example $MULTI_PROGC[1-5] = 1, 2, 3, 4, 0

Motion group of program A~G Program number


G1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 #1 #2 #3 #4 #5
PROGRAM A (1,*,*,*,*,*,*,*) #1 #3
PROGRAM B (*,1,*,*,*,*,*,*) #2 #3
PROGRAM C (1,1,*,*,*,*,*,*) #1 #2 #3
PROGRAM D (1,*,1,*,*,*,*,*) #1 #3 #4
PROGRAM E (*,*,*,*,*,*,*,*) #1 #2 #3 #4 #5
PROGRAM F (*,1,*,1,*,*,*,*) #2 #3
PROGRAM G (*,*,*,1,*,*,*,*) #1 #2 #3 #4 #5

The above figure illustrates PROGRAM C can be set #1, #2, or #3, and conversely, #2 can select
PROGRAM B, C, E, F or G, for instance.

$MULTI_PROGC[1] = 1 >> match at least one group to PROGRAM A, C, D


$MULTI_PROGC[2] = 2 >> match at least one group to PROGRAM B, C, F
$MULTI_PROGC[3] = 3 >> match at least one group to PROGRAM A, B, C, D, F
$MULTI_PROGC[4] = 4 >> match at least one group to PROGRAM D
$MULTI_PROGC[5] = 0 >> match at least one group to none

$MULTI_PROGC[1-5] >> can select no motion group PROGRAM E, G (along Rule 3)

< Rule for TP only >


Rule 4) If selected program is already set program number, program number don’t change.
Rule 5) If selected program is not set program number yet, the program is set program number along the
following priority. And if some program number have same priority, small number comes first.
(In the following Priorities from 1 to 4, #X is the number that “Program #X” is aborted or is not
selected.)
[Priority 1] Motion group of $MULTI_PROGC[#x] is equal to motion group of program. (If
PROGRAM C is selected by TP, set #3 not #1 or #2. If PROGRAM E is selected by TP, set
#5 not #1, #2, #3 or #4.)
[Priority 2] Motion group of $MULTI_PROGC[#x] inhere motion group of program. (If PROGRAM B
is selected by TP, set #2 not #3.)
[Priority 3] Motion group of $MULTI_PROGC[#x] and motion group of program match at least one
group.
[Priority 4] If program isn’t along the above priority from 1 to 3, the program is set to smallest number
X that “Program #X” is aborted or is not selected. ( A program along Rule 2 or 3 is treated
here unless along priority 1.)
[Priority 5] #X is the number that “Program#X” is paused. On that basis, the smallest number that
complies with priority 3. (Priority 5 is applied when TP is enabled and “Multi Program
Selection” is disabled. Then paused program is aborted.)

When none of the above Priorities is corresponded, it means that all “Program#X” that #X complies with
Priorities from 1 to 4 are in execution. Then warning message is displayed and # isn’t set to selected
program.

- 133 -
19. MULTI UOP INTERFACE FUNCTION B-83284EN-2/01

Name $MULTI_ROBO.$TRAD_MODE
Default FALSE
Type BOOLEAN
Protection Not protected
Range TRUE/FALSE
Meaning Compatible flag for Multi Robot Control Function used in the old robot controller.
TRUE: Compatible mode
- There is single CSTOPI signal.
- $MULTI_ROBO.$NUM_PROG is 2.
- $ROBOT_ISOLC plays role of $MULTI_ROBO.$MULTI_PROGC.
(Only when $MULTI_ROBO.$MULTI_PROGC exists.)
FALSE: Normal Multi UOP Interface mode

Name $MULTI_ROBO.$UNSELOUTPUT
Default 1
Type INTEGER
Protection Not protected
Range 0/1
Meaning Output form of PROGRUN#1~#N signals at the execution of an unselected
program and PAUSE#1~#N signals at the pause of an unselected program.

0: When an unselected program is executed, PROGRUN#1~#N signals are


not output, but BUSY is output. When an unselected program is paused,
PAUSE #1~#N signals are not output.
1: When an unselected program is executed, all PROGRUN#1~#N signals are
output. When an unselected program is paused, all PAUSE #1~#N signals
are output.

- 134 -
B-83284EN-2/01 20. ERROR CODE OUTPUT FUNCTION

20 ERROR CODE OUTPUT FUNCTION


20.1 INTRODUCTION
CAUTION
This is optional function (J527), and the expanded I/O board is necessary.

This function outputs the contents of the alarm that occurred in the robot as a digital output signal code with
strobe.

20.2 SPECIFICATION

20.2.1 Types of Alarms


All alarms except ones whose severity WARN are the targets of external output.

20.2.2 Input and Output Signals


Expanded I/O board is necessary to use this function.
33 points of DO are used as output signals of external error code, and 1 point of DI is used as input signal.

Set the signals used in this function to the following system variables.

$ER_OUT_PUT.$OUT_NUM : Output signal number


$ER_OUT_PUT.$IN_NUM : Input signal number

• Output signals
$ER_OUT_PUT.$OUT_NUM determines which DO is used.
33 points of DO from setup number are used.
When setup number is 0, this function is disabled.

• Types of output signal


Output of both code signals and strobe are kept on until reset signal is inputted.

Meanings of DO (in case of $ER_OUT_PUT.$OUT_NUM=1)


DO Types of alarms
1~32 Output alarms as binary (32 bit).
33 Used as strobe.

• Input signal (1bit)


When there are multiple errors, input signal is used as search signal.
$ER_OUT_PUT.$IN_NUM determines which DI is used.

• Time chart of signals


When an alarm occurs, the time chart is as follows.

- 135 -
20. ERROR CODE OUTPUT FUNCTION B-83284EN-2/01

Reset

Alarm

Code

80ms
Strobe

Time chart of an alarm

When multiple alarms occur at a time, the initial alarm is outputted at first. Then, the next alarm is
output every time search signal is input. These are cyclically output and after that reset signal with
strobe is output. Up to 100 alarms can be stored.

Alarm1

Alarm2

Alarm3

100ms 100ms 100ms 100ms

Search Signal

Alarm
Alarm1 Alarm2 Alarm3 Reset Alarm1

400ms 400ms 400ms 400ms


Code

80ms 80ms 80ms 80ms 80ms


Strobe

Time chart of multiple alarms

20.3 MEANING OF ALARM CODE


In case of $ER_OUT_PUT.$OUT_NUM = 1

DO Types of alarms
1~16 Output an alarm number as binary (16bit).
17~24 Output an alarm ID as binary (8bit).
25~32 Output an alarm Severity as binary (8bit).
33 Used as strobe.
- 136 -
B-83284EN-2/01 20. ERROR CODE OUTPUT FUNCTION

20.3.1 Severity of Alarm


DO
25 26 27 28 29 30 31 32
Severity
NONE OFF OFF OFF OFF OFF OFF OFF ON
WARN OFF OFF OFF OFF OFF OFF OFF OFF

Errors that have the severity above will not be outputted.

DO
25 26 27 28 29 30 31 32
Severity
PAUSE.L OFF ON OFF OFF OFF OFF OFF OFF
PAUSE.G OFF ON OFF OFF OFF ON OFF OFF
STOP.L OFF ON ON OFF OFF OFF OFF OFF
STOP.G OFF ON ON OFF OFF ON OFF OFF
SERVO OFF ON ON OFF ON ON OFF OFF
ABORT.L ON ON OFF ON OFF OFF OFF OFF
ABORT.G ON ON OFF ON OFF ON OFF OFF
SERVO2 ON ON OFF ON ON ON OFF OFF
SYSTEM ON ON OFF ON ON ON ON OFF

DO[25] and DO[26] means the severity of running a program.

DO[25] DO[26]
OFF OFF The program continues running.
OFF ON The program will be paused.
ON ON The program will be aborted.

DO[27] and DO[28] means the severity of motion.

DO[27] DO[28]
OFF OFF The motion continues running.
ON OFF The motion will be stopped.
OFF ON The motion will be canceled.

DO[29] means the severity of a servomotor.

OFF The servomotor continues running.


ON The servomotor will be powered down.

DO[30] means the severity of the target tasks.

OFF Effective only for the task.


ON Effective for all the tasks.

DO[31] means the request for recovery.

OFF No need to power down.


ON Cold start is necessary.

- 137 -
20. ERROR CODE OUTPUT FUNCTION B-83284EN-2/01

DO[32] means the request for the display on TP.

OFF No need to display.


ON Need to display.

20.3.2 Alarm ID
Alarm ID will be outputted as the number in the following.

Typical alarm ID:

Number Alarm ID
0 OS
3 PROG
7 MEMO
9 TPIF
11 SRVO
12 INTP
15 MOTN
19 JOG
20 APPL
23 SPOT
24 SYST
26 PALT
53 ARC
57 MACR
58 SENS
59 COMP

Other alarm ID:

Number Alarm ID Number Alarm ID


1 SRIO 36 TKSP
2 FILE 37 COPT
4 COND 38 APSH
5 ELOG 42 CMND
6 MCTL 43 RPM
8 GUID 44 LNTK
10 FLPY 45 WEAV
13 PRIO 46 TCPP
14 TPAX 47 TAST
16 VARS 48 MUPS
17 ROUT 49 MIGE
18 WNDW 50 LSR
21 LANG 51 SEAL
25 SCIO 52 PANE
27 UAPL 54 TRAK
33 DICT 55 CALB
34 KCLI 56 SP
35 TRAN 60 THSR

- 138 -
B-83284EN-2/01 20. ERROR CODE OUTPUT FUNCTION

20.3.3 Alarm Number


Alarm number will be directly output as binary data.

Example
In case of “SRVO 002 (severity SERVO)”
Alarm number is 2.
Alarm ID “SRVO” is 11.
The severity is SERVO.

DO[1] OFF Alarm number DO[17] ON Alarm ID


DO[2] ON 2 DO[18] ON 11
DO[3] OFF DO[19] OFF
DO[4] OFF DO[20] ON
DO[5] OFF DO[21] OFF
DO[6] OFF DO[22] OFF
DO[7] OFF DO[23] OFF
DO[8] OFF DO[24] OFF
DO[9] OFF DO[25] OFF Alarm Severity
DO[10] OFF DO[26] OFF SERVO
DO[11] OFF DO[27] ON
DO[12] OFF DO[28] OFF
DO[13] OFF DO[29] ON
DO[14] OFF DO[30] ON
DO[15] OFF DO[31] OFF
DO[16] OFF DO[32] OFF

- 139 -
21. DATA MONITOR FUNCTION B-83284EN-2/01

21 DATA MONITOR FUNCTION


Data Monitor is a tool for improving process quality. You can use it to monitor and record important
process parameters. It can alert you to a parameter going out of limit and it can record data for use in a
quality record. Data monitor option (J675) is needed to use this function.

Data Monitor operates much like a strip chart recorder or a data acquisition system. To use the Data Monitor
feature you make selections in two teach pendant screens and add two teach pendant program instructions.
Specifically,
- Enable or disable any specific features in the Data Monitor Utility screen.
- Select items to monitor (such as arc current feedback) with one of the Data Monitor schedules.
- Add Sample Start[schedule number] and Sample End instructions to your TP program to control when
monitoring occurs.

You can monitor up to five items at once with a Data Monitor schedule. The maximum sampling frequency
is 250 Hz. You can specify separate frequencies for limit checking and for recording. As the items specified
in the schedule are recorded, the following data is also collected: time, date, distance, program name and
line number. You can choose the items you want to monitor from the Data Monitor Schedule screen.

As data is recorded, it can be formatted as a report and sent to a file.


A short example report is shown in Fig.21 (a). The data is tab delimited for importing into a spreadsheet
application.

DATA MONITOR REPORT

Number Tick Time Program Line Voltage [Volts] Wire feed [Amps]
1 48 .192 TEST 2 0.000 0.000
2 98 .392 TEST 3 20.000 200.000
3 148 .592 TEST 3 20.000 200.000
4 198 .792 TEST 3 20.000 200.000
5 248 .992 TEST 3 20.000 200.000
6 298 1.192 TEST 3 20.000 200.000
7 348 1.392 TEST 4 0.000 0.000
Fig.21 (a) Report example
Definitions
This section contains definitions of terms you should know to use Data Monitor.

Item - A specific data element to be monitored. For example, an I/O signal, like WO[2] or AI[2]. Data
Monitor can monitor the following kinds of items:
- System variables (Real or Integer only)
- KAREL program variables (Real or Integer only)
- I/O ports (digital and analog)
- Registers (numeric only)
- Axis position.
Schedule -A set of parameters that define how to monitor specific items and where to save recorded data.
Trigger - A condition that must be met to begin or end monitoring.
Limit - A defined high or low value for a monitored item.

- 140 -
B-83284EN-2/01 21. DATA MONITOR FUNCTION

Monitoring Limits
Data monitoring can check each sampled item against upper and lower limits. If the average of the item
samples is out of limits for a specified time period (Tmin in Figure 21 (b)), a warning or a pause alarm will
occur, if enabled. You must specify a nominal value, a warning limit, a pause limit, and a time duration for
each monitored data item. A warning limit and a pause limit are indicated by the difference from nominal
value. If the monitored data exceeds the range of (nominal value + limit value), an alarm is posted.

Tmin Tmin Tmin


Average

Nominal + Pause
Nominal + Warning
Nominal
Nominal - Warning
Nominal - Pause

Limit DO

Time
END
RESET

Fig.21 (b) Process limits

If a warning limit is crossed for the specified time, a WARN severity error is posted and the limit digital
output is turned ON. If the average of the item samples returns to within the WARN limit for the specified
time the digital output is turned OFF.

If a pause limit is crossed for the specified time a PAUSE severity error is posted, the limit digital output is
set to ON, and the program is paused.

When the program ends, if a WARN or PAUSE limit error occurred during execution, the limit digital
output is turned ON. It is turned OFF by a system RESET.

21.1 DATA MONITOR SETUP


You must set up Data Monitor before you can use it. Table 21.1 lists and describes the items found on the
Data Monitor Setup screen.

Table 21.1 Data Monitor Setup Screen Menu Items


ITEM DESCRIPTION
Data Monitor Operation This item enables and disables operation of the Data Monitor function.
Default: Enabled NOTE Data monitoring is also disabled during step mode.
Recording This item turns data recording ON and OFF.
Default: Enabled
Filing This item turns report filing ON and OFF.
Default: Enabled
Pause on File Errors This item controls the severity of certain file errors. If this item is disabled,
Default: Disabled WARNING severity errors are posted and execution of the program being
monitored will continue. If it is enabled, PAUSE severity errors are posted and
execution of the program begin monitored stops.
Warning Limits This item turns Warning Limits ON and OFF.
Default: Disabled
Pause Limits This item turns Pause Limits ON and OFF.
Default: Disabled
Limit Error Output This item defines the port type and port number for the limit output. This digital
- 141 -
21. DATA MONITOR FUNCTION B-83284EN-2/01

ITEM DESCRIPTION
Default: DO[0] output is turned ON when a limit error is detected.
Sample Buffer Size This item specifies the size of the sample buffer.
Default:10
Min:1
Max:99
Record Buffer Size This item specifies the size of the record buffer.
Default:10
Min:1
Max:99
Setup This item enables or disables printing of data monitor setup information in the
Default: Disabled report header. See Fig.21.1
Items This item enables or disables printing of information in the report header about
Default: Disabled each of the items you want to monitor.
Schedule This item enables or disables printing of Schedule information in the report
Default: Disabled header.
Triggers This item enables or disables printing of Trigger information in the report header.
Default: Disabled
Program Name This item enables or disables printing the program name column in the Data
Default: Enabled Monitor report. See Fig. 21.1.
Line Number This item enables or disables printing the line number column in the Data Monitor
Default: Enabled report. See Fig. 21.1.
Date This item enables or disables printing the date and time of day column in the Data
Default: Disabled Monitor report. See Fig.21.1.
Tick + time This item enables or disables printing the Tick and Time column in the Data
Default: Disabled Monitor report. See Fig. 21.1.
Event This item enables or disables printing the event column in the Data Monitor report.
Default: Disabled See Fig.21.1.
NOTE At this time, there is only one event defined. An event value of 1 indicates
the data was recorded as a result of the recording frequency.
Distance This item enables or disables printing the distance column in the Data Monitor
Default: Enabled report. See Fig.21.1.

- 142 -
B-83284EN-2/01 21. DATA MONITOR FUNCTION

Number Date Tick Time Event Program Line Distance Voltage(Command)[Volts]


1 18-AUG-98 10:41:46 0 0 1 TEST 2 0 0

2 18-AUG-98 10:41:46 62 0.248 1 TEST 2 0 0

3 18-AUG-98 10:41:46 124 0.496 1 TEST 2 0 0

4 18-AUG-98 10:41:46 186 0.744 1 TEST 2 0 0

5 18-AUG-98 10:41:46 248 0.992 1 TEST 3 0 0

6 18-AUG-98 10:41:46 310 1.24 1 TEST 3 0 0

7 18-AUG-98 10:41:46 372 1.488 1 TEST 3 0 0

8 18-AUG-98 10:41:48 434 1.736 1 TEST 3 0 0

9 18-AUG-98 10:41:48 496 1.984 1 TEST 3 0 0

10 18-AUG-98 10:41:48 558 2.232 1 TEST 3 0 0

11 18-AUG-98 10:41:50 620 2.48 1 TEST 3 0 0

Date Tick + Time Event Distance

Line number

Program Name

Fig. 21.1 Sample Report

Procedure 21-1 Setting up data monitor


Condition
Data Monitor is installed on your controller.

Step
1 Press MENU.
2 Select UTILITIES.
3 Press F1, [TYPE].
4 Select Data Monitor. You will see a screen similar to the following.

- 143 -
21. DATA MONITOR FUNCTION B-83284EN-2/01

UTILITIES DMON SET


1/20
1 Data monitor operation: ENABLED
2 Recording: ENABLED
3 Filing: ENABLED
4 Pause on file errors: DISABLED
5 Warning limits: ENABLED
6 Pause limits: ENABLED
7 Limit error output: DO[ 0]
8 Sample buffer size: 10 samples
9 Record buffer size: 10 samples

ITEM DESCRIPTION ITEM NUM


10 Item 1 1

REPORT HEADER CONTENTS


11 Setup: DISABLED
12 Items: DISABLED
13 Schedule: DISABLED
14 Triggers: DISABLED

REPORT TABLE CONTENTS


15 Program name: ENABLED
16 Line number: ENABLED
17 Date: DISABLED
18 Tick + time ENABLED
19 Event: DISABLED
20 Distance: ENABLED

[ TYPE ] ENABLED DISABLED

5 Select each item on the menu and set it as desired.

Edit Data Monitor Items


6 Data Monitor allows you to define 20 items to monitor. These items are initialized for you, but you
can edit them to suit your needs. If you want to edit Data Monitor items, move the cursor to item 10.
When the cursor is on item 10, the DETAIL, [CHOICE], and HELP function keys will be available.
[CHOICE] allows you to choose an item from a list. DETAIL allows you to edit that item.

Item 10 has two columns. The right column contains an item number from 1 to 20. The left column
contains the corresponding item description.

UTILITIES DMON SET

ITEM DESCRIPTION ITEM NUM


10 Item 1 1

[ TYPE ] DETAIL [CHOICE] HELP

7 Press F4, [CHOICE]. You will see a screen similar to the following

1 2 3
1 Item 1 1 Item 8 1 Item 15
2 Item 2 2 Item 9 2 Item 16
3 Item 3 3 Item 10 3 Item 17
4 Item 4 4 Item 11 4 Item 18
5 Item 5 5 Item 12 5 Item 19
6 Item 6 6 Item 13 6 Item 20
7 Item 7 7 Item 14 7
8 –next page-- 8 –next page-- 8 –next page--

8 Select an item from the list by number or by moving the cursor and pressing ENTER.

- 144 -
B-83284EN-2/01 21. DATA MONITOR FUNCTION
9 Press the F3, DETAIL function key to edit the selected item. In this example, [2 Item 2] has been
selected. You will see a screen similar to the following.

UTILITIES DMON ITM


1/7
Data monitor item number: 2/ 20
1 Item type: INTEGER
Item sub type: **
Port or register number: ***
Axis number: G:* A:*
2 Program name: [ ]
3 Var: [ ]
4 Des: [ Item 2]
5 Units: [ ]
6 Slope: 0.00
7 Intercept: 0.00

[ TYPE ] ITEM EXIT [CHOICE] HELP

You can specify comment about the item in “4 Des” and “5 Unit”.
“6 Slope”, “7 Intercept” is for linear transformation. When Non-zero value is specified as slope,
Data is transformed as follows.

Data = [Slope] * [raw data] + [intercept]

When 0 is specified as slope, raw data is used without transformation.

Notice: Transformed data is used for comparison between PAUSE/WARN limit or condition of
Start/End trigger.

10 This is the screen you use to edit an item. Press F2, ITEM, to select a different item by number. Not all
of the menu items are available for all item types. If they are not available the item is not numbered,
you cannot move the cursor to it, and it displays as ***.
To set the Item type, move the cursor to line 1 and press [CHOICE]. You will see a screen similar to
the following.

UTILITIES DMON ITM


1/7
Data monitor item number: 2/ 20
1 Item type: INTEGER
Item
1 sub type: **
1 Port or register number:
INTEGER ***
2 REALAxis number: G:* A:*
3 2 Program name:
I/O [ ]
4 3 Var: [
REGISTER ]
5 4 Des: [
AXIS Item 2]
6 5 Units: [ ]
7 6 Slope: 0.00
8 7 Intercept: 0.00

[ TYPE ] ITEM EXIT [CHOICE] HELP

11 To change the Item type, move the cursor to Item type, and press ENTER.
Case that I/O is selected:
Specify “2 Item sub type” and “3 Port or register number”.

- 145 -
21. DATA MONITOR FUNCTION B-83284EN-2/01

Example for setting DO[3]


UTILITIES DMON ITM
1/7
Data monitor item number: 2/ 20
1 Item type: I/O
2 Item sub type: DO
3 Port or register number: 3
Axis number: G:* A:*
Program name: [ ]
Var: [ ]
4 Des: [ Item 2]
5 Units: [ ]
6 Slope: 0.00
7 Intercept: 0.00

[ TYPE ] ITEM EXIT [CHOICE] HELP

Case that REGISTER is selected:


Specify “2 Port or register number”.

Example for setting register[5]


UTILITIES DMON ITM
1/6
Data monitor item number: 2/ 20
1 Item type: REGISTER
Item sub type: **
2 Port or register number: 5
Axis number: G:* A:*
Program name: [ ]
Var: [ ]
3 Des: [ Item 2]
4 Units: [ ]
5 Slope: 0.00
6 Intercept: 0.00

[ TYPE ] ITEM EXIT [CHOICE] HELP

Case that Axis is selected:


Specify “2 Axis number”.
Specify group number of robot in “G:” and axis number in “A: “.

Caution: About J3 axis, J2/J3 interaction is not considered.

Example for setting J1 axis of group 1 robot


UTILITIES DMON ITM
1/6
Data monitor item number: 2/ 20
1 Item type: AXIS
Item sub type: **
Port or register number: ***
2 Axis number: G:1 A:1
Program name: [ ]
Var: [ ]
3 Des: [ Item 2]
4 Units: [ ]
5 Slope: 0.00
6 Intercept: 0.00

[ TYPE ] ITEM EXIT [CHOICE] HELP

Case that INTEGER or REAL is selected:


- 146 -
B-83284EN-2/01 21. DATA MONITOR FUNCTION
Select Integer or Real depending on data type of system variable or KAREL variable.

Specify “2 Program name”.


Specify [*system*] for system variable or [name of KAREL program] for KAREL variable.

Specify “3 Var”.
Specify variable name in “3 Var”.

Example for setting system variable $MCR.$GENOVERRIDE


UTILITIES DMON ITM
1/7
Data monitor item number: 2/ 20
1 Item type: INTEGER
Item sub type: **
Port or register number: ***
Axis number: G:* A:*
2 Program name: [ *SYSTEM*]
3 Var: [ $MCR.$GENOVERRIDE]
4 Des: [ Item 3]
5 Units: [ ]
6 Slope: 0.00
7 Intercept: 0.00

[ TYPE ] ITEM EXIT [CHOICE] HELP

12 When you are done editing this item you can press F2, ITEM to select a different item by number, or
press F3, EXIT to return to the setup screen.

21.2 DATA MONITOR SCHEDULE


You choose the items you want to monitor in a Data Monitor schedule.
You can also specify:
- Report file naming details
- Sampling frequencies
- WARN and STOP limits
- Start and Stop triggers

Reports
Reports are created automatically when you set the Reporting item on the Data Monitor schedule screen to
ENABLED. You can specify a file name and a file device on the Data Monitor Schedule screen for the Data
Monitor report.

Table 21.2 Data monitor schedule menu items


ITEM DESCRIPTION
Schedule Comment You can add a comment to each Data Monitor schedule.
File device This item allows you to specify the name of the device to be used when writing a
report. You can choose from FLPY:, PRN:, FR:, MC:, CONS:, or RD:.
File name This item allows you to specify the name of the file to be used for a report. A .DT
Default: Blank file extension is always used. If you leave this item blank, and Reporting is
enabled, the saved data file will be named "SAMPL".
File name index This item allows you to specify an index number to be appended to the file name
Default: 0 when a report is generated. If this item is non zero, each time a report is
Min: 0 generated this index will be incremented. For example if the file name is SAMPL
Max: 999 then successive reports will be named SAMPL001.DT, SAMPL002.DT, and so
forth.

- 147 -
21. DATA MONITOR FUNCTION B-83284EN-2/01

ITEM DESCRIPTION
File size This item specifies the amount of memory in KB you expect to use on the file
Default: 0 device. During execution of Sample Start[n], the device is checked for this
Min:0 amount of free memory. If it is not available, an error is posted. If you specify 0 as
Max:99999 the file size, the system only checks that there is at least one available block on
the media.
Sampling This item specifies the sampling frequency.
-Request - This is the sampling frequency you specify.
-Actual - This is the actual sampling frequency that Data Monitor will use. Since
there are only certain frequencies available, it may be greater than or less than
the sampling frequency you specify.
Monitoring This item specifies the monitoring frequency.
-Request - This is the monitoring frequency you specify.
-Actual - This is the actual monitoring frequency that Data Monitor will use. Since
there are only certain frequencies available, it may be greater than or less than
the monitoring frequency you specify.
Recording This item specifies the recording frequency.
-Request - This is the recording frequency you specify.
-Actual - This is the actual recording frequency that Data Monitor will use. Since
there are only certain frequencies available, it may be greater than or less than
the recording frequency you specify.
Record mode This item specifies the recording mode.
Default: CONTINUOUS -ONE BUFFER - Data will be recorded until the record data buffer is full.
-CONTINUOUS - The record buffer is re-used when full.
Number of items This item specifies how many items are monitored by this particular schedule.
Default: 5
Min: 1
Max: 6
Start item This item specifies the condition for starting data recording and enable/disable of
this condition after Sample Start instruction. If this condition is set to disable, data
recording is started just after Sample Start instruction.
The condition is set as the comparison between the value of the monitoring item
and setting item. For example, if condition is [ recording is started after current
command (item No.=2) becomes more than 150.], please set to [ 2 > 150 ].
NOTE: The user can check the item No. for monitoring by data monitor schedule
screen.
Stop item This item specifies the condition for finishing data recording and enable/disable of
this condition after Sample Start instruction. If this condition is set to disable, data
recording is not finished till performing Sample End instruction.
The method of setting condition is the same as Start item.

Procedure 21-2 Setting Up and Editing a Data Monitor Schedule


Condition
You have installed the Data Monitor schedule on your controller.

Step
1 Press MENU.
2 Select UTILITIES.
3 Press F1, [TYPE].
4 Select Data Monitor Schedules. You will see a screen similar to the following.

- 148 -
B-83284EN-2/01 21. DATA MONITOR FUNCTION
UTILITIES DMON SCH
Sched: 1/5 [Weld cmd + fbk ] 12/17

1 Schedule: 1 [Weld cmd + fbk ]

2 File device: [MC: ]


3 File name: [ ]
4 File name index: 1
5 File size: 0 KB

FREQUENCY REQUEST ACTUAL


6 Sampling: 250.00 250.00 Hz
7 Monitoring: 125.00 125.00 Hz
8 Recording: 10.00 10.00 Hz

9 Record mode: CONTINUOUS


10 Number of items to monitor: 5

ITEM DESCRIPTION ITEM NUM


11 Voltage(Command) 1
12 Wire Feed(Command) 1
13 Current(Feedback) 1
14 Voltage(Feedback) 1
15 Fast Clock 1

16 Start item: 2 >= 22.5 DISABLED


17 Stop item: 3 >= 200.0 DISABLED

[ TYPE ] SCHEDULE LIMITS [CHOICE] HELP

5 There are 5 Data Monitor schedules. The top line of the Schedule screen displays the current schedule
number and its comment. To select a different schedule, press F2, SCHEDULE, and enter the number
of the schedule you want to modify after the prompt.
6 To enter or modify the schedule comment, move the cursor to menu item 1 and press ENTER.
7 To specify the File device, move the cursor to line 2 and press F4, [CHOICE].
8 To specify the data monitor report file name, move the cursor to menu item 3 and press ENTER.
9 If you want to generate multiple report files with an index number in the file name, specify the starting
index number on line 4. If you don't want to create a new indexed file each time this schedule is used,
enter 0 on line 4.
10 Move the cursor to line 5, and specify the maximum report size, if desired, or leave it set to 0.
11 You specify the Sampling, Monitoring, and Recording frequencies on lines 6, 7 and 8 of the Data
Monitor Schedule screen. There are two values shown for these three items, the Requested Frequency
that you specify, and the Actual Frequency that will be used as the Sampling, Monitoring, or
Recording Frequency. When you enter the desired frequency in the Requested column, the Actual
column will update with the closest available frequency.

NOTE
The Monitoring and Recording Frequencies must be fractions of the Actual
Sampling frequency. If you have an actual sampling frequency of 125 Hz, the
maximum Monitoring and Recording frequency can only be 125 Hz. If you modify
the Sampling frequency, the Actual frequency may change for all three
frequencies.

12 To modify the Record mode, move the cursor to line 9 on the Data Monitor Schedule screen and press
F4, [CHOICE].
13 Each Data Monitor schedule can monitor up to 6 items simultaneously. You can specify the number of
items to monitor on line 10 of the Data Monitor Schedule screen.
14 Specify the items you want to monitor on lines 11 through 15 of the Data Monitor Schedule screen.
Press F4, [CHOICE], and select the item you want to monitor from the list of items displayed. You can
also specify an item by number in the Item Num column.
- 149 -
21. DATA MONITOR FUNCTION B-83284EN-2/01

Specify WARN and STOP Limits for Process Signals


15 To specify WARN and STOP limits, move the cursor to each item you have specified on lines 11 to 15
and press the F3, LIMITS function key.
16 Move the cursor to one of monitored items.
17 Press F3, LIMITS. You will see a that contains details on how specifically to monitor the item you
selected.

UTILITIES DMON LIM


1/4
Schedule: 1 [Sample example ]

Item: 2
Des:[ Wire feed (Command)]
Var:[ $awepor[1].$wfs_cmd]

1 Nominal value: 0.00


2 Warning limit: 0.00
3 Pause limit: 0.00
4 Time before error: 0.0 seconds

[ TYPE ] EXIT HELP

18 Select each item and set it as desired.


19 When you finished setting items, press F3, EXIT, to display the previous screen.

Start and Stop Trigger Items


20 You can specify the Start and Stop trigger items and conditions using the fields in menu items 16 and
17 on the Data Monitor Schedule screen.

21.3 PROGRAMMING
You can use the following teach pendant instructions to start and end data monitoring:
- Sample Start[]
- Sample End

The Start instruction has a schedule number as an input parameter.

NOTE
You cannot start multiple data monitoring sessions at one time. You must end a
monitoring session with a Sample End before executing another Sample Start.

Sample Start[1]
- To start data monitoring, include the Sample Start[] instruction in a teach pendant program.

Sample End
- To stop data monitoring, include the Sample End instruction in a teach pendant program.

See Fig. 21.3 for an example of how to use these instructions in a teach pendant program.

- 150 -
B-83284EN-2/01 21. DATA MONITOR FUNCTION

1: Sample Start[1]
2: J P[1] 40% FINE
: Arc Start[1]
3: L P[2] 20.0cm/min FINE
Arc End[1]
4: Sample End
[End]

Fig. 21.3 Example of using sample start[] and sample end in a teach pendant program

The Sample Start and Sample End instructions are located in the Data Monitor category of the Teach
Pendant Editor INST menu.

21.4 DATA MONITOR CHART


Data monitor chart screen enables you to display the graphs of the monitor reports on the teach pendant. The
graphs of the monitor reports are displayed after reading from other memory (MC etc.). So it is needed to
insert other memory to a robot controller before displaying data monitor chart screen.

Procedure 9-30 Data monitor chart


Condition
Data monitor function is ordered.
Robot controller have already detect other memory which have monitor reports.

Step
1 Press MENU.
2 Select “1 Utility”.
3 Press F1, [TYPE].
4 Select “Data Mon Chart”. The following screen is displayed.

Data 1
A Graph 1

Data 2
Graph 2

Data 3
Y B Graph 3

Data 4
Graph 4

Fig. 21.4 Data monitor chart screen

5 Data monitor chart screen can have up to 8 graphs. Y direction of a graph is reported data and X
direction is the reported count.
6 The file name of the monitor report is displayed on Fig 21.4 A. When the cursor is moved to A and
ENTER key is pressed, file select screen is displayed and the user can select the “.DT” file in other
memory.
- 151 -
21. DATA MONITOR FUNCTION B-83284EN-2/01

7 In Fig 21.4 B, newer value of the Y direction of each graph is displayed.


8 “Y Axis:” can compare displayed graphs. If 1 is set to “Y Axis:”, Data 2-4 are displayed on Graph 1. If
2 is set to “Y Axis:”, Data 1,3,4 are displayed on Graph 2.
9 “Columns:” can specify the number of the scale of X direction. “Columns:” can be set from 1 to 20.
10 “Samples:” can specify the number of displayed data. “Samples:” can be set from 1 to 100. If the user
want to the part of the data, please set small number to this item.
11 “Scale channel:”, “Scale ON/OFF”, “Min:” and “Max:” can change the scale of Y direction in each
graph. First, enter the graph number which you want to change scale to “Scale channel:”. If 1 is set to
“Scale channel:”, the user can change the scale of graph 1. Next, set the minimum and maximum value
of Y axis to “Min:” and “Max:”. After that, move the cursor to “Scale ON/OFF” and press ENTER key.
Y axis scale of the graph which is specified by “Scale channel:” is changed.
12 F2, < PAGE and F4, PAGE > key can change the scale of X direction of each graph.
13 F4, PAGE > key can move the column of X axis by +1.
14 F5, [DISPLAY] key can switch display enable/disable of each graph.

- 152 -
B-83284EN-2/01 22. BRAKE CHECK FUNCTION

22 BRAKE CHECK FUNCTION


22.1 OVERVIEW
Brake check function (A05B-2600-J951) is a function to check that motor does not move when motor
torque is applied under the brake is engaged. This function makes user to cause early detection of brake
failure. This function also informs the check results to user by warning message or system variables.

22.2 INITIAL SETTING BEFORE USE


Enable/Disable switch for brake check function
The following system variable is the switch that enable/disable brake check function.

$BCCFG.$BCK_ENABLE TRUE: Enable (default) / FALSE: Disable

In order to check or modify the system variables, press MENU key and select “SYSTEM”. Then, press F1,
[TYPE] key and select “Variables”. The system variables screen is displayed.

Please confirm this variable is TRUE (Enable) before use. The default value of this variable is TRUE
(Enable). If this variable is FALSE (Disable), brake check never starts.

Enable/Disable switch for each axis


On this function, user can customize enable/disable brake check for each axis. Please set the following
system variable to TRUE (Enable) for the axis where you want to execute brake check.

$BCK_GRP[group].$CHK_AXIS[axis] TRUE: Enable / FALSE: Disable

On robot axis, the default value is TRUE (Enable). On except robot axis (aux axis, servo gun, or etc.), the
default value is FALSE (Disable).

In addition, if you execute brake check on dual drive axis, please set this variable to TRUE (Enable) for both
master and slave axis.

Setting brake torque


This function needs brake torque for each axis in order to determine torque command during brake check.
Please set the following system variable with the brake torque [kgf*cm] for each axis.

$BCK_GRP[group].$BRK_TORQUE[axis] brake torque [kgf*cm]

On robot axis, this variable is set automatically, however, on except robot axis (aux axis, servo gun, or etc.),
this variable is not set automatically, so please manually set this variable with brake torque if you execute
brake check on except robot axis. For specification value of brake torque, please refer to “BRAKE
SPECIFICATIONS” on AC SERVO MOTOR DESCRIPTIONS corresponding to your motor. Please note
that the unit of this variable is [kgf*cm].

- 153 -
22. BRAKE CHECK FUNCTION B-83284EN-2/01

AC SERVO MOTOR DESCRIPTIONS Specification number


AC SERVO MOTOR α series DESCRIPTIONS B-65142EN
AC SERVO MOTOR β series DESCRIPTIONS B-65232EN
AC SERVO MOTOR αi series DESCRIPTIONS B-65262EN
AC SERVO MOTOR βi series DESCRIPTIONS B-65302EN

In addition, if you execute brake check on dual drive axis (except robot axis), please set this variable as
follows. (For robot axis, it is no need to set even if it’s dual drive axis.)

Case-1: Either master or slave motor has one brake.


Please set this variable with the brake torque [kgf*cm] for only the axis that has brake. For the axis that has
no brake, please set 0.0 (default).

Case-2: Both master and slave motors have brake respectively.


Please set this variable with the brake torque [kgf*cm] for both master and slave axes. And then the brake
torque value of master and slave axis must be same. If these values are different in the Case-2, it is not
supported.

22.3 START BRAKE CHECK


To start brake check, please set the following system variable to TRUE.

$BCCFG.$BCK_START TRUE: Brake check is running. / FALSE: Brake check is finished.

User can start brake check by parameter instruction of TP program or manually setting on system variable
screen. This variable automatically returns to FALSE when brake check is finished. Please not to move
robot till this variable automatically returns to FALSE. In addition, if brake check function is disabled
($BCCFG.$BCK_ENABLE=FALSE), this variable immediately returns to FALSE even if this variable is
set to TRUE.

Follows is a sample of TP program that execute brake check.

1: J P[1] 100% FINE


2: L P[2] 2000mm/sec FINE
3: WAIT 1.00 (sec)
4: $BCCFG.$BCK_START=1
5: WAIT $BCCFG.$BCK_START=0
6: L P[3] 2000mm/sec FINE

Brake check cannot be started while the robot is moving as specification, so this program waits for robot to
stop completely by WAIT instruction at Line 3. And this program starts brake check at Line 4 and waits to
finish brake check at Line 5. As just described on this sample program, brake check must be executed under
the robot stops completely.

NOTE
In case of brake failure, the motor can move during brake check. So please be
sure to execute brake check in sufficiently spaced layout. Total motion command
per single check is vary by robot or axis, however, it is up to 200000[pulse]. This is
about 0.4[rev] in motor revolution and about 1.4[deg] in degree of the angle
assuming the gear ratio as 1/100.

Additionally, in case where the power is shut OFF during brake check for some reason, the following alarm
will be posted at next power ON. This alarm indicates abnormal termination at last check.
- 154 -
B-83284EN-2/01 22. BRAKE CHECK FUNCTION

BRCH-003 Last check was failed

The following system variable will be also set to TRUE at next power ON.

$BCCFG.$LAST_FAILED TRUE: Last check was failed. / FALSE: Last check was normally finished.

In this case, the results of brake check will not be generated, so please execute brake check again at next
power ON. If next brake check would be normally finished, this variable will return to FALSE
automatically.

22.4 RESULTS OF BRAKE CHECK


$BCCFG.$BCK_START automatically returns to FALSE when brake check finishes. And then the results
are also posted as warning message.
If all brake passes as “Good” brake, the following message will be posted.

BRCH-001 All brake are normal

By contrast, if brake failure is detected as “Bad” brake, the following message will be posted.

Ex) Brake failure is detected on group1/J2.


BRCH-002 Brake abnormal (G:1,A:2)

The results are also recorded on the following system variable at the same time. The value of this variable is
kept till next brake check starts.

$BCK_GRP[group].$CHK_RESULT[axis] TRUE: Brake failure/FALSE: Normal brake (default)

22.5 LIMITATIONS
Brake check function cannot be executed under the following conditions, or alarm will be posted.
• Calibration has not been done.
• Robot is moving.
• Servo is OFF.
• Servo parameter is under updating.
• Dual motor is under the adjusting mode.
• Even though the axis has brake and $BCK_GRP[group].$CHK_AXIS[axis] is TRUE, brake
torque ($BCK_GRP[group].$BRK_TORQUE[axis]) is not set.
• Teach Pendant is enabled.
• Any axis is near by stroke limit when brake check starts.

22.6 CAUTION
• It takes about 10[sec] for single brake check execution.
• When the motor is heating up, the motor torque can decrease, so it may not be able to detect brake
failure. To detect it with high accuracy, please execute brake check preferably when the motor is in
low-temperature, e.g. first thing in the morning.

- 155 -
23. PANEL WIZARD B-83284EN-2/01

23 PANEL WIZARD
23.1 OVERVIEW
The Panel Wizard option allows you to use the controller to create up to four operation panels to be
displayed on the teach pendant. You don’t need PC to create panel.

23.2 SOFTWARE REQUIREMENTS AND EXPLANATION


1 This function is Panel wizard (A05B-2600-R594).
2 This function is option.
3 KAREL use support (A05B-2600-J971) includes this function.
4 You can order R594 only, not J971.

NOTE
Please use the teach pendant which equips the touch panel for this function.

23.3 SETTING UP

23.3.1 Overview
Use procedure 23-1 to setup the Panel Wizard.

Procedure 23-1 Setting up the Panel Wizard


Step
1 Press MENU.
2 Select BROWSER.
3 Press F1, [ TYPE ].
4 Select Panel Wizard. You will see screen similar to the following.

Fig. 23.3.1 (a) Panel wizard start screen

- 156 -
B-83284EN-2/01 23. PANEL WIZARD
5 Select Start Wizard. You will see a screen similar to the following.

NOTE
Double Pane mode will be displayed automatically.

Fig. 23.3.1 (b) Panel selection screen

NOTE
After you make a selection on any screen, press NEXT. To cancel the Panel
Wizard at any time, press F2, CANCEL. To display the previous screen at any
time, press F3, BACK.

6 Select the panel that you want to create. Refer to Fig. 23.3.1 (c) for a flowchart overview of the steps
required to create an operator panel.

- 157 -
23. PANEL WIZARD B-83284EN-2/01

Start Wizard.

Select the panel.

Yes Modify
Does the panel Modify or New
exist? Panel?

New
No
Overwrite Confirmation.
Enter the number
of rows and
columns for an
invisible table.

Select operation.

Finish Wizard.

Add Control Edit Control Modify Page

Select the control. Select the object and then Change the property
select the operation. of the page.

Modify Control Cut/Paste Cut


Copy/Paste
Delete
Select the data. Confirmation.
This is a series of pages that
is dependant on the control.

Add Control
Select the row and column
to insert the control.

Modify Control

Fig. 23.3.1 (c) Create operation panel flowchart

NOTE
Control in the chart is iPendant control. It corresponds to parts like buttons
displayed by Panel Wizard.

- 158 -
B-83284EN-2/01 23. PANEL WIZARD

23.3.2 Available iPendant Controls


Panel wizard create operation panel by placing iPendant control on invisible table. iPendant Control to add
is selected in a screen similar to following. Please refer to Fig. 23.3.1.(c) for how to display the screen.

Fig. 23.3.2 iPendant control selection screen

Pressing button on the center of the screen displays lists of available iPendant Controls Following table lists
the choices.

Table 23.3.2 Available iPendant controls


Choice Description
Fast Label This is simply shorted version of another choice “Label”. It is described later. Refer to the
description.
Fast lamp This is simply shorted version of another choice “Toggle Lamp”. It is described later. Refer
to the description.
Fast Switch This is simply shorted version of another choice “Toggle Button”. It is described later. Refer
to the description.
Button Change This control is used to display the specified web page. It can also be used to run KAREL
program.
Command Button This control is used to write the specified value to a Register, System or KAREL Variable
(except XYZWPR type) or I/O whenever the button is pushed.
EditBox This control is used to change the value of a Register, System or KAREL Variable (except
XYZWPR type) or I/O.
Label The value of a Register, System or KAREL Variable or I/O is displayed.
Toggle Button This control is used to change the value of a Register, System or KAREL Variable (except
XYZWPR type) or I/O to the specified value following the ON (Pushed)/OFF (Popped)
status of the button.
Toggle Lamp This control is used to change the color of the control if the value of a Register, System or
KAREL Variable (except XYZWPR type) or I/O fulfills the specified condition with the
specified value or not.

Setup of each control is described following sections.

- 159 -
23. PANEL WIZARD B-83284EN-2/01

NOTE
Wizard is always display in double pane mode. Setup is done in the left pane.
Right pane is used to display rough image of result of setup. Because display on
the right pane depends on content of setup, figures in this manual usually do not
match what you see during setup.

23.3.3 Setting Up Fast Label


Fast lamp is shorted version of Label control. Label control displays value of a Register, System or KAREL
Variable or I/O. Use procedure 23-2 to add Fast Label.

Procedure 23-2 Addition of Label control by Fast Label


Step
1 Select Fast Label in iPendant Control selection screen (Fig. 23.3.2).
2 Press F4. You will see a screen similar to the following.

Fig. 23.3.3 (a) Size setup screen

Table 23.3.3 (a) Items in size setup screen


Item Description
Caption (format) If data type is static (this is always true for Fast Label), input string is text displayed. If the
other data type is used, caption is format string.
Font Size Size of font. Choices are 14,16,18 and 24.
Bold If this is checked, value is displayed in bold.
Width and % This is width of control. If % is not checked, width is specified in pixels. If % is checked, width
is specified in percentage of screen size.
Height and % This is height of control. Unit is specified in the same way as width.

NOTE
In setup of Fast Label, data type is default to static. Input string to be displayed to
Caption.

3 Setup items as required.


4 Press F4, NEXT. You will see a screen similar to the following.

- 160 -
B-83284EN-2/01 23. PANEL WIZARD

Fig. 23.3.3 (b) Control insertion screen

Table 23.3.3 (b) Items in control insertion screen


Item Description
Row and Column Row and column to insert iPendant Control
APPLY This is not setup item.
Pressing the button displays rough image of screen after insertion is displayed on right
pane. Please note that screen image in right pane is just a rough guide.

5 Press F4, NEXT. This is end of addition of Label control by Fast Label.

23.3.4 Setting Up Fast Lamp


Fast lamp is shorted version of Toggle lamp. Toggle lamp is used to change the color of the control if the
value of a Register, System or KAREL Variable (except XYZWPR type) or I/O fulfills the specified
condition with the specified value or not. Use procedure 23-3 to add Fast Lamp.

Procedure 23-3 Addition of toggle lamp by Fast Lamp


Step
1 Select Fast Lamp in iPendant Control selection screen (Fig. 23.3.2).
2 Press F4. You will see a screen similar to the following.

- 161 -
23. PANEL WIZARD B-83284EN-2/01

Fig. 23.3.4 (a) Date type setup screen

DataType specifies the type of the data to be monitored or modified depending on the type of control.
DataIndex specifies the number or the variable name associated with the DataType.

Table 23.3.4 (a) Data type and data index


Data type Description
Static String in caption is displayed.
Numeric Register The value of numeric register specified in Date index is used.
System variable The value of system variable specified in Data index is used.

For System Variables, the type must be Integer, Real, Boolean, Short, Byte, or String.
For example,
$MNUFRAMENUM[1]

KAREL variable The value of KAREL variable specified in Data index is used. For KAREL Variables,
enclose the program name inside […]. The type must be Integer, Real, Boolean, Short,
Byte, or String. Following is example of variable STR_VAR of KAREL program
USEREXT.
[USEREXT]STR_VAR

Dictionary Element Dictionary element specified in Data index is used.


For Dictionary Elements, specify the dictionary name and enclose the dictionary element
inside […]. For example,
TPAR[5]
Only Label control uses dictionary element.
DI The value of DI specified in Data index is used.
DO The value of DO specified in Data index is used.
…….. (the other I/O type) The value of I/O type specified in Data type and Data index is used.
Data index is port number.

Toggle lamp uses specified data to decide ON/OFF of lamp.


3 Setup items as required.
4 Press F4, NEXT. You will see a screen similar to the following.

- 162 -
B-83284EN-2/01 23. PANEL WIZARD

Fig. 23.3.4 (b) Image setup screen

Table 23.3.4 (b) Items in image setup screen


Item Description
View type Type of button to display
Panel: specify panel type.
Circle: specify circle type.
Fixed circle: specify circle with fixed size.
Image: specify image type.
Image Source This is active when view type is image.
Standard Images: image files installed can be selected in the menu of True image and false image.
fr:*.gif:GIF file in FR: can be used. FR is device on F-ROM of controller.
fr:*.jpg:JPG file in FR: can be used.
Keyboard Entry: Input path of image file.
True Image This specifies the image to be displayed when the read value fulfill the condition expression. Used
only in case that ViewType is Image type.
When image source is Keyboard Entry, button of lower side is active. Input path of image file by the
button.
When image source is not Keyboard Entry, button of upper side is active. The menu is displayed by
the button. Select image fie from the sub menu.
False Image This specifies the image to be displayed when the read value does not fulfill the condition
expression. This is used only in case that View Type is Image type.
Refer to description of True Image for how to specify image file.

5 Setup items as required.


6 Press of F4, NEXT leads you to control insertion screen. Please refer to Section 23.3.3.
7 Decide position to insert and press F4, NEXT. This is end of addition of Toggle Lamp by Fast Lamp.

23.3.5 Setting Up Fast Switch


Fast switch is shorted version of Toggle Button. Toggle button is used to change the value of a Register,
System or KAREL Variable (except XYZWPR type) or I/O to the specified value following the ON
(Pushed)/OFF (Popped) status of the button. Use procedure 23-4 to add Toggle button by Fast Switch.

Procedure 23-4 Addition of Toggle button by Fast Switch


Step
1 Select Fast Switch in iPendant Control selection screen (Fig. 23.3.2).
- 163 -
23. PANEL WIZARD B-83284EN-2/01

2 Press of F4, NEXT leads you to data type setup screen. Please refer to section 23.3.4.
3 Press of F4, NEXT leads you to image setup screen (Fig. 23.3.4 (b)). Screen is same as section 23.3.4.
But choices of view type are different.

Fig. 23.3.5Toggle button image setup screen

Table 23.3.5 Items in toggle button image setup screen


Item Description
View type Type of button to display
Panel: specify panel type.
Check box: specify check box type.
Image: specify image type.
F2-F5, F7-F10: specify function key type.
Circle: specify circle. (Size of circle is fixed. This is just like fixed circle.)
Image Source This is same as toggle lamp. Please refer to table 23.3.4 (b).
True Image This specifies the image to be displayed when the button status is ON. This is used only in case that
ViewType is image type. How to setup is just same as toggle lamp. Please refer to table 23.3.4 (b).
False Image This specifies the image to be displayed when the button status is OFF. This is used only in case that
ViewType is image type. How to setup is just same as toggle lamp. Please refer to table 23.3.4 (b).

4 Press of F4, NEXT leads you to control insertion screen. Please refer to Section 23.3.3.
5 Decide position to insert and press F4, NEXT. This is end of addition of Toggle button by FAST
Switch.

23.3.6 Addition of Button Change Control


Button Change control is used to display the specified web page. It can also be used to run KAREL program.
Method to run KAREL program is described later. Use Procedure 23-5 to add Button change control.

Procedure 23-5 Addition of Button Change Control


Step
1 Select Button Change in iPendant Control selection screen (Fig. 23.3.2).
2 Press F4. You will see a screen similar to the following.

- 164 -
B-83284EN-2/01 23. PANEL WIZARD

Fig. 23.3.6 (a) URL setup screen

Table 23.3.6 (a) URL setup screen


Item Description
PageName Press of upper side button displays STM/HTM files in FR:. Select file to display. If you want to
display the other file, press lower side button and input URL.

3 Press of F4, NEXT, leads you to Button Change image setup screen. Screen is same as image setup
screen of section 23.3.4. But choices of view type are different.

Fig. 23.3.6 (b) Button change image setup screen

Table 23.3.6 (b) Items in Button change image setup screen


Item Description
View type Type of button to display
Normal: Specify the normal button.
Image: specify image type.
F2-F5, F7-F10: specify function key type.
Image Source This is same as toggle lamp. Please refer to table 23.3.4 (b).

- 165 -
23. PANEL WIZARD B-83284EN-2/01

Item Description
True Image This specifies the image to be displayed when the button is pushed. Used only in case that
ViewType is Image type. How to setup is just same as toggle lamp. Please refer to table 23.3.4 (b).
False Image Specify the image to be displayed when the button is not pushed. Used only in case that ViewType
is Image type. How to setup is just same as toggle lamp. Please refer to table 23.3.4 (b).

4 Press F4, NEXT. You will see a screen similar to the following.

Fig. 23.3.6 (c) Color setup screen

Table 23.3.6 (c) Items in Color setup screen


Item Description
BackGround This specifies background color.
Pressing button displays list of standard colors in the menu.
(BackGround) Specify background color by RGB.
Red, Green, Blue This enables more detailed setup than selection from menu of BackGround button.
(BackGround) With check of this item, background color of control becomes background color of web page.
Transparent
ForeGround This specifies color of character. How to setup is same as background color.
(ForeGround) Please refer to the same item for background color.
Red, Green, Blue
(ForeGround) With check of this item, foreground color of the control becomes foreground color of web page.
Transparent

5 Press of F4, NEXT leads you to size setup screen (Fig. 23.3.3 (a)). Please refer to Section 23.3.3.
Caption is used as fixed string. It is not used as format.
6 Press F4, NEXT. You will see a screen similar to the following.

- 166 -
B-83284EN-2/01 23. PANEL WIZARD

Fig. 23.3.6 (d) Style setup screen

Table 23.3.6 (d) Items in style setup screen


Item Description
Border This specifies type of borderline of button.
Choices are Thin 3D, None, Black, ForeColor and Bold 3D.
HAlign This specifies alignment of string in horizontal direction.
Choices are Left, Center and Right.
VAlign This specifies alignment of string in vertical direction.
Top, Center and Bottom.

Following figure shows difference between types of borderline. The right pane shows buttons of each 5
border types. This figure is just a sample that has nothing to do with flow to add button change control.

Fig. 23.3.6 (e) Type of borderlines

7 Press of F4, NEXT leads you to control insertion screen. Please refer to Section 23.3.3.
8 Decide position to insert and press F4, NEXT. This is end of addition of Button Change control.

- 167 -
23. PANEL WIZARD B-83284EN-2/01

23.3.7 Addition of Command Button Control


Command Button Control is used to write the specified value to a Register, System or KAREL Variable
(except XYZWPR type) or I/O whenever the button is pushed. Use Procedure 23-6 to add Command Button
Control.

Procedure 23-6 Addition of Command Button Control


Step
1 Select Command Button in iPendant Control selection screen (Fig. 23.3.2).
2 Press of F4, NEXT leads you to data type setup screen. Please refer to section 23.3.4.
3 Press F4, NEXT. You will see a screen similar to the following.

Fig. 23.3.7 Command button setup screen

Table 23.3.7 Items in Command button setup screen


Item Description
Type Logical: Data is transacted as bool type. (SetValue is TRUE/FALSE)
Numerical: Data is transacted as numerical type. The value of SetValue is applied.
SetValue This specifies the value written when the button is pushed.
Pulse This is active only when data type is DO. If this is checked, signal output becomes pulsed output.
Pulse width (right This specifies width of pulse in msec.
item of pulse check
box)

4 Press of F4, NEXT leads you to image setup screen. This is same as Button change image setup screen
(Fig. 23.3.6 (b)). Please refer to section 23.3.6.
5 Press of F4, NEXT leads you to color setup screen. Please refer to section 23.3.6.
6 Press of F4, NEXT leads you to size setup screen. Please refer to section 23.3.3. Caption is used as fixed
string. It is not used as format.
7 Press of F4, NEXT leads you to style setup screen. Please refer to section 23.3.6.
8 Press of F4, NEXT lead you to control insertion screen. Please refer to section 23.3.3.
9 Decide position to insert and press F4, NEXT. This is end of addition of Command Button Control.

- 168 -
B-83284EN-2/01 23. PANEL WIZARD

23.3.8 Addition of Edit Box Control


Edit Box Control is used to change the value of a Register, System or KAREL Variable (except XYZWPR
type) or I/O. Use Procedure 23-7 to add Edit Box Control.

Procedure 23-7 Addition of Edit Box Control


Step
1 Select Edit Box in iPendant Control selection screen (Fig. 23.3.2).
2 Press of F4, NEXT leads you to data type setup screen. Please refer to section 23.3.4.
3 Press F4, NEXT. You will see a screen similar to the following.

Fig. 23.3.8 Edit box setup screen

Table 23.3.8 Items in edit box setup screen


Item Description
View type Normal: specify simple button.
F2-F5, F7-F10: specify function key type.
KeyType Select the type of virtual keyboard.
NumericKey: virtual keyboard for number input
FullKey: virtual keyboard for string input
Value Min, Value Minimum and maximum value of numerical value.
Max

4 Press of F4, NEXT leads you to color setup screen. Please refer to section 23.3.6.
5 Press of F4, NEXT leads you to size setup screen. Please refer to section 23.3.3.
6 Press of F4, NEXT leads you to style setup screen. Please refer to section 23.3.6.
7 Press of F4, NEXT lead you to control insertion screen. Please refer to section 23.3.3.
8 Decide position to insert and press F4, NEXT. This is end of addition of Edit Box Control.

23.3.9 Addition of Label Control


Label control displays value of a Register, System or KAREL Variable or I/O. Use procedure 23-8 to add
Fast Label.

- 169 -
23. PANEL WIZARD B-83284EN-2/01

Procedure 23-8 Addition of Label Control


Step
1 Select Label in iPendant Control selection screen (Fig. 23.3.2).
2 Press of F4, NEXT leads you to data type setup screen. Please refer to section 23.3.4.
3 Press of F4, NEXT leads you to size setup screen. Please refer to section 23.3.3.
4 Press of F4, NEXT leads you to style setup screen. Please refer to section 23.3.6.
5 Press of F4, NEXT leads you to color setup screen. Please refer to section 23.3.6.
6 Press of F4, NEXT lead you to control insertion screen. Please refer to section 23.3.3.
7 Decide position to insert and press F4, NEXT. This is end of addition of Label Control.

Setup of Fast Label included step 3 and 6 only. Default value is used for items in the other steps. You can
add Label Control by Fast Label and then modify it.

23.3.10 Addition of Toggle Button Control


Toggle Button Control is used to change the value of a Register, System or KAREL Variable (except
XYZWPR type) or I/O to the specified value following the ON (Pushed)/OFF (Popped) status of the button.
Use procedure 23-9 to add Toggle Button Control.

Procedure 23-9 Addition of Toggle Button Control


Step
1 Select Toggle Button in iPendant Control selection screen (Fig. 23.3.2).
2 Press of F4, NEXT leads you to data type setup screen. Please refer to section 23.3.4.
3 Press F4, NEXT. You will see a screen similar to the following.

Fig. 23.3.10 (a) Toggle button setup screen

Table 23.3.10 (a) Items in toggle button setup screen


Items Description
Type This specifies data type to process.
Logical: Data is transacted as boolean type. False value and True Value are not used.
Numerical: Data is transacted as numerical type. False Value and True Value are used.
False Value This is active when Type is Numerical. This specifies the value written when the button
status is changed to ON (TRUE).

- 170 -
B-83284EN-2/01 23. PANEL WIZARD

Items Description
True Value This is active when Type is Numerical. This specifies the value written when the button
status is changed to OFF (FALSE).
Other Phase This is active when Type is Numerical. This specifies the status (TRUE/FALSE) in case that
the value is equal to neither TrueValue nor FalseValue.
Caption This specifies the fixed String.
True Caption (optional) This specifies the fixed String when the value is TRUE. If not specified, Caption is used.

4 Press of F4, NEXT leads you to Toggle Button Image setup screen. Please refer to section 23.3.5.
5 Press F4, NEXT. You will see a screen similar to the following.

Fig. 23.3.10 (b) True/False color setup screen

Table 23.3.10 (b) Items in True/False color setup screen


Item Description
Background when TRUE This specifies the color displayed when the read value is equal to TrueValue or not equal to
FalseValue. How to setup is same as color setup screen. Please refer to section 23.3.6.
Red, Green, Blue Role is same as color setup screen. Please refer to section 23.3.6.
Transparent Role is same as color setup screen. Please refer to section 23.3.6.
Background when FALSE This specifies the color displayed when the read value is equal to FalseValue or not equal to
TrueValue. How to setup is same as color setup screen. Please refer to section 23.3.6.

6 Press of F4, NEXT leads you to color setup screen. Please refer to section 23.3.6.
7 Press of F4, NEXT leads you to size setup screen. Please refer to section 23.3.3. Caption is used as fixed
string. It is not used as format.
8 Press of F4, NEXT leads you to style setup screen. Please refer to section 23.3.6.
9 Press of F4, NEXT lead you to control insertion screen. Please refer to section 23.3.3.
10 Decide position to insert and press F4, NEXT. This is end of addition of Toggle Button Control.

Setup of Fast Switch includes setup of data type (step2), image (step 4) and control insertion (step 9) only.
Default value is used for items in the other steps. You can add Toggle Button Control by Fast Switch and
then modify it.

- 171 -
23. PANEL WIZARD B-83284EN-2/01

23.3.11 Addition of Toggle Lamp Control


Toggle Lamp Control is used to change the color of the control if the value of a Register, System or KAREL
Variable (except XYZWPR type) or I/O fulfills the specified condition with the specified value or not. Use
procedure 23-10 to add Toggle Lamp Control.

Procedure 23-10 Addition of Toggle Lampe Control


Step
1 Select Toggle Lamp in iPendant Control selection screen (Fig. 23.3.2).
2 Press of F4, NEXT leads you to data type setup screen. Please refer to section 23.3.4.
3 Press F4, NEXT. You will see a screen similar to the following.

Fig. 23.3.11 Toggle lamp setup screen

Table 23.3.11 (a) Items in toggle lamp setup screen


Item Description
Type This specifies data type to process.
Logical: Data is transacted as bool type.
Numerical: Data is transacted as numerical type. The setting of CmpOperator and the value
of CmpValue is applied.
CmpOperator This is active when Type is Numerical. This selects the condition expression evaluated as
TRUE.
EQ: Specify the equal case (=).
NE: Specify the not equal case (<>).
LT: Specify the less than case (<).
LE: Specify the less than or equal case (<=).
GT: Specify the greater than case (>).
GT: Specify the greater than or equal case (>=).
CmpValue This specifies the standard value for comparison. Result of comparison between read value
and this value decides status of lamp, TRUE or FALSE. It is reflected to display of lamp.

4 Press of F4, NEXT leads you to image setup screen. Please refer to section 23.3.4.
5 Press of F4, NEXT leads you to Fig. 23.3.10 (b): True/False color setup screen (Fig. 23.3.10 (b)). Please
refer to section 23.3.10.
6 Press of F4, NEXT leads you to color setup screen. Please refer to section 23.3.6.
7 Press of F4, NEXT leads you to size setup screen. Please refer to section 23.3.3. Caption is used as fixed
string. It is not used as format.
- 172 -
B-83284EN-2/01 23. PANEL WIZARD
8 Press of F4, NEXT leads you to style setup screen. Please refer to section 23.3.6.
9 Press of F4, NEXT lead you to control insertion screen. Please refer to section 23.3.3.
10 Decide position to insert and press F4, NEXT. This is end of addition of Toggle Lamp Control.

Setup of Fast Lamp includes setup of data type (step2), image (step4) and control insertion (step9) only.
Default value is used for items in the other steps. You can add Toggle Lamp Control by Fast Lamp and then
modify it.

Background color used by Toggle Lamp depends on its View type.

Table 23.3.11 (b) Background color of Toggle Button


View type Status Background color
Panel True Background when TRUE
False Background when FALSE
Circle, Fixed Circle True Circle part: Background when TRUE (If transparent is checked, black)
The other part: Background
False Circle part: Background when TRUE (If transparent is checked, black)
The other part: Background
Image Both true and Image uses background color if it uses transparent color.
false 1 Background when TRUE (False) if transparent is not checked
2 Background if transparent is not checked
3 Otherwise background color of web page

23.3.12 Modification of Panel


Use procedure 23-11 to modify created panel.

Procedure 23-11 Modification of panel


1 Start panel wizard by procedure 23-1 and select panel.
2 If selected panel already exists, you will see a screen similar to the following.

Fig. 23.3.12 (a) Selection of modification or creation

3 Select modify and press F4, NEXT. You will see a screen similar to the following.

- 173 -
23. PANEL WIZARD B-83284EN-2/01

Fig. 23.3.12 (b) Selection of operation screen

Table 23.3.12 Items in selection of operation screen


Item Description
Add Control You can add control to panel. Please refer to section for control to add.
Edit Control You can modify control already added to panel. Please refer to section 23.3.13.
Modify Page You can modify other property of panel. For example, title of panel, background color.
Please refer to section 23.3.16.

4 Select operation and press F4, NEXT.

For detail of each operation, please refer to section written in table above.

23.3.13 Modification of Control


Use procedure 23-12 to modify control that is already added to panel.

Procedure 23-12 Modification of control


1 Display selection of operation screen by procedure 23-11.
2 Select Edit Control.
3 Press F4, NEXT. You will see a screen similar to the following.

- 174 -
B-83284EN-2/01 23. PANEL WIZARD

Fig. 23.3.13 Edit control screen

Table 23.3.13 Items in Edit control screen


Item Description
Row, Column These specifies control to modify, cut, and copy.
Fkey If this is checked, control assigned to function key is selected.
The number next to Fkey This number specifies function key when Fkey is checked.
Modify Select this to modify control already added to panel.
Cut Select this to delete control.
Cut/Paste Select this to cut selected control and paste it elsewhere.
Copy/Paste Select this to copy selected control and paste it elsewhere.

4 Select Modify and press F4, NEXT.


5 Setup screen appropriate for the selected control is displayed. If you added the control by Fast label,
Fast switch or Fast lamp, setup screen for corresponding control is displayed. For example, setup screen
for Label control is displayed for control added by Fast label.
6 Setup control just same as addition of control. Control insertion screen at the last step is not displayed.

23.3.14 Delete of Control


Use procedure 23-13 to delete control.

Procedure 23-13 Delete of control


1 Display Edit control screen by procedure 23-12.
2 Select control to delete.
3 Select Cut and press F4, NEXT.
4 You will see a screen similar to the following.

- 175 -
23. PANEL WIZARD B-83284EN-2/01

Fig.23.3.14 Confirmation of delete of control

Press F4 to delete. Otherwise, press F3.

NOTE
F2 CANCEL cancels panel wizard. Press of F2 in this screen causes delete of
control.

23.3.15 Cut/Copy Paste of Control


You can move added control by cut and paste. You can copy added control by copy and paste. Use
procedure 23-14.

Procedure 23-14 Cut/Copy paste of control


1 Display Edit control screen by procedure 23-12.
2 Select control.
3 If you want to move the control, select Cut/Paste. If you want to copy it, select Copy/Paste. Press F4,
NEXT.
4 Next screen depends on control you selected.
4-1 If selected control is NOT assigned to function key, you will see a screen similar to the following.

- 176 -
B-83284EN-2/01 23. PANEL WIZARD

Fig. 23.3.15 (a) Control insertion screen

4-2 If selected control is assigned to function key, you will see a screen similar to the following. This
screen is to select function key to paste control.

Fig. 23.3.15 (b) Control insertion screen (function key)

5 Decide position to insert control and Press F4, NEXT.

23.3.16 Modification of Page


Use procedure 23-15 to modify property of page (panel). Background color and title for example.

Procedure 23-15 Modification of page


1 Display selection of operation screen by procedure 23-11.
2 Select Modify page.
3 Press F4, NEXT. You will see a screen similar to the following.

- 177 -
23. PANEL WIZARD B-83284EN-2/01

Fig. 23.3.16 Page edit screen

Table 23.3.16 Item in page edit screen


Item Description
BackColor Background color of page
Text Color Color of text. Title of color uses this.
Title This is title displayed at top of panel. If panel1, it defaulted to Panel 1.
Title Size Size of title. Range is from 1 to 5.
Rows Control is placed in invisible table. This item is the number of rows of the table. You cannot
decrease it.
Cols The number of columns of invisible table. You cannot decrease it.
APPLY This is not item to setup. Press of the button applies property edited and you can see rough
image in right pane.

4 Setup as required and Press F4, NEXT. This is the end of modification of page.

23.3.17 Re-creation of Panel


Use procedure 23-16 to re-create panel with disposing existing panel.

Procedure 23-16 Re-creation of panel


1 Display panel selection screen by procedure 23-1.
2 Select panel to re-create and press F4, NEXT.
3 Screen to select modification or creation is displayed.
4 Select New.

- 178 -
B-83284EN-2/01 23. PANEL WIZARD

Fig. 23.3.17 (a) Selection of modification or creation

5 Press F4, NEXT. You will see a screen similar to the following.

Fig. 23.3.17 (b) Confirmation of re-creation of panel

6 Press of F4 delete existing panel. Re-creation start from setup of the number of rows and columns.

23.4 RUN KAREL PROGRAM BY PANEL


You can create button to run KAREL program. Required steps are following.
(A) Creation of KAREL program that can be run by panel
(B) Addition and setup of Button Change Control

NOTE
You cannot run arbitrary KAREL program. There is caution of creation of KAREL
program for the program to be run by button change control.

- 179 -
23. PANEL WIZARD B-83284EN-2/01

23.4.1 Caution for Creation of KAREL Program


(A) Create static (program level) INTEGER variable, return_code. Set it to 204.
(B) Program must complete in a short time.
(C) If it takes long time to complete, run program by RUN_TASK built-in by another program that was
run by button change control.
(D) Specify %NOLOCKGROUP.

23.4.2 Creation of Run Button


Use procedure 23-17 to create button to run program.

Procedure 23-17 Creation of run button


1 Start addition of Button Change Control and display URL setup screen.
Please refer to section 23.3.6 for procedure to add Button Change control.

Fig. 23.4.2 (a) URL setup screen

2 Press lower side button and input URL in format of “/KAREL/program name”.
For example, /KAREL/TESTPROG to run KAREL program TESTPROG.

Fig. 23.4.2 (b) Setup to run TESTPROG

- 180 -
B-83284EN-2/01 23. PANEL WIZARD

23.5 USAGE

23.5.1 Display of Panel


MENU→BROWSER→[ TYPE ] displays panels created.

NOTE
Created panels are used in all languages. If you display the panel in more than
one language, create the panel in English. Japanese panel is not displayed
correctly in English.

If there are too many entries in [ TYPE ] menu of BROWSER to add panel to the menu, you will see a
screen similar to following at finishing addition of panel.

Fig. 23.5.1 (a) Notification of addition to favorite

In this case, panel is added to link in FAVORITE. Display panel by selecting link.

Fig. 23.5.1 (b) Panel1 added to favorite


- 181 -
23. PANEL WIZARD B-83284EN-2/01

23.5.2 Backup/Restore
Created panels can be saved and restored in file screen. It is categorized as “Application”.
Panel1…Panel 4 corresponds to PW_OP1.STM…PW_OP4.STM, respectively.

NOTE
PANEL1.STM,PANEL1.DT,……,PANEL4.STM, PANEL4.DT have nothing to do
with this function.

- If you use image file you prepared, use it in GIF or JPG format. Copy them to FR: and refer to it. FR:
*.GIF and FR: *.JPG are saved and restored in file screen. They are also in category of “Application”.

- Registration data to menu of MENU→BROWSER→[ TYPE ] is saved in SYSVARS.SV. If you want


to backup/restore the registration, SYSVARS.SV should be backed up and restored.

- If you do not want to restore SYSVARS.SV, you have to register panel to [ TYPE ] menu manually.
Use procedure below.
- Restore backup of panel. (PW_*.STM and required image files)
- Display Selection of operation screen (Fig. 23.3.12 (b)) by procedure 23-11.
- Press F5, FINISH. This means there is actually no change.
- These steps add panel to [ TYPE ] menu of BROWSER.

- 182 -
B-83284EN-2/01 24. ENHANCED MIRROR IMAGE

24 ENHANCED MIRROR IMAGE


The enhanced mirror image option (A05B-2600-R698) allows you to translate an entire teach pendant
program or portion of a teach pendant program to mirror-image the original programmed points. This
option can be used to teach symmetrical parts easily. The enhanced mirror image option provides additional
functionality so that existing frames such as user frames can be used directly with any specified XY, YZ, or
XZ plane. Also, additional orientation shifting is provided for different application requirements.

NOTE
For Paint Tool and paint robots, this is almost always accomplished using left-hand and
right-hand robots. Use of this option is not recommended.

Mirror imaging of a program can be accomplished either as:


• mirror image using existing frames such as World frame or user frames. No teaching required.
• mirror image using flexible mirror planes such as X-Y, Y-Z, or X-Z from existing frames for better
selection
• parallel mirror image with mirrored orientation
• parallel and rotational mirror image with mirrored orientation
• mirror image orientation shifting can be selected based on application requirements.

Refer to Table 24 for descriptions of the Mirror Image Shift screen items.

Table 24 ENHANCED MIRROR IMAGE screen items


ITEM DESCRIPTION
Original Program This item is the name of the program that you want to shift using mirror image.
To select a program, press F4, [CHOICE], select the name of program, and
press ENTER again.
Range This item indicates whether the whole program (F5, WHOLE) or a portion (F4,
PART) will be shifted using mirror image.
Start line This item is the first line in the program that will be shifted using mirror image.
(used only for “PART” range)
End line This item is the last line in the program that will be shifted using mirror image.
(used only for “PART” range)
New Program This item is the name of the program that results when you offset or shift the
Original Program. If you want the resulting offset or shifted program to insert
into the Original Program, make the New Program name the same as the
Original Program name.
Insert line This item indicates the location in an existing program where new shifted
position information will be inserted.
Position data This item is the current x, y, and z position information.
(used only for “TEACH” method)
Image Shift Method ● F5, TEACH is a method that requires the user to enter position data to define
the mirror plane.
● F4, FRAME is a method that allows the user to choose existing frames.
Orientation Shift ● F5, MIRROR is a mirror image shifting method that mirrors the orientation as
well as the positions.
● F4, FIXTURE is a mirror image shifting method that only mirrors the
approach vector of the orientation but leaves the other two vectors intact with
flexible tool orientation control.
Mirror Frame World, User Frame, or Jog Frame can be selected as the mirror frame.
(used only for “FRAME” method)
Frame No. When User frame or Jog frame is selected, this indicates which frame number
(used only for “FRAME” method) will be used.

- 183 -
24. ENHANCED MIRROR IMAGE B-83284EN-2/01

ITEM DESCRIPTION
Mirror Plane The XY, YZ, or XZ plane of the selected mirror frame can be used as mirror
(used only for “FRAME” method) plane.
Rotation This item, if set to ON, indicates that you want to rotate three position about an
(used only for “TEACH” method) axis. If set to OFF, you can shift a single source position to a single destination
position.
Source position This item is the original position that you will be shifting using mirror image. If
(used only for “TEACH” method) Rotation is set to ON, there will be three source positions.
Destination position This item is the destination position to which you will be shifting using mirror
(used only for “TEACH” method) image. If Rotation is set to ON, there will be three destination positions.

24.1 PARALLEL MIRROR IMAGE


A parallel mirror image mirrors the program about a mirror plane without an offset or a rotation. See Fig.
24.1 (a) and Fig. 24.1 (b).

Mirror plane

D-Equal Distance

Fig. 24.1 (a) Parallel mirror image with mirror plane in center of robot

- 184 -
B-83284EN-2/01 24. ENHANCED MIRROR IMAGE

Mirror plane

D-Equal Distance

Fig. 24.1 (b) Parallel mirror image with mirror plane offset from center of robot

CAUTION
To be sure the parallel mirror image works correctly, you must have an exact
TCP. If you do not, the resulting mirror image program will contain an offset
value. See Fig. 24.1 (c).

Mirror plane

D-Equal Distance

Fig. 24.1 (c) Parallel mirror image with offset

- 185 -
24. ENHANCED MIRROR IMAGE B-83284EN-2/01

Mirror Image Example


Fig. 24.1 (d) displays a mirror image of A, B, and C to A’, B’, and C’ when P1 and Q1 are taught positions.
Fig. 24.1 (d) also displays a mirror image with an offset when P1 and Q1 are taught but Q1 is taught at an
offset of 200mm. In this case, the result is A’’, B’’, and C’’.
Robot

Mirror Image
Without Offset

Offset

Mirror Image
With Offset

Fig. 24.1 (d) Positional mirror image

24.2 ROTATIONAL MIRROR IMAGE


A parallel mirror image mirrors the program about a mirror plane first, and then the mirrored program is
rotated about a center of rotation. Orientation of the part to be imaged is rotated about one or more of its
axes relative to the mirror plane. See Fig. 24.2 (a).

Source Destination
position Mirror position
Plane

Fig. 24.2 (a) Rational mirror image

In Fig. 24.2 (b) the positions, P1, P2 and P3 are mirrored about the mirror plane as Q1, Q2 and Q3. These
positions are then rotated 45° about Q1 and stored as Q1’, Q2’ and Q3’.

- 186 -
B-83284EN-2/01 24. ENHANCED MIRROR IMAGE

Robot

Note: All points are on the x-y plane.


Mirror plane

Fig. 24.2 (b) Rational mirror image

24.3 MIRROR IMAGE USING EXISTING FRAMES AND MIRROR


PLANES, WITH CONTROLLED ORIENTATION
The standard mirror image utility mirrors orientation as well as positions, as shown in Fig. 24.3 (a).

Mirror plane(X-Z)

Fig. 24.3 (a) Mirror image shift with orientation mirrored (mirror method)

The enhanced mirror image option also provides a simple way to use existing frames, such as World, User,
or Jog Frame, with defined mirror planes, such as X-Y, Y-Z, or X-Z. Also, to control the orientation as well

- 187 -
24. ENHANCED MIRROR IMAGE B-83284EN-2/01

as the positions in the mirrored program, the Orientation Mirror method can be selected as "Mirror" as
shown in Fig. 24.3 (a), or "Fixture", as shown in Fig. 24.3 (b).

Mirror plane(X-Z)

Fig. 24.3 (b) Enhanced mirror image with orientation controlled (fixture method)

24.4 MIRROR IMAGE OF EXTENDED AXES


Extended (Ext) axes determine how the mirror image function will translate the program when you are
using extended axes. Fig. 24.4 (a) displays a key for use with Fig. 24.4 (b) through Fig. 24.4 (d).

T.C.P

Robot Base Position Extended Axis

Fig. 24.4 (a) Mirror image key

Possible extended axes configurations are:

• Robot axes only - allows you to mirror the axes of the robot without mirroring any non-integrated
extended axes such as a positioning table. The shift is calculated using the change in the robot tool
center point (TCP). See Fig. 24.4 (b).

T.C.P

Original

T.C.P

Destination

Fig. 24.4 (b) Example of robot axes only mirror image

- 188 -
B-83284EN-2/01 24. ENHANCED MIRROR IMAGE

• Ext integrated - allows you to mirror the axes of the robot and any integrated axes. The amount of
mirror image for the robot and the extended axes is calculated using the change in the TCP. See Fig.
24.4 (c).

Original
New T.C.P

T.C.P

T.C.P

Destination

Robot Base

Fig. 24.4 (c) Example of extended axes integrated mirror image

• With ext axes - allows you to mirror positions for robot axes and any extended axes in your system.
The amount of mirror image for the robot is calculated by using the change in the TCP. The amount of
shift for the extended axes is calculated using the center of the difference between an original position
(P1) and a new position (Q1) as the point where the mirror image occurs. See Fig. 24.4 (d).

T.C.P
E1 of P1 E1 of Q1
Original

T.C.P

Destination

Fig. 24.4 (d) Example of with extended axes mirror image

Procedure 24-1 Using Enhanced Mirror Image Shift


Conditions
• The program you want to mirror has been created and contains recorded positions.
• All robot joint axes are at zero degrees.

Steps
1. Press MENU.
2. Select UTILITIES.
3. Press F1, [TYPE].
4. Select Mirror Image Shift. You will see the MIRROR IMAGE SHIFT screen.

- 189 -
24. ENHANCED MIRROR IMAGE B-83284EN-2/01

MIRROR IMAGE SHIFT


Program 1/9
Original Program :
1
2 Range: WHOLE
3 Start line: (not used) *****
4 End line: (not used) *****
5 New Program : [ ]
6 Insert line: *****
7 Image Shift Method: TEACH
8 Orientation Shift: MIRROR
9 EXT axes: Robot axes only

[ TYPE ] [CHOICE] >

5. Move the cursor to 1 under Original Program. If the program you want to mirror is not selected, press
F4, [CHOICE]. Select the program from the list and press ENTER.

NOTE
The last program selected using the SELECT menu will automatically be named as the
original program.

6. Move the cursor to Range. Use the function keys to select whether you want to mirror all or part of the
original program.
• To mirror the whole program, press F5, WHOLE. You will see a screen similar to the following.

MIRROR IMAGE SHIFT


Program 1/9
Original Program :
1
2 Range: WHOLE
3 Start line: (not used) *****
4 End line: (not used) *****
5 New Program : [ ]
6 Insert line: *****
7 Image Shift Method: TEACH
8 Orientation Shift: MIRROR
9 EXT axes: Robot axes only

[ TYPE ] [CHOICE] >

NOTE
EXT axes will be displayed only if you are using mirror image for extended axes.

• To shift part of the program, press F4, PART. You will see a screen similar to the following.

- 190 -
B-83284EN-2/01 24. ENHANCED MIRROR IMAGE
MIRROR IMAGE SHIFT
Program 1/9
Original Program :
1
2 Range: PART
3 Start line: (not used) 0
4 End line: (not used) 0
5 New Program : [ ]
6 Insert line: *****
7 Image Shift Method: TEACH
8 Orientation Shift: MIRROR
9 EXT axes: Robot axes only

[ TYPE ] [CHOICE] >

7. If you selected to mirror PART of a program, select the lines of the program that you want to mirror:
• Move the cursor to Start line and type the starting line number. Press ENTER.
• Move the cursor to End line and type the ending line number. Press ENTER.
8. Move the cursor to New Program and press ENTER. Use the appropriate function keys to type the name
of the new program and press ENTER. This is the program to which you will be mirroring the positions.

NOTE
You can mirror the positions of an entire program or portion of a program from within a
program or from one program to another. See Fig. 24.4 (e) and Fig. 24.4 (f).

Fig. 24.4 (e) Mirroring an entire program

- 191 -
24. ENHANCED MIRROR IMAGE B-83284EN-2/01

Fig. 24.4 (f) Mirroring a portion of a program

NOTE
The New Program can be the same as the original program, an already existing program,
or a program that does not exist.

• If you are inserting lines into the original program, type in the name of the program and the
corresponding line numbers.
• If you are inserting lines into an existing program, move the cursor to Insert line and type the line
number at which you want to insert the shifted information.

9. Move the cursor to Image Shift Method.


• To mirror the image using existing User, Jog, or World frames and well-defined mirror frames
such as Z-Y, Y-Z or X-Z, press F4, FRAME.
• To mirror the image by teaching points to define the mirror plane, press F5, TEACH. This
method also mirrors the orientation.
10. Move the cursor to Orientation Shift.
• To control the orientation shift in the mirrored program, press F4, FIXTURE.
• To mirror the orientation of the original program, press F5, MIRROR.
11. Press the down arrow key.
• If you selected TEACH for the Image Shift Method, you will see a Shift amount/Teach screen similar
to the following:

- 192 -
B-83284EN-2/01 24. ENHANCED MIRROR IMAGE
MIRROR IMAGE SHIFT
Shift amount/Teach 1/3
Position data
X :******** Y :******** Z :********

1 Rotation: OFF

2 Source position P1:

3 Destination position Q1:

[ TYPE ] EXECUTE ON OFF >

If you do not want to rotate the positions, continue to Step 12.


If you want to rotate the positions, continue to Step 13.

• If you selected FRAME for the Image Shift Method, you will see a Shift Frame Settings screen
similar to the following:

MIRROR IMAGE SHIFT


Shift Frame Settings 1/3

1 Mirror Frame: WORLD


2 Frame No.: (not used) *****
3 Mirror Plane: XY

[ TYPE ] EXECUTE [CHOICE]

Continue to Step 14.

12. If you do not want to rotate the positions,


a. Press F5, OFF. You will see a screen similar to the following.

MIRROR IMAGE SHIFT


Shift amount/Teach 1/3
Position data
X :******** Y :******** Z :********

1 Rotation: OFF

2 Source position P1:

3 Destination position Q1:

[ TYPE ] EXECUTE ON OFF >

b. Move the cursor to source position (see Fig. 24.1 (a) ).


c. Move the robot to the source position (P1) and either record or specify the position:
• To record a position, jog the robot to the position you want, press and hold in the SHIFT key and
press F5, RECORD.
• To specify a previously recorded position or position register, press F4, REFER. Type the
number of a previously defined position or position register, and press ENTER.
- 193 -
24. ENHANCED MIRROR IMAGE B-83284EN-2/01

Select reference position type.

P[ ] PR[ ]

• To clear a position setting, press NEXT, >, and then press F1, CLEAR. At the prompt "Clear all
data," press F4, YES, to confirm.

d. Move the cursor to Destination position. You will see a screen similar to the following.

MIRROR IMAGE SHIFT


Shift amount/Teach 3/3
Position data
X :******** Y :******** Z :********

1 Rotation: OFF

2 Source position P1: P[1]

3 Destination position Q1:

[ TYPE ] EXECUTE ON OFF >

• To record a position, jog the robot to the destination position (Q1). Press and hold in the SHIFT
key and press F5, RECORD.
• To specify a previously recorded position register, press F4, REFER. Type the number of the
position register and press ENTER.

Input position register number:

[ TYPE ] EXECUTE REFER RECORD >

• To clear a position setting, press NEXT, >, and then press F1, CLEAR. At the prompt "Clear all
data," press F4, YES, to confirm.

e. Record or specify the destination position.

13. If you want to rotate the positions,


a. Press F4, ON. You will see a screen similar to the following.

MIRROR IMAGE SHIFT


Shift amount/Teach 1/7
Position data
X :******** Y :******** Z :********

1 Rotation: ON
2 Source position P1:
3 P2:
4 P3:
5 Destination position Q1:
6 Q2:
7 Q3:

[ TYPE ] EXECUTE ON OFF >


- 194 -
B-83284EN-2/01 24. ENHANCED MIRROR IMAGE
b. Move the cursor to source position (see Fig. 24.1 (a)).

MIRROR IMAGE SHIFT


Shift amount/Teach 1/7
Position data
X :******** Y :******** Z :********

1 Rotation: ON
2 Source position P1:
3 P2:
4 P3:
5 Destination position Q1:
6 Q2:
7 Q3:

[ TYPE ] EXECUTE REFER RECORD >

c. Move the robot to the first source position (P1) and either record or specify the position:
• To record a position, jog the robot to the position you want, press and hold in the SHIFT key and
press F5, RECORD.
• To specify a previously recorded position or position register, press F4, REFER. Select the
position or position register.

Select reference position type.

P[ ] PR[ ]

• To clear a position setting, press NEXT, >, and then press F1, CLEAR. At the prompt "Clear all
data," press F4, YES, to confirm.

d. Record or specify all the source positions.


e. Move the cursor to Destination position. You will see a screen similar to the following.

MIRROR IMAGE SHIFT


Shift amount/Teach 1/7
Position data
X :******** Y :******** Z :********

1 Rotation: ON
2 Source position P1: P[1]
3 P2: P[2]
4 P3: P[3]
5 Destination position Q1:
6 Q2:
7 Q3:

[ TYPE ] EXECUTE REFER RECORD >

• To record a position, jog the robot to the destination position (Q1). Press and hold in the SHIFT
key and press F5, RECORD.
• To specify a previously recorded position register, press F4, REFER. Type the number of the
position register and press ENTER.

Input position register number:

[ TYPE ] EXECUTE REFER RECORD >


- 195 -
24. ENHANCED MIRROR IMAGE B-83284EN-2/01

• To clear a position setting, press NEXT, >, and then press F1, CLEAR. At the prompt "Clear all
data," press F4, YES, to confirm.

f. Record or specify all the destination positions.

NOTE
Pressing F2, EXECUTE, will cause the positions you have selected to be mirrored and
will not cause robot motion.

14. If you selected FRAME as the Image Shift Method, you will see a screen similar to the following:

MIRROR IMAGE SHIFT


Shift Frame Settings 1/3

1 Mirror Frame: WORLD


2 Frame No.: (not used) *****
3 Mirror Plane: XY

[ TYPE ] EXECUTE [CHOICE]

Move the cursor to Mirror Frame and press F4, [CHOICE]. Select the frame you want to use as the
mirror frame and press ENTER.

15. If you selected USER or JOG, move the cursor to Frame No. and type the number of the existing frame
you want to use.
16. Move the cursor to Mirror Plane and press F4, [CHOICE]. Select the plane you want to use and press
ENTER.
17. To mirror image the program, press F2, EXECUTE.

Execute transform?

YES NO

• To execute the mirror image shift, press F4, YES.


• If you do not want to execute the mirror image shift, press F5, NO.

18. Wait until software has finished processing the mirror image.

-PROCESSING-

If the turn number will be changed, you will see a message similar to the following.

Select P[1]:J6 angle.(deg -234)

deg -234 deg 486 *uninit* QUIT

The above example will be displayed when J6 turn number will be changed.
• If you do not want to change the turn number, press F1, deg –234.
• If you want to change the turn number, press F2, deg 486.
- 196 -
B-83284EN-2/01 24. ENHANCED MIRROR IMAGE

• If you want to make the position as un-initialized, press F3, *uninit*.


• If you want to interrupt mirror image, press F4, QUIT.

CAUTION
Do not attempt to move the robot to a position that was not mirrored correctly;
otherwise, you could injure personnel or damage equipment.

When the mirror image is complete, you must reteach each position that did not mirror correctly.

- 197 -
25. KAREL USE SUPPORT FUNCTION B-83284EN-2/01

25 KAREL USE SUPPORT FUNCTION


This chapter describes about KAREL Use Support Function, option J971.

25.1 OVERVIEW
This function supplies the interface for KAREL execution, abort, status output and so on. It enables
following operations.
z Executing or aborting KAREL programs.
z Auto running the KAREL programs at the time of power on.
z Periodically monitor the specified KAREL program and outputting the status.
z Set the configuration of custom menu setting.

25.2 KAREL CONFIG

25.2.1 Start the KAREL Config Screen


Select MENU – setup – KAREL Config.
Like following screen is displayed.
KAREL Config
No. Program MODE Status Comm 1/30
1 MANU ******** ********
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********

[ TYPE ] [ OPRT ] DETAIL [CHOICE] HELP >

25.2.2 Use KAREL Config Screen


Select F4, [CHOICE], then you can see the list of KAREL program to be registered to run.

KAREL Config
No. Program MODE Status Comm 1/30
AA
1 MANU ******** ********
ADVCSMPL
2 MANU ******** ********
C1
3 MANU ******** ********
C10
4 MANU ******** ********
C11
5 MANU ******** ********
C2
6 MANU ******** ********
C3
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********

[ TYPE ] [ OPRT ] DETAIL [CHOICE] HELP >

- 198 -
B-83284EN-2/01 25. KAREL USE SUPPORT FUNCTION
In this documentation, C1 is used as the sample to explain. Set the cursor onto the C1, and press ENTER
key.

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 MANU ******** c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********

[ TYPE ] [ OPRT ] DETAIL [CHOICE] HELP >

There are four status, running, paused, aborted and ********. ******** means that status is not other 3
ones.
Comm is the comment that is described in the KAREL source file as %COMMENT.

25.2.3 Run KAREL Program


Set the cursor onto C1 in Program row and press F2, [OPRT].

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 MANU ******** c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 OPRT MANU
1 ******** ********
11 1 RUN MANU ******** ********
2 ABORT

[ TYPE ] [ OPRT ] DETAIL [CHOICE] HELP >

Select 1. RUN. Then confirmation message is displayed.

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 MANU ******** c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********
Run C1, OK?

YES NO

- 199 -
25. KAREL USE SUPPORT FUNCTION B-83284EN-2/01

Program is run after selecting F4, YES.

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 MANU RUNNING c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********
C1 was run

[ TYPE ] [ OPRT ] DETAIL [CHOICE] HELP >

25.2.4 Abort the Program


Set the cursor onto C1 in Program row and press F2, [OPRT].

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 MANU RUNNING c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 OPRT MANU
1 ******** ********
11 1 RUN MANU ******** ********
2 ABORT

[ TYPE ] [ OPRT ] DETAIL [CHOICE] HELP >

Set the cursor onto 2. ABORT and press ENTER key.


Confirmation message is displayed.

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 MANU RUNNING c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********
Abort C1, OK?

YES NO

Select F4, YES, then KAREL program is aborted.

- 200 -
B-83284EN-2/01 25. KAREL USE SUPPORT FUNCTION
KAREL Config
No. Program MODE Status Comm 1/30
1 C1 MANU ABORTED c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********
C1 was aborted

[ TYPE ] [ OPRT ] DETAIL [CHOICE] HELP >

25.2.5 Start Mode Config


Set the cursor onto MODE row. F4 and F5 keys are turns to AUTO and MANUAL.

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 MANU ABORTED c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********

[ TYPE ] [ OPRT ] DETAIL AUTO MANUAL

Default is MANUAL. If you select AUTO, KAREL program is run after power on the controller.

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 AUTO ABORTED c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********
C1 is run after cycle power

[ TYPE ] [ OPRT ] DETAIL AUTO MANUAL

There is a limit that the number of running the KAREL simultaneously. It depends on the configuration of
the robot system. “PROG-014 Max task number exceed” will be posted when the number of running
KAREL is going to be over max number.

- 201 -
25. KAREL USE SUPPORT FUNCTION B-83284EN-2/01

25.2.6 Detail of KAREL Config


Press F3, DETAIL.

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 MANU ABORTED c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********

[ TYPE ] [ OPRT ] DETAIL [CHOICE] HELP >

Like following screen is displayed.

KAREL Config
1/6
Program:[ C1]
1 No. 1
2 Paused alarm DISABLE
3 Start Config Restart
4 Start DI DISAB DI[ 0] +
5 Abort DI DISAB DI[ 0] +
6 Status DISAB DO[ 0] DO[ 0]
Running ON ON
Paused ON OFF
Aborted OFF ON

[ TYPE ] PREV NEXT HELP >

If “2 Paused alarm” is enable, warning is posted when specified program, ex C1, is paused or aborted.
In the case of paused, “SYST 294 Paused (program name)” and “SYST 296 Specified KAREL was
paused” are posted.
In the case of aborted, “SYST 295 Aborted (program name)” and “SYST 297 Specified KAREL was
aborted” are posted.

“3 Start Config” set the mode of restart. “Restart” is once aborting the specified program and start from the
top of the program. “Resume” is not once aborted. Specified program is restarted from the paused point.

“4 Start DI ” sets the start operation. Detecting the rising edge (+) or falling edge (-) of specified DI starts
the specified program. When “Start DI” is set enable, DI port number and Up or Down can not be changed.
If you would like to set them, please set “Start DI” disable once. After setting them, please set it enable.
Then this configuration is enabled after cycle power.

“5 Abort DI” sets the abort operation. How to set is the same of “4 Start DI”.

“6 Status” is to monitor the specified program and output its status with two DOs. As the default, program is
monitored every 100msec. Its config is enabled after cycle power. Following is the sample of configuration.

- 202 -
B-83284EN-2/01 25. KAREL USE SUPPORT FUNCTION
KAREL Config
6/6
Program:[ C1]
1 No. 1
2 Paused alarm ENABLE
3 Start Config Restart
4 Start DI ENABL DI[ 1] +
5 Abort DI ENABL DI[ 2] +
6 Status ENABL DO[ 1] DO[ 2]
Running ON ON
Paused ON OFF
Aborted OFF ON

[ TYPE ] PREV NEXT ENABLE DISABLE >

On this sample, DO[1] and DO[2] are on while program C1 is running. DO[1] is on and DO[2] is off while
it is pausing.
DO[1] is off and DO[2] is on while aborting. If status is not each three status, DO[1] and DO[2] are both off.

To switch previous screen, press F2, PREV. In this case, screen is switched to No.30.
To switch next detail screen, press F3, NEXT. In this case, screen is switched to No.2.

25.2.7 Limitation and Caution of KAREL Config


z Status is monitored at a constant frequency. Thus status is not changed at a real time. For example,
program status is changed from running to paused, and aborted in one monitoring cycle, paused status
is not detected at next monitoring cycle. Therefore status is changed from running to aborted in this
case.
z Monitoring constant frequency can be changed. You can change it with system variable
$KRL_NUM.$UPDT_TIME. It is able to change in the range 8 to 5000 msec. If you set it out of its
range under 8 or above 5000, it is automatically set to 8 or 5000msec.
z In the case of above sample, after you set the detail of C1, return to KAREL Config screen with PREV
key and change the registered No.1 program from C1 to other program, such as C2, C1 does not start if
DI[1] is turned on. C2 is run instead. For prevention of miss operation, please do not change program
after set the detail.

25.2.8 Cycle Power


Both KAREL config and detail screen enable to cycle power.

KAREL Config KAREL Config


No. Program MODE Status Comm 1/30 1/6
1 C1 MANU ABORTED C1 Program:[ C1]
2 MANU ******** ******** 1 No. 1
3 MANU ******** ******** 2 Paused alarm DISABLE
4 MANU ******** ******** 3 Start Config Restart
5 MANU ******** ******** 4 Start DI DISAB DI[ 0] +
6 MANU ******** ******** 5 Abort DI DISAB DI[ 0] +
7 MANU ******** ******** 6 Status DISAB DO[ 0] DO[ 0]
8 MANU ******** ******** Running ON ON
9 MANU ******** ******** Paused ON OFF
10 MANU ******** ******** Aborted OFF ON
11 MANU ******** ********

CYC_PWR DELETE [CHOICE] CYC_PWR

F2, CYC_PWR is displayed when you press NEXT key. Set the TP to enable and press F2, CYC_PWR.
- 203 -
25. KAREL USE SUPPORT FUNCTION B-83284EN-2/01

KAREL Config
No. Program MODE Status Comm 1/30
1 C1 AUTO ABORTED c1
2 MANU ******** ********
3 MANU ******** ********
4 MANU ******** ********
5 MANU ******** ********
6 MANU ******** ********
7 MANU ******** ********
8 MANU ******** ********
9 MANU ******** ********
10 MANU ******** ********
11 MANU ******** ********
C1 is run after cycle power

[ TYPE ] [ OPRT ] DETAIL AUTO MANUAL

Selecting F4, YES do cycle power.

25.3 CUSTOM MENU

25.3.1 Starting Custom Menu


Select MENU – setup – Custom Menu.
Following is displayed.

Custom Menu
No. Menu Program Title 1/26
1 ********** ******** ************
2 ********** ******** ************
3 ********** ******** ************
4 ********** ******** ************
5 ********** ******** ************
6 ********** ******** ************
7 ********** ******** ************
8 ********** ******** ************
9 ********** ******** ************
10 ********** ******** ************
11 ********** ******** ************

[ TYPE ] DELETE [CHOICE] HELP

25.3.2 Set Custom Menu


Press F4, [CHOICE].

1 2 3 4
1 EDIT F1-1 1 UTILITIES1 1 I/O-1 1 STATUS-1
2 EDIT F1-2 2 UTILITIES2 2 I/O-2 2 STATUS-2
3 EDIT F2 3 TEST CYCLE 3 SETUP-1 3 STATUS-3
4 EDIT F3 4 MANUAL-1 4 SETUP-2 4 STATUS-4
5 EDIT F4 5 MANUAL-2 5 FILE 5 SYSTEM
6 FCTN-1 6 ALARM-1 6 DATA-1 6
7 FCTN-2 7 ALARM-2 7 DATA-2 7
8 --next page-- 8 --next page-- 8 --next page-- 8 --next page--

Select item that you would like to add. Select FCTN –1 as an example.

- 204 -
B-83284EN-2/01 25. KAREL USE SUPPORT FUNCTION
Custom Menu
No. Menu Program Title 1/26
1 FCTN-1 ******** ************
2 ********** ******** ************
3 ********** ******** ************
4 ********** ******** ************
5 ********** ******** ************
6 ********** ******** ************
7 ********** ******** ************
8 ********** ******** ************
9 ********** ******** ************
10 ********** ******** ************
11 ********** ******** ************

[ TYPE ] DELETE [CHOICE] HELP

Set the cursor onto program row and press F4, [CHOICE] key. As an example C1 is selected.

Custom Menu
No. Menu Program Title 1/26
AA1 FCTN-1 ******** ************
ADVCSMPL
2 ********** ******** ************
C13 ********** ******** ************
C10
4 ********** ******** ************
C11
5 ********** ******** ************
C26 ********** ******** ************
C37 ********** ******** ************
8 ********** ******** ************
9 ********** ******** ************
10 ********** ******** ************
11 ********** ******** ************

[ TYPE ] DELETE [CHOICE] HELP

Next, set the cursor onto title row and press ENTER key. C1 is input for instance.

Custom Menu
No. Menu Program Title 1/26
1 FCTN-1 C1 C1
2 ********** ******** ************
3 ********** ******** ************
4 ********** ******** ************
5 ********** ******** ************
6 ********** ******** ************
7 ********** ******** ************
8 ********** ******** ************
Alpha input 1
9 ********** ******** ************
Upper Case
10 ********** ******** ************
Lower Case
11 ********** ******** ************
Punctuation
Options

ABCDEF GHIJKL MNOPQR STUVWX YZ_@*

Select FCTN → 0 -- NEXT -- → 0 --NEXT --. Verify C1 is added to FCTN menu.

- 205 -
25. KAREL USE SUPPORT FUNCTION B-83284EN-2/01

Custom Menu
No. Menu Program Title 1/26
FUNCTION 3
1 FCTN-1 C1 C1
1 REFRESH PANE
2 ********** ******** ************
2 C1
3 ********** ******** ************
3
4 ********** ******** ************
4
5 ********** ******** ************
5
6 ********** ******** ************
6
7 ********** ******** ************
7 Diagnostic log
8 ********** ******** ************
8 Del Diag Log
9 ********** ******** ************
9
10 ********** ******** ************
0 -- NEXT --
11 ********** ******** ************

[ TYPE ] DELETE HELP

25.3.3 Delete Set


In the case of deleting set, press F2, DELETE. Confirmation message is displayed like following.

Custom Menu
No. Menu Program Title 1/26
1 FCTN-1 C1 C1
2 ********** ******** ************
3 ********** ******** ************
4 ********** ******** ************
5 ********** ******** ************
6 ********** ******** ************
7 ********** ******** ************
8 ********** ******** ************
9 ********** ******** ************
10 ********** ******** ************
11 ********** ******** ************
Delete program and title. OK?

YES NO

Select F4, YES.


Specified program and title are deleted.

Custom Menu
No. Menu Program Title 1/26
1 FCTN-1
2 ********** ******** ************
3 ********** ******** ************
4 ********** ******** ************
5 ********** ******** ************
6 ********** ******** ************
7 ********** ******** ************
8 ********** ******** ************
9 ********** ******** ************
10 ********** ******** ************
11 ********** ******** ************

[ TYPE ] DELETE HELP

Select FCTN → 0 -- NEXT -- → 0 -- NEXT --. Verify C1 is deleted from FCTN menu.

- 206 -
B-83284EN-2/01 25. KAREL USE SUPPORT FUNCTION
Custom Menu
No. Menu Program Title 1/26
1 FCTN-1 FUNCTION 3
2 ********** ******** 1 REFRESH PANE
************
3 ********** ******** 2
************
4 ********** ******** 3
************
5 ********** ******** 4
************
6 ********** ******** 5
************
7 ********** ******** 6
************
8 ********** ******** 7 Diagnostic log
************
9 ********** ******** 8 Del Diag Log
************
10 ********** ******** 9
************
11 ********** ******** 0 -- NEXT --
************

[ TYPE ] DELETE HELP

- 207 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

26 KAREL PROGRAM EXECUTION HISTORY


RECORD
26.1 OVERVIEW
KAREL program execution history record is a tool used to diagnose user application or controller system
software problems. This option generates logs that show details about events, including the sequence in
which they occur.

This option allows you to log certain events that occur during KAREL and TPP program execution. It also
allows you to generate ASCII files that contain all or part of the logged data. The ASCII files contain
detailed information about each event that is logged.

For example, you can log the following types of events.

• Start of execution of KAREL statements or TPP lines.


• Routine calls or returns.
• Internal system events for diagnosis of system software problems.

Refer to the following for additional information.

• For information about related hardware and software, refer to 26.2 HARDWARE AND SOFTWARE.
• For information about installing and setting up the debugging option, refer to 26.3 SETUP AND
OPERATIONS.
• For information about events, refer to chapter 26.4 LOGGING EVENTS.
• For examples of this option as related to KAREL programming, teach pendant programming, and the
ASCII file format, refer to 26.5 EXAMPLES.

26.2 HARDWARE AND SOFTWARE

26.2.1 Hardware and Software Requirements


There are certain hardware and software requirements that must be met before you can run the KAREL
Program Execution History Record.

NOTE
The hardware requirements in this section apply to all robot models.

26.2.2 Hardware
The KAREL Program Execution History Record requires the following hardware for all robot models:
• A FANUC Robot Controller
• A teach pendant
• 42,000 bytes of Temporary memory
• 18,000 bytes of CMOS
• 30000 bytes of FROM file system space

- 208 -
B-83284EN-2/01 26. KAREL PROGRAM EXECUTION HISTORY RECORD

26.2.3 Software
The KAREL Program Execution History Recode function is included in KAREL Use Support function
option (J971).

A series of teach pendant is used to control the logging of diagnostic information. The teach pendant screens
allow you to:

• Specify the kinds of events you want to log.


• Specify the tasks for which events are to be logged.
• Generate ASCII files containing the logged data.

26.2.4 Performance
The KAREL Program Execution History Record Option can affect the performance of your system.

• This option reduces execution speed of KAREL and teach pendant program logic by approximately 1
to 2 %.

NOTE
You can select “Disable all logging” on the Diagnostic Logging main menu to
eliminate this reduction.

Refer to Subsection 26.3.8 for more information about system performance.


• Actual logging of events adds about .08 ms per event logged.
• Motion execution is not affected.

26.3 SETUP AND OPERATIONS

26.3.1 Setting Up the KAREL Program Execution History Record


Before you can log information and write data log files, you must set up the KAREL Program Execution
History Record Option. This section contains information about how to set up the KAREL Program
Execution History Record Option, including a detailed procedure for each setup screen.

The following screen are used to control diagnostic logging:

• Clear event log deletes all data from the log.


• Dump Selections screen allows you to write log data to an ASCII file, Subsection 26.3.2.
• Task Selection screen allows you to add tasks for which events are logged, Subsection 26.3.3.
• Stop Logging a task Selection screen allows you to select tasks to be removed from the list of currently
logged tasks, Subsection 26.3.4.
• Currently Selected tasks screen lists tasks currently selected for logging, Subsection 26.3.5.
• Event Class Selections screen allows you to select or de-select classes or groups of related event types
for logging, Subsection26.3.6.
• Event Detail selections screen allows you to select or de-select individual event types for logging,
Subsection 26.3.7.
• Enable or Disable all logging allows you to start or stop all event logging, Subsection 26.3.8.

For example, you can log the following types of events.


• Start of execution of KAREL statements or TPP lines.
• Routine calls or returns.

- 209 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

• Internal system events for diagnosis of system software problems.

26.3.2 Dump Selections Screen


The Dump Selection Screen allows you to select a range of records to be dumped or logged. If the log is
currently empty, an error message is displayed. Use Procedure 26-1 to dump records to the debug log.

Procedure 26-1 Dumping Records to the Debug Log


Steps
1. Press MENU.
2. Select TEST CYCLE.
3. Press F1, [TYPE].
4. Select Debug Ctl, You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Main Menu 1/9

Clear event log


Dump log data
Add a task to log
Stop logging a task
List selected tasks
Set classes to log
Change events to log
Enable all logging
Disable all logging

[ TYPE ] HELP

5. Select Dump log data. The number of records in each range is displayed on the screen. See the
following screen for an example.

DIAGNOSTIC LOGGING
Dump Selection 1/7

All log data


(Will write 500 records)
Since last power-up
(Will write 1 records)
Before last power-up
(Will write 300 records)
Reset file number
Select RD: for files
Select UD1: for files
Select MC: for files

[ TYPE ] HELP

6. Select the range of data to be dumped or logged.


• To request a dump of all event information currently in the log , select All log data.
• To request a dump of all event information logged since the most recent power-up, select Since
last power-up.
• To request a dump of all event information between the last two power-ups, select Before last
power-up. This will log all events prior to the last power-down.
The information will be dumped to an ASCII file.

- 210 -
B-83284EN-2/01 26. KAREL PROGRAM EXECUTION HISTORY RECORD

NOTE
By default, successive log files are written to MC:PGDBG201.DT,
MC:PGDBG202.DT, and so forth.

7. To reset the file number in the file naming convention , select Reset file number. The starting point is
MC:PGDBG201.DT.
8. To change the default saving device to RAM disk , select RD: for files. All files will be automatically
saved to RAM disk.
9. To change the default saving device to USB memory, select UD1: for files. All files will automatically
be saved to USB memory.
10. To change the default saving device to memory card, select MC: for files. All files will automatically
be saved to a memory card.

26.3.3 Task Selection Screen


The Task Selection screen allows you to select additional tasks for which you want to log information. Use
Procedure 26-2 to select tasks to log.

Procedure 26-2 Selecting Tasks to Log


Steps
1. Press MENU.
2. Select TEST CYCLE.
3. Press F1, [TYPE].
4. Select Debug Ctl. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Main Menu 1/9

Clear event log


Dump log data
Add a task to log
Stop logging a task
List selected tasks
Set classes to log
Change events to log
Enable all logging
Disable all logging

[ TYPE ] HELP

5. Select Add a task to log. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Task selection 1/1

Use CHOICE to select task to add


or PREV if none

[ TYPE ] OK [CHOICE] HELP

- 211 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

6. To display a list of tasks from which you can select, press F4, [CHOICE]. You will see a screen similar
to the following.

NOTE
Selecting a program means that events will be logged for a task that has the selected
program as its MAIN program.

PRG0001
PRG0002
PRG0003
SUB0011
SUB0012
SUB0013
SUB0021

7. Use the arrow keys to select the task for which you want events logged.
8. Press ENTER when you have chosen a task. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Task selection 1/1

Use CHOICE to select task to add


or PREV if none

PRG0003

[ TYPE ] OK [CHOICE] HELP

9. To request logging for the displayed task, press F3, OK.

CAUTION
Do not exit this screen by pressing PREV, F1, [TYPE], or any other key before you
press F3, OK; otherwise, the selected task will not be logged.

26.3.4 Stop Logging Tasks Screen


The Stop Logging Tasks screen allows you to select tasks to be removed from the list of currently logged
tasks. Use Procedure 26-3 to stop logging tasks.

Procedure 26-3 Stop Logging Tasks


Steps
1. Press MENU.
2. Select TEST CYCLE.
3. Press F1, [TYPE].
4. Select Debug Ctl. You will see a screen similar to the following.

- 212 -
B-83284EN-2/01 26. KAREL PROGRAM EXECUTION HISTORY RECORD
DIAGNOSTIC LOGGING
Main Menu 1/9

Clear event log


Dump log data
Add a task to log
Stop logging a task
List selected tasks
Set classes to log
Change events to log
Enable all logging
Disable all logging

[ TYPE ] HELP

5. Select Stop logging a task. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Stop Logging 1/1

Use CHOICE to select task not to log


or PREV if none

[ TYPE ] OK [CHOICE] HELP

6. To display a list of tasks, from which you can select, press F4, [CHOICE]. You will see a screen
similar to the following.

NOTE
When you select a program, the events will no longer be logged for any tasks that
have the selected program as their MAIN program.

1
1 PRG0001
2 PRG0002
3 PRG0003
4 SUB0011
5 SUB0012
6 SUB0013
7 SUB0021
8 --next page--

7. Use the arrow keys to select the task for which you want to stop logging events.
8. Press ENTER when you have chosen a task. You will see a screen similar to the following.

- 213 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

DIAGNOSTIC LOGGING
Stop Logging 1/1

Use CHOICE to select task not to log


or PREV if none

PRG0003

[ TYPE ] OK [CHOICE] HELP

9. To stop logging for the task that is current displayed, press F3, OK.

CAUTION
Do not exit this screen by pressing PREV, F1, [TYPE] , or any other key before you
press F3, OK; otherwise, logging for the selected task will not stop.

26.3.5 List Selected Tasks Screen


The List Selected Tasks Screen allows you to displays the tasks that are currently selected and being logged.
Use Procedure 26-4 to list selected tasks.

Procedure26-4 List Selected Tasks


Steps
1. Press MENU.
2. Select TEST CYCLE.
3. Press F1, [TYPE].
4. Select Debug Ctl. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Main Menu 1/9

Clear event log


Dump log data
Add a task to log
Stop logging a task
List selected tasks
Set classes to log
Change events to log
Enable all logging
Disable all logging

[ TYPE ] HELP

5. Select List selected tasks. You will see a screen similar to the following.

- 214 -
B-83284EN-2/01 26. KAREL PROGRAM EXECUTION HISTORY RECORD
DIAGNOSTIC LOGGING
Currently Selected Tasks 1/1

PRG0003
PRG0001

[ TYPE ] HELP

This screen displays the tasks that are currently selected and being logged.
6. Press PREV on the teach pendant to return to the main menu.

26.3.6 Event Class Selection Screen


The Event Class Selection Screen allows you to determine which classes of events should be logged
( Procedure26-7). Each class of events enables or disables one or more detailed event types. The following
is a list of event classes and the associated event types. Refer to Subsection 26.4.1 for more detailed
information on the types of events that can be logged.

NOTE
An asterisk ( * ) indicates logging is for internal use only.

• Execute KAREL statement


• Execute KAREL statement
• Execute TPP line
• Execute TPP line
• Call/return
• KAREL or TPP routine called
• KAREL or TPP routine returned
• Motion *
• Motion started *
• Motion planned (teach pendant motion only) *
• Motion cancel issued *
• Motion stop issued *
• Resume move *
• Motion done received *
• Motion completed normally *
• MMR received *
• Condition Handler *
• Condition handler triggered *
• Condition handler enabled *
• Condition handler disabled *
• Interrupt rtn
• Before transferring to an ISR (Interrupt Sub-Routine)
• After transferring to an ISR (Interrupt Sub-Routine)
• Return from ISR (Interrupt Sub-Routine)
• Task start/end
• KAREL or TPP task starts execution
• KAREL or TPP task aborts
• Packet_rcd *
• Interpreter receives packet *
• Pcode exec *
• Starting execution of p-code *
• AMR activity *

- 215 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

• Normal AMR recvd by AMGR *


• Start AMR recvd by AMGR *
• Stop AMR recvd by AMGR *
• AMR sent to AX *
• AMR rcvd from AX *
Use Procedure 26-5 to enable or disable event classes for logging.

Procedure 26-5 Enable or Disable Event Classes for Logging


Steps
1. Press MENU.
2. Select TEST CYCLE.
3. Press F1, [TYPE].
4. Select Debug Ctl. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Main Menu 1/9

Clear event log


Dump log data
Add a task to log
Stop logging a task
List selected tasks
Set classes to log
Change events to log
Enable all logging
Disable all logging

[ TYPE ] HELP

5. Select Set classes to log. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Event Class Selections 1/10

NO Execute KAREL line


NO Execute TPP line
NO Call/return
NO Motion
NO Condition Handler
NO Interrupt rtn
NO Task start/end
NO Packet_rcd
NO Pcode exec
NO AMR activity

[ TYPE ] YES NO

6. Enable or disable classes of events to be logged.


• To turn on logging for a class of events , press F4, YES.
• To turn off logging for a class of events , press F5, NO.
The changes take effect immediately. The current status of whether an event is being logged is
displayed to the left of the event.

NOTE
If you specify an entire class of events, you will enable or disable logging for all event
types in that class.

- 216 -
B-83284EN-2/01 26. KAREL PROGRAM EXECUTION HISTORY RECORD

26.3.7 Event Detail Selection Screen


The Event Detail Selections Screen allows you to enable and disable logging of specific events. Use
Procedure 26-6 to enable or disable a specific event type for logging.

Procedure 26-6 Enable or Disable a Specific Event Type for Logging


Steps
1. Press MENU.
2. Select TEST CYCLE.
3. Press F1, [TYPE].
4. Select Debug Ctl. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Main Menu 1/9

Clear event log


Dump log data
Add a task to log
Stop logging a task
List selected tasks
Set classes to log
Change events to log
Enable all logging
Disable all logging

[ TYPE ] HELP

5. Select Change events to log. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Event Detail Selections 1/30

YES Controller power-up


YES Logging enabled
YES Logging disabled
NO Execute KAREL line
NO KAREL or TPP routine called
NO KAREL or TPP routine returned
YES Motion started
YES Motion planned
YES Motion cancel issued
YES Motion stop issued

[ TYPE ] YES NO

6. Enable or disable a specific event type to be logged.


• To turn on logging for an event type , press F4, YES.
• To turn off logging for an event type , press F5, NO.
The changes take effect immediately.

26.3.8 Enable or Disable All Event Logging


The Enable/Disable All Logging Screen allows you to start or stop the automatic logging of all selected
events. When the Program Diagnostic Option is installed, logging of selected events in selected tasks is
enabled. The Disable all logging menu selection turns off all logging. It also eliminates the overhead added
when logging is enabled. (Refer to Subsection 26.2.4 "Performance".) The Enable all logging menu
selection can be used to start logging again.
- 217 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

NOTE
Event and task selections are not changed by Disable all logging or Enable all
logging .

Use Procedure 26-7 to enable and disable all event logging.

Procedure 26-7 Enabling and Disabling All Event Logging


Steps
1. Press MENU.
2. Select TEST CYCLE.
3. Press F1, [TYPE].
4. Select Debug Ctl. You will see a screen similar to the following.

DIAGNOSTIC LOGGING
Main Menu 1/9

Clear event log


Dump log data
Add a task to log
Stop logging a task
List selected tasks
Set classes to log
Change events to log
Enable all logging
Disable all logging

[ TYPE ] HELP

5. Select either Enable or Disable all logging.

CAUTION
If you Enable or Disable all logging, you must perform a Cold Start for the change to
take effect.

• If you select Enable all logging, selected events in selected tasks will automatically start being
logged after you perform a Cold Start.
• If you select Disable all logging, selected events in selected tasks will automatically stop being
logged after you perform a Cold Start.
6. Perform a Cold Start.

26.4 LOGGING EVENTS


Events are conditions or situations that occur in a KAREL or teach pendant program while the program is
running. The KAREL Program Execution History Record Option allows you to record certain events, as
they take place, to help you in debugging programs. The logged events can be dumped to an ASCII file.

26.4.1 Setting Up Events


An event will be recorded in the log when all of the following are true:
• You have selected Enable all logging from the main menu.
• You have enabled event logging for the task.
• You have selected the event type to log either,
- 218 -
B-83284EN-2/01 26. KAREL PROGRAM EXECUTION HISTORY RECORD
• Specifically, using the Change Events To Log screen to select a specific event.
• Generally, using the Set Classes To Log screen to select a class of events.

Types of Events that can be Logged


With the Program Diagnostic Option, the following kinds of events can be recorded. Refer to Section 26.4.4
for additional information.
• Controller power-up
• Logging enabled
• Logging disabled
• Execute KAREL line
• KAREL or TPP routine called
• KAREL or TPP routine returned
• Motion started
• Motion planned
• Motion cancel issued
• Motion stop issued
• Resume move
• Motion done received
• Motion completed normally
• Condition handler triggered
• Condition handler enabled
• Condition handler disabled
• Before processing ISR
• After processing ISR
• Return from KAREL ISR
• KAREL or TPP task starts execution
• KAREL or TPP task aborts
• Interpreter receives packet
• Starting execution of p-code
• Start of execution of TPP line
• MMR received
• Normal AMR received by AMGR
• Start AMR received by AMGR
• Stop AMR received by AMGR
• AMR sent to AX
• AMR received from AX

26.4.2 Logging Events to an ASCII File


The last 500 events that are recorded can be written to an ASCII file. This can be done by requesting to write
the logged data to a file on the Dump Selections screen (refer to Subsection 26.3.2 ).

26.4.3 ASCII File General Event Information


Specific information about each event is logged to the ASCII file. Table26.4.4 describes the following
information for each event:
• Event name: Event description displayed in the Event Detail Selections screen.
• When recorded: Conditions under which the event is recorded. For example, the STRT_K_LINE
event is recorded when a KAREL statement is about to be executed.
• Information recorded: List of values logged with each event. The following are reported for all
events (except as noted).
• Event time (seconds) since power-up. This is always a multiple of 4 milliseconds (.004 second).
• Number of the task associated with the event.
• Name of the KAREL routine or TPP program, in which the statement was triggered.
- 219 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

• Program line number at which statement event was triggered.


• Enabled default: YES if logging of the specified event type is Enabled by default.
• Comments: Additional information, if appropriate.

26.4.4 ASCII File Specific Event Information


Table 26.4.4 contains each event and the corresponding information that is logged.

Table 26.4.4 Event logging information


Event Name When Recorded Information Recorded Enabled Default Comments

Controller At every controller Routine name, line number YES


power-up COLD start
Clock time: at which power-up
occurred, in "DD-MMM-YY
HH:MM" format.

Task number will always be 1.

Logging When logging is started. Standard information only YES


enabled Typically, this is when
the task starts.

Logging When logging is Standard information only YES


disabled stopped. Typically, this
is when the task ends.

Execute At beginning of Internal information NO


KAREL line execution of KAREL
Internal information
statement.
Internal information

KAREL or When a KAREL routine Standard information only NO Routine name is name of
TPP routine or KAREL or TPP called routine; line
called program is called. This number is line number
is either directly or as a from which call was
result of a condition made or interrupt
handler action. occurred.

KAREL or When a KAREL Standard information only NO The ROUTINE name is


TPP routine PROGRAM or the name of the returning
returned ROUTINE or TP program or routine; the
program returns to the line number is the line in
calling or interrupted the calling or interrupted
program program to which the
task is returning,
generally the same as
the line number shown
for in the CALL event.

Motion When a request to Group mask NO Intended for system level


started initiate a motion is analysis.
MMR address, in hexadecimal
issued.
MMR status, in hexadecimal;
normally FFFFFFFF

Motion For TPP motion Group mask NO Intended for system level
planned commands, this occurs analysis.
MMR address, in hexadecimal
typically before the
motion is actually MMR status, in hexadecimal;
started. normally FFFFFFFF

- 220 -
B-83284EN-2/01 26. KAREL PROGRAM EXECUTION HISTORY RECORD

Event Name When Recorded Information Recorded Enabled Default Comments

Motion When a CANCEL Group mask NO Intended for system level


cancel statement or condition analysis.
MMR address, in hexadecimal
issued handler action is
executed, a MOVE... MMR status, in hexadecimal;
UNTIL condition is normally FFFFFFFF
satisfied, a CANCEL
severity error is posted,
or a program is aborted
with a motion planned
or in progress.

Motion stop When a STOP Group mask NO Intended for system level
issued statement or condition analysis.
MMR address, in hexadecimal
handler action is
executed or a STOP MMR status, in hexadecimal;
severity error is posted. normally FFFFFFFF

Resume When a stopped motion Group mask NO Intended for system level
move is resumed; typically analysis.
MMR address, in hexadecimal
when a RESUME
statement or condition MMR status, in hexadecimal;
handler action is normally FFFFFFFF
executed; also when a
program is
CONTINUED following
a STOP error condition.

Motion done When the termination Group mask NO Intended for system level
received type is satisfied for a analysis.
MMR address, in hexadecimal
KAREL or TPP motion
statement is executed. MMR status, in hexadecimal;
For KAREL MOVE ... normally FFFFFFFF
NOWAIT statements,
this event if recorded
when the motion starts.

Motion When a motion is Group mask Intended for system level


completed completed or cancelled. analysis.
MMR address, in hexadecimal
normally This is generally after
MTN_DONE is MMR status, in hexadecimal;
recorded. normally FFFFFFFF

Condition When a global condition Intended for system level NO Intended for system level
handler handler triggers. analysis. analysis.
triggered

Condition When a global condition Condition handler number NO Intended for system level
handler handler is enabled by a analysis.
enabled ENABLE statement or
condition handler
action.

Condition When a global condition Condition handler number NO Intended for system level
handler handler is disabled by a analysis.
disabled DISABLE statement or
condition handler
action. It is not recorded
when a condition
handler triggers.

- 221 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

Event Name When Recorded Information Recorded Enabled Default Comments

Before Before calling a KAREL Internal information NO The routine name and
processing PROGRAM from a line number indicate the
Internal information
ISR condition handler. code that was executing
Internal information when the interrupt routine
request was received.

After When the interrupt Standard information only NO Routine name is the
processing routine is ready to run. name of the interrupt
ISR routine. Line number will
always be 1.

Return from When exiting from an Standard information only NO Routine name and line
KAREL ISR interrupt routine. number are the interrupt
routine name and the line
number from which it
returned.

KAREL or When a task selected Standard information only YES Routine name is the main
TPP task for logging starts program name; line
starts executing. number is always 1.
execution

KAREL or When a task ends. Standard information only YES Routine and line number
TPP task indicate the last
aborts statement executed by
the task. This might be
an END statement of a
KAREL program or the
last line of a TPP
program.

Interpreter When an interpreter Packet address NO Intended for system level


receives task receives a packet. analysis.
Packet status
packet
Request code (including
sub-system code)

Requestor id

ITR-level

Starting At start of execution of Number of words on the routine NO Intended for system level
execution of KAREL p-code stack analysis.
p-code instruction.
Number of words on the data
stack

P-code mnemonic

Start of At start of execution of a Number of words on the data NO


execution of line of a TPP program. stack
TPP line
Number of words on the routine
stack

Number of words available for


combined ROUTINE and DATA
stacks

MMR When an MMR is Group mask NO Intended for system level


received received back from the analysis.
MMR address, in hexadecimal

- 222 -
B-83284EN-2/01 26. KAREL PROGRAM EXECUTION HISTORY RECORD

Event Name When Recorded Information Recorded Enabled Default Comments

motion sub-system. MMR status, in hexadecimal;


This occurs when the normally FFFFFFFF
motion completes, is
cancelled, or is
stopped.

Normal AMR An AMR is received by Address of AMR NO Intended for system level
recvd by AMGR. analysis.
AMR number
AMGR
AMR AMGR_wk

AMR ax_phase

Start AMR A start AMR request is Address of AMR NO Intended for system level
recvd by processed by AMGR. analysis.
AMR number
AMGR
AMR AMGR_wk

AMR ax_phase

Stop AMR A stop AMR request is Address of AMR NO Intended for system level
recvd by processed by AMGR. analysis.
AMR number
AMGR
AMR AMGR_wk

AMR ax_phase

AMR sent to When an AMR is sent Address of AMR NO Intended for system level
AX from AMGR to an AX analysis.
AMR number
task.
AMR AMGR_wk

AMR ax_phase

AMR rcvd When an AMR is Address of AMR NO Intended for system level
from AX receivedack from an AX analysis.
AMR number
task.
AMR AMGR_wk

AMR ax_phase

26.5 EXAMPLES

26.5.1 Overview
This appendix contains example programs and the resulting log data, that show how the KAREL Program
Execution History Record Option operates.
• Subsection 26.5.2 contains a KAREL program (T) which calls a teach pendant program (TPP).
• Subsection 26.5.3 contains the teach pendant program that is called (TTT).
• Subsection 26.5.4 contains the log file that is generated after running the KAREL program (T) with the
following Event class selections:
• YES Execute KAREL line
• YES Execute TPP line
• YES Call/return
• YES Motion
• YES Condition Handler
• YES Interrupt rtn
• YES Task start/end
- 223 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

• NO Packet_rcd
• NO Pcode exec

26.5.2 KAREL Program Example


The KAREL program in Example 26.5.2 is the MAIN program from which the TPP program is called and
executed.

Example 26.5.2 KAREL program example (T.KL)


1 program t
2 var
3 i,j,k: INTEGER
4
5 routine ttt from ttt
6 routine tt
7 begin
8 i=i+1
9 end tt
10
11 begin
12
13 condition[1]:
14 when k >= 500 DO
15 k = 0
16 tt
17 enable condition[1]
18 endcondition
19 k = 0
20 i = 0
21 connect timer to k
22 enable condition[1]
23 wait for i=2
24 disconnect timer k
25 disable condition[1]
26 ttt
27 DELAY 1000
28 end t

26.5.3 Teach Pendant Program Example


The TPP program in Example 26.5.3 is called by the KAREL program (T) in Example 26.5.2.

Example 26.5.3 Teach pendant program example (TTT.TP)


1:J P[1] 100% FINE
2: WAIT 0.00(sec)
3: R[1]=0
4: LBL[1]
5: R[1]=R[1]+1
6: IF R[1] <= 3,JMP LBL[1]
7: WAIT .50(sec)

- 224 -
B-83284EN-2/01 26. KAREL PROGRAM EXECUTION HISTORY RECORD

26.5.4 ASCII File Example


With logging task T enable and event classes selected as indicated in Example 26.5.2 , if T is executed and
the log dumped, the file show in Example 26.5.4 is generated.

NOTE
For detailed information about the fields on the ASCII report shown in Example
26.5.4, refer to Subsection 26.4.4.

- 225 -
26. KAREL PROGRAM EXECUTION HISTORY RECORD B-83284EN-2/01

Example 26.5.4 ASCII File Example


Event Time TID Routine Line
POWER-UP .104 1 *** *** 09- 9-28 11:53
TASK-START 84.888 8 T 1
LOG-ENABLE 84.888 8 T 1
STRT-K-LINE 84.888 8 T 13 0 0 19200
STRT-K-LINE 84.904 8 T 19 0 0 19200
STRT-K-LINE 84.904 8 T 20 0 0 19200
STRT-K-LINE 84.904 8 T 21 0 0 19200
STRT-K-LINE 84.904 8 T 22 0 0 19200
STRT-K-LINE 84.904 8 T 23 0 0 19200
CH-ENABLE 84.904 8 T 23 1
CH-TRIGGER 85.912 8 T 23 1
PRE-ISR 85.912 8 T 23 0 128 35
CALL 85.912 8 TT 23
IN-ISR 85.912 8 TT 1
STRT-K-LINE 85.912 8 TT 8 0 68 1792
STRT-K-LINE 85.928 8 TT 9 0 68 1792
RETURN 85.928 8 TT 23
RTN-INT-RTN 85.928 8 TT 23
CH-TRIGGER 86.920 8 T 23 1
PRE-ISR 86.920 8 T 23 0 128 35
CALL 86.920 8 TT 23
IN-ISR 86.920 8 TT 1
STRT-K-LINE 86.920 8 TT 8 0 68 1792
STRT-K-LINE 86.936 8 TT 9 0 8 1792
RETURN 86.952 8 TT 23
RTN-INT-RTN 86.952 8 TT 23
STRT-K-LINE 86.952 8 T 24 0 0 19200
STRT-K-LINE 86.952 8 T 25 0 0 19200
STRT-K-LINE 86.952 8 T 26 0 0 19200
CH-DISABLE 86.952 8 T 26 1
CALL 86.952 8 TTT 26
STRT-T-LINE 86.952 8 TTT 1 0 16 15104
PLAN-MOVE 86.952 8 TTT 1 405E61A8 FFFFFFFF 6
START-MOVE 86.952 8 TTT 1 405E61A8 FFFFFFFF 6
MTN-DONE 88.088 8 TTT 1 405E61A8 FFFFFFFF 3
STRT-T-LINE 88.088 8 TTT 2 0 16 15104
MMR_RCVD 88.104 8 TTT 1 405E61A8 00000000 3
MTN_ENDED 88.104 8 TTT 1 405E61A8 00000000 3
STRT-T-LINE 88.104 8 TTT 3 0 16 15104
STRT-T-LINE 88.104 8 TTT 4 0 16 15104
STRT-T-LINE 88.104 8 TTT 5 0 16 15104
STRT-T-LINE 88.104 8 TTT 6 0 16 15104
STRT-T-LINE 88.136 8 TTT 4 0 16 15104
STRT-T-LINE 88.136 8 TTT 5 0 16 15104
STRT-T-LINE 88.136 8 TTT 6 0 16 15104
STRT-T-LINE 88.168 8 TTT 4 0 16 15104
STRT-T-LINE 88.168 8 TTT 5 0 16 15104
STRT-T-LINE 88.168 8 TTT 6 0 16 15104
STRT-T-LINE 88.200 8 TTT 4 0 16 15104
STRT-T-LINE 88.200 8 TTT 5 0 16 15104
STRT-T-LINE 88.200 8 TTT 6 0 16 15104
STRT-T-LINE 88.200 8 TTT 7 0 16 15104
RETURN 89.208 8 TTT 26
STRT-K-LINE 89.208 8 T 27 0 0 19200
STRT-K-LINE 91.224 8 T 28 0 0 19200
TASK-END 91.240 8 T 28
LOG-DISABLE 91.240 8 T 28

- 226 -
B-83284EN-2/01 27. TORQUE LIMIT FUNCTION

27 TORQUE LIMIT FUNCTION


27.1 INTRODUCTION
Using a TP instruction, Torque Limit function can limit the maximum motor torque as desired. And Torque
limit multi-axis setup function can set up torque limit for multi axes respectively. In order to use these
functions, Torque Limit function option (A05B-2600-J611) is required.

You can realize followings by Torque Limit function.


This manual describes Torque Limit function using a Servo Hand which has a servo driven gripper.
Servo motor

Gripper is opened/closed by the servo motor.

Fig.27.1 (a) Example of servo hand

(1) Easy to teach the gripper position


Servo Hand can control the Open/Close position of gripper, but it is necessary to teach gripper position
according to the work piece length (size). Then it is necessary to teach position for each work piece
type, and it is not easy to operate and maintain the Servo Hand.

It is necessary to teach
the gripper positions
according to the size of
work piece.

Fig.27.1 (b) Teaching by legacy style

This function can stop the gripper movement when the external force (load) of the servo motor exceed
the specified motor torque. Therefore if you teach a closed gripper position and use Torque Limit for
this motion instruction, the gripper will stop automatically at the position fit to the work length.

Fig.27.1 (c) Teaching by torque limit function

Merit1: Easy to teach


One teaching point (where gripper is closed) can be used for all work pieces.

(2) Gripping force is adjustable.


By TORQ_LIMIT instruction, it is possible to change the maximum motor torque to arbitrary value.
Therefore, it is possible to adjust the gripping force to the arbitrary value.

Merit2: Gripping force is adjustable.

- 227 -
27. TORQUE LIMIT FUNCTION B-83284EN-2/01

It is possible to adjust the gripping force to the arbitrary value because the maximum motor torque can
be limited as desired.

27.2 TORQUE LIMIT FUNCTION FEATURE


Torque Limit function can limit the maximum torque of servo motor which is controlled by a robot
controller. You can set Torque Limit value in % of the maximum motor torque. Depending on the
combination of a motor and an amplifier, the maximum current of the amplifier may be limited to guard the
motor. But, in that case, the torque corresponding to the maximum current in the specification of the
amplifier is the reference value. For example, in case that the maximum current of the amplifier is limited to
20Ap though the maximum current in the specification is 40Ap, if you want to limit the torque to the torque
corresponding to 10Ap, specify 25% to the torque limit because 10Ap is 25% of 40Ap.

In case that the maximum current exceeds the limit for motor guard by the torque limit instruction, the
maximum current is limited automatically so that the maximum current does not exceed the limit for motor
guard. In above example, even if the value greater that 50% is specified to the torque limit, the maximum
current is clamped to 50% which is correspond to 20Ap.

Syntax ... TORQ_LIMIT t% (t: 0.0 to 100.0)

Using following system variables, you can select the axes to be limited the motor torque. (By default, J7
axis in Group 1 is enabled.)

-Group number
$TORQUE_LMT.$GROUP[i] Select the group number including the servo motor using Torque Limit.
i : Group number
-Axis number
$TORQUE_LMT.$GAi[j] Select the group number and axis number of the servo motor using
Torque Limit. i : Group number, j : Axis number

For example, if J1 axis in Group 2 uses Torque Limit, set TRUE to $G2[1], and set others FALSE.
$TORQUE_LMT.$GROUP[2] = TRUE
$TORQUE_LMT.$GA2[1] = TRUE
$TORQUE_LMT.$GA2[2] = FALSE
:
$TORQUE_LMT.$GA2[9] = FALSE
You can set multiple axes to TRUE.

In the case of the dual drive, set TRUE to both the master axis and slave axis.

CAUTION
Usually GA1[1] - [6] are robot axes. So, please do NOT set these variables to
TRUE.

CAUTION
Check the intended axes of Torque Limit function in all axes in all groups that exist
in the your robot controller.

It is necessary for you to decide Torque Limit value.


It is necessary to decide Torque Limit value by gripping actual work piece.
After a TORQ_LIMIT instruction is executed, the maximum motor torque will not be changed until another
TORQ_LIMIT instruction will be executed.

- 228 -
B-83284EN-2/01 27. TORQUE LIMIT FUNCTION

1: J P[1] 100% FINE


2: TORQ_LIMIT 20.0% Change Torque Limit to 20%
3: J P[2] 100% FINE
This program part limits max
4: L P[3] 500mm/sec CNT100 motor torque to 20%.
:
6: TORQ_LIMIT 100.0% Change Torque Limit to 100%
100%

Fig.27.2 Example program of torque limit function

After decreasing maximum motor torque by TORQ_LIMIT instruction, the gripper axis may not reach the
destination point.

It is necessary to set following system variables to large value in advance.


$PARAM_GROUP[group].$STOPTOL[axis]
$PARAM_GROUP[group].$STOPERLIM[axis]
$PARAM_GROUP[group].$MOVER_OFFST[axis]

Setting the upper limit of Torque Limit


The upper limit of Torque Limit can be specified by the following system variables.
$TORQUE_LMT.$MAX_TRQ_LMT = Upper limit (0.1 - 100.0)
The lower limit is fixed to 0.1.

27.3 TORQUE LIMIT MULTI-AXIS SETUP FUNCTION

27.3.1 Torque Limit Multi-Axis Setup Function


Please set system variable $karel_enb to TRUE in order to select karel at "Call" instruction.
You can set torque limit to multi-axis using "CALL" from TP program.
Following explains how to use from TP program.

CALL TPTRQLIM(group number, axis number, torque limit value(%))

Fig.27.3.1 (a) How to call “Torque limit multi-axis setup function”

- group number : Set the group number including the servo motor using Torque Limit.
- axis number : Set the axis number of the servo motor using Torque Limit.
- torque limit value : Set Torque Limit value in % of the maximum motor torque.
(You can set 0.1% to 100.0%. You can also use integer.)

CAUTION
Do not set robot axis to axis number.

Following is an example TP problem.(This example TP program set 70% torque limit to axis 7 of group 1.)

CALL TPTRQLIM(1, 7, 70)

Fig.27.3.1 (b) Example program of Torque limit multi-axis setup function

In the case of the dual drive, set TRUE to both the master axis and slave axis.

- 229 -
27. TORQUE LIMIT FUNCTION B-83284EN-2/01

27.4 LIMITATIONS
• This function limits the maximum motor torque of the specified servo motor, but this function does
NOT guarantee the motor torque while rotating the servo motor.
• Because this function is designed for FANUC servo motor, if you want to use this function to non
FANUC servo motor, please consult to FANUC CORPORATION.

27.5 CAUTION
• It is possible to use Torque Limit for robot axes, but please do NOT enable this function for any robot
axes which may be fallen down by the gravity. (Torque Limit multi-axis setup function is not applied
to the motor of the robot axes.)
• When an axis is stopped by Torque Limit, the external force is equal to the limited motor torque, and
the distance between current position and destination position is considered as position error. (Please
see the highlighted part in the figure below.) If you change Torque Limit to 100%, the axis moves to
the destination with 100% of motor torque, therefore you may break Servo Hand or a work piece. If
you want to change Torque Limit to 100% (or increase motor torque), you have to move the axis where
above problem will not occur before changing Torque Limit.

TORQ_LIMIT = 100%
Destin
P[10] ation

P[11]
TORQ_LIMIT < 100% Position error

External force prevents the axis from External


reaching to the destination position. Then force
the distance to the destination is position
error.
If you change torque limit to 100%, the axis
moves to destination position. Therefore
you may break Servo Hand or a work piece.

Fig.27.5 Caution for torque limit function

- 230 -
B-83284EN-2/01 28. TCP SPEED OUTPUT

28 TCP SPEED OUTPUT


28.1 OVERVIEW
The TCP speed output function outputs the predicted speed of tool center point (TCP) via analog output
signals, group output signals, or registers. A software option, TCP speed output function, is required to use
this function. The TCP predicted speed is converted on the output condition that is defined by the following
setup items:
• Min. value
• Max. value
• Min. speed (mm/sec)
• Max. speed (mm/sec)

The following figure shows the relationship between TCP predicted speed and output.
Output

Max. value

Min. value

Min. speed Max. speed TCP predicted speed

The Min value is output when TCP predicted speed is the specified Min speed or below. The Max value is
output when TCP predicted speed is the specified Max speed or above. The following figure shows the
relationship between TCP predicted speed and output when you set the Max value to a value of less than
Min value.
Output

Min. value

Max. value

Min. speed Max. speed TCP predicted speed

28.2 LIMITATIONS
There are limitations on use of the TCP speed output function.
• This function is not available on DispenseTool or Dispense-enabled SpotTool+.
• This function is not available with tracking functions e.g. Line Tracking.
• TCP predicted speed is output only while the robot is moving by program execution.
• TCP predicted speed reflects only group 1 motion.
• TCP predicted speed does not reflect the extended axis motion except the integrated axis one.
• Accuracy of TCP predicted speed may lower when the motor speed limit alarms are posted.
• Accuracy of TCP predicted speed may lower while the frame is being switched.

- 231 -
28. TCP SPEED OUTPUT B-83284EN-2/01

• Accuracy of TCP predicted speed may lower while the motion is being switched between the normal
and the remote TCP motion.
• Accuracy of the TCP predicted speed may lower while one of the following instructions is being
executed:
WAIT instruction
Joint motion instruction
Motion instruction with Approach/Retract (Linear Distance) instruction
Motion instruction with Process Speed instruction
Motion instruction with Max Speed instruction
Motion control statement in KAREL program.
• Up to 10 output conditions can be defined.
• Only one prediction time can be specified. Different prediction times cannot be specified among output
conditions.

28.3 SETTING UP TCP SPEED OUTPUT


To use the TCP speed output function, you must set up the output condition using the procedure 28-1.

Procedure 28-1 Setting up TCP speed output conditions


Step
1. Press MENU.
2. Select I/O.
3. Press F1, [TYPE].
4. Select TCP Speed. You will see a screen similar to the following.

TCP speed output


List 1/10
Enable Target Min (Val/Spd) Max
1 OFF AO [ 0] 0/ 0 0/ 0
2 OFF AO [ 0] 0/ 0 0/ 0
3 OFF AO [ 0] 0/ 0 0/ 0
4 OFF AO [ 0] 0/ 0 0/ 0
5 OFF AO [ 0] 0/ 0 0/ 0
6 OFF AO [ 0] 0/ 0 0/ 0
7 OFF AO [ 0] 0/ 0 0/ 0
8 OFF AO [ 0] 0/ 0 0/ 0
9 OFF AO [ 0] 0/ 0 0/ 0
10 OFF AO [ 0] 0/ 0 0/ 0

[ TYPE ] SETUP DETAIL ON OFF

5. Press F2, SETUP. You will see a screen similar to the following.

TCP speed output


Setup 1/1
1 Prediction time (msec) : 0

[ TYPE ] LIST

6. Set the value for Prediction time.


7. Press F2, LIST. You will see a screen similar to the following.

- 232 -
B-83284EN-2/01 28. TCP SPEED OUTPUT
TCP speed output
List 1/10
Enable Target Min (Val/Spd) Max
1 OFF AO [ 0] 0/ 0 0/ 0
2 OFF AO [ 0] 0/ 0 0/ 0
3 OFF AO [ 0] 0/ 0 0/ 0
4 OFF AO [ 0] 0/ 0 0/ 0
5 OFF AO [ 0] 0/ 0 0/ 0
6 OFF AO [ 0] 0/ 0 0/ 0
7 OFF AO [ 0] 0/ 0 0/ 0
8 OFF AO [ 0] 0/ 0 0/ 0
9 OFF AO [ 0] 0/ 0 0/ 0
10 OFF AO [ 0] 0/ 0 0/ 0

[ TYPE ] SETUP DETAIL ON OFF

NOTE
Each line in this screen indicates the status of one output condition.

8. Move the cursor to an output condition that you want to set up, and press F3, DETAIL. You will see a
screen similar to the following.

TCP speed output


TCP_SPD[1] 1/6
1 Enable: OFF
2 Target: AO [ 0]
3 Min. value: 0.000
4 Max. value: 0.000
5 Min. speed (mm/sec): 0.000
6 Max. speed (mm/sec): 0.000

[ TYPE ] LIST ON OFF

9. Move the cursor to Target and select the output target.


10. Move the cursor to each item and set the value.
11. To start the output, set Enable to ON.

NOTE
You can also set Enable and Target by using an instruction. Refer to Procedure
28-2 for more information.

12. Press F3, LIST. You will see a screen similar to the following.

- 233 -
28. TCP SPEED OUTPUT B-83284EN-2/01

TCP speed output


List 1/10
Enable Target Min (Val/Spd) Max
1 ON AO [ 0] 100/ 10 4095/2000
2 OFF AO [ 0] 0/ 0 0/ 0
3 OFF AO [ 0] 0/ 0 0/ 0
4 OFF AO [ 0] 0/ 0 0/ 0
5 OFF AO [ 0] 0/ 0 0/ 0
6 OFF AO [ 0] 0/ 0 0/ 0
7 OFF AO [ 0] 0/ 0 0/ 0
8 OFF AO [ 0] 0/ 0 0/ 0
9 OFF AO [ 0] 0/ 0 0/ 0
10 OFF AO [ 0] 0/ 0 0/ 0

[ TYPE ] SETUP DETAIL ON OFF

NOTE
You can set Enable for each output condition on this screen.

28.4 TCP SPEED OUTPUT INSTRUCTION


You can set the Enable and Target of TCP speed output function by using an instruction.
The following instruction is used to start the output.

Target type[number]=(TCP_SPD[output condition number])

The following instruction is used to terminate the output.

Target type[number]=constant value

Procedure 28-2 directs how to insert the TCP speed output instruction for a register type target.

Procedure 28-2 Inserting TCP speed output instruction


Step
1. Open the program edit screen.
2. Press NEXT.
3. Press F1, [INST]. The following menus are displayed.

Instruction 1 Instruction 2 Instruction 3


1 Registers 1 Skip 1 Tool_Offset
2 I/O 2 Payload 2 LOCK PREG
3 IF/SELECT 3 Offset/Frames 3 MONITOR/MON. END
4 WAIT 4 Multiple control 4 String
5 JMP/LBL 5 Program control 5 DIAGNOSE
6 CALL 6 MACRO 6
7 Miscellaneous 7 FOR/ENDFOR 7
8 --next page-- 8 --next page-- 8 --next page--

4. Select Registers. The following menu is displayed.

- 234 -
B-83284EN-2/01 28. TCP SPEED OUTPUT
REGISTER statement 1
1 ...=...
2 ...=...+...
3 ...=...-...
4 ...=...*...
5 ...=.../...
6 ...=...DIV...
7 ...=...MOD...
8 ...=(...)

5. Select …=(...). The following menus are displayed.

Mixed Logic 1 Mixed Logic 2


1 DO[ ] 1 PR[i,j]
2 R[ ] 2 UO[ ]
3 F[ ] 3 RO[ ]
4 GO[ ] 4 TIMER[ ]
5 SO[ ] 5
6 AO[ ] 6
7 Parameter name 7
8 --next page-- 8 --next page--

6. Select R[ ].
1/2
1: R[...]=(...)
[End]

DIRECT INDIRECT [CHOICE] [LIST]

7. Set the register number for the output. The following menus are displayed.

Mixed Logic 1 Mixed Logic 2 Mixed Logic 3 Mixed Logic 4


1 ( 1 Constant 1 Parameter name 1 RI[ ]
2 DI[ ] 2 GI[ ] 2 AR[ ] 2 RO[ ]
3 DO[ ] 3 GO[ ] 3 TIMER[ ] 3 TCP_SPD[ ]
4 R[ ] 4 SI[ ] 4 TIMER_OVERFLOW 4
5 F[ ] 5 SO[ ] 5 PR[ ] 5
6 On 6 AI[ ] 6 UI[ ] 6
7 Off 7 AO[ ] 7 UO[ ] 7
8 --next page-- 8 --next page-- 8 --next page-- 8 --next page--

8. Select TCP_SPD[…].

1/2
1: R[1]=(TCP_SPD[...])
[End]

<INSERT> DIRECT INDIRECT [CHOICE]

9. Set the output condition number.

1/2
1: R[1]=(TCP_SPD[1])
[End]

<INSERT>

- 235 -
29. TP DRAM/FILE STORAGE FUNCTION B-83284EN-2/01

29 TP DRAM/FILE STORAGE FUNCTION


TP DRAM/FILE Storage function enhances the capacity of program space by providing for storages
outside of CMOS. In 1 motion group system, this function extends the available program space from 15,000
points now to 100,000 points. However, the maximum points will be fewer than 100,000 points depending
on system configuration. “R709 TP DRAM/FILE Storage” option is necessary to use this function.

29.1 STORAGES
There are 4 kinds of storages, SHADOW, SHADOW ONDEMAND, FILE, and the existing storage CMOS.
The “temporary” storage states mean the transition state when a program is moved between memories for
edit or load of a program. The following tables are for the storages and its description.

Table 29.1(a) Storages


Storage Description
CMOS Stored into CMOS (non-volatile memory) in the same way as normal
controller.
SHADOW Program is in FROM (non-volatile memory).
Loaded into DRAM (volatile memory) on startup.
SHADOW ONDEMAND Program is in FROM.
Loaded into DRAM when accessed.
FILE Program is in a TP file in the directory specified in “File Path” in Program
Configuration screen.
Loaded into DRAM when accessed.

Table 29.1(b) Temporary storage status


“temporary” storage state Description
SHAD (DRAM) ONDE SHADOW ONDEMAND program is loaded into DRAM.
FILE (DRAM) FILE program is loaded into DRAM.
SHAD (CMOS) SHADOW program moved to CMOS for editing.
SHAD (CMOS) ONDE SHADOW ONDEMAND program moved to CMOS for editing.
FILE (CMOS) FILE program moved to CMOS for editing.

29.1.1 CMOS Programs


CMOS programs use CMOS (non-volatile memory) as the storage memory.
The programs in other storage are moved to CMOS at editing program temporarily.
The largest program size is dependent on CMOS size.

29.1.2 SHADOW Programs


SHADOW programs use FROM and DRAM as storage memory. As the size of DRAM is larger than that of
CMOS, more programs than before will be available by using SHADOW. The capacity for programs that
can be used for SHADOW is dependent on the rest capacity of FROM and DRAM.
A program stored in SHADOW is loaded from FROM into DRAM on start up. A program will be
executable by loaded into DRAM.
The start up time will be long if there are too many SHADOW programs.
When SHADOW program is edited, it is moved to CMOS and to be “temporary” storage state SHAD
(CMOS).

- 236 -
B-83284EN-2/01 29. TP DRAM/FILE STORAGE FUNCTION

29.1.3 SHADOW ONDEMAND Programs


SHADOW ONDEMAND programs use FROM and DRAM as storage memory. SHADOW ONDEMAND
is different form SHADOW in that SHADOW ONDEMAND is loaded when a program is accessed for edit
or execution of the program. So a SHADOW ONDEMAND program has no effect to start up time.
The capacity of programs that can be used for SHADOW ONDEMAND is also dependent on the rest
capacity of FROM and DRAM as with SHADOW.
When a SHADOW ONDEMAND program is loaded, its storage is moved to “temporary” storage state,
SHAD(DRAM) ONDE. There is a slight time lag in the first access, but after that there is no time lag
because SHAD(DRAM) ONDE, once loaded into DRAM, remains in DRAM until the power is off.
When a SHADOW ONDEMAND program is edited, its storage is moved to CMOS and to be “temporary”
storage state SHAD (CMOS) ONDE.

29.1.4 FILE Programs


FILE programs use storage devices such as memory card as storage memory. In FILE storage, much more
programs than in SHADOW can be available by using external storage devices that have large capacity. A
FILE program is loaded into DRAM when first accessed as with SHADOW ONDEMAND.
The path to external storage device is specified in “File Path” in Program Configuration screen.
When a FILE program is loaded, its storage is moved into “temporary” storage state, FILE (DRAM).
The time lag in the first access is longer than that of SHADOW ONDEMAND programs, but after that there
is no time lag as with SHADOW ONDEMAND because FILE (DRAM) remains in DRAM until the power
is off.
When a FILE program is edited, its storage is moved to “temporary” storage state, FILE (CMOS).

29.2 STORAGE CONFIGURATION


Procedure 29-1 Confirm storage device
Step
1. Press SELECT key. Such screen as follows is displayed. “Not Loaded” in the comment means that a
SHADOW ONDEMAD or FILE program is not loaded into DRAM.

Select
700000 bytes free 8/16
No. Program name Comment
7 TEST01 [Not Loaded ]
8 TEST02 [ ]
9 TEST03 [ ]
10 TEST04 [ ]
11 TEST05 [ ]
12 TEST06 [Not Loaded ]
13 TEST07 [ ]
14 TEST08 [ ]
15 TEST09 [ ]
16 TEST10 [ ]

[ TYPE ] CREATE DELETE MONITOR [ATTR ] >

2. Press F5, [ATTR], and select “Storage”. Such screen as follows is displayed.

- 237 -
29. TP DRAM/FILE STORAGE FUNCTION B-83284EN-2/01

Select
700000 bytes free 8/16
No. Program name Storage
7 TEST01 [SHADOW ONDEMAND ]
8 TEST02 [SHADOW(DRAM) ONDE ]
9 TEST03 [SHADOW ]
10 TEST04 [SHADOW(CMOS) ATTR] 1
11 TEST05 [SHADOW 1 Comment ]
12 TEST06 [FILE ]
2 Protection
13 TEST07 [FILE(DRAM) ]
3 Last Modified
14 TEST08 [SHADOW 4 Size ]
15 TEST09 [SHADOW 5 Copy Source
]
16 TEST10 [SHADOW 6 Storage ]
7 Name Only

[ TYPE ] CREATE DELETE MONITOR [ATTR ] >

Procedure 29-2 Display Program Configuration screen


Step
1. Press SELECT key.
2. Press F1, [TYPE], and select “Config…”.
3. Such screen as follows is displayed.

Program Configuration
1/8
Storage Total Loaded Used Memory
CMOS 8 8 44k 700k
SHADOW 8 8 28k 28k
SHAD ONDE 20 1 12k 240k
FILE 30 1 12k
File Path:
MC:\
2 Move From:[CMOS ] TO:[SHADOW ]
3 Default Storage: [SHADOW ]
4 Force defaults: [OFF ]
5 Backup FILE programs: [OFF ]
6 Remaining memory limit: [ 4096k]

Limit of -1 means use minimum limit


7 Memory limit SHADOW: [ -1k]
8 Memory limit FILE: [ -1k]

END MOVE REFRESH

The table below describes the each item in Program Configuration screen.

Table 29.2 Program configuration screen


Item Description
Storage For the 4 storages, the number of programs and memory usage are displayed.
Total : The number of programs that exist in the storage.
Loaded: The number of programs that are actually loaded in the storage.
Used : The memory usage for loaded programs.
Memory: For CMOS, the capacity for programs is displayed.
For others, the total size of the programs that exist in the storage.
File Path Specify the device where FILE programs are stored.
Move From To To and from locations for moving programs between storage types.
Default Storage Set the storage for the new programs.
Force defaults If valid, loaded into the storage specified in the “Default Storage”.
If invalid, loaded into the storage specified in the program file.
Backup FILE programs Exclude or include FILE program types in backup.

- 238 -
B-83284EN-2/01 29. TP DRAM/FILE STORAGE FUNCTION

Item Description
Remaining memory limit If remaining DRAM goes lower than the value set in “Remaining memory limit” in
some operations such as creating a new program, an alarm occurs.
You can set the value from 1024 to 10000.The default value is 4096. Usually,
please do not change this value.
Memory limit SHADOW This item decides the total memory size of SHADOW and SHADOW ONDEMAND
programs that can be loaded into DRAM. If the total memory size goes over the
setting value, an alarm occurs.
You can set the value from –1 to 10000. The default value is –1. So there is no
limitation on SHADOW. Usually, please do not change this value.
Memory limit FILE This item decides the total memory size of FILE programs that can be loaded into
DRAM. If the total memory size goes over the setting value, an alarm occurs.
You can set the value from –1 to 10000. The default value is –1. So there is no
limitation on FILE. Usually, please do not change this value.
END Finish Program Configuration screen and go back to Select screen.
MOVE Move programs at a time according to the storage types set in “Move From To”.
REFRESH Update FILE program list according to TP files in the directory specified in “File
Path”. After this operation, there are updated FILE programs displayed in Select
screen.

NOTE
The usage of TEMP is different from that displayed in Program Configuration
screen. When you load a program into DRAM, it uses three times as much TEMP
as the value of the memory displayed in Program Configuration screen.

NOTE
These settings are reflected soon after changed.

Procedure 29-3 Move Storage


Step
• You can move all programs in the same storage to other storage at a time by using “MOVE” in
Program Configuration screen.
1. In the item “Move From To”, select the original storage in “From”, and select the new storage in “To”.
2. Press F2, MOVE.
3. Press F4, YES.
4. Such screen as follows is displayed and moving the storage finished.

Program Configuration
1/8
Storage Total Loaded Used Memory
CMOS 8 8 44k 700k
SHADOW 8 8 28k 28k
SHAD ONDE 20 1 12k 240k
FILE 30 1 12k
File Path:
MC:\
2 Move From:[CMOS ] TO:[SHADOW ]
3 Default Storage: [SHADOW ]
4 Force defaults: [OFF ]
5 Backup FILE programs: [OFF ]
Move 2 programs

END MOVE REFRESH

- 239 -
29. TP DRAM/FILE STORAGE FUNCTION B-83284EN-2/01

NOTE
Please confirm that there is enough memory space available in the new storage. If
not, an alarm occurs and stops moving. Then, programs that are already moved
do not go back the original storage. When you move large number of programs,
please make backup in advance.

• You can also change the storage of a program individually.


1. Press SELECT key and press NEXT key.
2. Press F2, DETAIL and such screen as follows is displayed.
3. Move the cursor on Storage and press ENTER, and select the storage.

Program name:
1 TEST1
2 Sub Type: [None ]
3 Comment: [ ]
4 Group Mask: [1,*,*,*,*,*,*,* ]
5 Write protect: [OFF ]
6 Storage: [SHADOW ]
7 Ignore pause: [OFF ]
8 Stack size: [ 300 ]

END PREV NEXT [CHOICE]

NOTE
Sometimes, the storage goes back to original storage soon after you change the
storage. In such case, please confirm if the program is in edit, there is enough
memory space in the new storage, or “File Path” is specified if FILE.

Procedure 29-4 Update FILE program list


Step
• You can update the FILE program list. This operation is used to display the deleted FILE programs
again or to use programs in other external storage devices.
1. Input the path of the device where FILE programs are stored, and press ENTER.
2. Press F3, REFRESH.
3. Such screen as follows is displayed, and FILE program list is updated.

Program Configuration
1/8
Storage Total Loaded Used Memory
CMOS 8 8 44k 700k
SHADOW 8 8 28k 28k
SHAD ONDE 20 1 12k 240k
FILE 30 0 0k
File Path:
MC:\
2 Move From:[CMOS ] TO:[SHADOW ]
3 Default Storage: [SHADOW ]
4 Force defaults: [OFF ]
5 Backup FILE programs: [OFF ]
File program list refreshed

END MOVE REFRESH

Updated FILE programs are listed in Select screen.

- 240 -
B-83284EN-2/01 29. TP DRAM/FILE STORAGE FUNCTION
Select Select
700000 bytes free 700000 bytes free 8/16
No. Program name REFRESH No. Program name
Storage Storage
7 TEST01 [SHADOW 7 TEST01 [SHADOW ]
8 TEST02 [SHADOW 8 TEST02 [SHADOW ]
9 TEST03 [FILE ]
10 TEST04 [FILE ]
11 TEST05 [FILE ]
12 TEST06 [FILE ]
13 TEST07 [FILE ]
14 TEST08 [FILE ]
15 TEST09 [FILE ]
16 TEST10 [FILE ]
FILE programs are added on the list

[ TYPE ] CREATE DELETE MONITO [ TYPE ] CREATE DELETE MONITOR [ATTR ] >

29.3 SAVE / LOAD PROGRAMS

29.3.1 Save / Load TP Files


When a program is saved as TP file, information for storage is also preserved in it. So, when a TP file is
loaded, the program is stored in the saved storage according to the information.
When “Force defaults” is “ON” in Program Configuration screen, the program is stored in the storage
specified in “Default Storage”.
When the existing TP file that has no information for storage is loaded, the program is stored in the storage
specified in “Default Storage”.

29.3.2 Copy Programs


When a program is copied, the storage of copied program is the same as that of original program.
However, when “Force defaults” is “ON” in Program Configuration screen, copied program is stored in the
storage specified in “Default Storage”.

29.3.3 Save / Load LS Files


When a program is saved in ASCII format, a LS file is created. Then, new item “STORAGE” is added in the
LS file. The storage of the program is printed in this item. When this LS file is loaded, the program is stored
in the storage specified in the “STORAGE” item.
When a existing LS file that does not have the item “STORAGE” is loaded, the program is stored in the
storage specified in “Default Storage”.

NOTE
”R507 ASCII UPLOAD” option is necessary to load LS files.

NOTE
”R709 TP DRAM/FILE Storage” option is necessary to load LS files that include
“STORAGE” item. To load LS files into the controller without this option, you need
to delete “STORAGE” item in advance.

29.3.4 Make Backup of Programs


In File screen, you can make backup of SHADOW and SHADOW ONDEMAND programs as well as
CMOS programs.

- 241 -
29. TP DRAM/FILE STORAGE FUNCTION B-83284EN-2/01

However, when you make backup of FILE programs, you need to set “Backup FILE programs” “ON” in
Program Configuration screen.

29.4 LOADING PROCESS IN PROGRAM EXECUTION


The programs that are not loaded on startup such as SHADOW ONDEMAND and FILE programs have
time lag until they are loaded, because they are loaded on the start of edit or execution.
For example, SHADOW program TEST01 execute FILE programs TEST02~TEST05 by using CALL
instruction.

TEST01
1/5
1: CALL TEST02
2: CALL TEST03
3: CALL TEST04
4: CALL TEST05
[End]

POINT TOUCHUP >

When TEST01 is executed, all the programs (TEST02~TEST05) that are called from TEST001 are loaded
into DRAM.
If the size of a FILE program is large, it takes time to load it. So there is a time lag.
If these FILE programs are loaded in advance, TEST01 will start immediately.

Select Select
700000 bytes free 700000 bytes free 7/16
No. Program name Execute TEST01No.
Storage Program name Storage
7 TEST01 [SHADOW 7 TEST01 [SHADOW ]
8 TEST02 [FILE 8 TEST02 [FILE(DRAM) ]
9 TEST03 [FILE 9 TEST03 [FILE(DRAM) ]
10 TEST04 [FILE 10 TEST04 [FILE(DRAM) ]
11 TEST05 [FILE 11 TEST05 [FILE(DRAM) ]
12 TEST06 [FILE 12 TEST06 [FILE ]
13 TEST07 [FILE 13 TEST07 [FILE ]
14 TEST08 [FILE 14 TEST08 [FILE
TEST02 ~ TEST05 ]
15 TEST09 [FILE 15 TEST09 [FILE ]
are loaded at a time
16 TEST10 [FILE 16 TEST10 [FILE ]

[ TYPE ] CREATE DELETE MONITO [ TYPE ] CREATE DELETE MONITOR [ATTR ] >

29.5 PROGRAM EXCHANGE FUNCTION WITHOUT ENOUGH


MEMORY SPACE
An error usually occurs when you load SHADOW ONDEMAND or FILE programs without enough
memory space in DRAM. This function replaces old programs with newly loaded program in the same
storage automatically.
Until there is enough memory space in DRAM for the newly loaded program, old programs are deleted
from DRAM in order automatically.
Old programs are deleted, but they still exist in the original storage. So they can be loaded again.
The following figure indicates the behavior of loading a new SHADOW ONDEMAND program, TEST07
when there is not enough memory space in DRAM. When TEST07 is selected, TEST03 moves back to
SHADOW ONDEMAND and TEST07 can move into the ”temporary” storage state SHAD(DRAM)
ONDE.
So, there is a time lag when you load TEST03 again.
- 242 -
B-83284EN-2/01 29. TP DRAM/FILE STORAGE FUNCTION
You can use this function by setting the value of system variable $TPDRAM_CFG.$MANAGE_MEM to
“1”. By default this value is “0” and this function is invalid.

Select Select
700000 bytes free 700000 bytes free 13/16
No. Program
Selectname
TEST07 Storage No. TEST07
Programisname
loaded, Storage
and TEST03
7 TEST01 [SHADOW 7 returns
TEST01to SHADOW[SHADOW
ONDEMAND ]
8 TEST02 [SHADOW 8 TEST02 [SHADOW ]
9 TEST03 [SHAD(DRAM 9 TEST03 [SHADOW ONDEMAND ]
10 TEST04 [SHAD(DRAM 10 TEST04 [SHAD(DRAM) ONDEM ]
11 TEST05 [SHAD(DRAM 11 TEST05 [SHAD(DRAM) ONDEM ]
12 TEST06 [SHAD(DRAM 12 TEST06 [SHAD(DRAM) ONDEM ]
13 TEST07 [SHADOW OND 13 TEST07 [SHAD(DRAM) ONDEM ]
14 TEST08 [FILE 14 TEST08 [SHADOW ]
15 TEST09 [FILE 15 TEST09 [SHADOW ]
16 TEST10 [FILE 16 TEST10 [SHADOW ]

[ TYPE ] CREATE DELETE MONITO [ TYPE ] CREATE DELETE MONITOR [ATTR ] >

29.6 PRECAUTION

29.6.1 Cause and Remedy for Alarm Occurrence


Cause and remedy for alarms that occur when you use this function are listed.

TPIF-036 Not enough memory


Cause:
1. Performed such operations as creating a new program, edit, or copy a program without enough
memory space in DRAM and CMOS.
2. Performed such operations as creating, editing, or copying a SHADOW or SHADOW ONDEMAND
program in the following situation.
“Memory limit SHADOW” is valid and the memory usage exceeds the limit.
There is not enough memory space in CMOS.
3. Performed such operations as creating, editing, or copying a FILE program in the following situation.
“Memory limit FILE” is valid and the memory usage exceeds the limit.
There is not enough memory space in CMOS.

Remedy:
1. Delete unnecessary programs using CMOS and DRAM, and make enough memory space in CMOS
and DRAM.
2. Set larger value in “Memory limit SHADOW” or set the limit invalid. Delete unnecessary programs
using CMOS and make enough memory space in CMOS.
3. Set larger value in “Memory limit FILE” or set the limit invalid. Delete unnecessary programs using
CMOS and make enough memory space in CMOS.

MEMO-126 No more available TPP memory


Cause:
1. Performed such operations as editing, copying a program or creating a new CMOS program without
enough memory space in CMOS.
Remedy:
1. Delete unnecessary programs using CMOS and make enough memory space in CMOS.

- 243 -
29. TP DRAM/FILE STORAGE FUNCTION B-83284EN-2/01

MEMO-178 No more available DRAM (SHADOW/FILE)


Cause:
1. Performed such operations as creating a new program, edit, or copy a program without enough
memory space in DRAM.
Remedy:
1. Delete unnecessary programs using DRAM and make enough memory space in DRAM.

29.6.2 Effect of Alarm Occurrence


When you create or copy programs without enough memory space in DRAM or CMOS, an alarm occurs.
Then, there are some cases that programs are created in unexpected storage.

Effect 1:
When “Default Storage” is SHADOW, the storage of newly created program will be SHADOW. But when
you create a new program without enough memory space in DRAM, the storage of the program will be
CMOS automatically, and you cannot select other storages.
Remedy 1:
Delete unnecessary programs using DRAM until there is enough memory space in DRAM. After that,
create a program again or change the storage individually.

Effect 2:
When “Default Storage” is SHADOW and “Force Default” is ON, the storage of the program loaded in File
screen will be SHADOW. But when you load a program in File screen without enough memory space in
DRAM, the storage of the program will be CMOS automatically.
Remedy 2:
Delete unnecessary programs using DRAM until there is enough memory space in DRAM. After that, load
the program again or change the storage individually.

Effect 3:
When a SHADOW program is copied without enough memory space in DRAM, SHAD(CMOS) program is
created .
When in SHAD(CMOS), the program is not executable.
Remedy 3:
Delete unnecessary programs using DRAM until there is enough memory space in DRAM. The program
can move from SHAD(CMOS) to SHADOW when there is enough memory space and then it will be
executable.

- 244 -
B-83284EN-2/01 30. CYCLE TIME TRACKING

30 CYCLE TIME TRACKING


30.1 OVERVIEW
Cycle Time Tracking function records and displays the cycle time of programs. Cycle times are recorded
based on individual cycles and hourly averages. Multiple cycles can be observed to view trends and analyze
data. The cycle time data is displayed graphically and raw cycle data in text format can also be displayed.
By default, the cycle time is tracked from the start of a teach pendant program until the program ends.
This is optional function.

30.1.1 Cycle Time Categories


Cycle Time is recorded based on multiple categories. The following table describes each category.

Table 30.1.1 Cycle time categories


Category Description
MOTION The amount of motion time in the cycle.
PROCESS The amount of process time including welding time.
APPL The amount of application-specific time executed such as ARC instruction.
WAIT The amount of time spent waiting for I/O or a data event.
Condition specified WAIT instruction is recorded.
DELAY Time specified WAIT instruction is recorded.
KAREL The amount of time spent executing KAREL logic.
LOGIC The amount of time spent executing instructions except categories above (ex: Label, I/O).
HOMIO The amount of time spent executing HOME_IO program.
HOME_IO is automatically executed when the robot reaches the home position set in Reference
Position screen and the program ran by SOP, UOP, or PROD_START ends. To execute
HOME_IO, Reference position should be set correctly. If you do not use HOME_IO, home position
setting is not necessary.
IDLE The time, until the next cycle starts after the robot reaches home position and the program ends, is
recorded.
FAULT The amount of time spent during a program is paused by alarms or some other causes.
TOTAL The total cycle time of categories above except HOMIO, IDLE and FAULT.

NOTE
The cycle time PROCESS, APPL, HOMIO, and IDLE is recorded only when the
program is run by SOP cycle start, UOP_START, or PROD_START.

30.1.2 Cycle Time Screen Items


The following table describes the items displayed in STATUS Cycle Time screen.

Table 30.1.2 Items in cycle time screen


Item Description
Program The name of currently tracked program.
Mode This item indicates whether the cycle is tracked per cycle or per hour. one, ten, or one hundred
cycles can be displayed. It can also display one, ten, one hundred hours.
Date The date of the currently highlighted cycle or hour recorded.
Time The time of the currently highlighted cycle was executed.
Range This indicates the total number of cycles as n/m where m is the total number of cycles or hours,
(Total) and n is the currently displayed cycle or hour.

- 245 -
30. CYCLE TIME TRACKING B-83284EN-2/01

Item Description
Samples This item indicates the number of hourly samples used in the currently displayed average of hours.
[PROG] This function key allows you to change the name of program for which cycle time information is
displayed.
[ZOOM] This function key allows you to change the displayed cycle time information. You can select to
display one hour, ten hours, one hundred hours, one cycle, ten cycles, or one hundred cycles.
[CATGRY] This function key allows you to choose which set of cycle time information is displayed. You can
choose Total which displays the total of all of the categories and the cycle time for each individual
category. Or, you can choose an individual category to be displayed. When an individual category
is displayed, depending on the currently selected mode, the category name will be displayed on
the top of right corner, and cycle time information for that category will be only displayed.
You can choose to display the following categories: TOTAL, MOTION, PROCESS, APPL, WAIT,
DELAY, KAREL, LOGIC, HOMIO, IDLE, FAULT.
[PAGE] This function key allows you to display cycle time data in a variety of formats. To display cycle time
data on the teach pendant, Cycle Graphics should be displayed. Other formats include Cycle Text,
and Average Text. Line Text is only available in line-by-line mode. If you select Cycle Text or
Average Text, the .DG files will be displayed. CYCLES.DG displays the cycle data, and
CYCAVE.DG displays the hourly data. These files can be displayed using the Web Server on the
teach pendant.
[UPDATE] This function key is used for the 4 operations in the following. Each detail is described in 30.3.3.
Load Cycle Data: Load the cycle time data.
Clear Cycle Data: Clear the cycle time data.
Clear Line Data: Clear the line data in line-by-line mode.
Collect Line Data: Get the line data in line-by-line mode.
RECORD This function key records the specific cycle time of a program. “RECORD” is displayed only in
cycle mode when an individual category is selected. Detail is described in 30.3.5.

30.2 DISPLAY MODES OF CYCLE TIME


Cycle time data can be displayed in three modes by cycles, by hours, or line-by-line.

30.2.1 Cycle Mode


In cycle mode, cycle time is displayed by cycle. You can display cycle time data by one cycle, ten cycles, or
one hundred cycles at a time. The following figure displays the total cycle time for the current cycle in one
cycle mode. It also displays the total cycle time broken down by category. Each category is represented by
a different color.

- 246 -
B-83284EN-2/01 30. CYCLE TIME TRACKING

STATUS Cycle Time


Program: TEST1
Mode Date Time Range
Cycle 09- 8-28 09:15.16 PM 15/20
7.20
6.30 5.93

5.40
4.50
3.42
3.60
2.70
1.56
1.80
0.96
0.90
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

TOTAL PROCESS WAIT KAREL HOMIO FAULT


MOTION APPL DELAY LOGIC IDLE
[ TYPE ] [ PROG ] [ ZOOM ] [CATGRY] HELP >

The following figure displays cycle times in ten cycles mode.

STATUS Cycle Time


Program: TEST1
Mode Date Time Range
Cycle 09- 8-28 09:15.16 PM 15/20
7.20 Total time is displayed with
6.30 different colors based on

5.40 categories.

4.50
3.60
2.70
1.80
0.90
0.00
11 12 13 14 15 16 17 18 19 20

[ TYPE ] [ PROG ] [ ZOOM ] [CATGRY] HELP >

30.2.2 Hourly Mode


In hourly mode, the hourly average cycle time is displayed. You can display cycle time data by one hour,
ten hours, or one hundred hours at a time. Hourly mode is available only when hourly data exists.
The following figure displays the cycle time in ten hours mode.

- 247 -
30. CYCLE TIME TRACKING B-83284EN-2/01

STATUS Cycle Time


Program: TEST1
Mode Date Time Samples Range
Hourly 09- 8-28 09:00 AM 12 15/20
7.20
The average of TOTAL time is
6.30
displayed with different colors
5.40 based on categories.
4.50 This graph means the
3.60 average of cycle times of
2.70 TEST1 recorded in 9 am.
1.80
0.90
0.00
5AM 6AM 7AM 8AM 9AM 10AM 11AM 12 N 1PM 2PM

[ TYPE ] [ PROG ] [ ZOOM ] [CATGRY] HELP >

30.2.3 Line-by-Line Mode


In line-by-line mode, the cycle time in each line in a program is recorded. So you can see the cycle time of
specific line number in the program. The data is saved in CYCLINE.DG in DRAM. So it is cleared when
the power is off.

To use line by line mode, $CY_CONFIG.$LINEENABLE and $CY_CONFIG.$NUMLINES should be


configured.
$CY_CONFIG.$LINEENABLE Valid when it is TRUE. (FALSE by default)
$CY_CONFIG.$NUMLINES Set the number you want to record. (0 by default)

After that,
1. In STATUS Cycle Time screen, press NEXT, press F3, [UPDATE] and select Collect Line Data.
2. Execute a program of which you want the cycle time.
3. In STATUS Cycle Time screen, press NEXT, press F2, [PAGE] and select Line Text.
4. The cycle time of each line is displayed in the Web Server as follows.

Record Program Line Mncode Duration-uS


0 TEST1 1 254 592680
1 TEST1 2 123 998858
2 TEST1 3 254 1208431

[ TYPE ] [ PAGE ] [ HELP ]

30.3 TRACKING CYCLE TIME


Procedure 30-1 Tracking Cycle Time
Condition
• The program you want to track has been executed at least one time.

- 248 -
B-83284EN-2/01 30. CYCLE TIME TRACKING

Step
1. Press MENU.
2. Press STATUS.
3. Press F1, [TYPE].
4. Select Cycle Time.
5. Set the name of the program whose cycle time you want to display. By default, all programs are
selected. To select a single program to display, press F2, [PROG], and select the name of the program.
6. To change the cycle time display between cycles and hours, press F3, [ZOOM] and select the kind of
cycle time you want to display. After you have made a display selection (cycles or hours) you can
quickly change the display by using the arrow keys. The up and down arrow keys move from one cycle
or hour, to ten cycles or hours, then a hundred cycles or hours. The left and right arrow keys can move
forward or backward through the cycles or hours. To move forward and backward quickly, press
SHIFT and the left or right arrow key. If you are in ten cycle mode it will move by 5. If in one hundred
cycle mode, it will move by 30.
7. To display cycle time for a specific program category, press F4, [CATGRY] and select the category
you want to display.

30.3.1 Change Display Format of Cycle Time Data


The format of displaying cycle time data can be changed. In STATUS Cycle Time screen, press NEXT,
press F2, [PAGE], and select one from the following items.

• Cycle Graphics Cycle time data is displayed graphically.


• Cycle Text Cycle time data is displayed as raw text. The data is saved in CYCLES.DG.
• Average Text Hourly average cycle time is displayed as raw text. The data is saved in
CYCAVE.DG.
• Line Text Line data of cycle time in line-by-line mode is displayed as raw text. The data is
saved in CYCLINE.DG and is cleared with power off. Line text can be displayed
only when line-by-line mode is valid.

NOTE
Text data is displayed on Web Server screen.

30.3.2 Save Cycle Time Data


To save the cycle time data, press FCTN key and select SAVE. The cycle time data of cycle mode is saved
in PGCYCCYC.TXT and that of hourly mode is saved in PGCYCHR.TXT. They are saved in the device
selected in File screen.
F4, [BACKUP] in File screen can be also used.

30.3.3 Update Cycle Time Data


For update of cycle time data, there are 4 operations. In STATUS Cycle Time screen, press NEXT, press F3,
[UPDATE], and select the operation you want to execute. The detail of each operation is described as
follows.

• Load Cycle Data


Clear the currently recorded cycle time data and load the previous cycle time data from the device that is
selected in FILE screen.
Loading PGCYCCY.TXT and PGCYCHR.TXT also can display the previous cycle time data.

• Clear Cycle Data


Clear the currently recorded cycle time data.
- 249 -
30. CYCLE TIME TRACKING B-83284EN-2/01

• Clear Line Data


Clear the data for line by line mode. When you want to get a new line data, you should select Collect Line
Data again.

• Collect Line Data


Collect Line Data is an operation necessary for getting the line data for line-by-line mode. After this
operation, execute a program whose cycle time you want to record. Then, in STATUS Cycle Time screen,
press NEXT, press F2, [PAGE], and select Line Text. The cycle time for each line is displayed on Web
Server screen.

30.3.4 Display Target Cycle Time Line


Target cycle time can be displayed as a gold line.
Target cycle time is displayed only in 1 cycle mode.

1. Press SELECT and select a program.


2. Press NEXT, and press F2, DETAIL.
3. Press F3, NEXT until Target Cycle Time (seconds) is displayed.
4. Press ENTER and type a new target cycle time.
5. Press F1, END.
6. Press MENU, select STATUS, press F1, [TYPE] and select Cycle Time if it is not already displayed.
7. Press F2, [PROG] and select the program for which target cycle time is set.
8. Press F3, [ZOOM] and select One Cycle. Such screen as follows will be displayed.

STATUS Cycle Time


Program: TEST1
Mode Date Time Range
Cycle 09- 8-28 09:15.16 PM 15/20
7.20
5.93
5.70

4.50
3.42
Gold Target Line
3.60
2.70
1.56
1.80
0.96
0.90
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

TOTAL PROCESS WAIT KAREL HOMIO FAULT


MOTION APPL DELAY LOGIC IDLE
[ TYPE ] [ PROG ] [ ZOOM ] [CATGRY] HELP >

30.3.5 Display Reference Cycle Time Line


The cycle time of the current program can be recorded and be used as a reference. The recorded cycle time
is displayed as a blue line. The reference cycle time line is displayed only in cycle mode and when an
individual category is selected.

1. In STATUS Cycle Time screen, press F2, [PROG] and select the program whose cycle time you want
to record.
2. Press NEXT, and confirm that F4, RECORD is displayed and press it.
- 250 -
B-83284EN-2/01 30. CYCLE TIME TRACKING
3. You will be prompted to answer whether or not you want to overwrite. Select YES and the cycle time
will be recorded.
4. Press F4, [CATGRY] and select a category you want to display. DELAY is selected in the following
example.
5. The recorded cycle time is displayed as a blue line. (not displayed when TOTAL is selected)

STATUS Cycle Time


Program: TEST1
Mode Date Time Delay
Cycle 09- 8-28 09:15.16 PM 15/20
7.20
6.30 Blue Reference Line
5.40

4.40

2.70
1.80
0.90
0.00
11 12 13 14 15 16 17 18 19 20

[ TYPE ] [ PROG ] [ ZOOM ] [CATGRY] HELP >

30.4 EXECUTION EXAMPLE OF SPOT PROGRAM


In this section, as an execution example of Cycle Time Tracking function, the cycle time is recorded by
executing the following Spot program, WELDTEST.
The cycle time of Spot program is not recorded by SHIFT-FWD execution. SOP cycle start, UOP_START,
or PROD_START should be used.

WELDTEST
1/7
1: J P[1] 100% FINE
2: L P[2] 2000mm/sec CNT50
: SPOT[SD=1,P=1,S=1,ED=1]
3: L P[2] 2000mm/sec CNT50
: SPOT[SD=1,P=1,S=1,ED=1]
4: L P[2] 2000mm/sec CNT50
: SPOT[SD=1,P=1,S=1,ED=1]
5: L P[2] 2000mm/sec CNT50
: SPOT[SD=1,P=1,S=1,ED=1]
6: J P[1] 100% FINE
[End]

POINT SPOT GunTchup AutThup TOUCHUP >

WELDTEST has 4 Spot instructions. In this example, the setting of welding time is 250 ms per one Spot
instruction. So the total welding time is expected to 1 second and recorded as PROCESS cycle time.
The following HOME_IO program is also used. It has only one instruction of “WAIT 1.00 (sec)” and other
statements are all comment. This is to make HOMIO cycle time easy to estimate. HOME_IO is
automatically executed when the robot reaches the home position set in Reference Position screen and the
program ran by SOP, UOP, or PROD_START ends. The execution time of HOME_IO is recorded as
HOMIO cycle time. So, in this example, HOMIO is expected to be 1 second.
- 251 -
30. CYCLE TIME TRACKING B-83284EN-2/01

HOME_IO
1/9
1: WAIT 1.00(sec)
2: !*******************************
3: !MACRO SET AT HOME I-O
4: !Example Housekeeping Routine
5: !Insert Appropriate Commands
6: !Where Necessary
7: !*******************************
8:
[End]

POINT TOUCHUP >

To execute HOME_IO, Reference position should be set correctly.

REF POSN
Reference Position 1/13
Ref.Position Number: 1
1 Comment: [*****************]
2 Enable/Disable: ENABLE
3 Is a valid HOME: TRUE
4 Signal definition: DO [ 0]
5 Choose
J1: ENABLE
0.000for “Enable/Disable”.
+/- 0.000
6 J2: 0.000
Choose TRUE for “Is a +/- 0.000
valid HOME”.
7 J3: 0.000 +/- 0.000
8 J4: 0.000 +/- 0.000
9 J5: 0.000 +/- 0.000
10 J6: 0.000 +/- 0.000

[ TYPE ] RECORD

The following figure is the cycle time of WELDTEST.

STATUS Cycle Time


Program: WELDTEST
Mode Date Time Range
Cycle 09- 8-28 09:15.16 PM 15/20
7.20
6.30 5.82
4.79
5.40
4.50
3.60
2.70
1.80 1.03 1.08 0.95
0.90
0.00 0.00 0.00 0.00 0.00 0.00 0.00

TOTAL PROCESS WAIT KAREL HOMIO FAULT


MOTION APPL DELAY LOGIC IDLE
[ TYPE ] [ PROG ] [ ZOOM ] [CATGRY] HELP >

As expected, PROCESS cycle time is 1.03 second and HOMIO cycle time is 1.08 second.
Here, IDLE cycle time is recorded with the value 0.95 second. IDLE cycle time records the time that the
robot stays idle until next program starts after the program ends. In this example, WELDTEST was restarted
soon after it ended. This cycle time data shows that it took 0.95 second to restart WELDTEST after it ended.
The Total cycle time includes MOTION and PROCESS cycle times. HOMIO, IDLE, and FAULT are not
included in TOTAL cycle time.
- 252 -
B-83284EN-2/01 31. MATH FUNCTION INSTRUCTION

31 MATH FUNCTION INSTRUCTION


• Math function instruction enables to calculate math function (ex: SIN COS and so on) in the TP
program.
• Math function instruction can be used in assignment statement, conditional statement and wait
command.

NOTE
Math function is a optional function.

31.1 TYPE OF MATH FUNCTIONS


Usable instructions of math functions are as follows.

Table 31.1 Usable instruction of math function


Function Explanation Restriction of argument
SQRT[x] Square root 0 <= x
SIN[x] Trigonometric None
COS[x] function None
TAN[x] Units are Except 90,270±360n
ASIN[x] degrees. -1 <= x <= 1
ACOS[x] -1 <= x <= 1
ATAN[x] None
ATAN2[x,y] Except x=0,y=0
LN[x] Natural 0<x
Logarithm
EXP[x] Exponent None
ABS[x] Absolute None
TRUNC[x] Truncate -2.1*10^9 <= x <=2.1*10^9
ROUND[x] Round off -2.1*10^9 <= x <=2.1*10^9

• Units of aforementioned functions are degrees.


• Conversion functions are not supported because the user can achieve them by multiplying a constant
value (57.29579 or 0.017453 based on requirement).

31.2 INSTRUCTION FORMAT OF MATH FUNCTION


Instruction type of math functions is explained in the following example.

31.2.1 Instruction Format of Assignment Statements


• The function which only has one argument (Except of ATAN2[ ])

- 253 -
31. MATH FUNCTION INSTRUCTION B-83284EN-2/01

(Variable) = (SIN[(Argument)])

DO[i] R[j]
R[i] AR[j]
F[i]
GO[i]
SO[i]
AO[i]
$...
PR[i,j]
UO[i]
RO[i]
Timer[i]

• The function which has two arguments (ATAN2[ ])

(Variable) = (ATAN2[(Argument1),(Argument2)])

DO[i] R[j] R[k]


R[i] AR[j] AR[k]
F[i]
GO[i]
SO[i]
AO[i]
$...
PR[i,j]
UO[i]
RO[i]
Timer[i]

• The argument of math functions is “Register “ and “Argument Register”.


• Constant is not used directly.

31.2.2 Instruction Format of Relational Statements


IF (SIN[(Argument)]>=(NUM)),(EXECUTABLE STATEMENT)

R[j]
AR[j]

• A mixed logic instruction expression can be used in the conditional statement of a conditional branch
command.
• If the result of conditional statement is ON, the executable statement of the conditional branch
command is executed.
• The argument of math functions is “Register “ and “Argument Register”.
• Constant is not used directly.

- 254 -
B-83284EN-2/01 31. MATH FUNCTION INSTRUCTION

31.2.3 Instruction Format of Wait Command Statements


WAIT (SIN[(Argument)]>=(NUM))

R[j]
AR[j]

• A mixed logic expression can be specified in the conditional statement of a wait command.
• Wait until the specified condition is satisfied.
• The argument of math functions is “Register “ and “Argument Register”.
• Constant is not used directly.

31.3 FUNCTION SPECIFICATION OF MATH FUNCTIONS

31.3.1 Square Root(SQRT)


Function name: SQRT[X]
Argument: A positive integer or a positive real value to calculate square root.
This function calculates the positive square root of the argument.
Example:

1 : R[1] = 4
2 : R[2] = 2
3 : R[3] = (SQRT[R[1]])
4 : R[4] = (SQRT[R[2]])

Execute this TP program then,

R[3] = 2
R[4] = 1.41421

If the argument is minus value, then the following error occurs.

INTP-674 Invalid argument

31.3.2 Trigonometric Function(SIN)


Function name: SIN[X]
Argument: An angle to calculate SIN (in degree). An integer or a real value.
This function calculates sine of the argument.
Example:
1 : R[1] = 90
2 : R[2] = 45
3 : R[3] = (SIN[R[1]])
4 : R[4] = (SIN[R[2]])

Execute this TP program then,

- 255 -
31. MATH FUNCTION INSTRUCTION B-83284EN-2/01

R[3] = 1
R[4] = 0.70710

31.3.3 Trigonometric Function(COS)


Function name: COS[X]
Argument: An angle to calculate COS (in degree). An integer or a real value.
This function calculates cosine of the argument.
Example:
1 : R[1] = 90
2 : R[2] = 45
3 : R[3] = (COS[R[1]])
4 : R[4] = (COS[R[2]])

Execute this TP program then,

R[3] = 0
R[4] = 0.70710

31.3.4 Trigonometric Function(TAN)


Function name: TAN[X]
Argument: An angle to calculate TAN (in degree). An integer or a real value.
This function calculates tangent of the arguments.
Example:
1 : R[1] = 0
2 : R[2] = 45
3 : R[3] = (TAN[R[1]])
4 : R[4] = (TAN[R[2]])

Execute this TP program then,

R[3] = 0
R[4] = 1

If the argument equals to 180*n+90 and execute, then the following Error will be posted.

INTP-674 Invalid argument

31.3.5 Inverse Trigonometric Function(ASIN)


Function name: ASIN[x]
Argument: An integer or a real value to calculate ASIN. (Return value is degree.)
This function calculates arc sine of the argument.
Example:

- 256 -
B-83284EN-2/01 31. MATH FUNCTION INSTRUCTION

1 : R[1] = 1
2 : R[2] = 0.5
3 : R[3] = (ASIN[R[1]])
4 : R[4] = (ASIN[R[2]])

Execute this TP program then,

R[3] = 90
R[4] = 30

If the argument ranges are x>1 or x<-1 and execute program, then the following Error will be posted.

INTP-674 Invalid argument

31.3.6 Inverse Trigonometric Function(ACOS)


Function name: ACOS[x]
Argument: An integer or a real value to calculate ACOS. (Return value is degree.)
This function calculates arc cosine of the argument.
Example:
1 : R[1] = 1
2 : R[2] = 0.5
3 : R[3] = (ACOS[R[1]])
4 : R[4] = (ACOS[R[2]])

Execute this TP program then,

R[3] = 0
R[4] = 60

If the argument ranges are x>1 or x<-1 and execute program, then the following Error will be posted.

INTP-674 Invalid argument

31.3.7 Inverse Trigonometric Function(ATAN2)


Function name: ATAN2[x,y]
1st argument: x coordinates of the point to calculate ATAN2. An integer or a real value.
2nd argument: y coordinates of the point to calculate ATAN2. An integer or a real value.
This function calculates arc tangent of the 1st and 2nd arguments. (Return value is degree.)
Example:
1 : R[1] = -1
2 : R[2] = 0.5
3 : R[3] = (ATAN2[R[1],R[2]])
4 : R[4] = (ATAN2[R[2],R[1]])

Execute this TP program then,

R[3] = 153.4349
R[4] = -63.43

- 257 -
31. MATH FUNCTION INSTRUCTION B-83284EN-2/01

31.3.8 Inverse Trigonometric Function(ATAN)


Function name: ATAN [x]
Argument: An integer or a real value to calculate ATAN.
This function calculates arc tangent of the argument. (Return value is degree.)
Example:
1 : R[1] = 1
2 : R[2] = 0.5
3 : R[3] = (ATAN[R[1]])
4 : R[4] = (ATAN[R[2]])

Execute this TP program then,

R[3] = 45
R[4] = 26.56

31.3.9 Exponent
Function name: EXP[x]
Argument: An integer or a real value to calculate EXP.
This function calculates a value equal to e (approximately 2.71828) raised to the power specified by the
argument.
Example:
1 : R[1] = 0
2 : R[2] = 1
3 : R[3] = (EXP[R[1]])
4 : R[4] = (EXP[R[2]])

Execute this TP program then,

R[3] = 1
R[4] = 2.71828

31.3.10 Natural Logarithm


Function name: LN[x]
Argument: An integer or a real value to calculate LN.
This function calculates the natural logarithm of the argument.
Example:
1 : R[1] = 1
2 : R[2] = 2.718281828
3 : R[3] = (LN[R[1]])
4 : R[4] = (LN[R[2]])

Execute this TP program then,

R[3] = 0
R[4] = 1

If the argument is x <= 0 and the program execute, then the following Error will be posted.

- 258 -
B-83284EN-2/01 31. MATH FUNCTION INSTRUCTION

INTP-674 Invalid argument

31.3.11 Absolute(ABS)
Function name: ABS[x]
Argument: An integer or a real value to calculate ABS.
This function calculates the absolute value of the argument.
Example:
1 : R[1] = 5.5
2 : R[2] = -5.2
3 : R[3] = (ABS[R[1]])
4 : R[4] = (ABS[R[2]])

Execute this TP program then,

R[3] = 5.5
R[4] = 5.2

31.3.12 Truncate(TRUNC)
Function name: TRUNC[x]
Argument: A real value to calculate TRUNC.
This function converts the real argument to an integer by removing fractional part of the real value.
Example:
1 : R[1] = 5.5
2 : R[2] = -5.2
3 : R[3] = (TRUNC[R[1]])
4 : R[4] = (TRUNC[R[2]])

Execute this TP program then,

R[3] = 5
R[4] = -5

31.3.13 Round Off(ROUND)


Function name: ROUND[x]
Argument: A real value to calculate ROUND.
This function calculates integer value closest to the real argument.
Example:
1 : R[1] = 5.5
2 : R[2] = -5.2
3 : R[3] = (ROUND[R[1]])
4 : R[4] = (ROUND[R[2]])

Execute this TP program then,

- 259 -
31. MATH FUNCTION INSTRUCTION B-83284EN-2/01

R[3] = 6
R[4] = -5

31.4 BACKGROUND OPERATION OF MATH FUNCTION


Math function instructions are part of the mixed logic instruction.
Then Math function instruction can be used in background operation.

Table 31.4 Background operation of math function


Mode Maximum Scanning time Available data Available
allowable operators
number of
items
Standard No restriction (Number of items in standard SIN, COS, TAN, (,), =, <>, <, <=, >,
mode mode / 300-Number of items ASIN, ACOS, >=, +, -, *, /, DIV,
in high-level mode)*ITP ATAN, ATAN2, MOD
The number of items as used SQRT, LN, EXP,
here refers to the total ABS, TRUNC,
number of items in each ROUND
mode background operation
programs.
One ITP is usually eight
milliseconds.
High-level 270 Eight milliseconds.
mode

• The scanning time of Math function is 2 or 3 times of normal items, because Math function instruction
needs more time to calculate.
• The scanning time of ATAN2 instruction is 3 times of normal items.
• The other math function instructions of scanning time are 2 times of normal items.

31.5 TEACH MATH FUNCTION INSTRUCTION


Math function can be used in mixed logic instruction.
As an example, the teaching process of following statement is as follows.
1 : R[1] = (SIN[R[2]])

Procedure 31-1 Examples of teaching math function


Step
1 Press F1, [INST] key.
2 Select Register.

- 260 -
B-83284EN-2/01 31. MATH FUNCTION INSTRUCTION
Instruction 1 Instruction 2 Instruction 3
1 Registers 1 Skip 1 Tool_Offset
2 I/O 2 Payload 2 LOCK PREG
3 IF/SELECT 3 Offset/Frames 3 MONITOR/MON. END
4 WAIT 4 Multiple control 4 String
5 JMP/LBL 5 Program control 5 DIAGNOSE
6 CALL 6 MACRO 6
7 Miscellaneous 7 FOR/ENDFOR 7
8 --next page-- 8 --next page-- 8 --next page--

3 Select mixed logic instructions “…= (…)”.

Register statement 1
1 ...=...
2 ...=...+...
3 ...=...-...
4 ...=...*...
5 ...=.../...
6 ...=...DIV...
7 ...=...MOD...
8 ...=(...)

4 Select register “R[ ]”. Then the cursor moves in the square bracket.

Mixed Logic 1 Mixed Logic 2


1 DO[ ] 1 PR[i,j]
2 R[ ] 2 UO[ ]
3 F[ ] 3 RO[ ]
4 GO[ ] 4 TIMER[ ]
5 SO[ ] 5
6 AO[ ] 6
7 Parameter name 7
8 --next page-- 8 --next page--

5 Input index 1.

PROGRAM
1/2
1: R[1]=(...)
[End]

DIRECT INDIRECT [CHOICE] [LIST]

6 Then the cursor moves to the right side of equal sign.


7 Select “SIN[ ]”.

Mixed Logic 1 Mixed Logic 2 Mixed Logic 3 Mixed Logic 4


1 ( 1 Constant 1 Parameter name 1 RI[ ]
2 DI[ ] 2 GI[ ] 2 AR[ ] 2 RO[ ]
3 DO[ ] 3 GO[ ] 3 TIMER[ ] 3 SIN[ ]
4 R[ ] 4 SI[ ] 4 TIMER_OVERFLOW 4 COS[ ]
5 F[ ] 5 SO[ ] 5 PR[ ] 5 TAN[ ]
6 On 6 AI[ ] 6 UI[ ] 6 ASIN[ ]
7 Off 7 AO[ ] 7 UO[ ] 7 ACOS[ ]
8 --next page-- 8 --next page-- 8 --next page-- 8 --next page--

8 Then the cursor moves in the square bracket. And the default value R[…] is selected.
Arguments are “Register “ and “Argument Register”. (Not Constant)
The “Register” is default value of argument.
So to use “Argument Register”, press F3, [CHOICE] then select “Argument Register”.
9 For example Register[2] is used here. Input value 2 then the cursor moves to the right parentheses.

- 261 -
31. MATH FUNCTION INSTRUCTION B-83284EN-2/01

PROGRAM
1/2
1: R[1]=(SIN[R[...]])
[End]

Enter value

<INSERT> INDIRECT [CHOICE]

10 Move cursor to finish teaching.


11 Teaching of SIN[R[2]] function completed.

PROGRAM
1/2
1: R[1]=(SIN[R[2]])
[End]

[ INST ] [EDCMD] >

31.6 RESTRICTION OF TEACHING MATH FUNCTION


• The argument of math functions is “Register “ and “Argument Register”.
• Constant is not used directly.
• If the user wants to use constant, input constant to a register, and use the register.
• You can put multiple math functions in a single line.
• You cannot put math functions in a math function.

Following statements are supported.

1 : R[1] = (SIN[R[2]])
2 : R[2] = (COS[AR[3]])
3 : R[3] = (SIN[R[4]] + COS[R]4)])

Following statements are not supported.

R[1] = (SIN[90])
* Input constant directly.
R[3] = (SQRT[SIN[R[4]] * SIN[R[4]] + COS[R[4]]*COS[R[4]]])
* SIN and COS are in SQRT.

• Math function might have a negligible calculation error of 10-7 due to internal calculation error
because math function follows the same specification of KAREL Built-Ins.
• For example the result of COS[R[1]] (when R[1]=90), may be 10-8 that is not exactly zero. This
behavior can be avoided by rounding off the result using ROUND function.

31.7 EXCEPTIONS AND RESTRICTION


Math function instruction posts the alarm in the following conditions.
• When the argument exceeds the domain of function definition.
Example :LN[R[1]] (R[1] = -1)
:ASIN[R[2]] (R[2] = 10)
:SQRT[R[3]] (R[3] = -4)

- 262 -
B-83284EN-2/01 31. MATH FUNCTION INSTRUCTION
:TAN[R[4]] (R[4] = 90)

INTP-674 Invalid argument

• The value overflows when executed.


Example :EXP[R[1]] (R[1] = 100)

INTP-323 Value overflow

• If the variables are divided by zero then, the following error will be occurred.
Example :R[1] / SIN[R[2]] (R[2] = 0)
:10/COS[R[3]] (R[3] = 90)

INTP-208 Divide by 0

- 263 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

32 SERVO TOOL CHANGE FUNCTION

Contents of this chapter


32.1 OUTLINE
32.2 INITIAL SETUP
32.3 PRELIMINARY TOOL ATTACH OPERATION
32.4 TOOL CHANGE SETUP
32.5 SETTING THE REFERENCE POSITION
32.6 TOOL CHANGE INSTRUCTION
32.7 TOOL CHANGE SEQUENCE
32.8 TOOL CHANGE STATUS
32.9 TEACHING
32.10 CONSTRUCTION OF SERVO TOOL CHANGE SCREEN
32.11 TOOL CHANGE INITIAL SETUP
32.12 TOOL CHANGE REFERENCE POSITION SETUP METHOD (BATTERY-LESS TYPE)
32.13 TROUBLESHOOTING

32.1 OUTLINE

32.1.1 Feature of Function


• It is possible to switch more than two servo tools without power off.
• Switching the air drive tool and the servo tool is also available.

What is a servo tool?


A servo tool is a tool having an axis that is driven by a servo motor controlled by a robot controller.

32.1.2 Basic Specification


The total number of changeable tool 4 for one-axis servo tool change
2 for two-axis servo tool change
1 for three-axis servo tool change
Only one tool can be controlled at the same time.
The period of tool detach (standard) 0.4 sec (Battery type) / 0.4 sec(Battery less type) *1)
The period of tool attach (standard) 4 sec(Battery type) / 6 sec(Batteryless type) *1)
Backup battery Both battery type and batteryless type can be available.*2)
(*1) The period includes the internal processing period, not include the period of robot motion for changing
the tools.
(*2) The batteryless type is not available for multi-axis servo tool change.

32.1.3 Restrictions
Restrictions matters
• Switching is possible only between servo tools that are set within the same motion group.
• Because servo tools that do not have a battery for tool axis pulse value backup require calibration after
they are attached, these tools require longer processing time for tool change than battery-equipped
tools.
• The motor of the tool change must be controlled by the same amp.

- 264 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION

• The tool change instruction can not be used by multi task. (The tool change instruction can not be
execute by plural tasks at the same time.)
• Installing both the servo tool change function and servo gun change function cannot be done.
• On a system with the servo tool change function installed, the dynamic brake release function cannot
be used for servo guns.

Prohibition matters
• Do not force to detach the tool while the controller is off.
• The line tracking can not be used with the tool change function.

Notes on using the batteryless type


• When calibration motion type 1 or 2 is selected, calibration cannot be interrupted by a hold or
emergency stop. (Program execution must not be stopped during tool attach processing.)
• When calibration motion type 3 or 4 is selected, the stroke limit must be expanded so that the tool axis
touches the open limit.
• When calibration motion type 5 or 6 is selected, a detection switch such as a limit switch must be
installed in the tool.

For details of the calibration motion types, see Section 32.4, "TOOL CHANGE SETUP".

Notes on using multi-axis servo tool


• The servo tool number must be assigned to successive axes.
• The servo tool must have the backup battery.
• To change two-axis servo tool, the two-axis tool change unit must be used.
• To change three-axis servo tool, the three-axis tool change unit must be used.
• Four (or more)-axis servo tool cannot be changed.
• The servo tool cannot be changed to the one with a different number of axes.

NOTE
When a Pulsecoder αiAR128(A860-2010-T341) shipped until May of 2006 is
used, alarm SRVO-068(DTERR) occurs at turning power on and executing TOOL
ATTACH instruction. Implement either of following countermeasures.
1. Replace Pulsecoder αiAR128 with one shipped after June of 2006.
2. Change system valuables as follows.
• $SHC_ITF[#].$WAITTM_PCHK = 270
• $SHC_ITF[#].$WAITTM_PWUP = 550
• $SHC_ITF[#].$SVON_DELAY = 230
• $SHC_ITF[#].$WAITTM_STRT = 650
# is group number of servo tool group using Servo Tool Change Function.
When you implement 2nd countermeasure, tool attach process is extended by
about 2 seconds.

32.1.4 System Configuration


One-axis servo tool change system is constructed as follows.
(Example: Servo tool is the 2nd group and the number of tools is four.)

- 265 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

Detach/Attach Tool

Tool 1 Tool 2 Tool 3 Tool 4

Robot = Motion group 1

J1 J2 J3 J4

(Max4)
Motion group 2

Robot
Controller

You can replace the servo tool with the air tool by switching on the controller.

Servo tool: (example: controller = 1)


• Driven by servo motor
(motion group = 2)
• Any open position can be set.

Air tool: (example: controller = 2)


• Driven by air ON/OFF
(no motion group)

- 266 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION

32.1.5 Outline of Installation

† Enable the tool change. SETUP TOOL CHANGE


Initial setup
† Set tool number configuration. 2/2
Controlled 1 Motion Group: 2
start 2 Tool Change: ENABLE

[TYPE] GROUP TOOL_CFG ENABLE DISABLE


† Set On to the battery type.
Provisional attach
† Execute tool attach instruction.
SETUP TOOL CHANGE
† Perform zero position mastering.
TOOL CHANGE / Group:2 Tool:1 9/9
† Perform calibration. 1 Comment: [ ]
2 Attach signal: DI[ 1]
3 Identify signal: DI[ 2]
4 Battery: OFF
† Select correct battery type. 5 Calibration motion type: [TYPE 3]
Tool change setup
† Select correct calibrate motion Calibration Motion Setup
type. 6 Calibration Speed(%): 100
7 Acc Value: 100
8 Position register index:PR[ 0]
9 Touch torque(%) (+) 5.000

[TYPE] LIST

SYSTEM Master/Cal
TORQUE = [ON ]
1 FIXTURE POSITION MASTER
Refpos setup † Perform reference position setup. 2 ZERO POSITION MASTER
3 QUICK MASTER
4 SINGLE AXIS MASTER
5 SET QUICK MASTER REF
6 CALIBRATE

Press ‘ENTER’ or number key to select.

1.
2. TOOL_ATTACH[ 1 ]
† Check whether tool number is :
Teaching
correct or not. 10. TOOL_DETACH[ 1 ]
:

† Check whether tool status is


Execution correct or not.
† Do not stop the tool during the STATUS TOOL CHANGE
calibrate motion. Group:2 ENABLE Cont.:1 OFF 1/4
† Check the attached tool and the Axis Comment Status
Verification 1 TOOL[ 1:Part A ] ATTACH
tool number of status screen is
2 TOOL[ 2:Part B ] DETACH
same or not. 3 TOOL[ 3:Part C ] DETACH
4 TOOL[ 4:Part D ] DETACH

32.2 INITIAL SETUP


The following initial setup is needed to install the servo tool change system.

• Motion parameter setup (Independent axis setup) of servo tool axes


• The configuration setup of servo tool number
• Enable the tool change function.
- 267 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

NOTE
These setup must be done at the beginning of system installation. These setup
must be done only one time.

These setup is done at the controlled start. See Subsections 32.11.1, 32.11.2 and 32.11.3 for detailed
information.

32.3 PRELIMINARY TOOL ATTACH OPERATION


When “Tool Change” is enabled as described in Section 32.2, "INITIAL SETUP", tools assigned to a target
operation group are all detached.

NOTE
Only when the tool change software is installed in a system in which servo tools
have already been operated and a tool used previously is left attached, the tool is
attached. In this case, preliminary tool attach steps 1 to 9 explained below are
unnecessary.

When using a tool for the first time, be sure to follow the steps below to perform the preliminary attach
operation, then proceed to Section 32.4, "TOOL CHANGE SETUP".

1 Press the MENU key to display the screen menu.


2 Select 6, SETUP.
3 Press F1, [TYPE] to display the screen switch menu.
4 Select “Tool Change”. The tool change list screen appears.
5 From the list, select one tool, and press F3, DETAIL. The tool change setup detail screen then appears.

SETUP TOOL CHANGE


Tool Change / Group:2 ENABLE 1/3
AXS Comment BatteryType
1 TOOL[ 1:Part A ] ON [------]
2 TOOL[ 2:Part B ] ON [------]
3 TOOL[ 3:Part C ] ON [------]

[ TYPE ] GROUP DETAIL

6 On the tool change setup detail screen, temporarily set the battery to ON. (Even when the actual tool
has no battery, select ON in this step. This item is to be set again after the preliminary attach operation
is completed.)
SETUP TOOL CAHNGE
Tool Change / Group:2 Tool:1 4/4
1 Comment: [Part A ]
2 Attach signal: DI [ 1]
3 Identify signal: DI [ 2]
4 Battery: ON

[ TYPE ] LIST ON OFF


7 Attach a target tool to the tool changer.

- 268 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION
8 Create a program to teach an attach instruction.
9 Execute the TOOL ATTACH instruction to attach the tool temporarily.

1/2
1: TOOL_ATTACH[1]
[End]

Enter value

DIRECT INDIRECT [CHOICE]

10 After the TOOL ATTACH instruction is executed, the following are issued:
SRVO-075 Pulse not established
SRVO-062 BZAL alarm
11 On the calibration screen, press F3, RES_PCA, and select YES.

SYSTEM Master/Cal
TORQUE = [ON ]
1 FIXTURE POSITION MASTER
2 ZERO POSITION MASTER
3 QUICK MASTER
4 SINGLE AXIS MASTER
5 SET QUICK MASTER REF
6 CALIBRATE

Press 'ENTER' or number key to select.

[ TYPE ] LOAD RES_PCA DONE

12 Turn the power off then on.


13 Jog the servo tool axis.
Continue jogging the servo tool axis until the following message disappears when the reset button is
pressed:
SRVO-075 Pulse not established.
14 In the same manner as for ordinary servo tools, perform zero-position mastering for the servo tool axis.

SYSTEM Master/Cal
TORQUE = [ON ]
1 FIXTURE POSITION MASTER
2 ZERO POSITION MASTER
3 QUICK MASTER
4 SINGLE AXIS MASTER
5 SET QUICK MASTER REF
6 CALIBRATE

Press 'ENTER' or number key to select.

[ TYPE ] LOAD RES_PCA DONE

15 After completing tool change setup and reference position setting for the first tool, detach the first tool
by using the TOOL DETACH instruction, then perform the preliminary attach operation for the
second and subsequent tools.

- 269 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

32.4 TOOL CHANGE SETUP


The tool change setup must be done for each tool.

SETUP TOOL CHANGE


Tool Change / Group:2 ENABLE 1/3
AXS Comment BatteryType
1 TOOL[ 1:Part A ] ON [------]
2 TOOL[ 2:Part B ] ON [------]
3 TOOL[ 3:Part C ] ON [------]

[ TYPE ] GROUP DETAIL

SETUP TOOL CAHNGE


Tool Change / Group:2 Tool:1 1/4
1 Comment: [Part A ]
2 Attach signal: DI [ 1]
3 Identify signal: DI [ 2]
4 Battery: ON

[ TYPE ] LIST

1 Press MENU key.


2 Select “6 SETUP”.
3 Press F1, [TYPE].
4 Select “Tool change”.
5 Select tool from the list of tools, then press F3, DETAIL. The detail screen is displayed.

Common setup
Comment Comment for each tool.
Attach signal This signal used for tool set verification.
Available I/O type = DI / RI
• This signal is check before tool attach/detach instruction. If this signal is OFF, the error occurs.
• If the index is zero, the above checking is canceled.
Identify signal This signal used for tool identification.
Available I/O type = DI / RI / GI
• This signal is check before tool attach/detach instruction. If this signal is OFF, the error occurs.
• If the index is zero, the above checking is canceled.
Battery Select battery type.
ON = Battery backup type
OFF = Batteryless type
NOTE
To change multi-axis servo tool, Battery must be set to ON.

- 270 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION
(Select the following when Battery is set to OFF in the common settings.)
Calibration Motion Type On battery-less tools, the position (pulse value) is lost when the tool is detached. So,
calibration must be carried out when tool is attached. Calibration involves the following two
operations:
• Turning the motor two turns for positioning the Pulsecoder
(This operation is simply referred to as "positioning" from here on.)
• Calibrating at a preset reference position
The user selects from the following types, 1 to 6, to suit the user's particular system
requirements.
(See Table 32.4 and Fig. 32.4.)

Calibration motion type Selection Criteria


- Types 1, 2
Select these types on systems capable of holding the tool detachment position as a result of braking the
servo tool axis motor up to the next servo tool attachment.

NOTE
With type 1 and 2, if calibration is interrupted by a hold or emergency stop,
reference position data is lost. In such a case, see Subsection 32.13.2, "The
Robot Stopped during Calibration".

When these types are set, the position where the tool is detached is automatically memorized as the
reference position, and calibration is carried out at that position after the tool is attached. For this reason, the
position when the tool is attached must be the same as position when it is detached.
The allowable errors of the detach and attach positions must fall within the respective following ranges for
the direct-acting axis and rotary axis:

Direct-acting axis:
±(gear ratio/2) mm or less around the detach position
Rotary axis:
±((360/gear ratio)/2) deg or less around the detach position

Note that positional misalignment occurs during tool attachment if the above ranges are exceeded.

The difference between types 1 and 2 is in the operating direction during calibration. (See Table 32.4 and
Fig. 32.4.)

Type 1:
Specify this type when the tool is detached at a position where it is impossible to move the tool in the
positive direction of manual feed by two or more turns of the motor.
Type 2:
Specify this type when the tool is detached at a position where it is impossible to move the tool in the
negative direction of manual feed by two or more turns of the motor.

- Types 3, 4
Select these types on systems not capable of holding the tool detachment position as a result of the
servo tool axis motor not having a brake up to the next servo tool attachment. On such a system, the
reference position must be set to another position as the tool detachment position cannot be used as the
reference position.

With these types, contact of the tool axis with the open limit is detected by using the motor torque, and
the contact position is set as the reference position. (This is because, in the standard setting, the
calibration motion causes the tool axis to move in the negative direction of manual feed.) For details on
how to set the reference position, see Section 32.5, "SETTING THE REFERENCE POSITION."

- 271 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

The difference between types 3 and 4 is in the operating direction during calibration. (See Table 32.4
and Fig. 32.4.)

Type 3:
Specify this type when the tool is detached at a position where the distance to the open limit is two or
more turns of the motor.
Type 4:
Specify this type when the tool is detached at a position where the distance to the open limit is two or
less turns of the motor.

NOTE
1 In the calibration, to move the tool axis in the positive direction of manual feed (to
use the limit on the positive side of manual feed), change the following system
variable to 0:
$SVTCTOOLxx.$CLOSDIR = 1 → 0 (xx: Tool number)
2 With types 3 and 4, it is necessary to expand the stroke limit so that the tool axis
touches the open limit.

- Types 5, 6
Like types 3 and 4, specify these types on systems not capable of holding the tool detachment position
as a result of the servo tool axis motor not having a brake up to the next servo tool attachment. With
types 5 and 6, however, a detection signal must be provided on the tool by means of a limit switch, and
the contact position must be set as the reference position. Install the detection switch in such a place
that the detection switch is turned on when the tool axis is moved in the negative direction of manual
feed (this is because, in the standard setting, the calibration motion causes the tool axis to move in the
negative direction of manual feed). For details on how to set the reference position, see Section 32.5,
"SETTING THE REFERENCE POSITION."
The difference between types 5 and 6 is in the operating direction during calibration. (See Table 32.4
and Fig. 32.4.)

Type 5:
Specify this type when the tool is detached at a position where the distance to the position where the
detect signal turns ON is two or more turns of the motor.
Type 6: Specify this type when the tool is detached at a position where the distance to the position where
the detect signal turns ON is two or less turns of the motor.

NOTE
1 In the calibration, to move the tool axis in the positive direction of manual feed,
change the following system variable to 0:
$SVTCTOOLxx.$CLOSDIR = 1 → 0 (xx: Tool number)
2 With types 5 and 6, a switch such as a limit switch must be installed in the tool.

Table 32.4 Calibration motion type


Calibration Motion Set Position of Reference
Type
($SVTCTOOLxx.$CLOSDIR is 1.) position
Type 1 The tool is moved in the negative direction of manual feed by two Position when tool is detached
turns of the motor and is subsequently moved in the positive direction Reference position is not
by two turns, then the tool is calibrated. (NOTE 1) required. (NOTE 2)
Set setting item (1) on the next page.
Type 2 The tool is moved in the positive direction of manual feed by two turns Position when tool is detached
of the motor and is subsequently moved in the negative direction by Reference position is not
two turns, then the tool is calibrated. required. (NOTE 2)
Set setting item (1) on the next page. (NOTE 1)

- 272 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION

Calibration Motion Set Position of Reference


Type
($SVTCTOOLxx.$CLOSDIR is 1.) position
Type 3 The tool is moved in the negative direction of manual feed until touch Open limit position
torque is detected, then the tool is calibrated. Arrival at the limit is
detected by motor torque.
Set setting items (1), (2) and (3) on the next page.
Type 4 The tool is moved in the positive direction of manual feed by two turns Open limit position
of the motor and is subsequently moved to the limit on the negative
side until touch torque is detected, then the tool is calibrated. Arrival
at the limit is detected by motor torque.
Set setting items (1), (2) and (3) on the next page.
Type 5 The tool is moved in the negative direction of manual feed until the Position where detection signal
detection signal is turned on, then the tool is calibrated. turns ON
Set setting items (1), (2) and (4) on the next page.
Type 6 The tool is moved in the positive direction of manual feed by two turns Position where detection signal
of the motor and is subsequently moved in the negative direction until turns ON
the detection signal is turned on, then the tool is calibrated.
Set setting items (1), (2) and (4) on the next page.

NOTE
1 Tool master data is lost if the operation is canceled due to a hold or an emergency
stop during calibration that is carried out during the tool change sequence when
types 1 or 2 are selected. If this happens, manually carry out zero position
mastering.
2 With types 1 and 2, the system automatically memorizes the position where the
servo tool is detached as the reference position. This memorized reference
position is used in calibration when the same tool is next attached. For this reason,
when types 1 or 2 are selected, the detachment position and the attachment
position must be the same. Do not select types 1 or 2 when a motor without a
brake is used for the servo tool axis.

Type 1 Type 2
When the tool is moved in the negative direction first When the tool is moved in the positive direction first

Position
Position when tool is
when tool is detached
detached
2 turns of motor 2 turns of motor 2 turns of motor 2 turns of motor
(negative ) (positive direction) (positive direction) (negative )

Type 3 Type 4
When the tool is moved in the negative direction only When the tool is moved in the positive direction then moved
Torque in the negative direction
Torque

Detection
Detection
Reference
2 turns of motor position Reference
2 turns of motor 2 turns of motor position
(negative ) setting (positive direction) (negative ) setting
position position
during quick during
mastering quick
mastering

- 273 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

Type 5 Type 6
When the tool is moved in the negative direction only When the tool is moved in the positive direction then moved
in the negative direction
Input signal
Input
ON
ON
OFF OFF
Detection Detection

2 turns of motor Reference 2 turns of motor 2 turns of motor Reference


position position
(negative ) (positive direction) (negative ) setting
setting
position position
during quick during quick
mastering mastering

Fig. 32.4 Calibration motion type

The positive and negative directions in the above figure are determined on the assumption that
$SVTCTOOLxx.$CLOSDIR = 1 is set. If this system variable is set to 0, the directions are reversed.

Screen for calibration types 1, 2


SETUP TOOL CHANGE
Tool Change / Group:2 Tool:1 5/7
1 Comment: [ ]
2 Attach signal: DI [ 1]
3 Identify signal: DI [ 2]
4 Battery: OFF
5 Calibration motion type: [TYPE 2]
Calibration Motion Setup
6 Calibration Speed(%): 100
7 Acc Value: ACC100

[ TYPE ] LIST [CHOICE]

Screen for calibration types 3, 4 Screen for calibration types 5, 6


SETUP TOOL CHANGE SETUP TOOL CHANGE
Tool Change / Group:2 Tool:1 5/9 Tool Change / Group:2 Tool:1 5/9
1 Comment: [ ] 1 Comment: [ ]
2 Attach signal: DI [ 1] 2 Attach signal: DI [ 1]
3 Identify signal: DI [ 2] 3 Identify signal: DI [ 2]
4 Battery: OFF 4 Battery: OFF
5 Calibration motion type: [TYPE 4] 5 Calibration motion type: [TYPE 6]
Calibration Motion Setup Calibration Motion Setup
6 Calibration Speed(%): 100 6 Calibration Speed(%): 100
7 Acc Value: ACC100 7 Acc Value: ACC100
8 Position register index: PR[ 1] 8 Position register index: PR[ 1]
9 Touch torque(%): (+) 5.000 9 Detect signal: DI [ 0]

[TYPE] LIST [CHOICE] [TYPE] LIST [CHOICE]

(1) Open limit operation setting (Set on all calibration types.)


Calibration speed Specify the calibration motion operation speed.
Accelerate rate Specify the calibration motion accelerate rate. Default is 100(%).

(2) Position register No. setting


(Set as follows when types 3 to 6 are set in the Calibration Setup.)
- 274 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION

Position register No Position register for holding the momentary position where arrival at the
reference position (open limit or signal input position) was detected
Set the position register specified here exclusively for calibration.
(Do not use the same position register in the program, for example.)

(3) Open limit detection torque setting


(Set as follows when types 3 or 4 are set in the Calibration Setup.)
Touch torque (%) Threshold value of the motor torque for detecting arrival at the open limit
Set the value within range 0.0 to 100.0%.

(4) Detection signal setting (Set as follows when types 5 or 6 are set in the Calibration Setup.)
Detection signal Type and No. of input signal for detecting arrival at the reference position
• DI
• RI
Specify a No. available for each of the signals as the signal No.

32.5 SETTING THE REFERENCE POSITION

32.5.1 Battery-less Type Tools


On battery-less tools, the position (pulse value) is lost when the tool is detached. So, calibration must be
carried out when tool is attached.
The position taken as the reference for calibration is called the "reference position".
On battery-less tools, the reference point must be set before the tool is detached.
How the reference point is set differs according to the calibration motion type.

Types 1, 2
The system automatically sets the reference position when the servo tool is detached.

Types 3, 4
Create a program for detecting the reference position using the touch torque, and execute
this program to calculate the reference position. For details, refer to Subsection 32.12.1.

Types 5, 6
Create a program for detecting the reference position using the detection signal, and execute
this program to calculate the reference position. For details, refer to Subsection 32.12.2.

32.5.2 Battery-Mounted Type Tools


On battery-mounted type tools, the position (pulse value) is not lost even if the tool is detached. Therefore,
the reference position used for calibration when the tool is attached need not be set as it needs to be on a
battery-less type tool. However, that we recommend setting a reference position for quick mastering by
marking a line or alignment mark as shown in the figure below for extra safety in the event that the battery
comes loose. For details on how to set the reference position for quick mastering, refer to 32.12.3.

- 275 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

Line marking or
alignment mark

32.6 TOOL CHANGE INSTRUCTION


For changing servo tools, the following instructions are provided.

32.6.1 TOOL DETACH Instruction


This instruction can detach the servo tool without power off.

Format
TOOL DETACH[i]
i : Tool number (1 to 4)
Specify the tool number which you want to detach.
R[ ] and AR[ ] can be used.
Ex) TOOL DETACH[1]
TOOL DETACH[R[2]]
TOOL DETACH[AR[1]]

32.6.2 TOOL ATTACH Instruction


This instruction can attach the servo tool without power off. In case of batteryless tool, the mastering and
calibration are performed automatically.

Format
TOOL ATTACH[i]
i : Tool number (1 to 4)
Specify the tool number which you want to detach.
R[ ] and AR[ ] can be used.
Ex) TOOL ATTACH[4]
TOOL ATTACH[R[3]]
TOOL ATTACH[AR[1]]

32.6.3 Sample Program


Sample program
[Explanation]
1: J P[1:Approach] 100% FINE 1: Move to approach position.
2: L P[2:TOOL1 SET] 100mm/sec FINE 2: Set tool axis to 0 position.
3: TOOL DETACH[1] 3: Detach tool 1.
4: L P[1:Approach] 100mm/sec FINE 4: Release tool1.
:
11: J P[11: Approach] 100% FINE
12: L P[12:TOOL2 SET] 100mm/sec FINE
- 276 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION
13: TOOL ATTACH[2] 13: Attach tool 2.
14: UTOOL_NUM=2 14:Change tool frame number.
15: L P[13: Approach] 100mm/sec FINE
:
99: END 99: Normal end

NOTE
The above is merely a sample program. Create programs to suit the requirements
of your system.

32.6.4 Forward Execution


It is necessary to check that the tool number of instruction is same as the actual tool. And in the case of
attach instruction, the calibration motion type must be set correct type.
In the case of batteryless tool, the calibration motion (3 in the following figure) is done.

1. Move to the attached position


Mastering and
2. Tool attach Calibration are
finished

3. Calibration motion
(Tool axis only)

4. Move to the work position

NOTE
In the case of calibration motion type is Type 1 or Type 2, if the motion is stopped
by e-stop or HOLD during the calibration motion, the mastering data is lost. If the
mastering data is lost, please do the zero mastering and calibration by manual
again.
Otherwise,
1) The current position on TP is not matched to the actual position.
2) If the motion instruction is executed, the following alarm is occurred.
“MOTN-049 Attempt to move w/o calibrated”
3) The TOOL DETACH instruction does not work until manual mastering and
calibration are finished.

In the case of TOOL DETACH instruction, both robot and servo tool do not move at all.

32.6.5 Backward Execution


Both TOOL ATTACH and TOOL DETACH instruction can not be execute by backward execution.

- 277 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

32.7 TOOL CHANGE SEQUENCE


TOOL DETACH TOOL ATTACH
Detach Attach
Robot motion
moving STOP STOP

ON
Robot lock of servo tool OFF
motion group is ON
SRDY of servo tool motor
ON
OFF

Tool attach signal


ON
OFF
Tool attach verification signal
ON
OFF

Motor power line(MCC)


Attach
Detach
Motor power line
GND line Attach
Detach

Pulsecoder line
+5V Attach
Detach

Pulsecoder line
0V Attach
Detach

Detach/Attach status Tool Attach Non tool Non tool Tool attach
Tool Tool
Detaching Attaching

32.8 TOOL CHANGE STATUS


On the tool change status screen, verify that which tool is attached or detached now.

1 Press MENU key.


2 Select “0 next page”, ”4 STATUS”.
3 Press F1, [TYPE].
4 Select “Tool change”.

STATUS TOOL CHANGE


Group:2 ENABLE Cont.:1 OFF 1/4
AXS Comment Status
1 TOOL[ 1:Part A ] ATTACH
2 TOOL[ 2:Part B ] DETACH
3 TOOL[ 3:Part C ] DETACH
4 TOOL[ 4:Part D ] DETACH

[ TYPE ] GROUP

- 278 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION
The following status are displayed.

AXS The axis number of the motion group which is assigned to the current motion group.
Tool The tool number which is assigned to the above axis.
Status Tool status
ATTACH : The tool is attached.
DETACH : The tool is detached.
Comment The comment of each tool.

32.9 TEACHING
In the tool change system, please note the following points.

32.9.1 Notice for Teaching


Position data
In the tool change system, the each tool is assigned to the each axis of the servo tool motion group. For
example, if three kinds of tool are assigned to tool change system, the servo tool motion group has three
axes data. This means three axes data are recorded when servo tool position is thought.

(Ex. The position data of tool1 which is assigned to first axis)


GP1: UF : 0, UT : 1, Config : 'N, 0, 0, 0',
X = 1879.25 mm, Y = -1035.37 mm, Z = 162.65 mm,
W = -178.67 deg, P = -13.68 deg, R = -37.32 deg
GP2: UF : 0, UT : 1,
J1 = 10.00 mm J2 = 0.00 mm J3 = 0.00 mm

Please note that this position data has not only tool 1 data but also tool 2 and tool 3 data. This means this
position data can move tool 2 and tool 3. If tool 2 is attached, tool 2 moves to 0mm position. This
specification is for the flexibility of the program. But, if the user attaches different tool, it may cause
interfere of tool. To prevent this problem, please specify different tool number to the tool close direction for
each tool.
By this function, the position data for each tool has the different tool number. Because of this, even if the
user execute the program with different tool, the program is stopped by “INTP-253 Tool frame number
mismatch”.

- 279 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

32.9.2 Sample Program


Sample program
: [Explanation]
2: TOOL ATTACH[1] 2:Attach tool1.
3: UTOOL_NUM=1 3:Change tool frame number to 1.
: :
11:J P[11] 100% FINE 11:Handle with tool1.
12:L P[12] 100mm/sec FINE 12:Handle with tool1.
13:J P[13:Approach] 100% FINE 13:Move to approach position.
Move with tool
14:L P[14:Tool1 set] 100mm/sec FINE 14:Set tool1 to tool stocker.
number 1.
15: TOOL DETACH[1] 15:Detach tool1.
16:L P[13:Approach] 100mm/sec FINE 16:Release tool1.
: :
21:J P[21:Approach] 100% FINE
22:L P[22:Tool2] 100mm/sec FINE
23: TOOL ATTACH[2] 23:Attach tool2.

24: UTOOL_NUM=2 24:Change tool frame number to 2.


25:L P[23:Approach] 100mm/sec FINE
26:J P[24] 100% FINE 26:Handle with tool2. Move with
27:L P[25] 100mm/sec FINE 27:Handle with tool2. tool number 2.
: :
99: END 99:Normal end

NOTE
This is sample program. Create the program related to your system.

32.10 CONSTRUCTION OF SERVO TOOL CHANGE SCREEN


INITIAL SETUP SCREEN(This screen can be displayed at CONTROL START
Menu.)
Group 1
Group 2
TOOL CHANGE
MENU Servo tool initial setup screen F2:GROUP

F3:TOOL_CFG F2:END

Servo tool configuration screen

- 280 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION

SETUP SCREEN
6. SETUP Tool Change
MENU F1[TYPE]

(Tool number1) (Tool number 2) Group 1


Group 2
Tool Change list screen Tool Change list screen F2:GROUP
F3:TOOL
F3:DETAIL F3:LIST F3:DETAIL F3:LIST

Tool change setup detail Tool change setup detail

STATUS SCREEN
4. STATUS Tool Change
MENU F1[TYPE]

Group1
Group 2
F3:TOOL
Tool change status screen Tool change status screen F2:GROUP

32.11 TOOL CHANGE INITIAL SETUP


The following explains how to make initial settings required for tool change system installation.

NOTE
The setup procedure explained below is required just once when the system is
installed. Once settings are made, they need not be changed in ordinary use.

32.11.1 Setting Motion Parameters for Servo Tool Axes


Set tool axes used for the tool change function within each operation group according to the procedure
below.

• 1st to 4th axes: Independent axis setting procedure

32.11.2 Assigning Tool Numbers to Servo Tool Axes


Open the servo tool initial setup screen from the controlled start menu, and set the following:

1 Turn off the power. While holding the PREV key and the NEXT key, turn on the power.
2 After a while, the following screen appears. Select 3, Controlled start.

- 281 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

System version: V8.1035 2/10/2012

---------- CONFIGURATION MENU ----------

1. Hot start
2. Cold start
3. Controlled start
4. Maintenance

Select >

3 After a while, the controlled start screen appears as follows.

Tool Setup
1/6
1 F Number F00000
2 KAREL Prog in select menu YES
3 Remote device: UserPanel
4 Intrinsically safe TP: NO

[ TYPE ] HELP

4 Press the MENU key to display the screen menu.


5 Select 0, NEXT then 4, TOOL CHANGE. The servo tool initial setup screen on the next page appears.

Motion Group Input the operation group number with which servo tools are set.
Tool Change Enable or disable the tool change function.

SETUP TOOL CHANGE


1/2

1 Motion group: 2
2 Tool Change: ENABLE

[ TYPE ] GROUP TOOL_CFG

The tool change function switches servo tools that are set within the same operation group. Note that it is
impossible to switch between tools that are set in different operation groups.

6 Press F3, TOOL_CFG, then the servo tool configuration screen is displayed.

SETUP TOOL CHANGE


Tool Change / Group:2 1/3
Comment
1 J1: TOOL[ 1:Part A ]
2 J2: TOOL[ 2:Part B ]
3 J3: TOOL[ 3:Part C ]

[ TYPE ] END

Set the items listed below for the tool axes included in the selected operation group.
- 282 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION
If there is no problem with using the standard settings, the standard settings need not be modified.

TOOL Set a number from 1 to 4.


Comment Set a comment on the tool number.
You can also set a comment on the tool change setup screen after cold start.

To change multi-axis servo tool, assign the tool number to multiple axes.

NOTE
• The tool number must be assigned to successive axes for multi-axis servo tool
change.
• Four (or more)-axis servo tool cannot be changed.
• The servo tool cannot be changed to the one with a different number of axes.

32.11.3 Setting System Variables


To use servo guns on a system with the servo tool change function installed, set the following system
variables to TRUE.

1. $SGCFG[equipment number of servo gun].$DUAL_AXIS[1] = FALSE -> TRUE


2. $SGCFG[1].$DUAL_AXIS[2] = FALSE -> TRUE

NOTE
The setting 1 must be done for all servo gun equipment.

32.12 TOOL CHANGE REFERENCE POSITION SETUP METHOD


(BATTERY-LESS TYPE)

32.12.1 Reference Position Setup for Calibration Types 3 and 4


Reference Position Setup Program
Create the following program to calculate the reference position based upon the sign of the calculated touch
torque.

NOTE
Only the servo tool axis operation group can be used as the operation group of the
program to be used for setting the reference position.
Example) When the servo tool axis operation group is the 2nd group:
The operation group becomes [*,1,*,*,*,*,*,*].

- 283 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

Sample Program Operation Group=[*,1,*,*,*,*,*,*]


[Explanation]
1: J P[1:ZERO POS] 10% FINE 1: Servo tool axis 0 position (The position need not
necessarily be the 0 position.)
(when sign of touch torque is plus) 2: As the touch torque in the skip condition, set the
2: SKIP CONDITION $MISC[g].$HPD_TRQ[ga] > 2 *1) threshold value of the torque from which arrival at the
(when sign of touch torque is minus) limit can be detected when the tool moved in the
2: SKIP CONDITION $MISC[g].$HPD_TRQ[ga] < -2 *1) negative direction of manual feed touches the limit.
Pay attention to the sign of the touch torque.
3: J P[2:TOOL OPEN END] 1% *2) FINE ACC 100 3: Move the tool in the negative direction of manual feed
*3)SKIP, LBL[1],PR[1]=JPOS to touch the limit. If detection fails, jump to LBL[1].
4: END 4: Normal end
5: LBL[1] 5: Jump to here if torque cannot be detected.
6: UALM[1] 6: Generate user alarm.

NOTE
The above is merely a sample program. Create programs to suit the requirements
of your system.
g: Operation group number of currently attached tool
ga: Axis number of currently attached tool
If the currently attached servo tool axis is taken as the 1st axis of the 2nd group,
then g and ga are as follows: g=2, ga=1

Program Operation Adjustment Method


Adjust the value at the shaded section in the sample program to adjust program operation. Operation
adjusted here is used as calibration motion that is carried out when attaching the tool.

*1) Touch torque


Increase the value from about ±2, and calculate the value at which erroneous detection of contact does
not occur.
The sign of touch torque is the sign that is currently displayed at Touch torque in the following
Calibration Setup screen.

NOTE
After confirming the sign in this screen, teach it to the program. Do not make a
mistake when entering the sign. If you do so, contact with the open limit may not
be detected.

SETUP TOOL CHANGE


Tool Change / Group:2 Tool:1 9/9
1 Comment: [ ]
2 Attach signal: DI [ 1]
3 Identify signal: DI [ 2]
4 Battery: OFF
5 Calibration motion type: [TYPE 4]
Calibration Motion Setup
6 Calibration Speed(%): 100
7 Acc Value: ACC100
8 Position register index: PR[ 1]
9 Touch torque(%): (+) 5.000

[ TYPE ] LIST

*2) Program operation speed

- 284 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION
To set the same calibration motion that is carried out when attaching the tool, execute this program at
the same override (normally, 100%) as when the attach instruction is executed for the tool used during
actual production. For this reason, reduce the program operation speed so that contact is made with the
open limit at a safe speed even if the program is executed at a high override.
For added safety, increase the program operation speed value successively from 1%.
*3) Accelerate rate
Decrease the accelerate rate if motion is quick even if the program operation speed is 1%.

Reference Position Setup


After you have adjusted operation in the program, execute the program to bring the servo tool axis into
contact with the open limit.
Set up the reference position according to the procedure described in 32.12.3 with the servo tool contacting
the open limit.

Tool Change Setup


To set operation in the newly adjusted program to the same motion as calibration motion that is carried out
when attaching the tool, reflect the program operation speed, accelerate rate and touch torque adjustment
values in the tool change setup.
1 Press the MENU key to display the screen menu.
2 Select 6 SETUP.
3 Press F1, [TYPE] to display the screen selection menu.
4 Select Tool Change. The Tool Change Setup List screen appears.
5 Select the tool to be adjusted from this list, and press F3, DETAIL to display the Tool Change Details
Setup screen.
6 Set the operation speed, accelerate rate and touch torque adjustment values at the shaded sections in
the following screen:

SETUP TOOL CHANGE


Tool Change / Group:2 Tool:1 9/9
1 Comment: [ ]
2 Attach signal: DI [ 1]
3 Identify signal: DI [ 2]
4 Battery: OFF
5 Calibration motion type: [TYPE 3]
Calibration Motion Setup
6 Calibration Speed(%): 100
7 Acc Value: ACC100
8 Position register index: PR[ 1]
9 Touch torque(%): (+) 5.000

[ TYPE ] LIST

32.12.2 Reference Position Setup for Calibration Types 5 and 6


Provision of Detection Signal
With calibration types 5 and 6, the position where the detection signal is input is taken as the reference
position during quick mastering.
The user must install a limit switch for providing the detection signal capable of assuring the absolute
position of the tool.

Reference Position Setup Program


Create the following program to calculate the reference position based upon the provisioned detect signal.

- 285 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

NOTE
Only the servo tool axis operation group can be used as the operation group of the
program to be used for setting the reference position.
Example)
When the servo tool axis operation group is the 2nd group: The operation group
becomes [*,1,*,*,*,*,*,*].

Sample Program Operation Group=[*,1,*,*,*,*,*,*]


[Explanation]
1:J P[1:ZERO POS] 10% FINE 1: Servo tool axis 0 position (The position need not necessarily be the
2:SKIP CONDITION DI[ 1*1)] =ON 0 position.)
3:J P[2:SWITCH POS] 1% *2) FINE ACC100 2: Set turning ON of the provided detection signal as the scan
*3)SKIP, condition.
LBL[1],PR[1]=JPOS 3: Move tool to position where detection signal turns ON. (Jump to
4:END label[1] if the detection signal does not turn ON.)
5:LBL[1] 4: Normal end
6:UALM[1] 5: Jump to here if detection signal does not turn ON.
6: Generate user alarm

NOTE
The above is merely a sample program. Create programs to suit the requirements
of your system.

Program Operation Adjustment Method


Adjust the value at the shaded section in the sample program to adjust program operation.
Operation adjusted here is used as calibration motion that is carried out when attaching the tool.

*1) Detection Signal


Assign the provided detection signal to DI[ ] or RI[ ].
*2) Program Operation Speed
To set the same calibration motion that is carried out when attaching the tool, execute this program at
the same override (normally, 100%) as when the attach instruction is executed for the tool used during
actual production. For this reason, reduce the program operation speed so that the switch will not be
broken even if the program is executed at a high override.
For added safety, increase the program operation speed value successively from 1%.
*3) Accelerate rate
Decrease the accelerate rate if motion is quick even if the program operation speed is 1%.

Reference Position Setup


After you have adjusted operation in the program, execute the program to stop the servo tool axis at the
position where the detection signal turns ON.
Set up the reference position according to the procedure described in 32.12.3 as it is.

Tool Change Setup


To set operation in the newly adjusted program to the same motion as calibration motion that is carried out
when attaching the tool, reflect the program operation speed, accelerate rate and detection signal adjustment
values in the tool change setup.
1 Press the MENU key to display the screen menu.
2 Select 6 SETUP.
3 Press F1, [TYPE] to display the screen selection menu.
4 Select Tool Change. The Tool Change Setup List screen appears.
5 Select the tool to be adjusted from this list, and press F3, DETAIL to display the Tool Change Details
Setup screen.
6 Set the operation speed, accelerate rate and detection signal adjustment values at the shaded sections in
the following screen:
- 286 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION

SETUP TOOL CHANGE


Tool Change / Group:2 Tool:1 9/9
1 Comment: [ ]
2 Attach signal: DI [ 1]
3 Identify signal: DI [ 2]
4 Battery: OFF
5 Calibration motion type: [TYPE 5]
Calibration Motion Setup
6 Calibration Speed(%): 100
7 Acc Value: ACC100
8 Position register index: PR[ 1]
9 Detect signal: DI [ 1]

[ TYPE ] LIST

32.12.3 Quick Mastering Reference Position Setup


Calibration (quick mastering) is automatically carried out when the servo tool is changed. However, the
reference points must be set to each of the tools to enable automatic calibration. The reference points are set
with the robot in a cold start state.
Follow the procedure below to set the reference points:

1 Press the FCTN key to select 3 CHANGE GROUP. Change the operation group to the desired servo
tool group (e.g. 2nd group).
2 Press the MENU key to display the screen menu.
3 Press 0 NEXT and 6 SYSTEM.
4 Press F1, [TYPE] to display the Screen Selection menu.
5 If Master/Cal is not displayed in the menu, select Variables to display the system variables screen. Set
the $MASTER_ENB system variable to "1".
6 Select Master/Cal at 4. to display the calibration screen.
7 Select “5 SET QUICK MASTER REF” and F4, YES.
8 The message "Quick master reference point is set." is displayed. This indicates that setting of the
reference point is completed.

Be sure to set the group of Servo tool axis.

T1 G2 JOINT 10%

SYSTEM Master/Cal
TORQUE = [ON ]
1 FIXTURE POSITION MASTER
2 ZERO POSITION MASTER
3 QUICK MASTER
4 SINGLE AXIS MASTER
5 SET QUICK MASTER REF
6 CALIBRATE

Press 'ENTER' or number key to select.

[ TYPE ] LOAD RES_PCA DONE

- 287 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

32.13 TROUBLESHOOTING

32.13.1 The Attach Instruction is Executed when the Tool is not


Attached.
Phenomenon
The tool is not actually attached. So, a communications alarm such as "SRVO-068 DTERR alarm" occurs
on the Pulsecoder. Correct this by Remedy 1 or Remedy 2 below according to the present conditions.

Remedy 1
1 Turn the machine lock ON in the servo tool operation group (normally, group 2) in the Test Cycle
screen.
2 Move the robot by manual feed so that the robot and tool are physically attached.
3 Turn the controller OFF then ON again.

Battery-less tool (calibration motion types 1, 2)


4 The tool pulse values and mastering data are lost. So, first move the tool by manual feed to cancel the
"SRVO-075 Pulse not established" alarm.
5 Then, carry out tool zero position mastering and calibration manually.

Battery-less tool (calibration motion types 3, 4, 5, 6)


6 The tool pulse values and mastering data are lost. So, move the tool by manual feed to cancel the
"SRVO-075 Pulse not established" alarm.
7 Carry out tool zero position mastering and calibration manually. The tool 0 position may be an
approximate position.
8 Execute the detach instruction to temporarily detach the tool. Also, physically detach the tool from the
robot. Otherwise, the tool will not be calibrated at the next attach operation.
9 Execute the attach instruction again to attach the tool. Calibration this time is carried out at the
reference position to restore the position.

Battery mounted tool


10 The tool is attached and positioned, so it can be used as it is.

Remedy 2
1 Directly change the system variable to detach the tool. To do this, set the following system variable to
"0":
$SCR_GRP[servo tool operation group No. (normally, 2)].$AXISORDER[all 1 to 9] = 0
2 Turn the controller power OFF then back ON.
3 The robot starts up with the tool in a detached state. Move the robot by manual feed to physically
attach the robot and tool.
4 Execute the attach instruction to attach the tool.
5 The tool can be used as it is after it is attached regardless of the battery type.

32.13.2 The Robot Stopped during Calibration.


Phenomenon
This phenomenon occurs only on battery-less tools. Note that the phenomenon and remedy vary according
to the preset calibration type.

Battery-less tool (calibration motion types 1, 2)


The "TOOL-012 Tool mastering data is lost" alarm has occurred.

- 288 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION
Battery-less tool (calibration motion types 3, 4, 5, 6)
Alarm has not occurred.

Remedy
Calibration motion types 1, 2
1 The tool pulse values and mastering data are lost. So, first move the tool by manual feed to cancel the
"SRVO-075 Pulse not established" alarm.
This alarm may not be occurring. If so, skip this step and proceed to step 2.
2 Then, carry out tool zero position mastering and calibration manually.

Calibration motion types 3, 4, 5, 6


1 Tool operation can be resumed as it is.

32.13.3 Calibration Motion Failed.


Phenomenon
The "TOOL-020 Calibrate motion is failed" alarm occurred.
This phenomenon occurs only when the calibration motion type is 3, 4, 5 or 6 on a battery-less tool.
This alarm occurs when the touch torque or detection signal conditions are not satisfied during calibration.
In both of the following Remedies 1 and 2, the tool is calibrated again. So, calibration motion will fail again
if the touch torque or detection signal conditions are not satisfied. Before you remedy this phenomenon,
make sure that the touch torque or detection signal conditions are correct.

Remedy 1
Carry out steps 6 to 9 of Subsection 32.13.1 Remedy 1.

Remedy 2
Same as Remedy 2 of Subsection 32.13.1.

32.13.4 A Different Tool from that Specified by the Attach Instruction


is Attached.
Phenomenon
The tool is attached to the robot, but the tool's current position is the wrong value. On a battery-less tool, an
alarm may cause the robot to stop during calibration.

Remedy
The following describes an example where tool 2 (actually attached tool) is attached to tool 1 (tool No.
taught by the attach instruction).

1 In this state, the tool cannot be detached from the robot by the detach instruction. So, directly change
the system variable to detach the tool. To do this, set the following system variable to "0":

$SCR_GRP[servo tool operation group No. (normally, 2)].$AXISORDER[all 1 to 9] = 0

2 Turn the controller power OFF then back ON.


3 The tool starts up in a detached state.
4 Execute the TOOL ATTACH[2] instruction to attach tool 2. (In this state, tool 2 should be physically
connected to the robot.)

When tool 2 is a battery-less tool and the calibration motion type is 1 or 2:


If tool 2 is moved when attached by mistake instead of tool 1, tool 2 will move and be at a position
different to when it was detached. So, tool 2 may be calibrated to the wrong position by the attach
- 289 -
32. SERVO TOOL CHANGE FUNCTION B-83284EN-2/01

instruction executed in step 4 above, resulting is misalignment between its actual and desired positions.
In this case, carry out tool zero position mastering and calibration manually.

When tool 2 is other than the above:


Tool 2 can be used as it is.

5 Tool 1 can be used as it is by executing the attach instruction to attach the tool.

32.13.5 The Attached Tool has been Detached by Mistake (without


Using the Detach Instruction).
Phenomenon
The tool is not actually attached. So, a communications alarm such as "SRVO-068 DTERR alarm" occurs
on the Pulsecoder. Correct this by Remedy 1 or Remedy 2 below according to the present conditions.

Remedy 1
Same as Remedy 1 of Subsection 32.13.1
Remedy 2
Same as Remedy 2 of Subsection 32.13.1

32.13.6 The Tool Axis of a Detached Tool has Moved.


Phenomenon
Battery-less tool (calibration motion types 1, 2):
Misalignment has occurred. Misalignment occurs as a result of calibration at the wrong position when the
tool is attached with the tool axis having moved to a different position. Note, however, that misalignment
does not occur when tool axis movement is within the allowable errors indicated below.
The allowable error must fall within the respective following ranges for the direct-acting axis and rotary
axis:
Direct-acting axis: ±(gear ratio/2)mm or less around the detach position
Rotary axis: ±((360/gear ratio)/2)deg or less around the detach position

Other instances:
No problem has occurred.

-Remedy
Battery-less tool (calibration motion types 1, 2):
1 Execute the attach instruction to attach the tool.
2 If misalignment occurs, carry out tool zero position mastering and calibration manually.

32.13.7 The Battery Voltage has Fallen.


Phenomenon
The "SRVO-065 BLAL" alarm has occurred with the tool in an attached state.

Remedy
1 Change the battery with the tool attached.
2 The tool can be used as it is.

- 290 -
B-83284EN-2/01 32. SERVO TOOL CHANGE FUNCTION

32.13.8 The Battery Ran Low while the Tool was Detached.
Phenomenon
The "SRVO-062 BZAL" and "SRVO-075 Pulse not established" alarms occurred when the tool was
attached.

Remedy
When the reference position has not been set:
1 Press F3:RES_PCA in the Calibration screen, and select YES.
2 Turn the controller OFF then ON again.
3 Move the tool by manual feed to cancel the "SRVO-075 Pulse not established" alarm.
4 Carry out tool zero position mastering and calibration manually.

When the reference position has been set:


1 Press F3:RES_PCA in the Calibration screen, and select YES.
2 Turn the controller OFF then ON again.
3 Move the tool by manual feed to cancel the "SRVO-075 Pulse not established" alarm.
4 Move the tool by manual feed to the reference position marked by a line marking or alignment mark.
5 Execute “3 QUICK MASTER” in the Calibration screen.

Carry out quick mastering at the


reference position marked by a
line marking or alignment mark.

- 291 -
33. OPERATION WITHOUT SHIFT FUNCTION B-83284EN-2/01

33 OPERATION WITHOUT SHIFT FUNCTION


This function makes it possible to operate without shift key in case operation robot by Teach Pendant.
Robot operation without shift function (J591) makes it possible to operate both jog operation and test
execution operation without shift key. And jog operation without shift function (J739) makes it possible to
operate only jog operation without shift key.

- The spec of the way to move the robot by jog feed differs with spec that is described in “Procedure
33-1 Moving the robot by jog feed” in basic canto of operator manual in case either “Robot operation
without shift key function(J591)” or “Jog operation without shift function” is installed.
- The spec of the way of test execution differs with spec that is described in “Procedure 33-2 Step test”
and “Procedure 33-3 Continuous test(using the teach pendant)”in basic canto of operator manual in
case either “Robot operation without shift key function(J591)” is installed.

Those operations should be replaced with operations that is described following.

33.1 JOG OPERATION WITHOUT SHIFT


It is possible to operate jog without shift key in case “J591 Robot operation without shift function” or “J739
Jog operation without shift function” is installed to the controller that differs from normal spec. Please
submit to following procedure in case you operate jog.

Procedure 33-1 Moving the robot by jog feed (in case robot operation without shift
key function or jog operation without shift key function is installed)
Condition
- The teach pendant must be enabled.
- The system must be in the operation enable state.
- Do not enter the operating area. Do not put any obstacles within the work area.
- Option software “J591 Robot operation without shift” or “J739 Jog operation without shift” is installed.

WARNING
Before you jog the robot be sure that all safety requirements for the work area are
satisfied. Otherwise, injury or property damage could occur.

Step
1 Press the COORD key to display a desired manual-feed coordinate system on the teach pendant.
2 Press the override key to adjust the jog feed rate displayed on the teach pendant.
3 Hold the teach pendant and press the deadman switch on the back of the teach pendant. Continue
pressing the deadman switch during jog feed.
4 Turn on the teach pendant enable switch.

NOTE
1 If the deadman switch is released when the teach pendant enable switch is on, an
alarm occurs. To reset the alarm, press and hold down the deadman switch again,
then press the RESET key on the teach pendant.
2 If the operator is not accustomed to the operation of the robot or is not sure about
the robot motions, low federate overrides should be set.

- 292 -
B-83284EN-2/01 33. OPERATION WITHOUT SHIFT FUNCTION

WARNING
The robot starts its motion in the next step. If the jog feed of the robot needs to be
stopped in an emergency in the order to avoid danger, the operator should release
the deadman’s switch or press the emergency stop button.

5 To move the robot by jog feed, press the jog key correspond to the desired robot motion direction. It is
not necessary to press SHIFT key. And robot is stopped if all jog keys are released but robot isn’t
stopped even if SHIFT key is released.

NOTE
When the override is FINE or VFINE, press the jog key and release it every time
for each motion.

Switch to wrist joint feed


6 Press the FCTN key. The function menu is displayed.
7 Select 5,TOGGLE WRIST JOG. The mark,[W/],is displayed to show the wrist joint jog mode. To
release this mode, select 5,TOGGLE WRIST JOG again.

SAMPLE1 LINE 1 T2 ABORTED W/TOOL


30%
SAMPLE1
1/6

Switch to an extended axis


8 Press the FCTN key. The function menu is displayed.
9 Select 4,TOGGLE SUB GROUP. The jog control is switched from the robot standard axes to an
extended axis. The control will be returned when it is done.
10 To terminate jog feed, turn off the teach pendant enable switch and release the deadman switch.

33.2 TEST EXECUTION OPERATION WITHOUT SHIFT


It is possible to operate test execution without shift key in case “J591 Robot operation without shift
function” is installed to the controller that differs from normal spec. Please submit to following procedure in
case you operate test execution.

Procedure 33-2 Step test (in case robot operation without shift key function is
installed)
Condition
- Option software “J591 Robot operation without shift” is installed.
- The teach pendant must be enabled.
- The single-step must be set.
- The system must be in the operation enable state.
- No one must be in the operation area. No obstacle must be placed in the operation area.

Step
1 Press the SELECT key. The program selection screen is displayed.
2 Select the program to be tested and press the ENTER key. The program edit screen is displayed.
3 Press the STEP key to select the step mode. The STEP LED lights. (Check that the STEP LED lights
when the STEP key is pressed.)
4 Move the cursor to the program start line.
5 Press and hold down the deadman switch, then turn on the teach pendant enable switch.
- 293 -
33. OPERATION WITHOUT SHIFT FUNCTION B-83284EN-2/01

WARNING
The execution of the program instructions starts in the next step. The execution
causes the robot to make a motion, witch may produce unpredictable results. The
operator should check that no persons and no unnecessary equipment is in the
work area and that each part of the protective fence is sound. Otherwise, injury or
property damage would occur. If the program needs to be stopped before it
terminates, the operator should release the FWD/BWD key or deadman switch or
press the HOLD or emergency stop button.

6 Start the program.


- To perform forward execution of the program, press and hold down the FWD key, it is not necessary to
press SHIFT key. Press and hold down the FWD key until execution of the program is completed.
Program is paused if the FWD key is released during program execution.
- To perform backward execution of the program, press and hold down the BWD key, it is not necessary
to press SHIFT key. Press and hold down the BWD key until execution of the program is completed.
Program is paused if the BWD key is released during program execution.
7 After one line of the program is executed, the program is halted.
- When a motion instruction is executed, the cursor stops at the executed line. The next time forward
execution of the program is performed, the next line of the program is executed.
- When a control instruction is executed, the cursor moves to the next line.
8 To release the step mode, press the STEP key.
9 Turn off the teach pendant enable switch, then release the deadman switch.

Procedure 33-3 Continuous test (using the teach pendant) (in case robot operation
without shift key function is installed)
Condition
- The teach pendant must be enabled.
- The continuous mode must be set.
- The system must be in the operation enable state.
- No one must be in the operation area. No obstacle must be placed in the operation area.
- Option software “J591 Robot operation without shift” is installed.

Step
1 Press the SELECT key. The program selection screen is displayed.
2 Select the program to be tested and press the ENTER key. The program edit screen is displayed.
3 Set the continuous mode. Check that the STEP LED is off. (If the STEP lamp is on, press the STEP key
to turn it off.)
4 Move the cursor to the program start line.
5 Press and hold down the deadman switch, then turn on the teach pendant enable switch.
WARNING
The execution of the program instructions starts in the next step. The execution
causes the robot to make a motion, witch may produce unpredictable results. The
operator should check that no persons and no unnecessary equipment is in the
work area and that each part of the protective fence is sound. Otherwise, injury or
property damage would occur. If the program needs to be stopped before it
terminates, the operator should release the FWD key or deadman switch or press
the HOLD or emergency stop button.

6 Press and hold down the FWD key (it is not necessary to press SHIFT key). Hold down the FWD key
until the execution of the program is completed. When the FWD key is released, the program is halted.
The program is executed to the end, then forcibly terminated. The cursor is returned to the first line of
the program.
- 294 -
B-83284EN-2/01 34. HIGH SPEED SHIFT KEY FUNCTION

34 HIGH SPEED SHIFT KEY FUNCTION


It is possible to operate “High speed SHIFT operation” that is operation that switches speed override to
specific value temporary at T1 mode by pressing SHIFT key. This function makes it enable to change
moving speed of robot high in a moment. It is impossible to use this function at T2 mode.

NOTE
This function is option function. It is necessary to install “J592 high speed SHIFT
key function” too to use this function.

34.1 SETUP FOR HIGH SPEED SHIFT KEY FUNCTION


It is possible to setup the speed override during high speed SHIFT operation. Please input the value of speed
override (default value is 0) should be during high speed SHIFT operation to $HSP_SHIFT.$HSP_OVRD.
It is possible to input 0-100 but 0 means disable high speed SHIFT function.

NOTE
Speed override is clamped to upper limit in case there is setting upper limit of
speed override and value of $HSP_SHIFT.$HSP_OVRD is higher than this value.
The speeds at the tool tip and flange surface are limited to 250 mm/sec or slower
at T1 mode. So there is no situation that speed exceed 250 mm/sec by this
function.

34.2 HIGH SPEED SHIFT JOG OPERATION


It is possible to change moving robot speed high during jog operation by pressing SHIFT key. Please refer
to following procedure.

NOTE
This operation is operation as its premise of installing option software “J591 Robot
operation without shift function” or “J739 Jog operation without shift”, so this
operation differs from normal spec.

Procedure 34-1 High speed SHIFT jog operation


Condition
- 3 Mode switch is T1 mode.
- Value of system variable $HSP_SHIFT.$HSP_OVRD is 1-100.
- Speed override isn’t either FINE or VFINE.

Step
1 Hold the teach pendant and press the deadman switch on the back of the teach pendant. Continue
pressing the deadman switch during jog feed.
2 Turn on the teach pendant enable switch.
3 Release SHIFT key in case shift key is pressed and hold.

- 295 -
34. HIGH SPEED SHIFT KEY FUNCTION B-83284EN-2/01

WANING
Next operation changes the speed of robot moving. Next operation must be
executed after you ensure safety. Stop robot moving immediately in case the robot
moves with speed that you don’t forecast.

4 Press SHIFT key during jog operation. Speed override will be change to value of system variable
$HSP_SHIFT.$HSP_OVRD ( default value is 100) with back color is changed from green to yellow
during SHIFT key is being pressed. This operation is called for “high speed SHIFT jog operation”.

NOTE
It is impossible to operate high speed SHIFT jog operation in case speed override
is “FINE” or “VFINE”. Because “FINE” or “VFINE” jog is called inching jog, so these
jogs are not sequence jog operation.
Override changing operation(ex. Pressing override key) is canceled during high
speed SHIFT operation.

5 High speed SHIFT operation is end and speed override is restored to the value of override before high
speed SHIFT operation if SHIFT key is released or jog operation is end during high speed shift
operation. But high speed SHIFT operation is end without speed override is restored in case the value
of override before high speed SHIFT operation is higher than during high speed SHIFT operation.

34.3 HIGH SPEED SHIFT TEST EXECUTION OPERATION


It is possible to switch speed of robot moving during test execution by pressing SHIFT key in only T1 mode.
Please refer to following procedure.

NOTE
This operation is operation as its premise of installing option software “J591 Robot
operation without shift function”, so this operation differs with normal spec.

Procedure 34-2 High speed SHIFT test execution operation


Condition
- 3 Mode switch is T1 mode.
- Value of system variable $HSP_SHIFT.$HSP_OVRD is 1-100.

Step
1 Press the SELECT key, The program selection screen is displayed.
2 Select the program to be tested and press the ENTER key. The program edit screen is displayed.
3 Move the cursor to the program start line.
4 Press and hold down the deadman switch, then turn on the teach pendant enable switch.
5 Execute program by Pressing and holding down the FWD/BWD key.
6 Release SHIFT key in case shift key is pressed and hold.

WANING
Next operation may change the speed of robot moving. Next operation must be
executed after you ensure safety. Stop robot moving immediately in case the robot
moves with speed that you don’t forecast.

7 Press SHIFT key during test execution operation. Speed override will be change to value of system
variable $HSP_SHIFT.$HSP_OVRD ( default value is 100) with back color is changed from green to
- 296 -
B-83284EN-2/01 34. HIGH SPEED SHIFT KEY FUNCTION
yellow during SHIFT key is being pressed. This operation is called for “high speed SHIFT execution
operation”.

NOTE
Override changing operation(ex. Pressing override key) is canceled during high
speed SHIFT operation.

8 High speed SHIFT operation is end and speed override is restored to the value of override before high
speed SHIFT operation if SHIFT key or FWD/BWD key is released during high speed shift operation.
But high speed SHIFT operation is end without speed override is restored in case the value of override
before high speed SHIFT operation is higher than during high speed SHIFT operation.

- 297 -
35. iRDiagnostics B-83284EN-2/01

35 iRDiagnostics
35.1 OVERVIEW
iRDiagnostics function consists of following three functions.

Robot Condition Detection Warn the users when abnormalities are detected in the reducers.
Servo Diagnosis Diagnose servo alarms to show possible causes of alarms.
Motion Profiler Show motion data (OVC, overheat, power consumption) of each program.

35.2 ROBOT CONDTION DETECTION


• This function detects abnormalities of reducers to help users decide time for preventive replacement in
order to minimize down time due to a problem in reducers.
• By posting warning, it warns the users of abnormality in reducer, detected by periodically analyzing
motion data.
• It requires creation of a diagnostic program, registration of initial data, and periodical execution of the
diagnostic program.
• The diagnostic program is created by giving base position and allowable motion range.
• This function supports R-2000iB and R-1000iA Series.
• If enough motion range is not given, motion data cannot be analyzed.
• In case of impulsion-induced rapid degradation, or failure in certain parts, reducer failure may not be
detected beforehand as abnormality.
• A failure due to aging may also progress rapidly in a few days before failure. Run the diagnostic
program periodically, around once a day.

35.2.1 Setup
This function requires creation of diagnostic program.
Create diagnostic program with following procedure.
1. Jog the robot to the base position, where diagnostic program starts and ends.
2. Press MENU.
3. Select “UTILITIES”.
4. Press F1, [TYPE].
5. Select “Robot Condition”.

Robot Condition
Detection Program Creation 1/9
Base Program Name
DIAG
Group Number: 1
Base Position: (not recorded)
Motion Range
MIN(rel) BASE MAX(rel)
J1:- 0.000<- 0.000->+ 0.000
J2:- 0.000<- 0.000->+ 0.000
J3:- 0.000<- 0.000->+ 0.000
J4:- 0.000<- 0.000->+ 0.000
J5:- 0.000<- 0.000->+ 0.000
J6:- 0.000<- 0.000->+ 0.000

[ TYPE ] CREATE

- 298 -
B-83284EN-2/01 35.iRDiagnostics

6. Enter to “Base Program Name” the name of the diagnostic program to be created.
Group number will be added to the base name to create program name.
Please make the base program name not more than 34 letters.
7. Enter to “Group Number” the number of the group for analysis.
8. Move the cursor over “Base Position”, and press F4, RECORD with SHIFT key.
9. Enter allowable motion range of each axis in degrees.
For each axis, enter allowable motion range relative to the base position, both MIN and MAX.
The robot will move axis by axis, one axis at a time.
The axis without wide enough motion range cannot be analyzed.
10. Set to AUTO mode and disable TP.
Set override to 100%.
11. Press F2, CREATE with SHIFT key.

A program will be created with group number added to the Base Program Name.
Do not edit the created program.

NOTE
Please run the program with low override to assure safety of the program.

Next, follow the procedure for the registration of the initial data.
1. Run the created program with 100% override (run with low override beforehand to assure safety).
2. Press MENU.
3. Select “STATUS”.
4. Press F1, [TYPE].
5. Select “Robot Condition”.

Robot Condition
Detection Status
GRP[1]

J1 : NORMAL
J2 : NORMAL
J3 : NORMAL
J4 : NORMAL
J5 : NORMAL
J6 : NORMAL

[ TYPE ] GROUP DETAIL MASTER

6. If upper right display of GRP[] does not show the group for analysis, press F2, GROUP and enter the
group number.
7. Press F4, MASTER key.
8. Enter –1 (all axes) when prompted to enter the axis number.
9. A message will ask to confirm removal of previous data and use of current data as base data.
“Please confirm to use current data as baseline data? Please note previous history will be removed after
master.”
Select [YES]
The latest analysis data is registered as base line data.
The axis not registered, shown with *s was not given enough motion range to analyze the condition.

35.2.2 Execute Program


After the base line data is registered, the latest data is analyzed every time diagnostic program is executed
with 100% override, and check if there are any abnormalities.
Run the program periodically to detect abnormality: for example, once a day.

- 299 -
35. iRDiagnostics B-83284EN-2/01

Make sure that the program is run under the same condition as the time the baseline data was recorded, such
as load.

If abnormality is detected, following warning will be posted,


“SRVO-394 Reducer Abnormal (Gn, Aa)”
where n is the group number and a is the axis number.
Abnormality is detected in corresponding axis. Please plan replacement.

35.2.3 Robot Condition Detection Status


Current condition can be viewed at Robot Condition Detection Status.
To view Robot Condition Detection Status,
1. Press MENU.
2. Select “STATUS”.
3. Press F1, [TYPE] key.
4. Select “Robot Condition”.
Robot Condition Detection Status shows condition of each axis.
Moving the cursor over an axis and pressing F3, DETAIL will show the time of registration of the base line
data and time of analysis of the latest data.

35.2.4 After Replacement


When reducer is replaced, corresponding base line data need to be re-registered.
Follow the procedure to re-register the data.
1. Run the diagnostic program with 100% override. (Run with low override beforehand to assure safety.)
2. Press MENU.
3. Select “STATUS”.
4. Press F1, [TYPE].
5. Select “Robot Condition”.
6. If upper right display of GRP[] does not show the group for analysis, press F2, GROUP and enter the
group number.
7. Move the cursor over the axis of replacement, and press F3, DETAIL.
8. Check that the time of the Latest is the time diagnostic program was run in step 1.
9. Press F4 MASTER.
10. Enter the axis of replacement when prompted to enter the axis number.
11. A message will ask to confirm removal of previous data and use of current data as base data.
“Please confirm to use current data as baseline data? Please note previous history will be removed after
master.”
Select [YES].
12. Press F3, DETAIL and check that time of the Base is updated.

The new base line data is registered.

35.3 SERVO DIAGNOSIS


• This function diagnoses alarms posted, and list probable causes, aiming to decrease down time before
resetting alarm.
¾ This function estimates where the problem is, based on the alarm posted and internal information
acquirable by software. However, it may not be able to estimate the problem in some cases such as
if problem rises where software cannot acquire information. Please use it to help solve problem
when alarm is posted.
• When servo alarm is posted, follow the procedure to perform Servo Diagnosis.
(Alarm Posted.)
- 300 -
B-83284EN-2/01 35.iRDiagnostics

1. Press MENU.
2. Select “ALARM”. “Alarm: Active” would be displayed.
3. Press FCTN with i key and select "Servo Diagnosis" in the "Related Views" menu.
The causes of the alarm would be listed. If name of a part appears, please refer to the corresponding
item in the maintenance manual of controller or mechanical unit to check if there is any problem.

• The alarms covered by this function are following:


¾ SRVO-001 Operator panel E-Stop
¾ SRVO-005 Robot overtravel
¾ SRVO-006 Hand broken
¾ SRVO-009 Pneumatic pressure alarm
¾ SRVO-018 Brake abnormal (G:%d A:%d)
¾ SRVO-021 SRDY off (Group:%d Axis:%d)
¾ SRVO-022 SRDY on (Group:%d Axis:%d)
¾ SRVO-023 Stop error excess (G:%d A:%d)
¾ SRVO-024 Move error excess (G:%d A:%d)
¾ SRVO-036 Inpos time over (G:%d A:%d)
¾ SRVO-038 Pulse mismatch (G:%d A:%d)
¾ SRVO-043 DCAL alarm (Group:%d Axis:%d)
¾ SRVO-044 DCHVAL alarm (PS) (Group:%d Axis:%d)
¾ SRVO-045 HCAL alarm(Group:%d Axis:%d)
¾ SRVO-046 OVC alarm (Group:%d Axis:%d)
¾ SRVO-047 LVAL alarm(Group:%d Axis:%d)
¾ SRVO-049 OHAL1 alarm (Grp:%d Ax:%d)
¾ SRVO-050 Collision Detect alarm (G:%d A:%d)
¾ SRVO-051 CUER alarm(Group:%d Axis:%d)
¾ SRVO-055 FSSB com error 1 (G:%d A:%d)
¾ SRVO-056 FSSB com error 2 (G:%d A:%d)
¾ SRVO-057 FSSB disconnect (G:%d A:%d)
¾ SRVO-062 BZAL alarm(Group:%d Axis:%d)
¾ SRVO-064 PHAL alarm(Group:%d Axis:%d)
¾ SRVO-067 OHAL2 alarm (Grp:%d Ax:%d)
¾ SRVO-068 DTERR alarm (Grp:%d Ax:%d)
¾ SRVO-069 CRCERR alarm (Grp:%d Ax:%d)
¾ SRVO-070 STBERR alarm (Grp:%d Ax:%d)
¾ SRVO-071 SPHAL alarm (Grp:%d Ax:%d)
¾ SRVO-072 PMAL alarm(Group:%d Axis:%d)
¾ SRVO-073 CMAL alarm(Group:%d Axis:%d)
¾ SRVO-074 LDAL alarm(Group:%d Axis:%d)
¾ SRVO-076 Tip Stick Detection(G:%d A:%d)
¾ SRVO-105 Door open or E.Stop
¾ SRVO-136 DCLVAL alarm (G:%d A:%d)
¾ SRVO-156 IPMAL alarm (G:%d A:%d)
¾ SRVO-157 CHGAL(PS) alarm (G:%d A:%d)
¾ SRVO-204 External(SVEMG abnormal) E-stop
¾ SRVO-205 Fence open(SVEMG abnormal)
¾ SRVO-206 Deadman switch (SVEMG abnormal)
¾ SRVO-213 E-STOP Board FUSE2 blown
¾ SRVO-214 6ch amplifier fuse blown(R:%d)
¾ SRVO-215 Brake Unit fuse blown(R:%d)
¾ SRVO-216 OVC(total) (%d)
¾ SRVO-233 TP OFF in T1,T2/Door open
¾ SRVO-235 Short term Chain abnormal
¾ SRVO-251 DB relay abnormal(G:%d A:%d)
¾ SRVO-252 Current detect abnl(G:%d A:%d)
- 301 -
35. iRDiagnostics B-83284EN-2/01

¾ SRVO-253 Amp internal over heat(G:%d A:%d)


¾ SRVO-277 Panel E-stop(SVEMG abnormal)
¾ SRVO-278 TP E-stop(SVEMG abnormal)
¾ SRVO-290 Dclink HC alarm(G:%d A:%d)
¾ SRVO-291 IPM over heat (G:%d A:%d)
¾ SRVO-292 EXT.FAN alarm (G:%d A:%d)
¾ SRVO-349 DCS MCC ON alarm %x,%x

35.4 MOTION PROFILER


Motion Profiler is a motion option provides important motion information for either total execution cycle or
each executed program line. This option enables the easy diagnosis of program performance for selected
program. The exact motion lines can be identified and then adjusted easily using this option so the desired
performance can be achieved.
The summary data for execution cycle provided by this option includes:
• Total Cycle Time
• Power Consumption
• Regenerative Power (if hardware is available)
• Steady-State OVC (the prediction if the same path running non-stop continuously)
• Long term Overheat
The detailed data shown in bar charts per program execution line includes:
• Execution Time per line
• Power usage per line
Due to the memory constraints of controllers, the motion profiler data for the extreme long program may be
overwritten and data may be missing. Please consider separating the very long program to reasonable
program sizes.

35.4.1 Setup
Motion profiler function will be turned off automatically after the selected program is aborted. Please
enable the function again if repeated result is necessary.
It is important that ambient temperature, special hardware option, and robot connection cable (RCC) length
for each robot group are entered correctly. The prediction and calculation result will be affected by these
settings.

Table 35.4.1 Menu items and descriptions for motion profiler’s setup menu
Item Description
Status Enable or disable Motion Profiler. This status will change to
disable automatically after the main program is aborted.
Main Program The main TP program to be used for Motion Profiler
Group Settings Group Number Group number
Ambient Temperature The ambient temperature for this robot
Robot Connection Cable The length of robot connection cable (RCC) for this robot
Length This number may be printed on the robot connection cable.
Hardware Configuration Any special hardware configuration for this robot. For
example, motor fan, motor cover, etc.

35.4.2 Results
The results of Motion Profiler function can be reviewed in either Status menu or directly go to the “related
view” from TP editor.
• Status screen
1. Press MENU.
- 302 -
B-83284EN-2/01 35.iRDiagnostics

2. Select STATUS.
3. Press F1, [TYPE].
4. Select Motion Profiler to review the summary data, and press F3, DETAIL to display the detail bar
chart with program name: line number as horizontal axis.
• Related view
1. Press SELECT.
2. Select TP program that Motion Profiler was enabled and press Enter.
3. In TP program editor, press i + FCTN key to display Related View menu.
4. Select Motion Profiler to review triple pane with TP editor, Motion Profiler summary, and Motion
Profiler detailed chart. Scrolling the cursor in the TP editor then Motion Profiler detailed chart
will update to current line data automatically. This will work in the sub program as well.

- 303 -
36. MENU UTILITY FUNCTION B-83284EN-2/01

36 MENU UTILITY FUNCTION


You can create your own teach pendant menus to help you application run more smoothly. To use your own
menus, first perform menu setup then call the menu macro program from a teach pendant program and
select the desired menu in the parameter.

See Fig. 36 for an example program and example menus.

1: Prompt Box Msg(‘NotAtPerch’) Prompt Box Msg


Robot is not at PERCH
2: Prompt Box YN(1,21) position
OK
3: IF R[21]=0,CALL ABORTIT

4: IF R[21]=1,CALL MOVEPRCH
5: End Prompt Box YN
Move to perch?
[YES] NO

Fig.36 Example for teach pendant program that uses menu utility function

Above example is in case position of robot isn’t in safe area. If macro program in line 1 “Prompt box
Msg(‘NotAtPerch’)” is implemented, prompt box message screen is displayed so that to make sure the
operator is aware of something. And if macro program in line 2 “Prompt Box YN(1.21)” is implemented,
prompt box yes/no screen is displayed, so that the teach pendant program pauses until the operator selects
YES or NO and presses ENTER. In this case, teach pendant program “MOVEPRCH” is called by line 3 is
implemented if YES is selected and teach pendant program “ABORT” is called by line 4 is implemented if
NO is selected. In this way prompt box message or menu is displayed so that it is possible to prompt the
operator to be caution or let the operator do work smoothly.

36.1 SETUP ABOUT MENU UTILITY


If you press MENU and select “6 SETUP” and select ”Menu Utility”, the following menu utility display
will be displayed. There are five menu type “Prompt box msg”, “Prompt box yes/no”, “Select from a list”,
“Status menus” and “Operator entry”.

SETUP Menu Utility


Choose a menu type: 1/5

1 Prompt box msg


2 Prompt box yes/no
3 Select from a list
4 Status menu
5 Operator entry

[ TYPE ] DETAIL CONFIG HELP

Each menu type corresponds with macro program as following table 1, so each behavior of macro program
will be changed if each setting of menu type is changed.

- 304 -
B-83284EN-2/01 36. MENU UTILITY FUNCTION
Table 36.1 Description for each menu utility screen item
ITEM Macro Program DESCRIPTION
Prompt box msg Prompt Box Msg (Menu) This item is used to make sure the operator is aware of
something. When a prompt box message screen is
displayed, the teach pendant program pauses until the
operator pressed ENTER.
Prompt box yes/no Prompt Box YN This item asks the operator a question that can be
(menu,answer_reg) answered YES or NO. When a prompt box yes/no screen is
displayed, the teach pendant program pauses until the
operator selects YES or NO and presses ENTER.
Select from a list List Menu(menu,answer_reg) This item asks the operator to select an item from a list of
items. When a list menu is displayed, the teach pendant
program pauses until the operator selects an item form the
list.
Status menus Status Menu(menu) This item displays status information to the teach pendant
screen. When a status menu is executed, the teach
pendant displays the status menu and then continues
executing. The values that are displayed are refreshed at
least once every second.
Operator entry Op. Entry Menu(menu) This item requires the operator to enter
INTEGER,REAL,BOOLEAN, or text values. When an
operator entry menu is executed, the program pauses until
the operator types the information and then presses F2
DONE.

36.1.1 Prompt Box Msg


A prompt box message menu is used to make sure the operator is aware of something. When a prompt box
message screen is displayed, the teach pendant program pauses until the operator presses ENTER. In
addition, when the prompt box is displayed, the operator cannot access any other menus.

Robot is not at PERCH


position
OK

Macro: Prompt Box Msg (menu)


A prompt box message menu uses the Prompt Box Msg(menu) macro.

Parameter 1: menu
This is the menu number or menu name. The menu can be chosen by number or name.

Usage example:
Example 1 (setting menu number to parameter):
PROG TEST1
1: Prompt Box Msg(2)

Example 2 (setting menu name to parameter):


PROG TEST2
1: Prompt Box Msg(‘NotAtPerch’)

Save Menu setting:


Each prompt box message menu is stored in its own variable file that begins with the prefix “MENU1”. The
next two characters of the filename are the menu number. For example, the prompt box message menu 1 is
stored in the variable file named “MENU101.VR”.
- 305 -
36. MENU UTILITY FUNCTION B-83284EN-2/01

Procedure 36-1 Setup Prompt Box Msg


Step
1. Press MENU and select ”6 SETUP” and select ”Menu Utility” so that Menu utility screen is displayed.

SETUP Menu Utility


Choose a menu type: 1/5

1 Prompt box msg


2 Prompt box yes/no
3 Select from a list
4 Status menus
5 Operator entry

[ TYPE ] DETAIL CONFIG HELP

2. Set cursor to “1 Prompt box msg” and press F2, DETAIL so that Prompt box msg menu will be
displayed. You will see a screen similar to the following.

SETUP Menu Utility


Prompt box msg menu 1/1
ITEM Menu no Menu name
1 1 NotAtPerch

[TYPE ] DETAIL CREATE HELP

3. Press F3, CREATE if you want to create new menu. Press F2, DETAIL if you want to change menu
that already exists. You will see a screen similar to the following.

SETUP Menu Utility


Prompt msg menu no: 2 1/6
Menu name:
Line Text
1
2
3
4
5

[ TYPE ] TEST HELP

4. Input menu name and message that you want to display. (ex. Setting menu no.2 as menu name
“NotAtPerch”)

- 306 -
B-83284EN-2/01 36. MENU UTILITY FUNCTION
SETUP Menu Utility
Prompt msg menu no: 2 1/6
Menu name: NotAtPerch
Line Text
1
2 Robot is not at PERCH
3 position
4
5

[ TYPE ] TEST HELP

5. Press F3, TEST if you want to confirm the message that will be displayed. You will see a screen
similar to the following.

SETUP Menu Utility


Prompt msg menu no: 2 1/6
Menu name: NotAtPerch
Line Text
1
2 Robot
Robotisisnot
notatatPERCH
PERCH
3 position
position
4
OK
5

[ TYPE ] TEST HELP

36.1.2 Prompt Box Yes/No Menu


A prompt box yes/no menu asks the operator a question that can be answered YES or NO. When a prompt
box yes/no screen is displayed, the teach pendant program pauses until the operator selects YES or NO and
presses ENTER. In addition, when the prompt box yes/no screen is displayed, the operator cannot access
any other menus.

Move to PERCH?

[YES] NO

Macro: Prompt Box YN (menu, answer_reg)


A prompt box yes/no menu uses the Prompt Box YN(menu, answer_reg) macro.

Parameter 1: menu
This is the menu number or menu name. The menu can be chosen by number or name.

Parameter 2: answer_reg
This is the register that will contain the answer from the operator.

Usage example:
Example 1 (setting menu number to parameter):
PROG TEST1
1: Prompt Box YN(2, 2)
- 307 -
36. MENU UTILITY FUNCTION B-83284EN-2/01

2: IF R[2] = 0, CALL ABORTIT

Example 2 (setting menu name to parameter):


PROG TEST2
1: Prompt Box YN(‘IsItSafe’, 6)
2: IF R[6] = 0, JMP LBL[5]

Save Menu setting:


Each prompt box yes/no menu is stored in its own variable file that begins with the prefix “MENU2”. The
next two characters of the filename are the menu number. For example, the prompt box message menu 1 is
stored in the variable file named “MENU201.VR”.

Procedure 36-2 Setup Prompt Box YN


Step
1. Press MENU and select ”6 SETUP” and select “Menu Utility” so that Menu utility screen is displayed.

SETUP Menu Utility


Choose a menu type: 1/5

1 Prompt box msg


2 Prompt box yes/no
3 Select from a list
4 Status menus
5 Operator entry

[ TYPE ] DETAIL CONFIG HELP

2. Set cursor to “2 Prompt box yes/no” and press F2, DETAIL so that Prompt box yen/no menu will be
displayed. You will see a screen similar to the following.

SETUP Menu Utility


Prompt box yes/no menu 1/1
ITEM Menu no Menu name
1 1 IsItSafe

[TYPE ] DETAIL CREATE HELP

3. Press F3, CREATE if you want to create new menu. Press F2, DETAIL if you want to change menu
that already exists. You will see a screen similar to the following.

- 308 -
B-83284EN-2/01 36. MENU UTILITY FUNCTION
SETUP Menu Utility
Prompt y/n menu no: 2 1/6
Menu name:
Line Text
1
2
3
4
5

[ TYPE ] TEST HELP

4. Input menu name and message that you want to display. (ex. Setting menu no.2 as menu name
“IsItSafe”)

SETUP Menu Utility


Prompt y/n menu no: 2 1/6
Menu name: IsItSafe
Line Text
1
2 Move to PERCH?
3
4
5

[ TYPE ] TEST HELP

5. Press F3, TEST if you want to confirm the message that will be displayed. You will see a screen
similar to the following.

SETUP Menu Utility


Prompt y/n menu no: 2 1/6
Menu name: IsItSafe
Line Text
1
2 Robot
Robotisisnot
notatatPERCH
PERCH
3 position
position
4
[YES] NO
5

[ TYPE ] TEST HELP

36.1.3 List Menu


A list menu asks the operator to select an item from a list of items. When a list menu is displayed, the teach
pendant program pauses until the operator selects an item from the list.

- 309 -
36. MENU UTILITY FUNCTION B-83284EN-2/01

USER
Cycle Interrupt

1 Continue
2 Abort Production
3 Select New Product

Enter Selection. Press ENTER.

Macro: List Menu(menu,answer_reg)


A list menu uses the List Menu(menu,answer_reg) macro.

Parameter 1: menu
This is the menu number or menu name. The menu can be chosen by number or name.

Parameter 2: answer_reg
This is the register that will contain the answer from the operator.

Usage example:
Example 1:
PROG TEST1
1: List Menu (2,21)
2: SELECT R[21] = 1, CALL TOOL1
3: = 2, CALL TOOL2
4: = 3, JMP LBL[2]
5: ELSE, CALL ABORTIT

Example 2:
PROG TEST2
1: List Menu (‘ErrorRecov’,2)
2: SELECT R[2] = 1, JMP LBL[2]
3: = 2, CALL MOVEMANT
4: = 3, CALL MOVEPRCH
5: ELSE, CALL ABORTIT

Save Menu setting:


Each list menu is stored in its own variable file that begins with the prefix “MENU3”. The next two
characters of the filename are the menu number. For example, the list menu 1 is stored in the variable file
named “MENU301.VR”.

Procedure 36-3 Setup List Menu


Step
1. Press MENU and select “6 SETUP” and select ”Menu Utility” so that Menu utility screen is displayed.

- 310 -
B-83284EN-2/01 36. MENU UTILITY FUNCTION
SETUP Menu Utility
Choose a menu type: 1/5

1 Prompt box msg


2 Prompt box yes/no
3 Select from a list
4 Status menus
5 Operator entry

[ TYPE ] DETAIL CONFIG HELP

2. Set cursor to “3 Select from a list” and press F2, DETAIL so that Prompt box will be displayed. You
will see a screen similar to the following.

SETUP Menu Utility


Select from a list menu 1/1
ITEM Menu no Menu name
1 1 CycleInterup

[TYPE ] DETAIL CREATE HELP

3. Press F3, CREATE if you want to create new menu. Press F2, DETAIL if you want to change menu
that already exists. You will see a screen similar to the following.

SETUP Menu Utility


LIST menu no: 2 1/11
Menu name:
Line Text ActionTP
TITLE:
1
2
3
4
5
6
7
8
PROMPT

[ TYPE ] TEST HELP

4. Input menu name to line “Menu name” and text to each line. Line that is input text becomes item when
list menu is displayed. Set cursor to Action TP and press F4, CHOICE and select teach pendant
program if you want to associate an Action TP program with a list item.

- 311 -
36. MENU UTILITY FUNCTION B-83284EN-2/01

SETUP Menu Utility


LIST menu no: 2 1/11
Menu name: CycleInterup
Line Text ActionTP
TITLE: Cycle Interrupt
1
2 Continue
3 Abort Production ABORTIT
4 Select New Product
5
6
7
8
PROMPT:Enter Selection. Press ENTER
[ TYPE ] [ ALPH ] TEST

5. Press F3, TEST if you want to confirm the screen that will be displayed. You will see a screen similar
to the following.

USER
Cycle Interrupt

1 Continue
2 Abort Production
3 Select New Product

Enter Selection. Press ENTER

[TYPE]

36.1.4 Status Menu


A status menu displays status information to the teach pendant screen. When a status menu is executed, the
teach pendant displays the status menu and then continues executing. The values that are displayed are
refreshed at least once every second. This is read-only menu.

STATUS Program

ProductionStatus
Current Program TEST
Current Routine TEST
Current Line 101
Status RUNNING
TIME 13-MAR-12 19:30

[TYPE] MENU [CHOICE]

Macro: Status Menu(menu)


A status menu uses the Status Menu(menu) macro.

Parameter 1: menu
This is the menu number or menu name. The menu can be chosen by number or name.

Usage example:
Example 1:
PROG TEST1
- 312 -
B-83284EN-2/01 36. MENU UTILITY FUNCTION
1: Status Menu (2)

Example 2:
PROG TEST2
1: Status Menu (‘ProductionStatus’)

Save Menu setting:


Each list menu is stored in its own variable file that begins with the prefix “MENU4”. The next two
characters of the filename are the menu number. For example, the list menu 1 is stored in the variable file
named “MENU401.VR”.

Procedure 36-4 Setup Status Menu


Step
1. Press MENU and select ”6 SETUP” and select ”Menu Utility” so that Menu utility screen is displayed.

SETUP Menu Utility


Choose a menu type: 1/5

1 Prompt box msg


2 Prompt box yes/no
3 Select from a list
4 Status menus
5 Operator entry

[ TYPE ] DETAIL CONFIG HELP

2. Set cursor to “4 Status menus” and press F2, DETAIL so that Prompt box will be displayed. You will
see a screen similar to the following.

SETUP Menu Utility


Status menu 1/1
ITEM Menu no Menu name
1 1 ProductionStatus

[TYPE ] DETAIL CREATE HELP

3. Press F3, CREATE if you want to create new menu. Press F2, DETAIL if you want to change menu
that already exists. You will see a screen similar to the following.

- 313 -
36. MENU UTILITY FUNCTION B-83284EN-2/01

SETUP Menu Utility


LIST menu no: 2 1/10
Menu name/Title:
Line Text
1 Display:
2 Display:
3 Display:
4 Display:
5 Display:
6 Display:
7 Display:
8 Display:

[ TYPE ] TEST HELP

4. Set cursor to line that you want to edit, and press F2, DETAIL. You will see a screen similar to the
following.

SETUP Menu Utility


STATUS menu no: 2 1/7
Menu name: Line no.:6
1 Text:
2 Var Type: None
3 REG + IO: 0
4 KARELProg:
5 Var Name:
6 SysVar:

7 Data Type: None

[ TYPE ] NEXT PREV [CHOICE] HELP

5. Setup each item. It is possible to setup if you set cursor objective item and press F4, [CHOICE]. Please
refer to following table and setup each item.

Table 36.1.4 Status menu variable detail information


ITEM DESCRIPTION
Text This item allows you to specify the text that will be displayed for the status item. You can type up
to 17 characters of display text.
Var Type This item allows you to specify the kind of variable for the status item:
Type of Variable What to Define Data Display Type
NONE None none
R[] REG Number INTEGER, REAL, BOOLEAN
DIN[] I/O Number INTEGER, BOOLEAN, TEXT
DOUT[] I/O Number INTEGER, BOOLEAN, TEXT
RI[] I/O Number INTEGER, BOOLEAN, TEXT
RO[] I/O Number INTEGER, BOOLEAN, TEXT
GIN[] I/O Number INTEGER
GOUT[] I/O Number INTEGER
KAREL VAR Prog. Name, Var. Name INTEGER, REAL, BOOLEAN,TEXT
SYSTEM VAR System Variable Name INTEGER, REAL, BOOLEAN,TEXT
TIME None ----
CURR PROGRAM None ----
CURR ROUTINE None ----
TIMER (SEC) Prog. Name, Var. Name ----
TIMER (MIN) Prog. Name, Var. Name ----
TIMER (HR) Prog. Name, Var. Name ----
CURR LINE None ----

- 314 -
B-83284EN-2/01 36. MENU UTILITY FUNCTION

ITEM DESCRIPTION
REG+IO This item allows you to specify the number of the register or the I/O signal, when the variable type
is R[ ],DIN[ ],DOUT[ ],RI[ ],RO[ ],GIN[ ], or GOUT[ ].
KAREL Program This item allows you to specify the name of the KAREL program that contains the variable you
are displaying, when the variable type is KAREL VAR.
Variable Name This item allows you to specify the name of the variable you are displaying.
System Variable This item allows you to specify the name of the system variable you are displaying, when the
variable type is SYSTEM VAR.
Data Type This item allows you to specify the variable data types:
・ NONE
・ INTEGER
・ REAL
・ TEXT
・ BOOLEAN

6. Press F3, TEST if you want to confirm the screen that will be displayed in the step 3. You will see a
screen similar to the following.

STATUS Program

ProductionStatus
Current Program TEST
Current Routine TEST
Current Line 101
Status RUNNING
TIME 13-MAR-12 19:30

[TYPE] MENU [CHOICE]

36.1.5 Operator Entry Menu


An operator entry menu requires the operator to enter INTEGER, REAL, BOOLEAN, or text values. When
an operator entry menu is executed, the program pauses until the operator types the information and then
presses F2, DONE.

USER
Check Chute

1 Is part in chute? NO
2 How many parts in chute? 0

Press DONE to continue


DONE

Macro: Op. Entry Menu(menu)


An operator entry menu uses the Op. Entry Menu(menu) macro.

Parameter 1: menu
This is the menu number or menu name. The menu can be chosen by number or name.

- 315 -
36. MENU UTILITY FUNCTION B-83284EN-2/01

Usage example:
Example 1:
PROG TEST1
1: Status Menu (2)

Example 2:
PROG TEST2
1: Status Menu (‘ProductionStatus’)

Save Menu setting:


Each operator entry menu is stored in its own variable file that begins with the prefix “MENU5”. The next
two characters of the filename are the menu number. For example, the list menu 1 is stored in the variable
file named “MENU501.VR”.

Procedure 36-5 Setup Operator entry


Step
1. Press MENU and select “6 SETUP” and select ”Menu Utility” so that Menu utility screen is displayed.

SETUP Menu Utility


Choose a menu type: 1/5

1 Prompt box msg


2 Prompt box yes/no
3 Select from a list
4 Status menus
5 Operator entry

[ TYPE ] DETAIL CONFIG HELP

2. Set cursor to “5 Operator entry” and press F2, DETAIL so that Prompt box will be displayed. You will
see a screen similar to the following.

SETUP Menu Utility


Operator entry menus 1/1
ITEM Menu no Menu name
1 1 Chute

[TYPE ] DETAIL CREATE HELP

3. Press F3, CREATE if you want to create new menu. Press F2, DETAIL if you want to change menu
that already exists. You will see a screen similar to the following.

- 316 -
B-83284EN-2/01 36. MENU UTILITY FUNCTION
SETUP Menu Utility
Op. Entry menu no: 2 1/10
Menu name
Title:
1 Prompt:
2 Prompt:
3 Prompt:
4 Prompt:
5 Prompt:
6 Prompt:
7 Prompt:
8 Prompt:

[ TYPE ] DETAIL TEST HELP

4. Set cursor to line that you want to edit, and press F2, DETAIL. You will see a screen similar to the
following.

SETUP Menu Utility


STATUS menu no: 2 1/7
Menu name: Line no.:1
1 Prompt:
2 Var Type: None
3 REG no: 0
4 KARELProg:
5 Var Name:
6 SysVar:

7 Data Type: None


8 Var Min.: 0
9 Var Max.: 0

[ TYPE ] NEXT.V PREV.V [CHOICE] HELP

5. Setup each item. It is possible to setup if you set cursor objective item and press F4, [CHOICE] or
Enter key. Please refer to following table and setup each item.

Table 36.1.5 Operator entry menu variable detail information


ITEM DESCRIPTION
Prompt This item allows you to specify the text that will be displayed for the prompt item. You can type up
to 17 characters of display text.
Variable This item allows you to specify the kind of variable for the value of the prompt item.
Type of Variable What to Define Data Display Type
NONE None None
R[] REG Number INTEGER, REAL, BOOLEAN
KAREL VAR Prog.Name, Var.Name INTEGER, REAL, BOOLEAN, TEXT
SYSTEM VAR System Variable INTEGER, REAL, BOOLEAN, TEXT
REG Number This item allows you to specify the number of the register, When the variable type is R[].
KAREL Program This item allows you to specify the name of the KAREL program that contains the variable you
are using, when the variable type is KAREL VAR.
Variable Name This item allows you to specify the name of the KAREL variable you are using, when the variable
type is KAREL VAR.
System Variable This item allows you to specify the name of the system variable you are using, when the variable
type is SYSTEM VAR.

- 317 -
36. MENU UTILITY FUNCTION B-83284EN-2/01

ITEM DESCRIPTION
Data Type This item allows you to specify the variable data types:
・ NONE
・ INTEGER
・ REAL
・ TEXT
・ BOOLEAN
Variable Minimum This item allows you to specify the minimum value allowed for the INTEGER or REAL variables.
Variable This item allows you to specify the maximum value allowed for the INTEGER or REAL variables.
Maximum

6. Press F3, TEST if you want to confirm the screen that will be displayed in the step 3. You will see a
screen similar to the following.

USER
Check Chute

1 Is part in chute? NO
2 How many parts in chute? 0

Press DONE to continue


DONE

- 318 -
B-83284EN-2/01 37. 4D GRAPHICS FUNCTION

37 4D GRAPHICS FUNCTION
In 4D GRAPHICS screen, 3D robot model and various internal data such as positions taught in a program or
tool center point can be visualized. This helps a user to understand a system spatially and visually.
4D means the fusion of 3D robot model and 1D internal data as 4th dimension of information.
The robot model moves as the real robot moves. In machine lock, only the robot model can be moved and
the direction of the movement of the robot can be previewed.

This is an optional function. R764 4D GRAPHICS function is needed to use this function.

WARNING
When moving the robot with the pendant enabled, be sure to watch the robot
instead of watching the TP screen. After the robot is in a safe state you can
examine the pendant graphics.

Procedure 37-1 4D GRPHICS Display screen


Step
1 Press the MENU key to display the screen menu.
2 Press “0 NEXT,” then select “5 4D GTAPHICS”.
3 Alternatively, instead of steps 1 and 2 above, the user can press i key and POSN key at the same time.

37.1 OVERVIEW

37.1.1 Graphic Models


4D GRAPHICS screen displays the following graphic models.
- Robot model
- Internal data
- Cell floor
- Peripheral devices

Robot model
A graphic model of ordered robot is displayed.

Internal data
Various data such as positions taught in a program or tool center point are displayed.

- 319 -
37. 4D GRAPHICS FUNCTION B-83284EN-2/01

Cell floor
A reference floor with a 1 meter grid. The position of cell floor can be set in SETUP Frames screen.

Peripheral devices
Peripheral device graphic models such as a base or a hand can be located anywhere in 4D GRAPHICS scene
by editing WORKCELL4D.XML. Section 3 in this chapter describes how to describe
WORKCELL4D.XML.

37.1.2 Operation Procedure


In 4D GRAPHICS screen, view is adjusted by the following operation modes.
- ZOOM
- PAN
- ROTATE
And the following functions are prepared.
- Preset Views
- User Views

ZOOM

ZOOM consists of changing the magnification. Increasing the magnification makes the objects larger but
the field of view is narrow. Decreasing the magnification widens the field of view but the objects in the view
become smaller. Press F3, ZOOM to set the system to zoom mode. Then, the label F3, ZOOM turns blue in
color.
Up arrow increases the magnification. Down arrow decreases the magnification. SHIFT-ARROW moves
further.
Touch and release near the top of the screen increase the magnification, and touch and release near the
bottom of the screen decrease the magnification. Touch and hold the screen and zoom the image by
dragging your finger up and down on the screen.

PAN

- 320 -
B-83284EN-2/01 37. 4D GRAPHICS FUNCTION
PAN consists of moving the view up, down, left and right. Press F4, PAN to set the system to PAN mode.
Then, the label F4, PAN turns blue in color.
Use arrow keys to move the image up, down, left and right. SHIFT-ARROW moves further.
Touch and release a point on the screen to make it the center of the view. Touch and hold the screen and
drag the image around the screen. The image will follow the finger.

ROTATE

ROTATE consists of rotating the view up, down, left and right. Press F5, ROTATE to set the system to
ROTATE mode. Then, the label F5, ROTATE turns blue in color.
Use arrow keys to rotate the image up, down, left and right. SHIFT-ARROW moves further.
Touch and release a point on the screen to tilt the view. Touch and hold the screen and drag the image
around the screen. The image will continue rotating.

Preset Views

4D GRAPHICS screen provides seven preset views. The default view provides a view from 45 degree. This
view is good starting point for setting the view. It also put information back on the screen in the case where
it has inadvertently been lost. All preset views will center the floor in the middle of the view.
- Default Set the view to default
- Front Set the view in front of the robot
- BackSet the view behind the robot
- Top Set the view right above the robot
- Bottom Set the view right below the robot
- Left Set the view on the left side of the robot
- Right Set the view on the right side of the robot
To select Preset Views, press NEXT key and press F2, [VIEWS]. Select one of the preset views above.

- 321 -
37. 4D GRAPHICS FUNCTION B-83284EN-2/01

User Views

4D GRAPHICS screen provides eight user views. These views can be recorded and then retrieved by
selecting them.

Procedure 37-2 Record User Views


Step
1 Press NEXT key and press F2, [VIEWS].
2 Select one of User Views.
3 Move to the view you want to save.
4 Press NEXT key and press F2, [VIEWS].
5 Select “2 Record User View” in 3rd page.
Once a User View is recorded, it is available to be retrieved at any time. User Views can also be named. The
view names are contained in the system variable $TPGL_CONFIG.$VIEW_NAMES.

37.2 4D GRAPHICS SCENE


In 4D GRAPHICS function, the following scenes are available.
- 4D GRAPHICS Display
- 4D GRAPHICS Edit Node Map
- 4D GRAPHICS Select Node Map
- 4D GRAPHICS Position Register
- 4D GRAPHICS TCP Trace
- 4D GRAPHICS Frame Display

Pressing F1, [TYPE] in any 4D GRAPHIC scene and selecting one of them display the selected scene.

37.2.1 4D GRAPHICS Display


4D GRAPHICS Display scene is the standard scene and it can composite together any multiple scenes to be
viewed together.

In 4D GRAPHICS Display scene, the following functions are available.


- Visual Jog
- Jog Preview

37.2.1.1 Visual Jog


Visual Jog allows the coordinate system and the group selected for jogging to be indicated on the 4D
GRAPHICS Display. It allows you to preview the direction that the robot will move before actually jogging
the robot.
- 322 -
B-83284EN-2/01 37. 4D GRAPHICS FUNCTION
Visual Jog is available when the teach pendant is enable.

Cartesian Visual Jog

The red, green and blue axes correspond to the X, Y and Z directions.

Joint Visual Jog

Each joint has a indicator consisting of a semi-transparent fan with a needle showing the current position.
The fan is usually green and turns red as the robot is jogged closer to the limit.

Pressing i key and COORD key simultaneously turn this function on and off.

37.2.1.2 Jog Preview


Jog Preview can preview the direction of movement of the robot when a particular jog key is pressed. It is
activated when pressing a single jog key at the same time as the i key. Pressing more than one jog key will
display the jog direction of the last key pressed. It is not necessary to enable the DEADMAN or clean errors.
Jog Preview is available when the teach pendant is enable.
- 323 -
37. 4D GRAPHICS FUNCTION B-83284EN-2/01

Cartesian Jog Preview

Cartesian Jog Preview shows a single arrow indicating the direction that the robot will move. Depending on
the setting of the speed override, the size of the arrow will change. The figure shows an example when i key
and +Z jog key.

Joint Jog Preview

Joint Jog Preview shows a single red arrow tangent to the fan indicating the direction that the joint will
move. Depending on the setting of the speed override, the size of the arrow will change. The figure shows
an example when i key and +J1 jog key.

37.2.1.3 Set Visibility: 4D GRAPHICS Display


The elements which are visible in 4D GRAPHICS Display scene is controlled by the visibility softkey on
page two of the softkeys. Pressing F3, [VISIBLE] on page two of the softkeys shows the following menu.

For example, selecting 4D Edit Node Map adds the node map in the scene. Selecting the same item again to
make the element invisible. In the following figure, the node map and frame elements are added.
- 324 -
B-83284EN-2/01 37. 4D GRAPHICS FUNCTION

NOTE
When there are too much information displayed, the performance of 4D
GRAPHICS function declines.
In that case, make unnecessary data invisible.

37.2.2 4D GRAPHICS Node Map


Node map is a 4D visualization of a TP program. This shows all the positions as nodes and connect them
with lines. Each node has its position number in the text label elements. The main purpose of node map is to
see the relationship among the positions in a program without moving a robot.

NOTE
Node Map connects two nodes in the program in descending order. Therefore, it is
sometimes different from the real motion path.

NOTE
When INC, OFFSET or Position Register is used in a motion statement or when
frame number is changed in a program, the node will be displayed in the different
position from the actual position.

Each node is colored in blue, green or yellow. The blue node means normal, the green one means the
position focused in EDIT screen and the yellow one means the position is unspecified, such as the position
register. The line between nodes is usually colored in gray or red. The red one means there is an unspecified
position between the two nodes.
Edit node map and select node map are functionally a little different from each other.

37.2.2.1 4D GRAPHICS Edit Node Map

- 325 -
37. 4D GRAPHICS FUNCTION B-83284EN-2/01

In 4D GRAPHICS Edit Node Map scene, the currently selected program is displayed. It is linked to EDIT
screen. So the focused position is displayed as a green node in node map. As the cursor is moved in EDIT
screen, the green node also changes. The node map will be updated every time the program is edited.

Procedure 37-3 4D GRAPHICS Edit Node Map


Step
There are some other ways to display 4D GRAPHICS Edit Node Map in addition to selecting the item from
F1, [TYPE].
1 Press EDIT key. When a program is selected, EDIT screen will be displayed.
2 Press i key and FCTN key on EDIT screen. Related View menu will be displayed.
3 Select “4D Edit Node Map”.
4 Instead of step 1 to step 3, Pressing i key and EDIT key displays the node map.

SELECT Data
Selecting a node can make the cursor in EDIT screen move to the corresponding line. To select a node,
touch the screen near the node. To use this functionality, select F2, SELECT. Then, the label F2, SELECT
turns blue in color.

37.2.2.2 4D GRAPHICS Select Node Map

In 4D GRAPHICS Select Node Map scene, the currently focused program in SELECT screen is displayed.
It is linked to SELECT screen. As the cursor is moved in SELECT screen, displayed node map also changes.
When a program is selected in SELECT screen, EDIT screen of the program is displayed. Then, 4D
GRAPHICS Edit Node Map is also displayed automatically.

- 326 -
B-83284EN-2/01 37. 4D GRAPHICS FUNCTION

Procedure 37-4 4D GRAPHICS Select Node Map


Step
There are some other ways to display 4D GRAPHICS Select Node Map in addition to selecting the item
from F1, [TYPE].
1 Press SELECT key. SELECT screen will be displayed.
2 Press i key and FCTN key on SELECT screen. Related View menu will be displayed.
3 Select “4D Display”.
4 Instead of step 1 to step 3, Pressing i key and SELECT key displays the node map.

37.2.2.3 Set Visibility: Node Map Position Number


The position number element can be turned on and off. To do it, press NEXT and then press F3, [VISIBLE].
The following figure shows a node map without the position number.

37.2.2.4 Data Supported by Node Map


The following data are supported in node map.
- Normal positions
- Positions specified by Position Register
- Via positions and end positions in Circular motion
- Incremented position by INC option

37.2.3 4D GRAPHICS Frame Display


4D GRAPHICS Frame Display scene shows the following graphics of the current frame setup operation.
The comments for the frame is also displayed.

- 327 -
37. 4D GRAPHICS FUNCTION B-83284EN-2/01

Procedure 37-5 4D GRAPHICS Frame Display


Step
There are another way to display 4D GRAPHICS Frame Display in addition to selecting the item from F1,
[TYPE].
1 Press MENU.
2 Select “6 Setup”.
3 Press F1, [TYPE].
4 Select “Frames”.
5 Press i key and FCTN key on Frame setup screen. Related View menu will be displayed.
6 Select “4D Frame Display”.

37.2.4 4D GRAPHICS TCP Trace


4D GRAPHICS TCP Trace scene provides the capability to view the path that the robot took when
executing a program. The path is displayed in green. The path is updated every time a program is executed.

NOTE
The path provided in 4D GRAPHICS TCP Trace are possibly different from actual
path.

37.2.5 4D GRAPHICS Position Register


In 4D GRAPHICS Position Register scene, position registers are displayed as nodes like node map. This
helps understand where the position registers are located spatially. Each node has its position register
number.
4D GRAPHICS Position Register is linked to Position Register screen. Focused position register is
displayed as green highlighted node. When a position register is newly taught or modified, the graphics are
automatically updated.

- 328 -
B-83284EN-2/01 37. 4D GRAPHICS FUNCTION

Procedure 37-6 4D GRAPHICS Position Register


Step
There are another way to display 4D GRAPHICS Frame Display in addition to selecting the item from F1,
[TYPE].
1 Press DATA key and display DATA screen.
2 Press F1, [TYPE].
3 Select “Position Reg”.
4 Press i key and FCTN key on Position Register screen. Related View menu will be displayed.
5 Select “4D Position Reg”.
6 Instead of step 1 to step 5, pressing i key and DATA key display the screen.

SELECT Data
Selecting a node can make the cursor in Position Register screen move to the corresponding line. To select
a node, touch the screen near the node. To use this functionality, select F2, SELECT. Then, the label F2,
SELECT turns blue in color.

37.2.5.1 Set Visibility: Position Register Number


The position register number element can be turned on and off. To do it, press NEXT and then press F3,
[VISIBLE]. The following figure shows a node map without the position register number.

NOTE
Registers are always considered to be in the “current” frame. The register
graphical display reflects the position of the register in the current frame. This may
not be how the register is used. Changing the current frame will be reflected in the
position of the register triad in the graphics display.

- 329 -
37. 4D GRAPHICS FUNCTION B-83284EN-2/01

NOTE
Any register which has been set to joint representation will not be displayed.

37.3 HOW TO DESCRIBE WORKCELL4D.XML


This section describes the detail of WORKCELL4D.XML necessary to display peripheral devices.

37.3.1 Cells
The unit that composes graphics is called “cell”.
The following elements can be used as cells.
- Box
- Cylinder
- Cone
- Sphere
Each cell can have the following attributes.
- Opacity
- Color

Assembling them can express various graphics such as a base or a hand in 4D GRAPHICS screen.

37.3.2 Example
Create WORKCELL4D.XML on PC and describe the following.

<TPGL>
<SETATR id="/attr/red" vis="1" opac="50" color="#FF0000" weight="1" sel="0" />
<SETATR id="/attr/grn" vis="1" opac="80" color="#00FF00" weight="1" sel="0" />
<SETATR id="/attr/blu" vis="1" opac="100" color="#0000FF" weight="1" sel="0" />
<SETATR id="/attr/gry" vis="1" opac="100" color="#F0F0F0" weight="1" sel="0" />
<SETGN id="/cell">
<SETBOX id="box" loc="1000,0,250,0.0,0.0,0.0" siz="200,300,500" aid="/attr/red" />
<SETCY id="cyl" loc="1000,-1000,0" end="1000,-1000,500" radius="100" aid="/attr/grn"/>
<SETCN id="con" loc="1000,1000,0" end="1000,1000,500" radius="100" radius2="0" aid="/attr/blu"/>
<SETSPH id="sph" loc="1500,0,200" radius="200" aid="/attr/gry"/>
</SETGN>
</TPGL>

Load the XML file into FR: in the controller. In this example, it is loaded from a Memory Card.

Procedure 37-7 Loading WORKCELL4D.XML


Step
1 Press MENU.
2 Select “7 FILE”.
3 Press F5, [UTIL].
4 Select “Set Device”.
5 Select “Mem Card(MC:)”.
6 Press F2, [DIR].
7 Select “*.XML”.
8 Move the cursor on “WORKCELL4D” and press NEXT and then press F2, COPY.
9 Move the cursor on “To Device:”. Press F4, [CHOICE].
10 Select “FROM Disk(FR:)”.
11 Press F1, DO COPY.

- 330 -
B-83284EN-2/01 37. 4D GRAPHICS FUNCTION

Now, WORKCELL4D.XML is loaded into the controller. In 4D GRAPHICS screen, elements are
additionally displayed in the following figure. There are a green cylinder, red box, blue cone and gray
sphere.
The coordinate system is defined as follows:
- Center of the Cell Floor in default 4D GRAPHICS Display scene is (0, 0, 0).
- Left lower is +X direction, right lower is +Y direction and upper side is +Z direction.

37.3.3 How to Describe WORKCELL4D .XML


WORKCELL4D.XML is composed of the elements called “tag”. This paragraph describes the following
tags.
- TPGL
- SETGN
- SETATR
- SETBOX
- SETCY
- SETCN
- SETSPH

TPGL
TPGL tag represents the beginning and end of the XML. Describe in the beginning and the end of the file as
follows.

<TPGL> ... </TPGL>

SETGN
SETGN classifies cells by ID.
Typically, specify “/cell” as ID. In this case, the center of the coordinate system is the center of the default
4D GRAPHICS function.

<SETGN id="ID"> ...


</SETGN>

For example, specify the ID as “/cell/cont1/grp1/$FP$/hand” to add a hand on face plate. In this case, the
cells moves as the face plate moves. This enables to display a hand moving with a robot. Changing the ID
from “/cell” to “/cell/cont1/grp1/$FP$/hand” in the previous XML example shows the following figure.
The central coordinate is the center of the face plate.

- 331 -
37. 4D GRAPHICS FUNCTION B-83284EN-2/01

SETATR
SETATR set the attribute of the cell such as opacity and color.
Set ID. It decides the attribute of the cell that refers to the ID.
Set 0 to 100 as opacity. The smaller the value is, the more transparent the cell is.
Set #000000 to #FFFFFF as color. For example, #FF0000 is red, #00FF00 is green and #0000FF is blue.

<SETATR id="ID" vis="1" opac="OPACITY" color="COLOR" weight="1" sel="0" />

SETBOX
SETBOX displays a box.
Set ID. Be careful not to use the same ID in the same SETGN tag.
Set (X, Y, Z, W, P, R) as central coordinate and (X, Y, Z) as size of the box.
Set ID of a SETATR. It decides the opacity and color.

<SETBOX id="ID" loc="CENTER(X,Y,Z,W,P,R)" siz="size of XYZ(X,Y,Z)"


aid="SETATR ID"/>

SETCY
SETCY displays a cylinder.
Set ID. Be careful not to use the same ID in the same SETGN tag.
Set (X, Y, Z) as an end of the cylinder, (X, Y, Z) as the other end and radius of the cylinder.
Set ID of a SETATR. It decides the opacity and color.

<SETCY id="ID" loc="START POS(X,Y,Z)” end="END POS(X,Y,Z)"


radius="RADIUS" aid="SETATR ID"/>

SETCN
SETCN displays a cone.
Set ID. Be careful not to use the same ID in the same SETGN tag.
Set (X, Y, Z) as an end of the cone, (X, Y, Z) as the other end, radius of an end of the cone and radius of the
other end.
Set ID of a SETATR. It decides the opacity and color.

<SETCN id="ID" loc="START POS(X,Y,Z)" end="END POS(X,Y,Z)"


radius="START RADIUS" radius2="END RADIUS" aid="SETATR ID"/>

- 332 -
B-83284EN-2/01 37. 4D GRAPHICS FUNCTION

SETSPH
SETSPH displays a sphere.
Set ID. Be careful not to use the same ID in the same SETGN tag.
Set (X, Y, Z) as the central coordinate of the sphere and radius of the sphere.
Set ID of a SETATR. It decides the opacity and color.

<SETSPH id="ID" loc="CENTER(X,Y,Z)" radius="RADIUS" aid="SETATR ID"/>

- 333 -
B-83284EN-2/01 INDEX

INDEX
CAUTIONS / RESTRICTIONS ....................................12
<Number> Cells .............................................................................330
4D GRAPHICS Display...............................................322 Change Display Format of Cycle Time Data ...............249
4D GRAPHICS Frame Display....................................327 CHANGING CONDITIONS FOR EXECUTING THE
4D GRAPHICS FUNCTION .......................................319 RESUME PROGRAM ...............................................43
4D GRAPHICS Node Map ..........................................325 CMDENBL#1~#N .......................................................126
4D GRAPHICS Position Register ................................328 CMOS Programs ..........................................................236
4D GRAPHICS SCENE...............................................322 COL DETECT ON / COL DETECT OFF .....................53
4D GRAPHICS TCP Trace..........................................328 COL GUARD ADJUST.................................................54
COLLISION DETECTION FOR AUXILIARY AXIS..64
<A> COLLISION GUARD SETUP SCREEN ......................52
A Different Tool from that Specified by the Attach Compatibilities and Limitations .....................................94
Instruction is Attached..............................................289 Constant Path with Respect to Program Speed Changes 93
Abort Program by UOP................................................131 CONSTRAINTS ..........................................................110
Abort the Program........................................................200 CONSTRUCTION OF SERVO TOOL CHANGE
Absolute(ABS)........................................................259 SCREEN ..................................................................280
Addition of Button Change Control .............................164 CONTINUOUS ROTATION FUNCTION....................14
Addition of Command Button Control.........................168 Copy Programs.............................................................241
Addition of Edit Box Control.......................................169 CORNER REGION TERMINATION TYPE (CRy) .....92
Addition of Label Control ............................................169 Creation of Run Button ................................................180
Addition of Toggle Button Control ..............................170 CRy Versus Segment Distance ......................................92
Addition of Toggle Lamp Control................................172 CSTOPI#1~#N.............................................................124
ADVANCED CONSTANT PATH ................................87 CUSTOM MENU ........................................................204
After Replacement .......................................................300 Cut/Copy Paste of Control ...........................................176
Alarm ID ......................................................................138 Cycle Mode..................................................................246
Alarm Number .............................................................139 Cycle Power.................................................................203
ASCII File Example .....................................................225 Cycle Time Categories.................................................245
ASCII File General Event Information ........................219 Cycle Time Screen Items .............................................245
ASCII File Specific Event Information........................220 CYCLE TIME TRACKING ........................................245
Assigning Tool Numbers to Servo Tool Axes..............281
ATPERCH ...................................................................127 <D>
ATTENTION ...............................................................113 DATA MONITOR CHART.........................................151
AUTO SINGULARITY AVOIDANCE FUNCTION..100 DATA MONITOR FUNCTION ..................................140
AUTOMATIC ERROR RECOVERY FUNCTION ......22 DATA MONITOR SCHEDULE .................................147
AUXILIARY AXIS SERVO OFF (LOCAL STOP) DATA MONITOR SETUP..........................................141
FUNCTION..............................................................108 Delete of Control..........................................................175
Available iPendant Controls.........................................159 Delete Set.....................................................................206
Detail of KAREL Config .............................................202
<B> DISPLAY MODES OF CYCLE TIME .......................246
BACKGROUND OPERATION OF MATH Display of Panel...........................................................181
FUNCTION..............................................................260 Display Reference Cycle Time Line ............................250
Backup/Restore ............................................................182 Display Target Cycle Time Line..................................250
Backward Execution ....................................................277 DUAL MOTOR DRIVE ..............................................118
Basic Specification.......................................................264 Dump Selections Screen ..............................................210
Battery-less Type Tools ...............................................275
Battery-Mounted Type Tools .......................................275 <E>
BRAKE CHECK FUNCTION.....................................153 Effect of Alarm Occurrence .........................................244
Enable or Disable All Event Logging ..........................217
<C> ENHANCED MIRROR IMAGE .................................183
Calibration Motion Failed. ...........................................289 ERROR CODE OUTPUT FUNCTION.......................135
CALIBRATION PROCEDURE (for 6-Axis Robots) ....60 Event Class Selection Screen .......................................215
Cause and Remedy for Alarm Occurrence ...................243 Event Detail Selection Screen......................................217
CAUTION........................................................64,155,230 Example .......................................................................330
Caution for Creation of KAREL Program....................180 EXAMPLES ................................................................223
CAUTIONS ............................................................56,101 EXCEPTIONS AND RESTRICTION .........................262

i-1
INDEX B-83284EN-2/01

Execute Program ..........................................................299 Inverse Trigonometric Function(ATAN) ................258


EXECUTION EXAMPLE OF SPOT PROGRAM ......251 Inverse Trigonometric Function(ATAN2) ..............257
EXECUTION OF THE RESUME PROGRAM FROM iRDiagnostics...............................................................298
THE TEACH PENDANT AND TEST MODE..........43
Exponent ......................................................................258 <J>
EXTENDED ALARM LOG ..........................................81 JOG OPERATION WITHOUT SHIFT .......................292
JOINT / CARTESIAN SOFTFLOAT..............................4
<F>
FAST EXIT/ENTRY FEATURE...................................23 <K>
FAULT#1~#N..............................................................127 KAREL CONFIG ........................................................198
Feature of Function ......................................................264 KAREL Program Example ..........................................224
FILE Programs .............................................................237 KAREL PROGRAM EXECUTION HISTORY
Forward Execution .......................................................277 RECORD..................................................................208
FUNCTION SPECIFICATION OF MATH KAREL USE SUPPORT FUNCTION ........................198
FUNCTIONS............................................................255 KNOWHOW OF CARTESIAN SOFTFLOAT .............11
KNOWHOW OF SOFTFLOAT ....................................10
<G>
GENERAL .....................................................................64 <L>
Graphic Models............................................................319 Limitation and Caution of KAREL Config ..................203
GRAVITY COMPENSATION......................................67 Limitations ............................... 90,97,98,101,155,230,231
Guidance of GC Mastering ............................................70 LINEAR DISTANCE ....................................................87
Line-by-Line Mode ......................................................248
<H> List Menu .....................................................................309
Hardware......................................................................208 List Selected Tasks Screen...........................................214
HARDWARE AND SOFTWARE...............................208 LOAD ESTIMATION ...................................................57
Hardware and Software Requirements.........................208 LOAD ESTIMATION PROCEDURE (for 6-Axis
HELD#1~#N ................................................................127 Robots) .......................................................................57
HIGH SENSITIVITY COLLISION DETECTION .......51 LOADING PROCESS IN PROGRAM EXECUTION 242
HIGH SPEED SHIFT JOG OPERATION ...................295 LOGGING EVENTS ...................................................218
HIGH SPEED SHIFT KEY FUNCTION.....................295 Logging Events to an ASCII File.................................219
HIGH SPEED SHIFT TEST EXECUTION
OPERATION ...........................................................296 <M>
HOLD#1~#N................................................................124 MAINT_PROG INSTRUCTION...................................28
Hourly Mode ................................................................247 Make Backup of Programs...........................................241
How it Works .................................................................89 MANUAL OPERATION SCREEN OF THE RESUME
How to Choose Mastering Method.................................69 PROGRAM FUNCTION ...........................................41
How to Describe WORKCELL4D .XML ....................331 MANUAL PLAN.............................................................1
HOW TO DESCRIBE WORKCELL4D.XML ............330 MASTERING ................................................................68
How to Display Alarm Log............................................82 Mastering Procedure ......................................................69
HOW TO USE AUTO SINGULARITY AVOIDANCE ... MATH FUNCTION INSTRUCTION .........................253
..................................................................................100 MAX SPEED .................................................................97
How to Use Auto Singularity Avoidance in Jogging ...100 MEANING OF ALARM CODE..................................136
How to Use Auto Singularity Avoidance in TPE MENU UTILITY FUNCTION ....................................304
Program ....................................................................100 MIRROR IMAGE OF EXTENDED AXES ................188
How to Use Linear Distance ..........................................91 MIRROR IMAGE USING EXISTING FRAMES AND
MIRROR PLANES, WITH CONTROLLED
<I> ORIENTATION.......................................................187
INITIAL SETTING .......................................................64 Modification and Addition of Signal ...........................123
INITIAL SETTING BEFORE USE .............................153 Modification of Control ...............................................174
INITIAL SETUP..........................................................267 Modification of Page....................................................177
Input and Output Signals..............................................135 Modification of Panel...................................................173
Instruction Format of Assignment Statements .............253 MOTION PROFILER..................................................302
INSTRUCTION FORMAT OF MATH FUNCTION ..253 MOTION SCREEN .......................................................67
Instruction Format of Relational Statements ................254 MULTI UOP INTERFACE FUNCTION ....................120
Instruction Format of Wait Command Statements .......255
INTRODUCTION......................... 1,108,118,120,135,227 <N>
Inverse Trigonometric Function(ACOS) ................257 Natural Logarithm........................................................258
Inverse Trigonometric Function(ASIN)..................256 “Normal Mastering” and “GC Mastering” .....................68
Notice for Teaching .....................................................279
i-2
B-83284EN-2/01 INDEX
<O> RETURN_PATH_DSBL INSTRUCTION....................26
OPERATING PROCEDURE.........................................57 Robot Condition Detection Status................................300
OPERATION GROUP DO OUTPUT FUNCTION.......20 ROBOT CONDTION DETECTION ...........................298
OPERATION LOG BOOK............................................71 Robot Service Request (RSR) ......................................131
Operation Procedure.....................................................320 ROTATIONAL MIRROR IMAGE .............................186
OPERATION WITHOUT SHIFT FUNCTION...........292 Round Off(ROUND) ..............................................259
OPERATIONS...............................................................77 RSR..............................................................................125
Operator Entry Menu ...................................................315 Run KAREL Program ..................................................199
Other ............................................................................132 RUN KAREL PROGRAM BY PANEL ......................179
OTHER RELATED MATTERS....................................63 RUN PROGRAM ........................................................131
OTHER SPECIFICATIONS AND RESTRICTIONS....44
OUTLINE ....................................................................264 <S>
Outline of Installation ..................................................267 SAFETY PRECAUTIONS ........................................... s-1
OVERVIEW ................................... 3,22,51,57,71,87,100, Sample Program.................................................... 276,280
.......................... 153,156,198,208,223,231,245,298,319 Save / Load LS Files ....................................................241
SAVE / LOAD PROGRAMS ......................................241
<P> Save / Load TP Files ....................................................241
PANEL WIZARD ........................................................156 Save Cycle Time Data .................................................249
PARALLEL MIRROR IMAGE...................................184 SELECT PROGRAM ..................................................127
PATH SWITCHING FUNCTION ...............................102 Select Program at Running or Paused ..........................130
Pause Program by UOP................................................131 SERVO DIAGNOSIS ..................................................300
Performance .................................................................209 SERVO TOOL CHANGE FUNCTION ......................264
PERIPHERAL I/O .......................................................120 Set Custom Menu.........................................................204
PNSTROBE#1~#N,PROD_START#1~#N .................126 Setting Motion Parameters for Servo Tool Axes .........281
PRECAUTION ............................................................243 Setting of Motion Groups Intended by Each UOP Set.129
PRELIMINARY TOOL ATTACH OPERATION.......268 SETTING OF THE AUTOMATIC ERROR
PROCESS SPEED .........................................................95 RECOVERY FUNCTION .........................................30
Program Edit Screen Display When Operating Motion Setting of the Number of UOP Set...............................122
Group is Changed .....................................................130 Setting System Variables .............................................283
PROGRAM EXCHANGE FUNCTION WITHOUT SETTING THE REFERENCE POSITION..................275
ENOUGH MEMORY SPACE .................................242 SETTING UP...............................................................156
PROGRAM INSTRUCTIONS ......................................53 SETTING UP BOOK.....................................................76
Program Number Select (PNS) ....................................131 Setting Up Events ........................................................218
PROGRAM TOOLBOX ................................................84 Setting Up Fast Label...................................................160
PROGRAMMING ................................................114,150 Setting Up Fast Lamp ..................................................161
PROGRUN#1~#N,PAUSED#1~#N ............................126 Setting Up Fast Switch.................................................163
Prompt Box Msg ..........................................................305 SETTING UP TCP SPEED OUTPUT .........................232
Prompt Box Yes/No Menu ...........................................307 Setting Up the KAREL Program Execution History
PUSHOUT SOFTFLOAT ................................................8 Record ......................................................................209
SETTINGS..............................................................51,110
<Q> SETUP ................................................. 48,81,118,298,302
Quick Mastering Reference Position Setup..................287 SETUP ABOUT MENU UTILITY .............................304
SETUP AND OPERATIONS ......................................209
<R> SETUP FOR HIGH SPEED SHIFT KEY FUNCTION.....
RECORDED EVENTS ..................................................73 ..................................................................................295
Re-creation of Panel.....................................................178 Severity of Alarm.........................................................137
Reference Position Setup for Calibration Types 3 and 4.... SHADOW ONDEMAND Programs ............................237
..................................................................................283 SHADOW Programs....................................................236
Reference Position Setup for Calibration Types 5 and 6.... SOFT LIMIT SETTING ................................................84
..................................................................................285 SOFTFLOAT FUNCTION ..............................................4
REMOTE TCP FUNCTION ..........................................46 Software .......................................................................209
RESTRICTION OF TEACHING MATH FUNCTION SOFTWARE OPTIONS ..............................................120
..................................................................................262 SOFTWARE REQUIREMENTS AND
Restrictions...................................................................264 EXPLANATION......................................................156
Results..........................................................................302 SPECIFICATION ..................................... 51,108,120,135
RESULTS OF BRAKE CHECK..................................155 Square Root(SQRT)................................................255
RESUME PROGRAM FUNCTION ..............................22 START BRAKE CHECK ............................................154
RESUME_PROG INSTRUCTION................................24 Start Mode Config........................................................201

i-3
INDEX B-83284EN-2/01

Start the KAREL Config Screen ..................................198 USAGE ........................................................................181


START#1~#N ..............................................................125 Use KAREL Config Screen .........................................198
Starting Custom Menu .................................................204
Status Menu..................................................................312 <W>
Stop Logging Tasks Screen..........................................212 WARNINGS (Be sure to read this section for safety.)...45
STOP PROGRAM .......................................................131
STORAGE CONFIGURATION..................................237
STORAGES .................................................................236
SUMMARY ...................................................................46
SYSRDY#1~#N ...........................................................126
System Configuration...................................................265
SYSTEM VARIABLES.................................................67
SYSYTEM VARIABLES............................................132

<T>
Task Selection Screen ..................................................211
TCP SPEED OUTPUT.................................................231
TCP SPEED OUTPUT INSTRUCTION .....................234
TEACH MATH FUNCTION INSTRUCTION ...........260
Teach Pendant Program Example ................................224
TEACHING .................................................................279
Teaching Techniques .....................................................93
TEST EXECUTION OPERATION WITHOUT SHIFT....
..................................................................................293
The Attach Instruction is Executed when the Tool is not
Attached. ..................................................................288
The Attached Tool has been Detached by Mistake
(without Using the Detach Instruction). ...................290
The Battery Ran Low while the Tool was Detached....291
The Battery Voltage has Fallen....................................290
The Robot Stopped during Calibration.........................288
The Tool Axis of a Detached Tool has Moved. ...........290
TOOL ATTACH Instruction........................................276
TOOL CHANGE INITIAL SETUP .............................281
TOOL CHANGE INSTRUCTION ..............................276
TOOL CHANGE REFERENCE POSITION SETUP
METHOD (BATTERY-LESS TYPE)......................283
TOOL CHANGE SEQUENCE....................................278
TOOL CHANGE SETUP ............................................270
TOOL CHANGE STATUS..........................................278
TOOL DETACH Instruction........................................276
TORQUE LIMIT FUNCTION.....................................227
TORQUE LIMIT FUNCTION FEATURE..................228
TORQUE LIMIT MULTI-AXIS SETUP FUNCTION
..................................................................................229
TP DRAM/FILE STORAGE FUNCTION ..................236
TRACKING CYCLE TIME ........................................248
Trigonometric Function(COS) ................................256
Trigonometric Function(SIN) .................................255
Trigonometric Function(TAN)................................256
TROUBLESHOOTING ...............................................288
Truncate(TRUNC) ..................................................259
TUNING PROCEDURE................................................64
TYPE OF MATH FUNCTIONS..................................253
Types of Alarms...........................................................135

<U>
Update Cycle Time Data..............................................249

i-4
B-83284EN-2/01 REVISION RECORD

REVISION RECORD
Edition Date Contents
01 Sep., 2012

r-1
B-83284EN-2/01

* B - 8 3 2 8 4 E N - 2 / 0 1 *

You might also like