Uploaded by mrmjunior

Handling Tool Setup and Operations Manual

advertisement
FANUC America
Corporation
SYSTEM R-30iB
Plus/R-30iB Mate
Plus/R-30iB Compact
Plus HandlingTool
Setup and Operations
Manual
MAROUHT9102171E REV F
Version 9.10 series
© 2019 FANUC America Corporation
All Rights Reserved.
This publication contains proprietary information of FANUC
America Corporation furnished for customer use only. No other
uses are authorized without the express written permission of
FANUC America Corporation.
FANUC America Corporation
3900 W. Hamlin Road
Rochester Hills, Michigan 48309–3253
About This Manual
Copyrights and Trademarks
This new publication contains proprietary information of FANUC America Corporation, furnished
for customer use only. No other uses are authorized without the express written permission of
FANUC America Corporation.
FANUC America Corporation
3900 W. Hamlin Road
Rochester Hills, MI 48309-3253
The descriptions and specifications contained in this manual were in effect at the time this manual
was approved. FANUC America Corporation, hereinafter referred to as FANUC America, reserves
the right to discontinue models at any time or to change specifications or design without notice
and without incurring obligations.
FANUC America's manuals present descriptions, specifications, drawings, schematics, bills of
material, parts, connections and/or procedures for installing, disassembling, connecting, operating
and programming FANUC America Corporation's products and/or systems. Such systems consist
of robots, extended axes, robot controllers, application software, the KAREL ® programming
language, INSIGHT® vision equipment, and special tools.
FANUC America recommends that only persons who have been trained in one or more approved
FANUC America Training Course(s) be permitted to install, operate, use, perform procedures
on, repair, and/or maintain FANUC America's products and/or systems and their respective
components. Approved training necessitates that the courses selected be relevant to the type of
system installed and application performed at the customer site.
Warning
This equipment generates, uses, and can radiate radio frequency
energy and if not installed and used in accordance with the instruction
manual, may cause interference to radio communications. As
temporarily permitted by regulation, it has not been tested for
compliance with the limits for Class A computing devices pursuant
to subpart J of Part 15 of FCC Rules, which are designed to provide
reasonable protection against such interference. Operation of the
equipment in a residential area is likely to cause interference, in which
case the user, at his own expense, will be required to take whatever
measure may be required to correct the interference.
FANUC America conducts courses on its systems and products on a regularly scheduled basis at
its headquarters in Rochester Hills, Michigan. For additional information contact
FANUC America Corporation
3900 W. Hamlin Road
Rochester Hills, MI 48309-3253
i
About This Manual
MAROUHT9102171E REV F
www.fanucamerica.com
For customer assistance, including Technical Support, Service, Parts & Part Repair, and
Marketing Requests, contact the Customer Resource Center, 24 hours a day, at 888-FANUC-US
(888-326-8287).
Send your comments and suggestions about this manual to:
product.documentation@fanucamerica.com
The information illustrated or contained herein is not to be reproduced, copied, downloaded,
translated into another language, distributed, or published in any physical or electronic format,
including Internet, or transmitted in whole or in part in any way without the prior written consent
of FANUC America Corporation.
AccuStat®, ArcTool®, i RVision ®, KAREL ®, PaintTool ®,PalletTool®, SOCKETS ®,
SpotTool ®, SpotWorks ®, and TorchMate® are Registered Trademarks of FANUC America
Corporation.
FANUC America reserves all proprietary rights, including but not limited to trademark and trade
name rights, in the following names:
AccuAir ™, AccuCal ™, AccuChop ™, AccuFlow™, AccuPath ™, AccuSeal ™, ARC Mate ™,
ARC Mate Sr.™, ARC Mate System 1 ™, ARC Mate System 2™, ARC Mate System 3 ™, ARC
Mate System 4 ™, ARC Mate System 5™, ARCWorks Pro ™, AssistTool ™, AutoNormal ™,
AutoTCP™, BellTool ™, BODYWorks ™, Cal Mate ™, Cell Finder™, Center Finder ™, Clean
Wall ™, DualARM™, i RProgrammer ™, LR Tool™, MIG Eye ™, MotionParts ™, MultiARM
™, NoBots™, Paint Stick ™, PaintPro ™, PaintTool 100 ™, PAINTWorks™, PAINTWorks
II ™, PAINTWorks III ™, PalletMate™, PalletMate PC ™, PalletTool PC ™, PayloadID ™,
RecipTool™, RemovalTool ™, Robo Chop ™, Robo Spray S-430i ™, ShapeGen ™, SoftFloat
™, SOFT PARTS™, SpotTool+ ™, SR Mate ™, SR ShotTool ™, SureWeld™, SYSTEM R-J2
Controller R-J3i B Controller™, SYSTEM R-J3i C Controller™, SYSTEM R-30i A Controller™,
SYSTEM R-30i A Mate Controller™, SYSTEM R-30i B Controller™, SYSTEM R-30i B Mate
Controller™, SYSTEM R-30i B Plus Controller™, SYSTEM R-30i B Mate Plus Controller™,
TCP Mate ™, TorchMate ™, TripleARM ™, TurboMove™, visLOC ™, visTRAC ™, WebServer
™, WebTP ™, and YagTool™.
Patents
One or more of the following U.S. patents might be related to the FANUC America products
described in this manual.
FRA Patent List
4,630,567 4,639,878 4,707,647 4,708,175 4,708,580 4,942,539 4,984,745 5,238,029 5,239,739
5,272,805 5,293,107 5,293,911 5,331,264 5,367,944 5,373,221 5,421,218 5,434,489 5,644,898
5,670,202 5,696,687 5,737,218 5,823,389 5,853,027 5,887,800 5,941,679 5,959,425 5,987,726
6,059,092 6,064,168 6,070,109 6,086,294 6,122,062 6,147,323 6,204,620 6,243,621 6,253,799
6,285,920 6,313,595 6,325,302 6,345,818 6,356,807 6,360,143 6,378,190 6,385,508 6,425,177
6,477,913 6,490,369 6,518,980 6,540,104 6,541,757 6,560,513 6,569,258 6,612,449 6,703,079
ii
MAROUHT9102171E REV F
About This Manual
6,705,361 6,726,773 6,768,078 6,845,295 6,945,483 7,149,606 7,149,606 7,211,978 7,266,422
7,399,363
FANUC LTD Patent List
4,571,694 4,626,756 4,700,118 4,706,001 4,728,872 4,732,526 4,742,207 4,835,362 4,894,596
4,899,095 4,920,248 4,931,617 4,934,504 4,956,594 4,967,125 4,969,109 4,970,370 4,970,448
4,979,127 5,004,968 5,006,035 5,008,834 5,063,281 5,066,847 5,066,902 5,093,552 5,107,716
5,111,019 5,130,515 5,136,223 5,151,608 5,170,109 5,189,351 5,267,483 5,274,360 5,292,066
5,300,868 5,304,906 5,313,563 5,319,443 5,325,467 5,327,057 5,329,469 5,333,242 5,337,148
5,371,452 5,375,480 5,418,441 5,432,316 5,440,213 5,442,155 5,444,612 5,449,875 5,451,850
5,461,478 5,463,297 5,467,003 5,471,312 5,479,078 5,485,389 5,485,552 5,486,679 5,489,758
5,493,192 5,504,766 5,511,007 5,520,062 5,528,013 5,532,924 5,548,194 5,552,687 5,558,196
5,561,742 5,570,187 5,570,190 5,572,103 5,581,167 5,582,750 5,587,635 5,600,759 5,608,299
5,608,618 5,624,588 5,630,955 5,637,969 5,639,204 5,641,415 5,650,078 5,658,121 5,668,628
5,687,295 5,691,615 5,698,121 5,708,342 5,715,375 5,719,479 5,727,132 5,742,138 5,742,144
5,748,854 5,749,058 5,760,560 5,773,950 5,783,922 5,799,135 5,812,408 5,841,257 5,845,053
5,872,894 5,887,122 5,911,892 5,912,540 5,920,678 5,937,143 5,980,082 5,983,744 5,987,591
5,988,850 6,023,044 6,032,086 6,040,554 6,059,169 6,088,628 6,097,169 6,114,824 6,124,693
6,140,788 6,141,863 6,157,155 6,160,324 6,163,124 6,177,650 6,180,898 6,181,096 6,188,194
6,208,105 6,212,444 6,219,583 6,226,181 6,236,011 6,236,896 6,250,174 6,278,902 6,279,413
6,285,921 6,298,283 6,321,139 6,324,443 6,328,523 6,330,493 6,340,875 6,356,671 6,377,869
6,382,012 6,384,371 6,396,030 6,414,711 6,424,883 6,431,018 6,434,448 6,445,979 6,459,958
6,463,358 6,484,067 6,486,629 6,507,165 6,654,666 6,665,588 6,680,461 6,696,810 6,728,417
6,763,284 6,772,493 6,845,296 6,853,881 6,888,089 6,898,486 6,917,837 6,928,337 6,965,091
6,970,802 7,038,165 7,069,808 7,084,900 7,092,791 7,133,747 7,143,100 7,149,602 7,131,848
7,161,321 7,171,041 7,174,234 7,173,213 7,177,722 7,177,439 7,181,294 7,181,313 7,280,687
7,283,661 7,291,806 7,299,713 7,315,650 7,324,873 7,328,083 7,330,777 7,333,879 7,355,725
7,359,817 7,373,220 7,376,488 7,386,367 7,464,623 7,447,615 7,445,260 7,474,939 7,486,816
7,495,192 7,501,778 7,502,504 7,508,155 7,512,459 7,525,273 7,526,121
VersaBell, ServoBell and SpeedDock Patents Pending.
Conventions
This manual includes information essential to the safety of personnel, equipment, software, and
data. This information is indicated by headings and boxes in the text.
Warning
Information appearing under WARNING concerns the protection of
personnel. It is boxed and in bold type to set it apart from other text.
Caution
Information appearing under CAUTION concerns the protection of
equipment, software, and data. It is boxed to set it apart from other text.
iii
About This Manual
MAROUHT9102171E REV F
Note Information appearing next to NOTE concerns related information or useful hints.
iv
Contents
About This Manual
Safety
............................................................................................................................
i
..........................................................................................................................................
lxiii
....................................................................................................................
lxxi
QUICK REFERENCE
Chapter 1
1.1
1.2
1.2.1
1.2.2
1.2.3
1.2.4
1.3
1.3.1
1.3.2
1.3.3
1.3.4
1.3.5
1.3.6
1.3.7
1.3.8
1.3.9
1.3.10
1.3.11
1.3.12
1.3.13
1.3.14
1.4
1.5
OVERVIEW AND STARTUP .....................................................................................
OVERVIEW ...............................................................................................................
ROBOT ......................................................................................................................
Robot Overview ............................................................................................................
Robot Models ...............................................................................................................
HandlingTool End-of-Arm Tooling (EOAT) .......................................................................
Extended Axes .............................................................................................................
CONTROLLER ............................................................................................................
Controller Overview .....................................................................................................
Standard Operator Panel ................................................................................................
MODE SELECT Switch ..............................................................................................
Robot Stop Variation ....................................................................................................
User Operator Panel (UOP) ...........................................................................................
Emergency Stop Devices ..............................................................................................
Communications ........................................................................................................
Input/Output (I/O) ......................................................................................................
Remote I/O Interfaces ..................................................................................................
Motion .....................................................................................................................
Extended Axes ...........................................................................................................
Controller Backplane ...................................................................................................
Memory ...................................................................................................................
Line Tracking ............................................................................................................
FANUC SOFTWARE .................................................................................................
STARTUP (AND POWER OFF) OF THE ROBOT ...........................................................
1–1
1–2
1–2
1–2
1–3
1–3
1–4
1–5
1–5
1–9
1–12
1–15
1–16
1–16
1–16
1–17
1–18
1–18
1–19
1–20
1–20
1–22
1–22
1–23
Chapter 2
2.1
2.2
2.3
2.3.1
2.3.2
2.3.3
2.3.4
2.3.5
2.3.6
2.3.7
2.3.8
2.3.9
2.4
2.5
iPENDANT OPERATIONS .......................................................................................
OVERVIEW .................................................................................................................
TEACH PENDANT SWITCHES......................................................................................
SCREEN NAVIGATION.................................................................................................
Touch/Non-Touch Screen ................................................................................................
Screen Backlighting .....................................................................................................
Zoom.........................................................................................................................
Related View Menu ......................................................................................................
Maximize/Restore ........................................................................................................
Window Display ..........................................................................................................
Browser Guidelines ....................................................................................................
Changing Focus ..........................................................................................................
Color Setup ...............................................................................................................
TEACH PENDANT KEYS ...........................................................................................
HAPTIC iPENDANT ...................................................................................................
2–1
2–3
2–4
2–6
2–6
2–10
2–11
2–12
2–12
2–13
2–20
2–25
2–26
2–27
2–36
v
Contents
Overview ...................................................................................................................
Hardware/Software Requirements, Application Tools .........................................................
Testing the Haptic iPendant ............................................................................................
Configuring the Haptic iPendant .....................................................................................
Haptic Log .................................................................................................................
Common Haptic Functions ............................................................................................
Material Handling Haptic Functions ................................................................................
STATUS.....................................................................................................................
Status Bar Displays .....................................................................................................
Status indicators .........................................................................................................
LEDs .......................................................................................................................
Display Equip ............................................................................................................
HELP ........................................................................................................................
MORE INFO ..............................................................................................................
Help and Diagnostics ..................................................................................................
ADDITIONAL iPENDANT FUNCTIONS .......................................................................
Document Viewer ........................................................................................................
Menu Favorites ...........................................................................................................
Menu History .............................................................................................................
Multi-Pane Edit ..........................................................................................................
Other iPendant Guidelines ...........................................................................................
Popup Menus .............................................................................................................
Screen Customizations .................................................................................................
Software Keyboard ......................................................................................................
Top Menu ...................................................................................................................
Universal Serial Bus (USB) Port ...................................................................................
User Views ................................................................................................................
2–36
2–37
2–38
2–38
2–40
2–40
2–48
2–55
2–55
2–57
2–57
2–57
2–57
2–57
2–58
2–60
2–60
2–62
2–65
2–65
2–66
2–67
2–68
2–82
2–91
2–98
2–98
Chapter 3
3.1
3.1.1
3.1.2
3.2
3.2.1
3.2.2
3.2.3
3.3
3.3.1
3.3.2
3.4
3.4.1
3.5
3.5.1
3.5.2
3.5.3
iHMI GUIDES
.........................................................................................................
iHMI GUIDE NAVIGATION ...........................................................................................
The First Time you use iHMI Guided Setup ........................................................................
How to Use iHMI Setup Guides ........................................................................................
BASIC SETUP ............................................................................................................
Overview ...................................................................................................................
Initial Setup ................................................................................................................
End of Arm Tool Setup .................................................................................................
TEACH .....................................................................................................................
Creating a Program ......................................................................................................
Selecting a Program .....................................................................................................
RUN .........................................................................................................................
Monitoring a Running Program ......................................................................................
UTILITY ...................................................................................................................
Backup ......................................................................................................................
Jog Assist ...................................................................................................................
Tutorials.....................................................................................................................
3–1
3–2
3–2
3–3
3–10
3–10
3–11
3–12
3–13
3–13
3–14
3–15
3–15
3–16
3–17
3–17
3–18
Chapter 4
4.1
4.1.1
4.1.2
4.1.3
4.1.4
4.1.5
4.1.6
4.2
4.2.1
4D FUNCTIONALITY ...............................................................................................
OVERVIEW ................................................................................................................
Introduction ..................................................................................................................
Navigation ....................................................................................................................
Basic Display Concepts ...................................................................................................
Selected Program .........................................................................................................
Frames .......................................................................................................................
Groups .......................................................................................................................
USER INTERFACE SCREENS .....................................................................................
VIEWING 4D SCENES ................................................................................................
4–1
4–2
4–2
4–5
4–8
4–10
4–10
4–10
4–11
4–11
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
2.5.6
2.5.7
2.6
2.6.1
2.6.2
2.6.3
2.6.4
2.7
2.7.1
2.7.2
2.8
2.8.1
2.8.2
2.8.3
2.8.4
2.8.5
2.8.6
2.8.7
2.8.8
2.8.9
2.8.10
2.8.11
vi
MAROUHT9102171E REV F
MAROUHT9102171E REV F
Contents
ADJUSTING THE VIEW .............................................................................................
VISUAL JOG .............................................................................................................
EDIT NODE MAP SCREEN .........................................................................................
SELECT SCREEN .......................................................................................................
VIEWING TWO DIFFERENT PROGRAMS ...................................................................
PROGRAM UTILITIES ...............................................................................................
TCP TRACE ..............................................................................................................
FRAME SETUP .........................................................................................................
POSITION REGISTERS ..............................................................................................
REMOTE CONTROLLER DISPLAY .............................................................................
DCS 4D VISUALIZATION ..........................................................................................
4D CUSTOMIZATION .................................................................................................
ACCESSING THE 4D DISPLAY FROM A PC .................................................................
View Adjustment Mode ................................................................................................
Scene Visibility ...........................................................................................................
4D GRAPHICS IMPORT ..............................................................................................
4–13
4–20
4–25
4–28
4–29
4–30
4–32
4–34
4–35
4–36
4–39
4–40
4–41
4–42
4–43
4–43
Chapter 5
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.9.1
5.9.2
5.10
5.11
5.12
JOGGING THE ROBOT .........................................................................................
Overview ....................................................................................................................
Visual Jog.....................................................................................................................
Jog Speed .....................................................................................................................
Coordinate Systems ........................................................................................................
Wrist Jogging ................................................................................................................
Remote TCP Jogging (Option) .........................................................................................
Motion Groups ..............................................................................................................
Jog Menu .....................................................................................................................
Extended Axes and Sub-Groups ......................................................................................
Overview ...................................................................................................................
J7 and J8 Jog Keys .......................................................................................................
Incremental Jogging .....................................................................................................
Jogging the Robot and Other Axes ..................................................................................
Jogging the Robot without the Teach Pendant ....................................................................
5–1
5–2
5–2
5–2
5–4
5–6
5–7
5–8
5–9
5–11
5–11
5–12
5–16
5–17
5–22
Chapter 6
6.1
6.2
6.3
6.4
6.5
6.6
6.6.1
6.6.2
6.6.3
6.7
6.7.1
6.7.2
6.7.3
6.8
FRAMES .................................................................................................................
Frames Overview .........................................................................................................
How Frames are Used .....................................................................................................
Using the Right-Hand Rule to Understand Robot Frames .......................................................
Frame Types .................................................................................................................
World Frame .................................................................................................................
Tool Frame ...................................................................................................................
Tool Frame General Information .......................................................................................
Setting Up a Tool Frame..................................................................................................
Selecting a Tool Frame ................................................................................................
User Frame .................................................................................................................
Overview ...................................................................................................................
Setting Up a User Frame ...............................................................................................
Selecting a User Frame .................................................................................................
Remote TCP Frame ......................................................................................................
6–1
6–2
6–2
6–4
6–5
6–5
6–6
6–6
6–9
6–35
6–37
6–37
6–39
6–57
6–58
4.2.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.14.1
4.14.2
4.15
vii
Contents
6.8.1
6.9
6.9.1
6.9.2
6.10
6.10.1
6.10.2
6.11
6.12
Chapter 7
7.1
7.2
7.2.1
7.2.2
7.2.3
7.2.4
7.2.5
7.2.6
7.2.7
7.2.8
7.2.9
7.2.10
7.3
7.3.1
7.3.2
7.3.3
7.3.4
7.3.5
7.3.6
7.3.7
7.3.8
7.3.9
7.3.10
7.3.11
7.3.12
7.3.13
7.3.14
7.3.15
7.3.16
7.3.17
7.3.18
7.3.19
7.3.20
7.3.21
7.4
7.5
7.5.1
7.5.2
7.5.3
7.5.4
7.5.5
7.6
7.6.1
7.6.2
7.6.3
viii
MAROUHT9102171E REV F
Setting Up a Remote TCP Frame ...................................................................................
Jog Frame...................................................................................................................
Setting Up Jog Frame ..................................................................................................
Selecting a Jog Frame .................................................................................................
Cell Frame and Cell Floor .............................................................................................
Cell Frame Setup .........................................................................................................
Cell Floor Setup ..........................................................................................................
Saving Frame Data .......................................................................................................
Frame Visualization......................................................................................................
6–58
6–68
6–68
6–78
6–79
6–80
6–85
6–85
6–87
PROGRAM INSTRUCTIONS .................................................................................. 7–1
OVERVIEW ............................................................................................................... 7–5
MOTION INSTRUCTION ............................................................................................ 7–5
Overview .................................................................................................................... 7–5
Motion Type ................................................................................................................ 7–6
Circular Arc Type A Motion Instructions .......................................................................... 7–11
Positional Information ................................................................................................. 7–35
Position Confirmation ................................................................................................. 7–36
Motion Status Display ................................................................................................. 7–37
Frame Number of Positional Data .................................................................................. 7–45
Switch Frame Check Type ........................................................................................... 7–46
Speed ....................................................................................................................... 7–47
Termination Type ....................................................................................................... 7–54
MOTION OPTIONS INSTRUCTION ............................................................................. 7–56
Acceleration Override ................................................................................................. 7–58
Advanced Constant Path .............................................................................................. 7–59
Break ....................................................................................................................... 7–76
Constant Path ............................................................................................................ 7–77
Coordinated Motion ..................................................................................................... 7–87
Corner Distance Control Option ...................................................................................... 7–87
Extended Velocity EV Motion Option ............................................................................ 7–98
FacePlate Linear ........................................................................................................ 7–100
Incremental Motion .................................................................................................. 7–102
Minimal Rotation (HandlingTool Only) ........................................................................ 7–103
Offset ..................................................................................................................... 7–105
Offset Position Register ............................................................................................. 7–105
ORNT_BASE ........................................................................................................... 7–106
Remote TCP Motion Option (optional) ......................................................................... 7–109
Search [ ] Motion Option ........................................................................................... 7–111
Skip Jump ................................................................................................................ 7–112
Skip Label .............................................................................................................. 7–113
Time Before / Time After ........................................................................................... 7–114
Tool_offset .............................................................................................................. 7–115
Tool offset position register ........................................................................................ 7–116
Wrist Joint .............................................................................................................. 7–117
ALL-POINT TEACHING FOR PALLETIZING ........................................................ 7–118
TOUCH SENSE INSTRUCTIONS ............................................................................. 7–120
Overview ................................................................................................................ 7–120
Search Start Instruction ............................................................................................. 7–121
Search End Instruction .............................................................................................. 7–121
Touch Offset Instruction ............................................................................................ 7–122
Touch Offset End Instruction ...................................................................................... 7–123
PALLETIZING INSTRUCTIONS ............................................................................... 7–123
Overview ................................................................................................................ 7–123
PALLETIZING-B Instruction ..................................................................................... 7–126
PALLETIZING-BX Instruction ................................................................................... 7–132
MAROUHT9102171E REV F
7.6.4
7.6.5
7.6.6
7.7
7.8
7.8.1
7.8.2
7.8.3
7.9
7.9.1
7.9.2
7.9.3
7.9.4
7.9.5
7.10
7.11
7.12
7.12.1
7.12.2
7.12.3
7.12.4
7.12.5
7.13
7.13.1
7.13.2
7.13.3
7.13.4
7.13.5
7.13.6
7.14
7.15
7.15.1
7.15.2
7.15.3
7.15.4
7.15.5
7.15.6
7.15.7
7.16
7.16.1
7.16.2
7.16.3
7.16.4
7.16.5
7.16.6
7.16.7
7.16.8
7.16.9
7.16.10
7.16.11
7.17
7.17.1
7.17.2
7.17.3
7.17.4
7.17.5
Contents
PALLETIZING-E Instruction .....................................................................................
PALLETIZING-EX Instruction ...................................................................................
PALLETIZING-END Instruction ................................................................................
PALLET REGISTER INSTRUCTIONS .........................................................................
BASIC PROCESS AXES INSTRUCTIONS (OPTION) ....................................................
Overview .................................................................................................................
SET ISDT SPEED Instruction ......................................................................................
STOP ALL ISDT Instruction........................................................................................
BRANCHING INSTRUCTIONS ................................................................................
Overview ................................................................................................................
Label Definition Instruction LBL[x] ............................................................................
Unconditional Branching Instructions ..........................................................................
Conditional Branching Instructions ..............................................................................
Wizard to Input Arguments ..........................................................................................
COLLISION GUARD INSTRUCTIONS (OPTION) ......................................................
CONDITION MONITOR INSTRUCTIONS .................................................................
FOR/ENDFOR INSTRUCTIONS .................................................................................
Overview .................................................................................................................
FOR/ENDFOR Instruction Specification ........................................................................
Teach FOR/ENDFOR Instruction ..................................................................................
Execution examples....................................................................................................
Alarms .....................................................................................................................
INPUT/OUTPUT INSTRUCTIONS ............................................................................
Overview ................................................................................................................
Digital Input and Output Instructions ...........................................................................
Robot Digital Input and Output Instructions ..................................................................
Analog Input and Output Instructions ...........................................................................
Group Input and Output Instructions ............................................................................
Input and Output Instruction Format ..............................................................................
MACRO COMMAND INSTRUCTION .......................................................................
MATH FUNCTION INSTRUCTIONS ..........................................................................
Type of Math Functions ..............................................................................................
Instruction Format of Math Function .............................................................................
Function Specification of Math Functions .......................................................................
Background Operation of Math Function ........................................................................
Teach Math Function Instruction ...................................................................................
Restriction of Teaching Math Function ...........................................................................
Exceptions and Restriction...........................................................................................
MISCELLANEOUS INSTRUCTIONS ........................................................................
Overview ................................................................................................................
RSR Enable/Disable Instruction ..................................................................................
User Alarm Instruction ..............................................................................................
Timer Instruction ......................................................................................................
OVERRIDE Instruction .............................................................................................
Remark Instruction ...................................................................................................
Multi-lng Remark Instruction .......................................................................................
Line Remark (Comment out) Instruction ........................................................................
Message Instruction ..................................................................................................
Parameter Name Instruction .......................................................................................
Maximum Speed Instruction .......................................................................................
MIXED LOGIC INSTRUCTIONS ..............................................................................
Overview ................................................................................................................
Data Types ..............................................................................................................
Operators ................................................................................................................
Expressions .............................................................................................................
Adding Mixed Logic Instructions ................................................................................
7–139
7–146
7–154
7–154
7–156
7–156
7–156
7–158
7–158
7–158
7–158
7–158
7–160
7–164
7–173
7–173
7–177
7–177
7–177
7–178
7–183
7–187
7–188
7–188
7–189
7–190
7–192
7–193
7–194
7–196
7–196
7–197
7–197
7–199
7–204
7–205
7–207
7–208
7–208
7–208
7–209
7–209
7–210
7–210
7–210
7–211
7–212
7–213
7–213
7–214
7–216
7–216
7–216
7–217
7–218
7–220
ix
Contents
7.17.6
7.17.7
7.18
7.19
7.19.1
7.19.2
7.19.3
7.19.4
7.20
7.21
7.21.1
7.21.2
7.21.3
7.21.4
7.21.5
7.21.6
7.21.7
7.22
7.23
7.23.1
7.23.2
7.23.3
7.24
7.24.1
7.24.2
7.24.3
7.25
7.26
7.26.1
7.26.2
7.26.3
7.26.4
7.26.5
7.26.6
7.26.7
7.26.8
7.27
7.28
7.28.1
7.28.2
7.28.3
7.29
7.30
7.31
7.31.1
7.31.2
7.31.3
7.31.4
7.31.5
7.31.6
7.32
7.33
7.33.1
7.33.2
x
MAROUHT9102171E REV F
Background Logic ....................................................................................................
Backup/Restore ........................................................................................................
MULTIPLE CONTROL INSTRUCTIONS ...................................................................
MOTION GROUP INSTRUCTIONS (OPTION) .......................................................
Overview ................................................................................................................
Independent Motion Group Instructions ........................................................................
Simultaneous Motion Group Instructions ......................................................................
Defining Motion Group Instructions .............................................................................
OFFSET/FRAME INSTRUCTIONS ...........................................................................
PARAMETERS FOR PROGRAM CALL AND MACRO INSTRUCTIONS .......................
Overview ................................................................................................................
Parameter Instruction Syntax ......................................................................................
String Value Selections ..............................................................................................
Argument Registers ..................................................................................................
Guidelines for Using Parameters .................................................................................
Including Parameters in Program Call and Macro Instructions ...........................................
Including Argument Registers in Sub-Programs .............................................................
PAYLOAD INSTRUCTION ......................................................................................
POINT LOGIC INSTRUCTION ...................................................................................
Overview .................................................................................................................
Point Logic Instruction................................................................................................
Point Logic View Function ..........................................................................................
POSITION REGISTER INSTRUCTIONS ....................................................................
Overview ................................................................................................................
PR[x] Position Register Instructions .............................................................................
PR[i,j] Position Register Element Instructions ................................................................
POSITION REGISTER LOOK-AHEAD INSTRUCTIONS .............................................
PROGRAM CONTROL INSTRUCTIONS ...................................................................
Overview ................................................................................................................
PAUSE Instruction ...................................................................................................
ABORT Instruction ..................................................................................................
Error Program Instruction ..........................................................................................
Resume Program Instruction .......................................................................................
Maintenance Program Instruction ................................................................................
Clear Resume Program Instruction ..............................................................................
Return Path Disable Instruction ...................................................................................
PROCESS SYNCHRONIZATION ..............................................................................
QUICK SKIP (HIGH-SPEED SKIP) ...........................................................................
Overview ................................................................................................................
Execution ...............................................................................................................
Limitations .............................................................................................................
REGISTER INSTRUCTIONS ....................................................................................
SKIP INSTRUCTION ...............................................................................................
STRING REGISTER INSTRUCTIONS .........................................................................
Overview .................................................................................................................
String Register Assignment and Concatenation ................................................................
String Conversion and Precedence ................................................................................
STRLEN Instruction ...................................................................................................
FINDSTR Instruction .................................................................................................
SUBSTR Instruction ...................................................................................................
TOOL OFFSET CONDITION INSTRUCTION .............................................................
VIA INSTRUCTION..................................................................................................
How to Use...............................................................................................................
Specifications ............................................................................................................
7–222
7–233
7–234
7–234
7–234
7–235
7–235
7–235
7–237
7–240
7–240
7–241
7–242
7–244
7–245
7–247
7–251
7–252
7–253
7–253
7–255
7–257
7–260
7–260
7–260
7–262
7–264
7–265
7–265
7–265
7–266
7–266
7–267
7–267
7–267
7–268
7–268
7–271
7–271
7–271
7–272
7–272
7–276
7–279
7–279
7–279
7–281
7–282
7–282
7–283
7–284
7–285
7–285
7–288
MAROUHT9102171E REV F
7.34
7.34.1
7.34.2
7.34.3
7.34.4
7.34.5
7.34.6
7.34.7
7.34.8
7.34.9
7.34.10
7.34.11
7.34.12
7.34.13
7.34.14
7.34.15
7.34.16
7.34.17
7.34.18
7.34.19
7.34.20
7.34.21
7.34.22
7.34.23
7.34.24
7.34.25
7.35
Chapter 8
8.1
8.2
8.2.1
8.2.2
8.2.3
8.3
8.3.1
8.3.2
8.3.3
8.4
8.4.1
8.4.2
8.4.3
8.5
8.5.1
8.5.2
8.5.3
8.5.4
8.5.5
8.5.6
8.5.7
8.5.8
8.5.9
8.5.10
8.5.11
8.5.12
8.5.13
8.5.14
8.5.15
Contents
VISION INSTRUCTIONS .........................................................................................
Overview ................................................................................................................
RUN_FIND ............................................................................................................
GET_OFFSET .........................................................................................................
GET_PASSFAIL........................................................................................................
GET_NFOUND ........................................................................................................
SET_REFERENCE ..................................................................................................
OVERRIDE ..............................................................................................................
CAMERA_CALIB ...................................................................................................
VR[]. MODELID .....................................................................................................
VR[].MES[] ..............................................................................................................
VR[].FOUND_POS[] .................................................................................................
VR[].OFFSET .........................................................................................................
VR.[].ENC ...............................................................................................................
RUN_FIND SR[] .......................................................................................................
GET_OFFSET SR[] ...................................................................................................
SET_REF SR[] ..........................................................................................................
CAMERA_CAL SR[] .................................................................................................
GET_PASSFAIL SR[] ................................................................................................
GET_READING .......................................................................................................
SAMPLE PROGRAM ..............................................................................................
Re-Calibration and Verification Sample Program..............................................................
Bar Code Reading Sample Program ...............................................................................
Inspection Sample Program .........................................................................................
2D Single Multi-View Vision Process ............................................................................
Calling Vision by String Register Sample Program ...........................................................
WAIT INSTRUCTIONS ............................................................................................
7–288
7–288
7–289
7–289
7–289
7–290
7–290
7–291
7–291
7–292
7–292
7–293
7–293
7–293
7–294
7–294
7–295
7–295
7–296
7–296
7–296
7–297
7–299
7–299
7–299
7–300
7–300
CREATING A PROGRAM
.......................................................................................
OVERVIEW ...............................................................................................................
PLANNING A PROGRAM ...........................................................................................
Overview ....................................................................................................................
Robot Motion ..............................................................................................................
Special Positions ..........................................................................................................
CREATING AND NAMING A PROGRAM .....................................................................
Naming a Program .......................................................................................................
Creating a New Program .................................................................................................
Select Screen and Operations .........................................................................................
ADDING INSTRUCTIONS AND EDITING A PROGRAM ...............................................
Overview ...................................................................................................................
Adding Instructions to a Program ....................................................................................
Editing a Program ......................................................................................................
PROGRAM DETAIL INFORMATION ..........................................................................
Overview ..................................................................................................................
Creation Date ............................................................................................................
Modification Date ......................................................................................................
Copy Source ..............................................................................................................
Positions and Program Size ..........................................................................................
Program Name ...........................................................................................................
Sub Type ..................................................................................................................
Program Comment .....................................................................................................
Group Mask ..............................................................................................................
Write Protection .........................................................................................................
Ignore Pause ..............................................................................................................
Stack Size .................................................................................................................
Collection ...................................................................................................................
No-Disp Sub-Program ..................................................................................................
Application Mask .......................................................................................................
8–1
8–3
8–3
8–3
8–3
8–4
8–7
8–7
8–9
8–12
8–13
8–13
8–13
8–16
8–32
8–32
8–36
8–36
8–36
8–37
8–37
8–38
8–39
8–39
8–40
8–40
8–41
8–41
8–41
8–42
xi
Contents
8.5.16
8.5.17
8.5.18
8.5.19
8.5.20
8.6
8.6.1
8.6.2
8.6.3
8.7
8.8
8.8.1
8.8.2
8.8.3
8.8.4
8.8.5
8.8.6
8.8.7
8.9
8.9.1
8.9.2
8.10
8.10.1
8.10.2
8.10.3
8.10.4
8.10.5
8.11
8.12
8.12.1
8.12.2
8.12.3
8.12.4
8.12.5
8.12.6
8.12.7
Chapter 9
9.1
9.2
9.2.1
9.2.2
9.2.3
9.2.4
9.2.5
9.3
9.3.1
9.3.2
9.3.3
9.3.4
9.3.5
9.4
9.5
9.5.1
9.5.2
xii
MAROUHT9102171E REV F
Program Type ............................................................................................................
Multi-Arm Main ........................................................................................................
Head of Family ..........................................................................................................
Family Members ........................................................................................................
Procedure for Accessing and/or Changing Program Detail Information...................................
COLLECTIONS ..........................................................................................................
Overview ...................................................................................................................
Adding to a Collection ..................................................................................................
Displaying a Collection .................................................................................................
LINE NUMBER AND PROGRAM END MARKER ........................................................
MACROS .................................................................................................................
Overview ..................................................................................................................
Writing a Macro ..........................................................................................................
Setting Up Macros ......................................................................................................
Executing Macros ......................................................................................................
Assigning I/O and Recording Positions in Macro Command Programs .................................
HandlingTool Macro Commands ...................................................................................
Creating a Macro Program ...........................................................................................
ICON (TOUCH PANEL) EDITOR ..................................................................................
Displaying/Exiting the Icon (Touch Panel) Editor ...............................................................
Using the Icon Editor ....................................................................................................
MODIFYING A PROGRAM IN THE BACKGROUND (BACKGROUND
EDITING) .................................................................................................................
Overview ..................................................................................................................
Background Edit Process Flow .....................................................................................
Background Editing Using the iPendant ..........................................................................
Modifying a Program in the Background ........................................................................
Troubleshooting Background Edit .................................................................................
DISPLAYING A PROGRAM IN THE BACKGROUND (BACKGROUND LOOK)................
SETTING PROGRAM STORAGE CONFIGURATION .....................................................
User Interface .............................................................................................................
Maximum Program Size ...............................................................................................
KAREL Control of STORAGE .......................................................................................
File Formats................................................................................................................
Storage When Loading from a File ..................................................................................
Backup and restore .....................................................................................................
Issues relating to SHADOW programs .............................................................................
8–43
8–43
8–43
8–43
8–43
8–47
8–47
8–47
8–48
8–49
8–50
8–50
8–50
8–50
8–56
8–59
8–60
8–62
8–62
8–62
8–64
TESTING A PROGRAM AND RUNNING PRODUCTION .........................................
OVERVIEW ...............................................................................................................
PROGRAM PAUSE AND RECOVERY ...........................................................................
Program Pause and Recovery Overview ............................................................................
EMERGENCY STOP and Recovery ................................................................................
HOLD and Recovery ....................................................................................................
Setting Tolerance for Resuming a Program ........................................................................
Disable Fault Checking ...............................................................................................
TEST CYCLE ...........................................................................................................
Test Cycle Overview ...................................................................................................
Test Cycle Setup ........................................................................................................
Single Step Testing .....................................................................................................
Continuous Testing .....................................................................................................
Monitoring Programs ..................................................................................................
RELEASE WAIT .......................................................................................................
PRODUCTION OPERATION ......................................................................................
Production Operation Overview ....................................................................................
Standard Operator Panel Cycle Start Production ...............................................................
9–1
9–2
9–3
9–3
9–3
9–5
9–6
9–11
9–15
9–15
9–15
9–17
9–23
9–27
9–28
9–28
9–28
9–30
8–70
8–70
8–71
8–73
8–74
8–76
8–78
8–78
8–81
8–83
8–84
8–84
8–84
8–85
8–85
MAROUHT9102171E REV F
9.5.3
9.5.4
9.5.5
9.6
9.6.1
9.6.2
9.6.3
9.7
Chapter 10
10.1
10.1.1
10.1.2
10.1.3
10.1.4
10.1.5
10.2
10.3
10.4
10.4.1
10.4.2
10.4.3
10.4.4
10.4.5
10.4.6
10.5
10.6
10.7
10.7.1
10.7.2
10.7.3
10.7.4
10.7.5
10.7.6
10.7.7
10.7.8
10.7.9
10.7.10
10.7.11
10.8
10.8.1
10.8.2
10.9
10.9.1
10.9.2
10.9.3
10.9.4
10.9.5
10.10
10.10.1
10.10.2
10.10.3
10.10.4
10.10.5
10.11
Contents
User Operator Panel Start ............................................................................................
Robot Service Request (RSR) Production Start ................................................................
Program Number Select (PNS) and UOP Production Start ..................................................
ADJUSTING A PROGRAM (PROG ADJUST) ...............................................................
Overview ..................................................................................................................
Adjusting a Program or a Schedule ................................................................................
Error Handling ...........................................................................................................
MAINTENANCE AND REPAIR ..................................................................................
9–32
9–33
9–34
9–36
9–36
9–36
9–44
9–46
GENERAL SETUP ............................................................................................... 10–1
PRODUCTION OPERATION SETUP ........................................................................... 10–3
Production Operation Setup Overview ............................................................................ 10–3
Robot Service Request (RSR) Setup .............................................................................. 10–7
Program Number Select (PNS) Setup ........................................................................... 10–11
Style Name Setup ..................................................................................................... 10–16
OTHER Program Select Mode .................................................................................... 10–21
AXIS LIMITS SETUP .............................................................................................. 10–22
BRAKE TIMERS SETUP ......................................................................................... 10–25
GENERAL SETUP SCREEN ..................................................................................... 10–30
Overview ................................................................................................................ 10–30
Brake on Hold Setup ................................................................................................. 10–30
Current Language Setup ............................................................................................ 10–31
Ignore Offset Setup ................................................................................................... 10–32
Ignore Tool Offset Setup ............................................................................................ 10–33
Enable VOFFSET Setup ............................................................................................ 10–33
USER ALARM SETUP ............................................................................................ 10–34
OVERRIDE SELECT SETUP .................................................................................... 10–37
PASSWORD SETUP ................................................................................................ 10–40
Password Operations Overview ................................................................................... 10–40
Install User Password Operations ................................................................................ 10–41
Disabling Passwords ................................................................................................. 10–44
Disabling Passwords without INSTALL login ................................................................. 10–45
Program and Set Up User Password Operations .............................................................. 10–46
Configuring Passwords .............................................................................................. 10–50
Password Log .......................................................................................................... 10–67
Password Level Screen Permissions .............................................................................. 10–69
USB Password Function .............................................................................................. 10–71
Using KCL with Passwords Enabled ............................................................................ 10–72
Password Auto Login Function ..................................................................................... 10–74
ERROR SEVERITY TABLE ..................................................................................... 10–75
Error Severity Table Overview .................................................................................... 10–75
Modifying Error Severity ........................................................................................... 10–75
ERROR CODE OUTPUT SETUP (OPTION) ................................................................ 10–80
Error Code Output Setup Overview ............................................................................. 10–80
Method 1: Output Errors Using 33 Digital Outputs ......................................................... 10–80
Method 2: Output Errors Using 3 Group Outputs ........................................................... 10–84
Output Error Parameters ............................................................................................ 10–86
Procedure ............................................................................................................... 10–86
ROBOT PAYLOAD SETTING ................................................................................... 10–87
Overview ................................................................................................................ 10–87
Setting the Active Payload Schedule ............................................................................ 10–88
Setup of Payload Schedules ........................................................................................ 10–90
Using Payload Ident. (J669) to Set Up Payload Schedules ................................................ 10–94
Setting Up Arm Load Information .............................................................................. 10–107
STROKE LIMIT SETUP .......................................................................................... 10–108
xiii
Contents
10.12
Chapter 11
11.1
11.1.1
11.1.2
11.1.3
11.2
11.3
11.4
11.4.1
11.4.2
11.4.3
11.4.4
11.4.5
11.4.6
11.5
11.5.1
11.6
11.6.1
11.6.2
11.7
11.8
11.9
11.10
11.11
11.12
11.13
11.14
11.15
11.16
11.16.1
11.16.2
11.16.3
11.16.4
11.16.5
11.16.6
11.16.7
11.16.8
11.16.9
11.17
11.18
11.19
11.20
11.21
11.21.1
11.21.2
11.21.3
11.22
11.23
11.24
xiv
MAROUHT9102171E REV F
SYSTEM CONFIGURATION SETUP ........................................................................
STATUS DISPLAYS AND INDICATORS ................................................................
STATUS DISPLAYS AND INDICATORS ......................................................................
Overview ..................................................................................................................
Teach Pendant Status Indicators ....................................................................................
Standard Operator Panel Status Indicators .......................................................................
CLOCK STATUS .......................................................................................................
EXECUTION HISTORY .............................................................................................
MAINTENANCE REMINDER ......................................................................................
Overview ...................................................................................................................
Main Menu .................................................................................................................
Setup .......................................................................................................................
Check Maintenance Time and Complete Maintenance .......................................................
Maintenance Record ...................................................................................................
Robot Setting ............................................................................................................
MEMORY STATUS .................................................................................................
Checking Memory ....................................................................................................
NOTIFICATIONS .....................................................................................................
Overview .................................................................................................................
Notifications Screen ...................................................................................................
PALLET REGISTER STATUS ...................................................................................
POSITION REGISTER STATUS .................................................................................
POSITION STATUS .................................................................................................
POWER CONSUMPTION MONITOR..........................................................................
PROCESS AXES STATUS (OPTION) ..........................................................................
PROGRAM TIMER STATUS ....................................................................................
PROGRAM or PRODUCTION STATUS ......................................................................
PROGRAM MONITOR STATUS ...............................................................................
REGISTER STATUS ................................................................................................
ROBOT AXES STATUS ...........................................................................................
Overview ................................................................................................................
Status 1 Screen ........................................................................................................
Status 2 Screen ........................................................................................................
Pulse Screen ............................................................................................................
Torque Monitor Screen ..............................................................................................
Tracking Screen .......................................................................................................
Disturbance Torque Screen .........................................................................................
Servo Diagnosis .......................................................................................................
Procedure ...............................................................................................................
STOP SIGNAL STATUS ...........................................................................................
STRING REGISTER STATUS .....................................................................................
SYSTEM TIMER STATUS ........................................................................................
SYSTEM VARIABLE STATUS ..................................................................................
TURN NUMBER DISPLAY ......................................................................................
Overview ................................................................................................................
Usual Configuration ..................................................................................................
$SCR_GRP[group].$turn_axis[i] System Variable ..........................................................
USER SCREEN STATUS ..........................................................................................
VERSION IDENTIFICATION STATUS ......................................................................
VISUAL DIAGNOSTICS ...........................................................................................
10–109
11–1
11–3
11–3
11–3
11–4
11–5
11–6
11–8
11–8
11–9
11–10
11–14
11–17
11–20
11–21
11–21
11–23
11–23
11–24
11–26
11–27
11–31
11–33
11–34
11–35
11–38
11–39
11–40
11–42
11–42
11–43
11–46
11–47
11–48
11–48
11–49
11–50
11–57
11–57
11–59
11–62
11–64
11–65
11–65
11–66
11–69
11–70
11–71
11–76
MAROUHT9102171E REV F
Contents
11.24.1 Overview .................................................................................................................
11.24.2 Creating and Editing Visual Diagnostic Screens ...............................................................
11.24.3 Managing Screens ......................................................................................................
11.24.4 Viewing Visual Diagnostic Screens ...............................................................................
11–76
11–78
11–88
11–90
Chapter 12 PROGRAM AND FILE MANIPULATION
...............................................................
12.1 STORAGE DEVICES .................................................................................................
12.1.1 Overview ..................................................................................................................
12.1.2 Storage Device Hints ....................................................................................................
12.1.3 Setting the Default Device ...........................................................................................
12.1.4 Setting Up a Port ......................................................................................................
12.1.5 Using a Memory Card or USB Memory Stick Interface ...................................................
12.1.6 Formatting Devices ..................................................................................................
12.1.7 Subdirectories ..........................................................................................................
12.2 MANIPULATING PROGRAMS ................................................................................
12.2.1 Overview ................................................................................................................
12.2.2 Selecting Programs On the SELECT Menu ...................................................................
12.2.3 Saving Programs ......................................................................................................
12.2.4 Loading Programs ....................................................................................................
12.2.5 Copying Programs Within the SELECT Menu ...............................................................
12.2.6 Deleting Programs from the SELECT Menu ..................................................................
12.2.7 Saving Files as ASCII ...............................................................................................
12.2.8 Filtering Programs in the Select List ..............................................................................
12.3 MANIPULATING FILES ..........................................................................................
12.3.1 Overview ................................................................................................................
12.3.2 Altering the FILE Menu View ....................................................................................
12.3.3 Generating a Directory of Files ...................................................................................
12.3.4 Backing Up Files .....................................................................................................
12.3.5 Loading and Restoring Files to Controller Memory .........................................................
12.3.6 Conversion of PC Files ..............................................................................................
12.3.7 Auto Software Update.................................................................................................
12.3.8 Displaying Text (ASCII) Files ....................................................................................
12.3.9 Copying Files ..........................................................................................................
12.3.10 Deleting Files ..........................................................................................................
12.3.11 Saving Files ............................................................................................................
12.3.12 Checking File Memory ..............................................................................................
12.4 AUTOMATIC BACKUP ...........................................................................................
12.4.1 Overview ................................................................................................................
12.4.2 Automatic Backup ....................................................................................................
12.5 TROUBLESHOOTING FILE BACKUP OR AUTOMATIC BACKUP ERRORS ................
12.6 IMAGE BACKUP ....................................................................................................
12.6.1 Overview ................................................................................................................
12.6.2 Performing an Image Backup .....................................................................................
12.6.3 Restoring an Image Backup ........................................................................................
12.7 ASCII PROGRAM LOADER (formerly known as ASCII UPLOAD) ................................
12.7.1 Overview ................................................................................................................
12.7.2 Loading an ASCII Teach Pendant Program From the Teach Pendant ..................................
12.7.3 Loading an ASCII Teach Pendant Program from KCL .....................................................
12.7.4 Viewing ASCII Program Loader Errors ........................................................................
12.7.5 Example ASCII File .................................................................................................
12–1
12–3
12–3
12–9
12–9
12–11
12–15
12–19
12–23
12–24
12–24
12–25
12–26
12–27
12–29
12–30
12–32
12–33
12–34
12–34
12–39
12–41
12–42
12–48
12–53
12–53
12–54
12–55
12–57
12–59
12–62
12–62
12–62
12–63
12–67
12–70
12–70
12–71
12–74
12–76
12–76
12–77
12–80
12–81
12–82
INPUT/OUTPUT (I/O) SETUP ...............................................................................
OVERVIEW .............................................................................................................
Overview ..................................................................................................................
Hardware ..................................................................................................................
Kinds of I/O ..............................................................................................................
SETTING UP I/O .......................................................................................................
13–1
13–3
13–3
13–3
13–3
13–5
Chapter 13
13.1
13.1.1
13.1.2
13.1.3
13.2
xv
Contents
13.2.1 Overview ..................................................................................................................
13.2.2 Configuring I/O .........................................................................................................
13.2.3 Adding Comments About I/O .......................................................................................
13.2.4 Complementary Output Signals and Polarity ....................................................................
13.2.5 Simulating I/O ...........................................................................................................
13.2.6 Controlling Outputs ....................................................................................................
13.2.7 Memory Image Port Assignment .................................................................................
13.2.8 Procedure for Setting Up I/O ......................................................................................
13.2.9 Custom I/O .............................................................................................................
13.3 DISTRIBUTED (MODEL B) I/O SETUP .....................................................................
13.3.1 Overview ................................................................................................................
13.3.2 Setting the DIP Switches ...........................................................................................
13.3.3 Setting Up the Basic Digital I/O Units ..........................................................................
13.3.4 Setting Up User I/O ..................................................................................................
13.4 ROBOT I/O SETUP .................................................................................................
13.5 STANDARD OPERATOR PANEL (SOP) I/O SETUP ....................................................
13.6 SETTING UP I/O LINK DEVICES .............................................................................
13.6.1 Overview ................................................................................................................
13.6.2 I/O Link Devices ......................................................................................................
13.6.3 Process I/O .............................................................................................................
13.6.4 Model A I/O ............................................................................................................
13.6.5 Model B I/O ............................................................................................................
13.6.6 I/O Link Device Screen .............................................................................................
13.6.7 I/O Link Connection .................................................................................................
13.6.8 FANUC I/O Link Connection Unit ..............................................................................
13.6.9 Setting the Number of Ports .......................................................................................
13.7 I/O INTERCONNECT SETUP ...................................................................................
13.8 CONTROLLING I/O ................................................................................................
13.8.1 Overview ................................................................................................................
13.8.2 Forcing Outputs .......................................................................................................
13.8.3 Simulating Inputs and Outputs ....................................................................................
13.8.4 Output When WAITing on Input ...................................................................................
13.9 USER OPERATOR PANEL (UOP) SIGNAL DEFINITION .............................................
13.9.1 Overview ................................................................................................................
13.9.2 UOP Input Signals ....................................................................................................
13.9.3 UOP Output Signals .................................................................................................
13.10 HANDLINGTOOL CELL INTERFACE I/O SIGNALS ..................................................
13.10.1 Overview ................................................................................................................
13.10.2 HandlingTool Cell Interface I/O Signals .......................................................................
13.10.3 Custom I/O .............................................................................................................
13–5
13–5
13–9
13–9
13–9
13–9
13–10
13–10
13–25
13–26
13–26
13–28
13–31
13–33
13–33
13–38
13–41
13–41
13–41
13–41
13–42
13–42
13–43
13–45
13–47
13–53
13–55
13–61
13–61
13–61
13–62
13–63
13–65
13–65
13–67
13–73
13–76
13–76
13–76
13–83
ADVANCED FUNCTIONS
....................................................................................
ADAPTIVE PROCESS CONTROL ..............................................................................
Overview ..................................................................................................................
Setting Up Input Parameters .......................................................................................
Setting Up Output Parameters .....................................................................................
Setting Up Map Functions ..........................................................................................
Setting Up Options ...................................................................................................
Adding the APC Instructions To a Program ...................................................................
ANGLE ENTRY SHIFT FUNCTION ..........................................................................
AUTO BACKWARD EXIT .........................................................................................
Overview .................................................................................................................
Specifications ............................................................................................................
Programming ............................................................................................................
AUTOMATIC ERROR RECOVERY (OPTION) ...........................................................
Overview ................................................................................................................
14–1
14–8
14–8
14–10
14–11
14–13
14–16
14–17
14–18
14–23
14–23
14–24
14–28
14–28
14–28
Chapter 14
14.1
14.1.1
14.1.2
14.1.3
14.1.4
14.1.5
14.1.6
14.2
14.3
14.3.1
14.3.2
14.3.3
14.4
14.4.1
xvi
MAROUHT9102171E REV F
MAROUHT9102171E REV F
14.4.2
14.4.3
14.4.4
14.4.5
14.4.6
14.4.7
14.4.8
14.4.9
14.5
14.5.1
14.5.2
14.5.3
14.5.4
14.5.5
14.6
14.6.1
14.6.2
14.6.3
14.6.4
14.6.5
14.6.6
14.7
14.7.1
14.7.2
14.7.3
14.8
14.8.1
14.8.2
14.8.3
14.9
14.9.1
14.9.2
14.9.3
14.9.4
14.9.5
14.10
14.10.1
14.10.2
14.10.3
14.10.4
14.10.5
14.10.6
14.11
14.11.1
14.11.2
14.11.3
14.11.4
14.11.5
14.11.6
14.11.7
14.11.8
14.12
14.12.1
14.12.2
14.12.3
14.12.4
14.12.5
Contents
Features ..................................................................................................................
Limitations .............................................................................................................
I/O Interface ............................................................................................................
Setup .....................................................................................................................
Programming ..........................................................................................................
Testing ...................................................................................................................
Error Recovery Manual Function ................................................................................
I/O Timing Sequence ................................................................................................
AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION ........................................
Specifications ............................................................................................................
Limitations ...............................................................................................................
Settings ....................................................................................................................
Additional Information ...............................................................................................
Programming ............................................................................................................
BRAKE CHECK FUNCTION .....................................................................................
Overview .................................................................................................................
Setup .......................................................................................................................
Start Brake Check ......................................................................................................
Result of Brake Check ................................................................................................
Limitations ...............................................................................................................
Caution ....................................................................................................................
CENTER FINDER ...................................................................................................
Overview ................................................................................................................
Using Center Finder ..................................................................................................
Troubleshooting .......................................................................................................
COLLISION DETECTION FOR AUXILIARY AXIS ......................................................
Overview .................................................................................................................
Initial Setting ............................................................................................................
Tuning Procedure .......................................................................................................
COLLISION GUARD ...............................................................................................
Overview ................................................................................................................
Limitations .............................................................................................................
Falsely Detected Collisions ........................................................................................
Setup .....................................................................................................................
Programmed Motion .................................................................................................
COLLISION RECOVERY (formerly known as Automatic Collision Recovery) ...................
Overview ................................................................................................................
Enabling and Disabling Collision Recovery ...................................................................
Collision Recovery Setup ...........................................................................................
Mode 1 of Collision Recovery ....................................................................................
Mode 2 of Collision Recovery ....................................................................................
Limitations .............................................................................................................
CONDITION MONITOR FUNCTION ........................................................................
Overview ................................................................................................................
Monitors .................................................................................................................
Monitor State ..........................................................................................................
Monitor Instructions .................................................................................................
Condition Handler Program ........................................................................................
Conditions ..............................................................................................................
Condition Menu .......................................................................................................
Restrictions .............................................................................................................
CONTINUOUS TURN FUNCTION (OPTION) .............................................................
OVERVIEW ..........................................................................................................
HARDWARE AND SOFTWARE ................................................................................
GENERAL SETUP .................................................................................................
OPERATIONAL RULES .........................................................................................
PROGRAMMING ...................................................................................................
14–29
14–30
14–31
14–32
14–39
14–42
14–43
14–45
14–50
14–51
14–53
14–54
14–57
14–58
14–63
14–63
14–63
14–64
14–65
14–65
14–66
14–66
14–66
14–67
14–74
14–74
14–74
14–75
14–75
14–77
14–77
14–78
14–78
14–78
14–80
14–84
14–84
14–84
14–84
14–86
14–88
14–89
14–90
14–90
14–91
14–92
14–93
14–94
14–94
14–95
14–98
14–104
14–104
14–106
14–107
14–110
14–115
xvii
Contents
MAROUHT9102171E REV F
14.12.6 TROUBLESHOOTING .............................................................................................
14.12.7 NOTES AND RESTRICTIONS .................................................................................
14.12.8 SPECIAL KAREL REMASTERING PROGRAM FOR HANDLING CONTINUOUS
ROTATING AXES....................................................................................................
14.12.9 GEAR INFORMATION ...........................................................................................
14.12.10 SPIRAL CLADDING ................................................................................................
14.13 COORDINATES OFFSET FUNCTION ......................................................................
14.13.1 Using the Coordinates Offset Function ........................................................................
14.13.2 Tool Frame Offset Function .......................................................................................
14.13.3 User Frame Offset Function ......................................................................................
14.14 CYCLE TIME LOGGING AND DISPLAY .................................................................
14.14.1 Overview ...............................................................................................................
14.14.2 Modes ...................................................................................................................
14.14.3 Tracking Cycle Time ................................................................................................
14.15 DATA MONITOR ...................................................................................................
14.15.1 Overview ...............................................................................................................
14.15.2 Data Monitor Setup .................................................................................................
14.15.3 Data Monitor Schedule .............................................................................................
14.15.4 Data Monitor Programming .......................................................................................
14.15.5 Data Monitor Chart ...................................................................................................
14.15.6 Data Monitor Operation .............................................................................................
14.16 DISTANCE BEFORE ..............................................................................................
14.16.1 Overview ...............................................................................................................
14.16.2 Specification ..........................................................................................................
14.16.3 Program Instruction .................................................................................................
14.16.4 Distance Value ........................................................................................................
14.16.5 Action ...................................................................................................................
14.16.6 Changing the Trigger Condition .................................................................................
14.16.7 Alarms Posted When Distance Before is Not Triggered ..................................................
14.16.8 Single Step Execution ..............................................................................................
14.16.9 Hold and Resume ....................................................................................................
14.16.10 Resume After Jogging ..............................................................................................
14.16.11 Power Failure Recovery ...........................................................................................
14.16.12 Adding the Distance Before Motion Option (Procedure) .................................................
14.16.13 Cautions and Limitations ..........................................................................................
14.16.14 System Variables .....................................................................................................
14.16.15 Error Codes ............................................................................................................
14.17 DUAL MOTOR DRIVE ............................................................................................
14.17.1 Introduction .............................................................................................................
14.17.2 Setup ......................................................................................................................
14.18 EASY NORMAL UTILITY (formerly known as Auto Normal Utility) ..............................
14.18.1 Overview ...............................................................................................................
14.18.2 Using the Easy Normal Utility ...................................................................................
14.18.3 Setup ....................................................................................................................
14.18.4 Execution ..............................................................................................................
14.19 EASY TEACH SUITE (formerly known as Simple Teach Suite) .......................................
14.19.1 Overview ...............................................................................................................
14.19.2 Auto Path Smoothing ...............................................................................................
14.20 ENHANCED MIRROR IMAGE (OPTION) ................................................................
14.21 EXECUTING MULTIPLE PROGRAMS (MULTI-TASKING) ........................................
14.21.1 Overview ...............................................................................................................
14.21.2 Guidelines .............................................................................................................
14.21.3 Synchronizing the Execution of Multiple Programs ........................................................
14.21.4 Effect of Multi-Tasking on Dedicated I/O Signals ..........................................................
14.21.5 Standard Operator Panel (SOP) Cycle Start Execution ....................................................
14.21.6 Program Number Select (PNS) Execution ....................................................................
14.21.7 RUN Program Instruction Execution ...........................................................................
xviii
14–118
14–120
14–121
14–123
14–135
14–136
14–136
14–140
14–143
14–147
14–147
14–149
14–151
14–155
14–155
14–157
14–161
14–165
14–166
14–168
14–169
14–169
14–169
14–170
14–170
14–172
14–173
14–175
14–176
14–176
14–179
14–181
14–181
14–183
14–184
14–187
14–187
14–187
14–188
14–189
14–189
14–190
14–194
14–196
14–196
14–196
14–197
14–206
14–224
14–224
14–224
14–225
14–225
14–226
14–227
14–228
MAROUHT9102171E REV F
14.21.8
14.22
14.22.1
14.22.2
14.22.3
14.23
14.23.1
14.23.2
14.23.3
14.24
14.24.1
14.24.2
14.24.3
14.25
14.25.1
14.25.2
14.25.3
14.25.4
14.26
14.26.1
14.26.2
14.26.3
14.26.4
14.26.5
14.26.6
14.26.7
14.26.8
14.26.9
14.26.10
14.26.11
14.26.12
14.26.13
14.26.14
14.26.15
14.26.16
14.26.17
14.26.18
14.26.19
14.26.20
14.27
14.27.1
14.27.2
14.27.3
14.27.4
14.28
14.29
14.29.1
14.29.2
14.29.3
14.29.4
14.29.5
14.29.6
14.29.7
14.30
14.31
14.31.1
Contents
Single Step Program Execution ..................................................................................
GRAVITY COMPENSATION ...................................................................................
System Variables .....................................................................................................
MOTION Screen .....................................................................................................
Mastering ...............................................................................................................
GROUP MASK EXCHANGE ...................................................................................
Overview ...............................................................................................................
Setting Up Group Mask Exchange ..............................................................................
Troubleshooting Group Mask Exchange ......................................................................
HIGH SPEED INPUT FUNCTIONS ..........................................................................
Overview ...............................................................................................................
Frequency Interface .................................................................................................
High Speed Scanning (for Line Tracking Part Detect). ...................................................
HIGH SPEED POSITION OUTPUT ............................................................................
Overview ................................................................................................................
Functions ................................................................................................................
Data formats ............................................................................................................
Setup ......................................................................................................................
INTERFACE PANEL ................................................................................................
Overview ................................................................................................................
Displaying the Interface Panel .....................................................................................
Interface Panel .........................................................................................................
Interface Panel Setup Screen .......................................................................................
Button Type Setup Screen ...........................................................................................
Setting of Button Type ...............................................................................................
Button Detail Setup Screen .........................................................................................
Type of Button .........................................................................................................
Common Properties ...................................................................................................
Operation Condition ..................................................................................................
Push Button .............................................................................................................
Push Button Lamp ....................................................................................................
2 Contact Point Switch ...............................................................................................
Lamp ......................................................................................................................
Digital Switch ..........................................................................................................
Digital Display .........................................................................................................
Miscellaneous Setting Screen ......................................................................................
External I/F Panel Selection Setup Screen ......................................................................
Backup and Restore ...................................................................................................
Limitations ..............................................................................................................
JOG RETRACT & RETURN ......................................................................................
Overview ................................................................................................................
Sequence of Operations ..............................................................................................
Setup and I/O Menus .................................................................................................
Operation ................................................................................................................
LIMIT SET ............................................................................................................
MENU UTILITY (OPTION) .....................................................................................
Overview ...............................................................................................................
Prompt Box Message Menu .......................................................................................
Prompt Box Yes/No Menu ........................................................................................
List Menu ..............................................................................................................
Status Menu ...........................................................................................................
Operator Entry Menu ...............................................................................................
Using Your Teach Pendant Menus ..............................................................................
MIRROR IMAGE UTILITY .....................................................................................
MONITORING PROGRAMS ...................................................................................
Montioring Teach Pendant Programs ...........................................................................
14–228
14–230
14–230
14–231
14–232
14–235
14–235
14–236
14–237
14–238
14–238
14–239
14–239
14–239
14–239
14–239
14–240
14–241
14–242
14–242
14–244
14–245
14–248
14–250
14–253
14–255
14–260
14–260
14–263
14–267
14–269
14–272
14–274
14–276
14–278
14–280
14–283
14–284
14–285
14–285
14–285
14–286
14–286
14–288
14–291
14–293
14–293
14–295
14–300
14–306
14–313
14–324
14–333
14–334
14–348
14–348
xix
Contents
14.32
14.32.1
14.32.2
14.32.3
14.32.4
14.32.5
14.33
14.33.1
14.33.2
14.33.3
14.33.4
14.34
14.34.1
14.34.2
14.34.3
14.35
14.35.1
14.35.2
14.35.3
14.36
14.36.1
14.36.2
14.36.3
14.36.4
14.36.5
14.37
14.38
14.39
14.39.1
14.39.2
14.40
14.40.1
14.40.2
14.40.3
14.40.4
14.40.5
14.41
14.41.1
14.41.2
14.41.3
14.41.4
14.42
14.42.1
14.42.2
14.43
14.44
14.45
14.45.1
14.45.2
14.45.3
14.45.4
14.45.5
14.45.6
14.45.7
xx
MAROUHT9102171E REV F
MOTION GROUP DO OUTPUT FUNCTION (MULTIPLE MOTION GROUP
OPTION) ...............................................................................................................
Overview ...............................................................................................................
Restrictions ............................................................................................................
Operations .............................................................................................................
Setup ....................................................................................................................
Subprogram and Multi-tasking Execution ....................................................................
MOTION START DELAY DETECTION FUNCTION ...................................................
Overview ...............................................................................................................
Restrictions ............................................................................................................
Detection Information and System Variables .................................................................
Motion Start Delay Detection Function Example ...........................................................
OPERATION LOG BOOK [OPTION] ........................................................................
Overview ...............................................................................................................
Recorded Events .....................................................................................................
Operations .............................................................................................................
OPERATIONS WITHOUT A TEACH PENDANT .........................................................
OVERVIEW ............................................................................................................
SETUP ...................................................................................................................
OPERATIONS .........................................................................................................
OPERATIONS WITHOUT A MODE SWITCH .............................................................
Overview ................................................................................................................
Setup ......................................................................................................................
TP MODE SELECT Function .....................................................................................
External Mode Select Function ....................................................................................
Optional Mode Switch ...............................................................................................
ORIGINAL PATH RESUME .....................................................................................
PATH SWITCHING FUNCTION ................................................................................
PAYLOAD CONFIRM ............................................................................................
Overview ...............................................................................................................
Payload Setting and Payload Over Confirm ..................................................................
POSITION BUMPBOX (formerly known as Bump Box) ................................................
Overview ...............................................................................................................
Setting Up Position BumpBox Schedules .....................................................................
Setting Up Position BumpBox I/O ..............................................................................
Position BumpBox with Coordinated Motion - Overview .................................................
Bump Frames for Normal and Coordinated Motion .........................................................
POSITION REGISTER LOOK-AHEAD EXECUTION FUNCTION ...............................
Overview ...............................................................................................................
Program Instructions ................................................................................................
Program Example ....................................................................................................
Execution ..............................................................................................................
PROCESS AXES......................................................................................................
BASIC PROCESS AXES (R689).................................................................................
EXTERNAL PROCESS AXES CONTROL (R824) ........................................................
PROGRAM SHIFT UTILITY ...................................................................................
REFERENCE POSITION UTILITY ...........................................................................
RESUME OFFSET .................................................................................................
Limitations of Resume Offset ....................................................................................
Constant Path Resume Offset .....................................................................................
Limitations of Constant Path Resume Offset .................................................................
Non-Constant Path Resume Offset ..............................................................................
Limitations of non-Constant Path Resume Offset ...........................................................
Selecting Resume Offset Type ...................................................................................
Resume Offset Setup Menu .......................................................................................
14–350
14–350
14–350
14–350
14–351
14–352
14–353
14–353
14–353
14–354
14–355
14–356
14–356
14–359
14–364
14–368
14–368
14–370
14–370
14–401
14–402
14–402
14–404
14–410
14–412
14–412
14–415
14–423
14–423
14–424
14–427
14–427
14–428
14–435
14–437
14–440
14–447
14–447
14–449
14–449
14–450
14–450
14–450
14–458
14–461
14–473
14–476
14–476
14–476
14–477
14–477
14–478
14–478
14–479
MAROUHT9102171E REV F
14.45.8
14.46
14.46.1
14.46.2
14.46.3
14.46.4
14.46.5
14.46.6
14.47
14.47.1
14.47.2
14.47.3
14.47.4
14.48
14.48.1
14.48.2
14.48.3
14.49
14.49.1
14.49.2
14.49.3
14.49.4
14.49.5
14.50
14.50.1
14.50.2
14.50.3
14.50.4
14.50.5
14.50.6
14.50.7
14.50.8
14.51
14.51.1
14.51.2
14.51.3
14.52
14.52.1
14.52.2
14.52.3
14.52.4
14.52.5
14.52.6
14.52.7
14.52.8
14.53
14.54
14.54.1
14.54.2
14.55
14.55.1
14.55.2
14.55.3
14.55.4
14.55.5
14.55.6
Contents
System Variables .....................................................................................................
ROBOT-PC COMMUNICATIONS MACROS .............................................................
Overview ...............................................................................................................
Send Event ( ) .........................................................................................................
Send Data( ) ...........................................................................................................
Send SysVar( ) ........................................................................................................
Get Data( ) .............................................................................................................
Request Menu( ) .....................................................................................................
RSI INTERFACE .....................................................................................................
Format of the data sent by the robot ..............................................................................
Setting ....................................................................................................................
KAREL Programs and Builtins ....................................................................................
Details ....................................................................................................................
SAFETY SPACE (OPTION) .....................................................................................
Overview ...............................................................................................................
Requirements .........................................................................................................
Operation ...............................................................................................................
SERVO TOOL (Option) ...........................................................................................
Benefits .................................................................................................................
Limitations ............................................................................................................
Program Instruction .................................................................................................
Setup ....................................................................................................................
Detection.................................................................................................................
SHAPE GENERATION 3 (OPTION) ..........................................................................
Overview ...............................................................................................................
Quick Start Hints ....................................................................................................
Shape Setup ...........................................................................................................
Setting Up Default Shape Data ...................................................................................
Shape-Specific Shape Data for Standard Shapes ............................................................
Setting Up Custom Shape Data ..................................................................................
Generating a Shape Program from UTILITIES Shape Gen ..............................................
Servo Schedules ......................................................................................................
SIMULATED INPUT SKIP ......................................................................................
Overview ...............................................................................................................
Setup ....................................................................................................................
Operation ...............................................................................................................
SINGULARITY AVOIDANCE (formerly known as Auto Singularity Avoidance) ................
Overview ...............................................................................................................
How it Works .........................................................................................................
Compatibility .........................................................................................................
Limitations ............................................................................................................
Cautions ................................................................................................................
How to Use Singularity Avoidance .............................................................................
System Variable Setup ..............................................................................................
Troubleshooting ......................................................................................................
SINGULARITY CHECK FUNCTION ........................................................................
SMALL CIRCLE ACCURACY ..................................................................................
Servo Schedules .......................................................................................................
Tuning Guidelines ...................................................................................................
SOFT FLOAT (OPTION) .........................................................................................
Overview ...............................................................................................................
Restrictions ............................................................................................................
Setting Up Joint Soft Float Schedules ..........................................................................
Setting Up Cartesian Soft Float Schedules ....................................................................
Setting Up Pushout Soft Float Schedules .....................................................................
Program Instructions ................................................................................................
14–480
14–480
14–480
14–481
14–482
14–483
14–484
14–485
14–486
14–487
14–489
14–491
14–495
14–496
14–496
14–496
14–496
14–497
14–498
14–498
14–499
14–500
14–502
14–503
14–503
14–504
14–505
14–507
14–510
14–521
14–523
14–532
14–533
14–533
14–533
14–535
14–537
14–537
14–538
14–539
14–539
14–540
14–543
14–548
14–549
14–551
14–552
14–552
14–553
14–556
14–556
14–557
14–559
14–561
14–562
14–565
xxi
Contents
14.55.7
14.55.8
14.55.9
14.56
14.56.1
14.56.2
14.56.3
14.57
14.57.1
14.57.2
14.58
14.58.1
14.58.2
14.58.3
14.58.4
14.59
14.59.1
14.59.2
14.60
14.60.1
14.60.2
14.60.3
14.61
14.61.1
14.61.2
14.61.3
14.62
14.62.1
14.62.2
14.62.3
14.63
14.63.1
14.63.2
14.63.3
14.63.4
14.63.5
14.63.6
14.64
14.64.1
14.64.2
14.64.3
14.65
14.65.1
14.65.2
14.65.3
14.65.4
14.66
14.66.1
14.66.2
14.66.3
14.66.4
Chapter 15
15.1
15.2
xxii
MAROUHT9102171E REV F
General Soft Float Guidelines ....................................................................................
Cartesian Soft Float Guidelines ..................................................................................
Other Guidelines .....................................................................................................
SOFT OPERATOR PANEL ........................................................................................
Overview ................................................................................................................
Setup ......................................................................................................................
Operation ................................................................................................................
SPACE CHECK FUNCTION (OPTION) .....................................................................
Setting Up Space Check ...........................................................................................
Limitations ............................................................................................................
STREAM MOTION ..................................................................................................
Overview ................................................................................................................
Execution of Stream motion ........................................................................................
System variables .......................................................................................................
Restrictions..............................................................................................................
SYMMETRIC PART .................................................................................................
System Variables for Symmetric Parts ...........................................................................
Program Examples for Symmetric Part ..........................................................................
TCP SPEED OUTPUT (OPTION) .............................................................................
Overview ...............................................................................................................
Setting Up TCP Speed Output ...................................................................................
TCP Speed Output Program Instruction .......................................................................
TCP SPEED PREDICTION (OPTION) .......................................................................
Overview ...............................................................................................................
Setting Up and Running TCP Speed Prediction .............................................................
System Variables .....................................................................................................
TEACH PENDANT SHIM .......................................................................................
Overview ...............................................................................................................
Setting Up and Using TP Shim ..................................................................................
Using TP Shim History to Apply Previous Shims ..........................................................
TIME BEFORE/AFTER MOTION OPTION INSTRUCTION ........................................
Overview ...............................................................................................................
Program Execution ..................................................................................................
Execution Timing ....................................................................................................
Recording a TIME BEFORE/AFTER Instruction ..........................................................
TIME BEFORE Instruction Program Example ..............................................................
Programming Hints .................................................................................................
TORQUE LIMIT ....................................................................................................
Introduction ...........................................................................................................
Specification ..........................................................................................................
Restriction .............................................................................................................
TOUCH SKIP (formerly known as Collision Skip) ..........................................................
Overview ................................................................................................................
Touch Skip Screen ....................................................................................................
Touch Skip Programs .................................................................................................
Cautions ..................................................................................................................
XVR ACCESS FUNCTION .......................................................................................
Overview ................................................................................................................
Configuration ...........................................................................................................
Export Function (Backup)...........................................................................................
Import Function (Restore)...........................................................................................
FANUC SENSOR INTERFACE .............................................................................
OVERVIEW .............................................................................................................
COMMUNICATION PROTOCOL ................................................................................
14–567
14–569
14–574
14–576
14–576
14–578
14–579
14–584
14–586
14–594
14–595
14–595
14–603
14–604
14–605
14–606
14–608
14–608
14–609
14–609
14–611
14–612
14–614
14–614
14–615
14–616
14–628
14–628
14–631
14–634
14–636
14–636
14–636
14–639
14–640
14–641
14–642
14–643
14–643
14–644
14–645
14–646
14–646
14–646
14–647
14–648
14–648
14–648
14–649
14–649
14–651
15–1
15–2
15–2
MAROUHT9102171E REV F
15.2.1
15.2.2
15.2.3
15.2.4
15.3
15.4
Chapter 16
16.1
16.1.1
16.1.2
16.1.3
16.2
16.2.1
16.2.2
16.2.3
16.2.4
16.2.5
16.2.6
16.2.7
16.2.8
16.3
16.3.1
16.3.2
16.3.3
16.3.4
16.3.5
16.3.6
16.3.7
16.3.8
16.3.9
16.4
16.4.1
16.4.2
16.4.3
16.4.4
16.4.5
16.4.6
16.4.7
16.5
16.5.1
16.5.2
16.5.3
16.5.4
16.5.5
16.5.6
16.5.7
16.6
16.6.1
16.6.2
16.6.3
16.6.4
16.6.5
16.6.6
16.6.7
16.7
16.7.1
Contents
Overview ..................................................................................................................
Flow Control Mechanism .............................................................................................
Data Format ..............................................................................................................
Handshaking .............................................................................................................
PROGRAMMING .....................................................................................................
SENSOR SETUP AND HARDWARE CONNECTIONS ...................................................
15–2
15–2
15–3
15–4
15–7
15–7
iRCALIBRATION OPTIONS
................................................................................. 16–1
OVERVIEW ............................................................................................................. 16–3
Overview .................................................................................................................. 16–3
Torque Observer Sensor and Electrical Continuity Sensing ................................................. 16–5
iRCalibration TP Instructions ....................................................................................... 16–6
IRCALIBRATION MASTER SET ................................................................................ 16–7
Overview .................................................................................................................. 16–7
Preliminary Setup ........................................................................................................ 16–9
iRCalibration Master Set Setup ................................................................................... 16–11
Creating a Robot Calibration Teach Pendant Program ...................................................... 16–21
Running the iRCalibration Master Set Program .............................................................. 16–32
Updating the Master Count ........................................................................................ 16–34
Viewing the Calibration Result ................................................................................... 16–36
Troubleshooting iRCalibration Master Set ..................................................................... 16–38
iRCALIBRATION MASTER RECOVERY .................................................................. 16–39
Overview ................................................................................................................ 16–39
Preliminary Setup ..................................................................................................... 16–40
iRCalibration Master Recovery Setup ........................................................................... 16–42
Creating a Robot Calibration Teach Pendant Program ...................................................... 16–52
Running the iRCalibration Master Recovery Program ..................................................... 16–63
Single Axis Mastering Recovery ................................................................................. 16–66
Updating the Master Count ........................................................................................ 16–66
Viewing the Calibration Result ................................................................................... 16–68
Troubleshooting iRCalibration Mastering ...................................................................... 16–70
iRCALIBRATION TCP SET ...................................................................................... 16–71
Overview ................................................................................................................ 16–71
Preliminary Setup ..................................................................................................... 16–72
iRCalibration TCP Set Setup ...................................................................................... 16–75
Running the iRCalibration TCP Set Program .................................................................. 16–93
Displaying the UTool Log Screen ................................................................................ 16–95
iRCalibration TCP Set Error Recovery ......................................................................... 16–97
iRCalibration TCP Set Troubleshooting ........................................................................ 16–99
iRCALIBRATION TCP SHIFT .................................................................................... 16–99
Overview ................................................................................................................. 16–99
Preliminary Setup ...................................................................................................... 16–99
iRCalibration TCP Shift Setup ..................................................................................... 16–103
Running the iRCalibration TCP Shift Program ............................................................... 16–122
Displaying the UTool Log Screen ............................................................................... 16–123
iRCalibration TCP Shift Error Recovery ...................................................................... 16–125
iRCalibration TCP Shift Troubleshooting ..................................................................... 16–126
iRCALIBRATION FRAME SHIFT .............................................................................. 16–127
Overview ............................................................................................................... 16–127
Preliminary Setup .................................................................................................... 16–128
iRCalibration Frame Shift Setup ................................................................................. 16–131
Running the iRCalibration Frame Shift Program and Updating the User Frame ................... 16–150
Using iRCalibration Frame Shift with Dynamic-Uframe ................................................. 16–152
Displaying the UFrame Log Screen ............................................................................ 16–153
Troubleshooting iRCalibration Frame Shift .................................................................. 16–155
iRCALIBRATION SIGNATURE ................................................................................. 16–157
Overview ................................................................................................................ 16–157
xxiii
Contents
16.7.2
16.7.3
16.7.4
16.7.5
16.7.6
16.7.7
16.7.8
16.7.9
16.8
16.8.1
16.8.2
16.8.3
16.8.4
16.8.5
16.8.6
16.9
16.9.1
16.9.2
16.9.3
16.9.4
16.9.5
16.9.6
16.9.7
MAROUHT9102171E REV F
Performance ............................................................................................................
Limitations ..............................................................................................................
System Variables ......................................................................................................
Entering and Exiting High Accuracy Mode ....................................................................
iRCalibration Signature Status UIF...............................................................................
iRCalibration Signature Custom UIF ............................................................................
iRCalibration Custom TCP/UFRAME UIF ....................................................................
iRCalibration Signature Calibration PC Utility ...............................................................
ACCURACY AND STIFFNESS AND ENHANCEMENT SOFTWARE PACKAGE.............
Overview ................................................................................................................
Software Package......................................................................................................
Secondary Encoder Feedback ......................................................................................
iRCalibration Signature ..............................................................................................
Restriction ...............................................................................................................
Troubleshooting........................................................................................................
DEFLECTION COMPENSATION ..............................................................................
Overview ................................................................................................................
I/O .........................................................................................................................
High Accuracy Mode .................................................................................................
Compensation Sequence .............................................................................................
Timing Diagram .......................................................................................................
System Tuning .........................................................................................................
Deflection Compensation Example Program...................................................................
16–158
16–158
16–159
16–159
16–160
16–161
16–168
16–171
16–171
16–171
16–173
16–173
16–176
16–178
16–178
16–179
16–179
16–180
16–181
16–181
16–183
16–184
16–185
Chapter 17
17.1
17.2
17.2.1
17.2.2
17.2.3
17.2.4
17.2.5
17.3
17.4
17.4.1
17.4.2
17.4.3
17.4.4
17.4.5
17.4.6
17.4.7
17.4.8
17.4.9
17.4.10
17.4.11
17.4.12
17.5
17.5.1
17.5.2
17.5.3
MATERIAL HANDLING OPTION ..........................................................................
OVERVIEW .............................................................................................................
SETTING UP THE MATERIAL HANDLING TOOLS .....................................................
Overview ..................................................................................................................
Setting Up Tooling Valves ............................................................................................
Setting Up Tooling Valve Signals ..................................................................................
Configuring Tooling Valve I/O ......................................................................................
Controlling Valve I/O ................................................................................................
CONTROLLING A TOOLING VALVE IN MANUAL MODE ........................................
MATERIAL HANDLING VALVE MACRO PROGRAMS ..............................................
Examples ................................................................................................................
Grip Part .................................................................................................................
Release Part ............................................................................................................
Part Present .............................................................................................................
Check No Part .........................................................................................................
Prepare to Pick ........................................................................................................
Clear to Proceed .......................................................................................................
Turn ON Vacuum .....................................................................................................
Turn OFF Vacuum ....................................................................................................
Turn OFF Blowoff ....................................................................................................
Set CurrentValve ......................................................................................................
Set MH Tool ...........................................................................................................
PRODUCTION .......................................................................................................
MH Tryout Mode .....................................................................................................
Disable for 20 Cycles ................................................................................................
Alarms ...................................................................................................................
17–1
17–2
17–3
17–3
17–3
17–5
17–8
17–10
17–12
17–13
17–14
17–15
17–15
17–15
17–15
17–16
17–17
17–18
17–19
17–20
17–21
17–22
17–22
17–22
17–23
17–23
Chapter 18
18.1
18.1.1
18.1.2
18.1.3
18.2
PAINT PLUG-IN OPTION .......................................................................................
Overview ...................................................................................................................
Application Instructions ................................................................................................
Configuration ..............................................................................................................
Custom Setup ..............................................................................................................
Paint Plug In Error Codes ..............................................................................................
18–1
18–2
18–2
18–3
18–3
18–7
xxiv
MAROUHT9102171E REV F
18.3
18.4
18.4.1
18.4.2
18.5
18.5.1
Chapter 19
19.1
19.1.1
19.1.2
19.1.3
19.1.4
19.1.5
19.2
19.3
19.4
19.5
19.5.1
19.5.2
19.6
19.6.1
19.6.2
19.6.3
19.6.4
19.6.5
19.7
19.8
19.9
19.9.1
19.9.2
19.10
19.10.1
19.10.2
19.10.3
19.11
19.11.1
19.12
19.12.1
19.12.2
19.12.3
19.13
19.13.1
19.13.2
19.13.3
19.13.4
19.13.5
19.13.6
19.13.7
Chapter 20
Contents
Setup ......................................................................................................................... 18–8
LR Mate Plus Controller I/O .......................................................................................... 18–8
LR Mate Plus Controller Main Board Connectors............................................................... 18–9
Mate Peripheral Device / 50 Pin Honda Connector on Connector Conversion Board ............... 18–11
Status ...................................................................................................................... 18–13
Overview ................................................................................................................. 18–13
SERVO TOOL CHANGE FUNCTION ....................................................................
OVERVIEW .............................................................................................................
1-1 Feature of function ................................................................................................
1-2 Basic specification .................................................................................................
Restrictions ...............................................................................................................
1-4 System Configuration ............................................................................................
1-5 Outline of installation ............................................................................................
INITIAL SETUP ........................................................................................................
PRELIMINARY TOOL ATTACH OPERATION .............................................................
TOOL CHANGE SETUP ............................................................................................
SETTING THE REFERENCE POSITION ....................................................................
Battery-less type tools ...............................................................................................
Battery-mounted type tools ........................................................................................
TOOL CHANGE INSTRUCTION ..............................................................................
TOOL DETACH instruction .......................................................................................
TOOL ATTACH instruction .......................................................................................
Sample program .......................................................................................................
Foward execution .....................................................................................................
Backward execution ..................................................................................................
TOOL CHANGE SEQUENCE ...................................................................................
TOOL CHANGE STATUS ........................................................................................
TEACHING ............................................................................................................
Notice for teaching ...................................................................................................
Sample program .......................................................................................................
CONSTRUCTION OF SERVO TOOL CHANGE SCREEN .............................................
INITIAL SETUP SCREEN This screen can be displayed at CONTROL START
Menu. .....................................................................................................................
SETUP SCREEN .....................................................................................................
- STATUS SCREEN .................................................................................................
TOOL CHANGE INITIAL SETUP .............................................................................
Setting Motion Parameters For Servo Tool Axes ............................................................
TOOL CHANGE REFERENCE POSITION SETUP METHOD (BATTERY-LESS
TYPE) ....................................................................................................................
Reference Position Setup for Calibration Types 3 and 4 ...................................................
Reference Position Setup for Calibration Types 5 and 6 ...................................................
Quick Mastering Reference Position Setup ....................................................................
TROUBLESHOOTING ............................................................................................
The Attach Instruction Is Executed When the Tool Is Not Attached. ...................................
The Robot Stopped During Calibration. ........................................................................
Calibration Motion Failed. .........................................................................................
A Different Tool from That Specified by the Attach Instruction Is Attached. ........................
The Attached Tool Has Been Detached by Mistake (Without Using the Detach
Instruction). .............................................................................................................
TheTool Axis of a Detached Tool Has Moved. ...............................................................
The Battery Ran Low While the Tool Was Detached. ......................................................
TOUCH SENSING
19–1
19–3
19–3
19–3
19–3
19–4
19–5
19–6
19–6
19–8
19–15
19–15
19–15
19–15
19–16
19–16
19–16
19–17
19–17
19–18
19–18
19–19
19–19
19–20
19–21
19–21
19–21
19–21
19–22
19–22
19–23
19–23
19–26
19–28
19–29
19–29
19–30
19–30
19–31
19–31
19–32
19–32
................................................................................................ 20–1
xxv
Contents
20.1
20.2
20.2.1
20.2.2
20.2.3
20.2.4
20.3
20.3.1
20.3.2
20.3.3
20.3.4
20.4
20.4.1
20.4.2
20.4.3
20.4.4
20.4.5
20.4.6
20.4.7
20.5
20.5.1
20.5.2
20.5.3
20.5.4
20.5.5
20.5.6
20.5.7
20.5.8
20.5.9
20.5.10
20.6
20.6.1
20.6.2
20.6.3
20.6.4
20.7
20.7.1
20.7.2
20.7.3
20.7.4
20.8
20.8.1
20.8.2
20.8.3
20.8.4
20.8.5
Appendix A
A.1
A.2
A.2.1
A.2.2
A.2.3
A.2.4
A.3
A.3.1
xxvi
MAROUHT9102171E REV F
OVERVIEW .............................................................................................................
ASSIGNING TOUCH SENSING I/O .............................................................................
Touch Sensing I/O Overview ........................................................................................
Touch Sensing Input Signal ...........................................................................................
Touch Sensing Enable/Disable Output Signal ...................................................................
Assigning the Touch Sensing Inputs and Outputs ...............................................................
SETTING UP TOUCH SENSING .................................................................................
Touch Sensing Setup Overview .....................................................................................
Touch Frames ..........................................................................................................
Search Pattern .........................................................................................................
Touch Schedule .......................................................................................................
TOUCH SENSING PROGRAMMING .........................................................................
Programming Overview .............................................................................................
Touch Sensing Instructions .........................................................................................
Touch Sensing Motion Option .....................................................................................
Motion Instructions Used with Touch Sensing ................................................................
Executing a Touch Sensing Program .............................................................................
Touch Sensing Robot Position Touchup .........................................................................
Programming Examples .............................................................................................
TOUCH SENSING MASTERING ...............................................................................
Mastering Overview ..................................................................................................
Mastering ................................................................................................................
Remastering .............................................................................................................
Offsets ...................................................................................................................
Patterns ...................................................................................................................
Master Flag ..............................................................................................................
Touching Up Path Positions ........................................................................................
Adding New Positions ...............................................................................................
Multiple Searches ......................................................................................................
Touching Up Search Start Positions ..............................................................................
TOUCH SENSING HARDWARE ................................................................................
Hardware Overview ...................................................................................................
Touch Sensing Input Signal .........................................................................................
Touch Sensing Enable/Disable Output Signal .................................................................
Simple Low Voltage Touch Sense Detection Circuit .........................................................
LASER ANALOG INPUT NON-CONTACT TOUCH SENSING .....................................
Overview ................................................................................................................
System Setup ...........................................................................................................
Analog Input Touch I/O Setup .....................................................................................
Analog Input Search Direction ....................................................................................
LASER DIGITAL INPUT TOUCH SENSING ................................................................
Overview .................................................................................................................
Laser Digital Touch Sensing Schedule Setup ...................................................................
Laser Digital Touch I/O Setup ......................................................................................
Multi-Arm Laser Digital Simultaneous Touch Sensing Schedule Setup.................................
Laser Digital Input Touch Sensing Program Example ........................................................
20–3
20–4
20–4
20–5
20–5
20–6
20–7
20–7
20–10
20–15
20–21
20–26
20–26
20–26
20–27
20–28
20–28
20–28
20–29
20–35
20–35
20–35
20–36
20–36
20–38
20–39
20–41
20–42
20–43
20–45
20–46
20–46
20–47
20–47
20–47
20–48
20–48
20–49
20–51
20–52
20–52
20–52
20–53
20–54
20–55
20–55
ERROR CODES AND RECOVERY ........................................................................
OVERVIEW ..............................................................................................................
ERROR CODE PROPERTIES .......................................................................................
Overview ...................................................................................................................
Facility Name and Code ...............................................................................................
Severity Descriptions .................................................................................................
Error Message Text ....................................................................................................
GENERAL ERROR RECOVERY PROCEDURES .........................................................
Overview .................................................................................................................
A–1
A–2
A–3
A–3
A–7
A–12
A–15
A–15
A–15
MAROUHT9102171E REV F
A.3.2
A.3.3
A.3.4
A.3.5
Contents
Overtravel Release ....................................................................................................
Hand Breakage Recovery ............................................................................................
Pulse Coder Alarm Recovery .......................................................................................
Chain Failure Detection Error Recovery ........................................................................
A–16
A–18
A–19
A–20
Appendix B SYSTEM OPERATIONS ........................................................................................
B.1 STARTUP METHODS .................................................................................................
B.1.1 Overview ...................................................................................................................
B.1.2 Hot Start ....................................................................................................................
B.1.3 Cold Start(START COLD) ............................................................................................
B.1.4 Cycle Power ...............................................................................................................
B.1.5 Controlled Start ..........................................................................................................
B.1.6 INIT Start ................................................................................................................
B.2 HARDWARE DIAGNOSIS ........................................................................................
B.3 CONTROLLER BACKUP AND RESTORE ..................................................................
B.3.1 Overview .................................................................................................................
B.3.2 Backing Up a Controller as Images ...............................................................................
B.3.3 Restoring Controller Images ........................................................................................
B.4 MAINTENANCE OPERATIONS ................................................................................
B.4.1 Overview .................................................................................................................
B.4.2 Updating Boot Software from the Configuration Menu .....................................................
B.4.3 Updating iPendant Firmware .......................................................................................
B.5 DIAGNOSTIC TOOLS ..............................................................................................
B.5.1 Development Tools .....................................................................................................
B.5.2 Diagnostic Log ...........................................................................................................
B–1
B–2
B–2
B–3
B–5
B–7
B–9
B–15
B–15
B–20
B–20
B–20
B–23
B–26
B–26
B–26
B–28
B–36
B–36
B–37
Appendix C
C.1
C.2
C.3
C.4
C.5
C.6
C.7
C.8
MASTERING
........................................................................................................
OVERVIEW ..............................................................................................................
RESETTING ALARMS AND PREPARING FOR MASTERING ........................................
FIXTURE POSITION MASTER (MASTERING TO A FIXTURE) ......................................
ZERO POSITION MASTER (ZERO DEGREE MASTERING)..........................................
QUICK MASTERING ................................................................................................
QUICK MASTERING FOR SINGLE AXIS ....................................................................
SINGLE AXIS MASTERING ......................................................................................
SAVING AND RESTORING MASTERING DATA ........................................................
C–1
C–2
C–4
C–6
C–10
C–12
C–17
C–20
C–24
Appendix D
D.1
D.2
D.3
D.4
D.5
D.6
D.7
D.8
D.9
D.10
D.11
PROGRAM EXAMPLES ........................................................................................
Program Examples Overview ........................................................................................
POSITION REGISTER ELEMENT ............................................................................
POSITION REGISTER VALUE .................................................................................
REGISTER ANALOG INPUT ......................................................................................
CONDITIONAL BRANCHING; USING LABELS ...........................................................
CALL KAREL SOFTPART ..........................................................................................
REGISTER INCREMENT ............................................................................................
GROUP OUTPUT; WAIT INSTRUCTION PULSE INSTRUCTION ....................................
LABELS ...................................................................................................................
LABEL; JUMP LABEL; MESSAGE ..............................................................................
MACRO INSTRUCTION .............................................................................................
D–1
D–2
D–2
D–2
D–3
D–4
D–4
D–5
D–5
D–6
D–7
D–8
Appendix E SYSTEM VARIABLES .............................................................................................
E.1 FORMAT OF A SYSTEM VARIABLE ............................................................................
E–1
E–2
xxvii
Contents
MAROUHT9102171E REV F
E.2
E.2.1
E.2.2
E.2.3
E.2.4
E.2.5
E.2.6
E.2.7
E.2.8
E.2.9
E.2.10
E.2.11
E.2.12
E.2.13
E.2.14
E.2.15
E.2.16
E.2.17
E.2.18
E.2.19
E.2.20
E.2.21
E.2.22
E.2.23
E.2.24
E.2.25
E.2.26
Glossary
Index
xxviii
SYSTEM VARIABLES .................................................................................................
Power Fail Recovery .....................................................................................................
Brake Control...............................................................................................................
Mastering ....................................................................................................................
Quick Mastering ...........................................................................................................
Calibration ................................................................................................................
Specifying Coordinate Systems .....................................................................................
Setting Motors............................................................................................................
Override ....................................................................................................................
Payload Specification...................................................................................................
Executing a Program ...................................................................................................
Automatic Operation ...................................................................................................
Deleting the Warning History ........................................................................................
Disabling Alarm Output ...............................................................................................
User Alarm ................................................................................................................
Jogging .....................................................................................................................
I/O Setting .................................................................................................................
Software Version ........................................................................................................
Soft Float Function......................................................................................................
Saving Files ...............................................................................................................
Register Speed Specification Function ............................................................................
Specifying an Output Signal of the BZAL/BLAL Alarm.....................................................
Setup for Changing Jog Group According to the Motion Group of the Selected Program............
Default Setting for the Motion Group..............................................................................
Servo Information .......................................................................................................
System Timer .............................................................................................................
System Ready ............................................................................................................
E–5
E–5
E–5
E–7
E–9
E–10
E–10
E–12
E–15
E–19
E–22
E–22
E–23
E–23
E–24
E–25
E–25
E–27
E–27
E–27
E–28
E–28
E–29
E–30
E–30
E–31
E–32
................................................................................................................................... GL–35
........................................................................................................................................ Index–1
List of Figures
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
1.
1–1.
1–2.
1–3.
1–4.
1–5.
1–6.
1–7.
1–8.
1–9.
1–10.
1–11.
1–12.
1–13.
1–14.
1–15.
1–16.
2–1.
2–2.
2–3.
2–4.
2–5.
2–6.
2–7.
2–8.
2–9.
2–10.
2–11.
2–12.
2–13.
2–14.
2–15.
2–16.
2–17.
2–18.
2–19.
2–20.
HandlingTool Quick Reference Flow Chart ......................................................................
Example System Overview ..............................................................................................
Major and Minor Axes ....................................................................................................
Finger Type Gripper ......................................................................................................
Vacuum Type Gripper ....................................................................................................
R-30iB Plus A-Cabinet Controller .....................................................................................
R-30iB Plus B-Cabinet Controller .....................................................................................
R-30iB Mate Plus Controller ............................................................................................
R-30iB Compact Plus Controller .......................................................................................
R-30iB Plus A Cabinet Operator Panel .............................................................................
R-30iB Plus B Cabinet Operator Panel .............................................................................
R-30iB Mate Operator Panel ..........................................................................................
R-30iB Compact Plus Operator Panel ..............................................................................
Mode Select Switch ....................................................................................................
Effect of Opening the Safety Fence While in AUTO Mode .................................................
Controller Memory .....................................................................................................
Cycle Power ...............................................................................................................
iPendant .......................................................................................................................
Teach Pendant Enabling Device (DEADMAN Switches) .......................................................
Teach Pendant Enable Switch ...........................................................................................
EMERGENCY STOP Button ..........................................................................................
Touch Screen Navigation .................................................................................................
iPendant General Setup ...................................................................................................
Touch Panel Setup........................................................................................................
Zoom.........................................................................................................................
Maximize/Restore ........................................................................................................
Window Display Control Menu ......................................................................................
TreeView ...................................................................................................................
Window and Focus Example ..........................................................................................
HandlingTool iPendant Keys ..........................................................................................
Haptic iPendant Overview .............................................................................................
Hardware/Software Compatibility Matrix .........................................................................
General Haptic Setup ....................................................................................................
Configuring Haptic Feedback .........................................................................................
Haptic Log .................................................................................................................
Warning Alarms ..........................................................................................................
User Alarms................................................................................................................
lxxi
1–2
1–3
1–4
1–4
1–6
1–7
1–8
1–9
1–10
1–10
1–11
1–11
1–12
1–14
1–22
1–25
2–4
2–5
2–5
2–6
2–7
2–9
2–10
2–12
2–13
2–14
2–18
2–26
2–28
2–37
2–37
2–38
2–39
2–40
2–41
2–42
xxix
Contents
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
xxx
2–21.
2–22.
2–23.
2–24.
2–25.
2–26.
2–27.
2–28.
2–29.
2–30.
2–31.
2–32.
2–33.
2–34.
2–35.
2–36.
2–37.
2–38.
2–39.
2–40.
2–41.
2–42.
2–43.
2–44.
2–45.
2–46.
2–47.
2–48.
2–49.
2–50.
2–51.
2–52.
2–53.
2–54.
2–55.
2–56.
2–57.
2–58.
2–59.
2–60.
2–61.
2–62.
2–63.
2–64.
MAROUHT9102171E REV F
Monitoring I/O ............................................................................................................
Monitoring Registers ....................................................................................................
Monitoring System Variables .........................................................................................
I/O ............................................................................................................................
Prompt Box ................................................................................................................
@Taught Position ........................................................................................................
Skip Condition ............................................................................................................
Skip Condition ............................................................................................................
Interference Zone .........................................................................................................
Delta Robot Slowdown Zone..........................................................................................
Vision Not Found .........................................................................................................
Force Sensing..............................................................................................................
Learning Path Control Shape Cutting ...............................................................................
Status Bar Display .......................................................................................................
Document Viewer ........................................................................................................
Menu Favorites ...........................................................................................................
Add Current Menu Favorite ...........................................................................................
MENU Favorite Setup ..................................................................................................
Menu History ..............................................................................................................
Menu Favorites ...........................................................................................................
Panel Wizard...............................................................................................................
Start Panel Wizard .......................................................................................................
Create Operation Panel Flowchart .................................................................................
iPendant General Setup Screen .......................................................................................
iPendant HMI Setup Screen ...........................................................................................
iPendant HMI Setup Screen ...........................................................................................
iPendant FULL Menu ...................................................................................................
iPendant Quick Menu ...................................................................................................
Disabling the Data Key .................................................................................................
Options Menu Item ......................................................................................................
Software Keyboard Text Display.....................................................................................
Software Keyboard ......................................................................................................
Keyboard Lowercase Letters ..........................................................................................
Keyboard Uppercase Letters ..........................................................................................
Keyboard Numbers ......................................................................................................
Numeric Keyboard .......................................................................................................
Web Form Entry ..........................................................................................................
Software Keyboard ......................................................................................................
Vision ASCII String Input Field ......................................................................................
Vision Keyboard ..........................................................................................................
Top Menu ...................................................................................................................
iPendant General Setup Screen .......................................................................................
Top Menu ...................................................................................................................
Top Menu Setup ..........................................................................................................
2–43
2–44
2–45
2–46
2–47
2–48
2–49
2–50
2–51
2–52
2–53
2–54
2–55
2–56
2–61
2–62
2–63
2–64
2–65
2–68
2–70
2–71
2–72
2–74
2–75
2–76
2–77
2–78
2–78
2–83
2–84
2–84
2–85
2–86
2–87
2–88
2–89
2–89
2–90
2–91
2–92
2–93
2–94
2–95
MAROUHT9102171E REV F
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
2–65.
2–66.
2–67.
2–68.
3–1.
3–2.
3–3.
3–4.
3–5.
3–6.
3–7.
3–8.
3–9.
3–10.
3–11.
3–12.
3–13.
3–14.
3–15.
3–16.
3–17.
3–18.
3–19.
3–20.
3–21.
3–22.
4–1.
4–2.
4–3.
4–4.
4–5.
4–6.
4–7.
4–8.
4–9.
4–10.
4–11.
4–12.
4–13.
4–14.
4–15.
4–16.
4–17.
4–18.
Contents
Read-Write Access ....................................................................................................... 2–96
Top Menu ................................................................................................................... 2–97
iPendant with USB Port ................................................................................................ 2–98
Modifying User Views Screen ...................................................................................... 2–100
iHMI Setup ................................................................................................................... 3–2
Navigating the iHMI Screens ........................................................................................... 3–3
Step Pane Items ............................................................................................................. 3–4
Directional Information ................................................................................................... 3–5
Scroll Bars.................................................................................................................... 3–6
iHMI Guided Setup Process ............................................................................................. 3–8
Exit iHMI Guides .......................................................................................................... 3–9
HOME Screen ............................................................................................................. 3–10
Basic Setup ................................................................................................................. 3–11
Initial Setup Complete .................................................................................................. 3–12
BASIC SETUP Finished ............................................................................................... 3–13
Caution Indicating Setup is Not Complete ........................................................................ 3–14
First Time You Create a Program .................................................................................... 3–14
After You Have Created a Program.................................................................................. 3–14
After More Than One Program is Created ......................................................................... 3–15
RUN ......................................................................................................................... 3–15
Production Monitor ...................................................................................................... 3–16
UTILITY ................................................................................................................... 3–16
Jog Assist Panes .......................................................................................................... 3–17
Jog a robot .................................................................................................................. 3–19
Edit a Program ............................................................................................................ 3–19
Execute a Program ....................................................................................................... 3–19
Full Screen Mode ........................................................................................................... 4–3
Dual Screen Mode.......................................................................................................... 4–4
i Key ........................................................................................................................... 4–5
Top Menu ..................................................................................................................... 4–6
Robot Display ............................................................................................................... 4–8
Three Groups in One Controller ........................................................................................ 4–9
Scene Selection ........................................................................................................... 4–12
ZOOM Button ............................................................................................................. 4–13
PAN Button ................................................................................................................ 4–14
ROTATE Button .......................................................................................................... 4–14
SELECT Button .......................................................................................................... 4–15
Selecting a View .......................................................................................................... 4–16
User View Menu .......................................................................................................... 4–17
[VISIBLE] Button........................................................................................................ 4–18
Visibility menu ............................................................................................................ 4–19
Linear Jog Indicator ..................................................................................................... 4–21
Joint Jog Indicators ...................................................................................................... 4–22
Positioner Jog Indicator ................................................................................................. 4–23
xxxi
Contents
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
xxxii
4–19.
4–20.
4–21.
4–22.
4–23.
4–24.
4–25.
4–26.
4–27.
4–28.
4–29.
4–30.
4–31.
4–32.
5–1.
5–2.
5–3.
5–4.
6–1.
6–2.
6–3.
6–4.
6–5.
6–6.
6–7.
6–8.
6–9.
6–10.
6–11.
6–12.
6–13.
6–14.
6–15.
6–16.
6–17.
6–18.
6–19.
6–20.
6–21.
6–22.
6–23.
6–24.
6–25.
6–26.
MAROUHT9102171E REV F
Cartesian Jog Preview ...................................................................................................
Cartesian Rotation Preview ............................................................................................
Joint Jog Preview .........................................................................................................
Dual Screen Mode........................................................................................................
Select Preview Node Map..............................................................................................
Viewing two Different Programs .....................................................................................
Shift Utility and Node Map ............................................................................................
Node Map and Trace ....................................................................................................
Frame Setup................................................................................................................
Position Registers ........................................................................................................
Display of Remote Robots and Data ................................................................................
Controller Visibility Menu .............................................................................................
TPGLCFG.XML .........................................................................................................
Full Screen Menu .........................................................................................................
Jog Speed Keys .............................................................................................................
COORD Key and Display................................................................................................
Incremental Jog Distance Display ...................................................................................
Jog Menu ...................................................................................................................
Cartesian Coordinate System ............................................................................................
Position Relative to a Frame.............................................................................................
Rotated Position ............................................................................................................
Right-hand Rule ............................................................................................................
World Positive X, Y, and Z Vector Directions ......................................................................
World Frame .................................................................................................................
Tool Frame Origin Default Location ..................................................................................
Tool Frame Origin Moved to the End of the Tool .................................................................
Tool Frame Adjusted to Accommodate Angled Tool .............................................................
Tool frame setup screen (Two Point + Z) ..........................................................................
Defining the Orientation of the Origin ............................................................................
World and User Frames .................................................................................................
Defining the Origin .....................................................................................................
Defining the X direction Point ......................................................................................
Defining the X-Y Plane ...............................................................................................
Defining the Origin .....................................................................................................
Defining the X direction Point ......................................................................................
Defining the X-Y Plane ...............................................................................................
Defining the Second Origin ..........................................................................................
Remote TCP Frame ....................................................................................................
Touching the TCP of the Robot Tool to the Remote TCP ....................................................
Touching the TCP of the Robot Tool to the Remote TCP ....................................................
Jog Frame Defined Parallel to Part .................................................................................
Defining the Origin .....................................................................................................
Defining the X direction Point ......................................................................................
Defining the X-Y Plane ...............................................................................................
4–24
4–24
4–25
4–26
4–28
4–29
4–31
4–33
4–34
4–35
4–37
4–38
4–39
4–42
5–3
5–4
5–17
5–19
6–2
6–3
6–3
6–4
6–5
6–6
6–7
6–7
6–8
6–11
6–29
6–39
6–43
6–44
6–44
6–49
6–50
6–50
6–51
6–59
6–61
6–64
6–68
6–72
6–73
6–73
MAROUHT9102171E REV F
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
6–27.
7–1.
7–2.
7–3.
7–4.
7–5.
7–6.
7–7.
7–8.
7–9.
7–10.
7–11.
7–12.
7–13.
7–14.
7–15.
7–16.
7–17.
7–18.
7–19.
7–20.
7–21.
7–22.
7–23.
7–24.
7–25.
7–26.
7–27.
7–28.
7–29.
7–30.
7–31.
7–32.
7–33.
7–34.
7–35.
7–36.
7–37.
7–38.
7–39.
7–40.
7–41.
7–42.
7–43.
Contents
Cell Frame and Cell Floor .............................................................................................
Program Example .........................................................................................................
Typical Motion Instruction Example ................................................................................
Joint Motion Type ........................................................................................................
Linear Motion Type ......................................................................................................
Linear Motion Type Used to Rotate About the Tool Center Point ...........................................
Circular Motion Type ..................................................................................................
Restart of Circular Motion Instruction ............................................................................
Restart of Circular Motion Instruction ............................................................................
Extend Circular Arc .....................................................................................................
Normal Motion ............................................................................................................
First A Motion ............................................................................................................
Circle Formed by Current Point ......................................................................................
Last A Motion .............................................................................................................
This Path Used ............................................................................................................
Robot Moves in a Linear Motion.....................................................................................
Robot Moves Linear .....................................................................................................
Robot Can't Move ........................................................................................................
Resume After Jog ........................................................................................................
Resume After Jog ........................................................................................................
Change of Destination Point ...........................................................................................
Change of Next Destination Point ...................................................................................
Deletion of Next A Motion ............................................................................................
Deletion of Next A Motion ............................................................................................
Deletion of Next A Motion ............................................................................................
Program is Paused ........................................................................................................
After Modificaton Programmed Path................................................................................
Motion is Resumed ......................................................................................................
Program is Paused ........................................................................................................
Programmed Motion .....................................................................................................
Motion is Resumed ......................................................................................................
Pause and Resume for Another A Motion .........................................................................
Program is Paused ........................................................................................................
Single Step Execution ...................................................................................................
Single Step Execution ...................................................................................................
Backward Execution .....................................................................................................
Arc of the Next Destination Point....................................................................................
Program Started by Backward From Motion......................................................................
Positional Information .................................................................................................
An Example Program in Display Mode 1 ........................................................................
Motion Info is Toggled ON and OFF with EDCMD ..........................................................
Resume Distance Display ............................................................................................
Frame Number of Positional Data Example Program .........................................................
Example of the Sec Speed Feature .................................................................................
6–80
7–5
7–6
7–7
7–8
7–9
7–10
7–11
7–11
7–12
7–13
7–14
7–14
7–15
7–16
7–17
7–17
7–18
7–19
7–20
7–20
7–21
7–22
7–22
7–23
7–24
7–24
7–24
7–25
7–25
7–25
7–26
7–27
7–27
7–28
7–28
7–29
7–29
7–35
7–38
7–39
7–41
7–47
7–48
xxxiii
Contents
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
xxxiv
7–44.
7–45.
7–46.
7–47.
7–48.
7–49.
7–50.
7–51.
7–52.
7–53.
7–54.
7–55.
7–56.
7–57.
7–58.
7–59.
7–60.
7–61.
7–62.
7–63.
7–64.
7–65.
7–66.
7–67.
7–68.
7–69.
7–70.
7–71.
7–72.
7–73.
7–74.
7–75.
7–76.
7–77.
7–78.
7–79.
7–80.
7–81.
7–82.
7–83.
7–84.
7–85.
7–86.
7–87.
MAROUHT9102171E REV F
Variable Motion Speed Program Execution Example .........................................................
Syntax for Changing the Motion Speed ...........................................................................
Robot Motion with Fine Termination Type ......................................................................
Robot Motion with Continuous Termination Type .............................................................
Acceleration Override .................................................................................................
PICK and PLACE Application ......................................................................................
PICK and PLACE Application with CNT100 ..................................................................
Adjusting P3 and P5 with Linear Distance .......................................................................
RT_LD: Effect of CNT Value .......................................................................................
Place Motion: Two Possible Traces ...............................................................................
Corner Path ...............................................................................................................
Half Segment Length ..................................................................................................
Program Speed Changes ..............................................................................................
Corner Path determined by CRy if Linear Dist is satisfied ..................................................
Corner path is determined by Linear Distance ..................................................................
Constant Path Regardless of Wait ....................................................................................
Corner Distance Screen .................................................................................................
The Effect of Corner Distance on Corner Rounding ...........................................................
Half Distance Rule ......................................................................................................
Short Segment Path With Corner Distance Function Disabled ...............................................
Short Segment Path with Corner Distance Function Enabled ................................................
Path Orientation ..........................................................................................................
Teaching a Small Corner ..............................................................................................
Teaching a Flexible Path ...............................................................................................
Faceplate Linear With and Without Option .....................................................................
FPLIN Option ...........................................................................................................
FPLIN none-ip Option ................................................................................................
Position Representation Screen ...................................................................................
Shortest Motion Within Axis Limit ..............................................................................
ORNT_BASE Instruction ............................................................................................
Saddle-shaped welding, which is suitable for ORNT_BASE...............................................
Behavior of TCP orientation, with and without ORNT_BASE instruction .............................
Instruction Types .......................................................................................................
Remote TCP Motion Option .......................................................................................
Remote TCP (RTCP) Motion Option Example ...............................................................
SKIP JUMP Motion Option Example ............................................................................
SKIP LBL[x] Motion Option Example .........................................................................
TIME BEFORE / TIME AFTER Motion Option Instructions ............................................
Tool Offset Instruction ..............................................................................................
Palletizing Example ..................................................................................................
SEARCH START [i] PR[x] ........................................................................................
SEARCH END ........................................................................................................
TOUCH OFFSET PR[x] ............................................................................................
Backward Execution Example ....................................................................................
7–49
7–51
7–55
7–56
7–59
7–60
7–60
7–61
7–63
7–64
7–67
7–68
7–69
7–70
7–71
7–78
7–89
7–90
7–91
7–93
7–93
7–94
7–97
7–98
7–100
7–101
7–102
7–103
7–104
7–106
7–107
7–107
7–108
7–110
7–111
7–113
7–114
7–115
7–117
7–118
7–121
7–122
7–122
7–123
MAROUHT9102171E REV F
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
7–88.
7–89.
7–90.
7–91.
7–92.
7–93.
7–94.
7–95.
7–96.
7–97.
7–98.
7–99.
7–100.
7–101.
7–102.
7–103.
7–104.
7–105.
7–106.
7–107.
7–108.
7–109.
7–110.
7–111.
7–112.
7–113.
7–114.
7–115.
7–116.
7–117.
7–118.
7–119.
7–120.
7–121.
7–122.
7–123.
7–124.
7–125.
7–126.
7–127.
7–128.
7–129.
7–130.
7–131.
Contents
TOUCH OFFSET END .............................................................................................
Example of PALLETIZING-B Instruction .....................................................................
Example of PALLETIZING-BX Instruction ..................................................................
Example of PALLETIZING-E Instruction .....................................................................
Example of PALLETIZING-EX Instruction ...................................................................
Direct and Indirect Addressing Example .......................................................................
PL[x] = [value] ........................................................................................................
PL[x] = [value] [operator] [value] ................................................................................
SET ISDT SPEED A...=... ...........................................................................................
LBL[x] ...................................................................................................................
JMP LBL[x] ............................................................................................................
CALL program ........................................................................................................
Program End Instruction ............................................................................................
Register IF Instruction ...............................................................................................
I/O IF Instruction for DI/DO, RI/RO, SI/SO and UI/UO ..................................................
I/O IF Instruction for PL ............................................................................................
I/O IF Instruction for R, AI/AO, GI/GO and System Variable ...........................................
Select Instruction .....................................................................................................
Example Text (.DT) File..............................................................................................
MONITOR Instruction ..............................................................................................
MONITOR END Instruction ......................................................................................
Condition for Register, System Variable, and I/O Parameters ............................................
Condition2 for I/O ....................................................................................................
Condition2 for I/O ....................................................................................................
Condition for Error Status ..........................................................................................
R[x] = DI[x] ............................................................................................................
DO[x] = ON/OFF .....................................................................................................
DO[x] = PULSE [,width] ...........................................................................................
DO[x] = R[x] ..........................................................................................................
R[x] = RI[x] ............................................................................................................
RO[x] = ON/OFF .....................................................................................................
RO[x] = PULSE [,width] ...........................................................................................
RO[x] = R[x] ...........................................................................................................
R[x] = AI[x] ............................................................................................................
AO[x] = value .........................................................................................................
R[x] = GI[x] ............................................................................................................
GO[x] = value .........................................................................................................
Comment OFF and ON ...............................................................................................
I/O Status OFF and ON ...............................................................................................
Comments and Status ON ............................................................................................
Color ON .................................................................................................................
Macro Command Instruction ......................................................................................
RSR Enable/Disable .................................................................................................
User Alarm .............................................................................................................
7–123
7–127
7–133
7–140
7–147
7–154
7–155
7–155
7–157
7–158
7–159
7–159
7–160
7–160
7–161
7–161
7–161
7–163
7–164
7–174
7–174
7–175
7–175
7–176
7–176
7–189
7–189
7–190
7–190
7–191
7–191
7–191
7–192
7–192
7–192
7–193
7–193
7–194
7–195
7–195
7–196
7–196
7–209
7–209
xxxv
Contents
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
xxxvi
7–132.
7–133.
7–134.
7–135.
7–136.
7–137.
7–138.
7–139.
7–140.
7–141.
7–142.
7–143.
7–144.
7–145.
7–146.
7–147.
7–148.
7–149.
7–150.
7–151.
7–152.
7–153.
7–154.
7–155.
7–156.
7–157.
7–158.
7–159.
7–160.
7–161.
7–162.
7–163.
7–164.
7–165.
7–166.
7–167.
7–168.
7–169.
7–170.
7–171.
7–172.
7–173.
7–174.
7–175.
MAROUHT9102171E REV F
Timer .....................................................................................................................
OVERRIDE ............................................................................................................
Message Instruction ..................................................................................................
Parameter Name Write Instruction ...............................................................................
Parameter Name Read Instruction ................................................................................
JOINT_MAX_SPEED Instruction - Multiple Motion Group Syntax ...................................
LINEAR_MAX_SPEED Instruction - Multiple Motion Group Syntax ................................
JOINT_MAX_SPEED Instruction - Single Motion Group Syntax ......................................
LINEAR_MAX_SPEED Instruction - Single Motion Group Syntax ...................................
RUN program ..........................................................................................................
Offset Condition ......................................................................................................
UFRAME_NUM=[value] ..........................................................................................
UTOOL_NUM=[value] .............................................................................................
UFRAME[i] = PR[x] ................................................................................................
UTOOL[i] = PR[x] ...................................................................................................
Parameter Example ...................................................................................................
CALL Program with Parameters .................................................................................
MACRO Program with Parameters ..............................................................................
Argument Registers ..................................................................................................
Use No More than Ten Parameters in an Instruction ........................................................
Make Sure Data Types Match .....................................................................................
Define All Parameter Elements ...................................................................................
Use Parameters Defined in the Main Program ................................................................
Cursor Position to Insert Parameters .............................................................................
Payload Instruction ...................................................................................................
Inertia Equations ......................................................................................................
POINT_LOGIC Instruction..........................................................................................
POINT_LOGIC Instruction..........................................................................................
POINT_LOGIC View Screen (Main Program) .................................................................
POINT_LOGIC View Instruction (in Logic Statements) ....................................................
PR[GRPn:x] = [value] ...............................................................................................
PR[GRPn:x] = [value] [operator] [value] ......................................................................
Position Register Element PR[i,j] ................................................................................
PR[i,j] = [value] .......................................................................................................
PR[i,j] = [value] [operator] [value] ..............................................................................
LOCK PREG Instruction ...........................................................................................
UNLOCK PREG Instruction ......................................................................................
PAUSE ...................................................................................................................
ABORT ..................................................................................................................
Error Program .........................................................................................................
RESUME_PROG = program ......................................................................................
MAINT_PROG = program .........................................................................................
CLEAR_RESUME_PRO ...........................................................................................
RETURN_PATH_DSBL ............................................................................................
7–210
7–210
7–213
7–214
7–214
7–215
7–215
7–215
7–216
7–234
7–238
7–238
7–239
7–239
7–239
7–240
7–241
7–242
7–244
7–245
7–245
7–246
7–246
7–248
7–252
7–253
7–254
7–255
7–258
7–259
7–261
7–261
7–262
7–262
7–263
7–265
7–265
7–266
7–266
7–266
7–267
7–267
7–268
7–268
MAROUHT9102171E REV F
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
7–176.
7–177.
7–178.
7–179.
7–180.
7–181.
7–182.
7–183.
7–184.
7–185.
7–186.
7–187.
7–188.
7–189.
7–190.
7–191.
7–192.
7–193.
7–194.
7–195.
7–196.
7–197.
7–198.
7–199.
7–200.
7–201.
7–202.
7–203.
8–1.
8–2.
8–3.
8–4.
8–5.
8–6.
8–7.
8–8.
8–9.
8–10.
8–11.
9–1.
9–2.
9–3.
10–1.
10–2.
Contents
SYNC_SCHED ....................................................................................................... 7–269
INPOS ................................................................................................................... 7–270
PR_STRT[n] ........................................................................................................... 7–270
PR_END[n] ............................................................................................................ 7–270
PR_SYNC[n] .......................................................................................................... 7–271
Direct and Indirect Addressing Example ....................................................................... 7–273
R[x] = [value] .......................................................................................................... 7–273
R[x] = [value] [operator] [value] ................................................................................. 7–275
Skip Condition for DO/DI, RO/RI, SO/SI, and UO/UI ..................................................... 7–277
Skip Condition for DI/DO, RI/RO, SI/SO, UI/UO, and WI/WO ........................................ 7–277
Skip Condition for R, GI/GO, AI/AO, and Parameters ..................................................... 7–277
Skip Condition ......................................................................................................... 7–277
String Register Assignment .......................................................................................... 7–280
String Register Concatenation ...................................................................................... 7–280
STRLEN Instruction ................................................................................................... 7–282
FINDSTR Instruction ................................................................................................. 7–282
SUBSTR Instruction ................................................................................................... 7–283
Tool Offset Condition Instruction ................................................................................ 7–284
VIA (DEFAULT) ....................................................................................................... 7–285
VIA (FINE, Z=n) ....................................................................................................... 7–286
VIA (CNT, Z=n1, RT_LD=n2, AP_LD=n3) .................................................................... 7–287
Specifying the Distance ............................................................................................... 7–287
Wait Time ............................................................................................................... 7–301
WAIT Condition for DI/DO, RI/RO, SI/SO, and UI/UO ................................................... 7–301
WAIT Condition for DI/DO, RI/RO, SI/SO, UI/UO, and WI/WO ...................................... 7–302
WAIT Condition for R, GI/GO, AI/AO, and Parameters ................................................... 7–302
WAIT Condition ...................................................................................................... 7–303
Mixed Logic WAIT Example ...................................................................................... 7–304
Program Detail Information .......................................................................................... 8–36
Collection Editor ......................................................................................................... 8–48
Treeview/Select ........................................................................................................... 8–49
Icon Editor ................................................................................................................. 8–65
Instruction Icons .......................................................................................................... 8–66
Context Sensitive Icon Editing ....................................................................................... 8–67
TOOLBAR Icons ......................................................................................................... 8–68
INPUT Icon ................................................................................................................ 8–69
Background Edit Process ............................................................................................. 8–72
Background Edit Process (Continued) ............................................................................ 8–73
Select Details .............................................................................................................. 8–82
Resume Tolerance Example ........................................................................................... 9–8
ALARM Recovery Without Specific Error and Action Text ................................................ 9–11
Example Program Showing Backward Execution ............................................................. 9–18
Production SETUP Screen ........................................................................................... 10–4
RSR Timing Diagram ................................................................................................. 10–8
xxxvii
Contents
Figure
10–3.
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
10–4.
10–5.
10–6.
10–7.
10–8.
10–9.
10–10.
10–11.
10–12.
10–13.
10–14.
10–15.
11–1.
11–2.
11–3.
11–4.
11–5.
11–6.
11–7.
11–8.
11–9.
11–10.
11–11.
11–12.
11–13.
11–14.
11–15.
11–16.
11–17.
11–18.
11–19.
11–20.
11–21.
11–22.
11–23.
11–24.
11–25.
11–26.
11–27.
11–28.
11–29.
11–30.
xxxviii
MAROUHT9102171E REV F
PNS Timing Diagram (default and recommended configuration) NOTE: Your Timing
Diagram might vary depending on your application. ......................................................... 10–13
Typical Style Initiate Sequence ................................................................................... 10–17
Fault Recovery During Style Execution ........................................................................ 10–18
Password Configuration Screen .................................................................................... 10–51
Password Help .......................................................................................................... 10–70
Error Severity Table .................................................................................................. 10–76
Example Output Definition ......................................................................................... 10–83
Timing - One Alarm ................................................................................................. 10–84
Timing - Multiple Alarms .......................................................................................... 10–84
Inertia Equations ...................................................................................................... 10–94
Valid Payload Configuration for Accurate Estimation ...................................................... 10–95
J5 and J6 Orientation for POS1 .................................................................................. 10–103
Acceleration Equation .............................................................................................. 10–104
Status Indicators .......................................................................................................... 11–3
R-30iB Plus A Cabinet Operator Panel ............................................................................. 11–4
R-30iB Plus B Cabinet Operator Panel ............................................................................. 11–5
The User System to Utilize Completion Process by DI Input .............................................. 11–17
Notifications Screen ................................................................................................... 11–24
Notifications Screen with Cleared Notification ................................................................. 11–26
Power Consumption Monitor ....................................................................................... 11–34
Process Axes Status Screen .......................................................................................... 11–35
Status 1 Screen ........................................................................................................ 11–43
Status 2 Screen ........................................................................................................ 11–46
Pulse Screen ............................................................................................................ 11–47
Torque Monitor Screen .............................................................................................. 11–48
Tracking Screen ....................................................................................................... 11–49
Disturbance Torque Screen ......................................................................................... 11–50
Servo Diagnosis Main Screen ..................................................................................... 11–51
Servo Diagnosis Reducer Screen ................................................................................. 11–52
Servo Diagnosis Over Heat Screen .............................................................................. 11–54
Servo Diagnosis Torque Screen ................................................................................... 11–54
Servo Diagnosis Disturbance Screen ............................................................................ 11–55
Servo Diagnosis OVC Screen ..................................................................................... 11–56
Servo Diagnosis Collision Detection Screen .................................................................. 11–56
String Register Simple Import Text File ......................................................................... 11–61
String Register Full Import Text File.............................................................................. 11–62
Turn Number and Joint Placement Display on Position Screen .......................................... 11–66
Turn Number Display Configuration ............................................................................ 11–67
Joint Placement Configuration Examples for Fully Articulated Robots ................................ 11–67
Joint Placement Configuration Examples for Fully Articulated Paint Robots ........................ 11–68
Joint Placement Configuration Examples for Horizontally Articulated Robots ...................... 11–69
$SCR_GRP[group].$turn_axis[i] for Turn Number Display Configuration .......................... 11–69
Simple Gripper Example ............................................................................................. 11–77
MAROUHT9102171E REV F
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
11–31.
11–32.
11–33.
11–34.
11–35.
11–36.
11–37.
11–38.
11–39.
11–40.
11–41.
11–42.
11–43.
11–44.
12–1.
12–2.
12–3.
12–4.
12–5.
12–6.
12–7.
12–8.
12–9.
13–1.
13–2.
13–3.
13–4.
13–5.
13–6.
13–7.
13–8.
13–9.
13–10.
13–11.
13–12.
13–13.
13–14.
13–15.
14–1.
14–2.
14–3.
14–4.
14–5.
14–6.
Contents
Select a Screen to Configure.........................................................................................
Screen Settings Page...................................................................................................
Selecting an Image File ...............................................................................................
File Devices ..............................................................................................................
Adjust ......................................................................................................................
Indicator Settings Page................................................................................................
Indicator Settings .......................................................................................................
Adjust the Location of LED Indicator State: 0 .................................................................
Custom Logic Program Field........................................................................................
SETUP Visual Diagnostics ..........................................................................................
Reposition the Screen .................................................................................................
Select a Screen to View ...............................................................................................
Invalid Indicator ........................................................................................................
Visual Diagnostics Screen Display ................................................................................
R-30iB Plus Controller Memory Card Interface Location ..................................................
R-30iB Plus Controller USB Memory Stick Device Location ............................................
R-30iB Mate Plus Controller USB Location ....................................................................
iPendant USB Port (UT1:) Interface Location .................................................................
Making Subdirectories ................................................................................................
Displaying Subdirectories ............................................................................................
Subdirectories ...........................................................................................................
File Screen ..............................................................................................................
Example ASCII File .................................................................................................
Rack, Slot, Channel, and Starting Point ..........................................................................
Example Distributed I/O Setup Block Diagram ..............................................................
Interface Unit DIP Switches .......................................................................................
Basic Digital I/O Module DIP Switches ........................................................................
I/O Link Device Screen .............................................................................................
I/O Link Diagram .....................................................................................................
System that Uses FANUC I/O Link Connection Units .....................................................
LED Locations ........................................................................................................
Outline Drawing ......................................................................................................
Mounting Location ...................................................................................................
Example Connection Diagram ....................................................................................
Electrical Signal Cable Connectors ..............................................................................
Power Supply Cable Connector ...................................................................................
RSR Timing Diagram ...............................................................................................
PNS Timing Diagram ................................................................................................
User-definable Table ...................................................................................................
Change Speed Override Based on Torque (Analog Input) .................................................
Two Methods of Angle Entry Shift Function ..................................................................
Angle Entry Shift Screen Structure ..............................................................................
Auto Backward Exit Application...................................................................................
Auto Backward Exit Setup Screen .................................................................................
11–79
11–80
11–82
11–83
11–83
11–84
11–86
11–87
11–88
11–89
11–90
11–91
11–92
11–92
12–17
12–18
12–18
12–19
12–23
12–23
12–24
12–35
12–83
13–6
13–27
13–28
13–30
13–44
13–46
13–47
13–49
13–50
13–50
13–51
13–52
13–53
13–72
13–73
14–9
14–15
14–19
14–20
14–24
14–26
xxxix
Contents
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
xl
14–7.
14–8.
14–9.
14–10.
14–11.
14–12.
14–13.
14–14.
14–15.
14–16.
14–17.
14–18.
14–19.
14–20.
14–21.
14–22.
14–23.
14–24.
14–25.
14–26.
14–27.
14–28.
14–29.
14–30.
14–31.
14–32.
14–33.
14–34.
14–35.
14–36.
14–37.
14–38.
14–39.
14–40.
14–41.
14–42.
14–43.
14–44.
14–45.
14–46.
14–47.
14–48.
14–49.
14–50.
MAROUHT9102171E REV F
Example Program ......................................................................................................
Error Recovery Setup Screen ......................................................................................
Setting User Alarm Screen .........................................................................................
RESUME_PROGRAM Instruction ..............................................................................
CLEAR_RESUME_PROG Instruction .........................................................................
WELD.TP Example Program .....................................................................................
WIRE_CUT.TP (Resume Program) Example Program ....................................................
MAINT_PROGRAM Instruction ................................................................................
RETURN_PATH_DSBL Instruction ............................................................................
WELD.TP Example Program .....................................................................................
Fast Exit/Entry Feature Enabled and Disabled in a Program ..............................................
Normal Operation Auto Start Mode .............................................................................
Normal Operation without Execution of Resume Program ................................................
Resume Program Aborted ..........................................................................................
Normal Operation (Automatic Start DISABLED) ...........................................................
Auto Mode When an Undefined Alarm Occurs ..............................................................
Local Stop Lines ........................................................................................................
System Configuration Example .....................................................................................
Basic Process Flow ....................................................................................................
Basic Process Flow with Macro Program ........................................................................
I/O Setup Example .....................................................................................................
System Programming Example .....................................................................................
I/O Setup Example .....................................................................................................
Cycle Flow Example ..................................................................................................
Program A for welding of a workpiece A : WELD_A .......................................................
Program B for welding of a workpiece B : WELD_B ........................................................
Shape with a Perpendicular Axis .................................................................................
Orientation Setup Approach Positions ..........................................................................
Condition Monitor Function .......................................................................................
Condition for Register, System Variable, and I/O Parameters ............................................
Condition2 for I/O ....................................................................................................
Condition for Error status ..........................................................................................
Program Monitor Menu .............................................................................................
System Monitor Menu ...............................................................................................
.............................................................................................................................
Coordinates Offset Screens .......................................................................................
TCP Fixed Method ..................................................................................................
Robot Fixed Method - Example 1 ...............................................................................
Robot Fixed Method - Example 2 ...............................................................................
Total Cycle Time in One Cycle Mode ..........................................................................
Ten Cycle Mode ......................................................................................................
Hundred Cycle Mode ...............................................................................................
One Hundred Hour Mode .........................................................................................
Target Cycle Time ...................................................................................................
14–28
14–33
14–38
14–39
14–39
14–40
14–40
14–41
14–41
14–41
14–42
14–46
14–47
14–48
14–49
14–50
14–51
14–52
14–53
14–53
14–58
14–59
14–59
14–61
14–62
14–62
14–67
14–73
14–91
14–94
14–95
14–95
14–96
14–97
14–135
14–137
14–138
14–139
14–139
14–149
14–150
14–150
14–151
14–153
MAROUHT9102171E REV F
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
14–51.
14–52.
14–53.
14–54.
14–55.
14–56.
14–57.
14–58.
14–59.
14–60.
14–61.
14–62.
14–63.
14–64.
14–65.
14–66.
14–67.
14–68.
14–69.
14–70.
14–71.
14–72.
14–73.
14–74.
14–75.
14–76.
14–77.
14–78.
14–79.
14–80.
14–81.
14–82.
14–83.
14–84.
14–85.
14–86.
14–87.
14–88.
14–89.
14–90.
14–91.
14–92.
14–93.
14–94.
Contents
Reference Program Recorded Display .........................................................................
Process Limits ........................................................................................................
Sample Report ........................................................................................................
Data Monitor Chart Screen .........................................................................................
Data Monitor Operation Screen ...................................................................................
Execution Timing of Distance Before ..........................................................................
Distance Before Motion Option, DB ...........................................................................
Checking Whether the TCP Goes into the Trigger Region ...............................................
Size of Trigger Region ...............................................................................................
TCP Does not Go into Trigger Region .........................................................................
Penetration .............................................................................................................
DISTBF_TTS = 0 ....................................................................................................
Execution Timing of an Action Program ........................................................................
Hold During the Execution of an Action Program ..........................................................
DISTBF_TTS = 2 ....................................................................................................
Resume after Jogging ................................................................................................
Resume After Jogging ($DISTBF_TTS = 0 ) ..................................................................
Laser Height Sensor .................................................................................................
Search Motion ........................................................................................................
Positions and Frames Defined After the Search .............................................................
Shape Frames .........................................................................................................
Parallel Mirror Image with Mirror Plane in Center of Robot ............................................
Parallel Mirror Image with Mirror Plane Offset from Center of Robot ...............................
Parallel Mirror Image with Offset ...............................................................................
Positional Mirror Image ............................................................................................
Rotational Mirror Image ...........................................................................................
Rotational Mirror Image ...........................................................................................
Mirror Image Shift with Orientation Mirrored (Mirror Method) ........................................
Enhanced Mirror Image with Orientation Controlled (Fixture Method) ..............................
Mirror Image Key ...................................................................................................
Example of Robot Axes Only Mirror Image .................................................................
Example of Extended Axes Integrated Mirror Image ......................................................
Example of With Extended Axes Mirror Image .............................................................
Mirroring an Entire Program .....................................................................................
Mirroring a Portion of a Program ...............................................................................
Using Register Instructions to Synchronize Program Execution ........................................
Multi-Tasking Using the RUN Program Instruction ........................................................
Single Step Execution Example ..................................................................................
Single Step Backward Execution ................................................................................
Backward Execution of a RUN Instruction Example ......................................................
Mastering Data .........................................................................................................
Interface Panel Example .............................................................................................
Setup Screen ............................................................................................................
Position Number .......................................................................................................
14–154
14–156
14–158
14–167
14–168
14–169
14–170
14–171
14–171
14–174
14–174
14–177
14–178
14–178
14–179
14–180
14–180
14–191
14–192
14–193
14–193
14–208
14–208
14–209
14–210
14–210
14–211
14–211
14–212
14–212
14–213
14–213
14–214
14–216
14–217
14–225
14–228
14–229
14–229
14–230
14–234
14–243
14–243
14–247
xli
Contents
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
xlii
14–95.
14–96.
14–97.
14–98.
14–99.
14–100.
14–101.
14–102.
14–103.
14–104.
14–105.
14–106.
14–107.
14–108.
14–109.
14–110.
14–111.
14–112.
14–113.
14–114.
14–115.
14–116.
14–117.
14–118.
14–119.
14–120.
14–121.
14–122.
14–123.
14–124.
14–125.
14–126.
14–127.
14–128.
14–129.
14–130.
14–131.
14–132.
14–133.
14–134.
14–135.
14–136.
14–137.
14–138.
MAROUHT9102171E REV F
Interface Panel Screens ..............................................................................................
Cursor ....................................................................................................................
Position Number .......................................................................................................
Type Code Field .......................................................................................................
Type Code Field .......................................................................................................
Button Preview .........................................................................................................
Button Error Display .................................................................................................
Operation Condition Setup Screen ................................................................................
Operation Condition Detail Screen ...............................................................................
Push Button .............................................................................................................
Lamp Status Signal ...................................................................................................
Digital Switch ..........................................................................................................
Digital Display .........................................................................................................
Jog Retract & Return .................................................................................................
Teach Pendant Menus Example ..................................................................................
Prompt Box Message Menu .......................................................................................
Prompt Box Message Menu Does not Exist Screen ........................................................
Prompt Box Yes/No Menu ........................................................................................
Prompt Box Yes/No Menu Does not Exist Screen ..........................................................
List Menu ..............................................................................................................
List Menu Does not Exist Screen ................................................................................
Status Menu ...........................................................................................................
Default Status Menu ................................................................................................
Operator Entry Menu ...............................................................................................
Operator Entry Menu Does Not Exist Screen ................................................................
Parallel Mirror Image with Mirror Plane in Center of Robot ............................................
Parallel Mirror Image with Mirror Plane Offset from Center of Robot ...............................
Parallel Mirror Image with Offset ...............................................................................
Positional Mirror Image ............................................................................................
Rotational Mirror Image ...........................................................................................
Rotational Mirror Image ...........................................................................................
Mirror Image Key ...................................................................................................
Example of Robot Axes Only Mirror Image .................................................................
Example of Extended Axes Integrated Mirror Image ......................................................
Example of With Extended Axes Mirror Image .............................................................
Mirroring an Entire Program .....................................................................................
Mirroring a Portion of a Program ...............................................................................
Motion Start Delay Memory Buffers ...........................................................................
LEDs on the R-30iB Compact Plus Controller ................................................................
Robot Homepage Screen ............................................................................................
iRProgrammer Screen ................................................................................................
Position Table ..........................................................................................................
Jog Operation Selectable List ......................................................................................
Joint Jog Panel .........................................................................................................
14–248
14–250
14–251
14–251
14–252
14–257
14–259
14–264
14–265
14–268
14–275
14–276
14–279
14–286
14–294
14–295
14–296
14–300
14–301
14–306
14–307
14–313
14–314
14–324
14–325
14–335
14–336
14–336
14–337
14–338
14–338
14–339
14–339
14–339
14–340
14–342
14–342
14–355
14–371
14–372
14–375
14–381
14–382
14–382
MAROUHT9102171E REV F
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
14–139.
14–140.
14–141.
14–142.
14–143.
14–144.
14–145.
14–146.
14–147.
14–148.
14–149.
14–150.
14–151.
14–152.
14–153.
14–154.
14–155.
14–156.
14–157.
14–158.
14–159.
14–160.
14–161.
14–162.
14–163.
14–164.
14–165.
14–166.
14–167.
14–168.
14–169.
14–170.
14–171.
14–172.
14–173.
14–174.
14–175.
14–176.
14–177.
14–178.
14–179.
14–180.
14–181.
14–182.
Contents
World Jog Panel........................................................................................................
Single Step or Continuous ..........................................................................................
Program is Running dialog .........................................................................................
Jogging iPendant Screen.............................................................................................
Operation Key Sheet..................................................................................................
Jog Panel Screen .......................................................................................................
Navigate iPendant Screen ...........................................................................................
Mode Select Menu ....................................................................................................
Mode Select Screen ...................................................................................................
Mode Select Menu ....................................................................................................
System/Config screen ................................................................................................
Hold Without Original Path Resume — Path Resumes from Current Position .....................
Hold With Original Path Resume — Path Resumes from Stop Position ..............................
Emergency Stop With Original Path Resume — Path Resumes from Stop Position ..............
Path Switch Application .............................................................................................
Path Switch Application .............................................................................................
Path Switch Application (Original Path Resume is Disabled) .............................................
Path Switch Application .............................................................................................
Path Switch Application .............................................................................................
Payload Check Screen ..............................................................................................
Payload Setting Screen .............................................................................................
Payload Setting Error ...............................................................................................
Modify Program Screen ............................................................................................
Modify Program Screen ............................................................................................
Power On/Off screen ................................................................................................
Position BumpBox with coordinated Motion ..................................................................
Position BumpBox Schedule .......................................................................................
BBox with Table .......................................................................................................
Coordinated motion setup screen..................................................................................
Leader Frame PopUp menu.........................................................................................
Leader Frame Setup - 3 point Method ...........................................................................
CD Leader Frame Example .........................................................................................
Process Axes Status Screen .........................................................................................
External Process Axes Control ....................................................................................
Example Timing Chart for Process Axis Speed Control ....................................................
Example Timing Chart for Process Usage Accumulation ..................................................
Shifting an Entire Program ........................................................................................
Shifting Portions of a Program ...................................................................................
Parallel Shift ..........................................................................................................
Parallel and Rotational Shift ......................................................................................
Program Shift Key ...................................................................................................
Example of Robot Axes Only Shift .............................................................................
Example of Extended Axes Integrated Shift ..................................................................
Example of With Extended Axes Shift .........................................................................
14–383
14–384
14–384
14–389
14–392
14–393
14–395
14–403
14–407
14–408
14–410
14–413
14–413
14–414
14–415
14–418
14–419
14–419
14–420
14–424
14–425
14–425
14–426
14–426
14–427
14–437
14–438
14–443
14–445
14–445
14–446
14–447
14–457
14–459
14–461
14–461
14–462
14–463
14–463
14–464
14–464
14–465
14–465
14–466
xliii
Contents
Figure
Figure
Figure
Figure
14–183.
14–184.
14–185.
14–186.
MAROUHT9102171E REV F
Example of With Extended Axes Only Shift .................................................................
Example of a Replace Extended Axes Shift ..................................................................
Turn Numbers ........................................................................................................
Hold With Constant Path Resume Offset — Path Resumes from Offset Stop Position
14–466
14–467
14–472
............................................................................................................................. 14–477
Figure 14–187.
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
xliv
14–188.
14–189.
14–190.
14–191.
14–192.
14–193.
14–194.
14–195.
14–196.
14–197.
14–198.
14–199.
14–200.
14–201.
14–202.
14–203.
14–204.
14–205.
14–206.
14–207.
14–208.
14–209.
14–210.
14–211.
14–212.
14–213.
14–214.
14–215.
14–216.
14–217.
14–218.
14–219.
14–220.
14–221.
14–222.
14–223.
14–224.
14–225.
Hold with non-Constant Path Resume Offset — Path Resumes from Offset Stop
Position ..................................................................................................................
Relationship Between Forward and Measured Position .....................................................
Wireshark Ethernet Log .............................................................................................
RSI_ON_I () Example ...............................................................................................
Servo Tool .............................................................................................................
SETUP Circle DETAIL Screen ..................................................................................
Circle Detail Terminology .........................................................................................
SETUP Hexagon DETAIL Screen ..............................................................................
Hexagon Detail Terminology .....................................................................................
SETUP Rectangle DETAIL Screen .............................................................................
Rectangle Detail Terminology ....................................................................................
SETUP Slot DETAIL Screen .....................................................................................
Slot Detail Terminology ...........................................................................................
SETUP Keyhole DETAIL Screen ...............................................................................
Keyhole Detail Terminology ......................................................................................
SETUP Pommel DETAIL Screen ...............................................................................
Pommel Detail Terminology ......................................................................................
SETUP Cust Shape DETAIL Screen ...........................................................................
UTILITIES Shape Gen DETAIL Screen Example ..........................................................
UTILITIES Shape Gen Screen ...................................................................................
Shape Generated Program Example ACIR1 ..................................................................
Shape Generated Program Example ACIR2 ..................................................................
Production Program Example ....................................................................................
Taught Configuration vs. Actual Configuration .............................................................
Single Step Forward (FWD) vs. Backward (BWD) ........................................................
Program Motion vs. Jogging: Behavior Might Be Different Near Singularity ......................
Unforeseeable Singularity at a Corner Path ...................................................................
Servo Schedules ......................................................................................................
Example Program Using the Manual Servo Schedule .......................................................
Lemon Shape with a Bump on the Right Side ...............................................................
Lemon Shape with Outward Bump and Ripples .............................................................
Flat Spot on Each Side .............................................................................................
Two Flat Spots and an Inward Bump ...........................................................................
Soft Float in the X Direction ......................................................................................
Soft Float[n] Independent Instruction Example .............................................................
Soft Float[n] Motion Option Example .........................................................................
Improving Softness Example .....................................................................................
Improving Softness ..................................................................................................
Layout and Tool Selection .........................................................................................
14–478
14–487
14–488
14–494
14–500
14–510
14–511
14–512
14–513
14–514
14–515
14–515
14–516
14–517
14–518
14–519
14–521
14–521
14–526
14–526
14–530
14–531
14–532
14–539
14–540
14–541
14–542
14–552
14–553
14–554
14–555
14–555
14–556
14–565
14–566
14–567
14–569
14–569
14–570
MAROUHT9102171E REV F
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
14–226.
14–227.
14–228.
14–229.
14–230.
14–231.
14–232.
14–233.
14–234.
14–235.
14–236.
14–237.
14–238.
14–239.
14–240.
14–241.
14–242.
14–243.
14–244.
14–245.
14–246.
14–247.
14–248.
14–249.
14–250.
14–251.
14–252.
14–253.
14–254.
15–1.
15–2.
15–3.
15–4.
15–5.
15–6.
16–1.
16–2.
16–3.
16–4.
16–5.
16–6.
16–7.
16–8.
16–9.
Contents
Insertion Motion ..................................................................................................... 14–571
Face-to-Face Motion ................................................................................................ 14–572
TCP Setup Example ................................................................................................. 14–573
Soft Operator Panel Screen ......................................................................................... 14–577
Setup Host Comm screen............................................................................................ 14–578
System/Config screen ................................................................................................ 14–579
Robot Home Page ..................................................................................................... 14–579
Soft Operator Panel Screen ......................................................................................... 14–580
Pop-up when connection is lost .................................................................................... 14–582
Confirmation dialog box to start the program .................................................................. 14–583
Space Check - Single Robot Controller ........................................................................ 14–584
Space Check - Single Robot Controller ........................................................................ 14–585
Common Space Inside/Outside .................................................................................. 14–589
Common Space Outside Boundary ............................................................................. 14–590
Common Space Vertexes .......................................................................................... 14–591
MultiARM Controller .............................................................................................. 14–594
Symmetric Part Orientation ......................................................................................... 14–607
Max Value ............................................................................................................. 14–610
Max Speed ............................................................................................................. 14–610
Typical TP Shim Example ......................................................................................... 14–629
Advanced TP Shim Example Using USEMAST ............................................................ 14–630
Advanced TP Shim Example Using HISTORY ............................................................. 14–631
TIME BEFORE / TIME AFTER Motion Option Instructions ........................................... 14–637
Normal Execution when $timebf_ver=4 ....................................................................... 14–638
Timing Sequence (TIME BEFORE instruction) ............................................................. 14–639
Timing Sequence (AFTER instruction) ........................................................................ 14–639
Timing Sequence (TIME BEFORE instruction) ............................................................. 14–639
Main and Sub Program Examples ............................................................................... 14–642
Program Example for TIME BEFORE Instruction ......................................................... 14–642
Composition of FANUC Sensor Data Packet ................................................................... 15–3
Handshaking When the Contents of a Register is Sent to the Sensor ..................................... 15–5
Handshaking When a Register Number and Its Data is Received ......................................... 15–5
Handshaking When Position Register Data is Received ..................................................... 15–6
Handshaking When Three Point Data is Received ............................................................. 15–6
Handshaking When the Transformation Matrix is Received ................................................ 15–6
Standard iRCalibration Mastering Calibration Plates ....................................................... 16–11
Example of First Three Positions ................................................................................. 16–27
Example of Second Three Positions ............................................................................. 16–27
Standard iRCalibration Mastering Calibration Plates ........................................................ 16–42
Example of First Three Positions .................................................................................. 16–58
Example of Second Three Positions ............................................................................. 16–58
Typical Arc Welding tool definition ............................................................................. 16–72
Typical Waterjet Tool Definition .................................................................................. 16–73
Recommended iRCalibration TCP Set Touch Plate and Pointer Specifications ...................... 16–74
xlv
Contents
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
16–10.
16–11.
16–12.
16–13.
16–14.
16–15.
16–16.
16–17.
16–18.
16–19.
16–20.
16–21.
16–22.
16–23.
16–24.
Figure 16–25.
Figure 16–26.
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
xlvi
16–27.
16–28.
16–29.
16–30.
16–31.
16–32.
16–33.
16–34.
16–35.
16–36.
16–37.
16–38.
17–1.
18–1.
18–2.
19–1.
19–2.
19–3.
19–4.
19–5.
19–6.
19–7.
19–8.
20–1.
20–2.
MAROUHT9102171E REV F
Installing the Touch Plate ........................................................................................... 16–75
Example of First Three Positions ................................................................................. 16–87
Example of Second Three Positions ............................................................................. 16–88
Cal-Plate Calibration Positions .................................................................................... 16–89
iRCalibration TCP Set NEW-XYZWPR Calibration Program Example .............................. 16–92
iRCalibration TCP Set Cal-Plate Calibration Program Example ......................................... 16–93
Typical Arc Welding tool definition .............................................................................. 16–100
Typical Waterjet Tool Definition .................................................................................. 16–101
Recommended iRCalibration TCP Shift Touch Plate and Pointer Specifications ................... 16–102
Installing the Touch Plate ........................................................................................... 16–103
iRCalibration TCP Shift XYZWPR Calibration Program Example .................................... 16–116
Example of Manually Created XYZ Search TPP Program ............................................... 16–117
Example of Manually Created XY Search TP Program ................................................... 16–118
Example of Manually Created Z Search Teach Pendant Program ...................................... 16–118
Example of Manually Created XYZ Search TP Program Using Detect Circle
Instruction (with XY and Z offsets) ............................................................................. 16–118
Example of Manually Created XY Search TP Program Using Detect Circle Instruction
(without XY and Z offsets) ........................................................................................ 16–119
Example of Standard iRCalibration TCP Shift-Generated Program with Update Frame
Added .................................................................................................................... 16–119
Typical Arc Weld Tool Definition ............................................................................... 16–130
Typical Waterjet Tool Definition ................................................................................. 16–131
Non-uniform Surface (Example 1) .............................................................................. 16–145
Non-uniform Surface (Example 2) .............................................................................. 16–145
6 Points Search (3-2-1) (Corresponds to ) ..................................................................... 16–146
6 points (3-2-1) for x, y, z, w, p, r Offset ...................................................................... 16–147
Example program for automatic operation. ................................................................... 16–148
Secondary Encoder ................................................................................................... 16–172
Application Example ................................................................................................. 16–173
Secondary Encoder Feedback ...................................................................................... 16–174
Program Example ..................................................................................................... 16–177
Timing Diagram ....................................................................................................... 16–184
HandlingTool User Keys ............................................................................................ 17–13
Paint Start and Paint End ............................................................................................... 18–6
Paint_Pause and Paint_Resum Teach Pendant Programs ...................................................... 18–7
Example: Servo tool is the 2nd group and the number of tools is four .................................... 19–4
................................................................................................................................ 19–5
Calibration Motion Type ............................................................................................ 19–12
Tool Change Sequence .............................................................................................. 19–18
.............................................................................................................................. 19–21
.............................................................................................................................. 19–21
.............................................................................................................................. 19–21
.............................................................................................................................. 19–24
Example Program Including Touch Sensing Routine ......................................................... 20–4
Search Using Searches in One Direction ......................................................................... 20–8
MAROUHT9102171E REV F
Figure
Figure
20–3.
20–4.
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
20–5.
20–6.
20–7.
20–8.
20–9.
20–10.
20–11.
20–12.
20–13.
20–14.
20–15.
20–16.
20–17.
Figure 20–18.
Figure 20–19.
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
20–20.
20–21.
20–22.
20–23.
20–24.
20–25.
20–26.
20–27.
20–28.
20–29.
20–30.
20–31.
20–32.
20–33.
20–34.
20–35.
20–36.
20–37.
20–38.
20–39.
20–40.
20–41.
B–1.
B–2.
Contents
Search Using Offsets in Two Dimensions ........................................................................ 20–9
Search Using Two Search Motions in Two Different Directions to Obtain X and Y
Offset and Rotation about Z ........................................................................................ 20–10
Touch Frame Used in a Program ................................................................................. 20–11
Simple Search Routine Using Searches in Two Directions ................................................ 20–17
Fillet Search in One Direction (x) with Rotation about Z .................................................. 20–17
Fillet Search in Two Directions (x and y) with Rotation about Z ........................................ 20–18
Fillet Search in Three Directions (x, y, z) with Rotation about Z ........................................ 20–18
V-Groove Search ...................................................................................................... 20–19
OD/ID Search in Two Directions (X and Y) .................................................................. 20–19
Touch Sensing Motion Option Example ......................................................................... 20–27
Points that Require Touching Up .................................................................................. 20–29
Simple Search Example Program ................................................................................ 20–30
One-Dimensional Search Ex. Prog. (Fillet/Lap, V-Groove) .............................................. 20–30
Two Dimensional Search Example Program .................................................................. 20–31
Two Dimensional Search with Coordinated Motion Example Program (See and for
illustrations) ............................................................................................................. 20–32
First Illustration of Two Dimensional Search with Coordinated Motion Program
Example .................................................................................................................. 20–32
Second Illustration of Two Dimensional Search with Coordinated Motion Program
Example .................................................................................................................. 20–33
Simple Search with Coordinated Motion Example Program .............................................. 20–33
Three Dimensional Search with Rotation Example Program (See for an illustration) ............. 20–34
Illustration of Three Dimensional Search with Rotation Program Example .......................... 20–34
Part in Mastered Position and Offset Applied Illustration .................................................. 20–36
Offset Value Illustration ............................................................................................. 20–38
Part with One Touch Sense Start Position, 2, and Three Points along a Path, 5, 6, 7 ................ 20–40
Illustration of the Path when an Offset is Applied ............................................................ 20–40
Offset Path Touch Up to Adjust Location of Points 6 and 7 ............................................... 20–41
New Master Touch Up Illustration ................................................................................ 20–41
Incorrect Touch Up of a Path ....................................................................................... 20–42
Path Followed After Altering One Point ........................................................................ 20–42
New Point Taught while Executing the Offset Path .......................................................... 20–43
Multiple Searches can be Performed for Complex Shapes ................................................. 20–45
Illustration of Part Shape Change and the Effect on Multiple Searches Performed .................. 20–45
Moving a Search Start Position along the Search Direction ................................................ 20–46
Search Start Position moved to a New Location Off the Axis of the Search Direction ............. 20–46
Simple Low Voltage Touch Sense Detection Circuit ......................................................... 20–48
Laser Digital Input Touch Sensing ................................................................................. 20–53
Laser Digital Touch Sensing Schedule ........................................................................... 20–54
Example 1 ................................................................................................................ 20–54
Touch Sensing Type Screen ......................................................................................... 20–55
Multi-Arm Laser Digital Simultaneous Touch Sensing Schedule ........................................ 20–55
Cycle Power ................................................................................................................ B–8
Cycle Power .............................................................................................................. B–13
xlvii
Contents
Figure
Figure
Figure
Figure
xlviii
B–3.
C–1.
C–2.
E–1.
MAROUHT9102171E REV F
Start Mode screen ....................................................................................................... B–14
Example of position when quick mastering J3 axis ............................................................ C–18
Example of position when quick mastering J5 axis ............................................................ C–18
System Variable Format ................................................................................................. E–2
List of Tables
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
1–1.
1–2.
2–1.
2–2.
2–3.
2–4.
2–5.
2–6.
2–7.
2–8.
2–9.
2–10.
2–11.
2–12.
2–13.
2–14.
2–15.
2–16.
2–17.
2–18.
2–19.
2–20.
2–21.
2–22.
2–23.
3–1.
5–1.
5–2.
5–3.
5–4.
5–5.
6–1.
6–2.
6–3.
6–4.
6–5.
6–6.
Standard Operator Panel Buttons ...................................................................................
Robot Servo Status ......................................................................................................
Touch Screen and Mouse Navigation .................................................................................
Blanking and Dimming .................................................................................................
Window Displays .........................................................................................................
TreeView Types ...........................................................................................................
TreeView Keys ............................................................................................................
Browser Screen Keys ..................................................................................................
Favorites Screen Operations .........................................................................................
Browser Screen Keys ..................................................................................................
Navigation and Data Entry Keys ...................................................................................
Robot Motion Keys ....................................................................................................
Execution Keys ..........................................................................................................
Editing Keys .............................................................................................................
Material Handling-Specific Keys ...................................................................................
Help and Diagnostic Key .............................................................................................
FCTN Menu ..............................................................................................................
Key Functions .........................................................................................................
Status Bar Display Items ..............................................................................................
................................................................................................................................
HELP/DIAGNOSTICS Menu Items ...............................................................................
Help/Diag Information Display Locations .......................................................................
Document Viewer Function Keys ....................................................................................
$UI_CONFIG.$recovermenu ........................................................................................
System Variable Settings .............................................................................................
Softkeys .......................................................................................................................
Jog Speed Values .........................................................................................................
LCD Indicators ............................................................................................................
Coordinate Systems ......................................................................................................
SubGroup Example ....................................................................................................
$JOG_GROUP[] System Variables ..................................................................................
Tool Frame Setup Screen Items .......................................................................................
Tool Frame Setup Three Point DETAIL Screen Items ........................................................
Tool Frame Setup Four Point DETAIL Screen Items .....................................................
Tool Frame Setup Six Point DETAIL Screen Items ...........................................................
Tool Frame Setup Direct Entry DETAIL Screen Items .......................................................
User Frame Setup Screen Items .....................................................................................
1–11
1–15
2–7
2–11
2–15
2–18
2–19
2–20
2–22
2–24
2–29
2–30
2–32
2–32
2–33
2–34
2–34
2–35
2–56
2–57
2–58
2–58
2–61
2–67
2–81
3–7
5–3
5–5
5–5
5–12
5–16
6–8
6–13
6–19
6–25
6–31
6–38
xlix
Contents
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
l
6–7.
6–8.
6–9.
6–10.
6–11.
6–12.
6–13.
6–14.
6–15.
6–16.
7–1.
7–2.
7–3.
7–4.
7–5.
7–6.
7–7.
7–8.
7–9.
7–10.
7–11.
7–12.
7–13.
7–14.
7–15.
7–16.
7–17.
7–18.
7–19.
7–20.
7–21.
7–22.
7–23.
7–24.
7–25.
7–26.
7–27.
7–28.
7–29.
7–30.
7–31.
7–32.
7–33.
7–34.
MAROUHT9102171E REV F
User Frame Setup Three Point DETAIL Screen Items ........................................................
User Frame Setup Four Point DETAIL Screen Items .........................................................
User Frame Setup Direct Entry DETAIL Screen Items .......................................................
Jog Frame Setup Screen Items ......................................................................................
Jog Frame Setup Three Point DETAIL Screen Items .........................................................
Jog Frame Setup Direct Entry DETAIL Screen Items ........................................................
Cell Frame Setup Screen Items .......................................................................................
Cell Frame Setup Using Direct Entry ...............................................................................
Cell Frame Copy Screen Items .......................................................................................
Cell Floor Setup Screen Items ........................................................................................
Available Logic Instructions Between Type A Motion Instructions ........................................
Instructions Unavailable Between A Type Motions but Available in Called Programs ...............
Instructions Unavailable Between A Type Motion Instructions .............................................
Available Motion Options ..............................................................................................
Major Unavailable Motion Options .................................................................................
$MNDSP_POSCF Configuration Settings .......................................................................
Display Modes ...........................................................................................................
Display Mode Examples ..............................................................................................
$FRM_CHKTYP Values .............................................................................................
Example Program Operation .........................................................................................
Range of Register Values to Specify a Variable Motion Speed .............................................
ORNT_BASE Instruction Alarm Messages .....................................................................
PALLETIZING-B Pallet Editor Items ..........................................................................
PALLETIZING-BX Pallet Editor Items ........................................................................
PALLETIZINGE Pallet Editor Items ............................................................................
PALLETIZING-EX Pallet Editor Items ........................................................................
Usable instruction of math function ...............................................................................
Background operation of math function ..........................................................................
Data Types ..............................................................................................................
Arithmetical Operators ..............................................................................................
Logical Operators .....................................................................................................
Comparison Operators ...............................................................................................
Priority of Operators .................................................................................................
Data Assignments ....................................................................................................
Mixed Logic Error Messages ......................................................................................
Background Logic Execution Modes ............................................................................
Background Logic Screen Items ..................................................................................
Background Logic Screen Operations ...........................................................................
TC Online Instruction ...............................................................................................
Parameter Instructions ...............................................................................................
Parameter Data Types ...............................................................................................
String Parameter System Variables ..............................................................................
Instructions That Can Use AR[] ..................................................................................
Instructions that can Use AR[] ....................................................................................
6–40
6–46
6–53
6–69
6–69
6–75
6–81
6–81
6–83
6–85
7–30
7–32
7–32
7–33
7–34
7–37
7–39
7–42
7–46
7–47
7–50
7–109
7–127
7–133
7–140
7–147
7–197
7–205
7–217
7–217
7–217
7–218
7–218
7–219
7–221
7–222
7–224
7–224
7–231
7–241
7–241
7–243
7–244
7–251
MAROUHT9102171E REV F
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
7–35.
7–36.
7–37.
7–38.
7–39.
7–40.
7–41.
7–42.
8–1.
8–2.
8–3.
8–4.
8–5.
8–6.
8–7.
8–8.
8–9.
8–10.
8–11.
8–12.
8–13.
8–14.
8–15.
9–1.
9–2.
9–3.
9–4.
9–5.
9–6.
9–7.
10–1.
10–2.
10–3.
10–4.
10–5.
10–6.
10–7.
10–8.
10–9.
10–10.
10–11.
10–12.
10–13.
10–14.
Contents
Schedule and Robot Combinations .............................................................................. 7–269
SR[x]=R[y]............................................................................................................... 7–281
R[x]=SR[y]............................................................................................................... 7–281
SR[x]=R[y]+SR[z] ..................................................................................................... 7–281
SR[x]=SR[y]+R[z] ..................................................................................................... 7–281
R[x]=STRLEN SR[y]: ................................................................................................ 7–282
R[x]=FINDSTR SR[y],SR[z] ....................................................................................... 7–283
SR[n]=SUBSTR SR[x],R[y],R[z].................................................................................. 7–283
Rack 1 ....................................................................................................................... 8–5
Select Screen Items and Operations ............................................................................... 8–12
Paste Methods ........................................................................................................... 8–21
Program DETAIL Screen Items and Operations ............................................................... 8–32
Macro Command Screen Items ..................................................................................... 8–51
Application-Specific Teach Pendant User Keys ................................................................ 8–52
Macro Command Assignments (ArcTool and HandlingTool) .............................................. 8–55
MANUAL Macros Screen Items ................................................................................... 8–58
................................................................................................................................ 8–60
Troubleshoot Background Edit - Problem Cause and Remedy ............................................. 8–76
Permanent Program Storage States .................................................................................. 8–80
Temporary Program Storage States .................................................................................. 8–80
Load/Convert Times for 1,000 Point Program .................................................................... 8–81
Storage Configuration Status and Settings ......................................................................... 8–83
Maximum Program Size for Typical CMOS Allocations ...................................................... 8–83
Tolerance Setup Items ................................................................................................... 9–9
Status Disabled Faults Screen Items ............................................................................... 9–12
Faults that can be Disabled ........................................................................................... 9–13
Test Cycle Conditions ................................................................................................. 9–16
Program Select and Program Start ................................................................................. 9–29
UTILITIES Prog Adj Screen Items ................................................................................ 9–37
UTILITIES Prog Adj DETAIL Screen Items ................................................................... 9–38
Production Setup Screen .............................................................................................. 10–4
RSR Setup Item Description ......................................................................................... 10–8
PNS Setup Item Description ....................................................................................... 10–15
Style Name Setup Items ............................................................................................. 10–18
Prog Select STYLE Setup DETAIL Screen Items ........................................................... 10–19
Prog Select OTHER DETAIL Screen Items ................................................................... 10–21
SYSTEM Axis Limit Items ........................................................................................ 10–23
SETUP General Screen Items ..................................................................................... 10–30
Brake On Hold Settings ............................................................................................. 10–30
$UALRM_SEV[n] Severity Values .............................................................................. 10–35
Setting/User Alarm Screen Items ................................................................................. 10–35
Override Select Menu Listing ..................................................................................... 10–38
Password Levels ...................................................................................................... 10–40
SETUP Passwords Screen Items — Screen .................................................................... 10–46
li
Contents
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
lii
10–15.
10–16.
10–17.
10–18.
10–19.
10–20.
10–21.
10–22.
10–23.
10–24.
10–25.
10–26.
10–27.
10–28.
10–29.
10–30.
10–31.
10–32.
10–33.
10–34.
10–35.
11–1.
11–2.
11–3.
11–4.
11–5.
11–6.
11–7.
11–8.
11–9.
11–10.
11–11.
11–12.
11–13.
11–14.
11–15.
11–16.
11–17.
11–18.
11–19.
11–20.
11–21.
11–22.
11–23.
MAROUHT9102171E REV F
SETUP Passwords Screen Items — Screen .................................................................... 10–46
Password Configuration Setup Items ............................................................................ 10–52
XML Command Syntax ............................................................................................. 10–53
Password Log Screen Items ........................................................................................ 10–67
Devices for Password Level Screen Permissions ............................................................ 10–69
Error Severity Table Items ......................................................................................... 10–76
Error Code Output Signal Definition ($ER_OUT_PUT.$out_num=1) ................................. 10–81
Error Code Severity Definition ($ER_OUT_PUT.$out_num = 1) ....................................... 10–81
Program Control: DO[25] and DO[26] ......................................................................... 10–82
Motion Control: DO[27] and DO[28] ........................................................................... 10–82
MOTION PERFORMANCE Screen Items .................................................................... 10–89
MOTION/PAYLOAD SET Screen Items ...................................................................... 10–92
MOTION/PAYLOAD ID Items ................................................................................... 10–96
MOTION/ID POS1 ID Items ...................................................................................... 10–96
MOTION/ARMLOAD SET Items .............................................................................. 10–107
Stroke Limit Setup Screen Items ................................................................................ 10–108
System Configuration Setup Screen Items .................................................................... 10–110
Use PPABN Signal DETAIL Screen Items ................................................................... 10–120
Default Logical Command DETAIL Screen Items ......................................................... 10–120
Output when waiting on Input DETAIL Screen Items ..................................................... 10–120
Hand Broken DETAIL Screen Items ........................................................................... 10–121
Teach Pendant Status Indicators .................................................................................... 11–3
Standard Operator Panel Status Indicators ....................................................................... 11–5
Clock Screen Items ..................................................................................................... 11–5
Execution History Screen ............................................................................................. 11–6
Maintenance Reminder Main Menu Items......................................................................... 11–9
General Setup Items ................................................................................................... 11–10
Maintenance Reminder Items ....................................................................................... 11–11
Maintenance Record items ........................................................................................... 11–18
Items in Maintenance Record File ................................................................................. 11–19
Memory Status ........................................................................................................ 11–22
Notifications Screen Items ........................................................................................... 11–25
DATA Position Reg Screen Items ................................................................................ 11–28
POSITION Joint Screen Items .................................................................................... 11–32
POSITION User Screen Items .................................................................................... 11–32
POSITION World Screen Items .................................................................................. 11–32
Power Consumption Monitor Items ............................................................................... 11–34
Process Axes Status Items ........................................................................................... 11–35
Program Timer Listing Screen Items ............................................................................ 11–36
Program Timer DETAIL Screen Items .......................................................................... 11–36
Program Status or Production Status Items .................................................................... 11–38
Program Monitor Screen Items ................................................................................... 11–40
DATA Registers Screen Items ..................................................................................... 11–41
Status 1 Screen Items ................................................................................................ 11–43
MAROUHT9102171E REV F
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
11–24.
11–25.
11–26.
11–27.
11–28.
11–29.
11–30.
11–31.
11–32.
11–33.
11–34.
11–35.
11–36.
11–37.
11–38.
11–39.
11–40.
11–41.
11–42.
11–43.
11–44.
11–45.
11–46.
11–47.
11–48.
11–49.
11–50.
11–51.
11–52.
11–53.
11–54.
12–1.
12–2.
12–3.
12–4.
12–5.
12–6.
12–7.
12–8.
12–9.
12–10.
12–11.
12–12.
12–13.
Contents
Servo Alarm Status 1; Address: FC80h (L-axis), FCC0h (M-axis) .....................................
Alarm Terminology ..................................................................................................
Description of Alarm Combinations .............................................................................
Servo Alarm Status 2; Address: FC81h (L-axis), FCC1h (M-axis) .....................................
Alarm Terminology ..................................................................................................
Status 2 Screen Items ................................................................................................
Pulse Coder Alarm Status ..........................................................................................
Alarm Terminology ..................................................................................................
Pulse Screen Items ...................................................................................................
Torque Monitor Items ...............................................................................................
Tracking Screen Items ...............................................................................................
Disturbance Torque Screen Items ................................................................................
Servo Diagnosis Main Screen Items .............................................................................
Diagnosis Reducer Screen Items .................................................................................
Diagnosis Over Heat Screen Items ...............................................................................
Diagnosis Torque Screen Items ...................................................................................
Diagnosis Disturbance Screen Items ............................................................................
Diagnosis OVC Screen Items .....................................................................................
Diagnosis Last Detection Screen Items .........................................................................
Stop Signals ............................................................................................................
Data String Reg Screen Items .......................................................................................
System Timer Screen Items ........................................................................................
STATUS Version ID SOFTWARE Screen Items .............................................................
STATUS Version ID CONFIG Screen Items ..................................................................
STATUS Version ID MOTOR Screen Items ...................................................................
STATUS Version ID SERVO Screen Items ....................................................................
STATUS Version ID UPDATES Screen Item ...................................................................
STATUS Version ID ORDER FILE Screen Item ..............................................................
Indicator States ..........................................................................................................
SETUP Visual Diagnostics Screen Settings Setup Items ....................................................
SETUP Visual Diagnostics Indicator Setup Items .............................................................
Ports P1 - P4 ...........................................................................................................
Default Communications Settings for Devices ...............................................................
SETUP Port Init Screen Items .....................................................................................
File Output Using PRINT ..........................................................................................
System variables to control filtering ...............................................................................
$PGINP_FLTR values ................................................................................................
Types of Files ............................................................................................................
Robot Data File Groups...............................................................................................
Altering the FILE MENU [VIEW] Display ...................................................................
System Files ............................................................................................................
Application Files ......................................................................................................
Error Log Files ........................................................................................................
File Types Listings and Descriptions ............................................................................
11–44
11–44
11–45
11–45
11–45
11–46
11–46
11–46
11–47
11–48
11–49
11–50
11–51
11–53
11–54
11–55
11–55
11–56
11–57
11–58
11–59
11–62
11–71
11–72
11–73
11–73
11–73
11–73
11–78
11–80
11–85
12–11
12–11
12–14
12–32
12–33
12–34
12–36
12–38
12–40
12–43
12–44
12–44
12–47
liii
Contents
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
liv
MAROUHT9102171E REV F
12–14. Back Up Operations ..................................................................................................
12–15. File Types ...............................................................................................................
12–16. Auto Update Operations Items ......................................................................................
12–17. Valid SAVE Function Screens .....................................................................................
12–18. FILE Memory Screen Items .......................................................................................
12–19. Automatic Backup Setup Items ...................................................................................
12–20. Viewing ASCII Program Loader Error Screen Items .......................................................
12–21. Viewing ASCII Program Loader Error Screen Operations ................................................
13–1. Process I/O Board Default Digital Input and Output Configuration .......................................
13–2. I/O Hardware Eligible for Default UOP Assignment ..........................................................
13–3. Default UOP Input Configuration for Process I/O Boards ...................................................
13–4. Default UOP Output Configuration for Process I/O Boards .................................................
13–5. Rack Assignments for Different Kinds of I/O ...................................................................
13–6. Slot Assignments for Different Kinds of I/O ....................................................................
13–7. I/O Analog In/Out Monitor Screen Items ......................................................................
13–8. I/O Analog In/Out Configure Screen Items ....................................................................
13–9. I/O Digital In/Out Monitor Screen Items .......................................................................
13–10. I/O Digital In/Out Configure Screen Items ....................................................................
13–11. I/O Digital In/Out DETAIL Screen Items ......................................................................
13–12. I/O Group In/Out Monitor Screen Items ........................................................................
13–13. I/O Group In/Out Configure Screen Items .....................................................................
13–14. CONFIG Screen I/O Status ........................................................................................
13–15. Range Setting Limitations ..........................................................................................
13–16. Custom I/O Setup Items .............................................................................................
13–17. Communication Speed Settings for Switches Q and H .....................................................
13–18. Unit Number Settings of Switches 16, 8, 4, 2, and 1 ........................................................
13–19. I/O Robot In/Out Screen Items ....................................................................................
13–20. I/O Robot In/Out DETAIL Screen Items .......................................................................
13–21. I/O SOP In/Out Screen Items ......................................................................................
13–22. Standard Operator Panel Input Signals ..........................................................................
13–23. Standard Operator Panel Output Signals .......................................................................
13–24. Process I/O Assignments ...........................................................................................
13–25. Kinds of Process I/O available on HandlingTool .............................................................
13–26. Model A I/O Assignments ..........................................................................................
13–27. Model B I/O Assignments ..........................................................................................
13–28. I/O Link Device List Screen Items ...............................................................................
13–29. Device Names .........................................................................................................
13–30. Devices that have Access to the DETAIL Screen ............................................................
13–31. FANUC I/O Link Specifications ..................................................................................
13–32. FANUC I/O Link Ordering Information ........................................................................
13–33. LED Status Descriptions ............................................................................................
13–34. I/O InterConnect Screen Items ....................................................................................
13–35. Relationship Between the MODE SELECT Switch Signals and Modes of Operation .............
13–36. I/O UOP In/Out Monitor Screen Items .........................................................................
12–47
12–51
12–54
12–60
12–62
12–63
12–81
12–81
13–7
13–7
13–7
13–8
13–8
13–8
13–10
13–11
13–12
13–13
13–14
13–15
13–16
13–19
13–19
13–25
13–29
13–30
13–34
13–35
13–38
13–39
13–39
13–41
13–42
13–42
13–43
13–43
13–44
13–45
13–48
13–48
13–49
13–57
13–60
13–65
MAROUHT9102171E REV F
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Contents
13–37. I/O UOP In/Out Configure Screen Items .......................................................................
13–38. UOP UI to Process I/O Board DI .................................................................................
13–39. UOP Input Signals ....................................................................................................
13–40. UOP Outputs to Process I/O Board DO ........................................................................
13–41. UOP Output Signals .................................................................................................
13–42. Cell Interface Input Signals ........................................................................................
13–43. Cell Interface Output Signals ......................................................................................
13–44. Check Items with Robot Ready ...................................................................................
13–45. Custom I/O Setup Items .............................................................................................
14–1. Input Parameters ......................................................................................................
14–2. Output Parameters ....................................................................................................
14–3. Map Functions .........................................................................................................
14–4. Options ..................................................................................................................
14–5. Auto Backward Exit Macros ........................................................................................
14–6. Auto Exit Setup Items .................................................................................................
14–7. Auto Backward Exit System Variables ...........................................................................
14–8. Error Recovery Features ............................................................................................
14–9. Error Recovery Setup Items ........................................................................................
14–10. Auto Error Recovery Manual Function Screen Items .......................................................
14–11. Auto Error Recovery Manual Function Detail Screen Items ..............................................
14–12. Description of system variable (Following settings are necessary for each Local stop
line) ........................................................................................................................
14–13. ..............................................................................................................................
14–14. Center Finder Menu Items ..........................................................................................
14–15. Center Finder Motion SETUP Menu ............................................................................
14–16. Troubleshooting Information ......................................................................................
14–17. Collision Guard Setup Items .......................................................................................
14–18. Collision Recovery Variable Data ................................................................................
14–19. State of Condition Monitoring ....................................................................................
14–20. Program Monitor Menu Items .....................................................................................
14–21. System Monitor Menu Items ......................................................................................
14–22. Continuous Turn SETUP Screen Items ........................................................................
14–23. $CN_USR_GRP.$cn_step_enb System Variable ............................................................
14–24. Continuous Turn Common Problems ...........................................................................
14–25. Gear Ratio Information for FANUC Robots ...................................................................
14–26. Tool Offset Screen Items ...........................................................................................
14–27. User Frame Offset Screen Items .................................................................................
14–28. Tracked Cycle Time Categories ..................................................................................
14–29. Cycle Time Tracking Screen Items .............................................................................
14–30. Data Monitor SETUP Screen Menu Items ....................................................................
14–31. Data Monitor ITM DETAIL Screen Items ....................................................................
14–32. Data Monitor Schedule Menu Items ............................................................................
14–33. Distance Before Specification ....................................................................................
14–34. Distance Before Signal Output Instructions ..................................................................
13–66
13–67
13–69
13–74
13–75
13–77
13–78
13–82
13–84
14–10
14–11
14–14
14–16
14–25
14–25
14–27
14–29
14–33
14–43
14–44
14–55
14–56
14–68
14–69
14–74
14–79
14–85
14–93
14–96
14–97
14–108
14–114
14–119
14–123
14–140
14–143
14–147
14–147
14–157
14–157
14–161
14–170
14–172
lv
Contents
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
lvi
14–35.
14–36.
14–37.
14–38.
14–39.
14–40.
14–41.
14–42.
14–43.
14–44.
14–45.
14–46.
14–47.
14–48.
14–49.
14–50.
14–51.
14–52.
14–53.
14–54.
14–55.
14–56.
14–57.
14–58.
14–59.
14–60.
14–61.
14–62.
14–63.
14–64.
14–65.
14–66.
14–67.
14–68.
14–69.
14–70.
14–71.
14–72.
14–73.
14–74.
14–75.
14–76.
14–77.
14–78.
MAROUHT9102171E REV F
$DB_CONDTYP ....................................................................................................
Distance Before Alarms ............................................................................................
DISTBF_TTS for a CALL Program Action ..................................................................
Distance Before System Variables ..............................................................................
.............................................................................................................................
Easy Normal Setup Items and Operations .....................................................................
Easy Teach Suite Main Setup Screen Items ..................................................................
Auto Path Smoothing Menu Items ..............................................................................
ENHANCED MIRROR IMAGE Screen Items ..............................................................
Mastering Methods ...................................................................................................
Mastering Method Selection .......................................................................................
Group Mask Exchange Screen Items ...........................................................................
Group Mask Exchange Troubleshooting ......................................................................
TCP Cartesian position ..............................................................................................
Joint angles ..............................................................................................................
System Variables ......................................................................................................
Interface Panel Setup Screen .......................................................................................
Button Display Based on I/O .......................................................................................
Button Detail Setup Screen Items .................................................................................
Button Status ...........................................................................................................
Operation Condition Setup Screen Items .......................................................................
Push Button Setup Items ............................................................................................
.............................................................................................................................
Push Button Lamp Setup Items ....................................................................................
2 Contact Point Switch Setup Items ..............................................................................
Lamp Status Signal Items ...........................................................................................
.............................................................................................................................
Digital Switch Setup Items .........................................................................................
Digital Display Items .................................................................................................
Miscellaneous Setting Screen Items ..............................................................................
Jog Retract & Return Setup Items ................................................................................
I/O Setup Items ........................................................................................................
SETUP Menu Utility Screen Items .............................................................................
Prompt box msg Menus Screen Items ..........................................................................
Prompt msg menus DETAIL Screen Items ...................................................................
Prompt Box Yes/No Menu Screen Items ......................................................................
Prompt Box Yes/No Menu DETAIL Screen Items ..........................................................
Select from a list Screen Items ...................................................................................
List Menu DETAIL Screen Items ...............................................................................
Status Menu Variable Detail Information .....................................................................
Status Menu Screen Items .........................................................................................
Status Menu DETAIL Screen Items ............................................................................
Status Menu Sub-DETAIL Screen Items ......................................................................
Operator Entry Menu Variable Detail Information .........................................................
14–173
14–175
14–177
14–185
14–188
14–194
14–198
14–198
14–207
14–233
14–233
14–236
14–237
14–240
14–240
14–241
14–248
14–258
14–261
14–262
14–265
14–268
14–270
14–271
14–273
14–275
14–276
14–277
14–279
14–281
14–287
14–287
14–294
14–296
14–297
14–302
14–302
14–308
14–308
14–315
14–318
14–318
14–318
14–326
MAROUHT9102171E REV F
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
14–79.
14–80.
14–81.
14–82.
14–83.
14–84.
14–85.
14–86.
14–87.
14–88.
14–89.
14–90.
14–91.
14–92.
14–93.
14–94.
14–95.
14–96.
14–97.
14–98.
14–99.
14–100.
14–101.
14–102.
14–103.
14–104.
14–105.
14–106.
14–107.
14–108.
14–109.
14–110.
14–111.
14–112.
14–113.
14–114.
14–115.
14–116.
14–117.
14–118.
14–119.
14–120.
14–121.
14–122.
Contents
Operator Entry Menu Screen Items .............................................................................
Operator Entry Menu DETAIL Screen Items ................................................................
Operator Entry Menu Sub-DETAIL Screen Items ..........................................................
MIRROR IMAGE SHIFT Screen Items .......................................................................
Motion group DO Screen Items ..................................................................................
Events Recorded by Log Book ...................................................................................
System Variables used for Filtering .............................................................................
Alarm Filtering Example ..........................................................................................
System Variables for Screen Filtering ..........................................................................
LED Operations........................................................................................................
Items in Robot Homepage HMI iPendant.......................................................................
Elements in the iRProgrammer Editor ...........................................................................
Keys in Toolbar ........................................................................................................
Keys in Status Bar.....................................................................................................
Items in Position Table ...............................................................................................
Tree Menu ...............................................................................................................
Jogging iPendant (JITP) Keys .....................................................................................
SHIFT Key State ......................................................................................................
Tag.........................................................................................................................
Parameter of STARTMODE Tag ..................................................................................
Parameters of ETHERNET Tag ...................................................................................
Parameter of PENDANT Tag ......................................................................................
Parameters of CONFIG Tag ........................................................................................
Parameters for Full Load of Software ............................................................................
Items in DCS Mode Select menu..................................................................................
Items in DCS Mode Select menu..................................................................................
Safety I/O for Mode Select .........................................................................................
Assignment Statement Items and Operators....................................................................
$PS_CONFIG.$DB_IMMTRIG and .$DA_IMMTRIG Value and Description ......................
$PS_CONFIG.$DB_NOTRIG and .$DA_NOTRIG Value and Description ..........................
Position BumpBox Schedule Items .............................................................................
Position BumpBox I/O Items .....................................................................................
Bump Frames ...........................................................................................................
Basic Process Axes setup menu items ...........................................................................
Process Axes Status Items ..........................................................................................
Gear Ratio ...............................................................................................................
User Scale ...............................................................................................................
Group Input Scale .....................................................................................................
Input Signals ............................................................................................................
Output Signals..........................................................................................................
PROGRAM SHIFT Screen Items ...............................................................................
Reference Position LISTING Screen Items ...................................................................
Reference Position DETAIL Screen Items ....................................................................
Selecting Resume Offset Type ...................................................................................
14–327
14–327
14–327
14–334
14–351
14–359
14–366
14–367
14–368
14–371
14–372
14–376
14–377
14–377
14–381
14–386
14–390
14–394
14–396
14–398
14–398
14–399
14–400
14–401
14–403
14–408
14–411
14–417
14–418
14–420
14–428
14–435
14–441
14–452
14–457
14–459
14–460
14–460
14–460
14–460
14–467
14–473
14–474
14–479
lvii
Contents
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
lviii
14–123.
14–124.
14–125.
14–126.
14–127.
14–128.
14–129.
14–130.
14–131.
14–132.
14–133.
14–134.
14–135.
14–136.
14–137.
14–138.
14–139.
14–140.
14–141.
14–142.
14–143.
14–144.
14–145.
14–146.
14–147.
14–148.
14–149.
14–150.
14–151.
14–152.
14–153.
14–154.
14–155.
14–156.
14–157.
14–158.
14–159.
14–160.
14–161.
14–162.
14–163.
14–164.
14–165.
14–166.
MAROUHT9102171E REV F
Resume Offset Setup Menu Screen Items .....................................................................
Send Event Macro Description ...................................................................................
Send Data Macro Description ....................................................................................
Send SysVar Macro Description .................................................................................
Get Data Macro Description ......................................................................................
Request Menu Macro Description ...............................................................................
Description of Each Tag .............................................................................................
RSI_CREATE_I () Elements .......................................................................................
RSI_DELETE_I () Elements .......................................................................................
RSI_DELETE_I () Elements .......................................................................................
RSI_ON_I () Elements ...............................................................................................
RSI_OFF_I () Elements .............................................................................................
RSI_WRXML_I () Elements .......................................................................................
Servo Tool Setup ......................................................................................................
Shape Setup Information ...........................................................................................
SETUP DETAIL Screen and UTILITIES DETAIL Screen Common Items .........................
Circle DETAIL Items (Circle-Specific Items) ................................................................
Hexagon DETAIL Items (Hexagon-Specific Items) ........................................................
Rectangle DETAIL Items (Rectangle-Specific Items) .....................................................
Slot DETAIL Items (Slot-Specific Items) .....................................................................
Keyhole DETAIL Items (Keyhole-Specific Items) .........................................................
Pommel DETAIL Items (Pommel-Specific Items) ..........................................................
Cust Shape DETAIL Screen Items ..............................................................................
Limitations for Custom Shapes ..................................................................................
UTILITIES Shape Gen DETAIL Screens Additional Items ..............................................
Troubleshooting Solutions ........................................................................................
DATA Servo Screen Items ........................................................................................
Joint Soft Float Schedule Setup Items ..........................................................................
Cartesian Soft Float Setup Items ................................................................................
Pushout Setup Items ................................................................................................
Insertion Softness Settings ........................................................................................
Face-to-Face Softness Settings ...................................................................................
Contouring Softness Settings .......................................................................................
Face Matching Softness Settings ..................................................................................
Items in Soft Operator Panel .......................................................................................
Common Space I/O .................................................................................................
Space Check Function Screen Items ............................................................................
.............................................................................................................................
Start Packet (Sent from external device to robot controller) ...............................................
Robot Status Packet (Send from Robot Controller to external device)..................................
Motion Command Packet Send from External Device to Robot controller ............................
Stop Packet from External Device to Robot Controller .....................................................
System variables .......................................................................................................
Options that can not be used with Stream Motion ............................................................
14–479
14–481
14–482
14–483
14–485
14–486
14–489
14–492
14–492
14–493
14–493
14–494
14–495
14–501
14–505
14–508
14–511
14–512
14–514
14–516
14–517
14–519
14–522
14–522
14–525
14–549
14–552
14–559
14–561
14–563
14–571
14–572
14–573
14–574
14–581
14–586
14–586
14–589
14–598
14–598
14–601
14–602
14–604
14–606
MAROUHT9102171E REV F
Table 14–167.
Table 14–168.
Table
15–1.
Table
15–2.
Table
16–1.
Table
16–2.
Table
16–3.
Table
16–4.
Table
16–5.
Table
16–6.
Table
16–7.
Table
16–8.
Table
16–9.
Table 16–10.
Table 16–11.
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
16–12.
16–13.
16–14.
16–15.
16–16.
16–17.
16–18.
16–19.
16–20.
16–21.
16–22.
16–23.
16–24.
16–25.
16–26.
16–27.
16–28.
17–1.
17–2.
17–3.
17–4.
17–5.
17–6.
17–7.
17–8.
17–9.
17–10.
17–11.
Contents
Teach Pendant Shim Screen Items and Function Keys .................................................... 14–631
HISTORY Screen Items ........................................................................................... 14–634
FANUC Sensor Data Formats ....................................................................................... 15–4
NULL Modem Cable Pin Connector Layout .................................................................... 15–8
Relation of iRCalibration Options .................................................................................. 16–3
Calibration Hardware ................................................................................................ 16–10
iRCalibration Master Set Schedule Screen Description .................................................... 16–12
iRCalibration Master Set Detection Schedule Description ................................................ 16–14
Program Creation Screen Items for Standard iRCalibration Master Set Programs .................. 16–22
Robot Calibration Program Taught Points ..................................................................... 16–26
Troubleshooting ....................................................................................................... 16–38
Calibration Hardware ................................................................................................ 16–41
iRCalibration Mastering Schedule Screen Description ..................................................... 16–43
iRCalibration Mastering Detection Schedule Description ................................................. 16–45
Program Creation Screen Items for Standard iRCalibration Master Recovery
Programs ................................................................................................................. 16–53
Robot Calibration Program Taught Points ..................................................................... 16–57
Troubleshooting ....................................................................................................... 16–70
Calibration Mode Descriptions .................................................................................... 16–76
iRCalibration TCP Set UTOOL Schedule Item Description .............................................. 16–76
iRCalibration TCP Set Detection Schedule Description ................................................... 16–78
New TCP Program Points .......................................................................................... 16–86
iRCalibration TCP Set Fit Errors ................................................................................. 16–98
Calibration Mode Descriptions .................................................................................... 16–104
iRCalibration TCP Shift UTOOL Schedule Item Description ............................................. 16–104
iRCalibration TCP Shift Detection Schedule Description ................................................ 16–106
New TCP Program Points ......................................................................................... 16–113
iRCalibration TCP Shift Fit Errors .............................................................................. 16–126
Frame Schedule Detail Schedule Setup ........................................................................ 16–132
iRCalibration Frame Shift Detection Schedule Description .............................................. 16–134
Troubleshooting iRCalibration Frame Shift .................................................................. 16–155
STATUS iRCALIBRATION SIGNATURE .................................................................... 16–160
Secondary Encoder Setup Screen ................................................................................. 16–175
Valve Signals ............................................................................................................. 17–5
SETUP MH Tool Signal DETAIL Screen Items ............................................................... 17–6
I/O MatHandling Screen Items .................................................................................... 17–10
Handling Manual Operations ...................................................................................... 17–13
Material Handling Valve Macro Programs ..................................................................... 17–13
Part Present Macro ................................................................................................... 17–15
Check No Part Macro ................................................................................................ 17–16
Prepare to Pick Macro ............................................................................................... 17–16
Clear to Proceed Macro ............................................................................................. 17–17
Turn ON Vacuum Macro ............................................................................................ 17–18
Turn OFF Vacuum Macro .......................................................................................... 17–19
lix
Contents
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
lx
17–12.
17–13.
17–14.
18–1.
18–2.
18–3.
18–4.
18–5.
18–6.
18–7.
19–1.
19–2.
19–3.
19–4.
19–5.
19–6.
19–7.
19–8.
19–9.
19–10.
20–1.
20–2.
20–3.
20–4.
A–1.
A–2.
A–3.
A–4.
A–5.
A–6.
A–7.
A–8.
A–9.
A–10.
A–11.
A–12.
B–1.
B–2.
B–3.
B–4.
B–5.
B–6.
C–1.
C–2.
MAROUHT9102171E REV F
Turn OFF Blowoff Macro .......................................................................................... 17–20
Set CurrentValve Macro ............................................................................................ 17–21
Set MH Tool ........................................................................................................... 17–22
Paint Plug In Setup Items ............................................................................................. 18–8
Rack 48 ..................................................................................................................... 18–8
CRMA15 ................................................................................................................... 18–9
CRMA16 ................................................................................................................. 18–10
CRMA58 ................................................................................................................. 18–11
CRMA59 ................................................................................................................. 18–12
Paint Plug In Status .................................................................................................... 18–13
Basic Specifications...................................................................................................... 19–3
Common setup ........................................................................................................... 19–9
Calibration Motion Type ............................................................................................ 19–11
Calibration Speed and Acceleration Rate ...................................................................... 19–14
Position Register No. ................................................................................................ 19–14
Touch Torque .......................................................................................................... 19–14
Detection Signal ....................................................................................................... 19–14
Status Tool Change Screen Items ................................................................................. 19–19
Servo Tool Change Initial Setup Screen Items ................................................................ 19–23
Servo Tool Change Setup Screen Items ......................................................................... 19–23
Touch Frame Setup Items ........................................................................................... 20–12
Search Pattern and Valid Pattern Type .......................................................................... 20–20
Touch Sensing Schedule Setup Items ........................................................................... 20–21
Touch I/O Setup Screen Items ...................................................................................... 20–51
Startup Methods .......................................................................................................... A–3
Alarm Log Screen ....................................................................................................... A–4
Application Alarm Screen ............................................................................................. A–4
Comm Log Screen ....................................................................................................... A–4
Fault Recovery Screen ................................................................................................. A–4
Motion Alarm Screen ................................................................................................... A–4
System Alarm Screen ................................................................................................... A–4
Haptic Alarm Log ......................................................................................................... A–5
ERROR FACILITY CODES FOR ALL APPLICATION-TOOLS ........................................ A–8
Severity Descriptions ................................................................................................. A–13
Effects of Error Severity ............................................................................................. A–14
MANUAL OT Release Items ...................................................................................... A–16
Startup Methods .......................................................................................................... B–2
Controlled Start Options for All Software Applications ..................................................... B–10
Controlled Start Options for HandlingTool ..................................................................... B–11
Handling Config Menu Options .................................................................................... B–11
Hardware Diagnostic Functions ................................................................................... B–15
Backup and Restore Controller Items ............................................................................ B–20
SYSTEM Master/Cal Items ........................................................................................... C–3
Setting for “Quick mastering for single axis” .................................................................... C–17
MAROUHT9102171E REV F
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
E–1.
E–2.
E–3.
E–4.
E–5.
E–6.
E–7.
E–8.
E–9.
E–10.
E–11.
E–12.
E–13.
E–14.
E–15.
E–16.
E–17.
E–18.
E–19.
E–20.
E–21.
E–22.
E–23.
E–24.
E–25.
E–26.
E–27.
E–28.
E–29.
E–30.
E–31.
E–32.
E–33.
E–34.
E–35.
E–36.
E–37.
E–38.
E–39.
E–40.
E–41.
E–42.
E–43.
E–44.
Contents
Format of a system variable ...........................................................................................
Power Fail Recovery — $SEMIPOWERFL .......................................................................
Brake Control — $PARAM_GROUP[group].$SV_OFF_ENB ..............................................
Brake Control — $PARAM_GROUP[group].$SV_OFF_TIME .............................................
Brake Control — $PARAM_GROUP[group].$SV_OFF_ALL ...............................................
Mastering — $MASTER_ENB .......................................................................................
Mastering — $DMR_GRP[group].$MASTER_DONE .........................................................
Mastering — $DMR_GRP[group].$MASTER_COUN ........................................................
Mastering — $DMR_GRP[group].$GRAV_MAST .............................................................
Mastering — $PARAM_GROUP[group].$MASTER_POS ...................................................
Quick Mastering — $DMR_GRP[group].$REF_DONE .......................................................
Quick Mastering — $DMR_GRP.$REF_COUNT[group].$REF_COUNT ...............................
Quick Mastering — $DMR_GRP.$REF_POS[group].$REF_POS ........................................
Calibration — $MOR_GRP.$CAL_DONE[group] ............................................................
Specifying Coordinate Systems — $MNUFRAMENUM[group] ..........................................
Specifying Coordinate Systems — $MNUFRAME[group]...................................................
Specifying Coordinate Systems — $MNUTOOLNUM .......................................................
Specifying Coordinate Systems — $MNUTOOL[group] ....................................................
Specifying Coordinate Systems — $JOG_GROUP[group].$JOG_FRAME ............................
Setting Motors — $SCR_GRP[group].$AXISORDER .......................................................
Setting Motors — $SCR_GRP[group].$ROTARY_AXS ....................................................
Setting Motors — $PARAM_GROUP[group].$MOSIGN ...................................................
Setting Motors — $PARAM_GROUP[group].$ENCSCALES .............................................
Setting Motors — $PARAM_GROUP[group].$MOT_SPD_LIM .........................................
Override — $SHIFTOV_ENB .......................................................................................
Override — $MCR.$PROGOVERRIDE .........................................................................
Override — $SCR_GRP.$JOGLIM ................................................................................
Override — $SCR_GRP.$JOGLIMROT..........................................................................
Override — $SCR_GRP[group].$JOGLIM_JNT ..............................................................
Override — $SCR.$COLDOVRD ..................................................................................
Override — $SCR.$COORDOVRD ...............................................................................
Override — $SCR.$TPENBLOVRD ..............................................................................
Override — $SCR.$JOGOVLIM ...................................................................................
Override — $SCR.$RUNOVLIM ..................................................................................
Override — $SCR.$FENCEOVRD ................................................................................
Override — $SCR.$SFJOGOVLIM ...............................................................................
Override — $SCR.$SFRUNOVLIM...............................................................................
Override — $SCR.$RECOV_OVRD ..............................................................................
Payload Specification — $PARAM_GROUP[group].$AXISINERTIA ..................................
Payload Specification — $PARAM_GROUP[group].$AXISMOMENT ................................
Payload Specification — $PARAM_GROUP[group].$AXIS_IM_SCL..................................
Executing a Program — $DEFPULSE ............................................................................
Automatic Operation — $RMT_MASTER ......................................................................
Deleting the Warning History — $ER_NOHIS .................................................................
E–2
E–5
E–6
E–6
E–6
E–7
E–7
E–8
E–8
E–8
E–9
E–9
E–10
E–10
E–10
E–11
E–11
E–12
E–12
E–13
E–13
E–14
E–14
E–15
E–15
E–15
E–16
E–16
E–16
E–17
E–17
E–17
E–17
E–17
E–18
E–18
E–18
E–19
E–20
E–21
E–21
E–22
E–23
E–23
lxi
Contents
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
lxii
MAROUHT9102171E REV F
E–45. Disabling Alarm Output — $ER_NO_ALM.$NOALMENBL .............................................
E–46. Disabling Alarm Output — $ER_NO_ALM.$NOALM_NUM ............................................
E–47. Disabling Alarm Output — $ER_NO_ALM.$ER_CODE ...................................................
E–48. User Alarm — $UALRM_SEV .....................................................................................
E–49. Jogging — $JOG_GROUP.$FINE_DIST.........................................................................
E–50. Jogging — $SCR.$FINE_PCNT ....................................................................................
E–51. I/O Setting — $OPWORK.$UOP_DISABLE ...................................................................
E–52. I/O Setting — $SCR.$RESETINVERT ...........................................................................
E–53. I/O Setting — $PARAM_GROUP.$PPABN_ENBL ...........................................................
E–54. I/O Setting — $PARAM_GROUP.$BELT_ENBLE ...........................................................
E–55. Software Version — $ODRDSP_ENB ............................................................................
E–56. Soft Float Function — $SFLT_ERRTYP .........................................................................
E–57. Soft Float Function — $SFLT_DISFUP ..........................................................................
E–58. Saving Files — $FILE_APPBCK...................................................................................
E–59. Saving Files — $FILE_SYSBCK...................................................................................
E–60. Register Speed Specification Function — $RGSPD_PREXE ...............................................
E–61. Specifying an Output Signal of the BZAL/BLAL Alarm —$BLAL_OUT.$DO_INDEX............
E–62. Specifying an Output Signal of the BZAL/BLAL Alarm
—$BLAL_OUT.$BATALM_OR ...................................................................................
E–63. Setup for Changing Jog Group According to the Motion Group of the Selected
Program — $PROGGRP_TGL ......................................................................................
E–64. Default Setting for the Motion Group — $DSBL_GPMSK .................................................
E–65. Servo Information — $SV_INFO[group].$Q_CURRENT ..................................................
E–66. Servo Information — $SV_INFO[group].$AXIS_POS.......................................................
E–67. System Timer $SYSTEM_TIMER[group].$PWR_TOT ....................................................
E–68. $SYSTEM_TIMER[group].$SRV_TOT .........................................................................
E–69. $SYSTEM_TIMER[group].$RUN_TOT ........................................................................
E–70. $SYSTEM_TIMER[group].$WIT_TOT .........................................................................
E–71. $SYSTEM_TIMER[group].$SHM_TOT ........................................................................
E–72. System Ready — $PWRUP_DELAY.$SY_READY ..........................................................
E–23
E–24
E–24
E–25
E–25
E–25
E–26
E–26
E–26
E–26
E–27
E–27
E–27
E–28
E–28
E–28
E–29
E–29
E–30
E–30
E–31
E–31
E–32
E–32
E–32
E–32
E–32
E–33
Safety
FANUC America Corporation is not and does not represent itself as an expert in safety systems,
safety equipment, or the specific safety aspects of your company and/or its work force. It is the
responsibility of the owner, employer, or user to take all necessary steps to guarantee the safety of
all personnel in the workplace.
The appropriate level of safety for your application and installation can best be determined by safety
system professionals. FANUC America Corporation therefore, recommends that each customer
consult with such professionals in order to provide a workplace that allows for the safe application,
use, and operation of FANUC America Corporation systems.
According to the industry standard ANSI/RIA R15-06, the owner or user is advised to consult the
standards to ensure compliance with its requests for Robotics System design, usability, operation,
maintenance, and service. Additionally, as the owner, employer, or user of a robotic system, it
is your responsibility to arrange for the training of the operator of a robot system to recognize and
respond to known hazards associated with your robotic system and to be aware of the recommended
operating procedures for your particular application and robot installation.
Ensure that the robot being used is appropriate for the application. Robots used in classified
(hazardous) locations must be certified for this use.
FANUC America Corporation therefore, recommends that all personnel who intend to operate,
program, repair, or otherwise use the robotics system be trained in an approved FANUC America
Corporation training course and become familiar with the proper operation of the system. Persons
responsible for programming the system-including the design, implementation, and debugging of
application programs-must be familiar with the recommended programming procedures for your
application and robot installation.
The following guidelines are provided to emphasize the importance of safety in the workplace.
CONSIDERING SAFETY FOR YOUR ROBOT INSTALLATION
Safety is essential whenever robots are used. Keep in mind the following factors with regard
to safety:
• The safety of people and equipment
• Use of safety enhancing devices
• Techniques for safe teaching and manual operation of the robot(s)
• Techniques for safe automatic operation of the robot(s)
• Regular scheduled inspection of the robot and workcell
• Proper maintenance of the robot
lxiii
Safety
MAROUHT9102171E REV F
Keeping People Safe
The safety of people is always of primary importance in any situation. When applying safety
measures to your robotic system, consider the following:
• External devices
• Robot(s)
• Tooling
• Workpiece
Using Safety Enhancing Devices
Always give appropriate attention to the work area that surrounds the robot. The safety of the
work area can be enhanced by the installation of some or all of the following devices:
• Safety fences, barriers, or chains
• Light curtains
• Interlocks
• Pressure mats
• Floor markings
• Warning lights
• Mechanical stops
• EMERGENCY STOP buttons
• DEADMAN switches
Setting Up a Safe Workcell
A safe workcell is essential to protect people and equipment. Observe the following guidelines to
ensure that the workcell is set up safely. These suggestions are intended to supplement and not
replace existing federal, state, and local laws, regulations, and guidelines that pertain to safety.
• Sponsor your personnel for training in approved FANUC America Corporation training
course(s) related to your application. Never permit untrained personnel to operate the robots.
• Install a lockout device that uses an access code to prevent unauthorized persons from
operating the robot.
• Use anti-tie-down logic to prevent the operator from bypassing safety measures.
• Arrange the workcell so the operator faces the workcell and can see what is going on inside
the cell.
lxiv
MAROUHT9102171E REV F
Safety
• Clearly identify the work envelope of each robot in the system with floor markings, signs, and
special barriers. The work envelope is the area defined by the maximum motion range of the
robot, including any tooling attached to the wrist flange that extend this range.
• Position all controllers outside the robot work envelope.
• Never rely on software or firmware based controllers as the primary safety element unless
they comply with applicable current robot safety standards.
• Mount an adequate number of EMERGENCY STOP buttons or switches within easy reach of
the operator and at critical points inside and around the outside of the workcell.
• Install flashing lights and/or audible warning devices that activate whenever the robot is
operating, that is, whenever power is applied to the servo drive system. Audible warning
devices shall exceed the ambient noise level at the end-use application.
• Wherever possible, install safety fences to protect against unauthorized entry by personnel into
the work envelope.
• Install special guarding that prevents the operator from reaching into restricted areas of the
work envelope.
• Use interlocks.
• Use presence or proximity sensing devices such as light curtains, mats, and capacitance and
vision systems to enhance safety.
• Periodically check the safety joints or safety clutches that can be optionally installed between
the robot wrist flange and tooling. If the tooling strikes an object, these devices dislodge,
remove power from the system, and help to minimize damage to the tooling and robot.
• Make sure all external devices are properly filtered, grounded, shielded, and suppressed to
prevent hazardous motion due to the effects of electro-magnetic interference (EMI), radio
frequency interference (RFI), and electro-static discharge (ESD).
• Make provisions for power lockout/tagout at the controller.
• Eliminate pinch points . Pinch points are areas where personnel could get trapped between a
moving robot and other equipment.
• Provide enough room inside the workcell to permit personnel to teach the robot and perform
maintenance safely.
• Program the robot to load and unload material safely.
• If high voltage electrostatics are present, be sure to provide appropriate interlocks, warning,
and beacons.
• If materials are being applied at dangerously high pressure, provide electrical interlocks for
lockout of material flow and pressure.
Staying Safe While Teaching or Manually Operating the Robot
Advise all personnel who must teach the robot or otherwise manually operate the robot to observe
the following rules:
• Never wear watches, rings, neckties, scarves, or loose clothing that could get caught in
moving machinery.
lxv
Safety
MAROUHT9102171E REV F
• Know whether or not you are using an intrinsically safe teach pendant if you are working in
a hazardous environment.
• Before teaching, visually inspect the robot and work envelope to make sure that no potentially
hazardous conditions exist. The work envelope is the area defined by the maximum motion
range of the robot. These include tooling attached to the wrist flange that extends this range.
• The area near the robot must be clean and free of oil, water, or debris. Immediately report
unsafe working conditions to the supervisor or safety department.
• FANUC America Corporation recommends that no one enter the work envelope of a robot that
is on, except for robot teaching operations. However, if you must enter the work envelope,
be sure all safeguards are in place, check the teach pendant DEADMAN switch for proper
operation, and place the robot in teach mode. Take the teach pendant with you, turn it on,
and be prepared to release the DEADMAN switch. Only the person with the teach pendant
should be in the work envelope.
Warning
Never bypass, strap, or otherwise deactivate a safety device, such
as a limit switch, for any operational convenience. Deactivating a
safety device is known to have resulted in serious injury and death.
• Know the path that can be used to escape from a moving robot; make sure the escape path is
never blocked.
• Isolate the robot from all remote control signals that can cause motion while data is being
taught.
• Test any program being run for the first time in the following manner:
Warning
Stay outside the robot work envelope whenever a program is being
run. Failure to do so can result in injury.
— Using a low motion speed, single step the program for at least one full cycle.
— Using a low motion speed, test run the program continuously for at least one full cycle.
— Using the programmed speed, test run the program continuously for at least one full cycle.
• Make sure all personnel are outside the work envelope before running production.
Staying Safe During Automatic Operation
Advise all personnel who operate the robot during production to observe the following rules:
• Make sure all safety provisions are present and active.
• Know the entire workcell area. The workcell includes the robot and its work envelope, plus
the area occupied by all external devices and other equipment with which the robot interacts.
lxvi
MAROUHT9102171E REV F
Safety
• Understand the complete task the robot is programmed to perform before initiating automatic
operation.
• Make sure all personnel are outside the work envelope before operating the robot.
• Never enter or allow others to enter the work envelope during automatic operation of the robot.
• Know the location and status of all switches, sensors, and control signals that could cause
the robot to move.
• Know where the EMERGENCY STOP buttons are located on both the robot control and
external control devices. Be prepared to press these buttons in an emergency.
• Never assume that a program is complete if the robot is not moving. The robot could be
waiting for an input signal that will permit it to continue activity.
• If the robot is running in a pattern, do not assume it will continue to run in the same pattern.
• Never try to stop the robot, or break its motion, with your body. The only way to stop robot
motion immediately is to press an EMERGENCY STOP button located on the controller
panel, teach pendant, or emergency stop stations around the workcell.
Staying Safe During Inspection
When inspecting the robot, be sure to
• Turn off power at the controller.
• Lock out and tag out the power source at the controller according to the policies of your plant.
• Turn off the compressed air source and relieve the air pressure.
• If robot motion is not needed for inspecting the electrical circuits, press the EMERGENCY
STOP button on the operator panel.
• Never wear watches, rings, neckties, scarves, or loose clothing that could get caught in
moving machinery.
• If power is needed to check the robot motion or electrical circuits, be prepared to press the
EMERGENCY STOP button, in an emergency.
• Be aware that when you remove a servomotor or brake, the associated robot arm will fall if
it is not supported or resting on a hard stop. Support the arm on a solid support before you
release the brake.
Staying Safe During Maintenance
When performing maintenance on your robot system, observe the following rules:
• Never enter the work envelope while the robot or a program is in operation.
• Before entering the work envelope, visually inspect the workcell to make sure no potentially
hazardous conditions exist.
• Never wear watches, rings, neckties, scarves, or loose clothing that could get caught in
moving machinery.
lxvii
Safety
MAROUHT9102171E REV F
• Consider all or any overlapping work envelopes of adjoining robots when standing in a work
envelope.
• Test the teach pendant for proper operation before entering the work envelope.
• If it is necessary for you to enter the robot work envelope while power is turned on, you
must be sure that you are in control of the robot. Be sure to take the teach pendant with you,
press the DEADMAN switch, and turn the teach pendant on. Be prepared to release the
DEADMAN switch to turn off servo power to the robot immediately.
• Whenever possible, perform maintenance with the power turned off. Before you open the
controller front panel or enter the work envelope, turn off and lock out the 3-phase power
source at the controller.
• Be aware that an applicator bell cup can continue to spin at a very high speed even if the robot
is idle. Use protective gloves or disable bearing air and turbine air before servicing these items.
• Be aware that when you remove a servomotor or brake, the associated robot arm will fall if
it is not supported or resting on a hard stop. Support the arm on a solid support before you
release the brake.
Warning
Lethal voltage is present in the controller WHENEVER IT IS
CONNECTED to a power source. Be extremely careful to avoid
electrical shock. HIGH VOLTAGE IS PRESENT at the input side
whenever the controller is connected to a power source. Turning
the disconnect or circuit breaker to the OFF position removes power
from the output side of the device only.
• Release or block all stored energy. Before working on the pneumatic system, shut off the
system air supply and purge the air lines.
• Isolate the robot from all remote control signals. If maintenance must be done when the
power is on, make sure the person inside the work envelope has sole control of the robot. The
teach pendant must be held by this person.
• Make sure personnel cannot get trapped between the moving robot and other equipment.
Know the path that can be used to escape from a moving robot. Make sure the escape route is
never blocked.
• Use blocks, mechanical stops, and pins to prevent hazardous movement by the robot. Make
sure that such devices do not create pinch points that could trap personnel.
Warning
Do not try to remove any mechanical component from the robot
before thoroughly reading and understanding the procedures in the
appropriate manual. Doing so can result in serious personal injury
and component destruction.
• Be aware that when you remove a servomotor or brake, the associated robot arm will fall if
it is not supported or resting on a hard stop. Support the arm on a solid support before you
release the brake.
lxviii
MAROUHT9102171E REV F
Safety
• When replacing or installing components, make sure dirt and debris do not enter the system.
• Use only specified parts for replacement. To avoid fires and damage to parts in the controller,
never use nonspecified fuses.
• Before restarting a robot, make sure no one is inside the work envelope; be sure that the robot
and all external devices are operating normally.
KEEPING MACHINE TOOLS AND EXTERNAL DEVICES SAFE
Certain programming and mechanical measures are useful in keeping the machine tools and other
external devices safe. Some of these measures are outlined below. Make sure you know all
associated measures for safe use of such devices.
Programming Safety Precautions
Implement the following programming safety measures to prevent damage to machine tools
and other external devices.
• Back-check limit switches in the workcell to make sure they do not fail.
• Implement “failure routines” in programs that will provide appropriate robot actions if an
external device or another robot in the workcell fails.
• Use handshaking protocol to synchronize robot and external device operations.
• Program the robot to check the condition of all external devices during an operating cycle.
Mechanical Safety Precautions
Implement the following mechanical safety measures to prevent damage to machine tools and
other external devices.
• Make sure the workcell is clean and free of oil, water, and debris.
• Use DCS (Dual Check Safety), software limits, limit switches, and mechanical hardstops to
prevent undesired movement of the robot into the work area of machine tools and external
devices.
KEEPING THE ROBOT SAFE
Observe the following operating and programming guidelines to prevent damage to the robot.
lxix
Safety
MAROUHT9102171E REV F
Operating Safety Precautions
The following measures are designed to prevent damage to the robot during operation.
• Use a low override speed to increase your control over the robot when jogging the robot.
• Visualize the movement the robot will make before you press the jog keys on the teach pendant.
• Make sure the work envelope is clean and free of oil, water, or debris.
• Use circuit breakers to guard against electrical overload.
Programming Safety Precautions
The following safety measures are designed to prevent damage to the robot during programming:
• Establish interference zones to prevent collisions when two or more robots share a work area.
• Make sure that the program ends with the robot near or at the home position.
• Be aware of signals or other operations that could trigger operation of tooling resulting in
personal injury or equipment damage.
• In dispensing applications, be aware of all safety guidelines with respect to the dispensing
materials.
Note Any deviation from the methods and safety practices described in this manual must
conform to the approved standards of your company. If you have questions, see your
supervisor.
lxx
QUICK REFERENCE
HandlingTool Quick Reference Flow Chart
Figure 1. HandlingTool Quick Reference Flow Chart
Start
Refer to Jogging the Robot
Refer to Mastering
Refer to Axis Limits Setup
Verify robot operation
Check mastering by jogging in WORLD
Verify safety switches
Set axis limits
Refer to Setting Up Tool Frame
Refer to Setting Up User Frame
Define Tool Frame
Define User Frame
Teach Tool Frame
Assign a Tool Frame to be used
Teach User Frame
Refer to Writing and Modifying
a Program
Create teach pendant
program
Create a program from the SELECT menu
Jog to desired points
Record positions
Refer to Single Step Testing
Refer to Continuous Turn
Test run
Refer to Production Operation
Run Production
Refer to the Controller
Maintenance Manual
Refer to Production Operation
Refer to the Controller
Maintenance Manual
Maintain the system
Run Production
Maintain the system
Test using single step
Test using continuous motion
Verify and touch up points as required
Start the production cycle
Make any necessary adjustments
Maintain equipment
Start the production cycle
Make any necessary adjustments
Maintain equipment
End
lxxi
Chapter 1
OVERVIEW AND STARTUP
Contents
Chapter 1
1.1
1.2
1.2.1
1.2.2
1.2.3
1.2.4
1.3
1.3.1
1.3.2
1.3.3
1.3.4
1.3.5
1.3.6
1.3.7
1.3.8
1.3.9
1.3.10
1.3.11
1.3.12
1.3.13
1.3.14
1.4
1.5
OVERVIEW AND STARTUP .................................................................
OVERVIEW ...........................................................................................
ROBOT ..................................................................................................
Robot Overview ....................................................................................
Robot Models ........................................................................................
HandlingTool End-of-Arm Tooling (EOAT) ............................................
Extended Axes .....................................................................................
CONTROLLER ......................................................................................
Controller Overview .............................................................................
Standard Operator Panel .....................................................................
MODE SELECT Switch .......................................................................
Robot Stop Variation ...........................................................................
User Operator Panel (UOP) .................................................................
Emergency Stop Devices ....................................................................
Communications ................................................................................
Input/Output (I/O) ...............................................................................
Remote I/O Interfaces .........................................................................
Motion ................................................................................................
Extended Axes ...................................................................................
Controller Backplane ..........................................................................
Memory ..............................................................................................
Line Tracking .....................................................................................
FANUC SOFTWARE ...........................................................................
STARTUP (AND POWER OFF) OF THE ROBOT ..................................
1–1
1–2
1–2
1–2
1–3
1–3
1–4
1–5
1–5
1–9
1–12
1–15
1–16
1–16
1–16
1–17
1–18
1–18
1–19
1–20
1–20
1–22
1–22
1–23
1–1
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV F
1.1 OVERVIEW
The robot system consists of the robot (mechanical unit), the SYSTEM R-30iB Plus or R-30iB
Mate controller, referred to as the R-30iB Plus controller, or R-30iB Mate, controller, or robot
controller, and FANUC software. Due to the variation of robotic applications, FANUC makes a
variety of robot mechanical units that will work with the R-30iB Mate Plus controller.
Figure 1–1 displays an example robot system: the robot and controller. Your system layout might
vary depending on the kind of equipment you are using. Each of the items called out in Figure 1–1
are described in more detail further in this chapter.
Figure 1–1. Example System Overview
1.2 ROBOT
1.2.1 Robot Overview
A robot is a series of mechanical links driven by servomotors. The area at each junction between
the links is a joint, or axis . The first three axes make up the major axes. The last three axes are the
minor axes. A robot is classified by the number of linear and rotational axes.
The major axes (1, 2, and 3) and minor axes (4, 5, and 6) move the tooling at the end of the robot
arm. The movements are rotational twisting, up-and-down, and side-to-side motions.
The major axes and minor axes are shown in Figure 1–2 .
1–2
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
Figure 1–2. Major and Minor Axes
1.2.2 Robot Models
A variety of FANUC robot models can be used. Contact your FANUC representative for more
information about the kinds of robots you can use.
1.2.3 HandlingTool End-of-Arm Tooling (EOAT)
If you are using HandlingTool with the PalletTool option , single and double case grippers are
available as options. Figure 1–3 and Figure 1–4 show examples of the kinds of grippers you
might use with PalletTool.
1–3
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV F
Figure 1–3. Finger Type Gripper
Figure 1–4. Vacuum Type Gripper
1.2.4 Extended Axes
Extended axes are the available axes controlled by the controller beyond the standard number of
axes. There is a limit of three extended axes per motion group. The controller can control a
maximum of 72axes.
HandlingTool applications generally use extended axes on jobs that require a sliding axis, rail
tracking, or line tracking.
Refer to Section 1.3.11 for more information about extended axes.
1–4
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
1.3 CONTROLLER
1.3.1 Controller Overview
The controller contains the power supply, operator controls, control circuitry, and memory that
direct the operation and motion of the robot and communication with external devices. You
control the robot using a teach pendant or an operator panel.
Some systems contain an optional user operator panel (UOP) that provides a remote user interface
to the controller.
The motion system directs robot motion for all robot axes, including any extended axes and up
to seven additional motion groups.
Controller memory stores the software in addition to any user-defined programs and data.
The controller is shown in Figure 1–5 , Figure 1–6 , and Figure 1–7 .
The R-30iB Plus Compact controller is shown in Figure 1–8 .
1–5
1. OVERVIEW AND STARTUP
Figure 1–5. R-30iB Plus A-Cabinet Controller
1–6
MAROUHT9102171E REV F
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
Figure 1–6. R-30iB Plus B-Cabinet Controller
1–7
1. OVERVIEW AND STARTUP
Figure 1–7. R-30iB Mate Plus Controller
1–8
MAROUHT9102171E REV F
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
Figure 1–8. R-30iB Compact Plus Controller
The controller can communicate with a variety of devices. Its I/O system provides an interface
between the system software through I/O signals to external devices. Remote I/O interfaces allow
the controller to send signals to a remote device over a single cable.
1.3.2 Standard Operator Panel
The operator panel contains buttons, keyswitches, and connector ports and is part of the controller.
Refer to the “Status Displays and Indicators” section of your application-specific Setup and
Operations Manual for information on operator panel status indicators.
See Figure 1–9 and Figure 1–10 .
See Figure 1–9 , Figure 1–10 and Figure 1–11 .
See Figure 1–12 .
1–9
1. OVERVIEW AND STARTUP
Figure 1–9. R-30iB Plus A Cabinet Operator Panel
Figure 1–10. R-30iB Plus B Cabinet Operator Panel
1–10
MAROUHT9102171E REV F
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
Figure 1–11. R-30iB Mate Operator Panel
CYCLE START
Button
with LED
(Green)
Emergency
Stop
Button
Mode Switch
(3-mode switch)
Figure 1–12. R-30iB Compact Plus Operator Panel
Table 1–1. Standard Operator Panel Buttons
ITEM
DESCRIPTION
EMERGENCY STOP
BUTTON
This button stops the robot immediately. Turn the Emergency stop button clockwise to
release it.
FAULT RESET BUTTON
This button releases the alarm state.
CYCLE START BUTTON
This button starts the currently selected program This button is lit when the program is
being started.
The FAULT RESET Button is not available on the R-30iB Mate Plus Controller.
1–11
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV F
1.3.3 MODE SELECT Switch
The MODE SELECT switch is a keyswitch installed on the controller operator panel. You use the
MODE SELECT switch to select the most appropriate way to operate the robot, depending on the
conditions and situation. The operation modes are AUTO, T1, and T2. See Figure 1–13 .
Figure 1–13. Mode Select Switch
When you change the mode using the MODE SELECT switch, the robot is paused and a message
indicating which mode is selected is displayed at the top of the teach pendant screen. This message
will be overwritten by status or error messages during operation. The mode that is currently
selected is displayed immediately below the first message, and remains displayed. For example, if
T1 mode is selected, you will see a screen similar to the following:
SYST-038 Operation mode T1 Selected
TEST1
LINE 9999 T1 PAUSED
UTILITIES Hints
JOINT 10 %
You can lock the keyswitch in the AUTO or T1 modes by removing the key from the switch. You
cannot remove the key from the keyswitch when the key is in the T2 position.
Note If you change the mode from T1 or T2 to AUTO and the DEADMAN switch is pressed,
a system error will occur and the mode will not change to AUTO until the DEADMAN switch
is released
Note When an invalid combination is detected by the MODE SELECT switch, programs can be
activated only from the teach pendant and the robot cannot operate at speeds of more than 250
mm/s. If a program is being executed at that time, it is forcibly terminated. Refer to the description
of the SYST-037 error message for more information.
The operation modes you can select using the MODE SELECT switch are described in the
following sections.
1–12
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
T1 (<250mm/s): Test Mode 1
Program activation - Programs can be activated from the teach pendant only. However, programs
can be activated only when the teach pendant is enabled and when the DEADMAN switch is
in the center position.
Robot speed
• During Cartesian jogging, Cartesian speed is less than 250 mm/sec and joint speed is less than
10% of the maximum joint speed.
• During joint jogging, face plate speed is less than 250 mm/sec.
• During program test run at 100% override, the robot's speed will be the program speed if the
program speed is below theT1 mode safe speed . T1 mode safe speed is defined as 250 mm/sec
for TCP and 10% of maximum joint speeds. If the program speed is above the T1 mode safe
speed, robot motion will be executed at the T1 mode safe speed. With lower overrides, the
robot speed is reduced proportionally according to the override setting.
Safety equipment - The safety fence is bypassed.
Locking the mode - You can lock the switch in T1 mode by removing the key from the switch.
Possible errors
• If you turn the teach pendant ON/OFF switch to OFF when the switch is in T1 mode, the
robot stops and an error message is displayed. To remove the error, turn the teach pendant
ON/OFF switch to ON and press RESET.
• If you have set the singularity stop system variable, $PARAM_GROUP[n].$T1T2_SNGSTP,
to TRUE, the robot will stop at singularity points while in T1 mode. If you change the value of
this variable, you must turn the controller off and then on again for the change to take effect.
T2 (100%): Test Mode 2
Program activation - Programs can be activated from the teach pendant only. However, programs
can be activated only when the teach pendant is enabled and the DEADMAN switch is in the
center position.
Robot speed
• During Cartesian jogging, Cartesian speed is less than 250 mm/sec and joint speed is less than
10% of the maximum joint speed.
• During joint jogging, face plate speed is less than 250 mm/sec.
• During program test run, full program speed is allowed, and the override can be changed
from low to 100%.
Safety equipment - The safety fence is bypassed.
1–13
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV F
Locking the mode - You cannot lock the switch in T2. You cannot remove the key from the
switch in this mode.
Possible errors
• If you turn the teach pendant ON/OFF switch to OFF when the switch is in T2 mode, the
robot stops and an error message is displayed. To remove the error, turn the teach pendant
ON/OFF switch to ON and press RESET.
• If you have set the singularity stop system variable, $PARAM_GROUP[n].$T1T2_SNGSTP,
to TRUE, the robot will stop at singularity points while in T2 mode. If you change the value
of this variable, you must turn the controller off then on again for the change to take effect.
AUTO: Automatic Mode
Program activation - You must select AUTO mode and satisfy all other required conditions to
enable the activation of programs from remote devices connected through the peripheral I/O.
When the switch is in AUTO mode, you cannot start programs using the teach pendant. Refer to
the “Test Cycle ” section in the “Testing a Program and Running Production” chapter.
Robot speed - The robot can be operated at the specified maximum speed.
Safety equipment - The safety fence is monitored. If the safety fence is opened during program
execution ( Figure 1–14 ):
• Case [1] - If the robot deceleration time is less than the hardware timer, then the robot will
decelerate to a stop. This is a controlled stop. When the robot stops, servo power OFF is
initiated.
• Case [2] - If the robot deceleration time is greater than the hardware timer, then the robot will
decelerate for the duration of the hardware timer and then stop abruptly when the hardware
timer expires. When the hardware timer expires, servo power is turned OFF.
Figure 1–14. Effect of Opening the Safety Fence While in AUTO Mode
1–14
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
The system variable $PARAM_GROUP.$LC_QST P_ENB defines whether the condition specified
by the condition monitor (condition handler) function will be triggered during robot deceleration.
By default, the condition, if it exists, is triggered during deceleration ($LC_QSTP_ENB = TRUE).
When $LC_QSTP_ENB = FALSE, a condition, if it exists, is not triggered during deceleration.
Refer to the System Software Reference Manual for more information on these system variables
Locking the mode - You can lock the switch in AUTO mode by removing the key from the switch.
Possible errors
• If you turn the teach pendant ON/OFF switch to ON when in AUTO mode, the robot stops
and an error message is displayed. To remove the error, turn the teach pendant ON/OFF
switch OFF and press RESET.
• If you have set the singularity stop system variable, $PARAM_GROUP[n].$AUTO_SNGSTP,
to FALSE, the robot will pass through singularity points while in AUTO mode. If you change
the value of this variable, you must cycle power for the change to take effect.
1.3.4 Robot Stop Variation
When the EMERGENCY STOP button on the operator panel or teach pendant is pressed, the
robot stops immediately.
An emergency stop condition can be created not only when the EMERGENCY STOP button is
pressed, but also by a combination of operation mode selection, teach pendant ON/OFF switch,
DEADMAN switch, and safety fence open and close. Refer to Table 1–2 .
Note If the DEADMAN switch is fully pressed, robot motion will not be allowed. This is the
same as when the DEADMAN switch is released.
Table 1–2. Robot Servo Status
Mode
TP-ON/OFF Switch
DEADMAN Switch
Fence
SERVO Status
Motion
Possible
AUTO
ON
pressed
open
OFF
No
close
ON
No
open
OFF
No
close
OFF
No
open
OFF
No
close
ON
Yes
open
OFF
No
close
ON
Yes
released or pressed
extremely firmly
OFF
pressed
released or pressed
extremely firmly
1–15
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV F
Mode
TP-ON/OFF Switch
DEADMAN Switch
Fence
SERVO Status
Motion
Possible
T1 or T2
ON
pressed
open
ON
Yes
close
ON
Yes
open
OFF
No
close
OFF
No
open
OFF
No
close
OFF
No
open
OFF
No
close
OFF
No
released or pressed
extremely firmly
OFF
pressed
released or pressed
extremely firmly
1.3.5 User Operator Panel (UOP)
Your system might be equipped with a user operator panel (UOP). A UOP is a customized operator
panel that is wired to the controller. It can be a custom control panel, a cell controller, or a host
computer. Your company should provide the information necessary to operate this panel.
1.3.6 Emergency Stop Devices
Your FANUC America Corporation robot has the following emergency stop devices.
• Two emergency stop buttons (one installed on the operator panel and one on the teach pendant)
• External emergency stop (input signal)
When the EMERGENCY STOP button is pressed, the robot stops immediately in all cases. The
external emergency stop outputs or inputs the emergency stop signal for peripheral devices (such
as a safety fence or gate). The signal terminal is on the controller and inside the operator panel.
1.3.7 Communications
The controller has the capability of serial communication using:
• RS-232-C which can be used for
— DEC VT-220 terminal
— IBM PC compatibles
— Debug monitor
Refer to Chapter 12 PROGRAM AND FILE MANIPULATION for more information about setting
up the RS-232-C serial ports.
1–16
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
The controller also has the capability of using standard TCP/IP and UDP/IP protocols. FANUC
America Corporation-supplied options are as follows:
• FTP
• Internet Connectivity and Customization
• PC Interface
• Cimplicity/HMI
• User Socket Messaging
In addition, the following I/O products are available:
• DeviceNet Interface
• CC-link
• Ethernet/IP
• Ethernet Global Data
• FL-NET
• Interbus
• Modbus/TCP
• Profibus DP
• ProfiNet
1.3.8 Input/Output (I/O)
The I/O system provides the interface between the controller, teach pendant, robot, and any other
external device in your workcell. Controller I/O can consist of the following kinds of I/O:
• User Operator Panel (UOP) Inputs (UI)
• User Operator Panel (UOP) Outputs (UO)
• Standard Operator Panel (SOP) Inputs (SI)
• Standard Operator Panel (SOP) Outputs (SO)
• Robot Inputs (RI)
• Robot Outputs (RO)
• Digital Inputs (DI)
• Digital Outputs (DO)
• Group Inputs (GI)
• Group Outputs (GO)
• Analog Inputs (AI)
• Analog Outputs (AO)
1–17
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV F
These kinds of I/O are provided by devices, including
• CC-link
• DeviceNet
• Ethernet Global Data (EGD)
• Ethernet/IP
• Interbus
• Modbus/TCP
• Modular I/O (Model A and Model B)
• Process I/O (option)
• Profibus-DP
• ProfiNet
Note that not all Tools support all of these options. Refer to the Setup and Operations Manual for
each product for more information.
The quantity of I/O can change, except for RI/RO, UOP, and SOP I/O signals, which are fixed. The
number of RI and RO signals can vary slightly depending on the number of axes in your system.
1.3.9 Remote I/O Interfaces
The controller has the capability to use certain signals from a remote device. These signals can
include
• UOP signals
• Safety fence
• RSR and PNS
• External Emergency stop
1.3.10 Motion
The motion system is used to control robot motion. The motion system regulates the characteristics
of robot movement including path trajectory, acceleration/deceleration, termination and speed of
the robot.
In robotic applications, single segment motion is the movement of the tool center point (TCP)
from an initial position to a desired destination position. The TCP is the point on the end-of-arm
tooling at which the work is to be done.
Motion Type
There are four different types of motion: linear, circular, joint, and arc. You use these motion
types to perform certain tasks. For example, you use linear motion if the robot must move in a
1–18
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
straight line between two positions. You use circular motion or arc motion when the positions
must be along the arc of a circle. Joint motion is generally the motion type used at each position
when it is not important how the robot moves from position to position.
Note Joint motion and arc motion are not allowed in Line Tracking.
Termination Type and Speed
Termination type can be specified as fine and continuous. Speed can be specified in either length
(mm/sec, cm/min, inch/min), percent, degrees of angle units, or length of time to execute a move.
Motion Groups
The controller optionally allows you to create up to eight motion groups. By default, the first
motion group is a robot arm. Additional motion groups can be set up to perform tasks that are
executed simultaneously with those of the robot.
Each motion group can contain up to a maximum of nine axes. The total number of axes cannot
exceed 72. Motion groups are independent, but a maximum of two motion groups can perform
Cartesian coordinated linear or circular interpolated motion within a single program.
The controller can support
• Up to four full kinematics devices (robot mechanical units )
• Up to eight motion groups
• Up to 72 axes
— Up to 36 axes can be supported on the Main CPU PCB.
— Up to 24 axes can be supported on an Auxiliary Axis PCB.
— Up to 2 auxiliary axis PCBs can be supported.
In some cases multiple robot followers will be present in a robot program. If the part paths are
identical or mirrored (i.e. a motion segment on the first follower robot and the second, etc. are the
same length), all the follower robots will be executing coordinated motion. In practice, there are
small path differences between the follower robots, so the follower with the longest segment will
dictate the time for the move AND will be exactly coordinated with the leader. The other follower
robots will execute at a lower speed than the programmed speed.
1.3.11 Extended Axes
Extended axes are the available axes controlled by the controller beyond the standard number of
robot axes. Depending on your system setup, many applications use extended axes on jobs that
require a rotary, sliding axis, rail tracking, opening devices, or line tracking.
For the controller:
• Up to four full kinematics devices (robot mechanical units) are supported on one controller
1–19
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV F
• Non-robot motion groups of one to four axes can be defined. The maximum number includes
extended axes. This includes General Positioner, Basic Positioner, and Independent Axis
devices.
• One to three extended axes can be added to a motion group.
— The extended axes cannot be used independently of the motion group.
— Each extended axis adds a position data field (E1, E2, E3) to the motion group data.
— The Index axis device is one axis by definition and the Arc Positioner device is a two axes
motion group device. Neither of these can have additional axes installed.
• You cannot exceed nine axes per robot motion group; you cannot exceed four axes per
non-robot motion group.
1.3.12 Controller Backplane
A 4-slot backplane is available on the controller. The 4-slot backplane comes equipped with
the following:
• Power supply PCB
— One wide mini slot
• Main PCB
— Two mini slots
• Two full-size slots
1.3.13 Memory
There are three kinds of controller memory:
• Dynamic Random Access Memory (DRAM)
• A limited amount of battery-backed static/random access memory (SRAM)
• Flash Programmable Read Only Memory (FROM)
In addition, the controller is capable of storing information externally.
DRAM
DRAM memory is volatile. Memory contents do not retain their stored values when power is
removed. DRAM memory is also referred to as temporary memory (TEMP). The system software
is executed in DRAM memory. KAREL programs and most KAREL variables are loaded into
DRAM and executed from here also.
Note Even though DRAM variables are in volatile memory, you can control their value at startup.
Any time that a the program .VR or .PC file is loaded, the values in DRAM for that program are
set to the value in the .VR file. This means that there is not a requirement to re-load the VR file
1–20
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
itself at every startup to set initial values. If the value of that variable changes during normal
operation it will revert to the value it was set to the last time the .VR or .PC file was loaded.
If you want the DRAM variables to be uninitialized at start up you can use the IN UNINIT_DRAM
clause on any variable you want to insure is uninitialized at startup. You can use the
%UNINITDRAM directive to specify that all the variables in a program are to be uninitialized
at startup.
If you have a SHADOW variables and DRAM variables in the same KAREL program, there is
a possibility that the power up settings of the DRAM variables could change without loading a
.PC/.VR File. In this case the programmer must pay particular attention to the reliance of KAREL
software on a particular setting of a DRAM variable at startup. Specifically, the DRAM startup
values will always retain the values that they had at the end of controlled start. If SHADOW
memory is full, the DRAM startup values could be set during normal system operation.
SRAM
SRAM memory is nonvolatile. Memory contents retain their stored values when power is
removed. SRAM memory is also referred to as CMOS or as permanent memory (PERM).
The TPP memory pool (used for teach pendant programs) is allocated from PERM. KAREL
programs can designate variables to be stored in CMOS. A portion of SRAM memory can be
defined as a user storage device called RAM Disk (RD:).
Flash memory (FROM)
FROM memory is nonvolatile. Memory contents retain their stored values when power is
removed. FROM is used for permanent storage of the system software. FROM is also available
for user storage as the FROM device (FR:).
SHADOW
Shadow memory provides the same capabilities as SRAM. Any values set in shadow are
non-volatile and will maintain their state through power cycle. Shadow memory is intended for
data which tends to be static. Storing dynamic variables in shadow memory, such as FOR loop
indexes or other rapidly changing data, is not efficient.
1–21
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV F
Figure 1–15. Controller Memory
External Storage
You can back up and store files on external devices. You can use the following devices:
• Memory card
• Ethernet via FTP
• USB Memory Stick
1.3.14 Line Tracking
Line tracking is an optional feature that enables a robot to treat a moving workpiece as a stationary
object. The option is used in conveyor applications, where the robot must perform tasks on moving
workpieces without stopping the assembly line.
Refer to the Linetracking Setup and Operations Manual for more information.
1.4 FANUC SOFTWARE
The FANUC software works in conjunction with the robot and the controller to allow you to:
1–22
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
• Set up information required for the application
• Program your application
• Test your program
• Run production
• Display and monitor process information
Other tools such as program and file management capabilities help you to maintain your system
before, during, and after the production stage.
1.5 STARTUP (AND POWER OFF) OF THE ROBOT
Turning on the robot provides power to the robot and controller. This section contains information
and procedures to turn the robot on and off.
Note For more information on various startup methods, see Section B.1 .
Warning
Lethal voltage is present in the controller WHENEVER IT IS
CONNECTED to a power source. Be extremely careful to avoid
electrical shock.
Turning the disconnect or circuit breaker to the OFF position removes
power from the output side of the device only. High voltage is always
present at the input side whenever the controller is connected to a
power source.
Use Procedure 1-1 to turn on the robot. Use Procedure 1-2 to turn off the robot. Use Procedure
B-5 to cycle controller power.
Caution
Your plant might require additional inspections before turning on power to the
robot. To help ensure safe operation, you should familiarize yourself with the
guidelines for your particular installation before you turn on the robot.
Procedure 1-1 Turning On the Robot
Conditions
• All personnel and unnecessary equipment are out of the workcell.
1–23
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV F
Steps
1. Visually inspect the robot, controller, workcell, and the surrounding area. During the
inspection make sure all safeguards are in place and the safeguarded space is clear of
personnel.
2. Turn the power disconnect circuit breaker on the operator panel to ON.
Procedure 1-2 Turning Off the Robot
Steps
1. If a program is running or if the robot is moving, press the HOLD key on the teach
pendant.
2. Perform any shutdown procedures specific to your installation.
3. Turn the disconnect circuit breaker to OFF.
Warning
Lethal voltage is present in the controller WHENEVER IT IS
CONNECTED to a power source. Be extremely careful to avoid
electrical shock.
Turning the power disconnect circuit breaker to the OFF position
removes power from the output side of the device only. High
voltage is always present at the input side whenever the controller
is connected to a power source.
Procedure 1-3 Cycling Power from a Powered-up Controller
Note For R-30iB Mate Plus controllers, power must be manually switched off and then on.
Conditions
• The controller is plugged in and is working properly.
• The robot is powered on and in a Cold or Hot start state.
• The REMOTE/LOCAL setup item in the System Configuration Menu is set to LOCAL.
• The teach pendant is enabled.
• You are not using an external robot connection. This is only available on the teach pendant.
1. Press FCTN.
2. Select CYCLE POWER. You will see a screen like the one shown below.
1–24
MAROUHT9102171E REV F
1. OVERVIEW AND STARTUP
Figure 1–16. Cycle Power
3. Press ENTER. You will see a screen similar to the following.
4. Press YES. Controller power will cycle off and back on.
1–25
Chapter 2
iPENDANT OPERATIONS
Contents
Chapter 2
2.1
2.2
2.3
2.3.1
2.3.2
2.3.3
2.3.4
2.3.5
2.3.6
2.3.7
2.3.8
2.3.9
2.4
2.5
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
2.5.6
2.5.7
2.6
2.6.1
2.6.2
2.6.3
2.6.4
2.7
2.7.1
2.7.2
2.8
2.8.1
2.8.2
iPENDANT OPERATIONS ...................................................................
OVERVIEW.............................................................................................
TEACH PENDANT SWITCHES ...............................................................
SCREEN NAVIGATION ...........................................................................
Touch/Non-Touch Screen ......................................................................
Screen Backlighting ............................................................................
Zoom ...................................................................................................
Related View Menu ..............................................................................
Maximize/Restore ................................................................................
Window Display ...................................................................................
Browser Guidelines ...........................................................................
Changing Focus .................................................................................
Color Setup ........................................................................................
TEACH PENDANT KEYS ......................................................................
HAPTIC iPENDANT ..............................................................................
Overview ..............................................................................................
Hardware/Software Requirements, Application Tools..........................
Testing the Haptic iPendant .................................................................
Configuring the Haptic iPendant..........................................................
Haptic Log ...........................................................................................
Common Haptic Functions ..................................................................
Material Handling Haptic Functions .....................................................
STATUS ................................................................................................
Status Bar Displays ............................................................................
Status indicators ................................................................................
LEDs ..................................................................................................
Display Equip ......................................................................................
HELP ....................................................................................................
MORE INFO ..........................................................................................
Help and Diagnostics .........................................................................
ADDITIONAL iPENDANT FUNCTIONS ..................................................
Document Viewer.................................................................................
Menu Favorites ...................................................................................
2–1
2–3
2–4
2–6
2–6
2–10
2–11
2–12
2–12
2–13
2–20
2–25
2–26
2–27
2–36
2–36
2–37
2–38
2–38
2–40
2–40
2–48
2–55
2–55
2–57
2–57
2–57
2–57
2–57
2–58
2–60
2–60
2–62
2–1
2. iPENDANT OPERATIONS
2.8.3
2.8.4
2.8.5
2.8.6
2.8.7
2.8.8
2.8.9
2.8.10
2.8.11
2–2
MAROUHT9102171E REV F
Menu History ......................................................................................
Multi-Pane Edit ...................................................................................
Other iPendant Guidelines .................................................................
Popup Menus ......................................................................................
Screen Customizations .......................................................................
Software Keyboard ..............................................................................
Top Menu .............................................................................................
Universal Serial Bus (USB) Port .........................................................
User Views ..........................................................................................
2–65
2–65
2–66
2–67
2–68
2–82
2–91
2–98
2–98
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
2.1 OVERVIEW
The iPendant is the primary means with which to interact with the robot. The R-30iB Plus
iPendant is the standard teach pendant style. The iPendant provides
• Teach pendant keys designed to make the FANUC software easy to use
• iHMI Guides for setting up your robot
• Tutorials to teach you how to perform functions such as creating and executing a program,
moving (jogging) the robot
• A USB Port
• An ON/OFF switch, Enabling Devices (DEADMAN switches), and an EMERGENCY STOP
button
• A touch screen interface (option)
• A color graphics interface
• Popup menus
• Multiple screens displayed simultaneously
• Internet/intranet access (option)
• Integrated Help and Diagnostics
• User-customized help and web pages
• Customized displays
• A 3D graphics processing engine to display the robot, tooling, parts and other cell components
in 3D desktop quality graphics
2–3
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–1. iPendant
2.2 TEACH PENDANT SWITCHES
The iPendant includes keys that are used to display software menus, select options from the teach
pendant menus, help you program, move the robot, and perform specific functions.
If you are using PalletTool, you do not have to perform special programming functions unless you
want to add custom features to your application.
DEADMAN Switch
Two DEADMAN switches are located on the back of the teach pendant, and are used as enabling
devices. Each DEADMAN switch is a three-position switch. When the teach pendant is enabled,
this switch allows robot motion only while a DEADMAN switch is gripped in the middle position.
If the DEADMAN switch is completely gripped, or is released, no motion is allowed. Press the
DEADMAN switch in the middle position to run the robot.
See Figure 2–2 .
2–4
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–2. Teach Pendant Enabling Device (DEADMAN Switches)
Teach Pendant Enable Switch (ON/OFF)
This switch turns on and off the teach pendant. When the teach pendant is off, you cannot jog the
robot, create a program, or test/run a program.
Figure 2–3. Teach Pendant Enable Switch
EMERGENCY STOP Button
The red EMERGENCY STOP button is located on the front of both teach pendant styles and can
be pressed to stop the robot immediately in case of an accident or failure.
See Figure 2–4 .
2–5
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–4. EMERGENCY STOP Button
2.3 SCREEN NAVIGATION
2.3.1 Touch/Non-Touch Screen
If you have the optional touch screen available on your iPendant, you can select items by touching
them on the screen. The item is activated as soon as you release the touch. If you press one of
the following keys, you can select and activate a displayed item by touching and releasing that
item on the screen:
• MENU
• DISPLAY
• FUNCTION
• [TYPE]
• [CHOICE]
Note Prompt box and Warn windows will not allow touch and release events. These events are
typically shown in yellow on the iPendant screen.
You can touch the screen anywhere to focus the window. The title bar of the focused window
is divided into three parts and can be touched to activate a shortcut to the MENU, DISPLAY,
and FCTN menus. If the title bar has any icons, such as
(zoom),
(maximize/restore), you can touch the icon to activate the feature.
See Figure 2–5 .
2–6
(related view), or
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–5. Touch Screen Navigation
Figure 2–5 displays the capabilities for touch screen and mouse navigation. Refer to Table 2–1 for
information on navigating the touch screen.
Table 2–1. Touch Screen and Mouse Navigation
TOUCH SCREEN
MOUSE
DESCRIPTION
Single tap
Single left click
Select a line or an item in a line. Touching above the first line
will scroll up and touching below the last line will scroll down.
2–7
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
TOUCH SCREEN
MOUSE
DESCRIPTION
Double tap
Double left click
Edit an item, select a program in the SELECT menu.
Touch and hold
Single right click
Activate [CHOICE] menu while cursor is on item which contains
[CHOICE] menu. Activate [EDCMD] while cursor is on line
number in TP Editor. Select an item in 4D display.
Mouse movement while
left button is held
Typically screens will scroll up or down. If you move fast, the
automatic scroll feature will be enabled. You can now lift your
finger or mouse and the screen will continue to scroll until it
reaches the top or bottom of the screen. You can stop the scroll
at any time by touching the screen. If your screen is in zoom
mode, you can scroll left or right.
Touch and drag. Firmly
touch and hold the screen
while moving your finger.
Be sure to maintain
contact by pressing firmly
or using the fingernail side
of your finger. Beeping
means that you are not
maintaining contact.
Refer to Procedure 2-1 if you wish to disable the touch panel.
Procedure 2-1 Touch Panel Setup
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select iPendant Setup.
You will see a screen similar to the following.
2–8
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–6. iPendant General Setup
5. Select iPendant Touch Panel Setup.
You will see a screen similar to the following.
2–9
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–7. Touch Panel Setup
6. Uncheck the boxes to disable touch.
7. Cycle power for the change to occur.
2.3.2 Screen Backlighting
The teach pendant backlight has an automatic dimming function. If there is neither key nor touch
operation for 4 minutes, the automatic dimming function will be activated. This decreases the
brightness of the LCD backlight to 35%. It cannot be disabled.
The teach pendant backlight can also be turned off completely to save energy when no keys are
pressed for a defined period of time.
The system variable $UI_CONFIG.$BLNK_ENABLE, disables or enables automatic shut off.
If this is true the variable $UI_CONFIG.$BLNK_TIMER controls the amount of inactive time
before the backlight is turned off.
2–10
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Table 2–2. Blanking and Dimming
Automatic Blanking
Blanking and Dimming Spec.
Enabled (default)
After 4 minutes, brightness is decreased.
After 5 minutes, backlight is turned off.
Disabled
After 4 minutes, brightness is decreased.
Backlight will not be turned off.
Note
• When the teach pendant enable switch is turned to the enable position, the automatic turn
off is not performed.
• If any key is pressed while the backlight is turned off, the the teach pendant will be recovered
quickly. FANUC recommends pressing the left or right shift key to recover the display.
• When the backlight is turned off, no display is visible on the screen.
Caution
Do not judge the status of power cycle of your controller by whether
display is visible or not on the screen. The teach pendant has a green
LED indicator on a key sheet to show the status of a controller cycle
power.
2.3.3 Zoom
You can zoom in on the current iPendant screen using the Zoom icon
in the top right corner
of the screen. The Zoom Caret toggles through three zoom modes. If you change the displayed
screen, the default zoom resolution will be displayed. See Figure 2–8 .
2–11
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–8. Zoom
2.3.4 Related View Menu
The Related View Menu displays other menu choices that are available. It can display Related
Views or provide a shortcut to the related iHMI Guide if one is available.
2.3.5 Maximize/Restore
Maximize/Restore (
) provides the ability to ZOOM the current window. You either
touch the Maximize icon or press the Maximize/Restore button or function key from User View
dialog box or select the Maximize/Restore entry in the DISPLAY menu. The configuration
changes to Single Window with the currently selected window. See Figure 2–9 .
You can revert to the original display by touching the Restore icon or selecting Maximize/Restore.
If you change configuration while the window is Maximized, then the Restore is cancelled.
2–12
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–9. Maximize/Restore
2.3.6 Window Display
2.3.6.1 Overview
Information can be displayed in multiple windows. You can activate the Display menu to select the
window modes by pressing the SHIFT key and the DISP key (the Display key) at the same time.
To select a window mode, you can either use the arrow keys to highlight a mode and then press
ENTER, or you can type the number of the mode you want.
2–13
2. iPENDANT OPERATIONS
You will see a menu displayed as shown in Figure 2–10 .
Figure 2–10. Window Display Control Menu
SHIFT
+
DISP
=
The following window display modes are available.
These are shown in Table 2–3 .
2–14
MAROUHT9102171E REV F
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Table 2–3. Window Displays
Window Display
Mode
Example Screen
Additional Comment
Single Window
In Single mode, one window is displayed.
Double Window
In Double, two different windows can be
displayed at one time.
Triple
In Triple, three different windows can be
displayed at one time.
2–15
2. iPENDANT OPERATIONS
Window Display
Mode
Example Screen
MAROUHT9102171E REV F
Additional Comment
TreeView
The TreeView window presents a
hierarchical view of information. Each
item (often called a branch or a node)
can have a number of subitems. An item
can be expanded to reveal subitems,
if any exist, and collapsed to hide
subitems.
See Section 2.3.6.2 .
Single Wide
In Single Wide, one wide screen window
is displayed.
Double Horizontal
In Double Horizontal, two different
windows can be displayed at one time
horizontally.
2–16
MAROUHT9102171E REV F
Window Display
Mode
Example Screen
2. iPENDANT OPERATIONS
Additional Comment
Triple Horizontal
In Triple Horizontal, three different
windows can be displayed at one time
with one horizontal screen at the bottom.
Status/Single
The left hand side of the Status/Single
window always displays a list of status
information that you can select to
display. It allows you to display one of
the following status modes:
•
Position Display
•
Operator Panel
•
Stop Signal
Note Additional status modes might be
available based on your application.
Note The information displayed in
the left hand side of the Status/Single
Window is always Status.
Multiple Window Rules
The following rules apply to multiple window display modes:
• Switching between Single window display mode and Treeview or Status/Single window
display mode does not affect the information in the right-hand window.
• When you switch from other modes to Single window mode, the information in the left
window is displayed in the Single window.
• When you use Maximize/Restore to switch to Single window mode, the information in the
currently selected window is displayed in the Single window.
2–17
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
2.3.6.2 Additional Information about the TreeView Window
The TreeView window presents a hierarchical view of information. Each item (often called a
branch or a node) can have a number of subitems. An item can be expanded to reveal subitems,
if any exist, and collapsed to hide subitems.
Figure 2–11. TreeView
The TreeView can be related to menus on the right. Use Top Menu -> TREEVIEW to access
related views.
The TreeView can display different types using the [ TYPE ] key. See Table 2–4
Table 2–4. TreeView Types
TYPE
DESCRIPTION
Menu
Select a menu to display. TIP: Use the
to open all the menus.
Collections
Displays all the collections which are used to collect programs
together. If a program is not loaded, it will be grayed out.
2–18
+ right arrow key
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
TYPE
DESCRIPTION
Jobs
Displays all the jobs. Each job opens to display its called
programs.
All Program Types
Displays all program types.
Call Trees
Displays all programs which call other programs. Each
program opens to display its called programs.
Files
Displays all file devices. Each device opens to display its files
and subdirectories.
System Variables
Displays all system variables. Each system variable opens to
display its field names.
There may be more or less types depending on the options loaded. When the TreeView pane has
focus, the following keys are available for operation:
Table 2–5. TreeView Keys
KEY
DESCRIPTION
[TYPE]
Use this function key to display different types.
[ATTR]
Use this function key for program types to display and sort the
tree with Name Only, Name/Comment, and Comment/Name.
REFRESH
Use this function key to refresh the contents of the TreeView.
FIND
Use this function key to search the entire tree for entered
string. It is case insensitive and can be a partial string. If
found, then the TreeView item is highlighted. You can press
enter or double-click to select the TreeView item and the right
pane may change if linked with the TreeView pane. The search
remains valid. You can continue searching by pressing F4
NEXSRCH or cancel using F5 CANCEL. The search will wrap
around continuously until PREV or CANCEL is performed. If
no TreeView items are found, then the search is immediately
cancelled.
ENTER
Select the TreeView item that is currently highlighted.
Up and Down Arrow Key
These keys will cursor up and down within the TreeView.
Left and Right Arrow Key
These keys will collapse and expand the TreeView.
SHIFT + Up, SHIFT + Down, SHIFT + Left, SHIFT +
Right
Scroll page in that direction. Scroll bars will be visible if more
content is available in the horizontal or vertical direction. On
Windows, use CTRL key instead of SHIFT.
+ Left or
PREV or
+ Right
+ Down
When the type is Menus, use these 2 keys together to collapse
or expand all menu entries.
When the TreeView is used within a web page and has focus,
this key is mapped to TAB in order to move focus out of the
TreeView to other elements on the web page.
2–19
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
KEY
DESCRIPTION
Maximize/Restore
The TreeView can be maximized for easier viewing and
selecting. When restored, the TreeView will retain its selection.
Zoom
Zoom between 3 different size fonts.
2.3.7 Browser Guidelines
You can use the iPendant to browse web pages that are accessible on the network from the robot.
Note In order to access any web page that is not resident on a controller to which the iPendant is
attached, the Internet Protocol Connectivity and Customization Option must be loaded and the
Proxy Server properly configured. This includes accessing other robots on the network, and
any other intranet or internet site.
Without the Internet Protocol Connectivity and Customization Option, the iPendant can only be
used to access web pages resident on the controller to which the iPendant is connected. This
includes standard Help and Diagnostic (Cause/Remedy) information, the Home page of the robot
and any custom developed .htm pages.
Caution
The browser only supports a limited subset of JavaScript and HTML tags.
Browser components like FLASH, JAVA, ActiveX components, and so
forth are not supported on the iPendant. Therefore, not all web pages are
guaranteed to display correctly.
To display the browser , press MENU, and select BROWSER. This will display the Browser
Favorites menu. To access web pages, select Favorites from the Main menu. Table 2–8 lists the
operations you can perform using the Browser keys. Table 2–7 describes the following Favorites
operations:
• Browse the Home Page of the robot to which the iPendant is connected
• Add a hyperlink to another website or robot
• Modify or Delete a Hyperlink that you have created
• Select a Pre-Programmed Hyperlink (using the [TYPE] key)
Table 2–6. Browser Screen Keys
Key
Description
[TYPE]
Use this function key to access pre-programmed hyperlinks.
BACK
Use this function key to move back to the previously displayed web page.
FORWARD
Use this function key to move forward one web page in the history buffer.
REFRESH
Use this function key to refresh the currently displayed web page.
2–20
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Key
Description
HOME
Use this function key to move to the Home page of the robot to which the iPendant
is connected.
CLR CACHE
Use this function key to clear the cache of the iPendant browser. The cache is
automatically cleared every power-up and when the language is changed on the
controller.
STOP
Use this function key to stop the download of a web page.
FAVORITES
Use this function key to display the Favorites Page or to add or select a link.
+ ENTER
Use these 2 keys together to add a space. Can also be used to check and uncheck
an HTML checkbox.
ENTER
Select the link that is currently highlighted.
Up and Down Arrow Key
These keys are mapped to TAB and SHIFT-TAB in order to move the focus between
elements on a web page.
Left and Right Arrow Key
These keys will operate left and right within a text box or up and down within an HTML
select tag (drop-down list).
SHIFT + Up, SHIFT + Down,
SHIFT + Left, SHIFT + Right
Scroll page in that direction. Scroll bars will be visible if more content is available in the
horizontal or vertical direction.
2–21
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Table 2–7. Favorites Screen Operations
Operation
Description
Browse
<my_robot>
Home Page
This link displays the home page of the robot to which the iPendant is connected. <my_robot> is the
hostname of the robot to which the iPendant is connected. This is the robot name entered in the
robot controller TCP/IP setup.
Add a Link
This allows you to create hyperlinks to any website available on the network with the robot or to link to
.htm or .stm files resident on the robot. To access any file or link not resident on the controller the
“Internet Protocol Connectivity and Customization Option” must be loaded and the Proxy and DNS
services must be properly configured.
Adding a link requires that you define two fields. The first is a “ friendly name” for the link. This name
is used to identify the file or site to which you are linking. The second field is the network address
for the link. It can be either a static IP address, or a DNS name. (For example, http://192.168.1.125,
http://robot11.frc.com, and so forth.) To link to a file resident on the robot, use a relative link without the
http://. For example, /fr/pw_op1.stm refers to pw_op1.stm on the FR: device. Also, /md/memory.dg
refers to the memory diagnostic page on the MD: device.
When“Add a Link” is selected, the following screen is displayed.
Select the Enter a Name box using the cursor keys, and press ENTER. The popup keyboard will be
displayed. Use the cursor keys to type the < name> (ex. FANUC, Yahoo, and so forth) you want
associated with this link.
When you are finished typing the name, select EXIT on the popup keyboard. Select the Enter an
Address box and use the same procedure as above to type the link address (ex. http://192.168.1.1 or
http://robot1.frc.com).
Note The http:// will be added to the link address automatically.
2–22
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Operation
Description
Add a Link
Continued
After the link name and address are entered, press Continue to add the entry to the Favorites Screen.
See the following screen for an example.
Modify an Entry
To modify an entry, go to the Modify <name> link and press ENTER. This will display a screen similar to
the entry screen above. Modify the appropriate items and press CONTINUE to save the modifications.
2–23
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Operation
Description
Delete an Entry
To delete an entry, go to the Delete <name> link and press ENTER. This will immediately remove
this link from the list.
Pre-Programmed These links are those that are listed when you select the [TYPE] key while in the Browser. They also
Links
show up as a pop-up menu when you select BROWSER from the Main Menu. Up to 10 of these
pre-programmed links can be created by setting the following system variables:
$tx_screen[n].$destination = "Your HTML page"
$tx_screen[n].$screen_name = "Your screen name"
Where n is 1 - 10
Example: $tx_screen[1].$destination = "http://www.yahoo.com"
$tx_screen[1].$screen_name = "yahoo"
Example2: $tx_screen[2].$destination = "/fr/pw_op1.stm"
$tx_screen[2].$screen_name = "Production Status"
In this case the popup [TYPE] menu will have "yahoo" and “Production Status” as entries. If “yahoo”
is selected the website, www.yahoo.com, will be displayed on the iPendant. If “Production Status”
is selected, the web page FR:\PW_OP1.STM will be displayed.
Note Access to external links requires the Internet Protocol Connectivity and Customization
Option.
While in any browser screen, the following iPendant keys can be used to navigate the displayed
web page. Refer to Table 2–8 .
Table 2–8. Browser Screen Keys
Key
Description
[TYPE]
Use this function key to access pre-programmed hyperlinks.
BACK
Use this function key to move back to the previously displayed web page.
FORWARD
Use this function key to move forward one web page in the history buffer.
REFRESH
Use this function key to refresh the currently displayed web page.
HOME
Use this function key to move to the Home page of the robot to which the iPendant
is connected.
CLR CACHE
Use this function key to clear the cache of the iPendant browser. The cache is
automatically cleared every power-up and when the language is changed on the
controller.
STOP
Use this function key to stop the download of a web page.
FAVORITES
Use this function key to display the Favorites Page or to add or select a link.
+ ENTER
ENTER
2–24
Use these 2 keys together to add a space. Can also be used to check and uncheck
an HTML checkbox.
Select the link that is currently highlighted.
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Key
Description
Up and Down Arrow Key
These keys are mapped to TAB and SHIFT-TAB in order to move the focus between
elements on a web page.
Left and Right Arrow Key
These keys will operate left and right within a text box or up and down within an HTML
select tag (drop-down list).
SHIFT + Up, SHIFT + Down,
SHIFT + Left, SHIFT + Right
Scroll page in that direction. Scroll bars will be visible if more content is available in the
horizontal or vertical direction.
2.3.8 Changing Focus
Focus identifies the currently active or primary window. The current focus can be one of the
multiple windows. Only one window has focus at a time. The window with the current focus is
identified with a red border and a blue title bar at the top of the window. All other displayed
windows will have a gray title bar when they are not the current focus. The displayed function key
labels reflect the currently focused window.
See Figure 2–12 .
2–25
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–12. Window and Focus Example
To change the focus automatically, press DISP without pressing the SHIFT key. After you have
changed the focus, you can then perform the functions that are allowed for the currently active
window.
2.3.9 Color Setup
The iPendant uses #E1E7EC (decimal 14804972) for the default background color for most of the
screens. In a RGB color space, this is composed of 88.2% red, 90.6% green, and 92.5% blue. The
iPendant background color can be changed by setting $UI_CONFIG.$BACKCOLOR. You will
have to convert the hex number to decimal in order to set it.
The foreground color is always black (#000000) so in order to see the text, the background color
cannot be too dark. When the controller is restarted, if ((red + green + blue) / 3) < 127, then
$UI_CONFIG.$BACKCOLOR is reset to #E1E7EC.
2–26
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
2.4 TEACH PENDANT KEYS
The teach pendant has the following keys:
• Navigation and Data Entry Keys
• Robot Motion Keys
• Execution Keys
• Editing Keys
• Application-Specific Keys
• Help/Diagnostic Keys (iPendant only)
2–27
2. iPENDANT OPERATIONS
Figure 2–13. HandlingTool iPendant Keys
2–28
MAROUHT9102171E REV F
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Table 2–9. Navigation and Data Entry Keys
iPendant Key
Symbolic iPendant Key (if available)
Function
The F1 through F5 function
keys are used to make choices
based on the teach pendant
display. Each function key has
a unique label depending on the
menu displayed on the teach
pendant screen.
The
key is a special key.
When you press the
key
together with other keys, the
special screen is displayed.
When you press
+ HELP,
the Help for i key screen is
displayed.
The PREV key restores the
most recent state. In some
cases, the screen might not
return to the immediately
preceding status.
The next page key is used to
display the next set of function
keys.
The MENU key is used to
display the screen menu.
The SELECT key is used to
display the program selection
screen.
The EDIT key is used to display
the program edit screen.
The DATA key is used to display
the program data screen.
2–29
2. iPENDANT OPERATIONS
iPendant Key
MAROUHT9102171E REV F
Symbolic iPendant Key (if available)
Function
The DISP key is available only
on the iPendant and is used
to activate the DISPLAY menu
or change the focus. When
you press SHIFT and the DISP
key together, the DISPLAY
menu appears. The DISPLAY
menu allows you to change the
number of windows displayed
to be Single, Double, or Triple.
The Status/Single choice
displays status in addition to the
single window. You can also use
it to display help or diagnostics,
set up user views and menu
favorites, or to display a menu
history.
The FCTN key is used to display
the function menu.
Table 2–10. Robot Motion Keys
iPendant Key
Symbolic i Pendant Key (if
available)
Function
The GROUP key is used to switch groups.
Hold down the GROUP key and press
the numeric key to switch to a specified
group. Press the GROUP key and the 0 key
together to toggle the sub group.
Note The group key is enabled only when Multi
motion group software option (J601) or Extended
Axis Control software option (J518) has been
ordered, and the extended axis or the independent
axis has been set up.
The SHIFT key is used to jog the robot, teach
the position data, and start a program.
The right and left SHIFT keys have the same
function.
2–30
MAROUHT9102171E REV F
iPendant Key
2. iPENDANT OPERATIONS
Symbolic i Pendant Key (if
available)
Function
The jog keys are effective while a SHIFT key
is pressed. They are used to jog the robot.
These keys are used to jog extended axes or
servo gun axes.
The COORD key selects a jog coordinate
system. Each time the COORD key is
pressed, it selects the next jog type in the
order: JOINT, JGFRM, World frame, TOOL,
USER. When this key is pressed while a
SHIFT key is pressed and held down, a jog
menu for changing the coordinate system is
displayed.
The override key adjusts the feedrate
override. Each time the override key is
pressed, it selects the next override in the
order: VFINE, FINE, 1%, 2% 3% 4% 5%,
10% 15% 20% and so forth in 5% increments
to 100%. (Set $SHFTOV_ENB to alter the
override settings.)
2–31
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Table 2–11. Execution Keys
iPendant Key
Symbolic iPendant Key (if
available)
Function
The FWD key or BWD key (+ SHIFT key)
starts a program. When the SHIFT key is
released during regeneration, the program
halts.
The HOLD key causes a program to halt.
The STEP key selects step or continuous
test operation.
The RESET key is used to clear an alarm.
Table 2–12. Editing Keys
iPendant Key
Symbolic iPendant Key (if
available)
Function
The ENTER key is used to process and
activate the current information set.
The BACK SPACE key deletes the character
or numeral immediately before the cursor.
2–32
MAROUHT9102171E REV F
iPendant Key
2. iPENDANT OPERATIONS
Symbolic iPendant Key (if
available)
Function
The arrow keys are used to highlight or
select an item on the screen.
The ITEM key moves the cursor to a line
whose number is specified.
Table 2–13. Material Handling-Specific Keys
iPendant Key
Function
The TOOL 1 or 2 key displays the tool 1 or 2 screen.
The MOVE MENU key is not supported for HandlingTool.
The SET UP key displays the SETUP screen.
The STATUS key displays the STATUS screen.
2–33
2. iPENDANT OPERATIONS
iPendant Key
MAROUHT9102171E REV F
Function
The POSN key displays position data.
The I/O key displays the I/O screen.
Table 2–14. Help and Diagnostic Key
iPendant Key
Symbolic iPendant Key (if
available)
Function
The HELP key displays help files that
describe the functions available for the
active window. The SHIFT and DIAG keys
together display diagnostic information for
the currently active error or the selected error
in the Alarm menu. This key is only available
on the iPendant.
Table 2–15. FCTN Menu
Item
Function
ABORT ALL
This item aborts all running or paused programs.
Disable FWD/BWD
This item allows you to disable the ability to execute program
instructions when the SHIFT and FWD keys or SHIFT and BWD
keys are pressed. The ability to use SHIFT FWD and SHIFT
BWD will be disabled until you press FCTN and select DISABLE
FWD/BWD again.
RELEASE WAIT
During program execution, wait release allows you to override
pauses in the program when the robot is waiting for I/O conditions
to be satisfied. Release wait works only when a program is
running.
QUICK/FULL MENU
This item toggles the menu display between a full or a shorter
menu list.
SAVE
This item saves the current program.
PRINT SCREEN
This item saves the current teach pendant screen image to the
default device as tpscrn.ls.
PRINT
This item saves the current program to the default device as
program_name.ls.
UNSIM ALL I/O
This item unsimulates all simulated signals.
2–34
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Item
Function
CYCLE POWER
This option is available on the FCTN menu after a Cold start. This
item toggles the power relay via external I/O. The teach pendant
must be enabled for this to work. If the teach pendant is enabled,
a prompt box will be displayed asking if you are sure. This is not
available on an external robot connection — only from the teach
pendant.
ENABLE/DISABLE HMI MENUS
This item enables (or disables) the optional HMI Menus in both
FULL and QUICK Menu mode.
REFRESH PANE
This item refreshes the page in the active window.
Key
The key is a special key. When you press the key together with other keys, the special screen
is displayed. When you press + HELP, the Help for the key is displayed. See Table 2–16 .
Table 2–16.
Key
Key Functions
Description
+ MENU
Displays the Top Menu.
+ SELECT
Displays the Select menu in the left pane and the 4D node
map in the right pane for the program which is highlighted
by the cursor.
+ EDIT
Displays the TPP editor in the left pane and 4D node map
in the right pane.
+ DATA
Displays the position register data in the left pane and a 4D
display of position registers in the right pane.
+ FCTN
Displays the Related View Menu if one is available.
+ POSN
Presents a 4D display of the robot using the last selected
view.
+ Jog Key
Shows you the direction that the robot will move when the
jog key is pressed when the 4D screen is displayed.
+ DISP
Switches the display to the next window if one is available.
+ COORD
Toggles jog indicators on and off.
+ ENTER
Adds a space. Can also be used to check and uncheck
an HTML checkbox.
When a blinking
is shown in the Status Bar, then
pressing and releasing
will display the STATUS
Notifications screen.
2–35
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
2.5 HAPTIC iPENDANT
2.5.1 Overview
The iPendant provides you valuable information such as warnings and other messages. During
teaching and playback, however, you often focus on the robot, equipment, and workpiece rather
than the iPendant, and can miss valuable information displayed to alert or notify you. Critical
events such as I/O triggering, motion / process parameter changes, and so forth could go unnoticed,
since they could be invisible or are not easy to see.
The Haptic (vibration) iPendant (equipped with a haptic motor) alerts you by vibrating the iPendant
case and displaying a Bubble Notification momentarily to indicate the cause and/or action required.
The Haptic iPendant:
• Saves Teaching Time: by letting you know a Critical / Invisible Event just occurred or could
soon occur
• Alerts you to Process Conditions: alerts you on process conditions that you might overlook
(e.g. Arc enabled)
• Lets You Feel an Event: It is not easy to watch the Robot (e.g. TCP) and the iPendant
(e.g. I/O status) at the same time, e.g. while tuning a robot mounted proximity sensor. The
vibration lets you feel it.
• Provides User-Defined Alerts: Enhances the user teaching experience by defining your
own conditions for Haptic feedback.
The Haptic iPendant is active when the
• Teach Pendant is enabled or,
• DEADMAN switch is held
Note These conditions are independent of the Mode Switch Setting. For example, even in Auto
Mode, the Haptic iPendant will be active if you hold the DEADMAN switch.
2–36
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–14. Haptic iPendant Overview
2.5.2 Hardware/Software Requirements, Application Tools
The Haptic iPendant requires both hardware equipment and software:
Hardware
• Haptic enabled iPendant with a designated part number including 104, or 105 in the part
number label at the back of the iPendant
— A05B-2255-C105/xxx – Haptic, with touch panel
— A05B-2255-C104/xxx – Haptic, without touch panel
Software:
• R848 iPendant Haptic
Refer to Figure 2–15 .
Figure 2–15. Hardware/Software Compatibility Matrix
The Haptic iPendant currently supports:
• Arc Welding
2–37
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
• Material Handling
• Dispense
Note The Haptic iPendant is not supported on Paint Robot Controllers.
2.5.3 Testing the Haptic iPendant
You can test Haptic vibration by pressing the “Test Haptic” button at the bottom of the General
category on the Haptic Setup UIF Touch Screen (see Figure 2–16 ), then the:
• Teach pendant vibrates
• A Bubble Notification will pop up momentarily and then disappear
Figure 2–16. General Haptic Setup
2.5.4 Configuring the Haptic iPendant
Haptic features are ENABLED by default on Haptic iPendants, so no setup is typically required.
However, many setup items such as events, vibration lengths and so forth., can be configured.
2–38
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Procedure 2-2 Configuring the Haptic iPendant
Conditions
• You are using a Haptic iPendant.
Steps
1. To access the Haptic Touch Screen Setup screen, press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Haptic. You will see a screen similar to the following. It is organized into a few
categories, such as General, System Configured Alarms, Inputs / Outputs, Motion, and so
forth. If you touch the title bar of each category, the category will be expanded to show the
detailed items. If you touch the title bar again, the category will collapse.
Figure 2–17. Configuring Haptic Feedback
5. You can customize the Haptic settings in Haptic Setup UIF Screen:
• Enable / Disable ALL Haptic vibration, or Bubble Notification
• Enable / Disable only a selected group of Haptic features
• Enable / Disable individual Haptic feature by setting vibration pattern (OFF is disable)
• Customize vibration pattern (short, medium, long, short – long, … etc).
• Define I/O type / number, and the transition that triggers Haptic feedback
• Define vibration pattern for an User Alarm once it’s defined
• Haptic settings are saved in HAPTIC.SV in an all file backup or MD backup
Note If your iPendant does not have a touch screen, you could use the ARROW keys to
navigate the Haptic Setup UIF screen (which is a web page):
• Up and Down Arrow Key: These keys are mapped to TAB and SHIFT-TAB in order to
move the focus between elements on a web page
2–39
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
• Left and Right Arrow Key: These keys will operate left and right within a text box or up
and down within an HTML select tag (drop-down list)
Note Refer to Table 2–8 for information on the Browser Screen Keys.
2.5.5 Haptic Log
The most recent haptic events are listed in the Haptic Log under Alarms.
Figure 2–18. Haptic Log
2.5.6 Common Haptic Functions
The following are Haptic functions common and default to most applications:
• Warning Alarms
• User Alarms
• I/O
• Prompt Box
2–40
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
• @ Taught Position
Figure 2–19. Warning Alarms
A set of pre-selected System Warning Alarms could trigger haptic feedback, they include:
• MotorSpd lim/DVC – robot could be near singularity
• Disturbance excess – robot could be near collision
• Speed limit used – large orientation moves
• Joint Torque Over – too large joint torque
2–41
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–20. User Alarms
• You can first define a User Alarm, including its severity (e.g. $UALRM_SEV[n] = 0 for a
user alarm with warning severity) as usual.
• Once defined, a new Haptic item “User Alarms” will be displayed in the Haptic Setup UIF.
You could change the default vibration pattern.
• When the UALM[n] instruction is executed in a teach pendant program, teach pendant will
vibrate, and a bubble notification will be displayed.
• This allows you to customize your own Haptic vibration event.
The following sample programs can be used to monitor I/O, Registers, or System Variables in
order to post a user alarm and initiate Haptic feedback.
This first example will monitor the state of DI[1] and post a user alarm UALM[1] if the input is
ON. Since UALM[1] has been set up in $UARLM_MSG[1] then it will appear on the Haptic setup
menu and can be enabled to generate a Haptic response when the alarm is posted.
2–42
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–21. Monitoring I/O
This second example will monitor the state of R[123] and post a user alarm UALM[2] if the value
is >= 5000. Since UALM[2] has been set up in $UARLM_MSG[2] then it will appear on the
Haptic setup menu and can be enabled to generate a Haptic response when the alarm is posted.
2–43
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–22. Monitoring Registers
This third example will monitor the state of the system variable $MCR.$genoverride and post
a user alarm UALM[3] if the value is not equal to 100. Since UALM[3] has been set up in
$UARLM_MSG[3] then it will appear on the Haptic setup menu and can be enabled to generate
a Haptic response when the alarm is posted.
2–44
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–23. Monitoring System Variables
2–45
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–24. I/O
From the Haptic Setup screen, you can define I/O or FLG (which does not require physical I/O) to
create your own haptic event.
2–46
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–25. Prompt Box
After a program is paused, if cursor is moved to a different line, and you attempt to resume the
program, the prompt box will trigger haptic vibration. No notification message is displayed since
prompt box already has the message.
2–47
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–26. @Taught Position
During Single Step, when robot reaches a taught position, haptic vibration is triggered. No
notification is provided since @ sign is already displayed at the program taught position
2.5.7 Material Handling Haptic Functions
Haptic iPendant functions are integrated into HandlingTool to enhance the material handling
user’s teaching experience:
• SKIP instructions
• Interference Zone
• Delta robots (e.g. M-3iA) Slowdown Zone
• Use of I/O, FLG to trigger Haptic feedback for
— Proximity sensing
— Force > Threshold
• Vision
— Parts / Offset NOT found: Use FLG to trigger the Haptic iPendant
• Learning Path Control (for small shape cutting)
2–48
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–27. Skip Condition
• Teach Pendant vibrates when SKIP condition is detected during motion
— including SKIP, High Speed SKIP, Touch SKIP
• SKIP instruction could be used to
— detect tooling contact with a part
— servo gripper engaging a part
— proximity sensor detecting a target is in range
— detect events using a variety of skip conditions, such as
– I/O, system variable change, Error Number
2–49
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–28. Skip Condition
• It could be challenging to look at the robot and the teach pendant at the same time to see when
SKIP condition is detected, the Haptic iPendant allows you to ‘feel’ it when it happens.
2–50
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Interference Zone
Figure 2–29. Interference Zone
Interference zones (available in R759 Intelligent Interference Check) are invisible. Haptic Teach
Pendant allows user to ‘feel’ the zone, it
• vibrates when robot enters the zone
• vibrates with another pattern when robot exits the zone
2–51
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–30. Delta Robot Slowdown Zone
• As M-3iA extends out, its speed is automatically adjusted.
• The Haptic iPendant vibrates when it enters the slowdown zone.
• It vibrates with a different pattern when it exits slowdown zone.
2–52
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–31. Vision Not Found
Vision NOT found
Vision Get Offset VR[1], JMP LBL[1]
..
LBL[1]
F[1] = ON <— Use FLAG to trigger Haptic Pendant
and alert user
2–53
2. iPENDANT OPERATIONS
Figure 2–32. Force Sensing
Note Force Sense: Monitor if
• Force Sense Analog value > Threshold,
• If so, robot is pressing too hard on part
• Use FLG to trigger Haptic iPendant to alert user
2–54
MAROUHT9102171E REV F
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Learning Path Control R816 — Small Shape Cutting
Figure 2–33. Learning Path Control Shape Cutting
Haptic iPendant alerts user setup check for Learning Path Control
• If not in AUTO mode
• If speed override < 100%
At the end of Learning, the Haptic iPendant would also alert you if
• The tolerance is within the specified threshold
• The learning results fail to converge
2.6 STATUS
2.6.1 Status Bar Displays
The status bar displays dynamic controller and robot status information. and Table 2–17 describes
each kind of status.
Figure 2–34 displays the following status information.
2–55
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–34. Status Bar Display
Table 2–17. Status Bar Display Items
STATUS ITEM
DESCRIPTION
Status Indicators
The teach pendant status indicators indicate the system condition when you are
using the teach pendant to control the system.
•
Busy indicates that the controller is processing information.
•
Step indicates that the robot is in step mode.
•
HOLD indicates that the robot is in a hold condition. HOLD is not on
continuously during a hold condition.
•
FAULT indicates that a fault condition has occurred.
•
Run indicates that a program is being executed.
•
The last three indicators are application-specific
Alarm Status Line
This item displays the current alarm. Touching the Alarm or Program Status Line will
be the same as pressing the DIAG key, which can be used to display diagnostics for
the current alarm.
Program Status Line
This item indicates the name of the currently executing program, and the current
line number and status. It also indicates the mode AUTO, T1, or T2.
Motion Information
This item lists the following information:
Speed Override
2–56
•
Coordinate System
•
Group
•
Subgroup
The speed override is a percentage of the maximum speed at which the robot
will move. A speed override of 100% indicates that the robot will move with the
maximum possible speed.
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
2.6.2 Status indicators
Teach pendant status indicators indicate the current system condition. Refer to the Status chapter
of your application-specific Setup and Operations manual for more information. If you are using
PalletTool, refer to the HandlingTool Setup and Operations Manual .
2.6.3 LEDs
The iPendant has the following LEDs.
Table 2–18.
LED
Description
FAULT
This LED indicates that a fault condition has occurred.
POWER
This item indicates controller power is on.
2.6.4 Display Equip
This item is only used in applications that are controlling multiple equipments. Some menus in
these applications are equipment related and change based on which equipment is chosen. The
Display Equip item is used to select the equipment number being referenced by these menus.
Display Equip applies to the menu in the pane that currently has focus. The equipment number
selected is displayed in the focus bar for that pane.
If your system uses multiple equipment, refer to the multiple equipment section in this manual
for more information.
2.7 HELP
Assistance with screens and menu functions is provided
• In iHMI Guides
• On the iPendant screen
2.7.1 MORE INFO
iHMI Guides display additional help when the MORE INFO button is pressed.
MORE INFO is available to describe a topic in more detail, such as providing more information
about coordinate systems or network setup.
2–57
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
2.7.2 Help and Diagnostics
You can use the HELP/DIAG key to display help and diagnostics for the data displayed in the
current window on the iPendant. You can also select the HELP/DIAGNOSTICS menu item on
the DISPLAY popup menu.
To display help information for the currently active window, press the HELP/DIAG key. To
display diagnostic information, press the SHIFT key and the HELP/DIAG key.
To use the HELP/DIAGNOSTICS menu item, refer to Table 2–19 .
Note If help is already displayed when you select another help function, the previous menu will
be displayed. You must select help again to display the help menu.
Table 2–19. HELP/DIAGNOSTICS Menu Items
ITEM
DESCRIPTION
Help
This item displays help for the currently active window.
Context Help
This item displays context sensitive help, if it exists, for the currently active window.
Diagnostics/Diagnostics
Home
Diagnostics will display alarm documentation for the active alarm. Diagnostics Home will
display the Alarm Documentation Home page.
Menu Help
This item displays the menu tree and provides links to all the help files menus other
than the current menu.
While in help and diagnostics screen, most of the browser screen keys can be used to navigate
the displayed web page. Refer to Table 2–8 .
Note The Help and Diagnostics information display location depends on the current window mode
and the active window. Table 2–20 lists the display locations for each available window mode.
Table 2–20. Help/Diag Information Display Locations
Window Mode
Display Location
Single
The Help/Diag information replaces the current information in the window.
Treeview and Status/Single
The Help/Diag information replaces the current information in window on the right.
Double
The Help/Diag information replaces the information in the inactive window (Window
without focus) and makes HELP/DIAG window the active window.
Triple
The Help/Diag information replaces the current information in the window without
focus and makes the HELP/DIAG window the active window. For example in triple
mode, the left window is window 1, the upper right window is window 2, and the lower
right window is window 3. Then, if the active window is window 2, the Help/Diag
information replaces the contents of window 3. If the active window is window 3, the
Help/Diag information replaces the contents of Window 1, and so forth.
Note To display the previous screen after Help has been displayed , press PREV.
To display Help information for any screen,
2–58
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
• Press the HELP key while in that screen. To return to the previous screen, press the
HELP/DIAG key or press SHIFT and the HELP/DIAG key at the same time.
• Press SHIFT, and DISP to display the DISPLAY popup menu. Select Help/Diagnostics. Move
the cursor to the right and select Help. Help for the current menu will be displayed.
To display context sensitive help if it exists for a screen ,
• Press the HELP key while in that screen. To return to the previous screen, press the
HELP/DIAG key or press SHIFT and the HELP/DIAG key at the same time.
• Press SHIFT, and DISP to display the DISPLAY popup menu. Select Help/Diagnostics.
Move the cursor to the right and select Context Help. Context sensitive help for the current
menu will be displayed.
To display diagnostic information ,
• Press the SHIFT key and the HELP/DIAG key. A popup screen, similar to the one shown
below, will be displayed. This screen contains the program status, the most recent alarm,
and the cause code if one exists.
To display the diagnostic information for that specific alarm, press CONTINUE. Cancel
will return to the previous screen.
• Press SHIFT, and DISP to display the DISPLAY popup menu. Select Help/Diagnostics. Move
the cursor to the right and select Diagnostics or Diagnostics Home.
In addition, if you are in an ALARM screen and press the SHIFT + HELP/DIAG key you will
get the diagnostic information for the alarm that you have selected. To exit the diagnostic screen
and return to your previous screen, press either the HELP/DIAG key or press SHIFT and the
HELP/DIAG key at the same time. You can also press PREV to display the previous screen.
To display Menu Help ,
2–59
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
• Press the SHIFT key and the DISP key, select Help/Diagnostics and select Menu Help. This
displays the menu tree and provides links to all the help files menus other than the current
menu.
2.8 ADDITIONAL iPENDANT FUNCTIONS
2.8.1 Document Viewer
2.8.1.1 Overview
The iPendant Document Viewer allows viewing of documents in proprietary file formats.
The following file formats are supported:
Adobe® Acrobat® Portable Document Format (PDF) v1.3 and later.
2.8.1.2 Opening a Document
Documents can be opened on any local R-30iB Plus storage device.
Procedure 2-3 Open Document
1. Press MENU.
2. Select FILE.
3. Press F5, [UTIL]
4. Select Set Device.
5. Select a device.
6. Press F2, [DIR]
7. Select a filter.
8. Select the file to view.
9. Press ENTER.
2.8.1.3 Navigating with the Document Viewer
Figure 2–35 shows a typical single pane view of a document open in the Document Viewer.
2–60
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–35. Document Viewer
Three function keys are available when the Document Viewer has focus.
Table 2–21. Document Viewer Function Keys
Function Key
Description
FIT PAGE
Zoom so that the entire page is visible within the Document Viewer window.
this mode allows quick navigation between pages of a document.
ZOOM
The up and down arrow key will increase and decrease the zoom level
respectively.
PAN
The arrow keys will pan the display. Touch screen gestures will always pan
the display.
JUMP
The JUMP function key will display a list of bookmarks in the document.
Selecting a bookmark will jump to that location in the document.
2–61
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
2.8.2 Menu Favorites
Menu Favorites allows you to generate and store a list of menus that you display most often.
There are two ways to add a menu favorite.
Use Procedure 2-4 to set up your Menu Favorites using the MENU Dialog box. Use Procedure 2-5
to set up your Menu Favorites list using the DISPLAY Menu. Use Procedure 2-6 to modify the
Menu Favorites list.
Procedure 2-4 Adding Menus to the Menu Favorites using MENU Dialog Box
1. Display the menu that you want to add as a favorite menu.
2. Press the MENU key.
3. If the dialog box is shown at the bottom of the screen, you may press and hold the button or
function key which you want to set for three (3) seconds. The currently displayed menu will
be added to the button with an icon. You can overwrite existing buttons. In addition, you
can press the right arrow button or next key to display and set the next five (5) buttons. The
PREV key will cancel the Dialog Box and the Menu popup.
See Figure 2–40 for an example.
Figure 2–36. Menu Favorites
2–62
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
4. To display a menu stored in the Menu Favorites press MENU, and choose the menu by
pressing the button or function key.
Procedure 2-5 Adding Menus to the Menu Favorites List using DISPLAY Menu
1. Display the menu that you want to add as a favorite menu.
2. Press SHIFT and then press the DISP key.
3. Select Menu Favorites.
4. Move the arrow keys to Add current. The currently displayed menu will then be added
to the list.
See Figure 2–37 for an example.
Figure 2–37. Add Current Menu Favorite
5. To display a menu stored in the Menu Favorites list press SHIFT, and then the DISP key.
Move the cursor to Menu Favorites and choose the menu from the list.
Procedure 2-6 Modifying Menu Favorites
1. Press MENU.
2–63
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
2. Select SETUP.
3. Press F1, [TYPE].
4. Select iPendant Setup. You will see the iPendant General Setup Screen.
5. Select Menu Favorites Setup.
You will see a screen similar to the following.
Figure 2–38. MENU Favorite Setup
Note Menu Favorites, after they have been cleared, cannot be recovered.
6. To clear one entry from the Menu Favorites list, move the cursor to the view you want to
clear, and press F4, CLEAR. The Menus Favorites list will be redisplayed automatically.
7. To clear ALL entries from the Menus Favorites list, press SHIFT and F4, CLEAR. The
Menu Favorites list will be cleared automatically.
8. To disable the Menus Favorites dialog box which is displayed by the MENU popup,
clear the Menu Favorites checkbox.
9. To enable the Menus Favorites dialog box which is displayed by the MENU popup, check
the Menu Favorites checkbox.
2–64
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
10. To display the main iPendant Setup menu, press F2, BACK.
2.8.3 Menu History
The Menu History keeps track of the last eight menus that have been displayed. This list is
generated automatically and cannot be modified. You can, however, select a name on the list
and that screen will be displayed.
See Figure 2–39 .
Figure 2–39. Menu History
2.8.4 Multi-Pane Edit
A teach pendant program must be moved to the left-hand window for FWD/BWD to work. The
DISPLAY menu will contain an EDIT<->EDIT entry. While in the left-hand window, the entry is
only enabled if two windows are active. The entry is always enabled while in a right-hand window.
The entry is available even if you are not in the EDIT screen. When pressed, the programs are
swapped and the EDIT screens are automatically entered.
2–65
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
2.8.5 Other iPendant Guidelines
Editing Guidelines
• LOOK/MONITOR mode is available in any window.
• Each window can have a unique default program.
• Selecting a teach pendant program from the SELECT screen in the left-hand window will
cause that program to be the default program for that window ($TP_DEFPROG).
• Selecting a teach pendant program from the SELECT screen in the right-hand window will
cause that program to be the default program for that window ($UI_DEFPROG[1]).
• Selecting a teach pendant program from the SELECT screen in the lower right-hand window
will cause that program to be the default program for that window ($UI_DEFPROG[2]).
• The Status line will always show the default program for the left-hand window even if it
does not have focus.
• The Editor title line shows the program that is being edited.
• The program selected will be retained during cycle power. The current line number will only
be retained during cycle power for the left-hand window during hot start. The right-hand
windows do not retain the current line number.
• The same program can be edited in multiple windows. The cursor is independent. When a
change is made in one window, the change is immediately reflected in the other window. Both
windows can make changes to the same program. This is useful for copy and paste within
the same program.
• The 3 windows will share the same copy and paste buffer. This provides the ability to copy
and paste from one TP program to another.
• Each window has its own undo and redo buffers so multiple edit sessions will not affect
each other.
• TP FWD/BWD is only supported in the left-hand window. If focus is in a right-hand window,
then the warning “TPIF-166 FWD/BWD in left window only” is posted.
• The program must be moved to the left-hand window for TP FWD/BWD to work. The
DISPLAY menu will contain EDIT->EDIT entry. While in the left-hand window, the entry
is only enabled if 2 windows are active. The entry is always enabled while in a right-hand
window. The entry is available even if you are not in the EDIT screen. When pressed, the
programs are swapped and the EDIT screens are automatically entered.
Operational Guidelines
• The system variable $UI_CONFIG.$recovermenu is provided to display the menus in the
same state they were in when the controller was turned off.
• After the controller is turned off and then on again, the editor configuration should not change
if $UI_CONFIG.$recovermenu is set. Refer to Table 2–22 .
2–66
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Table 2–22. $UI_CONFIG.$recovermenu
Setting
Description
0
At Cold start the system will display the "Hints" screen in single window mode.
1
At Cold start the system will display the last screen displayed before power down in
single window mode.
2
At Cold start the system will display the "Hints" screen in all windows in whatever window
mode was used at power down.
3
Both 1 and 2.
4
At Hot start the system will display the last screen displayed before power down in single
window mode.
6
Both 4 and 2. This is the default setting.
2.8.6 Popup Menus
To display the popup menus in the currently active window, press the MENU key. This will
display the first level popup menu.
See Figure 2–40 .
2–67
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–40. Menu Favorites
Use the up, down, left, and right arrow keys to select the desired menu item. When a second
menu exists for the selected item, use the right arrow key to move to the fly out menu. Then
use the up and down arrow keys to select an item on that menu. To display the menu item that
you have selected, press ENTER.
Note You can also type the number of the item you have selected and press ENTER to display
that menu item.
2.8.7 Screen Customizations
2.8.7.1 Overview
The iPendant screen can be customized using the following tools:
• EasyPanel environment
• PanelWizard
2–68
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
• HMI screen customizations
• Displaying Web Page Macros
• Customizing User Menus
2.8.7.2 Easy Panel Environment Setup
Overview
The i Pendant can be easily customized to fit your needs. These custom screens can be used
to display data, variables, I/O, or other system information specific to your application. The
EasyPanel environment is used for this development, and consists of a set of custom “OBJECTS”
or “CONTROLS” that are specially designed to work with the iPendant, the FANUC America
Corporation Robot Controller, and the Microsoft® Office SharePoint Designer 2007 ™ Web
development environment.
Requirements
The following items are required to develop and run custom screens on the iPendant in the
EasyPanel environment:
• iPendant Controls installed on the PC .
• Microsoft® Office SharePoint Designer 2007 ™ (freeware) installed on the PC. Do not use
Microsoft® Office SharePoint Designer 2010 ™ since it is not a generic HTML editor.
• Microsoft® Expression Web ™can also be used.
• The IPCC (Internet Protocol Connectivity and Customization) Option loaded on the controller
if you want to use Remote Operation of the iPendant. Refer to the Internet Options Manual
for more information.
Configuring Your PC
In order to develop custom pages you will need to download and install the iPendant Controls
setup from the FANUC America Corporation Customer Resource Center. Refer to the Internet
Options Manual for instructions.
After the controls are installed you can begin to create custom screens for the iPendant. Review
the iPendant Customization Guide. This guide will provide further instructions on setting up
SharePoint Designer 2007, using the iPendant Controls, and loading and accessing your custom
screens.
2.8.7.3 Panel Wizard
The Panel Wizard option allows you to use the controller to create up to four operation panels to
be displayed on the i Pendant.
The iPendant Customization Guide will provide further details on each control created by the
Panel Wizard. Use Procedure 2-7 to set up the Panel Wizard.
2–69
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Procedure 2-7 Setting Up the Panel Wizard
1. Press MENU.
2. Select BROWSER.
3. Press F1, [TYPE].
4. Select Panel Wizard. You will see a screen similar to the following.
Figure 2–41. Panel Wizard
5. Select Start Wizard. You will see a screen similar to the following.
Note Double Panel mode will be displayed automatically.
2–70
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–42. Start Panel Wizard
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 Figure 2–43 for a flowchart overview of
the steps required to create an operator panel. Refer to the iPendant Customization Guide
for more information.
See Figure 2–43 for a flowchart that describes the sequence of operations for using the
Panel Wizard.
2–71
2. iPENDANT OPERATIONS
Figure 2–43. Create Operation Panel Flowchart
2–72
MAROUHT9102171E REV F
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
2.8.7.4 iPendant HMI Screen Customizations
When you are using HMI on the iPendant, you can customize your teach pendant screens to fit
your application. The HMI screen customization feature allows you to set the available menu
options to display a specific set of HTM or STM menus. You can either display the default set of
menus or, you can generate your own set of .HTM or .STM menus to display.
The user menus are stored in
• FRS:\USRHMIQK.STM — Quick Menu
• FRS:\USRHMIFL.STM — Full Menu
• FRS:\REMHMIQK.STM — Quick Menu for remote connections
• FRS:\REMHMIFL.STM — Full Menu for remote connections
The default pages that are created each time the controller is turned on are
• FRS:\JIPHMIQK.STM — Quick Menu using JavaScript with icons
• FRS:\JIPHMIFL.STM — Full Menu using JavaScript with icons
• FRS:\IPHMIQK.HTM — Quick Menu using table of links
• FRS:\IPHMIFL.HTM — Full Menu using table of links
The operator does not have access to the FRS:\ device so that the files cannot be accidentally
modified or deleted. If many web pages and images are linked together, the best way to make an
HMI out of your site is to submit a web page that redirects to your main web page on FR:\ device.
main.htm
<html><head>
<meta http-equiv=refresh content="0; URL=/fr/mainmenu.stm">
</head><body></body></html>
Submit main.htm as your HMI. It redirects to mainmenu.stm which is on FR:\ device. If you do
this all web pages and images are together in one directory. SharePoint Designer can easily find
them and you can copy all files to FR:\ device when you are ready to try it on the robot.
User Procedure 2-8 to create a user-defined HMI Full or Quick Menu. Use Procedure 2-9 to define
and set up HMI Full, Quick, and Remote Menus.
Procedure 2-8 Creating a User-Defined HMI Full or Quick Menu
Conditions
• You are using the iPendant.
• The default device is set appropriately. Refer to the “Program and File Manipulation Chapter”
in the application-specific Setup and Operations Manual for more information.
1. Press MENU.
2. Select SETUP.
2–73
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
3. Press F1, [TYPE].
4. Select iPendant Setup.
You will see a screen similar to the following.
Figure 2–44. iPendant General Setup Screen
5. Select iPendant HMI Setup. You will see a screen similar to the following.
2–74
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–45. iPendant HMI Setup Screen
6. By default, the iPendant HMI Full Menu is stored in JIPHMIFL.STM and IPHMIFL.HTM
(non-JavaScript version) and the iPendant Quick Menu is stored in JIPHMIQK.STM and
IPHMIQK.HTM (non-Javascript version). You can make a copy of these files and then edit
them to make your own Full and Quick HMI menus. To make a copy of the default files,
press F4, BACKUP. This will save a copy each of the files on to the default device.
7. Move the copied file to a personal computer so that you can edit the file.
Caution
In the HMI Full Menu file, you must have the iPendant Setup as a menu
item. In the HMI Quick Menu file, you must have Password Setup as
a menu item if passwords are available on your controller. Make sure
to retain these menu items as appropriate; otherwise, the generated
menu files will not operate properly.
8. Add or remove menu items within this file as necessary.
9. Save the file with a new name if necessary.
10. Move the file back to the controller.
2–75
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
11. Use Procedure 2-9 to set up and use the file you just created.
Procedure 2-9 Setting up the iPendant HMI Full, Quick, and Remote Menu Selections
Conditions
• You are using the iPendant.
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select iPendant Setup.
5. Select iPendant HMI Setup.
You will see a screen similar to the following.
Figure 2–46. iPendant HMI Setup Screen
6. You can now select HTM or STM files to be displayed in place of Full Menus, Quick Menus,
Remote Full Menus, and Remote Quick Menus.
2–76
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
a. To choose an HTM or STM file that resides on the default device on the controller,
click the blue bar below the desired menu you want to set. A list of available HTM
and STM files will be displayed.
b. Select the desired file, and press ENTER.
c. Continue selecting files for each Menu (User HMI Full, User HMI Quick, Remote
HMI Full, and Remote HMI Quick).
d. Press F3, SUBMIT. The names in the blue bar will be erased showing you that they
have been set.
7. To activate the selected Full or Quick HMI Menus, or the Remote Full or Quick HMI
Menu modes , click the box next to the selection at the bottom of the screen, then press F3,
SUBMIT. The check box will disappear after you press F3 to show you that the selection
has been made.
If you have set the HMI Full Menus, when you press MENU, you will see a screen similar to
the following.
Figure 2–47. iPendant FULL Menu
If you have set the HMI Quick Menus, when you press FCTN and select QUICK/FULL
MENUS, you will see a screen similar to the following.
2–77
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–48. iPendant Quick Menu
8. To deactivate the SELECT, EDIT, or DATA key during HMI mode, scroll down then
click the box next to the desired key name. By default the TYPE key is disabled. To activate
the TYPE key during HMI mode, scroll down then click the box. See the following screen
for an example.
Figure 2–49. Disabling the Data Key
2–78
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
When you have finished clicking the desired key, press F3, SUBMIT. The check box will
disappear after you press F3 to show you that the selection has been made.
Note Each time the HMI Setup menu is displayed, check marks will be displayed showing
you the current selection.
9. To back up all HMI files to the default device, press F4, BACKUP. This will copy all HMI
files from FRS: to the default device using the overwrite function.
10. To display the previous menu, press F2, BACK.
2.8.7.5 Displaying Web Page Macros
The Menu Utility option (R577) provides a macro called DSP_WEBP.MR.
Users can call this macro with a parameter in their teach pendant programs.
Usage: CALL DSP_WEBP(1)--Displays the Favorites menu
CALL DSP_WEBP(2)--Displays the first user created web page in the [TYPE] pull-up
Parameters 2-11 are for displaying user-created web pages (created with or without the Panel
Wizard).
The menu will be displayed only if you are using an i Pendant. It will always be displayed on the
active pane on the i Pendant.
2.8.7.6 Customizing User Menus
Overview
The Custom User Menu Function allows you to add additional menus in most of the MENUS
categories. You can use the Custom User Menu Function to:
• Run a teach pendant program
• Display a menu using a KAREL program
• Display a custom web page on the iPendant
Running a Teach Pendant Program
To run a teach pendant program from a customized menu, you must set the following system
variables:
• $CUSTOMMENU[n ].$TITLE
• $CUSTOMMENU[n ].$PROG_NAME
For example, to run a program called PERCHMOV by selecting an item on the EDIT menu called
“Move to Perch,” you would set the system variables as follows:
2–79
2. iPENDANT OPERATIONS
$CUSTOMMENU[3].$TITLE :
$CUSTOMMENU[3].$PROG_NAME :
MAROUHT9102171E REV F
“Move to Perch”
“PERCHMOV”
Note For more information on displaying and setting system variables, refer to Section 11.20 .
Refer to Section 2.8.7.6 for the system variable settings used for teach pendant programs.
Displaying a Menu Using a KAREL Program
Note For R-30iB Plus, R-30iB, and R-30iB Mate controllers, the KAREL option must be
installed on the robot controller in order to load KAREL programs.
You can use the Custom Menu Function to display a menu programmed using KAREL. The
KAREL program must include the following processes:
• DISCTRL_FORM or DISCTRL_TBL can be used to display a form or table.
• The term mask should contain kc_f1_type. This will allow the KAREL form or table to
process the F1, [TYPE] menu selection. The mask is defined in klevkmsk.kl.
• The F1 key should be labeled [ TYPE ].
• The KAREL program can remain in the form or table until the user selects a new menu. In
this case the KAREL program should exit.
• Another option is for the KAREL program to call FORCE_SPMENU to display another menu.
You must also set the following system variables:
• $CUSTOMMENU[n ].$TITLE
• $CUSTOMMENU[n ].$PROG_NAME
• $CUSTOMMENU[n].$OPTION = SPI_SFMISC
SPI_SFMISC is 31
If running the KAREL program from the EDIT menu, you must call
FORCE_SPMENU(device_stat, SPI_TPUSER2, 1) before writing to the screen.
This forces the teach pendant into the USER2 menu.
For example, to run a program called PERCHSET by selecting an item from the UTILITY menu
called “Set up Perch,” you would set the system variables as follows:
$CUSTOMMENU[10].$TITLE : “Set up Perch”
$CUSTOMMENU[10].$PROG_NAME : “PERCHSET”
$CUSTOMMENU[10].$OPTION: 31
2–80
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Note For more information on displaying and setting system variables, refer to Section 11.20 .
Refer to Section 2.8.7.6 for the system variable settings used for KAREL programs.
Displaying a Custom Web Page on the iPendant
You can use the Custom Menu Function to display a custom web page on the iPendant. The 8.3
file extension of the web page is stored in $PROG_NAME. If $PROG_NAME contains a .htm
or .stm, then the system will look for the file on the FR: device (customer), or on FRH:CGTP
(application). If it exists, then the iPendant will display the web page. The title specified in the
web page within the title tags (<title> </title>) will be displayed in the focus bar on the iPendant.
The number of title characters displayed on the focus bar is limited to 33. If the specified title is
longer than 33 characters, it will be truncated.
When the web page is displayed, it will run within its own menu so it has a unique sofpart ID
and screen ID. The [TYPE] key will be available and you will remain in the MENU category.
The web page will be displayed until a new MENU is selected.
For example, if you set the following system variables:
$CUSTOMMENU[10].$TITLE :
$CUSTOMMENU[10].$PROG_NAME :
“Utility 1”
“custom.stm”
then, in the UTILITIES Menu, “UTILITY 1” is displayed as a [TYPE] menu choice. If you select
this item and the file custom.stm exists on the FR: device, then the web page will be displayed.
System Variable Settings
Table 2–23 lists the system variable settings that can be used to set up custom user menus to run
teach pendant programs, run KAREL programs, and display custom Web pages.
Table 2–23. System Variable Settings
System Variable
Top Level Menu
Softpart ID
Screen ID
Used for Teach Pendant or KAREL programs Only
$CUSTOMMENU[1]
EDIT [INST]
64
1
$CUSTOMMENU[2]
EDIT [INST]
64
1
$CUSTOMMENU[3]
EDIT F2
64
1
$CUSTOMMENU[4]
EDIT F3
64
1
$CUSTOMMENU[5]
EDIT F4
64
1
Used for teach pendant, KAREL programs, or for Custom Web Pages
$CUSTOMMENU[6]
FCTN
31
246
$CUSTOMMENU[7]
FCTN
31
247
$CUSTOMMENU[10]
UTILITIES
31
250
$CUSTOMMENU[11]
UTILITIES
31
251
2–81
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
System Variable
Top Level Menu
Softpart ID
Screen ID
$CUSTOMMENU[12]
TEST CYCLE
31
252
$CUSTOMMENU[13]
MANUAL FCTNS
31
253
$CUSTOMMENU[14]
MANUAL FCTNS
31
254
$CUSTOMMENU[15]
ALARM
31
240
$CUSTOMMENU[16]
ALARM
31
239
$CUSTOMMENU[17]
I/O
31
238
$CUSTOMMENU[18]
I/O
31
237
$CUSTOMMENU[19]
SETUP
31
236
$CUSTOMMENU[20]
SETUP
31
235
$CUSTOMMENU[21]
FILE
31
234
$CUSTOMMENU[22]
DATA
31
233
$CUSTOMMENU[23]
DATA
31
232
$CUSTOMMENU[24]
STATUS
31
231
$CUSTOMMENU[25]
STATUS
31
230
$CUSTOMMENU[26]
STATUS
31
229
$CUSTOMMENU[27]
STATUS
31
228
$CUSTOMMENU[28]
SYSTEM
31
227
$TX_SCREEN[1]
BROWSER
381
10
$TX_SCREEN[2]
BROWSER
381
11
$TX_SCREEN[3]
BROWSER
381
12
$TX_SCREEN[4]
BROWSER
381
13
$TX_SCREEN[5]
BROWSER
381
14
$TX_SCREEN[6]
BROWSER
381
15
$TX_SCREEN[7]
BROWSER
381
16
$TX_SCREEN[8]
BROWSER
381
17
$TX_SCREEN[9]
BROWSER
381
18
$TX_SCREEN[10]
BROWSER
381
19
Used for Custom Web Pages Only
2.8.8 Software Keyboard
2.8.8.1 Robot Menus
You can use the software keyboard to input a character string. In order to use the software
keyboard, set the cursor to the item that you want to input a character string, then press ENTER.
Set the cursor to the item Options in the menu, then press F5, KEYBOARD. See Figure 2–50 .
2–82
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–50. Options Menu Item
The menu to input characters is displayed as shown in Figure 2–51 .
2–83
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–51. Software Keyboard Text Display
When the keyboard is activated Figure 2–52 shows that the current text for the item is displayed
on the top and the text string is highlighted. Inputting any character will clear the string and start
over. Pressing the arrow keys on the keyboard (right arrow for example) will clear the highlight
and allow you to append to the string.
Figure 2–52. Software Keyboard
2–84
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
If the length of the string is longer than what can be displayed in the text box the < indicates that
the text is extended to the left or the right of the text box. Touching the text will move the cursor
to the touched area of the text. The arrows keys can be used to move left and right in the text box.
Selecting up arrow moves the cursor to the beginning of the text, down arrow moves to the end.
In order to input characters, move the cursor to the character that you want to input by the arrow
key on the teach pendant, then press ENTER key on the teach pendant. If the teach pendant has a
touch panel, you can input the character by touching the character on the touch panel.
After you finish the input, select the “Exit” button or press F5, EXIT to exit the software keyboard.
If you want to cancel the input characters and return to the previous screen, select the “Cancel”
button or PREV hardkey.
In order to change the input mode, select “abc” or “123” on the software keyboard. When “abc” is
selected, the input mode becomes the alphabetic character input mode.
Figure 2–53. Keyboard Lowercase Letters
When SHIFT on the software keyboard is pressed, the character on the software keyboard is
changed from lower to upper case.
2–85
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–54. Keyboard Uppercase Letters
When “123” is selected, the input mode becomes the numeric character and symbol input mode.
2–86
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–55. Keyboard Numbers
Some teach pendant menus include the use of the numeric entry keypad. This allows the touch
panel to be used for numeric entry but additionally it allows the user to see the limits for the data
being entered. The numeric keypad on the pendant still works in this context.
2–87
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–56. Numeric Keyboard
2.8.8.2 Web Menus
Entering text in standard Web form menus provides a slightly different set of choices. Figure
2–57 shows the result when a text input field is selected on the browser. By default this does not
bring up the ASCII keyboard. This allows numeric data to be entered without having to bring
up the full keyboard.
2–88
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–57. Web Form Entry
The softkeys function as follows:
• F1 – KEYBOARD brings up the keyboard in MANUAL mode.
• F2 – AUTO set the keyboard to come up automatically on string input fields
• F3 – MANUAL set the keyboard to not come up automatically.
• F4 – SPACE put a space character in the string
• F5 – EXIT from the keyboard and accept the result.
Figure 2–58 shows the keyboard once activated in this mode. Note that the arrow key on the
keyboard can be used to cursor to the missing “i” character and correct it. Or, you can touch
the screen to set the input cursor to that point.
The software keyboard is displayed as shown in Figure 2–58 .
Figure 2–58. Software Keyboard
2–89
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
2.8.8.3 Vision Menus
Vision menu string input is very similar to Web form input. The difference is that the keyboard
appears automatically for ASCII string keyboard input and does not appear for numeric input. For
numeric input, the number is entered exclusively from the pendant keypad.
Figure 2–59. Vision ASCII String Input Field
Entering text for a vision menu is very similar to standard menus except that the SPACE and
EXIT are part of the keyboard itself.
2–90
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–60. Vision Keyboard
2.8.9 Top Menu
2.8.9.1 Overview
The Top Menu is displayed when + MENU is pressed. The Top Menu will take over the screen
even if pressed from a multiple pane mode. PREV will cancel the Top Menu and restore whatever
was shown before. However, the Top Menu is not considered a popup menu. The controller may
power up with the Top Menu or application code can force the Top Menu.
The Top Menu has up to 9 icon selections which are shortcuts to the selected operation. The
number keys can be used as shortcuts if a touch panel is not available. After selecting a shortcut,
the screen will display the menu for the selected operation. The screen may split into several
related panes especially if you have the 4D graphics functionality.
There can be 10 different Top Menus. They are changed using the Function Keys. Each function
key can be password protected and operators are required to enter their username and password
in order to select the function key.
2–91
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–61. Top Menu
2.8.9.2 Top Menu Setup
The Top Menu is a browser menu. It uses an inline style. However, you can change the appearance
of the Top Menu by creating the file FR:\TOP.CSS. For example, to change the backcolor to a
gradient orange color, put the following lines in TOP.CSS.
body {
background: White url(/frh/jcgtp/bg_orgb.png);
}
The Top Menu entries may be configured. Use Procedure 2-10 to insert or change the Top Menu
entries.
Procedure 2-10 Top Menu Setup
1. Press MENU.
2. Select SETUP.
2–92
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
3. Press F1, [TYPE].
4. Select iPendant Setup.
You will see a screen similar to the following.
Figure 2–62. iPendant General Setup Screen
5. Select Top Menu Setup.
You will see a screen similar to the following.
2–93
2. iPENDANT OPERATIONS
Figure 2–63. Top Menu
2–94
MAROUHT9102171E REV F
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–64. Top Menu Setup
6. The buttons on the left side represent each Top Menu page for the 10 function keys. Press the
button to view the Top Menu page.
7. The function key label is shown for each Top Menu page. Press the button to change the
label. Use *level0 - *level8 for the password level names, such as OPERATOR (level 0),
PROGRAM (level 1), SETUP (level 2), and INSTALL (level 8). Levels 3 - 7 are custom
password levels. All password level names can be configured in a password configuration file.
8. The Read-Write Access is shown for each Top Menu page if passwords are installed. The
Read-Write Access field displays all 7 levels: (Level 7, Level 6, Level 5, Level 4, Level 3,
Setup, Program, Operator). A value of 1 indicates that level is granted read-write access. A
value of 0 indicates that level has read-only access.
Press the button to change the read-write access. A dialog box with checkboxes for all 7
levels will be displayed. Checking the box allows read-write access.
2–95
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–65. Read-Write Access
9. Press FACTORY to reset the entire Top Menu back to factory defaults. This can also be
useful after a new option is loaded, since the factory defaults will look for any new options.
10. Press COPY to copy one page to another. If the page already exists, you will be prompted
to overwrite it.
11. Press DELETE to delete an entire Top Menu page. You will be prompted for the page
number to delete.
12. When you press a button, such as F1, you will see a screen similar to the following.
2–96
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Figure 2–66. Top Menu
13. The title is shown on the title line. The icon and text are shown for all 9 shortcuts.
14. Press FACTORY to reset just the current page to factory defaults.
15. Press COPY to copy one number to another. If the number already exists, you will be
prompted to overwrite it.
16. Press DELETE to delete a number. You will be prompted for the number to delete.
17. Press TITLE to change the page title. Use *default for the default title.
18. Press NEXT to view the 2nd set of function keys. Press MENU to create or change a
shortcut for a number. If the number already exists, you will be prompted to overwrite it.
First you will be prompted to select a window configuration. Then for each window you
selected, you will choose a menu. If you do not choose a menu, then only the configuration
will change when the shortcut is selected. The default text and icon will be used.
19. Press TEXT to change the shortcut text. Use *default for the default text.
20. Press ICON to change the icon. You can put images on FR: using 8.3 filenames. If none are
available, then the system icons from FRH:\GUI\ are shown for your selection.
21. The Top Menu entries are stored in $UI_TOPMENU and will be backed up and restored
in SYSUIF.SV.
2–97
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
2.8.10 Universal Serial Bus (USB) Port
A USB keyboard or mouse can be inserted into the USB port on the controller and on the iPendant.
Using a USB hub allows you to connect a keyboard, mouse, and USB stick. The keyboard can be
used for any numeric or text entry.
You can connect a memory stick, mouse, or keyboard to this port, or you can connect a camera for
iRCalibration Vision. Refer to the iRVision Calibration Operator's Manual. See Figure 2–67
Figure 2–67. iPendant with USB Port
2.8.11 User Views
User views can be used to store up to ten commonly used user-defined single or multi-window
displays. For example, if you commonly use the triple pane window and have the ALARM menu,
Cell I/O menu, and the FILE menu displayed, then you would want to define this set of menus as
a user view. After you store a user view, it is named and listed on the User Views menu so that
you can select it for redisplay later. The previous example user view would be listed on the User
Views menu as Alarm|Cell I|File. In addition, the User Views are displayed on a dialog box at the
bottom of the screen with a thumbnail view of the configuration.
Use Procedure 2-11 to add a menu set as a User View. Use Procedure 2-12 to modify the list
of User Views.
2–98
MAROUHT9102171E REV F
2. iPENDANT OPERATIONS
Procedure 2-11 Adding a User View
1. Display the set of menus on the iPendant that you want to add as a view.
2. Press SHIFT and then press the DISP key.
3. If the User Views dialog box is shown at the bottom of the screen, you may press and hold
the button or function key which you want to set for 3 seconds. The currently displayed
menu set will be added to the button. You may overwrite existing buttons. In addition, you
may press the right arrow button or next key to display and set the next 5 buttons. The
left-most exit button or prev key will cancel the Display Menu.
4. If the User Views dialog box is not shown at the bottom of the screen, select User Views in
the Display Menu. Move the arrow keys to Add current. The currently displayed menu set
will be added to the list as Menu (if it is a Single Pane display), Menu|Menu (if it is a Double
Pane display), and Menu|Menu|Menu (if it is a Triple Pane display).
5. Repeat Step 1 through Step 4 for each User View you want to add.
Procedure 2-12 Modifying User Views
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select iPendant Setup. You will see the iPendant General Setup Screen.
5. Select User Views Setup.
You will see a screen similar to the following.
2–99
2. iPENDANT OPERATIONS
MAROUHT9102171E REV F
Figure 2–68. Modifying User Views Screen
Note User Views, after they have been cleared, cannot be recovered.
6. To clear one entry from the User View list , move the cursor to the view you want to clear,
and press F4, CLEAR. The User View list will be redisplayed automatically.
7. To clear ALL entries from the User View list , press SHIFT and F4, CLEAR. The User
View list will be cleared automatically.
8. To disable the User Views dialog box which is displayed by the DISPLAY menu, clear the
User Favorites checkbox.
9. To enable the User Views dialog box which is displayed by the DISPLAY menu, check the
User Favorites checkbox.
10. To display the main iPendant Setup menu , press F2, BACK.
2–100
Chapter 3
iHMI GUIDES
Contents
Chapter 3
3.1
3.1.1
3.1.2
3.2
3.2.1
3.2.2
3.2.3
3.3
3.3.1
3.3.2
3.4
3.4.1
3.5
3.5.1
3.5.2
3.5.3
iHMI GUIDES
.....................................................................................
iHMI GUIDE NAVIGATION .......................................................................
The First Time you use iHMI Guided Setup ............................................
How to Use iHMI Setup Guides ..............................................................
BASIC SETUP ......................................................................................
Overview ..............................................................................................
Initial Setup ..........................................................................................
End of Arm Tool Setup .........................................................................
TEACH .................................................................................................
Creating a Program..............................................................................
Selecting a Program ............................................................................
RUN .....................................................................................................
Monitoring a Running Program ...........................................................
UTILITY ................................................................................................
Backup ................................................................................................
Jog Assist ............................................................................................
Tutorials ...............................................................................................
3–1
3–2
3–2
3–3
3–10
3–10
3–11
3–12
3–13
3–13
3–14
3–15
3–15
3–16
3–17
3–17
3–18
3–1
3. iHMI GUIDES
MAROUHT9102171E REV F
3.1 iHMI GUIDE NAVIGATION
3.1.1 The First Time you use iHMI Guided Setup
FANUC’s iHMI Guides assist novice FANUC robot users with robot setup, creating a program,
and monitoring production. Tutorials are also available to teach you how to perform basic robot
functions.
Figure 3–1 displays the first iHMI Guide Initial Setup screen that is displayed when you start
up your robot.
Note Figure 3–1 will also be displayed if you select Basic Setup from the HOME screen and
then choose Initial Setup.
See Section 3.1.2.4 .
Figure 3–1. iHMI Setup
3–2
MAROUHT9102171E REV F
3. iHMI GUIDES
3.1.2 How to Use iHMI Setup Guides
3.1.2.1 Overview
If you have a touchable iPendant, you can touch the buttons on the screen to activate them. If
you do not have a touch pendant, use the up and down arrow keys to navigate among items on
the screen. Press ENTER to select a button.
3.1.2.2 Sections of the iHMI Guide Screen
The iHMI Guide screens are divided into four sections.
This is shown in Figure 3–2 .
Figure 3–2. Navigating the iHMI Screens
Step Pane
The Step Pane displays a scrolling list of steps needed to perform the setup. The number of steps
displayed varies depending on the type of the guide screen. Subsequent steps may also be added
or changed, depending on the setting content.
3–3
3. iHMI GUIDES
MAROUHT9102171E REV F
See Figure 3–3 .
Figure 3–3. Step Pane Items
As you advance through the steps and make a selection or perform the action displayed in the
Action Pane, press NEXT STEP to continue. Each step will be marked with a checkbox after it is
completed. To repeat a step, press the step name and perform the setup in the Action Pane. When
you are done, press NEXT STEP. When the entire setup is complete, press FINISH.
If you press
or
to step through the pane display.
Action Pane
The Action Pane allows you to make selections or set up information. Press NEXT STEP to
continue after you have made a selection or performed a setup task.
When available, the Action Pane will provide information directing you to perform a task.
See Figure 3–4 .
3–4
MAROUHT9102171E REV F
3. iHMI GUIDES
Figure 3–4. Directional Information
The Action Pane will also indicate at the bottom of the screen additional information about the
selections you are making. Scroll bars will be displayed if the information doesn’t fit on the
screen. Drag the scroll bar up or down to view all of the information. If you don’t have a touch
screen, use the arrow keys to display this additional information.
3–5
3. iHMI GUIDES
MAROUHT9102171E REV F
Figure 3–5. Scroll Bars
Status
The Status bar at the top of the screen displays status for items running in your system.
Refer to Section 2.6.1 .
Softkeys
The Softkeys shown in Table 3–1 are available to assist in the use of the iHMI Guides.
3–6
MAROUHT9102171E REV F
3. iHMI GUIDES
Table 3–1. Softkeys
KEY
DESCRIPTION
Displays the HOME screen (Section 3.1.2.4 ), resets the screen to the previous
display, or will display setup if it hasn’t been performed yet.
Restarts the current guide. The following screen will be displayed:
Press YES to restart the Guide. All changes will be canceled and the screen will
display the original screen. If you do not want to restart the Guide, press NO.
NEXT STEP is displayed after a choice is selected in the Action Pane. When pressed,
activates the choice, and displays the next step screen.
Displays the previous step screen.
Displays the next step screen.
Displays a confirmation that allows you to confirm, yes or no, whether you want to
restart the Guide from the beginning with the default selections.
3–7
3. iHMI GUIDES
KEY
MAROUHT9102171E REV F
DESCRIPTION
When available, displays a screen with more information about the step. Press EXIT
to redisplay the Action for the current step.
When available, exits the MORE INFORMATION screen and redisplays the Action
for the current step.
3.1.2.3 iHMI Guided Setup Process
Finishing iHMI Guided Setup
To finish the iHMI Guided Setup, you must proceed through all of the steps, and then press
FINISH. Sometimes FINISH is shown in addition to NEXT STEP, as in Create a Program Guide.
In this case, there are defaults which will be used to finish the Guide.
See Figure 3–6 .
Figure 3–6. iHMI Guided Setup Process
Exiting iHMI Guided Setup
You can Skip the iHMI Guided Setup if you choose to do so. From the first iHMI Guided Setup
screen, press NEXT STEP twice, then select Skip Guidance and Finish Setup, and press FINISH
to set up your robot without stepping through the iHMI Guides.
See Figure 3–7 .
3–8
MAROUHT9102171E REV F
3. iHMI GUIDES
Figure 3–7. Exit iHMI Guides
Note If you Skip Guidance and Finish Setup in the Initial Setup Guide, both Initial Setup and
End of Arm Tool Setup will be skipped. You can then proceed to Create a Program using iHMI
Guides. The Initial Setup and End of Arm Tooling will not be set up, but you can return and
perform those at any time.
Refer to Section 3.3 .
3.1.2.4 HOME Screen
The HOME screen can be displayed at any time. Whenever you see this icon
corner of the screen, you can touch it to display the HOME screen.
at the bottom left
Select an item on the HOME screen by touching that area as shown in Figure 3–8 . If you do
not have an iPendant with a touch screen, use the up and down arrow keys and ENTER on the
iPendant to move between items on the screen.
Note Your HOME screen might display additional icons to those shown in Figure 3–8 .
3–9
3. iHMI GUIDES
MAROUHT9102171E REV F
Figure 3–8. HOME Screen
Refer to Section 3.2 through Section 3.5 for more information.
3.2 BASIC SETUP
3.2.1 Overview
Basic Setup iHMI Guides step you through Initial Setup and End of Arm Tool setup for your robot.
If Initial Setup has not yet been performed, iHMI Guides automatically displays Guided Setup on
the iPendant as soon as the controller is turned on.
iHMI Guided Basic Setup has two parts:
• Initial Setup
• End of Arm Tool Setup
Note Both Initial Setup and End of Arm Tool Setup must to be finished before you can proceed to
more advanced iHMI Guided functions such as moving the robot or creating a program.
3–10
MAROUHT9102171E REV F
3. iHMI GUIDES
Figure 3–9. Basic Setup
3.2.2 Initial Setup
Initial Setup helps you define basic robot settings. It is an easy way for you to set up and be aware
of general information such as standard safety considerations, local region, time zone, and basic
network settings. You can use this iHMI Guide to determine your level of network access and
connect your robot to a local network.
Select the Initial Setup icon from the SETUP page, and the iHMI Initial Setup Guide will begin.
Complete each step in the Guide, and press FINISH when you are done. You should finish the
steps in Initial Setup before you perform the steps in End of Arm Tool Setup.
After you press FINISH at the end of Initial Setup, a screen similar to the following will be
displayed.
3–11
3. iHMI GUIDES
MAROUHT9102171E REV F
Figure 3–10. Initial Setup Complete
The screen shown in Figure 3–10 indicates with a checkmark that Initial Setup is done, but End of
Arm Tool Setup still needs to be completed.
3.2.3 End of Arm Tool Setup
End of Arm Tool (EOAT), sometimes called a tool or tooling, is the equipment attached to your
robot that you use to perform work. In this setup you will be specifying details about your kind of
tooling, such as EOAT dimensions, angles, and other applicable parameters so that the robot can
properly make use of the EOAT. You can return to this setup to change any setting at any time. If
you do not want to save your changes, press CANCEL.
Select the End of Arm Tool Setup icon from the SETUP page, and the iHMI End of Arm Tool
Setup Guide will begin. Complete each step in the Guide, and press FINISH when you are done.
After you press FINISH at the end of End of Arm Tool Setup, a screen similar to the following
will be displayed.
3–12
MAROUHT9102171E REV F
3. iHMI GUIDES
Figure 3–11. BASIC SETUP Finished
Note Whenever you see this icon
display the HOME screen.
at the bottom left corner of the screen, you can touch it to
When both Initial Setup and End of Arm Tool Setup are finished, and checkmarks are displayed on
the icons you can proceed perform other tasks such as Creating a Program, or use the Tutorials.
See Figure 3–11 .
3.3 TEACH
3.3.1 Creating a Program
Create Program guides a novice user through the steps of creating a new program using predefined
templates. For a tutorial on how to Create and Edit a program, press the TUTORIAL button from
the HOME screen or refer to Section 3.5.3 .
3–13
3. iHMI GUIDES
MAROUHT9102171E REV F
Note You must finish iHMI Guided Initial Setup and End of Arm Tool Setup before you can
create a program using iHMI Guides. Otherwise, the following message will be displayed:
Figure 3–12. Caution Indicating Setup is Not Complete
If you need information on how to start the iHMI Guided Initial Setup, refer to Chapter 3 iHMI
GUIDES .
If you have completed iHMI Guided Initial Setup, you can then Create a Program. Press CREATE
PROGRAM as shown in Figure 3–13 .
Figure 3–13. First Time You Create a Program
Refer to Chapter 8 CREATING A PROGRAM for information on editing a program. For
information on the Icon Editor, refer to Section 8.9 .
3.3.2 Selecting a Program
After you have created a program, your most recent program name will be displayed as a selectable
choice on the TEACH section of the HOME screen. If the most recent program is called PROG_1,
you will see a screen similar to the one shown in Figure 3–14 .
Figure 3–14. After You Have Created a Program
Choose your most recent program name to edit it.
If you have created more than one program, SELECT PROG. will be displayed on the TEACH
section of the HOME screen. Choose SELECT PROG. to select your program for edit from
a list of created programs.
3–14
MAROUHT9102171E REV F
3. iHMI GUIDES
Figure 3–15. After More Than One Program is Created
Refer to Chapter 8 CREATING A PROGRAM for information on editing a program. For
information on the Icon Editor, refer to Section 8.9 .
Refer to Chapter 8 CREATING A PROGRAM for information on editing a program. For
information on the Icon Editor, refer to Section 8.9 .
3.4 RUN
3.4.1 Monitoring a Running Program
After you have created a program, you can execute it as described in the Execute a Program
tutorial. To monitor the running program or to monitor production, choose MONITOR from the
RUN section of the HOME screen.
You can also refer to Chapter 9 TESTING A PROGRAM AND RUNNING PRODUCTION for
details on test running your program.
Figure 3–16. RUN
A 4D visualization of the robot is displayed with the program lines on the right side. The currently
executing line will be displayed at the top in red similar to the one shown below.
3–15
3. iHMI GUIDES
MAROUHT9102171E REV F
Figure 3–17. Production Monitor
3.5 UTILITY
The UTILITY section of the HOME screen provides easy to use links to common robot utilities.
See Figure 3–18 .
Figure 3–18. UTILITY
3–16
MAROUHT9102171E REV F
3. iHMI GUIDES
3.5.1 Backup
BACKUP provides an iHMI Guided step by step method of backing up programs and other files.
For more information about the files you can back up, refer to Section 12.3.4 .
3.5.2 Jog Assist
Jog Assist allows you to practice jogging and allows you to adjust robot speed and set the
coordinate system easily.
Caution
Your plant might require additional inspections before turning on power to the
robot. To help ensure safe operation, you should familiarize yourself with the
guidelines for your particular installation before you turn on the robot.
Your plant might require additional inspections before turning on power to the
robot. To help ensure safe operation, you should familiarize yourself with the
guidelines for your particular installation before you turn on the robot.
Figure 3–19. Jog Assist Panes
3–17
3. iHMI GUIDES
MAROUHT9102171E REV F
Adjust Jog Speed
Jog speed is a percentage of the maximum speed at which you can jog the robot. The current jog
speed is displayed in the top right corner of every teach pendant screen (in a bright green box). A
jog speed of 100% indicates that the robot will move with the maximum possible jog speed. The
maximum possible jog speed varies depending on the robot model. The jog speed is a percentage
of the maximum speed at which you can jog the robot.
Drag the gray scroll bar to the right to increase jog speed.
Select Coord System
A coordinate system defines how the robot will move.
• JOINT - moves each individual axis of the robot.
• Cartesian - moves the robot in a straight line based on a defined frame of reference:
— JGFRM
— TOOL
— USER
Perform the JOG TUTORIAL (
) to learn more about jogging the robot and selecting
coordinate systems. Refer to Section 3.5.3 .
For information on JGFRM, TOOL, and USER coordinate systems, refer to Section 5.4 .
3.5.3 Tutorials
Three iHMI Guide tutorials provide step by step information on how to perform the following
common robot tasks:
• Jog a robot
• Edit a program
• Execute a program
3.5.3.1 Jog a Robot
The jog a robot tutorial teaches you to jog (manually move) the robot using the iPendant. Each
item you must perform to jog the robot will be indicated on the iPendant.
3–18
MAROUHT9102171E REV F
3. iHMI GUIDES
Figure 3–20. Jog a robot
Note You can display the Jog Tutorial either from the Jog Assist screen or from the TUTORIAL
Utility.
3.5.3.2 Edit a Program
Edit a program tutorial teaches you to create a program using the iPendant.
Figure 3–21. Edit a Program
3.5.3.3 Execute a Program
The Execute a program tutorial teaches you to execute a program you have created using the
iPendant.
Figure 3–22. Execute a Program
3–19
Chapter 4
4D FUNCTIONALITY
Contents
Chapter 4
4.1
4.1.1
4.1.2
4.1.3
4.1.4
4.1.5
4.1.6
4.2
4.2.1
4.2.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.14.1
4.14.2
4.15
4D FUNCTIONALITY ...........................................................................
OVERVIEW ............................................................................................
Introduction ...........................................................................................
Navigation .............................................................................................
Basic Display Concepts .........................................................................
Selected Program ................................................................................
Frames .................................................................................................
Groups .................................................................................................
USER INTERFACE SCREENS .............................................................
VIEWING 4D SCENES ..........................................................................
ADJUSTING THE VIEW ........................................................................
VISUAL JOG ........................................................................................
EDIT NODE MAP SCREEN ...................................................................
SELECT SCREEN.................................................................................
VIEWING TWO DIFFERENT PROGRAMS .............................................
PROGRAM UTILITIES ..........................................................................
TCP TRACE ........................................................................................
FRAME SETUP ....................................................................................
POSITION REGISTERS .......................................................................
REMOTE CONTROLLER DISPLAY .......................................................
DCS 4D VISUALIZATION .....................................................................
4D CUSTOMIZATION ............................................................................
ACCESSING THE 4D DISPLAY FROM A PC .........................................
View Adjustment Mode ........................................................................
Scene Visibility ....................................................................................
4D GRAPHICS IMPORT ........................................................................
4–1
4–2
4–2
4–5
4–8
4–10
4–10
4–10
4–11
4–11
4–13
4–20
4–25
4–28
4–29
4–30
4–32
4–34
4–35
4–36
4–39
4–40
4–41
4–42
4–43
4–43
4–1
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
4.1 OVERVIEW
4.1.1 Introduction
The teach pendant includes a 3D graphics processing engine. This enables the teach pendant to
display the robot, tooling, parts and other cell components in 3D desktop quality graphics. When
coupled with the robot controller internal data, the teach pendant displays otherwise invisible data
in the robot as the 4th dimension of information.
Warning
When moving the robot with the pendant enabled, be sure to watch the
robot instead of watching the teach pendant screen. After the robot is
in a safe state, you can examine the pendant graphics. Otherwise, you
could injure personnel or damage equipment.
Note R764 4D Graphics is required for most of the functionality defined in this chapter.
Warning
4D graphics might not be an accurate representation of the real world,
so actual program verification with the robot arm is still required.
Otherwise, you could injure personnel or damage equipment.
Since the graphics processing occurs on the teach pendant, there is no impact to the performance
of the robot operating system. In the case of displaying the position screen, the text for the
position of the robot is sent to the teach pendant. In the case of 3D display of the robot arm,
similar text is sent to the robot. The conversion of the text into a 3D waving robot model is all
done on the pendant itself.
The robot controller operates in three-dimensional space. Robot positions, frames of reference,
etc., within three-dimensional space are represented to the user by the letters X, Y, Z (location)
and W, P, and R (Orientation). While these letter designations accurately convey positional
information, using 3D graphics to display this significant data makes things much clearer.
The invisible data that can be displayed are:
1. The points (nodes) in a TP program and their logical connections.
2. DCS safety zones.
3. Robot jog settings.
4. Exact path that the robot followed.
5. Logical tool center point (does it match the physical TCP).
6. Frame settings.
7. Position register settings.
8. Interference zones.
4–2
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
9. Line tracking boundaries.
10. Vision camera setups.
In addition to displaying this internal data, the pendant can also display traditional graphics files
provided by ROBOGUIDE. This allows the robot’s surroundings (fences, conveyers, and so forth)
to be displayed. This context allows the operator to see the relationship between the real world and
the graphical world displayed on the pendant.
Screen modes allow the user to view up to three viewing panes on the Teach Pendant screen at any
given time. The 4D menus can be used in any screen mode. In full screen mode, the entire screen
is devoted to displaying 4D data. This has the advantage of showing the maximum amount of
4D context. In addition to the 4D world data, text can be displayed to label elements. This text
provides a good reference back to the traditional text representation of the data.
Figure 4–1. Full Screen Mode
Dual screen mode allows related text information to be displayed in the left pane and graphics in
the right pane. For example, the text TP program can be displayed in the left in text form and that
same program can be displayed graphically in a 4D node map on the right.
Figure 4–2 shows the editor and corresponding linked node map.
4–3
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Figure 4–2. Dual Screen Mode
When the system is operating in dual pane mode, the graphical pane and the test pane are linked.
The linked information will stay synchronized between the two panes. This is indicated by the
color of the title bar of the unfocussed pane. In linked mode, when you cursor in the text window
the selected item is also selected in the 4D world. If you select an item in the graphics screen with
the touch panel, that item is selected in the text menu as well.
Transitions between full screen mode and dual screen mode are quick and easy requiring a single
touch or a single keystroke. The context of the operation is maintained through this transition as is
the center of the screen view and the magnification.
Multiple 4D windows can be displayed at the same time. Different windows are independent and
have no restrictions on what can be displayed or how it can be displayed. Up to eight windows can
be displayed between the teach pendant and external connections.
The 4D menus use scenes (Refer to Section 4.2.1 ) to allow you to select what information you
want to see. If all of the invisible information were shown at the same time, the display would
become cluttered making it difficult to see the specific information of interest. Scenes allow you to
filter that information and look at a subset. You can select a specific scene like DCS, or you can
show multiple scenes like DCS and node map at the same time.
4–4
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
The system provides controls to manipulate what information is displayed on the screen. These
controls allow you to adjust magnification, position, and orientation of the 4D view. Each scene
has its own viewpoint.
The 4D display can be accessed from a remote PC. In addition to Monitor iPendant (ECHO) and
Navigate iPendant (CGTP), a full screen Internet Explorer graphical window can display any
data which is shown on the pane of the teach pendant. A link to this Full Screen 4D Display is
found on the robot home page.
4.1.2 Navigation
Figure 4–3 shows the teach pendant keypad highlighting the
key.
Figure 4–3. i Key
4D navigation is done using the i key ( ). It works like a shift key in that it is pressed along
with another key to provide a special function. This special function is not always related to 4D,
but it often is.
Refer to Section 2.4 for a complete description of the
options.
There are several ways to get to the 4D screen:
•
+ POSITION displays the full screen view
• The TOP menu has many 4D related ICONS
•
+ EDIT displays the TP Editor and Node map
•
+ DATA displays the Position register screen and 4D map
• Touching the i symbol on the focus bar may bring up a menu with graphical entries
• “4D Graphics” is under the standard menus on the second page item five.
• “4D Graphics” in the same group as position so is accessible form the position type menu
4–5
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Note If R764 4D Graphics is not loaded the only thing displayed will be the robot. There will not
be any 4D shortcuts in the TOP menu.
The top menu has a full page of 4D shortcuts accessed by pressing the 4D soft key.
Figure 4–4 shows a typical configuration with DCS loaded. The actual displayed ICONS will
depend on what options are loaded.
Figure 4–4. Top Menu
After you are in the 4D display, navigation allows you to adjust the view point in order to see what
you need to see. The soft keys determine the “mode” of operation of this sort of navigation.
These keys allow you to:
• Zoom the image in and out to narrow in on an item of interest
• Pan around in the image to see different items from the same angle
• Rotate the image in order to see the information from a different angle
All of these movements can be accomplished with the touch screen or the arrow keys.
4–6
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
After the view is set, the hard keys above can be used to transition quickly between full screen
mode and dual pane mode. In the case where hard keys are not available maximize and minimize
can be used to transition quickly between these modes without loosing context.
Refer to Section 2.3 for a discussion on window setting.
Each scene has its own viewpoint. This means that once the system is adjusted for a particular
operation, coming back to that operation shows the same information. The following example
illustrates:
• A viewpoint is set up which shows DCS controls from a wide angle so that all zones are
visible in on the screen,
• The node map (TP program display) is selected for operation. The viewpoint is set for optimal
viewing of that program.
• DCS setup is selected and the same information is shown that was shown the last time this
sceen was displayed.
• The node map is selected for operation. The viewpoint is still set for optimal viewing of
that program.
4–7
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
4.1.3 Basic Display Concepts
Figure 4–5. Robot Display
Displaying the robot is basic for 4D Display. The robot is always displayed and always moves
as the real robot moves. Even when the 4D Graphics option is not available, the robots and the
floor are displayed.
This is shown in Figure 4–5 .
The black triad is the tool center point (TCP). A triad is a symbolic representation of a robot
position and orientation. It shows the XYZ coordinate of a point in space and its orientation.
Triads are used extensively to represent positions such as program positions and position registers.
Triads are used to show coordinate frames such as visual jogging and frame setup.
In Figure 4–5 the current tool center point has a Z offset of 500mm.
The black triad is exactly 500mm from the faceplate of the robot. As the robot moves the black
triad moves. As the robot executes a program in single step mode the black triad will exactly
line up with the triads representing the taught points. If the tool center point is changed, the
4–8
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
black triad will move. Generally the system will include a graphical representation of the tool
as well as this triad.
Figure 4–6. Three Groups in One Controller
Figure 4–6 shows a system equipped with three groups on one controller. In Figure 4–6 the near
robot is selected for operation and is group two.
All groups are shown. When the teach pendant is enabled, a particular group is always selected for
teach pendant operations.On the status line G2 is displayed which also corresponds to the selected
group. When a robot is selected for operation, the Tool Center Point (TCP) indicator is bright
green. Other displayed robot TCPs are black.
In Figure 4–5 the teach pendant is disabled. When the teach pendant is enabled the TCP triad
will display bright green like in Figure 4–6 .
The floor is always shown with a 1 meter grid. This provides a good reference point for being
“square.” The group one robot is positioned, by default, on the floor in the center with the X and Y
coordinates of the robot lined up with the grid. Note that certain robots, such as the M-3iA, are top
mounted so hung by default two meters above the floor hanging down. Robots can be repositioned
in the cell by setting the $CELL_GRP[x].$CELL_FRAME system variable. This variable can also
be used for robot calibration depending on the application. .
4–9
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Details of cell frame are in Section 6.10 .
4.1.4 Selected Program
One of the main purposes of the 4D system is to provide views of TP programs. This can be used
in many contexts including the SELECT menu, the editor, and various utilities.
In both full screen mode and dual screen mode, the program that is used in the “4D Edit Node
Map” scene is the default program. This is the program which is selected in the left window of
in the full screen SELECT screen. This is also the program which will execute if you press
the SHIFT+FWD buttons.
If you want to view a specific program, select it from the SELECT menu. Any operations that
you perform in whole mode of dual screen mode with the “4D Edit Node Map” scene will
follow that program.
A second program can be viewed which is not the default program. This is the program the cursor
is on in the SELECT menu. Any operations that you perform in whole mode or dual screen mode
with the “4D Select Node Map” scene will follow that program. Certain utilities will also set this
program when they are used with a graphics screen.
4.1.5 Frames
Any change to frames is always immediately reflected in the 4D views. There is no user action
required to make this happen. For example a TP program has positions recorded in a vision frame.
The points will move in the node map view as the vision offset frame on the controller change.
Points which are not in the vision frame will not move.
Any programs which are taught in a line tracking frame or in a coordinated frame will be displayed
in that frame. When you look at the taught program in the node map editor, you will see the points
with respect to the part in a particular position. As the line moves or the coordinated frame moves,
the points will move as a whole with the connected frame.
Note By definition, position registers are in the “current” frame. This might depend on context
so position registers might not be displayed in a frame that they are not associated with. Set the
correct frame to see the registers in the correct frame.
4.1.6 Groups
Each group is separately identified in the 4D system. The robots associated with those groups are
always graphically displayed. The currently selected group displayed in the status window will be
highlighted when the teach pendant is enabled.
This makes it obvious which group is selected for a teach pendant operation. If that operation is
jogging, then addition information on jog type, frame and direction will be displayed associated
with that group.
4–10
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
This provides the means to display information that moves with the group and is associated
with that group easily. The tool for group 1 is a different entity than the tool for group 2. The
jog information moves as the group moves. Other information like this can be displayed with
the group such as line tracking boundaries.
4.2 USER INTERFACE SCREENS
4.2.1 VIEWING 4D SCENES
The 4D world is divided into a number of different scenes. Each scene displays different
information. If all of the invisible data on the robot were shown at the same time it would be
difficult to find what you are looking for. Scenes filter that information so that you can look in a
particular area for an issue without being distracted by information that is not of interest for
the current operation.
Some 4D world information is always shown. This information serves as a “background” for the
scene that you want to view. The background consists of:
• The floor to serve as a reference.
• The robot arm(s) and other mechanisms.
• End of arm tooling.
• Cell components that have been configured with ROBOGUIDE for use on the 4D pendant.
See Section 4.13 for details on how this works.
Scenes are changed in a similar fashion as menus are changed for the text menus. In any 4D menu,
F1 is the [ TYPE ] key. This key allows you to select what data to display in addition to the
background. Available scenes depend on options.
4–11
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Figure 4–7. Scene Selection
Each scene has a view associated with it. As the scene is changed, the viewpoint is changed to
correspond to the viewpoint which was set the last time that scene was viewed. Typically you
want to look at DCS setting from a wide view and programs from a narrower view.
The standard scene is “4D Display”- by default this scene only shows the background. Other
scenes can be made visible on a scene by scene basis. This is the only scene you can composite
together multiple scenes to be viewed together. For example, this scene can display DCS and
node map in the same screen.
The standard scenes are:
• 4D Display —shows the background plus any selected scene(s).
• 4D Edit Node Map –shows the current default program graphical view or node map.
• 4D Select Node Map —shows the node map of the program that corresponds to the where
the cursor is in the SELECT menu.
• 4D Position Reg —shows the current position registers in the currently selected frame.
• 4D TCP Trace —will show the path the robot takes when this screen is active while the robot
is moving.
4–12
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
• 4D Frame Display —shows the last frame shown in the frame setup menu.
• Position display shows the standard text position display.
Optional scenes include:
• 4D DCS Display —shows the DCS setup or the last scene shown in the DCS setup menu.
• 4D iRVision —shows camera locations and view areas.
• 4D IIC Display —shows interference information.
• 4D Pick Boundaries —shows boundaries for PickTOOL.
• 4D Pick Frames —shows frames for PickTOOL
• 4D Pick Registers —shows registers for PickTOOL
4.2.2 ADJUSTING THE VIEW
The touch screen makes the 4D menus much more convenient to use. The key to using these
menus effectively is the ability to change the position, angle and magnification of the 4D screen.
This process provides the means to get the information critical for the current operation optimally
displayed on the 4D screen.
Arrow keys may also be used to adjust the view incrementally. Pressing SHIFT-ARROW will use
a larger increment. Holding the arrow will cause the view to change as long as the arrow is pressed.
An optional USB mouse can also be used to manipulate the 4D display.
Note For the following sections any action initiated by touch can be initiated by clicking the left
mouse button. The right mouse button always makes the selection regardless of the mode setting.
4.2.2.1 Zooming the View
Zooming the view 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.
Figure 4–8. ZOOM Button
To zoom the view:
• Press F3 to set the system to zoom mode as shown above.
• Touch and release near the top of the screen to increase the magnification.
• Touch and release near the bottom of the screen to decrease magnification.
4–13
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
• Firmly touch and hold the screen and zoom the image by dragging your finger up and down on
the screen. Be sure to maintain contact by pressing firmly or using the fingernail side of your
finger. Beeping means that you are not maintaining contact.
• Use the up arrow to increase the magnification.
• Use the down arrow decrease the magnification.
• Holding the arrow will cause the magnification to continue changing as long as the arrow
is pressed.
4.2.2.2 Panning the View
Panning the view consists of moving the view left, right, up and down.
Figure 4–9. PAN Button
To pan the view:
• Press F4 to set the system to PAN mode as shown above.
• Firmly touch and release a point on the screen to make it the center of the view. When you
release the image will jump so that the touch point is the center.
• Firmly touch and hold the screen and drag the image around the screen. The image will follow
your finger. Be sure to maintain contact by pressing firmly or using fingernail side of your
finger. Beeping means that you are not maintaining contact. Releasing the touch leaves the
view where it was dragged.
• Use the arrow keys to move the image up, down left and right. SHIFT-ARROW moves further.
• Holding the arrow will cause the views to continue moving as long as the arrow is pressed.
4.2.2.3 Rotating the View
Rotating the view consists of rotating the view left, right, up and down. The center of rotation is
the selected item. By default, the selected item is the tool center point. Rotating left and right
is like walking around the cell. Rotating up down is like climbing up and down a ladder to see
the cell from an elevated position.
Figure 4–10. ROTATE Button
To rotate the view:
4–14
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
• Press F5 to set the system to ROTATE mode as shown above.
• Touch and release the view to “push” that part of the screen away from you. This will cause
the view to tilt in response to a touch in a specific area.
• Firmly touch and hold the screen and rotate the image by dragging your finger on the screen.
The image will rotate with the action of your finger. Be sure to maintain contact by pressing
firmly or using the fingernail side of your finger. Beeping means that you are not maintaining
contact.
• Use the arrow keys to rotate the image up, down left and right.
• Holding the arrow will cause the views to continue rotating as long as the arrow is pressed.
4.2.2.4 Selecting an Item
Selecting an item consists of touching it on the touch screen or cursoring in a related text view.
Figure 4–11. SELECT Button
To select an item:
• Press F2 to set the system to SELECT mode as shown in above.
• Firmly touch the item that you want to select.
• With an optional USB mouse right click to select an item.
The selected item will be highlighted in the graphical view and the linked text if the view is linked.
In come cases, additional information will be displayed about the selected item.
4.2.2.5 Selecting Preset Views
The 4D Display system provides seven preset views. The default view provides a view from 45
degrees. This view is often a good starting point for setting the view. It will 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.
The other six views are orthogonal views. These views are from the top, bottom, left, right,
front and back.
4–15
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Figure 4–12. Selecting a View
Procedure 4-1 Selecting a View
1. Press NEXT to view the second page of soft keys.
2. Press the [VIEW] key to display the selection of preset and user views.
3. Select the type view you want to display with the softkey.
• PRESET- Fixed views from specific viewpoints.
• USER-Views recorded and named by user.
4. Select the view that you want to use.
• Touch the view that you want to be displayed.
• Use the arrow keys to cursor to the view to be selected.
• Use the number keys to select a specific view and then hit enter.
PICTURE IN PICTURE
In addition to selecting a preset view you can also select a “picture in picture” or PIP view. This
allows you to view a small version of one scene within another. The PIP window remembers its
content so when you swap a scene and viewpoint into the PIP window it will remember what was
there the next time you bring up PIP.
4–16
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
To manipulate picture in picture (PIP) views:
• Select F4 from the preset view menu to show the PIP view.
• Touch the PIP sub-window view to swap the main windows and the PIP window.
• Use the ITEM key to swap the main windows and the PIP window.
• Use the PREV key to dismiss the PIP window.
• Use any menu key to dismiss the PIP window.
4.2.2.6 Recording and Using User Views
The 4D system provides eight user definable views. These views can be recorded and then
retrieved by selecting them.
Figure 4–13. User View Menu
By default these views are not initialized (indicated by the ***) and named User View 1–8. These
views can be recorded and named to suit the needs of a specific installation.
Procedure 4-2 Selecting a View
1. Press NEXT to view the second page of soft keys.
4–17
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
2. Press the [VIEW] key to display the selection of preset and user views.
3. Select the type view you want to display with the softkey.
• PRESET- Fixed views from specific viewpoints.
• USER-Views recorded and named by user.
4. Select the view that you want to use.
• Touch the view that you want to be displayed.
• Use the arrow keys to cursor to the view to be selected.
• Use the number keys to select a specific view and then hit enter.
Recording a user view
1. Set up the screen to display what you want to record using the PAN, ROTATE and ZOOM
functions.
2. Press NEXT to view the second page of soft keys.
3. Press the [VIEW] key to display the selection of preset and user views.
4. Select F2 USER to display the list of user views.
5. Cursor to the view to be recorded.
6. Select F4 RECORD to record the current view into the user view.
You can also select F5 RENAME and name the view without exiting the menu.
Naming a user view
1. Press NEXT to view the second page of soft keys.
2. Press the [VIEW] key to display the selection of preset and user views.
3. Select F2 USER to display the list of user views.
4. Cursor to the view to be named.
5. Select F5 RENAME and enter the new name in the input box.
You can also select F4 RECORD and record the current view without exiting the menu.
4.2.2.7 Visibility
Figure 4–14. [VISIBLE] Button
4–18
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
The elements which are visible in each screen are typically controlled by the visibility softkey
on page two of the soft keys. In other cases, the visibility is based on what operation last took
place in the linked screen.
For the “4D Display,” the visibility key controls which scene(s) are displayed. The visibility key
displays the menu of scenes which can be toggled on and off. This allows you to display multiple
scenes at the same time.
For all of the other scenes, the visibility key controls visibility of aspects of that scene such as text
labels. For the register and node map scenes, you can control the visibility of the text labels. In the
node map screen you can control the visibility of called programs.
The other scenes are controlled by the menu with which they are linked. In the frame setup menu
the frame that the cursor is on is visible. When a DETAIL menu is displayed the frame and setup
points associated with that frame are displayed. The other frames are not visible.
For DCS, the Cartesian limits and robot restrictions are visible by default. After you link the DCS
setup screen to the graphical pane, the last selected setup item is visible in the DCS graphics screen.
4D Graphics Display Visibility
For the main graphics display screen which is the first entry in the [TYPE] menu visibility is
special. This visibility allows you to display any combination of information from the other
scenes. For example you can display the “4D Edit Node Map” and the “4D TCP Trace” at the
same time in this screen. Visibility is where you select what 4D information is visible.
Figure 4–15. Visibility menu
4–19
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
The menu highlights which of the 4D elements are currently selected. From this menu you can
“HIDE” or “SHOW” different elements.
1. Select next from the function key menu.
2. Select [VISIBLE] from F2 or [RIPE] from F3. Any elements which are currently visible
will be displayed in BLUE.
3. Select the element that you wish to hide or show.
• Touch the item of interest and the visibility will be toggled.
• Enter the number of the element you want to change and F5 to HIDE or SHOW it.
• Use the arrow keys to cursor to the element you want to change and F5 to HIDE or
SHOW it.
4. Exit the [VISIBLE] menu by hitting PREV, ENTER, F1, F2, F3 or any other menu key.
4.3 VISUAL JOG
Visual jogging allows the coordinate system and the group selected for jogging to be indicated on
the 4D display. It also allows you to preview the direction that the robot will move before actually
jogging the robot. The jog indicators are displayed whenever the teach pendant is enabled and jog
preview is turned on. It is not necessary to engage the DEADMAN in order to see the indicators.
To turn jog preview on, press the and the COORD key simultaneously. This operation toggles
the visibility of the jog indicators on and off.
Caution
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.
4–20
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
Linear Coordinate Display
Figure 4–16. Linear Jog Indicator
Figure 4–16 shows jog indicators for a 3 group Arc welding system.
This concept applies for all applications. The Cartesian coordinate system at the tool center point
of the robot shows what coordinate system in which the robot will jog. The red, green, and blue
axes correspond to the X, Y and Z jog directions.
For details on jogging in different coordinate systems, refer to Section 5.1 .
As the coordinate system is changed (COORD key by itself) the display will show the currently
selected coordinate system. This will work for all coordinate systems supported by your robot
system.
Note PATH coordinate system is not always valid. In this case visual jog will not show a
coordinate system and the jog keys will be ineffective.
4–21
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Joint Jog Display
Figure 4–17. Joint Jog Indicators
Figure 4–17 shows the jog information for joint jogging.
Each joint that can be jogged has a indicator consisting of:
• A semi-transparent fan indicating the arc of joint motion and the proximity of joint limits.
• A needle gauge showing the current joint position.
• A blue arrow tangent to the fan showing the positive jog direction
• A label naming the corresponding joint.
Figure 4–17 shows joints 2 and 3 within 22.5 degrees of the joint limits.
The fan will turn red as the robot is jogged closer to the limit. When the robot is jogged all the way
to the limit the needle gauge will be at the boundary between the red and green color of the fan.
4–22
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
Figure 4–18. Positioner Jog Indicator
Figure 4–18 shows the same joint indicators for the positioner.
This sort of display applies to any sort of mechanism connected to the robot controller. A linear
mechanism is similar but slightly different to reflect that joint jogging is a linear operation. In the
case the fan is replaced by a rectangle with similar functionality.
Jog Preview
Visual jogging will also preview the direction of movement of the robot when a particular jog key
is pressed. This feature is activated when pressing a single jog key at the same time as the .
Note that 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 clear errors. The preview will always be shown.
The system must be in any 4D graphical display in order to see the jog preview information.
Pressing and a jog key will NOT bring up the 4D display. Pressing at the same time as the
position key is an easy way to bring up full screen 4D graphics for assistance in jogging the robot.
The jog preview indicator is a single red arrow indicating the direction that the robot will move.
Depending on the setting of the speed override (refer to Section 5.3 ) the size of the arrow will
change. For low speed it will be short, for high speed it will be long.
4–23
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Cartesian Jog Preview
Figure 4–19. Cartesian Jog Preview
Figure 4–19 shows the typical display when a
key is pressed with +Z.
In this case the blue arrow shows the direction that the robot will move when the SHIFT and +Z
keys is pressed. The length of the arrow will depend on the jog speed. for this example the
override is 50%.
Figure 4–20. Cartesian Rotation Preview
Figure 4–20 shows the display for positive rotations about the X, Y and Z axis in WORLD frame.
These will be displayed when you press and a positive rotation key (+X(J4), (+Y(J5) or (+Z(J6).
The robot will rotate about the tool center point in the plane shown by the circle.
4–24
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
Joint Jog Preview
Figure 4–21. Joint Jog Preview
Figure 4–21 shows the display when you press the
and +(J4) jog key.
The red arrow along the fan show the direction that the robot will move if the SHIFT + (J4)
is pressed.
4.4 EDIT NODE MAP SCREEN
The 4D visualization of TP programs is called a node map. This shows all the points in the
program as small triads in 3D in the “4D Edit Node Map” screen.
4–25
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Figure 4–22. Dual Screen Mode
Figure 4–22 shows the node map screen always shows the node map for default program.
This is true if it is shown full screen or in the right pane for dual mode. In the case of dual mode
the right pane is always linked to the default program.
To get to the graphical node map screen:
• Press
+EDIT.
• Or from the TP edit screen press
+ FCTN and select “4D Edit Node Map”.
• Or from the TP edit screen touch the i symbol on the left side of the focus bar and select
“4D Edit Node Map”.
• Or press ENTER from the graphical select menu.
The main purpose of this is to see the relationship among the positions in a program. It also allows
you to relate the line of the TP program to the point in space where the position is taught. For
example, if you know you want to adjust the highest point in the program, you can find that
point easily without moving the robot.
4–26
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
As the program is edited, the graphical view always reflects the current status of the edited
program. As points are added, deleted, or touched up, the graphical view is updated to reflect
those changes.
The points are all linked by lines. Typically the lines are black but if the point is ambiguous
the lines may be red.
Note These lines do NOT indicate the exact path that the robot will take. Instead they illustrate
the sequence in which the points will be visited in the program. To see the actual path of the
program see Section 4.8 .
The color of the triads varies depending on conditions. A yellow triad indicates that the position is
a PR or INC option is used in the motion statement.
The color of the lines also varies on conditions. For example, a red line indicates that there is a
point without position data between the two nodes. Using AR (argument register) as index in a
point also gives a red line because the value of AR is not clear until a program is executed.
Points in the program which are position registers are also displayed as triads. The easy way to
tell that they are registers is to enable the point labels. Visibility toggles the point labels off
and on. The point labels include the position register number and comment. For the full edit
line, refer to the linked edit pane.
The larger green triad indicates the selected point. This will correspond to the text cursor in
linked dual pane mode. As the cursor is changed in the text pane, the green highlight will change
to correspond to the selected point. Touching a point in the graphical screen in select mode will
change that point triad to a larger green triad and move the text highlight to the corresponding TP
line in the linked left pane. Selecting the point from either pane makes that point the center of
rotation for rotational view adjustment.
4–27
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
4.5 SELECT SCREEN
Figure 4–23. Select Preview Node Map
Figure 4–23 shows the select list on the left and ”4D Select Node Map” scene on the right.
The 4D scene displays the graphical content of the program which is highlighted by the cursor in
the SELECT screen. In this case it may NOT be the selected program. As the cursor is moved
up and down in the SELECT menu, the program display changes to correspond to the program
that the text cursor is on. This allows the programs to be quickly reviewed such that the correct
program is selected.
To bring up the linked select screen:
• Press
+SELECT
• Or when in the SELECT screen press
+FCTN and select “4D Select Node Map”
• Or touch the graphical i on the right side of the focus bar and select “4D Select Node Map ”
This program is loaded in to the “4D Select Node Map” and will be displayed when the “4D
Select Node Map” is displayed. After you press ENTER to edit the program, the system will
automatically go into linked edit mode. The brings up the text editor on the left and the node map
4–28
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
in the right. Now the selected program and the default program are the same program. Pressing
ENTER has selected the program into the default.
If you do not press ENTER, the program displayed in the “4D Select Node Map” in the right pane
remains associated with the select scene. The next time you enter the “4D Select Node Map” in
any context, that is the program that will be displayed. Any time in any context you enter the “4D
Edit Node map” scene the default program is shown.
In Figure 4–23 the program has not be selected. So the program displayed in the “4D Select Node
Map” scene is PNSRSR. The default program is ARC234. This means that “4D Select Node Map”
will display PNSRSR and “4D Edit Node Map” will display ARC234.
4.6 VIEWING TWO DIFFERENT PROGRAMS
Two programs can be viewed by using the program associated with the “4D Select Node Map ”
scene and the default program associated with the “4D Edit Node Map” scene. To select the default
program, cursor to it in the SELECT screen and press ENTER. To load a program into the “4D
Select Node Map” scene, cursor to a program n the SELECT screen and leave the cursor there.
Figure 4–24. Viewing two Different Programs
4–29
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
This allows you to examine a program which is NOT the default program. In general the “4D Edit
Node Map” always displays the default program. “4D Select Node Map” displays the program
that the cursor is on in the SELECT screen. Going to full screen allows the program to be closely
examined without impacting the default program.
Another advantage of this is that the selected program can be displayed in one pane at the same
time the default program node map is displayed in the other pane. This allows two programs to be
viewed at the same time in the graphical environment.
Procedure 4-4 Viewing two Programs
1. Edit the first program of interest in the left pane. This is the default program.
2. Bring up the linked select view:
• Press
+SELECT
• Or press SELECT and press
+FCTN and select “4D Select Node Map ”
• Or press SELECT and touch the i on the left side of the task bar and select “Select”
3. Cursor to the second program of interest. This program is displayed in the right pane
graphically.
4. Bring up the 4D Display in the left pane:
• Press the position hardkey and select “4D Display” from the type menu.
• Or use MENU-0–5 and select “4D Display”
• Or go to top menu and select “4D Split Screen”
5. Select “4D Edit Node Map” from the type menu
This will show the default program in the left pane using the “4D Edit Node Map” scene and the
SELECT cursored program in the right pane using the “4D Select Node Map” scene.
Note This is one example of how this can be set up and used. There are many other applications
for viewing different graphical scenes in the two windows or viewing the same scene from
different viewpoints in the two windows.
4.7 PROGRAM UTILITIES
Many of the utility programs modify programs. It is possible to view the result of these programs
in dual mode. In this case the panes are not linked in any way.
4–30
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
Figure 4–25. Shift Utility and Node Map
Utilities can operate on programs which are the default program or the currently selected program.
Either program view can be used to display the result of the utility operation. The panes are
not linked because the graphics pane is showing the current status of the program associated
with that scene.
In Figure 4–25 the mirror utility is operating on the selected program.
Mirror can operate on any program but in order to view the result interactively it must be either the
default program or the program loaded into the select scene.
Some of the utilities which can benefit from this are:
• Program adjust
• Program Shift
• Mirror Image Shift
• Tool offset
To set up this operation you must select the program of interest as the default program or cursor to
it in the SELECT screen. If the program being operated on is not the same as the “4D Edit Node
4–31
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Map” or “4D Select Node Map” program the utility will make it the “4D Select Node Map”
program so it can viewed.
• Press
+FCTN and select “4D Edit Node Map” or “4D Select Node Map”
• Touch the i on the status bar and select “4D Edit Node Map” or “4D Select Node Map”
If there is not an i displayed graphically in the corner of the screen then this utility does not
support bringing up the program automatically. In this case the program of interest must be
selected or be the default. To make it the default edit it in the left pane. To make it the selected
program (only affects graphics):
1. Bring up the linked select view:
• Press
+SELECT
• Or press SELECT and press
+FCTN and select “4D Select Node Map”
• Or press SELECT and touch the i on the left side of the task bar and select “Select”
2. Cursor to the program of interest. This program is displayed in the right pane graphically.
3. Bring up the utility in the left pane via the standard menus
4.8 TCP TRACE
The “4D TCP Trace” scene provides the capability to view the actual path that the robot took when
executing a program. The key element is that you must be displaying the “4D TCP Trace” while
the program is executing in order to see the trace.
4–32
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
Figure 4–26. Node Map and Trace
TCP trace works by sampling the actual position of the robot periodically. This is displayed as a
line in XYZ space. Rotational information is not displayed at this release.
Use Procedure 4-6 to view a TCP trace.
1. Select the graphical view in whole mode or dual mode with other information of interest
in the LEFT pane.
2. Select the TCP trace scene from the type menu.
3. Run the program
4. Examine the resultant trace for problems.
Caution
When executing a program be sure to watch the robot. Do not watch the TP
screen. After the robot is in a safe state you can examine the result.
Running the program with motion DISABLED will also display the trace and movement of
the graphical robot.
4–33
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Refer to Chapter 9 TESTING A PROGRAM AND RUNNING PRODUCTION for details on test
running your program.
4.9 FRAME SETUP
Figure 4–27. Frame Setup
The Frame Setup screens offer a related 4D view. When this view is activated, you will be shown
the 4D world with details about the current frame setup operation. Figure 4–27 shows the result of
a frame setup which may not be expected. It is clear from the 4D picture that the frame Z points
down instead of up. This is a common error which is easy to see in the 4D display.
The text view and the graphics view are linked. A large blue triad representing the location and
orientation of the frame currently being set up is shown in the 4D world. If you are on the 3, 4
or 6 point detail screen, a small triad is displayed for each recorded point. The point currently
highlighted in the text pane will also be highlighted in the graphics pane as a green triad.
Changes made in the Frame Setup menu are immediately reflected in the 4D world. Any other
changes to the frames such as a vision offset are immediately reflected.
4–34
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
4.10 POSITION REGISTERS
The 4D display for position registers provides a graphical display for position registers which is
very similar to node map described in Section 4.4 .
Figure 4–28. Position Registers
Each recorded position register is displayed as a triad in the graphical pane. The selected register
is displayed as a larger green triad.
Note Any register which has been set to joint representation will not be displayed. The default
representations for registers is Cartesian, so unless the default representation is changed, the
register will be displayed.
In dual pane mode, the text view is linked to the graphical view. The highlighted register in the
text view corresponds to the highlighted register in the graphical view.
As the cursor is moved in the text pane, the green highlight will move to the selected register.
Touching a register in the graphical menu in select mode will highlight the selected register
in the text view.
4–35
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
If the value of the register is changed, the triad for that register will move in the graphical pane.
When operated in full screen mode, the selected register will be remembered and displayed the
next time that the text mode is activated and vice versa.
The visibility key on the second softkey page toggles the text label display. The label includes the
register number and the comment.
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.
4.11 REMOTE CONTROLLER DISPLAY
The 4D graphics display provides a mechanism to display information from other controllers
connected via Ethernet. By default it will display the robot arm and any tooling graphics associated
with the remote arm. For certain options and applications other otherwise invisible data is also
displayed. For example, interference zones automatically display data from any connected robots.
4–36
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
Figure 4–29. Display of Remote Robots and Data
There are two ways to set up the display of remote robots. They can either be displayed using
RIPE (refer to the Internet Options Manual) or by specifying, in a configuration file, any external
robots that you want to show in your graphical scenes.
After a configuration file is supplied or RIPE is active, the “4D GRAPHICS Display” scene
provides the means to enable or disable the display of robots connected to other controllers. The
[RIPE] menu provides the list of configured robots and the visibility of each robot can be toggled
on and off. Remote robots are considered part of the background even though this mechanism
turns them off and on globally.
4–37
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Controller Visibility Menu
Figure 4–30. Controller Visibility Menu
1. Select next from the function key menu.
2. Select [VISIBLE] from F2 or [RIPE] from F3. Any elements which are currently visible
will be displayed in BLUE.
3. Select the element that you wish to hide or show.
• Touch the item of interest and the visibility will be toggled.
• Enter the number of the element you want to change and F5 to HIDE or SHOW it.
• Use the arrow keys to cursor to the element you want to change and F5 to HIDE or
SHOW it.
4. Exit the [VISIBLE] menu by hitting PREV, ENTER, F1, F2, F3 or any other menu key.
By default a maximum of three external controller can be displayed. This maximum is controlled
by the system variable $TPGL_CONFIG.$CONTROLMAX. The visibility of each robot can be
controlled from a TPP program by setting $TPGL_CONFIG.$CONTROLMASK[idx] where
index is indicated by the order in the TPCLCG.XML file or ROSIPCFG.XML file.
In this menu you can select as many robots as you wish but the number of robots
displayed will be limited by $TPGL_CONFIG.$CONTROLMAX. The maximum value of
4–38
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
$TPGL_CONFIG.$CONTROLMAX is 16 but, for performance reasons, it is not recommended to
increase this from the default 3 robots.
Figure 4–31. TPGLCFG.XML
The syntax is very simple and provides just the names and IP addresses of the remote controller
from which you want to display information. This file can be provided on a USB stick or memory
card and copied to MD:.
At this release there is no menu to set this up. There is a menu to set up RIPE which is documented
in the Ethernet Operations Manual. However, RIPE has the additional constraint that all connected
robots must have the same version number. Graphical remote display does not have this restriction.
Note In order to display information on a remote PC for Monitor iPendant (ECHO), Navigate
iPendant (CGTP), or Full Screen 4D Display, the IP addresses in this file must be accessible to
the remote PC.
4.12 DCS 4D VISUALIZATION
Dual Check Safety (DCS) Visualization enables you to view a 4D graphical representation of the
DCS settings. J657 DCS Pos./Speed Pkg. is required for this functionality. The view that is
presented relates to the feature currently selected in the DCS Setup menu. The following features
provide a graphical view:
• DCS Robot setup.
• DCS User model setup.
• DCS Cartesian position check.
• DCS Joint position check.
The DCS settings that are displayed come from the setup pages so you can view the effects of
your changes before they have been applied. As soon as you change the position or size of a DCS
zone that change is graphically displayed in the graphics pane.
The views are also “live”. That is – they update to follow the robot as it moves and reflect the
current state of position check zones.
Refer to the Dual Check Safety Function Operator's Manual for details.
4–39
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
4.13 4D CUSTOMIZATION
The parts of the graphical display which are NOT the robot and not process data (programs,
registers, DCS etc) are part of the 4D customization.
The customization is accomplished by using a “4D Editor” PC tool. This tool allows the shapes
that make up the cell to reflect the actual physical elements of the cell.
These physical elements include things like tooling, fences, parts, conveyers and other cell
elements.
Use Procedure 4-8 to customize the information displayed in the physical cell.
Procedure 4-8 Loading ROBOGUIDE Customization
1. Get a backup of your robot controller.
2. Generate a ROBOGUIDE cell from that backup.
3. Use the ROBOGUIDE tool to position and create cell components.
4. Load the ROBOGUIDE generated components onto your machine.
This can be done by:
• Copying the files onto a USB stick or memory stick and hitting enter on LOADTPGL.CM
and responding YES to load the files.
• Connecting the robot into the same network as the PC and selecting that robot as the
destination from ROBOGUIDE.
• Leave the files on the USB stick or memory card and leave that device plugged in when
operating 4D menus
Caution
Graphical files can get quite large. The robot controller has limited FROM
storage space to hold graphics files. ROBOGUIDE will help in reducing the
size of the graphics files and using primitives wherever possible.
ROBOGUIDE will generate two description files —TOOLING4D.XML and
WORKCELL4D.XML. TOOLING4D.XML contains information which is considered part of the
robot such as end of arm tooling. WORKCELL4D.XML tells the graphics system on the robot
where to display the other shapes defined in the ROBOGUIDE setup.
This file will contain the size and position of basic elements like boxes and cylinders. It will also
contain the size and position of graphics files.
The graphics files used on the pendant have the extension .POD. These are the files that can get
very large. They are typically derived from traditional graphics format files like IGES files.
The XML file and the associated POD files are all copied to FR: by default. In this case they are
backed up and restored with the full controller backup.
4–40
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
Optionally these files can be left on the memory card or USB stick. This means that if the memory
card or USB stick is not plugged in, the custom graphics will not be displayed. This approach
reduces the limitation on how big the graphics files can be.
Caution
The amount of graphics that can be efficiently displayed on the pendant is
limited. As more and more graphics are added, the frame refresh rate on
the pendant will decrease. This will not impact execution of programs on the
robot controller, but will result in a sluggish display.
If you notice that the display is updating slowly, remove some of the graphics
or reduce the size of some of the display to reduce a slowdown on the
display. The performance will vary depending on the application.
4.14 ACCESSING THE 4D DISPLAY FROM A PC
There are several ways to access 4D data from a remote PC:
• Select “Monitor iPendant (ECHO)” from the home page to display on your PC an exact
copy of what you see on the teach pendant.
• Select “Navigate iPendant (CGTP)” from the home page to navigate 4D menus from your PC.
This requires the R558 Internet Conn/Custo option
• Select “Full Screen 4D Display” from the home page to show the “4D Display” scene on your
PC. This requires the R558 Internet Conn/Custo and R7644D Graphics options.
Note For early releases, display of 4D information requires that the PC have a advanced graphics
card capable of displaying OpenGL. If your PC does not work, updating your PC graphics
drivers might fix it.
Select “Full Screen 4D Display” from the home page to provide a similar functionality as the 4D
window on the teach pendant. The left mouse is used to adjust the view setting based on the current
mode of operation. It also provides the ability to show any combination of 4D display scenes.
A context menu is provided for selecting operation modes and scene visibility. This menu is
displayed by right clicking the mouse anywhere in the active 4D display.
4–41
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Figure 4–32. Full Screen Menu
4.14.1 View Adjustment Mode
The view of the 4D scene can be adjusted with the mouse. The mouse can PAN, ROTATE or
ZOOM the view. The mouse can also SELECT an item in the view as the rotation center. The
function of the primary mouse button is determined by selecting the view adjustment mode.
Procedure 4-9 Selecting View Adjustment Mode
1. Click with the right (alternate) mouse button.
2. Use either mouse button to select the view adjustment mode you want:
• Select - To select a 4D element.
• Pan - To move the view up and down and side to side.
• Rotate - To rotate the view.
• Zoom - To zoom the view in and out.
3. Click anywhere outside the menu to dismiss the menu.
4. Use the left (primary) mouse button to adjust the view according to the selection.
4–42
MAROUHT9102171E REV F
4. 4D FUNCTIONALITY
4.14.2 Scene Visibility
Scene visibility allows selection of any combination of 4D display entities. The highlighted
(white on blue) elements in the menu are the ones which are currently being displayed. Selecting
an element will toggle the visibility on or off.
Procedure 4-10 Selecting Scene Visibility
1. Click with the right (alternate) mouse button.
2. Use the left or right mouse button to select the scene you want to toggle.
• If the scene information is not showing the scene information will appear when selected.
• If the scene information is already visible (white on blue) the scene information will
become invisible when selected.
3. The information in the selected scenes will appear in 4D, but the menu will still be active
4. Click anywhere outside the menu to dismiss the menu.
4.15 4D GRAPHICS IMPORT
The 4D Graphics Import option (R829) provides the ability to load graphics data that has been
created with tools other than FANUC America Corporation's ROBOGUIDE®. This option
requires that the 4D graphics option (R764) is also installed. With these two options, graphics data
can be imported and displayed from other graphics design tools.
This graphics data is displayed on the teach pendant along with the robot and other invisible
information such as jog frames and Dual Check Safety (DCS). The data will typically be the
peripheral equipment such as end effectors, fixtures and conveyers that constitute the physical
environment that the robot is working on. Parts can also be included in this third party import.
Generally third party graphics systems will not directly support the graphics formats required by
the teach pendant graphics system. Tools from third party vendors are available to convert output
from various CAD manufactures into the required data format. The conversion is done from the
native format of the various tools to the format required by the teach pendant.
As with the ROBOGUIDE option, the size of the graphics import is limited to 10MB. Loading
graphics sets larger than 10M will result in a sluggish performance. Typically, third-party software
products provide high level tools to limit the output data to what is required to be supported on the
pendant. Generally these tools model an entire line of robots. For the pendant only, the peripheral
equipment relevant to a specific robot needs to be displayed on a particular robot
Graphics are imported into the FANUC graphics system via TOOLING.TPG and
WORKCELL.TPG. These files can be copied to the MD: device on the robot by any normal
file mechanism. For example, from the teach pendant you can select the files on a USB
stick or memory card, and select “load” to load them onto the robot MD: device. If the file
WORKCELL.TPG exists and the R829 option is loaded, then any existing graphics files will be
ignored and this file will be used exclusively. WORKCELL.TPG can be deleted from FR: in the
case that you want to remove the graphcis from the pendant.
4–43
4. 4D FUNCTIONALITY
MAROUHT9102171E REV F
Note ROBOGUIDE will also generate TOOLING.TPG and WORKCELL.TPG for certain
versions. The R829 option does not need to be installed in order to load the ROBOGUIDE
generated files.
Note The robot arm itself is always displayed. The TPG files contain graphics for external
devices. If only the robot is displayed verify that R764 and R829 are loaded and the TPG files are
on the MD: device.
4–44
Chapter 5
JOGGING THE ROBOT
Contents
Chapter 5
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.9.1
5.9.2
5.10
5.11
5.12
JOGGING THE ROBOT .....................................................................
Overview ..............................................................................................
Visual Jog ..............................................................................................
Jog Speed ..............................................................................................
Coordinate Systems ..............................................................................
Wrist Jogging ........................................................................................
Remote TCP Jogging (Option) ...............................................................
Motion Groups .......................................................................................
Jog Menu ...............................................................................................
Extended Axes and Sub-Groups..........................................................
Overview ..............................................................................................
J7 and J8 Jog Keys..............................................................................
Incremental Jogging ............................................................................
Jogging the Robot and Other Axes .....................................................
Jogging the Robot without the Teach Pendant ....................................
5–1
5–2
5–2
5–2
5–4
5–6
5–7
5–8
5–9
5–11
5–11
5–12
5–16
5–17
5–22
5–1
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
5.1 Overview
Jogging is manually moving the robot axes by pressing keys on the teach pendant. Before you add
a motion instruction to a teach pendant program, you must first jog the robot to the position you
want. This chapter contains information and procedures that describe how to jog the robot.
The following items affect the way the robot jogs and the axes that move while jogging:
• Jog speed - How fast the robot moves when jogging
• Coordinate system - The way the robot moves when jogging
• Minor axis wrist jogging - How the wrist axes will jog
• Remote TCP jogging - Whether the tool is fixed in the workcell
• PATH jogging - Jog coordinate system corresponds to current path
The following items affect the axes that move while jogging:
• Motion Groups - Which motion group is selected
• Extended axes and motion sub-groups - Which extended axes or sub-group that is selected
Note Some items listed above might not be supported by your software application.
Note Refer to the iPendant Setup and Operations Manual for information on how to jog the robot
remotely from a device other than the iPendant.
5.2 Visual Jog
The best way to understand how jogging works is by using visual jog. Visual jog uses the 4D
graphics system to assist in determining visually what mechanism will move and which direction
it will move.
Much of the information that is documented in the sections to follow is visually shown on the
screen in real time.
For details on using visual jog, see Section 4.3 .
5.3 Jog Speed
Jog Speed
5–2
MAROUHT9102171E REV F
5. JOGGING THE ROBOT
The jog speed determines how fast the robot will move when the jog keys are pressed. The jog
speed is a percentage of the maximum speed at which you can jog the robot. The current jog speed
is displayed in the top right corner of every teach pendant screen.
A jog speed of 100% indicates that the robot will move with the maximum possible jog speed. The
maximum possible jog speed varies depending on the robot model. The maximum possible jog
speed is defined by the tool center point (TCP) moving at and below 250 millimeters per second.
A jog speed of FINE or VFINE indicates that the robot will move in incremental steps. Care must
be taken to ensure that the speed is set to a safe and acceptable level for jogging before the robot is
moved. Table 5–1 lists all the possible values of the jog speed.
Note When you use FINE and VFINE speed values, the robot moves one step at a time. You must
release the jog key and press it again to move the robot again.
Table 5–1. Jog Speed Values
Speed Values
Joint
Cartesian
100, 95, 90, 85, ... 20, 15, 10, 5, 4, 3, 2, 1
% of jog speed
% of jog speed
FINE (incremental steps)
Approximately 0.001 degrees
Approximately 0.023 mm
VFINE (incremental steps)
Approximately 0.0001 degrees
Approximately 0.002 mm
The jog speed keys on the teach pendant are used to increment or decrement the jog speed. The
SHIFT key combined with a jog speed key causes the jog speed to be changed between 100, 50, 5,
FINE, and VFINE. Figure 5–1 shows the jog speed keys.
Figure 5–1. Jog Speed Keys
5–3
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
Set the jog speed to a value that is appropriate for the conditions in the workcell, the kind of jogging
the robot is doing, and your own experience in jogging a robot. Use a slow jog speed until you are
familiar with the robot. The slower the jog speed, the more control you have over robot motion.
Note If you are in T2 mode and you release the deadman switch, the override speed will revert
to a limited value such that the robot cannot move over 250mm/sec. For example, if you were
jogging or running a program in T2 mode at 100% and you release the deadman switch, the
override speed might reduce to 4%. This is to ensure safety when operation is resumed.
5.4 Coordinate Systems
In jogging, a coordinate system defines how the robot will move. The coordinate systems are
listed below:
• JOINT
• XYZ - includes WORLD, JGFRM, and USER
• TOOL
• LDR 2 - refer to the Coordinated Motion Manual
You change the coordinate system by pressing the COORD key on the teach pendant, shown in
Figure 5–2 . The coordinate system you choose is displayed in the upper right hand corner of
the teach pendant screen. Table 5–2 indicates the LED or LCD indicator that corresponds to
the coordinate system you choose.
Figure 5–2. COORD Key and Display
5–4
MAROUHT9102171E REV F
5. JOGGING THE ROBOT
Table 5–2. LCD Indicators
LCD
Coordinate System
JOINT
JOINT
XYZ
WORLD, USER, JGFRAME
TOOL
TOOL
PATH
PATH (ArcTool only)
Refer to Table 5–3 for listings and descriptions of the JOINT, XYZ, and TOOL coordinate systems.
Table 5–3. Coordinate Systems
COORDINATE DESCRIPTION
SYSTEM
JOINT
ILLUSTRATION
Moves the individual axes of the robot.
Caution
Use of the JOINT motion
mode with the F-200i series
robots can cause damage to
the robot. Jogging the F-200i
series robot in JOINT is only
permissible when single axis
mastering.
5–5
5. JOGGING THE ROBOT
COORDINATE DESCRIPTION
SYSTEM
XYZ
Moves the robot TCP in the x, y, or z
directions and rotates about x (w), y (p), or
z (r).
TOOL
Moves the robot TCP in the x, y, or z
direction and rotates x(w), y(p), and z(r) in
the selected tool frame.
MAROUHT9102171E REV F
ILLUSTRATION
5.5 Wrist Jogging
The wrist jog function allows you to control how the robot axes will jog when you are using a
Cartesian coordinate system, such as WORLD or TOOL. In wrist jog, the wrist axes are fixed and
5–6
MAROUHT9102171E REV F
5. JOGGING THE ROBOT
do not change when jogging in x, y, and z coordinates. This is helpful when you have to jog in the
x, y, and z directions through a singularity position.
When you jog a wrist axis using wrist jog, the other wrist axes will remain stationary and the
rest of the robot axes will move to accommodate the movement of the wrist axes to maintain a
fixed TCP location.
You select wrist jog using the FCTN menu. When you select wrist jog, "W/" appears next to the
coordinate system name displayed on the teach pendant screen as shown below.
PROGRAM NAME
W/TOOL 10%
Use Procedure 5-3 to select wrist jog and jog the axes.
5.6 Remote TCP Jogging (Option)
The optional remote TCP jog function is useful for applications in which the tool is fixed in the
workcell and the robot manipulates the workpiece around the tool. The frame used for jogging is a
user frame (UFRAME) you set up and select.
Note Remote TCP jogging will not be available if the Coordinated Motion option is loaded.
When remote TCP jogging is turned on, if you move the robot in x, y, or z using the TOOL
coordinate system, the robot moves as it normally would without remote TCP jogging. If you move
the robot in w, p, and r (rotational moves), the rotational center will be the remote TCP position.
In remote TCP jogging, an invisible tool is established to connect the faceplate to the remote TCP
position. For example, if you select the WORLD coordinate system and jog the robot in w, the
invisible tool will rotate along the WORLD x-axis. If you select the TOOL coordinate system and
jog the robot in w, the invisible tool will rotate along the TOOL x-axis.
You select remote TCP jogging using the FCTN menu. You also select the remote TCP frame
using the FCTN menu. When you select remote TCP jogging, "Rn/" appears next to the coordinate
system name displayed on the teach pendant screen, where "n" is the number of the user frame,
which can be from 1 to 5 as shown below.
PROGRAM NAME
S
R1/TOOL 10%
You can perform remote TCP jogging only if you have selected a Cartesian coordinate system
such as WORLD, TOOL, JOGFRAME, or USER. You cannot perform remote TCP jogging if you
have selected the JOINT coordinate system. Use Procedure 5-3 to select remote TCP jogging,
select the remote TCP frame, and jog the axes.
5–7
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
5.7 Motion Groups
A motion group is a group of axes that work together to perform motion. A motion group defines
these groups of axes that can be used for independent pieces of equipment, positioning tables, and
other devices. Since each motion group can have a maximum of nine axes, if your system contains
more than nine axes, there is more than one group that controls motion. The robot is in Group 1.
The robot controller can operate up to four full kinematics devices (robot mechanical units) in
eight motion groups, for a total of up to 72 axes; however:
• There is a maximum of nine axes in a single group.
— Process Axis devices (ServoTorch, Dispense ISDT, etc.) are considered an axis with
respect to the total number of axes, but they do not constitute a motion group.
— Line tracking encoders are limited to 4 channels, but they are not considered axes with
respect to the total number of axes.
• non-robot motion groups of one to four axes can be defined. The maximum number includes
extended axes such as General Positioner, Basic Positioner, and Independent Axis devices.
— The Index axis device is one axis by definition and the Arc Positioner device is a two-axis
motion group device. Neither of these can have additional axes installed.
Up to 36 axes are supported on the Main CPU PCB. Up to 24 axes can be supported on each of the
two optional Auxiliary Axis PCBs.
Note Although this adds up to 84 axes, due to other constraints, the maximum number of axes
is 72.
Extended Axes
One to three extended axes can be added to a motion group. The axes cannot be used independently
of the motion group.
Each extended axis adds a position data field (E1, E2, E3) to the motion group data.
Group Mask
When you create a program, you define the group mask which is the group of axes that the program
will control. A single program can be defined to use all eight motion groups, but a maximum of
four robot motion groups can perform Cartesian interpolated motion within a single program.
With multiple groups, the axes that jog depend on which group you have selected. You select
groups using the GROUP key on the iPendant, or by using the FCTN menu, or by pressing the
SHIFT and COORD keys. Use Procedure 5-3 to select groups and jog the axes.
To change the group number, you can also use the jog menu. Refer to Procedure 5-1 .
5–8
MAROUHT9102171E REV F
5. JOGGING THE ROBOT
5.8 Jog Menu
The jog menu provides a method to check and change the following jogging information:
• Currently selected frame number of each frame (TOOL, JOG, USER)
• Currently selected group number
• Currently selected sub-group type (ROBOT/EXT)
Jog Menu Modes of Operation
The jog menu has two modes of operation: AutoClose and Sticky.
• In AutoClose mode the jog menu operates as it has in the past. To change an item, press a
single numeric key on the Tool, Jog, User or Group lines. The item will change and the menu
will close. AutoClose is the default when nine User Frames or ten Tool Frames are configured.
The (.=10) on the Tool line indicates that AutoClose mode is active.
The dot (“.”) key is interpreted as entering 10. This allows you to set the Tool Frame to 10
in AutoClose mode.
• In Sticky mode you can make multiple entries. You must close the menu when done.
In Sticky Mode, the < > characters indicate that a number is being entered but has not been
applied yet. In the following example screen the jog menu is displayed on a controller with
two motion groups.
Tool
Jog
User
Group
14
3
55
2
In Sticky Mode with Tool selected, when you press 2 you will see a display similar to the
following:
Tool
Jog
User
Group
<2>
3
55
2
The < > symbols show that the number is being entered but has not yet been applied. When
you press another number key, for example 3, the display will show <23>.
You can accept this entry by
— pressing any one of ENTER, COORD, PREV, or a function Key. This will close the
jog menu.
— pressing the up or down arrow. This will accept the entry, move the cursor to the item
above or below, and keep the jog menu displayed.
5–9
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
You can edit a number before it has been accepted:
— pressing Back Space will remove the last number you entered.
— pressing Back Space again will remove the next to last number you entered.
In the example above, when <23> is displayed, after you press Back Space the <2> will
remain. Pressing backspace again will remove the 2 and display the original number 14
without the < > characters.
Sticky mode is the default mode when more than nine User Frames or ten Tool Frames are
configured. If nine User Frames or ten Tool Frames are configured, you can enter Sticky mode
by pressing ENTER. The (.=10) missing from the Tool line indicates that Sticky mode is active.
Use Procedure 5-1 to display and use the jog menu.
Procedure 5-1 Using the Jog Menu
Steps
1. To display the jog menu, press and hold the SHIFT key and press the COORD key.
2. Use the up and down arrow keys to move the cursor to the item you want to change.
3. To change the number of each frame , press the appropriate numeric key. The item on
which the cursor is located is changed to the new value. Valid frame numbers are as follows:
• USER: 0-253.
• TOOL: 0–253. To select 10, press the "." (period) key on the teach pendant.
• JOG: 1-5
Note The text (.=10) does not appear and the "." key is not accepted if there are fewer
than ten tool frames.
Note The maximum number of tool frames is set in the system variable
$SCR.$MAXNUMUTOOL. Refer to the Software Reference Manual and Software
Installation Manual for more information.
4. To change to sub-group (available only for systems with extended axes), move the cursor to
ROBOT/EXT and press the left and right arrow keys.
5. To change the group number (available only for multiple motion group systems), move the
cursor to GROUP and press the appropriate numeric key. You can specify numbers only
for existing motion groups.
6. To close the jog menu without entering a number,
• Press SHIFT and COORD again.
or
• Press the PREV key.
7. To close the jog menu after you enter a number,
5–10
MAROUHT9102171E REV F
5. JOGGING THE ROBOT
• in Auto Close mode:
If fewer than nine UFrames or ten TOOL Frames are configured, the jog menu closes
automatically after you enter a frame or group number.
• in Sticky Mode:
If more than nine UFrames or ten TOOL Frames are configured, you can close the jog
menu by pressing any one of ENTER, COORD, PREV, or a function Key.
5.9 Extended Axes and Sub-Groups
5.9.1 Overview
Overview
Extended axes are the available axes controlled by the controller beyond the standard number of
robot axes. There is a limit of three extended axes per motion group.
• One to three extended axes can be added to a motion group. The axes cannot be used
independently of the motion group.
• Each extended axis adds a position data field (E1, E2, E3) to the motion group data.
• Process Axis devices (ServoTorch, Dispense ISDT, etc.) are considered an axis with respect
to the total number of axes, but they do not constitute a motion group.
Extended axes become a sub-group of the motion group to which they belong. There are eight jog
keys on the R-30iB Plus ipendant. You can jog all robot axes and extended axes for a total of eight
axes. For robots with five axes, you can jog all robot axes and all the extended axes available by
using jog keys J7 and J8. For a robot with six axes, you can jog all robot axes and two additional
extended axes by using jog keys J7 and J8.
If your configuration is a 6 axis robot with 3 extended axes, you can jog the third extended axis
using sub-group jogging. You can jog all the extended axes with sub-group. To jog the extended
axes in a sub-group, you must first select the sub-group using the FCTN menu. Or, you can press
the GROUP key to toggle it to sub-group. The status line at the top of the screen displays whether
a sub-group is being used, as shown below.
PROGRAM NAME
S
JOINT 10%
For example, if the sub-group controls axes 7, 8 and 9, select the sub-group and then refer to
Table 5–4 .
5–11
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
Table 5–4. SubGroup Example
For Axis Number
Use Jog Keys
7
+X, -X
8
+Y, -Y
9
+Z, -Z
5.9.2 J7 and J8 Jog Keys
The J7, J8 jog keys can be used for jogging in the following applications:
• Extended axis
• Positioner
• Servo Gun axis
Using the J7 and J8 Keys to Jog Extended Axes
When the robot group has extended axes, the J7 and J8 keys can be used to jog these extended
axes without any additional setup. For example, when a robot group has 6 axes and 3 extended
axes, J7 will jog the first extended axis, and J8 will jog the second extended axis. To jog the third
extended axis, you have to switch to sub group to jog it.
When a robot group has 5 axes and 3 extended axes, J6 will jog the first extended axis, J7 will jog
the second extended axis, and J8 will jog the third extended axis.
For a system with a 6 axes, robot group and 2 extended axes, the position display page appears
as follows:
POSITION
Joint
Tool: 1
J1: 180.000 J2:
24.637 J3:
J4:
66.560 J5: -18.600 J6:
E1: 998.995 E2:
0.000
J2/J3 Interaction:
-5.751
-30.388
-69.385
Using the J7 and J8 Keys to Jog a Positioner Axis
To use the J7 and J8 jog keys to jog a positioner axis, you need to define the mapping of each key
to a specific axis of the positioner. Use Procedure 5-2 to perform the setup.
Procedure 5-2 Assigning J7 and J8 to Jog a Positioner Axis
1. Press MENU.
2. Select System.
3. Press F1, [TYPE].
5–12
MAROUHT9102171E REV F
5. JOGGING THE ROBOT
4. Select item CONFIG. You will see a screen similar to the following. This menu can be
used to set up the mapping.
System/Config
49/49
39
40
41
42
43
44
45
46
47
48
49
Set when prompt displayed: DO[
0]
Output when WAIT on Input:<*DETAIL*>
Signal if OVERRIDE = 100
DO[
0]
Hand broken :
<*GROUPS*>
Remote/Local setup:
OP panel key
External I/O(ON:Remote):DI [
0]
UOP auto assignment: None
Multi Program Selection:
TRUE
WAIT at Taught Position:
FALSE
Brake control ECO mode:
FALSE
J7, J8 Jog Key :
<*DETAIL*>
[ TYPE ]
5. To display the SYSTEM/CONFIG menu again, press PREV.
6. To map J7 to the first axis of positioner axis, and J8 to the second axis of positioner axis
in a system that has an R-2000iB/165F as group 1 , and 2 axes positioner as group 2 for
example, perform the following:
a. Map J7 to the first axis of positioner axis by changing item 1, J7 Group from 1 to
2. The menu display for robot group description will change from R-2000iB/165F
to GEN_POS.
b. Change item 2, J7 Axis, from 0 to 1
System/Config
J7, J8 Jog Keys
Group:
1
2
3
4
5
6
J7 Group
J7 Axis
J7 Label
J8 Group
J8 Axis
J8 Label
[ TYPE ]
:
:
:
:
:
:
1
R-2000iB/165F
2
0
‘’
1
0
‘’
GEN_POS
R-2000iB/165F
GROUP
c. Map J8 to the 2nd axis of positioner axis by changing item 4, J8 Group, from 1 to
2. The menu display for robot group description will change from R-2000iB/165F
to GEN_POS.
d. Change item 5, J8 Axis, from 0 to 2
5–13
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
System/Config
J7, J8 Jog Keys
Group:
1
2
3
4
5
6
J7 Group
J7 Axis
J7 Label
J8 Group
J8 Axis
J8 Label
1
:
:
:
:
:
:
R-2000iB/165F
2
1
‘’
2
2
‘’
[ TYPE ]
GEN_POS
GEN_POS
GROUP
e. If you display the position display menu, additional J7, J8 Keys mapping and position
information of the mapping axis will be displayed as follows.
POSITION
Joint
J1:
J4:
0
Tool: 1
180.000 J2:
66.560 J5:
24.637 J3:
-18.600 J6:
J2/J3 Interaction:
-30.388
-69.385
-5.751
(J7) G2 / J1
(J8) G2 / J2
986.119
180.000
Note If you have multiple panes displayed, the position display will not reflect your
changes on the other pane until you either exit and re-enter position display, or change
display coordinate (such as from JOINT to WORLD or USER).
f. Step 4 ( Optional ). This step allow you to change description of J7, J8 mapping from
default ( Gx / Jy ) to your own label
• Change the J7 label to Table axis 1 as shown below.
System/Config
J7, J8 Jog Keys
Group:
1
2
3
4
5
6
J7 Group
J7 Axis
J7 Label
J8 Group
J8 Axis
J8 Label
[ TYPE ]
5–14
:
:
:
:
:
:
1
R-2000iB/165F
2
1
‘Table axis 1’
2
2
‘’
GROUP
GEN_POS
GEN_POS
MAROUHT9102171E REV F
5. JOGGING THE ROBOT
• Change the J8 label to Table axis 2 as shown below.
System/Config
J7, J8 Jog Keys
Group:
1
2
3
4
5
6
J7 Group
J7 Axis
J7 Label
J8 Group
J8 Axis
J8 Label
1
:
:
:
:
:
:
R-2000iB/165F
2
1
‘Table axis 1’
2
2
‘Table axis 2’
[ TYPE ]
POSITION
Joint
J1:
J4:
GEN_POS
GEN_POS
GROUP
0
Tool: 1
180.000 J2:
66.560 J5:
24.637 J3:
-18.600 J6:
J2/J3 Interaction:
-30.388
-69.385
-5.751
(J7) Table axis 1
(J8) Table axis 2
986.119
180.000
Note In a multiple group system, each group has its own mapping for the J7, and J8 keys.
When you toggle groups in a multiple group system, the J7, and J8 keys automatically switch to
the mapping of the toggled group. You can use F3, GROUP to switch to “J7, J8 Jog Keys” setup
menu for a different group.
For example, in a system with an R-2000iB/165F as group 1, M-20iA/10L as group 3, and
positioner as group 2. If you press F3, GROUP and select 3, the display will change to be similar
to the following.
System/Config
J7, J8 Jog Keys
Group:
1
2
3
4
5
6
J7 Group
J7 Axis
J7 Label
J8 Group
J8 Axis
J8 Label
[ TYPE ]
:
:
:
:
:
:
1
M-20iA/10L
3
0
‘’
3
0
‘’
M-20iA/10L
M-20iA/10L
GROUP
5–15
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
Note You can follow the steps described above to set up mapping of the J7, and J8 jog keys
for an M-20iA/10L.
You can disable the J7 jog key by setting item 2, J7 axis, to 0. You can disable the J8 jog key by
setting item 5, J8 axis, to 0.
When the J7 key is disabled, the position display for J7 will not be shown.
When the J8 key is disabled, the position display for J8 will not be shown.
Using the J7 and J8 Keys to Jog the Servo Gun Axes
Please refer to the Servo Gun Function Operator's Manual for details.
You can change the following system variables directly to map the J7 and J8 keys to jog a certain
software axis. Refer to Table 5–5 .
Table 5–5. $JOG_GROUP[] System Variables
System Variable in $JOG_GROUP[]
Type
Description
$J7_GROUP
INTEGER
The group number that J7 is mapped to.
$J7_AXIS
INTEGER
The axis number that J7 is mapped to.
$_GROUP
INTEGER
The group number that J8 is mapped to.
$J8_AXIS
INTEGER
The axis number that J8 is mapped to.
$J7_LABEL
STRING[15]
This is an optional string for the Position Display Screen.
If this string is empty, on the Position Display Screen
will show Gx/Ay next to (J7) line. If this string is set, its
contents will replace Gx/Ay.
$J8_LABEL
STRING[15]
This is an optional string for the Position Display Screen.
If this string is empty, on the Position Display Screen
will show Gx/Ay next to (J8) line. If this string is set, its
contents will replace Gx/Ay.
$DSB_J7J8
BOOLEAN
When the value is TRUE, both J7 and J8 key will be
disabled.
$DSBL_KEY[1–6]
BOOLEAN
When the value is TRUE, the specified jog key will be
disabled.
5.10 Incremental Jogging
The Incremental Jog function allows the operator to specify the distance to jog the robot when
the jog key is pressed.
When this function is enabled, the step width currently selected is displayed under the speed
override screen display. The display shown in Figure 5–3 indicates that the robot moves at 10mm
per step in Linear jog and each axis rotates at 1 deg per step in Joint jog.
5–16
MAROUHT9102171E REV F
5. JOGGING THE ROBOT
To change the step width, press the COORD key while holding down [SHIFT] key. The list of
available step widths is displayed. Select the desired step width.
Note When Continuous is selected, the jogging behavior is the same as when this function is
disabled.
Figure 5–3. Incremental Jog Distance Display
5.11 Jogging the Robot and Other Axes
You can use the iHMI Guide tutorials to learn how to perform this procedure.
You can use iHMI Guides to perform a similar procedure.
Use Procedure 5-3 to select sub-groups and jog the robot and other axes.
5–17
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
Procedure 5-3 Jogging the Robot and Other Axes
Condition
• All personnel and unnecessary equipment are out of the workcell.
• All EMERGENCY STOP faults have been cleared. Refer to Section 9.2 .
• All other faults have been cleared and the fault light is not illuminated.
• The MODE SELECT switch is in the T1 or T2 position.
Warning
Make certain that all safety requirements for your workplace have
been followed; otherwise, you could injure personnel or damage
equipment.
Step
Caution
Use of the JOINT motion mode with the F-200i series robots can cause
damage to the robot. Jogging the F-200i series robot in JOINT is only
permissible when single axis mastering.
1. Select a coordinate system by pressing the COORD key on the teach pendant until the
coordinate system you want is displayed in the upper right hand corner of the teach pendant
screen, as shown below.
Note The jog speed value will automatically be set to 10%, when the teach pendant is turned
on, or when the controller is first powered up.
2. Hold the teach pendant and continuously press the DEADMAN switch on the back of
the teach pendant.
5–18
MAROUHT9102171E REV F
5. JOGGING THE ROBOT
Note If you compress the DEADMAN switch fully, robot motion will not be allowed and
an error occurs. This is the same as when the DEADMAN switch is released. To clear the
error, press the DEADMAN switch in the center position and press RESET.
3. Turn the teach pendant ON/OFF switch to the ON position.
Note If you release the DEADMAN switch while the teach pendant is ON, an error will
occur. To clear the error, continuously press the DEADMAN switch and then press the
RESET key on the teach pendant.
4. If your system is configured with multiple motion groups, select the motion group you
want to jog by doing the following:
a. Press and hold the SHIFT key and press COORD to display the JOG menu.
Figure 5–4. Jog Menu
b. Move the cursor to GROUP and press the appropriate numeric key.
5. If your system has extended axes, select the sub-group that you want to jog by doing
the following:
a. Press FCTN.
b. Move the cursor to TOGGLE SUB-GROUP and press ENTER You will see a screen
similar to the following.
PROGRAM NAME
S
JOINT 10%
5–19
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
c. To de-select a sub-group press FCTN, move the cursor to TOGGLE SUB-GROUP,
and press ENTER.
6. If you want to use wrist jogging,
a. Press FCTN.
b. Move the cursor to TOGGLE WRIST JOG and press ENTER. The status line indicator
for wrist jog is displayed in the upper right hand corner of the teach pendant screen.
See the following screen for an example.
PROGRAM NAME
S
W/TOOL 10%
c. To de-select wrist jogging press FCTN, move the cursor to TOGGLE WRIST JOG,
and press ENTER.
Note WRIST JOG is not available or applicable in "JOINT" mode.
7. If you want to use optional remote TCP jogging,
a. Select the Cartesian coordinate system you want to use for remote TCP jogging.
b. Press FCTN.
c. Move the cursor to TOGGLE REMOTE TCP and press ENTER. The status line
indicator for remote TCP jogging is displayed as "Rn/" in the upper right hand corner
of the teach pendant screen next to the coordinate system, where "n" is the number of
the remote TCP frame.
PROGRAM NAME
S
R1/TOOL 25%
d. Press FCTN.
e. Move the cursor to CHANGE RTCP FRAME and press ENTER. Each time you select
CHANGE RTCP FRAME, the user frame selection is advanced: from 1 (R1) to 2 (R2)
to 3 (R3) to 4 (R4) to 5 (R5) and then back to 1 (R1). Select the user frame (UFRAME)
you want to use for remote TCP jogging.
f. To de-select remote TCP jogging, press FCTN and move the cursor to TOGGLE
REMOTE TCP and press ENTER.
8. Select a jog speed by pressing and releasing the appropriate jog speed key until the jog
speed you want is displayed in the upper right hand corner of the teach pendant screen, as
shown below.
5–20
MAROUHT9102171E REV F
PROGRAM NAME
5. JOGGING THE ROBOT
S
TOOL 25%
Note Set the jog speed to a low percentage (%) value if you are inexperienced in jogging
the robot, or if you are uncertain how the robot will move.
Warning
In the next step, the robot will move. To stop the robot immediately
any time during jogging, release the DEADMAN switch or press
the EMERGENCY STOP button.
Caution
Use of the JOINT motion mode with the F-200i series robots can cause
damage to the robot. Jogging the F-200i series robot in JOINT is only
permissible when single axis mastering.
9. To jog, press and hold the SHIFT key and continuously press the jog key that corresponds to
the direction in which you want to move the robot. To stop jogging, release the jog key.
5–21
5. JOGGING THE ROBOT
MAROUHT9102171E REV F
Note If you have set the singularity stop system variable,
$PARAM_GROUP[n].$T1T2_SNGSTP to TRUE, the robot will stop at singularity points
while in T1 or T2 mode.
10. When you are finished jogging, turn the teach pendant ON/OFF switch to OFF, and release
the DEADMAN switch.
5.12 Jogging the Robot without the Teach Pendant
Refer to the “Advanced iPendant Functions” chapter of the Internet Options Manual for more
information.
5–22
Chapter 6
FRAMES
Contents
Chapter 6
6.1
6.2
6.3
6.4
6.5
6.6
6.6.1
6.6.2
6.6.3
6.7
6.7.1
6.7.2
6.7.3
6.8
6.8.1
6.9
6.9.1
6.9.2
6.10
6.10.1
6.10.2
6.11
6.12
FRAMES .............................................................................................
Frames Overview .................................................................................
How Frames are Used ............................................................................
Using the Right-Hand Rule to Understand Robot Frames .....................
Frame Types ..........................................................................................
World Frame ..........................................................................................
Tool Frame .............................................................................................
Tool Frame General Information ............................................................
Setting Up a Tool Frame ........................................................................
Selecting a Tool Frame ......................................................................
User Frame ..........................................................................................
Overview ..............................................................................................
Setting Up a User Frame ......................................................................
Selecting a User Frame ........................................................................
Remote TCP Frame ..............................................................................
Setting Up a Remote TCP Frame ........................................................
Jog Frame ............................................................................................
Setting Up Jog Frame ........................................................................
Selecting a Jog Frame .......................................................................
Cell Frame and Cell Floor ....................................................................
Cell Frame Setup .................................................................................
Cell Floor Setup ...................................................................................
Saving Frame Data ..............................................................................
Frame Visualization .............................................................................
6–1
6–2
6–2
6–4
6–5
6–5
6–6
6–6
6–9
6–35
6–37
6–37
6–39
6–57
6–58
6–58
6–68
6–68
6–78
6–79
6–80
6–85
6–85
6–87
6–1
6. FRAMES
MAROUHT9102171E REV F
6.1 Frames Overview
A 3D Cartesian coordinate system is a set of three planes at right angles to each other. The point
at which all three planes intersect is the origin of the system. FANUC typically refers to such a
system as a Frame. In the robot system, the intersecting edges of the planes are the X, Y, and
Z axes of the frame.
See Figure 6–1 .
Figure 6–1. Cartesian Coordinate System
Note If you are using PalletTool, your gripper might be set up differently than the one shown in
the illustrations in this section. The orientation of the gripper depends on how the pneumatics of
the gripper are set up. For example, if you are palletizing very large boxes, your gripper might be
mounted perpendicularly to what is shown in the illustrations.
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
6.2 How Frames are Used
Frames are used to describe the location and orientation of a position in three-dimensional space.
The location is the distance in the X, Y, and Z directions from the origin of the reference frame.
The orientation is the rotation about the X, Y, and Z axes of the reference frame. When you record
a position, its location and orientation are automatically recorded as X, Y, Z, W, P, and R relative
to the origin of the frame it uses as a reference.
The location of a position is expressed as three dimensions, which, in the robot, are measured in
millimeters from the origin in the X, Y, and Z directions. For example, 1000,500,500 means the
6–2
MAROUHT9102171E REV F
6. FRAMES
position is 1000mm in the X direction, 500mm in the Y direction, and 500mm in the Z direction
from the origin. See Figure 6–2
Figure 6–2. Position Relative to a Frame
The orientation of a robot position is measured in degrees of rotation about the X, Y, and Z axes.
For example, 0,45,0 means that the position is rotated +45 degrees about the Y axis and is not
rotated about the X or Z axes. See Figure 6–3
Figure 6–3. Rotated Position
Moving the Location and Orientation of a Frame
You can move the location and orientation of any frame except the world frame. When you move
the location or orientation of a frame, all positions recorded with that frame also move. However,
the location of those positions will stay the same within that frame.
See Section 6.7 for the default location of the user frame.
6–3
6. FRAMES
MAROUHT9102171E REV F
Caution
If you change any TOOL or USER frame data after a program has been
taught, you must reteach each program position or range. If you do not,
damage could occur to the equipment.
6.3 Using the Right-Hand Rule to Understand Robot Frames
In mathematics and physics, the right-hand rule is a common mnemonic to aid in understanding
three-dimensional vector relationships. In robotics, with proper positioning of the hand, the
right-hand rule can also be used in remembering which direction each frame vector should be
pointing.
FANUC’s use of the right-hand rule assigns the X-vector to the index finger, the Y-vector to the
middle finger, and the Z-vector to the thumb as shown in Figure 6–4 .
If the right hand is positioned with the index finger pointing toward the front of the robot (usually
opposite of the base cables) the X, Y, and Z of the World frame can easily be recalled as illustrated
in Figure 6–5 .
Figure 6–4. Right-hand Rule
6–4
MAROUHT9102171E REV F
6. FRAMES
Figure 6–5. World Positive X, Y, and Z Vector Directions
6.4 Frame Types
The robot uses five kinds of frames. The different kinds of frames make it easier to perform
certain tasks. The kinds of frames are:
• World frame - the default frame of the robot
• Tool frame - a user-defined frame
• User frame - a user-defined frame
• Jog frame - a user-defined frame
• Cell frame - a user-defined frame
The Cell Floor is also set up under this menu item. It is only used to place the picture of the
floor in the 3D display.
6.5 World Frame
The world frame is a default frame of the robot and cannot be changed. It is the basis for all taught
positions and all taught frames within the robot. On most FANUC serial-link robots, the origin of
World frame is typically designated as the intersection of the center of the robot base with a plane
at the level of the motor controlling joint 2. This origin, along with the X, Y, and Z directions, is
illustrated in Figure 6–6 . Robot positions that reference the World frame reflect the position of the
robot’s Tool Center Point (TCP) in X,Y,Z,W,P, and R relative to the origin of this frame.
6–5
6. FRAMES
MAROUHT9102171E REV F
See Figure 6–6 for an example. Your robot might be different depending on your system.
Figure 6–6. World Frame
6.6 Tool Frame
6.6.1 Tool Frame General Information
Tool frame is used to describe the orientation and location of the physical tool on the robot. By
default, the tool frame has its origin at the robot faceplate.
6–6
MAROUHT9102171E REV F
6. FRAMES
Figure 6–7. Tool Frame Origin Default Location
When you set up a Tool frame (sometimes referred to as the User Tool or UTool), you move the
default Tool frame origin from the robot faceplate (see Figure 6–7 ) to the point on the applicator,
gun, torch, or tool at which the painting, welding, sealing, handling, or other application work is to
be done (see Figure 6–8 ). The tool frame origin is often referred to as the Tool Center Point (TCP).
Figure 6–8. Tool Frame Origin Moved to the End of the Tool
Notice the angle of the tool frame axes (X, Y, and Z) did not change between Figure 6–7 and Figure
6–8 since the shape of the tool did not require any such change. If, however, the tool has an angle to
it, we may want to adjust the angle of X, Y, and Z of the tool frame to reflect this (see Figure 6–9 ).
6–7
6. FRAMES
MAROUHT9102171E REV F
Figure 6–9. Tool Frame Adjusted to Accommodate Angled Tool
Things to keep in mind when using tool frames.
• Before you use tool frame, you must set up its location and orientation.
• The controller allows you to set up many different tool frames for each robot. The default
number is ten, but you can configure the controller for up to 253 tool frames. They will be
stored in the system variable $MNUTOOL.
• You can select only one tool frame at a time to be active. The frame number will be stored
in the system variable $MNUTOOLNUM.
• You can jog the robot in the active tool frame.
• If a system uses different end-of-arm-tooling (EOAT), each tool will need a different tool
frame. By setting up a different tool frame for each tool, the existing program points will be
valid, regardless of the tool used.
Table 6–1 lists the tool frame setup items and function key operations.
Table 6–1. Tool Frame Setup Screen Items
ITEMS
DESCRIPTION
Tool Frame Setup/xxxx
This line shows the current selected method for setting each tool frame.
Frame number 1-10
These lines show the current position and comment for each available
tool frame.
X
This column shows the coordinate of each tool frame.
Y
This column show the coordinate of each tool frame.
Z
This column show the coordinate of each tool frame.
6–8
MAROUHT9102171E REV F
6. FRAMES
ITEMS
DESCRIPTION
Comment
This column shows the comment for each tool frame.
Active TOOL $MNUTOOLNUM[1] = 1
This line indicates which tool frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
DETAIL
Press this key to display detailed information for each tool frame and to
set the definition and comment of each tool frame.
OTHER
Press this key to select one of the other available reference frames or
to choose the motion group for the frame you are setting up (in systems
with multiple motion groups).
CLEAR
To set the numerical values of any tool frame to zero, move the cursor
to the frame number, press CLEAR and answer YES to the prompt.
SETIND
To select the tool frame to use, press F5, SETIND, type the number of
the tool frame you want, and press ENTER. This sets the active tool
frame ($MNUTOOLNUM[1]) to the number of the frame you want. If F5,
SETIND, is not displayed, press PREV.
6.6.2 Setting Up a Tool Frame
You can use the following standard methods to define the tool frame:
• Two Point +Z method
• Three Point method
• Four Point method
• Six Point (XZ) method
• Six Point (XY) method
• Direct Entry method
Note If you have a 4-axis robot, you can define a tool frame using only the two point +Z
or the direct entry method.
If a system uses different end-of-arm-tooling (EOAT), each tool will need a different tool frame.
By setting up a different tool frame for each tool, the existing program points will be valid,
regardless of the tool used.
6.6.2.1 Two Point +Z Method
This function can set TCP for robots which can not tilt their tools to the XY plane in the world
frame (i.e. 4 axes robots). Teach the approach point 1 and 2 with the tool touching a certain fixed
point from two different approach statuses. X and Y values are calculated from these two approach
points. You can measure the Z value with a ruler, etc. and input the Z value directly. Also, enter
the W, P, and R values directly. (However, input 0 for all three values when the direction of the
flange and the direction of the tool attitude are same.)
6–9
6. FRAMES
MAROUHT9102171E REV F
Procedure 6-1 Setting Up Tool Frame Using the Two Point +Z Method
You can use iHMI Guides to perform a similar procedure.
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR, to
clear frame data.
If you modify an existing frame, make sure that all frame data is set the
way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
1. Press MENU.
2. Select SETUP
3. Press F1, [TYPE].
4. Select Frames.
5. Display the tool frame list screen. The tool frame list screen may show right away, or you
may need to press F3, [OTHER] and choose Tool Frame.
SETUP Frames
Tool Frame
/ Direct Entry
X
Y
Z
Comment
1 100.0 0.0 120.0 [TOOL1
]
2 200.0 0.0 255.5 [TOOL2
]
3 0.0 0.0 350.0 [TOOL3
]
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 [
]
10 0.0 0.0 0.0 [
]
Active TOOL $MNUTOOLNUM [G:1] = 1
4/10
6. Move the cursor to the tool frame number line you want to set.
7. Press F2, DETAIL. The tool frame setup screen of the selected frame number is displayed.
8. Press F2, METHOD.
9. Select Two Point + Z. The tool frame setup is displayed, and Z, W, P, and R contain present
tool frame value.
6–10
MAROUHT9102171E REV F
6. FRAMES
Figure 6–10. Tool frame setup screen (Two Point + Z)
SETUP Frames
Tool Frame
Two Point + Z
Frame Number:
4
X:
0.0
Y:
0.0
Z:
0.0
W:
0.0
P:
0.0
R:
0.0
Comment: *********************
Approach point 1: UNINIT
Approach point 2: UNINIT
Z:
0.000
W:
0.000
P:
0.000
R:
0.000
Active TOOL $MNUTOOLNUMN[1] = 1
1/7
10. Teach the approach point.
a. Move the cursor to each approach point.
b. Jog the robot to the position you want to record.
c. Press and hold the SHIFT] key and press F5, RECORD to record the data of the current
position as the reference position.
Note If a reference point has already been taught, RECORDED is displayed.
SETUP Frames
Tool Frame
Two Point + Z
Frame Number:
4
X:
0.0
Y:
0.0
Z:
0.0
W:
0.0
P:
0.0
R:
0.0
Comment:
TOOL4
Approach point 1: RECORDED
Approach point 2: UNINIT
Z:
0.000
W:
0.000
P:
0.000
R:
0.000
Active TOOL $MNUTOOLNUMN[1] = 1
2/7
Note
• Set the flange (faceplate) upward or downward when teaching approach points.
Also, match the orientation of flanges of the two approach points.
• • Teach the approach point 1 and 2 at different locations.
If the above mentioned conditions are not met, the message, “Invalid set of input
points,” will be displayed on the coordinates screen.
11. After you teach all approach points, the description next to the approach points will be
changed to USED and the tool frame will be calculated.
6–11
6. FRAMES
MAROUHT9102171E REV F
12. Measure the Z value with a ruler, etc. and input the Z value directly. Also, input W, P,
and R values directly.
Note When Z, W, P, and R are input, X and Y are changed if all approach points are
RECORDED.
SETUP Frames
Tool Frame
Two Point + Z
Frame Number:
4
X:
-5.5
Y:
6.6
Z:
10.0
W:
0.0
P:
0.0
R:
0.0
Comment:
TOOL4
Approach point 1: USED
Approach point 2: USED
Z:
10.000
W:
0.000
P:
0.000
R:
0.000
Active TOOL $MNUTOOLNUMN[1] = 1
2/7
13. To display the tool frame list screen, press [PREV] key. You can see the settings of all
the tool frames.
SETUP Frames
Tool Frame
/ Two Point + Z
X
Y
Z
Comment
1 100.0 0.0 120.0 [TOOL1
]
2 200.0 0.0 255.5 [TOOL2
]
3 0.0 0.0 350.0 [TOOL3
]
4 -5.5 6.6 10.0 [TOOL4
]
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 [
]
10 0.0 0.0 0.0 [
]
Active TOOL $MNUTOOLNUM [G:1] = 1
4/10
14. To make the set tool frame effective, press F5, SETIND, then enter the frame number.
Caution
1 If you do not press F5, SETIND, the tool frame will not be effective.
2 After all coordinate systems are set, the setting information should be
saved in external storage in case the information needs to be re-loaded.
Otherwise, the current setting information would be lost when it is
changed.
Note To select the number of a coordinate system to be used, the jog menu can also be
used. See Section 5.8 .
6–12
MAROUHT9102171E REV F
6. FRAMES
15. To delete the data of the set frame, move the cursor to the desired frame and press F4,
CLEAR. You can select whether or not to clear its comment..
6.6.2.2 Three Point Method
Use the three point method to define the location of the tool frame when the values cannot be
measured and directly entered. The three approach points must be taught with the tool touching a
common point from three different approach directions.
Table 6–2. Tool Frame Setup Three Point DETAIL Screen Items
ITEMS
DESCRIPTION
Frame number
This line shows the number of the tool frame being defined.
X, Y, Z, W, P, R
These items show the current coordinates of the tool frame being
defined.
Comment
This item is used to add a comment.
Approach point 1
This item is used to define the first approach point.
Approach point 2
This item is used to define the second approach point.
Approach point 3
This item is used to define the third approach point.
Active TOOL $MNUTOOLNUM[1] = 1
This line indicates which tool frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
[METHOD]
Press this key to select a method of entry.
[FRAME]
Press this key to select a frame.
MOVE_TO
Press this key to move to a recorded position. Move the cursor to the
desired point and press MOVE_TO along with the SHIFT key.
RECORD
Press this key along with the SHIFT key to record a position.
Procedure 6-2 Setting Up Tool Frame Using the Three Point Method
You can use iHMI Guides to perform a similar procedure.
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR, to
clear frame data.
If you modify an existing frame, make sure that all frame data is set the
way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
6–13
6. FRAMES
MAROUHT9102171E REV F
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
Note If you have a 4-axis robot (such as an A-520i or M-410iHS/iHW), you can define a tool
frame using only the direct entry method or the two point +Z method.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups, press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
On the iPendant, you can press the GROUP key and press the numeric key to switch to a
specified group. Press the GROUP key and the 0 key together to toggle the sub group.
6. If tool frames are not displayed, press F3, [OTHER], and select Tool Frame. If F3,
[OTHER], is not displayed, press PREV.
7. To display the settings for all frames, press PREV repeatedly until you see a screen
similar to the following.
SETUP Frames
Tool Frame Setup / Three Point
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 TOOL $MNUTOOLNUM[1]=1
Note The maximum number of tool frames is set in the system variable
$SCR.$MAXNUMUTOOL. Refer to the Software Reference Manual for more information.
8. To set the numerical values to zero, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
6–14
MAROUHT9102171E REV F
6. FRAMES
Warning
Do not run a KAREL program that includes motion statements. All
motion must be initiated from a teach pendant program. Otherwise,
the robot could move unexpectedly, personnel could be injured,
and equipment could be damaged.
9. Press F2, DETAIL.
10. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
11. Press F2, [METHOD].
12. Select Three Point. You will see a screen similar to the following.
SETUP Frames
Tool Frame Setup / Three Point
Frame Number: 1
X: 0.0
Y: 0.0
Z: 0.0
W: 0.0
P: 0.0
R: 0.0
Comment: ****************
Approach point 1:
UNINIT
Approach point 2:
UNINIT
Approach point 3:
UNINIT
Active TOOL $MNUTOOLNUM[1]=1
13. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
d. When you are finished, press ENTER.
Note Record the three approach points with the tool tip touching the same point from
three different approach directions.
14. Record the first approach point (Approach Point 1):
6–15
6. FRAMES
MAROUHT9102171E REV F
a. Move the cursor to Approach point 1.
b. Jog the robot so that the tool tip touches a reference point.
c. Press and hold the SHIFT key and press F5, RECORD.
15. Record the second approach point (Approach Point 2):
a. Move the cursor to Approach point 2.
b. Rotate the faceplate at least 90° (but no more than 360°) about the z axis of the tool
coordinates.
c. Jog the robot so that the tool tip touches the reference point used in Step 14 .
d. Press and hold the SHIFT key and press F5, RECORD.
16. Record the third approach point (Approach Point 3):
6–16
MAROUHT9102171E REV F
6. FRAMES
a. Move the cursor to Approach point 3.
b. Rotate the tool about either the x or Y axis of the tool coordinates.
c. Jog the robot so that the tool tip touches the reference point used in Step 14 .
d. Press and hold the SHIFT key and press F5, RECORD.
17. To select the tool frame to use, press F5, SETIND, type the number of the tool frame you
want, and press ENTER. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to Tool, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
18. Jog the robot in the frame you just taught.
• If the TCP is correct, it will remain stationary during rotational moves. Go to Step 20 .
Caution
When you are finished setting the frame configuration, save
the information to the default device so that you can reload the
configuration data if necessary. Otherwise, if the configuration is
altered, you will have no record of it.
• If the TCP is not correct, it will not remain stationary during rotational moves. You need
to review your recorded positions. If they are not correct, re-record them correctly.
Go to Step 19 .
Warning
When you use F4, MOVE_TO, to move the robot, unexpected
motion can occur. This could injure personnel or damage
equipment.
6–17
6. FRAMES
MAROUHT9102171E REV F
19. To move to a recorded position, move the cursor to the desired position, press and hold
the SHIFT key and press F4, MOVE_TO.
20. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the tool frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV, on the default device.
Display the SYSTEM Variables menu,
k. Press MENU.
l. Select SYSTEM.
m. Press F1, [TYPE].
n. Select Variables.
o. Press FCTN.
p. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device. This is optional since frame variables are saved in
SYSFRAME.SV.
6.6.2.3 Four Point Method
Use the four point method to define the precise location of the tool frame by utilizing the feedback
provided by this method on how well the approach positions are taught. This method requires
four approach points to be taught with the tool touching a common point from four different
approach positions. This method indicates the approach position with maximum TCP error so
that user can correct that position and re-compute the tool frame. This will reduce the effect of
user’s teaching errors incorporated in the computation of the tool frame. Adjust and re-teach the
approach positions that are slightly off iteratively until the tool frame computed is of desired
accuracy on the basis of the TCP error feedback.
Note The four point method of defining the tool frame always places the +Z direction of the
frame outward from the faceplate.
6–18
MAROUHT9102171E REV F
6. FRAMES
Table 6–3. Tool Frame Setup Four Point DETAIL Screen Items
ITEMS
DESCRIPTION
Frame number
This line shows the number of the tool frame being defined.
X, Y, Z, W, P, R
These items show the current coordinates of the tool frame being defined.
Comment
This item is used to add a comment.
Approach point 1
This item is used to define the first approach point.
Approach point 2
This item is used to define the second approach point.
Approach point 3
This item is used to define the third approach point.
Approach point 4
This item is used to define the fourth approach point.
Mean error
Mean TCP error of the four approach positions.Mean error gives an indication of
how much the four approach positions deviate. A value of ****** indicates that
it is uninitialized.
Max. error
Max.TCP error of the approach positions; the approach position corresponding to
the max. error is also indicated. A value of ****** indicates that it is uninitialized.
Active TOOL $MNUTOOLNUM[1]
=1
This line indicates which tool frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
[METHOD]
Press this key to select a method of entry.
[FRAME]
Press this key to select a frame.
MOVE_TO
Press this key to move to a recorded position. Move the cursor to the desired point
and press MOVE_TO along with the SHIFT key.
RECORD
Press this key along with the SHIFT key to record a position.
Procedure 6-3 Setting Up Tool Frame Using the Four Point Method
You can use iHMI Guides to perform a similar procedure.
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR, to
clear frame data.
If you modify an existing frame, make sure that all frame data is set the
way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
6–19
6. FRAMES
MAROUHT9102171E REV F
Warning
Do not use the four point method if you are using weaving, Thru-Arc
Seam Tracking (TAST), coordinated motion, or TorchMate. When you
use these features, you must use the six point method or the direct
entry method to define the tool frame. Failure to do so can cause injury
to personnel or damage to equipment.
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups, press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
6. If tool frames are not displayed, press F3, [OTHER], and select Tool Frame.
7. To display the settings for all frames, press PREV repeatedly until you see a screen
similar to the following.
SETUP Frames
Tool Frame Setup / Four Point
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 TOOL $MNUTOOLNUM[1]=1
8. To set the numerical values to zero, move the cursor to the frame number, press F4, CLEAR,
and then press F4, YES, to confirm.
9. Press F2, DETAIL.
10. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
11. Press F2, [METHOD].
12. Select Four Point. You will see a screen similar to the following.
6–20
MAROUHT9102171E REV F
6. FRAMES
SETUP Frames
Tool Frame Setup / Four PT Tool
Frame Number: 1
X: 0.0
Y: 0.0
Z: 0.0
W: 0.0
P: 0.0
R: 0.0
Comment: ****************
Approach point 1:
UNINIT
Approach point 2:
UNINIT
Approach point 3:
UNINIT
Approach point 4:
UNINIT
Mean Error: ******* mm
Max. Error: ******* mm at point[0]
Active TOOL $MNUTOOLNUM[1]=1
13. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
d. When you are finished, press ENTER.
Note Record the four approach points with the tool tip touching the same point from four
different approach directions.
14. Record the first approach point:
a. Move the cursor to Approach point 1.
b. Jog the robot, in the WORLD coordinate system, so that the tool tip touches a reference
point.
c. Press and hold the SHIFT key and press F5, RECORD.
15. Record the second approach point:
6–21
6. FRAMES
MAROUHT9102171E REV F
2
REF. POINT
a. Move the cursor to Approach point 2.
b. Jog the robot in WORLD so that the tool tip moves away from the reference point.
Either jog axis 4 and/or 5 in JOINT or rotate TCP about WORLD +x, WORLD +y
and/or WORLD +z so that the tool has a significantly different approach angle from
approach point1.
c. Jog the robot, in the WORLD coordinate system, so that the tool tip touches the
reference point used in Step 14 .
d. Press and hold the SHIFT key and press F5, RECORD.
16. Record the third approach point:
a. Move the cursor to Approach point 3.
b. Jog the robot in WORLD so that the tool tip moves away from the reference point.
Jog axis 4 and/or 5 in JOINT or rotate TCP about WORLD +x, WORLD +y and/or
WORLD +z so that the tool has a significantly different approach angle from approach
points, 1 and 2.
c. Jog the robot, in the WORLD coordinate system, so that the tool tip touches the
reference point used in Step 14 .
d. Press and hold the SHIFT key and press F5, RECORD.
17. Record the fourth approach point:
6–22
MAROUHT9102171E REV F
6. FRAMES
4
REF. POINT
a. Move the cursor to Approach point 4.
b. Jog the robot in WORLD so that the tool tip moves away from the reference point.
Jog axis 4 and/or 5 in JOINT or rotate TCP about WORLD +x, WORLD +y and/or
WORLD +z so that the tool has a significantly different approach angle from approach
points, 1, 2 and 3.
c. Jog the robot, in the WORLD coordinate system, so that the tool tip touches the
reference point used in Step 14 .
d. Press and hold the SHIFT key and press F5, RECORD.
18. The Four Point Method of teaching tool frame is now complete.
19. You will see the message, “New position calculated” and the tool frame computed will be
displayed along with the mean and max. errors of all four approach points.
20. If the mean and max. TCP errors are within desired limits, the new tool frame is ready to use.
21. If the user wants better accuracy, correct the approach position corresponding to max. error
and re-compute the tool frame.
a. Move the cursor to the Approach point indicated as having the max. error.
b. Press and hold the SHIFT key and press F4, MOVE_TO.
c. Adjust the position to correct any positional errors.
d. Press and hold the SHIFT key and press F5, RECORD to record the new approach
position.
e. Tool frame is computed again.
f. Repeat Step 21 if more accuracy is needed.
Note If the mean error does not decrease after re-teaching the point with max. error, do
not proceed any further. At this point the mean error is attributed to inaccuracies in
mastering or calibration and not due to user error in teaching.
6–23
6. FRAMES
MAROUHT9102171E REV F
Note If the mean error decreases after re-teaching the point with max. error, it implies
that the user error in teaching was corrected in the subsequent tool frame calculation.
Caution
The TCP errors are calculated based on the recorded positions. It
provides a guideline for the user to iteratively improve the accuracy of
the recorded positions. The error measures are reasonable only when
one of the four positions recorded is slightly off. When two or more
recorded positions are inaccurate and deviate more from the reference
position, the error feedback may not be accurate. When the difference
between max. and mean errors is not significantly large, more than one
recorded positions deviate from the reference position.
Caution
When the mean error is very small, it is possible that three of the four
recorded positions are inaccurate (relatively speaking) resulting in the
correct position having the largest deviation from the mean. Using a
precise tool and a reference point for teaching should overcome this.
22. If the approach angles of the input positions are redundant, you will see the message, “Invalid
set of input points”. Clear the frame data and then repeat the teaching procedure.
23. To clear the tool frame, move the cursor to the frame number and press F4, CLEAR.
24. If there isn't sufficient memory space required for the tool frame computation, you will see
the message “Insufficient memory for computing Utool”. The four point method cannot be
used in this case and a different teaching method should be used to compute the tool frame.
25. To select the tool frame to use, press F5, SETIND, type the number of the tool frame you
want, and press ENTER. If F5, SETIND, is not displayed, press PREV.
26. Jog the robot in the tool frame you just taught.
• If the TCP is correct, it will remain stationary during rotational moves.
Caution
The four point error corrects significant errors on the user’s part while
teaching the reference points and do not correct position error attributed
to inaccuracies in robot calibration. The accuracy of the final tool frame
computed is limited by the accuracy of the robot.
Caution
Only the tool frame and the approach positions are saved in the
SYSFRAME.SV file. The mean and max. errors are not permanently
saved in the system. If you navigate to a different frame (F3) or change
the method of teaching (F2), the mean and max. errors will be cleared
and will be displayed as uninit in the TP screen.
6–24
MAROUHT9102171E REV F
6. FRAMES
6.6.2.4 Six Point Method
Use the six point method to define the location and orientation of the tool frame when the values
cannot be measured and directly entered. The six point method requires three points that define the
direction vector for the tool, and three points that define the location of the tool center point.
There are two variations of the six point method — XZ and XY. Use XZ when it is easier for you
to record a point in the +z direction. Use the XY when it is easier for you to record a point in
the +y direction.
Table 6–4. Tool Frame Setup Six Point DETAIL Screen Items
ITEM
DESCRIPTION
Frame number
This line shows the number of the tool frame being defined.
X, Y, Z, W, P, R
These items show the current coordinates of the tool frame being defined.
Comment
This item is used to add a comment.
Approach point 1
This item is used to define the first approach point.
Approach point 2
This item is used to define the second approach point.
Approach point 3
This item is used to define the third approach point.
Orient Origin Point
This item is used to define the reference point of the user frame.
X direction Point
This item is used to define the +X direction point.
Z or Y Direction Point
This item is used to define the +z or +y direction point.
Active TOOL
$MNUTOOLNUM[1] =
1
This line indicates which tool frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
[METHOD]
Press this key to select a method of entry.
[FRAME]
Press this key to select a frame.
MOVE_TO
Press this key to move to a recorded position. Move the cursor to the desired point and
press MOVE_TO along with the SHIFT key.
RECORD
Press this key along with the SHIFT key to record a position.
Procedure 6-4 Setting Up Tool Frame Using the Six Point Method
You can use iHMI Guides to perform a similar procedure.
6–25
6. FRAMES
MAROUHT9102171E REV F
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR, to
clear frame data.
If you modify an existing frame, make sure that all frame data is set the
way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
Note If you have a 4-axis robot (such as an A-520i or M-410iHS/iHW), you can define a tool
frame using only the direct entry method or the two point +Z method.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
If you have the new iPendant, you can press the GROUP key and press the numeric key
to switch to a specified group. Press the GROUP key and the 0 key together to toggle the
sub group.
6. If tool frames are not displayed, press F3, [OTHER], and select Tool Frame. If F3,
[OTHER], is not displayed, press PREV.
7. To display the settings for all the frames, press PREV repeatedly until you see a screen
similar to the following.
SETUP Frames
Tool Frame Setup / Six Point
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 TOOL $MNUTOOLNUM[1]=1
6–26
MAROUHT9102171E REV F
6. FRAMES
Note The maximum number of tool frames is set in the system variable
$SCR.$MAXNUMUTOOL. Refer to the Software Reference Manual for more information.
8. To set the numerical values to zero, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
Warning
Do not run a KAREL program that includes motion statements. All
motion must be initiated from a teach pendant program. Otherwise,
the robot could move unexpectedly, personnel could be injured,
and equipment could be damaged.
9. Press F2, DETAIL.
10. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
11. Press F2, [METHOD].
12. Select Six Point (XZ). You will see a screen similar to the following.
SETUP Frames
Tool Frame Setup/ Six Point
Frame Number: 1
X:
0.0
Y: 0.0
Z:
W:
0.0
P: 0.0
R:
Comment: ****************
Approach point 1: UNINIT
Approach point 2: UNINIT
Approach point 3: UNINIT
Orient Origin Point: UNINIT
X direction Point: UNINIT
Z Direction Point: UNINIT
Active TOOL $MNUTOOLNUM[1]=1
0.0
0.0
Note The XZ variation of the six point method is described here. The XY variation is the
same except a +y direction point is taught in instead of the +z direction point.
13. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
d. When you are finished, press ENTER.
6–27
6. FRAMES
MAROUHT9102171E REV F
Note Record the three approach points with the tool tip touching the same point from
three different approach directions. The Tool frame will be inaccurate if the approach
points face each other.
14. Record the first approach point (Approach Point 1):
a. Move the cursor to Approach point 1.
b. Jog the robot so that the tool tip touches a reference point.
c. Press and hold the SHIFT key and press F5, RECORD.
15. Record the second approach point (Approach Point 2):
a. Move the cursor to Approach point 2.
b. Rotate the faceplate at least 90 (but no more than 180) about the z axis of the tool
coordinates.
c. Jog the robot so that the tool tip touches the reference point used in Step 14 .
d. Press and hold the SHIFT key and press F5, RECORD.
16. Record the third approach point (Approach Point 3):
6–28
MAROUHT9102171E REV F
6. FRAMES
a. Move the cursor to Approach point 3.
b. Rotate the tool about either the x or Y axis of the tool coordinates.
c. Jog the robot so that the tool tip touches the reference point used in Step 14 .
d. Press and hold the SHIFT key and press F5, RECORD.
17. Define the orientation of the origin (Orient Origin Point):
a. Move the cursor to Orient Origin Point.
b. Jog the robot so that the desired tool +z axis is parallel to the z axis of the world frame,
pointing in the -z direction. Make sure that the x axis of the tool is parallel to the x
axis of the world frame. See Figure 6–11 .
c. Press and hold the SHIFT key and press F5, RECORD.
Figure 6–11. Defining the Orientation of the Origin
18. Define the +X direction point (X direction Point):
a. Move the cursor to X direction Point.
b. Change the jog coordinate system to WORLD.
c. Jog the robot so that the tool moves in the +X direction. For example, if the x axis of
the tool is aligned with the world x axis, jog in the +X direction.
Note To assist you in moving the tool in the +X direction, move the tool at least
250mm or more.
d. Press and hold the SHIFT key and press F5, RECORD.
19. Define the +z direction point (Z Direction Point) :
a. Move the cursor to Orient Origin Point.
b. Press and hold the SHIFT key and press F4, MOVE_TO, to move the robot to the
Orient Origin Point.
6–29
6. FRAMES
MAROUHT9102171E REV F
c. Move the cursor to Z Direction Point.
d. Jog the robot in the -z direction (of the world frame).
e. Press and hold the SHIFT key and press F5, RECORD.
20. To select the tool frame to use, press F5, SETIND, type the number of the tool frame you
want, and press ENTER. If F5, SETIND, is not displayed, press PREV.
-ORYou can also select the frame using the Jog Menu. Press and hold SHIFT and press COORD,
move the cursor to Tool, and type the number of the frame you want to select. Refer to
Section 5.8 for more information.
21. Jog the robot in the frame you just taught.
• If the TCP is correct, it will remain stationary during rotational moves. Go to Step 23 .
Caution
When you are finished setting the frame configuration, save
the information to the default device so that you can reload the
configuration data if necessary. Otherwise, if the configuration is
altered, you will have no record of it.
• If the TCP is not correct, it will not remain stationary during rotational moves. You need
to review your recorded positions. If they are not correct, re-record them correctly.
Go to Step 22 .
Warning
When you use F4, MOVE_TO, to move the robot, unexpected
motion can occur. This could injure personnel or damage
equipment.
22. To move to a recorded position, press and hold the SHIFT key and press F4, MOVE_TO.
23. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the tool frame screen.
i. Press FCTN.
6–30
MAROUHT9102171E REV F
6. FRAMES
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV, on the default device.
Display the SYSTEM Variables menu,
k. Press MENU.
l. Select SYSTEM.
m. Press F1, [TYPE].
n. Select Variables.
o. Press FCTN.
p. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device. This is optional since frame variables are saved in
SYSFRAME.SV.
6.6.2.5 Tool Frame Direct Entry Method
The direct entry method provides for direct recording and numerical entry of the frame position.
For TCP dimensions, refer to the manufacturing specifications of the tool. Use Procedure 6-5 to
set up the tool frame using the direct entry method.
Table 6–5. Tool Frame Setup Direct Entry DETAIL Screen Items
ITEM
DESCRIPTION
Frame number
This line shows the number of the tool frame being defined.
Comment
This item is used to add a comment.
X
This item is used to define the X component of the tool frame.
Y
This item is used to define the Y component of the tool frame.
Z
This item is used to define the Z component of the tool frame.
W
This item is used to define the W component of the tool frame.
P
This item is used to define the P component of the tool frame.
R
This item is used to define the R component of the tool frame.
Configuration
This line displays the current robot configuration.
Active TOOL
$MNUTOOLNUM[1] =
1
This line indicates which tool frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
[METHOD]
Press this key to select a method of entry.
[FRAME]
Press this key to select a frame.
Procedure 6-5 Setting Up Tool Frame Using the Direct Entry Method
You can use iHMI Guides to perform a similar procedure.
6–31
6. FRAMES
MAROUHT9102171E REV F
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR, to
clear frame data.
If you modify an existing frame, make sure that all frame data is set the
way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
Note If you have a 4-axis robot (such as a SCARA), you can define a tool frame using only the
direct entry method.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
If you have the new iPendant, you can press the GROUP key and press the numeric key
to switch to a specified group. Press the GROUP key and the 0 key together to toggle the
sub group.
6. If tool frames are not displayed press F3, [OTHER], and select Tool Frame. If F3,
[OTHER], is not displayed, press PREV.
7. To display the settings for all the frames, press PREV repeatedly until you see a screen
similar to the following.
6–32
MAROUHT9102171E REV F
6. FRAMES
SETUP Frames
Tool Frame G1 / Direct Entry
1/29
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 TOOL $MNUTOOLNUM[1]=1
Note The maximum number of tool frames is set in the system variable
$SCR.$MAXNUMUTOOL. Refer to the Software Installation Manual and to the Software
Reference Manual for more information.
8. To set the numerical values to zero, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
Warning
Do not run a KAREL program that includes motion statements. All
motion must be initiated from a teach pendant program. Otherwise,
the robot could move unexpectedly, personnel could be injured,
and equipment could be damaged.
9. Press F2, DETAIL.
10. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
11. Press F2, [METHOD].
12. Select Direct Entry. You will see a screen similar to the following.
6–33
6. FRAMES
MAROUHT9102171E REV F
SETUP Frames
Tool Frame
Direct Entry
Frame Number: 1
1 Comment:
****************
2 X:
0.000
3 Y:
0.000
4 Z:
0.000
5 W:
0.000
6 P:
0.000
7 R:
0.000
Configuration:
N R D B, 0, 0, 0
13. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
d. When you are finished, press ENTER.
14. Set each position component:
a. Move the cursor to the component.
b. Enter the numeric value for the component.
c. Press the ENTER key to set the new value.
15. To select the tool frame to use, press F5, SETIND, type the number of the tool frame you
want, and press ENTER. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to Tool, and
type the number of the frame you want to select. Refer to Section 5.8 for more information.
Caution
When you are finished setting the frame configuration, save the
information to the default device so that you can reload the configuration
data if necessary. Otherwise, if the configuration is altered, you will
have no record of it.
16. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
6–34
MAROUHT9102171E REV F
6. FRAMES
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the tool frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV
17. To Display the SYSTEM Variables menu (optional since data is saved in sysframe.sv),
a. Press MENU.
b. Select SYSTEM.
c. Press F1, [TYPE].
d. Select Variables.
e. Press FCTN.
f. Select SAVE. The tool frame positions and system variables are saved in the
SYSVAR.SV file, on the default device.
6.6.3 Selecting a Tool Frame
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
Note You can also use the Jog Menu to select the number of the tool frame you want to use.
Refer to Section 5.8 .
Conditions
• The tool frame you want to select has been set up.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
6–35
6. FRAMES
MAROUHT9102171E REV F
If you have the new iPendant, you can press the GROUP key and press the numeric key
to switch to a specified group. Press the GROUP key and the 0 key together to toggle the
sub group.
Warning
Do not run a KAREL program that includes motion statements. All
motion must be initiated from a teach pendant program. Otherwise,
the robot could move unexpectedly, personnel could be injured,
and equipment could be damaged.
6. If tool frames are not displayed, press F3, [OTHER], and select Tool Frame. If F3,
[OTHER], is not displayed, press PREV. You will see a screen similar to the following.
SETUP Frames
Tool Frame Setup / Direct Entry
1/10
X
Y
Z
Comment
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 TOOL $MNUTOOLNUM[1]=1
Note The maximum number of tool frames is set in the system variable
$SCR.$MAXNUMUTOOL. Refer to the Software Reference Manual for more information.
7. To select the tool frame to use, press F5, SETIND, type the number of the tool frame you
want, and press ENTER. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to Tool, and
type the number of the frame you want to select. Refer to Section 5.8 for more information.
8. When a position is recorded in the teach pendant program, the value of the position's tool
frame will always equal the value of $MNUTOOLNUM[group_no] at the time the position
was recorded.
When a teach pendant program is executed, you must make sure that the tool frame of the
position equals the value of $MNUTOOLNUM [group_no], otherwise, an error will occur.
Set the value of $MNUTOOLNUM using the UTOOL_NUM=n instruction in the teach
pendant program before you record the position to guarantee that the tool frame numbers
match during program execution.
6–36
MAROUHT9102171E REV F
6. FRAMES
Refer to Section 7.20 for more information on the UTOOL_NUM instruction.
6.7 User Frame
6.7.1 Overview
User frame is the reference frame for all recorded positional data in a program. As the name
suggests, user frames are taught by the robot programmer, or user. More than one user frame can
be taught, but only one can be active at a time. If you do not set up the location and orientation
of the user frame before you create a program, the user frame will use World frame’s location
and orientation.
You can modify the user frame to offset the positions in the program easily. You can define
this frame anywhere.
Note If you are using the remote TCP option, you must define a user frame to be your remote
TCP (RTCP) frame. Refer to the “Remote TCP Frame” section.
Caution
Recorded positions and position registers are affected by MNUFRAME, and
MNUFRAME has an affect during playback. If you change MNUFRAME, any
recorded positions and position registers will also change.
Enabling $USEUFRAME
The system variable $USEUFRAME defines whether the current value of
$MNUFRAMENUM[group_no] will be assigned to the position's user frame when it is recorded
or touched up.
Note Changing the user frame number in one group does not change the user frame number
of other groups.
Caution
When $USEUFRAME=FALSE, the user frame number is equal to 0 when
you initially record positions and touch them up, regardless of the value of
$MNUFRAMENUM[group_no].
When $USEUFRAME=TRUE, the position's user frame number is equal
to the user frame defined by $MNUFRAMENUM[group_no] when you
initially record positions and touch them up. You must also touch up
positions with the position's user frame equal to the user frame defined by
$MNUFRAMENUM[group_no].
Be sure to set the system variable $USEUFRAME properly. Otherwise, your
program will not operate properly.
6–37
6. FRAMES
MAROUHT9102171E REV F
After you set up the user frame, you can change its location and orientation. Before you teach
positions in a frame that is to move, change $USEUFRAME to TRUE and record the positions.
All positions in a program recorded relative to that frame change with it. All positions are taught
relative to the default user frame. Use the UFRAME_NUM program instruction to change the
user frame.
• The controller allows you to set up many different user frames for each robot. The default
number is nine, but you can configure the controller for up to 61 user frames. They will be
stored in the system variable $MNUFRAME. Refer to the Software Installation Manual
for more information.
• You can select one user frame per robot group to be active at a time. The frame number will
be stored in $MNUFRAMENUM.
• You can jog the robot in user frame.
Caution
Each time you create a program, set the current user frame number to a
value between 1 and 9 ( Procedure 6-10 ). Do this even if you do not plan
to use a user frame in the program, or if you want the user frame position
to be zero (0,0,0,0,0,0). Otherwise, if the current user frame number is
zero, a user frame set in that program will not work.
Table 6–6. User Frame Setup Screen Items
ITEM
DESCRIPTION
User frame setup/xxxx
This line shows the current selected method for setting each user frame.
Frame number 1-9
These lines show the current position and comment for each available user frame.
X
This column shows the X coordinate of each user frame.
Y
This column shows the Y coordinate of each user frame.
Z
This column shows the Z coordinate of each user frame.
Comment
This column shows the comment for each user frame.
Active UFRAME
$MNUFRAMENUM[1] =
0
This line indicates which user frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
DETAIL
Press this key to display detailed information for each user frame and to set the definition
and comment of each frame.
OTHER
Press this key to select one of the other available reference frames or to choose the
motion group for the frame you are setting up (in systems with multiple motion groups).
CLEAR
To set the numerical values of any user frame to zero, move the cursor to the frame
number, press CLEAR and answer YES to the prompt.
6–38
MAROUHT9102171E REV F
6. FRAMES
SETIND
To select the user frame to use, press F5, SETIND, type the number of the user frame
you want, and press ENTER. This sets the active user frame ($MNUFRAMNUM[1]) to the
number of the frame you want. If F5, SETIND, is not displayed, press PREV.
CLRIND
Press this key if you want to clear the number of the user frame currently selected for use.
See Figure 6–12 .
Figure 6–12. World and User Frames
6.7.2 Setting Up a User Frame
You can use three methods to define the user frame:
• Three point method
• Four point method
• Direct entry method
6–39
6. FRAMES
MAROUHT9102171E REV F
6.7.2.1 Three Point Method
Recording three points defines the user frame. The three points are the origin, a position along the
+X-axis of the user frame, and a position on the X-Y plane of the user frame (defines the X-Y
plane and the Y-Z plane).
Table 6–7. User Frame Setup Three Point DETAIL Screen Items
ITEM
DESCRIPTION
Frame number
This line shows the number of the user frame being defined.
X, Y, Z, W, P, R
These items show the current coordinates of the user frame being defined.
Comment
This item is used to add a comment.
Orient Origin Point
This item is used to define the reference point of the user frame.
X direction Point
This item is used to define the +X direction point.
Y Direction Point
This item is used to define a point on the X-Y plane.
Active UFRAME
$MNUFRAMENUM[1] =
0
This line indicates which user frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
[METHOD]
Press this key to select a method of entry.
[FRAME]
Press this key to select a frame.
MOVE_TO
Press this key to move to a recorded position. Move the cursor to the desired point and
press MOVE_TO along with the SHIFT key.
RECORD
Press this key along with the SHIFT key to record a position.
Procedure 6-7 Setting Up the User Frame Using the Three Point Method
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
Conditions
• The tool frame you want to select has been set up. ( Procedure 6-2 , Procedure 6-4 , or
Procedure 6-5 )
6–40
MAROUHT9102171E REV F
6. FRAMES
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR,
to clear frame data.
If you modify an existing frame, make sure that all frame data is set
the way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
If you have the new iPendant, you can press the GROUP key and press the numeric key
to switch to a specified group. Press the GROUP key and the 0 key together to toggle the
sub group.
Warning
Do not run a KAREL program that includes motion statements. All
motion must be initiated from a teach pendant program. Otherwise,
the robot could move unexpectedly, personnel could be injured,
and equipment could be damaged.
6. If user frames are not displayed, press F3, [OTHER], and select User/RTCP. If F3,
[OTHER], is not displayed, press PREV.
7. To display the settings for all frames, press PREV repeatedly until you see a screen
similar to the following.
6–41
6. FRAMES
MAROUHT9102171E REV F
SETUP Frames
User/RTCP Setup / Three Point
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 $MNUFRAMNUM[1]=0
8. To set the numerical values to zero, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
9. Press F2, DETAIL.
10. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
11. Press F2, [METHOD].
12. Select Three Point. You will see a screen similar to the following.
SETUP Frames
User/RTCP Setup/ Three Point
Frame Number: 2
X: 0.0
Y: 0.0
Z: 0.0
W: 0.0
P: 0.0
R: 0.0
Comment: ****************
Orient Origin Point:
UNINIT
X direction Point:
UNINIT
Y Direction Point:
UNINIT
Active UFRAME/RTCP $MNUFRAMNUM[1]=1
13. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
d. When you are finished, press ENTER.
14. Define the origin point of the user frame: (Orient Origin Point) :
6–42
MAROUHT9102171E REV F
6. FRAMES
a. Move the cursor to Orient Origin Point.
b. Jog the robot TCP to the origin. In Figure 6–13 , the origin is labeled 1.
c. Press and hold the SHIFT key and press F5, RECORD.
Figure 6–13. Defining the Origin
15. Define the +X direction point (X direction Point) :
a. Move the cursor to X direction Point.
b. Jog the robot tool tip to a point along the +x-axis. In Figure 6–14 , this point is
labeled number 2.
c. Press and hold the SHIFT key and press F5, RECORD.
6–43
6. FRAMES
MAROUHT9102171E REV F
Figure 6–14. Defining the X direction Point
16. Define a point on the positive X-Y plane (Y Direction Point) :
a. Move the cursor to Y Direction Point.
b. Jog the robot to a location on the positive X-Y plane. In Figure 6–15 , this point is
labeled number 3.
c. Press and hold the SHIFT key and press F5, RECORD.
Figure 6–15. Defining the X-Y Plane
6–44
MAROUHT9102171E REV F
6. FRAMES
17. To select the user frame to use, press F5, SETIND, type the number of the user frame you
want, and press ENTER. This sets the active user frame ($MNUFRAMNUM[1]) to the
number of the frame you want. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to User, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
18. Jog the robot in the +x, +y, and +z directions. The robot should move in the correct
directions according to the frame you defined. If the robot does not move in the correct
directions, go to Step 19 . Otherwise, go to Step 20 .
Caution
When you are finished setting the frame configuration, save the
information to the default device so that you can reload the configuration
data if necessary. Otherwise, if the configuration is altered, you will
have no record of it.
19. To move to a recorded position, move the cursor to the desired position, press and hold
the SHIFT key and press F4, MOVE_TO.
Warning
When you use F4, MOVE_TO, to jog the robot, unexpected motion
can occur. This could injure personnel or damage equipment.
Note If you want to clear the current user frame selected, press NEXT, >, and then F2,
CLRIND. This sets the active user frame ($MNUFRAMNUM[1]) to zero, which means that
the default user frame is currently selected.
20. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the user frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV, on the default device.
Display the SYSTEM Variables menu,
6–45
6. FRAMES
MAROUHT9102171E REV F
k. Press MENU.
l. Select SYSTEM.
m. Press F1, [TYPE].
n. Select Variables.
o. Press FCTN.
p. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device. This is optional since frame variables are saved in
SYSFRAME.SV.
6.7.2.2 Four Point Method
Use the four point method when you need to define a frame that has its origin at a position other
than the reference of the frame. You can also use it to define multiple frames with parallel axes.
The four points are the reference of the frame (called orient origin point), a point along the +x-axis
of the frame (defines the x-z plane), a point on the x-y plane of the frame (defines the x-y plane
and the y-z plane) and the origin of the frame (called system origin).
Table 6–8. User Frame Setup Four Point DETAIL Screen Items
ITEM
DESCRIPTION
Frame number
This line shows the number of the user frame being defined.
X, Y, Z, W, P, R
These items show the current coordinates of the user frame being defined.
Comment
This item is used to add a comment.
Orient Origin Point
This item is used to define the reference point of the user frame.
X direction Point
This item is used to define the +X direction point.
Y Direction Point
This item is used to define a point on the X-Y plane.
System Origin
This item is used to teach the origin of the second user frame.
Active UFRAME
$MUFRAMENUM[1] =
0
This line indicates which user frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
[METHOD]
Press this key to select a method of entry.
[FRAME]
Press this key to select a frame.
MOVE_TO
Press this key to move to a recorded position. Move the cursor to the desired point and
press MOVE_TO along with the SHIFT key.
RECORD
Press this key along with the SHIFT key to record a position.
6–46
MAROUHT9102171E REV F
6. FRAMES
Procedure 6-8 Setting Up User Frame Using the Four Point Method
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR, to
clear frame data.
If you modify an existing frame, make sure that all frame data is set the
way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
If you have the new iPendant, you can press the GROUP key and press the numeric key
to switch to a specified group. Press the GROUP key and the 0 key together to toggle the
sub group.
Warning
Do not run a KAREL program that includes motion statements. All
motion must be initiated from a teach pendant program. Otherwise,
the robot could move unexpectedly, personnel could be injured,
and equipment could be damaged.
6. If user frames are not displayed, press F3, [OTHER], and select User Frame. If F3,
[OTHER], is not displayed, press PREV.
7. To display the settings for all frames, press PREV repeatedly until you see a screen
similar to the following.
6–47
6. FRAMES
MAROUHT9102171E REV F
SETUP Frames
User/RTCP Setup / Four Point
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 $MNUFRAMNUM[1]=0
8. To set the numerical values to zero, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
9. Press F2, DETAIL.
10. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
11. Press F2, [METHOD].
12. Select Four Point. You will see a screen similar to the following.
SETUP Frames
User/RTCP Setup/ Four Point
Frame Number: 2
X: 0.0
Y: 0.0
Z: 0.0
W: 0.0
P: 0.0
R: 0.0
Comment: ****************
Orient Origin Point:
UNINIT
X direction Point:
UNINIT
Y Direction Point:
UNINIT
System Origin:
UNINIT
Active UFRAME/RTCP $MNUFRAMNUM[1]=1
13. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
d. When you are finished, press ENTER.
6–48
MAROUHT9102171E REV F
6. FRAMES
14. Define the reference point of the user frame (Orient Origin Point) :
a. Move the cursor to Orient Origin Point.
b. Jog the robot TCP to the origin. In Figure 6–16 , the origin is labeled 1.
c. Press and hold the SHIFT key and press F5, RECORD.
Figure 6–16. Defining the Origin
15. Define the +X direction point (X direction Point) :
a. Move the cursor to X direction Point.
b. Jog the robot TCP to a point along the +x-axis. In Figure 6–17 , this point is labeled
number 2.
c. Press and hold the SHIFT key and press F5, RECORD, to record a position.
6–49
6. FRAMES
MAROUHT9102171E REV F
Figure 6–17. Defining the X direction Point
16. Define a point on the X-Y plane (Y Direction Point):
a. Move the cursor to Y Direction Point.
b. Jog the robot to a location on the positive X-Y plane. In Figure 6–18 this point is
labeled number 3.
c. Press and hold the SHIFT key and press F5, RECORD.
Figure 6–18. Defining the X-Y Plane
17. Teach the origin of the second user frame (System Origin):
a. Move the cursor to System Origin.
6–50
MAROUHT9102171E REV F
6. FRAMES
b. Jog the robot TCP to the origin of the second user frame. In Figure 6–19 , the origin is
labeled 4.
c. Press F5, RECORD, to record a position.
Figure 6–19. Defining the Second Origin
18. To select the user frame to use, press F5, SETIND, type the number of the user frame you
want, and press ENTER. This sets the active user frame ($MNUFRAMNUM[1]) to the
number of the frame you want. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to User, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
19. Jog the robot in the +x, +y, and +z directions. The robot should move in the correct
directions according to the frame you defined. If the robot does not move in the correct
directions, go to Step 20 . Otherwise, go to Step 21 .
Caution
When you are finished setting the frame configuration, save the
information to the default device so that you can reload the configuration
data if necessary. Otherwise, if the configuration is altered, you will
have no record of it.
6–51
6. FRAMES
MAROUHT9102171E REV F
20. To move to a recorded position, move the cursor to the desired position, press and hold
the SHIFT key and press F4, MOVE_TO.
Warning
When you use F4, MOVE_TO, to jog the robot, unexpected motion
can occur. This could injure personnel or damage equipment.
Note If you want to clear the current frame to zero, move the cursor to the frame
number and press NEXT, >, and then F2, CLRIND. This sets the active user frame
($MNUFRAMNUM[1]) to zero, which means that the default user frame is currently
selected.
21. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the user frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV, on the default device.
Display the SYSTEM Variables menu,
k. Press MENU.
l. Select SYSTEM.
m. Press F1, [TYPE].
n. Select Variables.
o. Press FCTN.
p. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device. This is optional since frame variables are saved in
SYSFRAME.SV.
6.7.2.3 Direct Entry Method
Use the direct entry method when you know the coordinates of the user frame. The direct entry
method allows you to designate the origin with values forX, Y, Z, W, P, and R. Use Procedure 6-9
to define a user frame using the direct entry method.
6–52
MAROUHT9102171E REV F
6. FRAMES
Table 6–9. User Frame Setup Direct Entry DETAIL Screen Items
ITEM
DESCRIPTION
Frame number
This line shows the number of the user frame being defined.
Comment
This item is used to add a comment.
X
This item is used to define the component of the user frame.
Y
This item is used to define the component of the user frame.
Z
This item is used to define the component of the user frame.
W
This item is used to define the component of the user frame.
P
This item is used to define the component of the user frame.
R
This item is used to define the component of the user frame.
Configuration
This line displays the current robot configuration.
Active UFRAME
$MNUFRAMENUM[1]
=0
This line indicates which user frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
[METHOD]
Press this key to select a method of entry.
[FRAME]
Press this key to select a frame.
MOVE_TO
Press this key along with the SHIFT key to move to a recorded position.
RECORD
Press this key along with the SHIFT key to record a position.
Use Procedure 6-10 to select a user frame.
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
Procedure 6-9 Setting Up User Frame Using the Direct Entry Method
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
6–53
6. FRAMES
MAROUHT9102171E REV F
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR, to
clear frame data.
If you modify an existing frame, make sure that all frame data is set the
way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
If you have the new iPendant, you can press the GROUP key and press the numeric key
to switch to a specified group. Press the GROUP key and the 0 key together to toggle the
sub group.
Warning
Do not run a KAREL program that includes motion statements. All
motion must be initiated from a teach pendant program. Otherwise,
the robot could move unexpectedly, personnel could be injured,
and equipment could be damaged.
6. If user frames are not displayed, press F3, [OTHER], and select User Frame. If F3,
[OTHER], is not displayed, press PREV.
7. To display the settings for all the frames, press PREV repeatedly until you see a screen
similar to the following.
6–54
MAROUHT9102171E REV F
6. FRAMES
SETUP Frames
User/RTCP Setup / Direct Entry
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 $MNUFRAMNUM[1]=0
8. To set the numerical values to zero, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
9. Press F2, DETAIL.
10. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
11. Press F2, [METHOD].
12. Select Direct Entry. You will see a screen similar to the following.
SETUP Frames
User/RTCP Setup/ Direct Entry
Frame Number: 1
1 Comment: ****************
2 X:
0.000
3 Y:
0.000
4 Z:
0.000
5 W:
0.000
6 P:
0.000
7 R:
0.000
Configuration: N, 0, 0, 0
Active UFRAME/RTCP $MNUFRAMENUM[1]=0
13. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
6–55
6. FRAMES
MAROUHT9102171E REV F
d. When you are finished, press ENTER.
14. Set each position component:
a. Move the cursor to the component.
b. Enter the numeric value for the component.
c. Press the ENTER key to set the new value.
15. To select the user frame to use, press F5, SETIND, type the number of the user frame you
want, and press ENTER. This sets the active user frame ($MNUFRAMNUM[1]) to the
number of the frame you want. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to User, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
Note If you want to clear the current frame to zero, move the cursor to the frame
number and press NEXT, >, and then F2, CLRIND. This sets the active user frame
($MNUFRAMNUM[1]) to zero, which means that the default user frame is currently
selected.
Caution
When you are finished setting the frame configuration, save the
information to the default device so that you can reload the configuration
data if necessary. Otherwise, if the configuration is altered, you will
have no record of it.
16. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the user frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV, on the default device.
17. To save the SYSTEM Variables menu,
a. Press MENU.
b. Select SYSTEM.
c. Press F1, [TYPE].
6–56
MAROUHT9102171E REV F
6. FRAMES
d. Select Variables.
e. Press FCTN.
f. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device. This is optional since frame variables are saved in
SYSFRAME.SV.
6.7.3 Selecting a User Frame
Procedure 6-10 Selecting a User Frame
Caution
The system variable $USEUFRAME defines whether the current value of
$MNUFRAMENUM[group_no] will be assigned to the position's user frame
when it is being recorded or touched up.
When $USEUFRAME=FALSE, the initial recording of positions and the
touching up of positions is done with the user frame number equal to 0,
regardless of the value of $MNUFRAMENUM[group_no].
When $USEUFRAME=TRUE, the initial recording of positions is done
with the position's user frame equal to the user frame defined by
$MNUFRAMENUM[group_no]. The touching up of positions must also
be done with the position's user frame equal to the user frame defined by
$MNUFRAMENUM[group_no].
Be sure to set system variable $USEUFRAME correctly. Otherwise, your
program will not operate properly.
Note You can also use the Jog Menu to select the number of the user frame you want to use.
Refer to Section 5.8 .
Conditions
• The user frame you want to select has been set up.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. If user frames are not displayed press F3, [OTHER], and select User Frame. If F3,
[OTHER], is not displayed, press PREV. You will see a screen similar to the following.
6–57
6. FRAMES
MAROUHT9102171E REV F
SETUP Frames
User/RTCP Setup / Direct Entry
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 $MNUFRAMNUM[1]=0
6. To select the user frame to use, press F5, SETIND, type the number of the user frame you
want, and press ENTER. This sets the active user frame ($MNUFRAMNUM[1]) to the
number of the frame you want. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to User, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
Note When a teach pendant program is executed, you must make sure that the user frame of
the position equals the value of $MNUFRAMENUM[group_no], otherwise, an error will
occur. Set the value of $MNUFRAMENUM[1] using the UFRAME_NUM=n instruction in
the teach pendant program and then execute that instruction before you record the position.
This guarantees that the position corresponds to the correct user frame.
6.8 Remote TCP Frame
Remote TCP Frame
6.8.1 Setting Up a Remote TCP Frame
You must define a remote TCP (RTCP) frame before you can use the remote TCP option to jog or
include remote TCP within a motion instruction. Use Procedure 6-12 to set up an RTCP frame.
You define this frame using the location of the remote TCP as the origin of the frame.
Note Remote TCP frame will not be available if the Coordinated Motion option is loaded.
See Figure 6–20 for an example of a remote TCP frame.
6–58
MAROUHT9102171E REV F
6. FRAMES
Figure 6–20. Remote TCP Frame
You can use two methods to define the RTCP frame:
• Three point method
• Direct entry method
6.8.1.1 Three Point Method
Recording three points defines the RTCP frame. The three points are the origin, or TCP of the
fixed tool, a position along the +x-axis of the RTCP frame, and a position on the y-axis of the
RTCP frame. Use Procedure 6-11 to define an RTCP frame using the three point method.
Procedure 6-11 Setting Up a Remote TCP Frame Using the Three Point Method
Warning
If you are setting up a new frame, make sure that all frame data is zero
or uninitialized before you record any positions. Press F4, CLEAR,
to clear frame data.
If you are modifying an existing frame, make sure that all frame data
is set the way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
Conditions
• The end-of-arm tooling or a setup pointer is attached to the robot faceplate.
6–59
6. FRAMES
MAROUHT9102171E REV F
• You have set up the tool frame for the end-of-arm tooling or setup pointer. Refer to Section
6.6.2 .
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. If user/RTCP frames are not displayed, press F3, [OTHER], and select User/RTCP. If F3,
[OTHER], is not displayed, press PREV.
6. To display the settings for all frames, press PREV repeatedly until you see a screen
similar to the following.
SETUP Frames
User/RTCP Setup / Three Point
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 *************
Active UFRAME/RTCP $MNUFRAMNUM[1]=0
7. To set the numerical values to zero, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
8. Press F2, DETAIL.
9. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
10. Press F2, [METHOD].
11. Select Three Point. You will see a screen similar to the following.
6–60
MAROUHT9102171E REV F
6. FRAMES
SETUP Frames
User/RTCP Setup/ Three Point
Frame Number: 2
X: 0.0
Y: 0.0
Z: 0.0
W: 0.0
P: 0.0
R: 0.0
Comment: ****************
Orient Origin Point:
UNINIT
X direction Point:
UNINIT
Y Direction Point:
UNINIT
Active UFRAME/RTCP $MNUFRAMNUM[1]=0
12. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
d. When you are finished, press ENTER.
13. Define the origin point of the remote TCP frame (Orient Origin Point):
a. Move the cursor to Orient Origin Point.
b. Jog the robot so that the TCP of the end-of-arm tooling or setup pointer touches the
remote TCP of the fixed tool. See Figure 6–21 .
c. Press and hold the SHIFT key and press F5, RECORD.
Figure 6–21. Touching the TCP of the Robot Tool to the Remote TCP
14. Define the +X direction point (X direction Point):
a. Move the cursor to X direction Point.
6–61
6. FRAMES
MAROUHT9102171E REV F
b. Select an xyz coordinate system.
c. Jog the robot in the desired +X direction.
d. Press and hold the SHIFT key and press F5, RECORD.
15. Define a point on the positive X-Y plane (Y Direction Point):
a. Move the cursor to Orient Origin Point.
b. Select an xyz coordinate system.
c. Press and hold the SHIFT key and press F4, MOVE_TO.
d. Move the cursor to Y Direction Point.
e. Jog the robot in the desired +y direction.
f. Press and hold the SHIFT key and press F5, RECORD.
16. To select the RTCP frame to use press F5, SETIND, type the number of the user frame
you want, and press ENTER. This sets the active user frame ($MNUFRAMNUM[1]) to the
number of the frame you want. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to RTCP, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
17. Jog the robot in the +x, +y, and +z directions. The robot should move in the correct
directions according to the frame you defined. If the robot does not move in the correct
directions, go to Step 18 . Otherwise, go to Step 19 .
Caution
When you are finished setting the frame configuration, save the
information to the default device so that you can reload the configuration
data if necessary. Otherwise, if the configuration is altered, you will
have no record of it.
18. To move to a recorded position, move the cursor to the desired position, press and hold
the SHIFT key and press F4, MOVE_TO.
Warning
When you use F4, MOVE_TO, to jog the robot, unexpected motion
can occur. This could injure personnel or damage equipment.
Note If you want to clear the current RTCP frame selected, press NEXT, >, and then F2,
CLRIND. This sets the active user frame ($MNUFRAMNUM[1]) to zero, which means that
the default user frame is currently selected.
19. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
6–62
MAROUHT9102171E REV F
6. FRAMES
c. Press F1, [TYPE].
d. Select File.
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the RTCP frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV, on the default device.
20. To display the SYSTEM Variables menu,
a. Press MENU.
b. Select SYSTEM.
c. Press F1, [TYPE].
d. Select Variables.
e. Press FCTN.
f. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device.
6.8.1.2 Direct Entry Method
If you cannot use the three point method, use the direct entry method. In the direct entry method,
you will be required to specify values for X, Y, and Z of the remote TCP. Use Procedure 6-12 to
define an RTCP frame using the direct entry method.
Use Procedure 6-13 to select an RTCP frame.
Procedure 6-12 Setting Up a Remote TCP Frame Using the Direct Entry Method
Warning
If you are setting up a new frame, make sure that all frame data is zero
or uninitialized before you record any positions. Press F4, CLEAR,
to clear frame data.
If you are modifying an existing frame, make sure that all frame data
is set the way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
Conditions
• The end-of-arm tooling or a setup pointer is attached to the robot faceplate.
6–63
6. FRAMES
MAROUHT9102171E REV F
• You have set up the tool frame for the end-of-arm tooling or setup pointer. Refer to Section
6.6 .
Steps
1. Determine the Remote TCP of the fixed tool:
a. Jog the robot so that the TCP of the end-of-arm tooling or setup pointer touches the
remote TCP of the fixed tool.
Figure 6–22. Touching the TCP of the Robot Tool to the Remote TCP
b. Press POSN.
c. Press F4, WORLD.
d. Write down the X, Y, and Z values of the current position in the WORLD coordinate
system. This is the remote TCP of the fixed tool.
2. Use the Direct Entry Method to set up the Remote TCP frame:
a. Press MENU.
b. Select SETUP.
c. Press F1, [TYPE].
d. Select Frames.
e. If user/RTCP frames are not displayed, press F3, [OTHER], and select User/RTCP.
If F3, [OTHER], is not displayed, press PREV.
f. To display the settings for all the frames, press PREV repeatedly until you see a
screen similar to the following.
6–64
MAROUHT9102171E REV F
6. FRAMES
SETUP Frames
User/RTCP Setup/ Direct Entry
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 *************
Active UFRAME/RTCP $MNUFRAMNUM[1]=0
g. To set the numerical values to zero, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
h. Press F2, DETAIL.
i. To select a frame, press F3, FRAME, type the desired frame number, and press
ENTER.
j. Press F2, [METHOD].
k. Select Direct Entry. You will see a screen similar to the following.
SETUP Frames
User/RTCP Setup/ Direct Entry
Frame Number: 1
1 Comment: ****************
2 X:
0.000
3 Y:
0.000
4 Z:
0.000
5 W:
0.000
6 P:
0.000
7 R:
0.000
Configuration: N R D B, 0, 0, 0
Active UFRAME/RTCP $MNUFRAMENUM[1]=0
l. To add a comment, move the cursor to the comment line, press ENTER, select a
method of naming the comment, and press the appropriate function keys to enter the
comment. When you are finished, press ENTER.
m. Set each position component:
• Move the cursor to the X, Y, and Z components and enter the values you recorded
in Step 1d .
• Move the cursor to the w, p, and r components and enter 0 for each component.
6–65
6. FRAMES
MAROUHT9102171E REV F
3. To select the RTCP frame to use, press F5, SETIND, type the number of the RTCP frame
you want, and press ENTER. This sets the active user frame ($MNUFRAMNUM[1]) to the
number of the frame you want. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to RTCP, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
Note If you want to clear the current frame to zero, move the cursor to the frame
number and press NEXT, >, and then F2, CLRIND. This sets the active user frame
($MNUFRAMNUM[1]) to zero, which means that the default user frame is currently
selected.
Caution
When you are finished setting the frame configuration, save the
information to the default device so that you can reload the configuration
data if necessary. Otherwise, if the configuration is altered, you will
have no record of it.
4. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the RTCP frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV, on the default device.
5. To display the SYSTEM Variables menu,
a. Press MENU.
b. Select SYSTEM.
c. Press F1, [TYPE].
d. Select Variables.
e. Press FCTN.
f. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device. This is optional since frame variables are saved in
SYSFRAME.SV.
6–66
MAROUHT9102171E REV F
6. FRAMES
Procedure 6-13 Selecting an RTCP Frame
Note To select the number of the RTCP frame you want to use, you can also use the jog menu.
Refer to Section 5.8 for more information.
Conditions
• The user frame you want to select has been set up.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. If user frames are not displayed press F3, [OTHER], and select User Frame. If F3,
[OTHER], is not displayed, press PREV. You will see a screen similar to the following.
SETUP Frames
User/RTCP Setup/Direct Entry
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 *************
Active UFRAME/RTCP $MNUFRAMNUM[1]=0
6. To select the user frame to use press F5, SETIND, type the number of the user frame you
want, and press ENTER. This sets the active user frame ($MNUFRAMNUM[1]) to the
number of the frame you want. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to RTCP, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
7. The system variable $USEUFRAME defines whether the current value of
$MNUFRAMENUM[group_no] will be assigned to the position's user frame when it is
being recorded or touched up.
When $UFRAMENUM=FALSE, the initial recording of positions and the touching up
of positions is done with the user frame number equal to 0, regardless of the value of
$MNUFRAMENUM[group_no].
When $UFRAMENUM=TRUE, the initial recording of positions is done with the position's
user frame equal to the user frame defined by $MNUFRAMENUM[group_no]. The touching
6–67
6. FRAMES
MAROUHT9102171E REV F
up of positions must also be done with the position's user frame equal to the user frame
defined by $MNUFRAMENUM[group_no].
Note When a teach pendant program is executed, you must make sure that the user frame of
the position equals the value of $MNUFRAMENUM[group_no]; otherwise, an error will
occur. Set the value of $MNUFRAMENUM[1] using the UFRAME_NUM=n instruction in
the teach pendant program before you record the position to guarantee that the user frame
numbers match during program execution.
6.9 Jog Frame
6.9.1 Setting Up Jog Frame
Jog frame is a frame that you can set up in any location, with any orientation. Jog frame provides
a convenient way to move along a part when the part is oriented differently from the world
frame. See Figure 6–23 .
You can set up jog frame so that the coordinates of jog frame correspond to the coordinates of the
part. You can then jog along X, Y, and Z to teach the positions on the part.
• Before you use jog frame, you must set up its location and orientation.
• You can set up as many as five different jog frames for each robot.
• You can select one jog frame to be active at a time per robot group.
• You can jog the robot in jog frame.
Figure 6–23. Jog Frame Defined Parallel to Part
6–68
MAROUHT9102171E REV F
6. FRAMES
Table 6–10. Jog Frame Setup Screen Items
ITEM
DESCRIPTION
Jog frame setup/xxxx
This line shows the current selected method for setting each jog frame.
Frame number 1-5
These lines show the current position and comment for each available jog frame.
X
This column shows the X coordinate of each jog frame.
Y
This column shows the Y coordinate of each jog frame.
Z
This column shows the Z coordinate of each jog frame.
Comment
This column shows the comment for each jog frame.
Active JOG FRAME[1] = 0
This line indicates which jog frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
DETAIL
Press this key to display detailed information for each jog frame and to set the definition
and comment of each jog frame.
OTHER
Press this key to select one of the other available reference frames or to choose the
motion group for the frame you are setting up (in systems with multiple motion groups).
CLEAR
To set the numerical values of any jog frame to zero, move the cursor to the frame number,
press CLEAR and answer YES to the prompt.
SETIND
To select the jog frame to use, press F5, SETIND, type the number of the jog frame you
want, and press ENTER. This sets the active jog frame to the number of the frame you
want. If F5, SETIND, is not displayed, press PREV.
You can use two methods to define the jog frame.
• Three point method
• Direct entry method
6.9.1.1 Three Point Method
The three point method allows you to define a jog frame by recording three points: the origin, a
point along the +x-axis of the user frame, and a point on the x-y plane of the user frame (defines
the x-y plane and the y-z plane).
Table 6–11. Jog Frame Setup Three Point DETAIL Screen Items
ITEM
DESCRIPTION
Frame number
This line shows the number of the jog frame being defined.
X, Y, Z, W, P, R
These items show the current coordinates of the jog frame being defined.
Comment
This item is used to add a comment.
Orient Origin Point
This item is used to define the reference point of the jog frame.
X direction Point
This item is used to define the +X direction point.
Y Direction Point
This item is used to define a point on the X-Y plane.
6–69
6. FRAMES
MAROUHT9102171E REV F
Active JOG FRAME[1] = 0
This item indicates which jog frame is currently selected for use
[TYPE]
Press this key to access various application-specific options.
[METHOD]
Press this key to select a method of entry.
[FRAME]
Press this key to select a frame.
MOVE_TO
Press this key to move to a recorded position. Move the cursor to the desired point and
press MOVE_TO along with the SHIFT key.
RECORD
Press this key along with the SHIFT key to record a position.
HandlingTool Jog Frame Three Point Method
Procedure 6-14 Setting Up the Jog Frame Using the Three Point Method
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR, to
clear frame data.
If you modify an existing frame, make sure that all frame data is set the
way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
Conditions
• You have a cardboard box.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
If you have the new iPendant, you can press the GROUP key and press the numeric key
to switch to a specified group. Press the GROUP key and the 0 key together to toggle the
sub group.
6–70
MAROUHT9102171E REV F
6. FRAMES
Warning
Do not run a KAREL program that includes motion statements. All
motion must be initiated from a teach pendant program. Otherwise,
the robot could move unexpectedly, personnel could be injured,
and equipment could be damaged.
6. If jog frames are not displayed, press F3, [OTHER], and select Jog Frame. If F3,
[OTHER], is not displayed, press PREV.
7. To display the settings for all frames, press PREV repeatedly until you see a screen
similar to the following.
SETUP Frames
JOG Frame Setup / Three Point
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 *************
Active JOG FRAME[1] = 0
8. To set the numerical values to zero,, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
9. Press F2, DETAIL.
10. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
11. Press F2, [METHOD].
12. Select Three Point. You will see a screen similar to the following.
SETUP Frames
Jog Frame Setup / Three Point
Frame Number: 2
X 0.0
Y 0.0
Z 0.0
W 0.0
P 0.0
R 0.0
Comment: ****************
Orient Origin Point: UNINIT
X direction Point:
UNINIT
Y Direction Point:
UNINIT
Active JOG FRAME[1] = 0
6–71
6. FRAMES
MAROUHT9102171E REV F
13. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
d. When you are finished, press ENTER.
14. Mount a box within the workcell so that the orientation of the box matches the orientation
of the desired jog frame. Make sure that the corner of the box used to record the origin
is at the proper location.
15. Define the origin of the jog frame (System Origin Point):
a. Move the cursor to System Origin Point.
b. Jog the robot TCP to the origin. In Figure 6–24 the origin is labeled number 1.
c. Press and hold the SHIFT key and press F5, RECORD.
Figure 6–24. Defining the Origin
16. Define the +X direction point (X direction Point):
a. Move the cursor to X direction Point.
b. Jog the robot TCP to a point along the +x-axis of the box. In Figure 6–25 , this point is
labeled number 2.
c. Press and hold the SHIFT key and press F5, RECORD.
6–72
MAROUHT9102171E REV F
6. FRAMES
Figure 6–25. Defining the X direction Point
17. Define a point on the positive X-Y plane (Y Direction Point):
a. Move the cursor to Y Direction Point.
b. Jog the robot to a location on the positive X-Y plane. In Figure 6–26 , this point is
labeled number 3.
c. Press and hold the SHIFT key and press F5, RECORD.
Figure 6–26. Defining the X-Y Plane
18. To select the jog frame to use, press F5, SETIND, type the number of the jog frame you
want, and press ENTER. If F5, SETIND, is not displayed, press PREV.
6–73
6. FRAMES
MAROUHT9102171E REV F
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to Jog, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
19. Jog the robot in the +x, +y, and +z directions. The robot should move in the correct
directions according to the frame you defined. If the robot does not move in the correct
directions, go to Step 20 . Otherwise, go to Step 21 .
Caution
When you are finished setting the frame configuration, save the
information to the default device so that you can reload the configuration
data if necessary. Otherwise, if the configuration is altered, you will
have no record of it.
Warning
When you use F4, MOVE_TO, to jog the robot, unexpected motion
can occur. This could injure personnel or damage equipment.
20. To move to a recorded position, move the cursor to the desired position, press and hold
the SHIFT key and press F4, MOVE_TO.
21. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the jog frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV, on the default device.
Display the SYSTEM Variables menu,
k. Press MENU.
l. Select SYSTEM.
m. Press F1, [TYPE].
n. Select Variables.
o. Press FCTN.
6–74
MAROUHT9102171E REV F
6. FRAMES
p. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device.
6.9.1.2 Jog Frame Direct Entry Method
Direct Entry Method
The direct entry method allows you to designate the origin with values forX, Y, Z, W, P, and R.
This method provides direct recording and numerical entry of the frame position.
Table 6–12. Jog Frame Setup Direct Entry DETAIL Screen Items
ITEM
DESCRIPTION
Frame number
This line shows the number of the jog frame being defined.
Comment
This item is used to add a comment.
X
This item is used to define the component of the jog frame.
Y
This item is used to define the component of the jog frame.
Z
This item is used to define the component of the jog frame.
W
This item is used to define the component of the jog frame.
P
This item is used to define the component of the jog frame.
R
This item is used to define the component of the jog frame.
Configuration
This line displays the current robot configuration.
Active JOG FRAME[1] = 0
This line indicates which jog frame is currently selected for use.
[TYPE]
Press this key to access various application-specific options.
[METHOD]
Press this key to select a method of entry.
[FRAME]
Press this key to select a frame.
MOVE_TO
Press this key along with the SHIFT key to move to a recorded position.
RECORD
Press this key along with the SHIFT key to record a position.
Use Procedure 6-16 to select a jog frame.
Procedure 6-15 Setting Up the Jog Frame Using the Direct Entry Method
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
6–75
6. FRAMES
MAROUHT9102171E REV F
Warning
If you set up a new frame, make sure that all frame data is zero or
uninitialized before you record any positions. Press F4, CLEAR, to
clear frame data.
If you modify an existing frame, make sure that all frame data is set the
way you want before you change it.
Otherwise, you could injure personnel or damage equipment.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. To choose the motion group for the frame you are setting up in systems with multiple
motion groups press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
If you have the new iPendant, you can press the GROUP key and press the numeric key
to switch to a specified group. Press the GROUP key and the 0 key together to toggle the
sub group.
Warning
Do not run a KAREL program that includes motion statements. All
motion must be initiated from a teach pendant program. Otherwise,
the robot could move unexpectedly, personnel could be injured,
and equipment could be damaged.
5. Select Frames.
6. If jog frames are not displayed, press F3, [OTHER] and select Jog Frame. If F3,
[OTHER], is not displayed, press PREV.
7. To display the settings for all frames, press PREV repeatedly until you see a screen
similar to the following.
SETUP Frames
JOG Frame Setup / Three Point
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 *************
Active JOG FRAME[1] = 0
6–76
MAROUHT9102171E REV F
6. FRAMES
8. To set the numerical values to zero, move the cursor to the frame number, press F4,
CLEAR, and then press F4, YES, to confirm.
9. Press F2, DETAIL.
10. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
11. Press F2, [METHOD].
12. Select Direct Entry. You will see a screen similar to the following.
SETUP Frames
Jog Frame Setup / Direct Entry
Frame Number: 1
1 Comment: ****************
2 X:
0.000
3 Y:
0.000
4 Z:
0.000
5 W:
0.000
6 P:
0.000
7 R:
0.000
Configuration:
N R D B, 0, 0, 0
Active JOG FRAME[1] = 0
13. To add a comment:
a. Move the cursor to the comment line and press ENTER.
b. Select a method of naming the comment.
c. Press the appropriate function keys to enter the comment.
d. When you are finished, press ENTER.
14. Set each position component:
a. Move the cursor to the component.
b. Enter the numeric value for the component.
c. Press ENTER to set the new value.
15. To select the jog frame to use, press F5, SETIND, type the number of the jog frame you
want, and press ENTER. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to Jog, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
6–77
6. FRAMES
MAROUHT9102171E REV F
Caution
When you are finished setting the frame configuration, save the
information to the default device so that you can reload the configuration
data if necessary. Otherwise, if the configuration is altered, you will
have no record of it.
16. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the jog frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV on the default device.
Display the SYSTEM Variables menu,
17. To save the SYSTEM Variables (optional since data is in SYSFRAME.SV)
a. Press MENU.
b. Select SYSTEM.
c. Press F1, [TYPE].
d. Select Variables.
e. Press FCTN.
f. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device.
6.9.2 Selecting a Jog Frame
Procedure 6-16 Selecting a Jog Frame
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
Note You can also use the Jog Menu to select the number of the jog frame you want to use. Refer
to Section 5.8 for more information.
6–78
MAROUHT9102171E REV F
6. FRAMES
Conditions
• The jog frame you want to select has been set up.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. If jog frames are not displayed press F3, [OTHER], and select Jog Frame. If F3, [OTHER],
is not displayed, press PREV. You will see a screen similar to the following.
SETUP Frames
Jog Frame Setup / Direct Entry
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 *************
Active JOG FRAME[1] = 0
6. To select the jog frame to use, press F5, SETIND, type the number of the
jog frame you want, and press ENTER. This copies the selected jog frame to
$JOG_GROUP[group_no].$JOGFRAME. If F5, SETIND, is not displayed, press PREV.
-ORUse the Jog Menu. Press and hold SHIFT and press COORD, move the cursor to Jog, and
type the number of the frame you want to use. Refer to Section 5.8 for more information.
6.10 Cell Frame and Cell Floor
Cell Frame and Cell Floor
Cell frame is a reference frame whose origin is common to all robots within the cell frame. The
cell frame is used by TP graphics to provide proper relative positioning of each robot in the
workcell. Cell frame can provide a convenient mean for calibrating the robots in a cell with
respect to each other by first calibrating them with a single reference frame. The transformation
representing a cell frame of a robot is defined from the cell frame origin to the world frame of each
robot. The number of cell frames is always the same as the number of the robots in the workcell.
Cell floor origin is the reference frame attached to the physical floor in the workcell. The origin of
the cell floor can be represented by a transformation from the cell floor to the cell frame origin.
6–79
6. FRAMES
MAROUHT9102171E REV F
At the initialization, the cell floor is set by TP graphics to a default value. The default value is
calculated based on the model and dimensions of the robot. The default value of the cell floor can
then be adjusted through its dedicated setup screen.TP 3D graphics uses the cell floor to determine
the position and orientation of the floor with respect to the cell frame origin.
Figure 6–27 shows an example with robots calibrated to a cell frame. The white arrows represent
the direction of the transformation.
Figure 6–27. Cell Frame and Cell Floor
6.10.1 Cell Frame Setup
You can set the cell frame directly using the direct entry method, or by copying the cell frame
from a user frame or a cd pair (in systems with coordinated motion option).
Direct Entry Method
Use the direct entry method when the coordinates of the robot with respect to the cell frame is
known. The direct entry method allows you to designate the cell frame values ofX, Y, Z, W, P, and
R. Use Procedure 6-17 to define the cell frame of a robot using the direct entry method.
6–80
MAROUHT9102171E REV F
6. FRAMES
Table 6–13. Cell Frame Setup Screen Items
ITEM
DESCRIPTION
Frame Status
This field indicates whether the cell frame has been
calibrated or not.
Calibration Type
If the cell frame is calibrated, this field shows the method
used for the calibration.
X, Y, Z, W, P, R
These items show the current coordinates of the cell frame
of the current robot.
[TYPE]
Press this key to access various application-specific
options.
DETAIL
Press this key to display detailed information for the cell
frame and to calibrate the frame.
Press this key to select the other available reference
frames or to choose the motion group for the frame you are
setting up (in systems with multiple motion groups).
[OTHER]
Press this key to clear the current value of the cell frame.
CLEAR
Press this key to copy to/from cell frame from/to a specific
user frame or cd pair (in systems with coordinated motion
option).
COPY
Table 6–14. Cell Frame Setup Using Direct Entry
ITEM
DESCRIPTION
Frame Status
This field indicates whether the cell frame has been
calibrated or not.
Calibration Type
If the cell frame is calibrated, this shows the method used
for calibration.
X, Y, Z, W, P, R
These items are the coordinates of the cell frame of the
current robot.
Press this key to select the other available frames or to
choose the motion group for the frame you are setting up
(in systems with multiple motion groups).
[OTHER]
Press this button for the changes you have applied to take
effect.
APPLY
Procedure 6-17 Setting Up the Cell Frame Using the Direct Entry Method
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
6–81
6. FRAMES
MAROUHT9102171E REV F
5. To choose the motion group for the frame you are setting up in systems with multiple
motion groups press F3, [OTHER], and select the group you want. The default motion
group is Group 1.
If you have the new iPendant, you can press the GROUP key and press the numeric key
to switch to a specified group. Press the GROUP key and the 0 key together to toggle the
sub group.
6. If cell frames are not displayed, press F3, [OTHER], and select Cell Frame. If F3,
[OTHER], is not displayed, press PREV.
7. To display the cell frame setup summary screen, press PREV repeatedly until you seen
a screen smiliar to the following.
SETUP Frames
User Frame Setup
Frame Status:
Calibration Type:
X:
0.0 Y:
0.0
W:
0.0 P:
0.0
Not Set
Not Set
Z:
0.0
R:
0.0
8. To set the cell frame to zero, press F4, CLEAR, and then press F4, YES, to confirm.
9. Press F2, DETAIL. You will see a screen similar to the following.
SETUP Frames
User Frame Setup
Frame Status:
Calibration Type:
1 X:
2 Y:
3 Z:
4 W:
5 P:
6 R:
Not Set
Not Set
0.000
0.000
0.000
0.000
0.000
0.000
10. Set each position component:
a. Mover the cursor to the component.
b. Enter the numeric value for the component.
c. Press the ENTER key to set the new value.
11. Press F5, APPLY, to apply the changes made on the screen to the cell frame.
Copying the Cell Frame
With the copy button you can copy a user frame or a cd pair (in systems with the coordinated
motion) to a cell frame. This allows you to use the three point or four point method of the user
frame setup menu to define the cell frame as a user frame and then copy over the defined user
frame to the cell frame.
6–82
MAROUHT9102171E REV F
6. FRAMES
In systems with the coordinated motion option, CD pairs also become available as a source for
the copy. This allows you to use an already calibrated CD pair for setting the cell frame of the
leader of the group, under the condition that the cell frame of the follower of the CD pair is
already calibrated.
The value of the cell frame can also be copied to a user frame. Among the other uses, it allows you
to observe the coordinates of the TCP or the tool frame as represented in the cell frame.
Caution
Before copying the cell frame to a user frame, make sure that the selected
user frame is not used by any programs.
In order to copy the cell frame the following conditions should be satisfied:
• The source and destination of the copy cannot be the same.
• One of the source or destination should be the cell frame.
• In case of the copy from the CD PAIR, when the coordinated motion option is loaded, the
selected source CD PAIR should already be calibrated. Also, the cell frame of the follower
group of the CD PAIR should be calibrated.
Follow Procedure 6-18 for copying the cell frame.
Table 6–15. Cell Frame Copy Screen Items
ITEM
DESCRIPTION
Source
Shows the source of the copy operation.
Destination
Shows the destination of the copy operation.
Frame Index
Shows the index of the source or destination of the copy
operation.
[TYPE]
Press this key to access various application-specific
options.
[CHOICE]
Press this key to access the list of the possible source or
destinations. This key becomes active when the source or
the destination fields are selected.
APPLY
Press this key to set the cell frame to the value shown on
the screen.
6–83
6. FRAMES
MAROUHT9102171E REV F
Procedure 6-18 Copying the Cell Frame
Conditions
• The source and destination of the copy cannot be the same.
• One of the source or destination should be the cell frame.
• In case of the copy from the CD PAIR, when the coordinated motion option is loaded, the
selected source CD PAIR should already be calibrated. Also, the cell frame of the follower
group of the CD PAIR should be calibrated.
Steps
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. Press F3, [OTHER], and select the cell frame.
6. To copy the cell frame, press F5, COPY. The following screen will be shown.
SETUP Frame
/
Cell Frame
Source: CELL FRAME
Destination: UFRAME
Frame Index:
1
7. To change the source of the copy:
a. Move the cursor to Source and press F4, [CHOICE].
b. Select the source of the copy from the list of possible sources which consists of
UFRAME and CELL FRAME. If the coordinated motion option is loaded, CD PAIR
will also becomes available as a copy source.
c. When the source of the copy is selected press ENTER.
8. To change the destination of the copy:
a. Move the cursor to Destination and press F4, [CHOICE].
b. Select the source of the copy from the list of possible sources which consists of
UFRAME and CELL FRAME.
c. When the source of the copy is selected press ENTER.
9. Enter the Frame Index number. The index number is the index of the UFRAME or CD PAIR
that is selected as a source or destination of the copy.
10. Press ENTER for the copy operation to take effect.
6–84
MAROUHT9102171E REV F
6. FRAMES
6.10.2 Cell Floor Setup
To set the cell floor follow Procedure 6-19 .
Table 6–16. Cell Floor Setup Screen Items
ITEM
DESCRIPTION
X, Y, Z, W, P, R
These items are the coordinates of the cell frame of the
current robot.
[TYPE]
Press this key to access various application-specific
options.
{OTHER]
Press this key to select the other available reference
frames or to choose the motion group for the frame you are
setting up (in systems with multiple motion groups).
Procedure 6-19 Cell Floor Setup Using the Direct Entry Method
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. If cell floor is not displayed, press F3, [OTHER], and select Cell Floor. If F3, [OTHER], is
not displayed, press PREV.
6. The cell floor setup screen is similar to the following:
SETUP Frames
Cell Floor
X:
0.0 Y:
W:
0.0 P:
0.0
0.0
Z:
R:
0.0
0.0
7. Set each position component:
a. Mover the cursor to the component.
b. Enter the numeric value for the component.
c. Press the ENTER key to set the new value.
6.11 Saving Frame Data
Saving frame data saves the frame positions and comments. Use Procedure 6-20 to save frame
data to a file.
6–85
6. FRAMES
MAROUHT9102171E REV F
Caution
Do not set up or alter frames when you use PalletTool. Frames are
automatically set up for you by PalletTool.
Procedure 6-20 Saving Frame Data to a File
1. Press MENU.
2. Select SETUP.
3. Press F1, [TYPE].
4. Select Frames.
5. Press F2, DETAIL.
6. To select a frame,
a. Press F3, FRAME.
b. Type the desired frame number.
c. Press ENTER.
7. Press F2, [METHOD].
8. Select a frame method. You will see a screen similar to the following.
SETUP Frames
Tool Frame Setup / Three Point
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 *************
ACTIVE TOOL $MNUTOOLNUM[1]=1
Caution
When you are finished setting the frame configuration, save the
information to the default device so that you can reload the configuration
data if necessary. Otherwise, if the configuration is altered, you will
have no record of it.
9. To save the frames and related system variables to a file on the default device,
a. Press MENU.
b. Select FILE.
c. Press F1, [TYPE].
d. Select File.
6–86
MAROUHT9102171E REV F
6. FRAMES
e. Press F5, [UTIL].
f. Select Set Device.
g. Move the cursor to the device you want and press ENTER.
h. Display the frame screen.
i. Press FCTN.
j. Select SAVE. This will save the frame positions and comments for all frames to the file
FRAMEVAR.VR, and the frame data to SYSFRAME.SV, on the default device.
10. To save the SYSTEM Variables,
a. Press MENU.
b. Select SYSTEM.
c. Press F1, [TYPE].
d. Select Variables.
e. Press FCTN.
f. Select SAVE. The frame positions and system variables are saved in the SYSVAR.SV
file, on the default device. This is optional since frame variables are saved in
SYSFRAME.SV
6.12 Frame Visualization
If the option R764 4D Graphics is installed, the Frame Setup screens will offer a related view.
When this view is activated, you will be shown the 3D world with details about the current frame
setup operation. Refer to Chapter 8 CREATING A PROGRAM on launching a related view, and
Chapter 4 4D FUNCTIONALITY for details on manipulating the 3D world.
A large blue triad representing the location and orientation of the frame currently being set up is
shown in the 3D world. If you are on the 3, 4 or 6 point detail screen, a small triad is displayed
for each recorded point. The color of the triad is black unless it represents the location of the
cursor in the setup pane. In that case it is green.
Changes made in the frame setup menu are immediately reflected in the 3D world.
6–87
Chapter 7
PROGRAM INSTRUCTIONS
Contents
Chapter 7
7.1
7.2
7.2.1
7.2.2
7.2.3
7.2.4
7.2.5
7.2.6
7.2.7
7.2.8
7.2.9
7.2.10
7.3
7.3.1
7.3.2
7.3.3
7.3.4
7.3.5
7.3.6
7.3.7
7.3.8
7.3.9
7.3.10
7.3.11
7.3.12
7.3.13
7.3.14
7.3.15
7.3.16
7.3.17
7.3.18
7.3.19
7.3.20
7.3.21
PROGRAM INSTRUCTIONS .............................................................. 7–1
OVERVIEW ........................................................................................... 7–5
MOTION INSTRUCTION ........................................................................ 7–5
Overview .............................................................................................. 7–5
Motion Type ......................................................................................... 7–6
Circular Arc Type A Motion Instructions .............................................. 7–11
Positional Information ....................................................................... 7–35
Position Confirmation ........................................................................ 7–36
Motion Status Display ........................................................................ 7–37
Frame Number of Positional Data ...................................................... 7–45
Switch Frame Check Type .................................................................. 7–46
Speed ................................................................................................. 7–47
Termination Type ............................................................................... 7–54
MOTION OPTIONS INSTRUCTION........................................................ 7–56
Acceleration Override ........................................................................ 7–58
Advanced Constant Path ................................................................... 7–59
Break ................................................................................................. 7–76
Constant Path .................................................................................... 7–77
Coordinated Motion ............................................................................ 7–87
Corner Distance Control Option .......................................................... 7–87
Extended Velocity EV Motion Option ................................................. 7–98
FacePlate Linear ................................................................................ 7–100
Incremental Motion .......................................................................... 7–102
Minimal Rotation (HandlingTool Only) ............................................. 7–103
Offset ............................................................................................... 7–105
Offset Position Register ................................................................... 7–105
ORNT_BASE ...................................................................................... 7–106
Remote TCP Motion Option (optional) ............................................. 7–109
Search [ ] Motion Option ................................................................... 7–111
Skip Jump .......................................................................................... 7–112
Skip Label ........................................................................................ 7–113
Time Before / Time After .................................................................. 7–114
Tool_offset ....................................................................................... 7–115
Tool offset position register ............................................................. 7–116
Wrist Joint ....................................................................................... 7–117
7–1
7. PROGRAM INSTRUCTIONS
7.4
7.5
7.5.1
7.5.2
7.5.3
7.5.4
7.5.5
7.6
7.6.1
7.6.2
7.6.3
7.6.4
7.6.5
7.6.6
7.7
7.8
7.8.1
7.8.2
7.8.3
7.9
7.9.1
7.9.2
7.9.3
7.9.4
7.9.5
7.10
7.11
7.12
7.12.1
7.12.2
7.12.3
7.12.4
7.12.5
7.13
7.13.1
7.13.2
7.13.3
7.13.4
7.13.5
7.13.6
7.14
7.15
7.15.1
7.15.2
7.15.3
7.15.4
7.15.5
7.15.6
7.15.7
7.16
7.16.1
7.16.2
7.16.3
7.16.4
7.16.5
7.16.6
7–2
MAROUHT9102171E REV F
ALL-POINT TEACHING FOR PALLETIZING ......................................
TOUCH SENSE INSTRUCTIONS .......................................................
Overview ..........................................................................................
Search Start Instruction ...................................................................
Search End Instruction ....................................................................
Touch Offset Instruction ..................................................................
Touch Offset End Instruction ...........................................................
PALLETIZING INSTRUCTIONS .........................................................
Overview ..........................................................................................
PALLETIZING-B Instruction .............................................................
PALLETIZING-BX Instruction ...........................................................
PALLETIZING-E Instruction ..............................................................
PALLETIZING-EX Instruction ...........................................................
PALLETIZING-END Instruction .........................................................
PALLET REGISTER INSTRUCTIONS ..................................................
BASIC PROCESS AXES INSTRUCTIONS (OPTION) ...........................
Overview ............................................................................................
SET ISDT SPEED Instruction .............................................................
STOP ALL ISDT Instruction ...............................................................
BRANCHING INSTRUCTIONS ..........................................................
Overview ..........................................................................................
Label Definition Instruction LBL[x] ..................................................
Unconditional Branching Instructions .............................................
Conditional Branching Instructions .................................................
Wizard to Input Arguments ................................................................
COLLISION GUARD INSTRUCTIONS (OPTION) ...............................
CONDITION MONITOR INSTRUCTIONS ...........................................
FOR/ENDFOR INSTRUCTIONS...........................................................
Overview ............................................................................................
FOR/ENDFOR Instruction Specification .............................................
Teach FOR/ENDFOR Instruction ........................................................
Execution examples ..........................................................................
Alarms ...............................................................................................
INPUT/OUTPUT INSTRUCTIONS ......................................................
Overview ..........................................................................................
Digital Input and Output Instructions ...............................................
Robot Digital Input and Output Instructions ....................................
Analog Input and Output Instructions ..............................................
Group Input and Output Instructions ...............................................
Input and Output Instruction Format .................................................
MACRO COMMAND INSTRUCTION ..................................................
MATH FUNCTION INSTRUCTIONS .....................................................
Type of Math Functions .....................................................................
Instruction Format of Math Function .................................................
Function Specification of Math Functions .........................................
Background Operation of Math Function ...........................................
Teach Math Function Instruction .......................................................
Restriction of Teaching Math Function ..............................................
Exceptions and Restriction................................................................
MISCELLANEOUS INSTRUCTIONS ..................................................
Overview ..........................................................................................
RSR Enable/Disable Instruction .......................................................
User Alarm Instruction .....................................................................
Timer Instruction .............................................................................
OVERRIDE Instruction .....................................................................
Remark Instruction ..........................................................................
7–118
7–120
7–120
7–121
7–121
7–122
7–123
7–123
7–123
7–126
7–132
7–139
7–146
7–154
7–154
7–156
7–156
7–156
7–158
7–158
7–158
7–158
7–158
7–160
7–164
7–173
7–173
7–177
7–177
7–177
7–178
7–183
7–187
7–188
7–188
7–189
7–190
7–192
7–193
7–194
7–196
7–196
7–197
7–197
7–199
7–204
7–205
7–207
7–208
7–208
7–208
7–209
7–209
7–210
7–210
7–210
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.16.7 Multi-lng Remark Instruction .............................................................
7.16.8 Line Remark (Comment out) Instruction ............................................
7.16.9 Message Instruction ........................................................................
7.16.10 Parameter Name Instruction ............................................................
7.16.11 Maximum Speed Instruction ............................................................
7.17 MIXED LOGIC INSTRUCTIONS .........................................................
7.17.1 Overview ..........................................................................................
7.17.2 Data Types .......................................................................................
7.17.3 Operators .........................................................................................
7.17.4 Expressions .....................................................................................
7.17.5 Adding Mixed Logic Instructions .....................................................
7.17.6 Background Logic ...........................................................................
7.17.7 Backup/Restore ...............................................................................
7.18 MULTIPLE CONTROL INSTRUCTIONS .............................................
7.19 MOTION GROUP INSTRUCTIONS (OPTION) ....................................
7.19.1 Overview ..........................................................................................
7.19.2 Independent Motion Group Instructions ..........................................
7.19.3 Simultaneous Motion Group Instructions ........................................
7.19.4 Defining Motion Group Instructions .................................................
7.20 OFFSET/FRAME INSTRUCTIONS .....................................................
7.21 PARAMETERS FOR PROGRAM CALL AND MACRO
INSTRUCTIONS .................................................................................
7.21.1 Overview ..........................................................................................
7.21.2 Parameter Instruction Syntax ..........................................................
7.21.3 String Value Selections ....................................................................
7.21.4 Argument Registers .........................................................................
7.21.5 Guidelines for Using Parameters .....................................................
7.21.6 Including Parameters in Program Call and Macro Instructions
7–211
7–212
7–213
7–213
7–214
7–216
7–216
7–216
7–217
7–218
7–220
7–222
7–233
7–234
7–234
7–234
7–235
7–235
7–235
7–237
..........................................................................................................
7–247
7–251
7–252
7–253
7–253
7–255
7–257
7–260
7–260
7–260
7–262
7–264
7–265
7–265
7–265
7–266
7–266
7–267
7–267
7–267
7–268
7–268
7–271
7–271
7–271
7–272
7–272
7.21.7
7.22
7.23
7.23.1
7.23.2
7.23.3
7.24
7.24.1
7.24.2
7.24.3
7.25
7.26
7.26.1
7.26.2
7.26.3
7.26.4
7.26.5
7.26.6
7.26.7
7.26.8
7.27
7.28
7.28.1
7.28.2
7.28.3
7.29
Including Argument Registers in Sub-Programs .............................
PAYLOAD INSTRUCTION .................................................................
POINT LOGIC INSTRUCTION .............................................................
Overview ............................................................................................
Point Logic Instruction ......................................................................
Point Logic View Function .................................................................
POSITION REGISTER INSTRUCTIONS .............................................
Overview ..........................................................................................
PR[x] Position Register Instructions ................................................
PR[i,j] Position Register Element Instructions .................................
POSITION REGISTER LOOK-AHEAD INSTRUCTIONS .....................
PROGRAM CONTROL INSTRUCTIONS ............................................
Overview ..........................................................................................
PAUSE Instruction ...........................................................................
ABORT Instruction ...........................................................................
Error Program Instruction ................................................................
Resume Program Instruction ...........................................................
Maintenance Program Instruction ....................................................
Clear Resume Program Instruction ..................................................
Return Path Disable Instruction .......................................................
PROCESS SYNCHRONIZATION .......................................................
QUICK SKIP (HIGH-SPEED SKIP) .....................................................
Overview ..........................................................................................
Execution .........................................................................................
Limitations .......................................................................................
REGISTER INSTRUCTIONS ..............................................................
7–240
7–240
7–241
7–242
7–244
7–245
7–3
7. PROGRAM INSTRUCTIONS
7.30
7.31
7.31.1
7.31.2
7.31.3
7.31.4
7.31.5
7.31.6
7.32
7.33
7.33.1
7.33.2
7.34
7.34.1
7.34.2
7.34.3
7.34.4
7.34.5
7.34.6
7.34.7
7.34.8
7.34.9
7.34.10
7.34.11
7.34.12
7.34.13
7.34.14
7.34.15
7.34.16
7.34.17
7.34.18
7.34.19
7.34.20
7.34.21
7.34.22
7.34.23
7.34.24
7.34.25
7.35
7–4
MAROUHT9102171E REV F
SKIP INSTRUCTION .........................................................................
STRING REGISTER INSTRUCTIONS ..................................................
Overview ............................................................................................
String Register Assignment and Concatenation ................................
String Conversion and Precedence ...................................................
STRLEN Instruction ...........................................................................
FINDSTR Instruction ..........................................................................
SUBSTR Instruction ...........................................................................
TOOL OFFSET CONDITION INSTRUCTION ......................................
VIA INSTRUCTION .............................................................................
How to Use ........................................................................................
Specifications ....................................................................................
VISION INSTRUCTIONS ...................................................................
Overview ..........................................................................................
RUN_FIND ........................................................................................
GET_OFFSET ...................................................................................
GET_PASSFAIL ..................................................................................
GET_NFOUND....................................................................................
SET_REFERENCE ............................................................................
OVERRIDE .........................................................................................
CAMERA_CALIB ..............................................................................
VR[]. MODELID ................................................................................
VR[].MES[] .........................................................................................
VR[].FOUND_POS[] ............................................................................
VR[].OFFSET ....................................................................................
VR.[].ENC ...........................................................................................
RUN_FIND SR[] ..................................................................................
GET_OFFSET SR[] .............................................................................
SET_REF SR[] ....................................................................................
CAMERA_CAL SR[] ...........................................................................
GET_PASSFAIL SR[] ..........................................................................
GET_READING ..................................................................................
SAMPLE PROGRAM ........................................................................
Re-Calibration and Verification Sample Program...............................
Bar Code Reading Sample Program ..................................................
Inspection Sample Program ..............................................................
2D Single Multi-View Vision Process .................................................
Calling Vision by String Register Sample Program ...........................
WAIT INSTRUCTIONS ......................................................................
7–276
7–279
7–279
7–279
7–281
7–282
7–282
7–283
7–284
7–285
7–285
7–288
7–288
7–288
7–289
7–289
7–289
7–290
7–290
7–291
7–291
7–292
7–292
7–293
7–293
7–293
7–294
7–294
7–295
7–295
7–296
7–296
7–296
7–297
7–299
7–299
7–299
7–300
7–300
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.1 OVERVIEW
A program instruction tells the robot what to do at a given point in time. FANUC provides
predefined instructions to accomplish certain tasks. For example, FANUC has created an
instruction to move the robot in a certain way and at a certain speed. Another instruction FANUC
makes available tells the robot to wait for an event to transpire before completing other tasks.
Many other instructions like these are available.
You can choose from these available instructions, gathering them together in a teach pendant
program, in order to create a series of steps organized to accomplish a task. This chapter provides
a list of the available program instructions .
Figure 7–1 shows some of the program elements of a typical palletizing program.
Figure 7–1. Program Example
Program name
Remark
Motion instruction
Program instructions
Line number
Program end marker
PROG_01
1: This program palletizes.
2: PALLET[1 :pallet_sample]
3: J P[1:A_1] 70% CNT100
4: J P[1:A_2] 50% CNT50
5: L P[1:A_3] 500mm/s FINE
6: L P[1:BTM] 300mm/s FINE
7:
CLOSE HAND [1]
8:
WAIT SDI[1]
9: If PL[3]=[5,*,*] JUMP[11]
[End]
7.2 MOTION INSTRUCTION
7.2.1 Overview
A motion instruction directs the robot to move in a specified way to a specific location in the
workcell using a specified speed. A motion instruction includes:
• Motion type - How the robot moves to the position
• Position indicator symbol - Indicates that the robot is at the taught position
• Positional information - Where the robot moves
• Termination type - How the robot ends the move to the position
• Speed - How fast the robot moves to a position
• Motion options - Additional commands that perform specific tasks during robot motion
7–5
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
A typical example motion instruction is shown in Figure 7–2 .
Figure 7–2. Typical Motion Instruction Example
Note Wrist Joint (W/JNT) is a motion option that allows the robot to move only in Linear
or Circular.
7.2.2 Motion Type
Motion type defines how the robot will move to the destination position. There are three motion
types:
• Joint
• Linear
• Circular
Joint Motion
J P[2] 50% FINE
Joint motion
• Causes the robot to move all required axes to the destination position simultaneously. The
motion of each axis starts and stops at the same time.
• Is programmed at the destination position.
7–6
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• Speed is specified as a percentage of the total default speed, or in seconds. The actual speed of
the move is dependant on the speed of the slowest axis. Refer to Section 7.2.9 .
Figure 7–3 shows an example of joint motion.
Figure 7–3. Joint Motion Type
Linear Motion
L P[2] 100mm/sec FINE
Linear motion
• Causes the robot to move the tool center point in a straight line from the start position to the
destination position.
• Is programmed at the destination position.
• Speed is specified in millimeters per second, centimeters per second, inches per minute,
degrees per second, or seconds. Refer to Section 7.2.9 .
During a linear move, the orientation of the tool changes gradually as the robot moves from the
start position to the destination position, depending on how the destination position is programmed.
Figure 7–4 shows an example of linear motion.
7–7
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–4. Linear Motion Type
Linear motion type can also be used to rotate about the tool center point while maintaining that
position. The speed for this type of motion is in degrees per second. Figure 7–5 shows an example
of linear motion used for rotation about the tool center point.
7–8
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–5. Linear Motion Type Used to Rotate About the Tool Center Point
Circular Motion
C P[2]
P[3] 100mm/sec FINE
Circular motion
• Causes the robot to move the tool center point in an arc from the start position through an
intermediate to the destination position.
• Is programmed at the intermediate position.
• Speed is specified in inches per minute, millimeters per second, and centimeters per minute.
Refer to Section 7.2.9 .
When you add a motion instruction that has circular motion type, the following appears on the
screen:
C P[2]
P[3] 100 mm/sec FINE
The first position, P[2] in the example, is the intermediate position. The intermediate position is
automatically recorded as the current robot position when you add the motion instruction. The
second position, P[3] in the example, is the destination position. You must record the destination
position, after you add the circular motion instruction, using the TOUCHUP function key, F5.
If you change an existing point to "C", that position becomes the "via" or intermediate position.
7–9
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
To program a complete circle, add two circular motion instructions, which will generate two
intermediate positions and two destination positions. The circular motion instructions can be
added by:
• Inserting a line.
• Returning to DEFAULT
• Selecting [INST].
• Editing a default instruction to add the circular motion instruction.
• Teaching a point with the current default and then modifying the line to become a circular
motion statement.
Circular Orientation Control at Intermediate (Via) Point
Circular orientation control at the intermediate "via" point ensures that the robot will go through
the "via" point at the taught orientation point. Orientation is smoothly changed between the
start, via, and end points.
Figure 7–6 shows an example of circular motion.
Figure 7–6. Circular Motion Type
Restart of Circular Motion
In Figure 7–7 a single-step stop occurs at the destination position of a circular motion instruction.
You can then jog the robot.
7–10
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–7. Restart of Circular Motion Instruction
In Figure 7–8 when program execution is restarted after a single-step stop and jogging, the robot
moves, using linear motion to the end point of the previous circular motion.
Figure 7–8. Restart of Circular Motion Instruction
7.2.3 Circular Arc Type A Motion Instructions
7.2.3.1 Overview
In a normal circular motion instruction, you must record two positions for one circular motion
instruction. In the circular arc type A motion instruction, every instruction has one position, and
the circular motion is performed by more than three type A motion instructions.
Type A motion has the following features:
• It is easy to add and delete a teaching point on circular arc.
• Speed and termtype can be specified for every position.
• Logical instructions can be written between every position.
See Figure 7–9 .
7–11
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–9. Extend Circular Arc
You can easily extend the circular arc by adding a teaching point.
P[2]
P[2]
P[3]
P[1]
P[2]
P[3]
P[3]
P[1]
P[1]
P[4]
P[5]
P[4]
Can add teaching points in series.
You can also insert teaching .points between them.
Circle of P[1], P[2]
and P[5]
Circle of P[1], P[2]
and P[3]
Circle of P[2], P[5]
and P[3]
P[2]
P[2]
P[5]
P[1]
P[1]
P[3]
P[4]
Circle of P[2], P[3] and P[4]
P[4]
P[3]
Can insert
teaching points.
Circle
CircleofofP[5],
P[3],P[3]
P[4]and
andP[4]
P[5]
7.2.3.2 Restrictions
• Backward execution from interrupt program is not supported.
• In case PAL_*[ ] is used as position of a type A motion instruction, an error is posted when
it is executed.
• In case the position register is used as the position type A motion instruction and its index is
specified indirectly by register, error is posted when the motion is executed.
7–12
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• In case Offset or Tool_Offset is attached to a type A motion instruction and an index of PR is
indirectly specified, an error is posted when the motion is executed.
• Circular Arc (type A) motion instructions cannot be used with TAST (Through Arc Seam
Tracking) or Multi-Pass/RPM.
7.2.3.3 Teaching Method
The method used to teach a circular arc type A motion is the same as to teach a linear motion
but you select A motion as the motion type.
7.2.3.4 Normal Motion
1:
2:
3:
4:
5:
6:
J
A
A
A
A
L
P[1]
P[2]
P[3]
P[4]
P[5]
P[6]
100% FINE
200mm/sec
200mm/sec
200mm/sec
200mm/sec
200mm/sec
FINE
CNT 100
CNT 100
FINE
FINE
Figure 7–10. Normal Motion
Circle of P[2], P[3] and P[4]
P[3]
Circle of P[2],
P[3] and P[4]
P[1]
P[2]
P[4]
P[6]
P[5]
Circle of P[3],
P[2], P[4]
P[3] and P[5]
P[4]
Different from a normal circular motion instruction, the motion instruction to the start point of a
circular arc must be a type A motion instruction. In the first type A motion instruction, the robot
moves in a linear motion.
7–13
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–11. First A Motion
In the second and after the type A motion instruction, the robot moves on the circle that is
calculated by three positions: the current position, the destination point of this type A motion
instruction, and that of the next type A motion instruction. See Figure 7–12 .
Halfway A Motion
Figure 7–12. Circle Formed by Current Point
When the next motion instruction is not a type A motion instruction, the last A motion instruction
is regarded as the end position of the circle. In this case, the robot moves on the circle that is
calculated by three positions: the destination position of the previous motion instruction, the
current position, and the destination position of this motion instruction. See Figure 7–13 .
7–14
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–13. Last A Motion
7.2.3.5 Circular Motion Direction
1:
2:
3:
4:
J
A
A
A
P[1]
P[2]
P[3]
P[4]
100% FINE
200mm/sec FINE
200mm/sec CNT100
200mm/sec CNT100
When the third line of the above program is executed, the robot moves to P[3] on the circle that
is calculated by P[2], P[3] and P[4]. The robot moves to P[3] on the direction in the order of
P[2]->P[3]-> P[4]. See Figure 7–14 .
7–15
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–14. This Path Used
7.2.3.6 Cases when the Circular Path Cannot Be Planned
Shortage of Type A Motion Instructions
You must teach three or more successive type A motion instructions. If you do not, it is displayed
as “INTP-609 ARC:A needs 3 points (%d)”.
Ex.1) A motion instruction is isolated. It is displayed as “INTP-609 ARC:A needs 3 points (1).”
1: J P[1] 100% FINE
2: A P[2] 200mm/sec FINE
3: L P[3] 200mm/sec CNT100
Ex.2) There are only two successive A motion instructions. It is displayed as “INTP-609 ARC:A
needs 3 points (2)”
1:
2:
3:
4:
J
A
A
L
P[1]
P[2]
P[3]
P[3]
100% FINE
200mm/sec FINE
200mm/sec CNT100
200mm/sec CNT100
Teaching of the Same Position
When it is impossible to form a circular motion by three points, the robot moves in a linear motion.
When the same point is written continuously, the robot moves in a linear motion.
1:
2:
3:
4:
5:
6:
7–16
J
A
A
A
A
L
P[1]
P[2]
P[2]
P[3]
P[3]
P[4]
100% FINE
200mm/sec
200mm/sec
200mm/sec
200mm/sec
200mm/sec
FINE
CNT100
CNT100
FINE
FINE
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–15. Robot Moves in a Linear Motion
Motion of 3rd line: Current point and destination point are the same, so the robot does not move.
Motion of 4th line: Destination point and next destination point are the same, so the robot
moves in a linear motion.
Motion of 5th line: Current point and destination point are the same, so the robot does not move.
Motion of 6th line: Destination point and next destination point are the same, so the robot moves
as linear motion.
When Three Points are in a Line
In this case, the robot does not move as a circular motion.
1:
2:
3:
4:
J
A
A
A
P[1]
P[2]
P[3]
P[4]
100% FINE
200mm/sec FINE
200mm/sec CNT100
200mm/sec CNT100
Figure 7–16. Robot Moves Linear
When the Circular Arc is Larger than 180 degrees
In type A motion instructions, the robot can not move on a circular arc bigger than 180 degrees.
7–17
7. PROGRAM INSTRUCTIONS
1:
2:
3:
4:
J
A
A
A
P[1]
P[2]
P[3]
P[4]
MAROUHT9102171E REV F
100% FINE
200mm/sec FINE
200mm/sec CNT100
200mm/sec CNT100
Figure 7–17. Robot Can't Move
7.2.3.7 Resume After Pause
If robot motion is paused and resumed without change, the resumed path is the same as if no
pause occurred.
1:
2:
3:
4:
5:
6:
J
A
A
A
A
L
P[1]
P[2]
P[3]
P[4]
P[5]
P[6]
100% FINE
200mm/sec
200mm/sec
200mm/sec
200mm/sec
200mm/sec
FINE
CNT100
CNT100
FINE
FINE
7.2.3.8 Resume After Jog
If a program is paused during type A motion, then the robot is jogged and the program is resumed.
In this case, if the original path resume is enabled, the robot returns to the paused position and
continues the motion. (If the original path resume is disabled, the robot moves from the current
position to the destination position on a circular path. Then the robot moves along the programmed
path.) For example, the program is paused during motion at 3th line. Then the robot is jogged and
the program is resumed. At first, the robot moves to P[3] as a circular motion is made by the current
position, P[3] and P[4]. Then it moves to P[4] on the circular arc formed by P[3], P[4] and P[5].
The path to P[3] and the path to P[4] are blended because motion instruction to P[3] uses CNT100.
7–18
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–18. Resume After Jog
7.2.3.9 Resume After Pause and Modification of Programs
Change of Destination Point
In this case, the resumed motion is a circular motion and its path is calculated using changed
destination point. For example, suppose the program is paused during the motion to P[3]. Then
P[3] is modified by direct numerical input and the program is resumed. The robot moves in
a circular motion that is calculated by the current position, destination position P[3] and next
position P[4]. See Figure 7–19 .
7–19
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–19. Resume After Jog
Change of Next Destination Point
If P[4] is changed in the example above, the changed P[4] is used to calculate the circular path.
See Figure 7–20 .
Figure 7–20. Change of Destination Point
7–20
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Deletion of Next A Motion Instruction and Resume
If the program is paused on type A motion and the next motion destination point is deleted,
it means that the point used to calculate circular path is lost. Even after deletion, if the next
destination point is a type A motion instruction, resumed motion is a circular arc. It is calculated
by the current position, destination point, and the next destination point.
Figure 7–21 is an example. The program is paused during motion from P[2] to P[3], and P[4] is
deleted. See Figure 7–21 .
Figure 7–21. Change of Next Destination Point
The robot moves to P[3] in a circular motion. The arc is formed by the current position, P[3] and
P[5]. To P[5], the robot moves in a circular motion that is calculated by P[2], P[3] and P[5]. In this
particular case, however, because P[3] to P[5] is more than 180 degrees, an error "MOTN-98"
Circle angle too large will be posted. But when P[2] to P[5] is less than 180 degrees, as it should
be, the motion will perform as described above. See Figure 7–22 .
7–21
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–22. Deletion of Next A Motion
If there are no more motion instructions or the next motion instruction is not type A, the paused
motion instruction is the last A. In this case, circular motion is calculated by the current position
and destination position. If the program is paused during the motion from P[3] to P[4], then the
motion instruction to P[5] is deleted. See Figure 7–23 .
Figure 7–23. Deletion of Next A Motion
Because P[5] is deleted, the motion to P[4] is the last type A motion. After the resume, the robot
moves to P[4] as a type A motion that is calculated by P[3], current position and P[4]. After that,
the robot moves to P[6] in a linear motion. See Figure 7–24 .
7–22
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–24. Deletion of Next A Motion
Current Instruction Becomes the First A Motion After Modification
Suppose that the program is paused on the first A motion, and then modified. Even if the program is
changed and the paused motion instruction is not the first one any more, the robot moves in a linear
motion. On the other hand, even if the type A motion instruction is changed to the first one after
the program modification, the motion is resumed as type A motion. The change is not reflected.
1:
2:
3:
4:
5:
6:
7:
8:
9:
J
A
A
A
L
A
A
A
J
P[1]
P[2]
P[3]
P[4]
P[5]
P[6]
P[7]
P[8]
P[9]
100% FINE
200mm/sec
200mm/sec
200mm/sec
200mm/sec
200mm/sec
200mm/sec
200mm/sec
200mm/sec
FINE
CNT100
FINE
CNT100
FINE
CNT100
FINE
FINE
Ex1) The program is paused during the motion to P[6] and change the previous instruction from
the linear motion to the type A motion. See Figure 7–25 .
7–23
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–25. Program is Paused
Because the motion to P[6] was the first type A motion, it was linear motion. But after the
modification, the programmed path is as shown in Figure 7–26 .
Figure 7–26. After Modificaton Programmed Path
In this case, if motion to P[6] is resumed, the robot moves to P[6] in a linear motion. See Figure
7–27 .
Figure 7–27. Motion is Resumed
7–24
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
If the program is resumed by backward execution, the robot moves to P[5] as circular motion. The
resumed path is calculated by P[7], current position and P[5].
Ex.2) Changes contrary to Ex.1. Program is paused during the motion to P[6]. Interpolation type
of motion to P[5] is changed to linear. See Figure 7–28 .
Figure 7–28. Program is Paused
Figure 7–29 is the programmed path of a modified program. The motion instruction to P[6] is
the first instruction now. See Figure 7–29 .
Figure 7–29. Programmed Motion
But motion is resumed as a type A motion. The path is calculated by current position, P[6] and
P[7]. See Figure 7–30 .
Figure 7–30. Motion is Resumed
7–25
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
If the program is resumed by backward execution, the robot moves to P[5] in a linear motion.
7.2.3.10 Pause and Resume from Another Type A Motion Instruction
A motion is resumed the same as the other motion type. In the following example the program is
paused during motion to P[2] and resumed from the motion instruction to P[3]. The robot moves
in a circular motion in order to get to the current position, P[3] and P[4]. See Figure 7–31 .
Figure 7–31. Pause and Resume for Another A Motion
In following example, the program is paused during motion to P[2] and resumed from the motion
instruction to P[4]. This path is shown as a dotted line in Figure 7–32 . However, this circular arc
will be over 180 deg, so the error “MOTN-098 Circle angle too large” occurs and the program
is not executed.
7–26
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–32. Program is Paused
The next example is resumed from motion to P[2] after hold during motion to P[4]. Motion to P[2]
is the 1st A motion. In this case, the robot moves in a linear motion. See Figure 7–33 .
Figure 7–33. Single Step Execution
7.2.3.11 Start of Program from A Motion
When the program is started (not resumed) from middle of a series of type A motion instructions,
how the robot moves is the same as in Section 7.2.3.10 .
7–27
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.2.3.12 Single Step Execution
If a type A motion instruction is executed by single step, the program is paused on every taught
point like another motion instruction. See Figure 7–34 .
Figure 7–34. Single Step Execution
P[3]
P[6]
P[ 1]
P[ 2]
P[ 4]
P[ 6]
P[ 5]
7.2.3.13 Backward Execution
If the type A motion instruction is executed by steppin backwards, the robot moves backward
on the same path as in forward execution, and the program is paused on every taught point.
See Figure 7–35 .
Figure 7–35. Backward Execution
7–28
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.2.3.14 Backward Execution After Abort
In the case of the last type A instruction, the robot moves in linear motion. In the other cases,
robot moves as circular motion. Positions used to calculate the circular motion are as follows:
A type A instruction just before the last type A instruction: The current position, destination
position and the position of the previous type A motion. Other case: Destination position of the
next A motion, current position and destination point.
Figure 7–36 shows an example. The program is aborted during motion to P[4]. The program
is resumed by BWD, toward P[3].
Figure 7–36. Arc of the Next Destination Point
If the program is started by BWD from motion to P[4] from the same position, the line is the
2nd last A. See Figure 7–37 .
Figure 7–37. Program Started by Backward From Motion
7–29
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.2.3.15 Backward Resume from Different Line
Refer to Section 7.2.3.14 .
7.2.3.16 Logic Instructions Between A Motion
Logic instructions can be taught between type A motion instructions. The type A motion type
instruction uses positions of successive type A motion instructions to calculate the circular path.
Logic instructions that change the order of execution such as JMP, and LBL cannot be executed
between type A motions. Logic instructions that affect position data such as position register
instruction cannot be used either. Refer to Table 7–1 through Table 7–3 for information on the
logic instructions that can and cannot be used between Type A motion instructions.
For example, execution of the following programs causes an error at line 4. P[5] is used to
calculate type A motion to P[4], so an error occurs before execution of the 4th instruction to
prevent unexpected motion.
1:
2:
3:
4:
5:
6:
7:
J
A
A
A
P[1]
P[2]
P[3]
P[4]
JMP
A P[5]
L P[6]
100% FINE
200mm/sec
200mm/sec
200mm/sec
LBL[1]
200mm/sec
200mm/sec
CNT100
CNT100
CNT100
CNT100
CNT100
Table 7–1. Available Logic Instructions Between Type A Motion Instructions
Instructions
Examples
Register Instruction
R[1]=1
SDO, RDO, UO, SO, WO, GO, AO
and F are available.
I/O Instruction
SDO[1]=ON
SDO[1]=PULSE
WAIT /TIMEOUT/ LBL causes error.
Wait
WAIT 2.0secWAIT SDI[1]=ON
If called program has motion instruction
or unavailable logic instruction
between A motion instructions, error
occurs.
Call
CALL (Prg)
If macro program has motion
instruction or unavailable logic
instruction between A motion
instructions, error occurs.
Macro
HAND1 OPEN
IF / JMP / LBL causes error.
7–30
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Instructions
Examples
If/Call
IF SDI[1]=ON CALL (Prg)
Select/Call
SELECT R[1]=1 CALL (Prg1)
=1 CALL (Prg2)
OTHERS CALL(Prg3)
RSR
RSR[1]
User Alarm
UARM[1]
Override
OVERRIDE=50%
Timer
TIMER[1]=START
Parameter
$(Parameter)=100
Remark
! (Remark)
Message
Message[message statement]
Positional Register Lock/Unlock
LOCK PREG UNLOCK PREG
Maximum Speed
JOINT_MAX_SPEED[1]
Pause
PAUSE
Program Execution Instruction
RUN (program name)
Torque Limit
TORQ_LIMIT 50.0%
Monitor Instruction
MONITOR (Prg)MONITOR END (Prg)
Contents of the program specified by
monitor instruction are not checked.
Condition
CONDITION R[1]=1
Condition instruction isn’t checked
because it is taught only in program
specified by monitor instruction.
InterBus-S
IBS ATTACH
InterBus PCI
IB attach
Path Switch
PS-10mm, 1.0 sec DO[1]=ON
SELECT / JMP / LBL causes error.
7–31
7. PROGRAM INSTRUCTIONS
Instructions
Examples
Collision Detect
COL DETECT ON
Approach Instruction
Approach_STOP[1] = TMP_DISABLE
Arc
Arc Start[1]
MAROUHT9102171E REV F
Table 7–2. Instructions Unavailable Between A Type Motions but Available in Called Programs
Instructions
Examples
End
END
Jump
JMP LBL[1]
Label
LBL[1]
Notes
Table 7–3. Instructions Unavailable Between A Type Motion Instructions
Instructions
Examples
Position Register
PREG[1]=LPOS
PREG[1,1]=100
Abort
ABORT
Offset
OFFSET_CONDITION PR[1]
Tool Offset
TOOL_OFFSET_CONDITION PR[1]
User Frame
User Frame Number
Tool Frame
Tool Frame Number
UFRAME[1]=PR[1]
UFRAME_NUM=1
UTOOL[1]=PR[1]
UTOOL_NUM=1
SpotTool
SPOT[1]
Palletizing
PALLETIZING-B_1
7–32
Notes
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.2.3.17 Available Motion Options
Some motion options cannot be used with a type A motion instruction. Unavailable motion
options are not displayed in the motion option sub-menu. See Table 7–4 .
Table 7–4. Available Motion Options
Instructions
Example
Wrist Joint
WJNT
Acceleration Override
ACC 80
Path
PTH
Offset
Offset PR[1]
Tool Offset
Tool_Offset PR[1]
Remote TCP
RTCP
Time Before
Time After
Distance Before
TB 2.00sec CALL PRG
TA 0.30sec CALL PRG
DB 100.0mm CALL PRG
Arc Welding
Arc Start[1]
Weave
Weave Sine[1]
Touch Sensing
Search [X]
Coordinated motion
COORD
Corner Region
CR50
Comment
In case there is a forbidden logic
instruction between the A Type motion
instructions in a called program, an
error is posted when executed.
Vision Offset
VOFFSET
Continuous Rotation
CTV100
Motion Options not in Table 7–4 cannot be added to the type A motion instruction. Major
unavailable Motion Options are shown in Table 7–5 .
7–33
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Table 7–5. Major Unavailable Motion Options
Instructions
Example
Incremental
INC
Skip
Skip LBL[1]
High Speed Skip
Skip PR[1] LBL[1]
Spot Welding
SPOT[1]
Dispense start/end
SS[1]/SE
Comment
SS[1] and SE cannot be added to A
motion. However A motion is available
between SS and SE.
7.2.3.18 Change of Position Data During Execution of a Type A Motion
Instruction
In a program with type A motion instructions, one position data is accessed by multiple motion
instructions. If position data is changed while the data is being used to calculate a circular path
it causes contradiction between calculated paths. The robot can move along an unexpected
path. To avoid this, a type A motion instruction can detect inconsistent position at execution. If
detected, an alarm is posted.
1:
2:
3:
4:
5:
6:
7:
J
A
A
A
A
A
L
P[1] 100% FINE
P[2] 200mm/sec CNT100
P[3] 200mm/sec CNT100
PR[1] 200mm/sec CNT100
P[5] 200mm/sec CNT100
P[6] 200mm/sec CNT100
P[7] 200mm/sec FINE
Line 4 uses PR[1]. When line 3 is executed, circular path is calculated by 3 points; P[2], P[3],
PR[1]. The position data of PR[1] is used. When line 6 of this program is executed, the circular
route is computed by 3 points; PR[1], P[5], P[6]. The position data of PR[1] is used again.
Therefore, if the position in PR[1] is changed during execution from line 3 to line 6, the robot
can move along an unexpected path. To avoid this, substitution to position register is forbidden
between type A motion instructions.
However, you can change the value of the position register in the position register screen. A type
A motion instruction can detect a position register change. At every execution of instructions, it
checks if the value of position register is changed or not.
For example, if the value of the PR[1] is changed in position register screen during execution of
line 5, “INTP-627 (program name, line number) ARC: Inconsistent position” is posted when
line 6 is executed.
7–34
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
To avoid stopping production by changing the position register, you can use “LOCK
PREG“/”UNLOCK PREG“ instructions. Teach “LOCK PREG“/”UNLOCK PREG“ before/after
the type A motion instructions that access position registers. The following program is an
example. This makes it is impossible to change the value of position register by position resister
screen when instructions between “LOCK PREG“ and “UNLOCK PREG“ are executed.
1:
2:
3:
4:
5:
6:
7:
8:
9:
J P[1] 100% FINE
LOCK PREG
A P[2] 200mm/sec CNT100
A P[3] 200mm/sec CNT100
A PR[1] 200mm/sec CNT100
A P[5] 200mm/sec CNT100
A P[6] 200mm/sec CNT100
UNLOCK PREG
L P[7] 200mm/sec FINE
A change of User frame or Tool frame also has effect on position data in type A motion instructions.
Therefore instructions that change User frame or Tool frame cannot be executed between type A
motion instructions. However, you can change User frame or Tool frame by using the “SETUP
Frames” screen. A motion instruction can detect the change of User frame or Tool frame. At every
execution of instruction, it checks whether the User or Tool frame is changed or not.
7.2.4 Positional Information
Positional information describes the location, orientation, and configuration of the tool center
point when a motion instruction is added to a program. Positional information is recorded when
the motion instruction is added to the program. Refer to Chapter 8 CREATING A PROGRAM for
more information on adding motion instructions.
In the following program line, the positional information is represented by P[1].
Positional information is made up of seven components, as shown in Figure 7–38 . These
components are represented by the position command, P[n].
Figure 7–38. Positional Information
• Location components, (x,y,z), describe the three-dimensional location of the position.
• Orientation components, (w,p,r), describe rotation about x, rotation about y, and rotation
about z.
7–35
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• The configuration component describes the condition of the axes when the robot arrives at
the destination position. Orientation of the wrist axes at the destination position remains the
same, but the orientation of the other axes might change.
In the motion instruction, positional information is represented as a position command, P[n], or
position register, PR[x]. The n is the position number. The x is the position register number. A
position command stores positional information with the motion instruction in the program. A
position register stores positional information in a storage location separate from the motion
instruction. Refer to Section 7.24 .
The position number identifies the position. Position numbers are automatically assigned when
a motion instruction is added to a program. The first number assigned is [1], the second [2],
and so forth.
If you add a position before an already existing position, the position number is incremented from
the last numbered position regardless of its place in the program. You can request that positions be
renumbered so that the position numbers are sequential in your program.
When you delete positions, all other taught positions keep their current numbers unless you
request that they be renumbered.
Positions can also have comments of one to 16 characters. You specify these when you add
or modify positional information.
Refer to the “Planning and Creating a Program” chapter in the Setup and Operations Manual for
more information on modifying the positions in your program.
7.2.5 Position Confirmation
Position Confirmation provides a visual indicator (an @ symbol) on a motion line when the
robot is near the position. To configure the Position Confirmation feature, set the system variable
$MNDSP_POSCF using a setting in Table 7–6 .
7–36
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Table 7–6. $MNDSP_POSCF Configuration Settings
$MNDSP_POSCF
Description
0 (Disabled)
The “@” symbol is not displayed in
the editor.
Example Program
1:J
2:J
:
3:L
:
4:J
1 (Multiple @)
P[1] 100% FINE
P[2] 40% FINE
Arc Start E1[1]
P[3] WELD_SPEED FINE
Arc End E1[3]
P[1] 100% FINE
The "@" symbol is displayed next to
all positions if the robot is currently
near those positions.
1:J @P[1] 100% FINE
2:J P[2] 40% FINE
: Arc Start E1[1]
3:L P[3] WELD_SPEED FINE
: Arc End E1[3]
:J @P[1] 100% FINE
2 (Single @)
The "@" symbol is displayed next to
the position of the current line if the
robot is near that position.
1:J @P[1] 100% FINE
2:J P[2] 40% FINE
Arc Start E1[1]
3: P[3] WELD_SPEED FINE
: Arc End E1[3]
4:J P[1] 100% FINE
7.2.6 Motion Status Display
The teach pendant editor can display motion status information on each motion line. The example
program shown in Figure 7–39 displays the distances from all the positions in the program to the
current tool center point (TCP) in millimeters.
7–37
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–39. An Example Program in Display Mode 1
The distances are updated continuously as the robot moves. This feature can be helpful while
teaching or testing programs. This is display mode number 1. In this mode, the distance from the
position to the TCP is displayed on multiple lines. Other display modes are available. The other
modes display data only on the current motion line.
This feature is enabled and configured by setting the system variable $MNDSP_MST. After the
feature is enabled and configured, it can easily be toggled ON or OFF by selecting the “Motion
info” entry in the list of EDCMD commands. See Figure 7–40 .
7–38
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–40. Motion Info is Toggled ON and OFF with EDCMD
TEST
1:J
2:J
:
3:L
:
4:J
[End]
JOINT
10 %
1/5
@P[1] 100% FINE__________________
P[2] 40% FINE | 1 Insert
|
Arc Start[1]
| 2 Delete
|
P[3] WELD_SPEE| 3 Copy
|
Arc End[1]
| 4 Find
|
@P[1] 100% FINE| 5 Replace
|
| 6 Renumber
|
| 7 Comment
|
| 8 Undo
|
| 9 Motion info |
----------+
+-
Setup
The behavior of the motion status display feature can be adjusted using the following fields in
the system variable $MNDSP_MST. Refer to the System Reference Manual for more information
about $MNDSP_MST.
$disp_enable turns the motion status display ON or OFF in the Editor. It is toggled by the motion
status element in the EDCMD menu.
$disp_edcmd enables the display of the motion status menu choice in the EDCMD pullup menu.
$disp_inauto enables the motion status display during AUTO mode. $disp_enable must also
be TRUE.
$disp_is_on indicates the motion status is displayed in the editor.
$disp_rsmdis enables display of the resume distance in the editor.
$mode_grp[1..7] is the display mode for each group. Valid modes are listed in Table 7–7 . See
Table 7–8 for an example program display for each mode.
Table 7–7. Display Modes
Mode
Description
Header
1
Distance on ONE line
P[mm to TCP G1]
2
Distance on Multiple lines
P[mm to TCP G1]
3
COMMAND PERCENT
P[Cmnd % G1]
4
COMMAND TIME
P[Cmnd Time G1]
5
COMMAND DISTANCE
P[Cmnd Dist G1]
6
COMMAND DISTANCE UP
P[Cmnd D UP G1]
7
COMMAND DISTANCE DOWN
P[Cmnd D DN G1]
8
COMMAND PROGRESS
P[Cmnd PBar G1]
7–39
7. PROGRAM INSTRUCTIONS
Mode
MAROUHT9102171E REV F
Description
Header
9
COMMAND PERCENT AND DISTANCE UP
P[Cmnd % UP G1]
10
COMMAND PERCENT AND DISTANCE DOWN
P[Cmnd % DN G1]
11
COMMAND PERCENT AND TIME
P[Cmnd % T G1]
19
Travel Angle in degrees
P[Travel dg G1]
20
Work Angle in degrees
P[WorkXZ dg G1]
21
Current X location in world frame
P[X (1) mm G1]
22
Current Y location in world frame
P[Y (2) mm G1]
23
Current Z location in world frame
P[Z (3) mm G1]
24
Current W orientation in world frame
P[W (4) deg G1]
25
Current P orientation in world frame
P[P (5) deg G1]
26
Current R orientation in world frame
P[R (6) deg G1]
Comments
Positions can have comments up to 16 characters in length. When the motion status is displayed,
only the first 10 characters of the comments will be visible.
Multiple Groups
When a system has multiple groups, the motion status display can display information for any of
the groups. The group number is displayed in the header with a short description of the display
mode. To change the selected group number, use the FCTN menu entry CHANGE GROUP. If the
selected group is not in the program group mask, the lowest group number in the mask is selected
for display. Each group can display data in a different mode. You can set the mode for each group
using the array $mndsp_mst.$mode_grp[1..6].
Resume Distance
When a running program pauses the robot stops and the position of the robot is recorded. If
the robot is moved from the recorded stop position it may return to this position when the
program is resumed, depending on what options are installed. The distance the robot has moved
from the stop position can be displayed in the upper left corner of the editor if the variable
$mndsp_mst.$disp_rsmdis = TRUE.
7–40
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–41. Resume Distance Display
Distance Modes
Modes 1 and 2 display the distance between the program positions and the robot tool center point.
The distance is along a straight line, not along the programmed path. The actual distance traveled
by the robot could be greater if it involves Joint or Circular motion.
Motion Command Modes
The motion command modes 3 – 11 display the output from the motion system as it executes the
current line. The timing of this data slightly precedes the actual robot position. The times and
distances displayed reflect the motion command, not the real time feedback data from the motor
encoder. When a motion is paused the data will remain displayed. When a motion is resumed the
data displayed will reflect the motion from the stop position to the destination position.
Note Modes 3 - 11 only display distance information for L, C, and A motion types. In modes 3 11, Joint motions will display an increasing percentage and total time like Mode 11.
7–41
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Table 7–8. Display Mode Examples
Mode
Example
Description
0
P[Inv. Mode G1]
\\\1:J @P[1:
] 100% FINE
2: P[2:
] 40% FINE
: Arc Start[1]
3:L P[3:
] WELD_SPEED FINE
: Arc End[1]
4:J @P[1:
] 100% FINE
1
P[mm to TCP G1]
\\\1:J @P[1:
.000]
2:J P[2:
]
: Arc Start[1]
3:L P[3:
]
: Arc End[1]
4:J @P[1:
]
100% FINE
40% FINE
WELD_SPEED FINE
100% FINE
2
\\\1:J
2:J
:
3:L
:
4:J
P[mm to TCP G1]
@P[1:
.000]
P[2:
26.795]
Arc Start[1]
P[3:
11.520]
Arc End[1]
@P[1:
.000]
100% FINE
40% FINE
7–42
The distance of this position from the TCP
is displayed, for this line only.
In this example,
$MNDSP_MST.$MODE_GRP[1] = 1. The
cursor is on line 1 and the robot is at
P[1]. The distance from P[1] to the robot
Tool Center Point (TCP) in millimeters is
displayed as 0.000. If you jog the robot
away from P[1], the distance to the tool will
be displayed dynamically.
Distance on MULTIPLE lines.
Mode 2 is similar to mode 1. In mode 2
a distance is displayed in all the motion
lines, not just the cursor line. The distance
is from the recorded position to the current
tool center point.
WELD_SPEED FINE
100% FINE
3
P[Cmnd %
\\\3:L P[3: 28%
: Arc End[1]
No motion status displayed. This is an
invalid mode for this group.
In this example, group 1 is
selected for display. The display
mode for group 1 is specified in
$MNDSP_MST.$MODE_GRP[1]. If the
mode is 0, or some other mode not listed in
this table, the header will indicate "Invalid
Mode," and data will not be displayed in the
motion lines.
G1]
] WELD_SPEED FINE
COMMAND PERCENT
Mode 3 displays the percentage of
the motion completed while the move
progresses. It is updated dynamically. If
you pause execution before reaching the
position and continue, the percentage will
be reset to 0 and then increase to reflect
the remaining motion.
MAROUHT9102171E REV F
Mode
Example
4
P[Cmnd Time G1]
\\\3:L P[3:
2.9s] WELD_SPEED FINE
: Arc End[1]
5
P[Cmnd Dist G1]
\\\3:L P[3:
24.19] WELD_SPEED FINE
: Arc End[1]
6
P[Cmnd D UP G1]
\\\3:L P[3:
6.758] WELD_SPEED FINE
: Arc End[1]
7
P[Cmnd D DN G1]
\\\3:L P[3:
17.43] WELD_SPEED FINE
: Arc End[1]
8
P[Cmnd PBar G1]
\\\3:L P[3:-] WELD_SPEED FINE
: Arc End[1]
9
P[Cmnd % UP G1]
\\\3:L P[3: 28% 6.758] WELD_SPEED FINE
: Arc End[1]
7. PROGRAM INSTRUCTIONS
Description
COMMAND TIME
Mode 4 displays the total time required for
the motion to complete. If does not change
dynamically, unless the speed override is
changed. If the speed override is changed,
the time is updated to reflect the total time
for the entire motion at the new override,
not the remaining time.
COMMAND DISTANCE
Mode 5 displays the total move distance.
It does not change during the motion. If
you pause execution and then resume the
display will change to show the distance to
P[3] from the pause position.
COMMAND DISTANCE UP
Mode 6 is similar to mode 3. It is dynamic.
It shows the distance increasing (UP) while
moving to P[3]. If you pause and resume,
the distance is reset to zero. If single step
is active, stepping through the entire motion
on line 3 to P[3], without stopping, will result
in the total move distance displayed when
the robot reaches P[3].
COMMAND DISTANCE DOWN
Mode 7 is just like mode 6 except the
distance is shown decreasing (DN - down)
to zero.
COMMAND PROGRESS
Mode 8 displays a progress bar. It behaves
just like the percentage of Mode 3, only
graphically.
COMMAND PERCENT and DISTANCE UP
Mode 9 displays both the increasing
percentage of Mode 3 and the increasing
distance of Mode 6.
7–43
7. PROGRAM INSTRUCTIONS
Mode
Example
10
P[Cmnd % DN G1]
\\\3:L P[3: 28% 17.43] WELD_SPEED FINE
: Arc End[1]
11
P[Cmnd % T G1]
\\\3:L P[3: 28% 2.9s] WELD_SPEED FINE
: Arc End[1]
19
MAROUHT9102171E REV F
Description
COMMAND PERCENT and DISTANCE
DOWN
Mode 10 displays both the increasing
percentage of Mode 3 and the decreasing
distance of Mode 7.
COMMAND PERCENT and TIME
Mode 11 displays both the increasing
percentage of Mode 3 and the total time of
Mode 4.
Travel Angle in degrees
A negative number indicates a push angle.
A positive number indicates a drag angle.
P[Travel dg G1]
\\\1:J @P[1:
—10.277] 100% FINE
20
P[WorkXZ dg G1]
\\\1:J @P[1: 36.832 R] 100% FINE
21
Work Angle in degrees
The header WorkXZ indicates the work
angle is relative to the XZ plane. WorkXY
means relative to the XY plane. The letter
L or R after the angle indicates the torch is
to the left or right of vertical.
Current X location in world frame
P[X (1) mm G1]
\\\1:J @P[1: 2070.261] 100% FINE
22
Current Y location in world frame
P[Y (2) mm G1]
\\\1:J @P[1:
25.242] 100% FINE
7–44
MAROUHT9102171E REV F
Mode
Example
23
7. PROGRAM INSTRUCTIONS
Description
Current Z location in world frame
P[Z (3) mm G1]
\\\1:J @P[1: 1226.707] 100% FINE
24
Current W orientation in world frame
P[W (4) deg G1]
\\\1:J @P[1:
-2.027] 100% FINE
25
Current P orientation in world frame
P[P (5) deg G1]
\\\1:J @P[1:
19.972] 100% FINE
26
Current R orientation in world frame
P[R (6) deg G1]
\\\1:J @P[1:
2.375] 100% FINE
Limitations
• Joint motions do not display distances for the Command Distance modes. Percentage and
time are displayed instead.
• Command times and distances are approximate.
• Incremental motions do not display distance properly for modes 1 and 2.
• Not all motion options and formats are supported.
• The units for distance are always mm and cannot be changed.
• Extended axes are not supported.
7.2.7 Frame Number of Positional Data
The User Frame (UF) and User Tool frame number (UT) are displayed at the top of the Position
Detail screen. See the following screen for an example.
7–45
7. PROGRAM INSTRUCTIONS
P[1] UF:0 UT:1 CONF: N 00
X
100.000
mm W
12.555
Y
100.000
mm P
3.123
Z
100.000
mm R
.014
MAROUHT9102171E REV F
deg
deg
deg
These fields indicate the current frame number.
UF: User Frame number
• 0 = world coordinate
• 1-10 = normal UFRAME number
• F = current $MNUFRAMENUM
UT: User Tool frame number
• 0 = not valid
• 1-10 = normal UTOOL number
• F = current $MNUTOOLNUM
Note These values cannot be modified directly from the teach pendant.
Note The position register screen has UF and UT in the same area, and this value is always
"F" for both.
7.2.8 Switch Frame Check Type
This function provides an easy way to move forward or backward past a frame change in a teach
pendant program. You must set $FRM_CHKTYP to move through the frame change correctly.
The system variable $FRM_CHKTYP allows you to switch the frame check type. Refer to Table
7–9 .
Table 7–9. $FRM_CHKTYP Values
$FRM_CHKTYP
DESCRIPTION
-1
Prohibits FWD or BWD motion between two points which have different frame
numbers.
-2
The system does not check frame number at FWD and BWD. System does not
change the frame number $MNUFRAME_NUM, $MNUTOOL_NUM when you
FWD/BWD execute past a frame change.
2
System does not check frame number at FWD and BWD. System changes the frame
number ($MNUFRAME_NUM, $MNUTOOL_NUM) when you FWD/BWD execute
past a frame change.
7–46
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Note If a different frame is used for circular motion, the robot will not move, even if
$FRM_CHKTYP is 2 or -2.
Figure 7–42 shows the frame numbers used for the positional data in a program example.
Figure 7–42. Frame Number of Positional Data Example Program
1: UTOOL_NUM = 1 2: J P[1] 100% FINE
/* P[1] UT=1 */
3: J P[2] 100% FINE
/* P[2] UT=2 */
Table 7–10 describes how the example program in Figure 7–42 operates, depending on the setting
of the $FRM_CHKTYP system variable.
Table 7–10. Example Program Operation
$FRM_CHKTYP
Value
FWD Execution
BWD Execution
-1
The system posts a book keeping error
at line 3.
You manually set UTOOL_NUM = 2 and backward
execute from line 3. The system posts book
keeping error at line 2.
-2
The system does not post a book keeping
error and the robot moves correctly.
You bwd execute from line 3 to line 2. The system
does not post a book keeping error.
2
The system does not post a book keeping
error at line 3 and the robot moves
correctly. Also, the system automatically
changes UTOOL_NUM to 2 at line 3.
You backward execute from line 3 to line 2. The
system does not post a book keeping error at
line 2. But the system automatically changes
UTOOL_NUM to 1 when backward executing from
line 3 to line 2.
7.2.9 Speed
Speed defines how fast the robot moves to a position.
The motion type used determines the units of speed. Depending on the motion type you want,
you can specify speed in percent, millimeters per second, centimeters per minute, inches per
minute, rotational degrees per second, or seconds.
When a program is running, you can change the speed override using the +% and -% keys on the
teach pendant. The value ranges from .01% (very fine) to 100 percent of the programmed speed.
Programmed speed is the speed specified in the program.
Note The programmed speed cannot exceed the capability of the robot. If programmed speed
cannot be met, an error will occur.
7–47
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Joint motion uses
• A percentage (%) of the total default speed. Joint motion speed can have a value of 1%
to 100% of the maximum joint speed limit.
J P[1] 50% FINE
• Seconds (sec), the length of time the motion lasts. Seconds can have a value of .1 to 3200.
This is used for motion that requires an exact time span. If a program is paused and then
resumed during execution of motion that uses seconds, the controller will be held in a busy
and running state until the portion of time that had been executed elapses again. Then, the
robot will complete the motion using the remaining amount of time. See Figure 7–43 .
J P[1] 2 sec FINE
L P[2] 2 sec FINE
Figure 7–43. Example of the Sec Speed Feature
Linear and circular motions use
• Millimeters per second (mm/sec), with a range of values from 1 to 2000 millimeters per
second.
• Centimeters per minute (cm/min), with a range of values from 1 to 12000 centimeters per
minute.
• Inches per minute (inch/min), with a range of values from 0.1 to 4724.41 inches per minute.
• Seconds (sec), the length of time the motion lasts. This is used for motion that requires an
exact time span. If a program is paused and then resumed during execution of motion that
uses seconds, the controller will be held in a busy and running state until the portion of time
that had been executed elapses again. The robot will then complete the motion using the
remaining amount of time. See Figure 7–43 .
L P[1] 100mm/sec FINE
or
C P[1] 100mm/sec FINE
7–48
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Warning
If you change the motion type of a positional instruction from linear
to joint, the speed value can change from mm/sec to a default value
as high as 100%. Be sure to check the speed value before you
execute the instruction; otherwise, you could injure personnel or
damage equipment.
Note When the speed is specified in mm/sec, cm/min, or inch/min, then the value entered will
represent the speed at the tool center point.
Rotational control of axes around the tool centerpoint uses rotational degrees per second
(deg/sec), with a default range of values from 1 to 500 degrees per second.
L P[1] 90 deg/sec FINE
Variable Motion Speed
You can specify motion speed by using a register in a motion instruction. The value of the
specified register defines motion speed. This is called variable motion speed.
Warning
Before you run a program, make sure you are aware of any register
values used to set speed in a motion instruction. Otherwise,
unexpected motion could occur that could injure personnel or damage
equipment.
Note A program will stop pre-execution of subsequent instructions when it reaches a motion
instruction with the register speed type. This ensures the motion instruction uses the register
speed type value. See Figure 7–44 .
Figure 7–44. Variable Motion Speed Program Execution Example
This feature is enabled when the system variable $RGSPD_PREXE = FALSE. You can disable
this feature by setting $RGSPD_PREXE = TRUE. However, the robot will not be able to move
at the speed specified by the register value.
The following examples show various motion type instructions that take their speed value from a
register (R[ ]).
7–49
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• Joint motion type
J P[2] R[1]% CNT100
• Linear motion type
L P[1] R[2]mm/sec FINE
• Circular motion type
C P[2] P[3] R[3]cm/min FINE
• Palletizing
PALLETIZING-B_1
L PAL_1[A_1] R[4]mm/sec CNT100
L PAL_1[BTM] R[4]mm/sec FINE
L PAL_1[R_1] R[4]mm/sec CNT100
The following features are changed to accommodate variable motion speed:
• Default motion instructions include an instruction that uses variable motion speed.
• The Motion Modify screen, displayed when you select REPLACE for a motion instruction on
the [EDCMD] menu, includes items for specifying variable motion speed.
• Specific motion speed values are valid for variable motion speed. Refer to Table 7–11 for
valid variable motion speed values. If the specified register value is not a valid speed value
(exceeds the speed limit or is out-of-range), an error will occur during the execution of the
motion instruction.
Table 7–11. Range of Register Values to Specify a Variable Motion Speed
Unit
Range of Register Values
%
1 to 100
Integer type
sec
0.1 to 3200.0
Float type (*1)
mm/sec
1 to 2000
Integer type (*2)
cm/min
1 to 12000
Integer type (*2)
inch/min
0.1 to 4724.41
Float type (*3)
deg/sec
1 to 500
Integer type (*4)
*1 : Valid one decimal point.
*2 : The speed limit is the value of $MRR_GRP.$SPEEDLIM.
*3 : Valid one decimal point. The limit is the value of $MRR_GRP.$SPEEDLIM/25.4 * 60.
*4 : The limit is the value of $MRR_GRP.$ROTSPEEDLIM * 180/3.141.
7–50
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
See Figure 7–45 for the syntax for changing the motion speed from a specific motion speed value
to a variable (register) speed value or for changing the motion speed from a variable (register)
speed value to a specific motion speed value.
Figure 7–45. Syntax for Changing the Motion Speed
Use Procedure 7-1 to replace speed values using the Motion Modify screen in [EDCMD]
REPLACE.
Procedure 7-1 Replacing Speed Values (using Motion Modify in [EDCMD] REPLACE)
Conditions
• You are currently editing a teach pendant program that contains motion instructions.
Steps
1. Move the cursor to the line number of the instruction in which you want to replace speed
values and press F5, [EDCMD].
2. Select Replace.
Select Replace menu 1
Register
5 Motion modify
2 Call
6
3 I/O
7
4 JMP/LBL
8
3. Select Motion modify. See the following screen for an example.
Modify motion menu
1 Replace speed
2 Replace term
3 Insert option
4 Remove option
5
6
7
8
4. Select Replace speed. See the following screen for an example.
7–51
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Select interpolate
1 Unspecified type 5
2 J
6
3 L
7
4 C
8
RSR0001
1: L P[1] 20.0sec FINE
2: L P[2] 500mm sec FINE
3: L P[3] R[1]mm sec FINE
Select source type
10%
5. Specify the interpolation type (motion type) of the motion instruction for which you
want to search:
• Unspecified type - searches for joint, linear, and circular motion instructions
• Joint - searches for joint motion instructions only
• Linear - searches for linear motion instructions only
• Circular - searches for circular motion instructions only
6. Specify the speed type of the motion instruction you want to search for:
• All type - searches for motion instructions that use a speed value, a variable (register)
value, or an indirect variable (register) speed value.
• Speed value - searches only for motion instructions that use a speed value.
• R[ ] - searches only for motion instructions that use a variable (register) speed value.
• R[R[ ]] - searches only for motion instructions that use an indirect variable (register)
speed value.
See the following screen for an example.
Speed type menu
1 All type
2 Speed value
3 R[ ]
4 R[R[ ]]
5
6
7
8
7. Specify the units of the replacement motion instruction.
See the following screen for an example.
7–52
MAROUHT9102171E REV F
Select motion item
1 %
2 mm/sec
3 cm/min
4 inch/min
7. PROGRAM INSTRUCTIONS
5 deg/sec
6 sec
7
8
8. Select the speed type of the replacement motion instruction:
• Speed value - changes the speed of the found (searched) motion instruction to a speed
value.
• R[ ] - changes the speed of the found (searched) motion instruction to a variable
(register) speed value.
• R[R[ ]] - changes the speed of the found (searched) motion instruction to an indirect
variable (register) speed value.
See the following screen for an example.
Select motion item
1 Speed value
2 R[ ]
3 R[R[ ]]
4
5
6
7
8
9. If you selected R[ ] or R[R[ ]], type a register number.
10. Select how you want the found motion instruction to be replaced:
• F2, ALL - changes all found motion instructions below the current line to the specified
speed type and value.
• F3, YES - changes only the found motion instruction on the current line to the specified
speed type and value.
• F4, NEXT - skips the found motion instruction on the current line and searches the
next motion instruction.
• F5, EXIT - ends the motion modify operation.
See the following screen for an example.
RSR0001
Modify OK ?
11. Continue the search and replace operations as desired.
12. When you are finished with all search and replace operations, press F5, EXIT.
7–53
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
LP[1] WELD_SPEED CNT100
Motion instructions used during welding use the WELD_SPEED parameter. WELD_SPEED is
defined in the weld schedule specified by an ArcStart instruction.
You can use WELD_SPEED only for linear or circular motion. If you change the motion type of an
instruction that uses WELD_SPEED from circular or linear to joint, the speed will change to 100%.
When a motion instruction that contains WELD_SPEED is executed, the speed used depends
on certain conditions:
• If the Arc START instruction is executed before executing the WELD_SPEED motion
instruction, the weld speed defined in the corresponding weld schedule is used.
• If the Arc Start instruction is not executed before executing the WELD_SPEED motion
instruction, the default weld speed is used as the value of WELD_SPEED. The default weld
speed is defined on the SETUP Weld System screen.
• If the program is resumed from a WELD_SPEED motion instruction, the WELD_SPEED in
effect when the program was paused is used.
• If the following sequence is executed while the program is paused and then the program
is restarted, the default weld speed is used:
1. You step the program backward through some instructions.
2. You move the cursor to another line in the program.
3. You abort the program.
7.2.10 Termination Type
Termination type defines how the robot ends the move in the motion instruction. The following
termination types are available:
• Fine
• Continuous
• Corner Region — available only if you have the constant path motion option and corner
region option
• Corner Distance — available only if you have the constant path motion option and corner
distance control option
The fine and continuous termination types are described in this section. Refer to Section 7.3.6 for
information on the corner distance termination type.
Refer to Section 7.3.2 for information on the corner region termination type.
Fine Termination Type
7–54
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
J P[1] 50%
FINE
Fine termination type causes the robot to stop at the destination position before moving to
the next position.
Figure 7–46 shows how the robot will move when you specify the fine termination type.
Figure 7–46. Robot Motion with Fine Termination Type
Continuous Termination Type
J P[1] 50%
CNT50
Continuous termination type allows the robot to decelerate as it approaches the destination
position but does not stop at it before it accelerates toward the next position. A value from 0 to
100 defines how close the robot comes to the destination position. At CNT0 the robot is closest,
with maximum deceleration. At CNT100 the robot is farthest, with minimum deceleration.
7–55
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Note Programming certain instructions, such as WAIT, causes the robot to stop at the destination
position and execute the instruction before it executes the next instruction.
Figure 7–47 shows how the robot will move with different continuous termination type values.
Figure 7–47. Robot Motion with Continuous Termination Type
7.3 MOTION OPTIONS INSTRUCTION
Motion options can be used to provide additional information to perform specific tasks during
robot motion. Motion options include
• Acceleration override
Refer to Section 7.3.1
• Advanced Constant Path
Refer to Section 7.3.2
— Linear Distance
— Corner Region
7–56
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
— Process Speed
— Max Speed
• Break
Refer to Section 7.3.3
• Constant Path
Refer to Section 7.3.4
• Coordinated motion
Refer to Section 7.3.5
• Corner Distance Control
Refer to Section 7.3.6
• EV (extended velocity)
Refer to Section 7.3.7
— Simultaneous EV
— Independent EV
• Incremental motion
Refer to Section 7.3.9
• Minimal rotation with joint motion
Refer to Section 7.3.10
• Offset
Refer to Section 7.3.11
• Offset position register
Refer to Section 7.3.12
• Remote TCP
Refer to Section 7.3.14
• Search [ ]
Refer to Section 7.3.15
• Skip label
Refer to Section 7.3.17
• Time before/Time after
Refer to Section 7.3.18
• Tool offset
7–57
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Refer to Section 7.3.19
• Tool offset position register
Refer to Section 7.3.20
• Wrist joint
Refer to Section 7.3.21
7.3.1 Acceleration Override
J P[1] 50% FINE
ACC50
The acceleration override motion option specifies the acceleration/deceleration override value
for each axis during motion. Acceleration override shortens or lengthens the acceleration time
when the robot moves from a starting position to the destination position. Acceleration override is
programmed at the destination position.
The acceleration override value ranges from 20 to 100%. This value is a percentage of the
acceleration. For example, an acceleration override of 50 means the robot will take twice as long
to accelerate or decelerate. Figure 7–48 shows how the acceleration override is used.
The acceleration override was created to allow the user to make specific moves slower or more
conservative for cases when extra care is needed. The usage of acceleration override over 100%
could allow more aggressive motion, but may also cause jerky motion and, if the Collision Guard
option is loaded, false collision alarms could occur.
Caution
Over 100% acceleration might cause awkward motion or vibration.
Since large current instantaneously flows to the primary power source,
the input voltage might drop depending on equipment power capacity,
and this might cause a servo alarm such as power alarm, position
error excess, or servo amplifier low voltage. If such an alarm occurs,
either reduce the acceleration/deceleration override value, or delete the
accelerate/deceleration override instruction.
Over 100% acceleration increases the load to the robot arm. It might cause
the robot mechanical parts to fail, premature reducer breakdown or shorten
reducer life.
In general, the usage of acceleration override over 100% should be limited. This setting may
reduce the life of the mechanical unit because the default tuned accelerations are being overridden
by more aggressive values.
7–58
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–48. Acceleration Override
7.3.2 Advanced Constant Path
In addition to the Constant Path feature the Advanced Constant Path package consists of the
following functions for easy teaching and cycle time reduction.
• Linear Distance
• either Corner Region (refer to Corner Region Termination Type) or Corner Distance (refer to
Corner Distance Control)
• Process Speed
• Max Speed
It requires that the Constant Path option be loaded and enabled.
Linear Distance
Overview
Linear Distance is a robot motion feature that is useful for pick and place material handling
applications such as palletizing.
Figure 7–49 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.
7–59
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–49. 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
Figure 7–50 .
Figure 7–50. PICK and PLACE Application with CNT100
Robot is at
J P[2] 100%
L P[3] 2000
L [P2] 2000
J [P4] 2000
L [P5] 2000
P1
CNT100
mm/s FINE
mm/s CNT100
mm/s CNT100
mm/s FINE
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.
7–60
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
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 Figure 7–51 .
Figure 7–51. Adjusting P3 and P5 with Linear Distance
The program would be (from P1):
J
L
L
J
L
P[2]
P[3]
P[2]
P[4]
P[5]
100%
2000
2000
2000
2000
CNT100
mm/s FINE AP_LD100
mm/s CNT100 RT_LD100
mm/s CNT100
mm/s FINE AP_LD150
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.
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.
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]
7–61
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
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]
In the second example, the distance is specified indirectly via register #1.
7–62
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–52. RT_LD: Effect of CNT Value
The RT_LD value affects the corner of P3-P2-P1 in Figure 7–52 . 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.
7–63
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–53. Place Motion: Two Possible Traces
The AP_LD value affects the corner of P1-P4-P5 Figure 7–53 . 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.
Limitations
• 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.
7–64
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• 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.
• 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.
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.
Procedure 7-2 Using Linear Distance
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, you must modify a linear motion instruction.
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 a screen similar to the following.
7–65
7. PROGRAM INSTRUCTIONS
Motion Modify
1 Retract_LD
2 Approach_LD
3 Tool_Offset
4 Tool_Offset,PR[
LD
MAROUHT9102171E REV F
5
6
7
8
JOINT 10 %
TIME BEFORE
TIME AFTER
DISTANCE BEFORE
---next page--5/8
4:J P[2] 100% CNT100
5:L P[2] 2000mm/sec CNT10
: Offset,PR[1] AP_LDR[1]
6:L P[2] 2000mm/sec CNT100
: RT_LDR[1]
7:J P[1] 100% CNT100
Select item
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.
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).
Caution
The Corner Distance and Corner Region options are mutually exclusive
meaning that if one option is selected, the other one is not available.
Consider this choice carefully before teaching the robot path.
To use CRy (where y is in mm) termination type, one has to set
$czcdcfg.$cd_enable = FALSE and cycle power.
7–66
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
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).
Figure 7–54. 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
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
7–67
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–55. Half Segment Length
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
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.
7–68
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–56. Program Speed Changes
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 COORD and non-COORD (if supported)
— between RTCP and non-RTCP
— between Tracking and non-tracking .
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.
7–69
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–57. Corner Path determined by CRy if Linear Dist is satisfied
7–70
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–58. Corner path is determined by Linear Distance
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, termtype 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.
7–71
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• PSPD 100 is equivalent to the default cases without PSPD option.
• 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 the
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.
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: if xxx = 100, motion behavior is exactly the same as 100% speed override in the
default case, as though there were no PSPD100
7–72
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• Case 2: if xxx > 100, the speed will be faster than 100% speed override in the default case
• Case 3: if xxx < 100, the speed will be slower than 100% speed override in the default case
• Default case:
1
2
3
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
L P[3] 500 mm/sec CNT0
• Faster motion case (path is the same, cycle time is shorter):
1
2
3
J P[1] 50% FINE PSPD110
L P[2] 500 mm/sec CNT100 PSPD110
L P[3] 500 mm/sec CNT0 PSPD110
• Slower motion case (path is the same, cycle time is longer):
1
2
3
J P[1] 50% FINE PSPD50
L P[2] 500 mm/sec CNT100 PSPD50
L P[3] 500 mm/sec CNT0 PSPD50
7–73
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
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.
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) in the first
release. That is, for the motions with PSPD option, TCPP might not result in correct results;
• The PSPD option does not support
— Continuous Turn
— Coordinated motions
— Robot Link
• With large PSPD value or very short segments, the actual corner path might deviate from the
one without PSPD option.
Max Speed
L P[1]
max_speed
CNT100
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.
7–74
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
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.
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, Mig-Eye, Coordinated motion, and so
forth. When these options are used, the max speed option will default to 2000 mm/sec.
— 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.
7–75
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
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.
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 the
Max speed feature):
— Line Tracking
— RTCP function
— Multi-group motion
7.3.3 Break
BREAK is a motion option that does not start the next motion segment until the cursor moves to
the motion line in the TP program. With BREAK option in a motion statement, the constant path
feature may not be maintained.
BREAK can be used with the WAIT statement for applications that need to change the corner path
depending on WAIT time, as shown in the following example.
7–76
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.3.4 Constant Path
Constant Path is a motion control option that provides enhanced motion performance for all
motion types in the following areas:
• Constant path
With Constant Path, the robot maintains the same path regardless of static or dynamic speed
override changes. A path that has been taught and tested at a low speed override will be
maintained when the program is executed at 100% override.
• Constant Path with respect to T1/T2/Auto Mode
With Constant Path, the robot maintains the same path in different modes. For example,
a path that has been taught and tested in T1 mode will be maintained when the program
is executed in Auto mode.
• Hold/Resume and Emergency Stop/Resume (HandlingTool, PaintTool, and SpotTool+ only)
After the HOLD or EMERGENCY STOP buttons have been pressed, the robot can resume
execution along the same path that was being executed prior to the HOLD or EMERGENCY
STOP. The location and orientation of the resumed path will be along the original path.
For exceptions, refer to the Limitations section.
• Enhanced path accuracy
The path will be executed as taught, using a straight line or circular motion.
• Constant Path Regardless of WAIT Statements
— Maintains same path regardless of duration of Wait I/O instruction
7–77
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
— Maintains same path regardless of duration of Wait xx sec instruction. The robot will
decelerate along the path until the WAIT instruction expires. If the WAIT duration is long
enough, the robot will decelerate to a stop. After the WAIT instruction expires, the robot
will accelerate and resume the original path.
Figure 7–59. Constant Path Regardless of Wait
R-J3iB
Post R-J3iB
To get R-J3iB behavior, use the BREAK motion option:
1: L P[1] 2000 mm/s CNT100 BREAK
2: WAIT DIN/xxSec
3: L P[2] 2000mm/s CNT100
In this example, Line 3 will not affect motion until the WAIT expires. The path will shift
toward P[1], depending on WAIT duration.
Semi-Hot Start Limitation
Constant path cannot be maintained through a Semi-Hot Start cycle. When the program is
resumed, the robot will move toward the taught position of the paused line without blending of
previous lines. If original path resume is enabled, the robot will move to the stop position before
moving toward the taught position.
Teach Pendant Instruction Limitations with respect to Hold, Stop, Resume, and
Override Along the Path
Warning
Some instructions cannot assure Constant Path motion because they
dynamically change program execution. These instructions do not
necessarily result in path variation (with respect to modes, WAITs, and
overrides), but path variation is possible.
7–78
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
The instructions in this category are as follows:
• Frame instructions: UFRAME_NUM, UFRAME, UTOOL_NUM, UTOOL
• Branching instructions: IF, SELECT, CALL
• Miscellaneous instruction: $PARAMETER = ...
• Program control instructions: PAUSE, ABORT
• Macro program instruction
• SKIP instruction
• TRACK instruction
• Variable motion speed instructions
• Sensor instructions: RCV, SENSOR_ON, SENSOR_OFF
• Palletizing instruction: PALLETIZING-B, PL[ ]
• BREAK motion option
The following instructions are constant path when the position registers are locked. When position
registers are unlocked, the path may vary.
• Position register instructions: PR[ ], PR[ ] INC
• Offset instructions: OFFSET, TOOL_OFFSET
Constant Path Look Ahead Limitation
Caution
The amount of segment look ahead available for determining the path is
limited. If there are not enough segments available to identify the path, the
path could deviate toward the taught point of the last available segment.
Limiting the number of segments that blend together at the same time helps
to avoid this problem.
Programming Guideline
To allow the best constant path functionality, avoid teaching a path with several of these
characteristics:
• ACC< 100
• High CNT values
• High processor loading
• High speed
• Many segments in a short distance
• Short segment lengths
7–79
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Constant path behavior for motions with WAIT statement
1. Normal execution
With the R-30iB Plus motion system loaded and enabled, while executing a WAIT statement,
when possible the robot will decelerate along the path of the motion lines that follow the
WAIT statement. If the WAIT duration is long, the robot will decelerate to a stop on the path.
Some teach pendant instructions do not support constant path during WAIT: refer to Section
7.35 for teach pendant instruction limitations.
After the WAIT statement completes, the robot will accelerate to normal speed and continue
the rest of the path. The path will remain the same regardless of WAIT time. For example,
1
2
3
4
5
J P[1] 50%
L P[2] 500
R[1] = 1
Wait DI[1]
L P[3] 500
FINE
mm/sec CNT100
= on
mm/sec CNT0
2. Hold/resume
The R-30iB Plus motion system will maintain the same path regardless of WAIT time
when possible, even when Hold/resume interrupts the teach pendant motions near a WAIT
statement.
a. case 1: Hold/E-stop at the motion line prior to WAIT statement
1
cursor –> 2
3
4
5
7–80
J P[1] 50%
L P[2] 500
R[1] = 1
Wait DI[1]
L P[3] 500
FINE
mm/sec CNT100
= on
mm/sec CNT0
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
b. case 2: Hold/E-stop at WAIT statement (cursor at non-motion line)
1
2
3
cursor –> 4
5
J P[1] 50%
L P[2] 500
R[1] = 1
Wait DI[1]
L P[3] 500
FINE
mm/sec CNT100
= on
mm/sec CNT0
c. case 3: Hold/E-stop at motion line after WAIT statement
1
2
3
4
cursor –> 5
J P[1] 50%
L P[2] 500
R[1] = 1
Wait DI[1]
L P[3] 500
FINE
mm/sec CNT100
= on
mm/sec CNT0
7–81
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
3. Single step execution after Hold/E-stop
a. Single step Forward execution after Hold/E-stop
Assume that Hold/E-stop occurs when single step execution is not enabled. If single
step forward execution is enabled after Hold/E-stop occurs, then users will observe
(1) the first single step forward: robot moves to stopped pose (may be zero distance
move if not jogging away) and then posts “CPMO-069 can’t resume with STEP (G:1)”
is posted
(2) single step forward again: robot moves to the destination position of the motion
line at cursor
Caution
Single step execution (FWD and BWD) is relative to the TP cursor
line, not current robot position. After Hold or E-stop the current
robot position may be far from the taught point indicated by the
TP cursor (especially in T1 mode or low override). Single step
execution after Hold/E-stop will move to the taught point indicated
by the TP cursor, not on the original program path. A collision could
occur if the single step execution path is obstructed.
i. case 1: Hold/E-stop at the motion line prior to WAIT statement
Single step forward execution will move robot to the destination of the cursor
motion line.
After HOLD/E-STOP
cursor ->
1
2
3
4
5
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
After 1st SSTEP FWD
7–82
MAROUHT9102171E REV F
cursor ->
1
2
3
4
5
7. PROGRAM INSTRUCTIONS
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
After 2nd SSTEP FWD
cursor ->
1
2
3
4
5
J P[1] 50% FINE
L @P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
ii. case 2: Hold/E-stop at WAIT statement (cursor at non-motion line)
Single step forward execution will move the robot to the destination of the motion
line prior to the WAIT statement.
After HOLD/E-STOP
->
1
2
3
4
5
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
After 1st SSTEP FWD
->
1
2
3
4
5
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
After 2nd SSTEP FWD
7–83
7. PROGRAM INSTRUCTIONS
->
1
2
3
4
5
MAROUHT9102171E REV F
J P[1] 50% FINE
L @P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
Note As shown in this example, the robot position is more likely to be close to
P[2] than P[3] because the previous motion line defines the corner location.
iii. case 3: Hold/E-stop at the motion line after WAIT statement. Single step forward
execution will move robot to the destination of the cursor motion line.
After HOLD/E-STOP
->
1
2
3
4
5
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
After 1st SSTEP FWD
->
1
2
3
4
5
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
After 2nd SSTEP FWD
->
7–84
1
2
3
4
5
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
b. Single step Backward execution after Hold/E-stop
Assume that single step execution is not enabled at the time of the Hold. Single
step backward execution after Hold/E-stop will cause the robot to move back to the
destination position of the previous motion line.
i. case 1: Hold/E-stop at the motion line prior to WAIT statement. Single step
backward goes to destination of previous motion line. After HOLD/E-STOP
->
1
2
3
4
5
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
After BWD
-> 1
2
3
4
5
J @P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
ii. case 2: Hold/E-stop at WAIT statement (i.e. cursor at non-motion line)
Caution
Single step backward goes to destination of second previous
motion line. (Single step forward goes to destination of
previous motion line.)
7–85
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
After HOLD/E-STOP
->
1
2
3
4
5
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
After BWD
->
1
2
3
4
5
J @P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
iii. case 3: Hold/E-stop at the motion line after WAIT statement. Single step
backward moves to destination of previous motion line.
After HOLD/E-STOP
->
1
2
3
4
5
J P[1] 50% FINE
L P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
After BWD
->
7–86
1
2
3
4
5
J P[1] 50% FINE
L @P[2] 500 mm/sec CNT100
R[1] = 1
Wait DI[1] = on
L P[3] 500 mm/sec CNT0
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.3.5 Coordinated Motion
J P[1] 50% FINE
COORD
The coordinated motion option describes motion for multiple motion groups. When this option is
used, multiple motion groups move together to maintain the same position relative to each other.
Motion speed which is specified in the line is relative speed for coordinated motion. This option is
effective on linear and circular motion.
7.3.6 Corner Distance Control Option
The Corner Distance Control Function Option provides users with a termination type called CDy
and a program header for CNT termination type in order to enhance the motion performance of
Cartesian motions (e.g. linear and circular motion but not joint motion) in the following areas:
• Enhanced path accuracy
The path will be executed as taught, using a straight line or circular motion.
• Direct corner adjustment
This allows direct corner rounding distance adjustment for each motion instruction, if you are not
satisfied with the corner generated by the motion with other termination types. This is provided in
the corner distance termination type, CDy (where y is in mm).
• Speed accuracy
The robot will try to maintain the programmed speed around a corner as long as the motion is
within the mechanical capability of the robot. If constant speed is not feasible, the function will
lower the corner speed from the programmed speed automatically.
7–87
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Caution
The Corner Distance function uses the actual payload information when
calculating the corner speed. Therefore, you must set the payload correctly
during installation. Otherwise, the corner speed will not operate correctly.
For CNT termination type, the function provides two different choices for users to choose by
setting the TPE program header (“Corner/Speed Control” program header):
• If the program header is set TRUE, then the function is enabled for the Cartesian motions with
CNT termination type: the function will control corner path and corner speed.
• If the program header is set FALSE, then the function is disabled for the Cartesian motions
with CNT termination type. That is, the motion performance for those motions is similar to
the system with the function disabled.
Enabling/Disabling the Function
This function requires Constant Path option enabled.
To enable/disable the function after loading the option, set $czcdcfg.$cd_enable = TRUE or
FALSE, respectively. In order for the change of the system variable to take effect, one has to turn
off and then turn on the power. By default, $czcdcfg.$cd_enable = TRUE.
Caution
The Corner Distance and Corner Region options are mutually exclusive
meaning that if one option is selected, the other one is not available.
Consider this choice carefully before teaching the robot path.
To use CRy (where y is in mm) termination type, one has to set
$czcdcfg.$cd_enable = FALSE and cycle power.
When $czcdcfg.$no_header = FALSE, on Teach Pendant one can access to the program header.
By setting $czcdcfg.$no_header = TRUE, the program header will not be displayed. To access to
the program header, press Select button on Teach Pendant, cursor to the TP program name and
then press Detail button. Use PREV (F2) or NEXT (F3) to see the program header.
This is shown in Figure 7–60 .
7–88
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–60. Corner Distance Screen
Caution
The motion performance, in terms of path and speed, could be very different
for motions with CNT termination type with and without the program header
set to TRUE.
Note The path and speed behavior of a system using the Corner Distance option are different
from those systems that do not use Corner Distance function even if the motions use the CNT
termination type. Motions with Fine termination type or CNT0 behave the same with or without
Corner Distance Control function. Be careful when you change the program header setup and
always verify the motions at safety speed right after you change it.
Corner Distance Termination Type
L P[1] 100mm/sec CDy
If you want to adjust the corner rounding distance for a motion instruction, you can use the corner
distance termination type, CDy. When you use the CD termination type, you must specify the
corner distance (in mm).
Corner distance is the distance from the corner path to the actual taught position.
See Figure 7–61 .
7–89
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–61. The Effect of Corner Distance on Corner Rounding
Half Distance Rule
With Corner Distance function enabled, the beginning and end of the corner path for Cartesian
motions should be shorter than half the distance of the shorter of the two consecutive line
segments. This is called the half distance rule.
The segment distance refers to the distance between the taught points and the half distance is half
of the segment distance. The deviation distance refers to the distance from the taught corner point
P[2] to where the corner path deviates from the taught path. The corner distance is the distance
from the taught corner point P[2] to the corner path.
This is shown in Figure 7–62 .
7–90
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–62. Half Distance Rule
With the Corner Distance function enabled, the deviation distance CANNOT exceed the half
distance for Cartesian motions. When the segment distance between taught points is short, the half
distance rule is applied, in which the deviation distance is set equal to half the segment distance.
This is shown in Figure 7–62 .
As a result, the corner path is much closer to the taught point P[2], compared to the case in which
the taught points are far apart.
When you set corner distance, use the following guidelines:
• Specify the corner distance in millimeters.
• Corner distance can range in value from 0 mm to 1000 mm.
• The smaller the corner distance, the closer the robot will get to the position, and the less
the corner rounding.
• With a larger corner distance, the robot will not get as close to the position, and the more
the corner rounding.
Caution
Some motion instructions that use the CDy option might cause jerky motions especially for short distances. Occasionally, you can improve the motion by ]
adjusting the CDy parameter, or by moving the taught positions farther apart.
7–91
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
See Figure 7–61 for an example of the effect of corner distance adjustments on corner rounding.
When you use the corner distance termination type, the function will maintain constant speed if
possible; otherwise, the system will slow down the robot at the corner.
Teach Pendant Instruction Limitations
Certain teach pendant instructions cause the robot to decelerate toward the destination position
before the next motion instruction is executed, regardless of the termination type specified. These
teach pendant instructions will override the corner distance and corner speed settings. In this case,
the actual corner distance and achieved location speed may be less than the specified values. The
instructions are divided into two categories:
Category 1: Instructions in this category cause the robot to decelerate, by default. However, if you
override the default behavior using the LOCK PREG and UNLOCK PREG instructions, the corner
path and corner speed specified will be used. The instructions in this category are as follows:
• Position register instructions: PR[ ], PR[ ] INC
• Offset instructions: OFFSET, TOOL_OFFSET
Category 2: Instructions in this category cause the robot to decelerate at all times, regardless
of the termination type specified. You cannot change these default values. The instructions in
this category are as follows:
• Frame instructions: UFRAME_NUM, UFRAME, UTOOL_NUM, UTOOL
• Branching instructions: IF, SELECT, CALL
• Wait instruction: WAIT + TIMEOUT
• Miscellaneous instruction: $PARAMETER
• Program control instructions: PAUSE, ABORT
• Macro program instruction
• SKIP instruction
• TRACK instruction
• Variable motion speed instructions
• Sensor instructions: RCV, SENSOR_ON, SENSOR_OFF
• Palletizing instruction: PALLETIZING-B, PL[ ]
Corner Path
With Corner Distance Function enabled, a corner path is generated as follows:
• The corner path between two line segments is within the three taught positions that define
the adjacent line segments.
• For long segments, the system computes the corner path, and tries to maintain constant
programmed speed around the corner path if it is within the mechanical capability of the robot
(done during factory robot tuning).
7–92
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• For short segments, corner path will start and end at half the distance of the shorter of the
two line segments. As corner rounding reduces, constant speed around corner cannot be
maintained and speed slowdown occurs.
For short segments with Corner Distance function disabled, as speed is increased, corner rounding
is increased. Therefore, as speed is increased, the path is changed.
In Figure 7–63 , for example, as the speed is increased for a series of short segments, the resultant
path is rounded more until, at sufficiently high speed, the path becomes a straight line in the
middle segments.
Figure 7–63. Short Segment Path With Corner Distance Function Disabled
With Corner Distance function enabled, for short segments, the half distance rule is applied
where the corner starts and ends at a distance that is the shorter of the half segment distances
that form the corner.
Figure 7–64 shows the resultant path using Corner Distance function.
Figure 7–64. Short Segment Path with Corner Distance Function Enabled
Path Orientation Guidelines
• Given two taught positions, the segment time is computed as the larger of location time
and orientation time. Location time is the time to move from the start location to the
destination location based on program speed. Orientation time is the time to move from start
orientation to the destination orientation based on the maximum Cartesian rotation speed
$PARAM_GROUP[].$rotspeedlim.
7–93
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• If orientation time is greater than location time, the effective location speed will be slower than
the program speed. This is true with or without Corner Distance function enabled.
• In order to achieve constant program speed around a corner with Corner Distance function
enabled, the orientation time must be less than the location time.
• For multi group motions, if other group dominates the motion (i.e. the group takes longer
time), then the effective location speed may be slower than the program speed. As a result,
constant program speed around a corner may not be achieved even with Corner Distance
function enabled.
See Figure 7–65 .
Figure 7–65. Path Orientation
Compatibilities and Limitations
Corner Distance function requires Constant Path function. To make Corner Distance function take
effect, Constant Path function must be enabled.
• Motion Type
— CDy termination type supports Cartesian motions such as LINEAR and CIRCULAR.
— CDy termination type supports CIRCULAR ARC motion type (motion type A). However,
the system may not be able to control the corner speed (to maintain constant speed).
— Corner Distance function does not take effect for JOINT motions.
7–94
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
— CDy termination type only supports articulated robots and does not support
INDEPENDENT AXES or POSITIONERs.
• Motion Termination Type
— With Corner Distance function enabled, CRy termination type is NOT supported. The
system will post error message for motions with CRy.
— With Corner Distance function loaded, only if the function is disabled, then CRy
termination type can be supported.
— With Corner Distance function enabled, for motions with CNT termination type,
depending upon the TP program header, “Corner/Speed Control Program Header” , the
system yields the following performance:
– If “Corner/Speed Control” program header is set TRUE, then the function will take
effect: control the corner path and corner speed;
– If “Corner/Speed Control” program header is set FALSE, then the function is disabled
for the motions with CNT termination type.
• Multi Group Motion
Corner Distance function supports multi group motions, though motion will be synchronized.
• Motion Options
— Auto Singularity Avoidance function
If program header “Enable Singularity Avoidance” is enabled, then the motion
performance for the programmed motions with CDy termination type is similar to that of
the motions with CNT termination type. That is, actual corner distance may be less than
the specified one and corner speed may not be constant.
If program header “Enable Singularity Avoidance” is disabled, then this function will
control the corner path and corner speed for the motions with CDy termination type.
— RTCP
Corner Distance function supports the motions with RTCP option; Corner Distance does
not make sense for the transition between RTCP and non-RTCP motions. In that case, the
system will generate a nature corner path regardless of the specified corner distance.
— COORD
Corner Distance function does not support motions with COORD. However, the system
will try to maintain the taught corner path as much as possible without controlling corner
speed.
— LINE TRACKING
Corner Distance function supports Line Tracking. However, the system may not be able to
control the corner speed.
— TCPP
Corner Distance function supports TCP speed prediction function.
— LINEAR DISTANCE
7–95
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Corner Distance function supports LINEAR DISTANCE option, though LINEAR
DISTANCE has preference.
— PROCESS SPEED
Corner Distance function supports PROCESS SPEED option.
— MAX SPEED
Corner Distance function does not support MAX SPEED; With Corner Distance function
enabled, for motions with MAX SPEED specified, the function will disable MAX SPEED
dynamically.
— CORNER REGION
Corner Distance function does not support corner region function. With Corner Distance
function enabled, the system will post error message for motions with CR termination
type.
Teaching Techniques
You must be careful about the half distance rule. Keep in mind that because of the half distance
rule, the specified corner distance cannot be satisfied when the distance is short. Use the following
guidelines when you teach a path:
• Minimize the number of taught positions.
• Reteach positions using the CD termtype to fit the path instead of adding positions.
Without Corner Distance function or Corner Region function enabled, you have to teach additional
positions to get a small corner with high speed. Also, you have to touch up each point individually
to correct any problems. With Corner Distance function enabled, you do not need to do this.
See Figure 7–66 .
7–96
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–66. Teaching a Small Corner
Teaching a Flexible Path
When you use Corner Distance function, you can teach a small corner with relatively few positions.
See Figure 7–67 .
7–97
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–67. Teaching a Flexible Path
Procedure 7-3 Teaching a Flexible Path
1. Determine the straight line that fits the tangent of the direction change point of the path.
2. Teach positions where the tangents meet.
3. Minimize the number of taught positions because of the half distance rule. Maximize the
distance between path nodes.
4. Avoid sharp angles between taught line segments. The amount of corner speed slow-down is
proportional to the angle between line segments and the length of line segments.
5. Use the CD termtype to specify the corner distance, where appropriate.
7.3.7 Extended Velocity EV Motion Option
In addition to the programmed robot speed, the extended velocity (EV) motion option allows the
specification of the programmed extended axis speed. The EV motion option has the following
two options:
• Simultaneous EV
• Independent EV
Simultaneous EV
J P[1] 100% FINE
7–98
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
EV50%
The programmed simultaneous EV is defined as a percentage of the maximum extended axis
speed (1% - 100%).
If the EV motion option is not specified, then the extended axis motion is planned based on the
maximum extended axis speed. This means that the default motion without the EV option is
equivalent to simultaneous motion with EV100%.
In simultaneous EV, the extended axis moves simultaneously with the robot axes. This means that
they both start and end at the same time for each motion segment.
In order to achieve simultaneous motion, the robot motion time is compared with the extended axis
segment time during planning. The longer time will be used for both the robot and the extended
axis so that they both reach the destination at the same time.
In cases where the robot motion time is longer than the extended axis motion time, the actual
extended axis speed will be lower than its programmed extended axis speed so that robot motion
speed is maintained.
When the extended axis motion time is longer than the robot motion time, the actual robot speed
will be slower than its programmed speed in order to maintain simultaneous motion.
When there is extended axis motion but no robot motion, the programmed extended axis speed
will be used as specified, even if it could be the default maximum speed.
Independent EV
J P[1] 100% FINE
Ind.EV50%
Like simultaneous EV, the programmed independent Extended Velocity is also defined as a
percentage of the maximum extended axis speed (1% - 100%).
In independent EV, the extended axis moves independently of the robot axes. Both the extended
axis and the robot axes start each motion segment at the same time, however, because of their
independent speed rates, they might not reach the destination at the same time. The next planned
motion cannot execute until both the extended axis and the robot axes have reached the destination.
7–99
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.3.8 FacePlate Linear
This function will allow robot to move with faceplate linearly according to user’s taught point
with its designed TCP. When this option is added, the faceplate will move linearly. The TCP will
no longer be linear. TCP will move as kind of arc when there is orientation move.
See Figure 7–68 for an example.
Figure 7–68. Faceplate Linear With and Without Option
This function is suitable for Positional application (material handling), not path application
(sealing, painting).
Most of the robot wrist can move faster than the major axis. When this option is applied for a large
orientation move, the move time might be reduced.
There are limitations for this options
• TCPP is not supported. TCPP will report faceplate speed
• Constant Path is required
• Utool have to parallel to faceplate
• Can not loaded with Coordinated motion, Remote TCP
7–100
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• Only Picktool, Handlingtool and Pallettool is supported. All the other application will not
be supported.
The FPLIN motion modifier will only be presented when the motion line is Linear. Add the FPLIN
option by select the FPLIN as following figures ( one for iPendant and the other for legacy pendant)
Figure 7–69. FPLIN Option
7–101
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–70. FPLIN none-ip Option
7.3.9 Incremental Motion
J P[1] 50% FINE
INC
The incremental motion option specifies that the destination position is an incremental motion
amount from the previous position. To use the incremental motion option, do the following:
Caution
If you use the incremental motion option in a motion instruction, the position
or position register in that instruction will be uninitialized. Also, all instances
of that same position or position register in your program will be uninitialized.
If you do not want this to happen, use a new position or position register in
the motion instruction that will include the incremental motion option. If you
want to use the same incremental motion elsewhere in your program, copy
the entire motion instruction and paste it where you want to use it.
1. Add a motion instruction. Do not include the incremental motion option.
2. Add another motion instruction. Be sure to include the incremental motion option.
3. Move the cursor to the right of the motion instruction you just added.
4. Press F4, [CHOICE].
5. Select Incremental. You will see the message, "Position(P[n]) has been uninitialized."
7–102
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
6. Move the cursor to the position component of the instruction and press F5, POSITION. Each
position component will be set to uninitialized and the position representation screen will
be displayed. See Figure 7–71 .
Figure 7–71. Position Representation Screen
Position Detail
P[2] UF:0 UT:1
X ******.*** mm
Y ******.*** mm
Z ******.*** mm
conf: N
0
W ******.*** deg
P ******.*** deg
R ******.*** deg
0
Note If your program is set up with multiple groups or extended axes, you must enter
appropriate values in the extended axes and group position components in order for the
motion instruction to be executed.
7. Move the cursor to each position component you want to change, type the increment you
want the robot to move, and press ENTER. If you do not want to change a component, set
it to zero.
7.3.10 Minimal Rotation (HandlingTool Only)
J P[1] 50% FINE
MROT
Minimal Rotation (MROT) is a motion option to be used with the Joint motion type, or Cartesian
motion with the WJNT option. It generates the shortest joint angle move for the wrist axes within
axes limits during Joint and WJNT motion, and ignores the turn numbers of the wrist. You
should add MROT to Joint and WJNT motion instructions for motion that requires the shortest
joint angle movement.
This option is useful when you do not know the correct turn number for a destination position that
is calculated in Cartesian space, and which requires the shortest joint angle move.
When you are using the MROT option for Joint motion, or for linear motion with WJNT, if an axis
limit error occurs on one of the wrist axes only, the system will
• Post a warning message similar to MOTN-330 MROT Limit Warn (G:1, A:20 Hex).
• Attempt to move in the opposite direction for this axis, which generates the shortest motion
within the axis limit.
7–103
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
For example, the upper and lower limits of a wrist axis are 270 degrees and –270 degrees, and the
start and destination angles are 260 degrees and –80 degrees, respectively. In this case, the shortest
move should be the motion from 260 degrees to 280 degrees.
Note Physically, 280 degrees and –80 degrees are the same position for the axis.
However, a limit error occurs for this motion because it strokes the upper limit. In this case, a
warning message will be posted and the axis will move from 260 degrees to –80 degrees with a
340 degree change in joint angle.
See Figure 7–72 .
Figure 7–72. Shortest Motion Within Axis Limit
Note For M–410i series robots (4-axis robots), users can choose one of the two different motion
behaviors by setting the system variable $group[].$ornt_mrot as follows:
(1) if $group[].$ornt_mrot = TRUE, the robot tries to move so that the change in the part
orientation in Cartesian space is minimized within the axis limit;
(2) if $group[].$ornt_mrot = FALSE, robot tries to move so that the individual joint angle change
is minimized within the axis limit.
The MROT motion option has the following limitation:
• Before MROT can take effect, the destination position of the Joint or WJNT motion must
be represented in Cartesian space (XYZWPR form). Otherwise, if the destination position is
represented in Joint angles, the system will attempt to reach the specified destination joint
angles regardless of the MROT option.
• For a motion line with the MROT instruction, if the taught point is represented in Cartesian
space (XYZWPR from), the actual joint angles may be different from the taught joint angles.
As a result, Single Step Backward motion may not be the same as forward motion. For
example, in a TP program similar to the following:
J P[1] 100% FINE
J P[2] 100% FINE MROT
7–104
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
J P[3] 100% FINE
if the actual reached joint angles at P[2] are different from the taught joint angles (in terms of
turn number), then backward motion from P[3] to P[2] would be different from the forward
motion from P[2] to P[3].
Caution
Be extremely cautious when executing motion backward to the
destination position of a motion line with MROT option.
7.3.11 Offset
OFFSET CONDITION PR[x]
J P[1] 50% FINE
Offset
The offset motion option is used with the OFFSET CONDITION instruction to alter positional
information programmed at the destination position by the offset amount specified in a position
register. The OFFSET CONDITION instruction defines the position register that contains the
offset information. The OFFSET CONDITION instruction must be added to the program before
the offset motion instruction.
The OFFSET CONDITION instruction shown uses the offset in position register 1, PR[x]. The
offset motion instruction sets the positional information to position (P[1] + PR[x]) with the
orientation of P[1]. When the offset condition is set, any time the offset motion option is used, that
offset will be used. Refer to Section 7.20 for more information on offset instructions.
7.3.12 Offset Position Register
J P[1] 50% FINE
Offset, PR[x]
The Offset, PR[x] motion option alters positional information by the offset amount specified in
the position register PR[x]. This offset affects only the motion instruction where it appears. It
does not apply to any other motion instructions. The offset user frame number is the currently
selected user frame number.
If $OFFSET_CART is TRUE, offsets for Cartesian positions are treated as frames and used to
pre-multiply positions. If this is FALSE, offsets for XYZQPR positions are added field by field
(for example, target.w=pos.w+offset.w).
7–105
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
The OFFSET calculation depends on the position register representation specified in the OFFSET
motion option:
• If PR[x] is Cartesian representation, the system adds each element of the position register
to each element of the position to yield the position that is offset. If the position does not have
Cartesian representation, the system internally converts the representation of the position
to Cartesian before the offset is calculated.
• If PR[x] is JOINT representation, the system adds each element of the position register
to each element of the position to yield the position that is offset. If the position does not
have JOINT representation, the system internally converts the representation of the position
to JOINT before the offset is calculated. If PR[x] is JOINT representation, an offset user
frame is not used.
J P[1] 50% FINE Offset, PR[x] Inc
J P[1] 50% FINE Offset Inc
• If the incremental motion option is specified with the OFFSET motion option, the position
and position register MUST have the same representation, either Cartesian or JOINT. Before
you define an offset in a motion instruction that also includes the INC motion option, make
sure that the representations of the position register and position are the same. For example, if
the position register is JOINT representation, the position must also be JOINT representation.
7.3.13 ORNT_BASE
C P[1]
P[2] 100cm/min CND100 ORNT_BASE;
Figure 7–73. ORNT_BASE Instruction
The ORNT_BASE instruction is designed to improve the performance of circular motion when
the elevation angle of tool changes between taught points. This instruction is suitable for
saddle-shaped welding shown in Figure 7–74 .
7–106
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–74. Saddle-shaped welding, which is suitable for ORNT_BASE
Without this instruction, TCP orientation deviates between taught points as shown in “(A) Without
ORNT_BASE instruction” in Figure 7–75 .
By using this instruction, TCP orientation behaves as shown in “(B) With ORNT_BASE
instruction” in Figure 7–75 and that improves the quality of welding.
Figure 7–75. Behavior of TCP orientation, with and without ORNT_BASE instruction
ORNT_BASE instruction is used to specify the reference direction of orientation for
circular-motion. The reference direction is defined by ” and “Direction (x, y or z) ”. Example of
reference direction is shown in “(B) With ORNT_BASE instruction” .
7–107
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Caution
The orientation of TCP might unexpectedly weave when inappropriate
reference direction is specified for ORNT_BASE instruction. Please make
sure to specify a correct reference direction.
The specifications of ORNT_BASE are written below.
• This function is only for Circular and Circular-Arc motion.
• Available for both stationary and non-stationary.
• Available for both coord and non-coord motion.
• Three types of instructions can be specified as shown in Figure 7–76 .
Figure 7–76. Instruction Types
• Dynamic User Frame cannot be specified as Reference Frame
• Positioning Path must be FINE in the following conditions
— (1) If the reference frame or direction changes at the next motion line
— (2) At the end of ORNT_BASE-motion
— (3) Before the beginning of ORNT_BASE-motion
• In a sequent of continuous motion, ORNT_BASE-motion and non-ORNT_BASE-motion
cannot be mixed up.
[Sample program]
1:J P[1] 100% FINE
2:C P[2]
: P[3] 20cm/min CNT100 ORNT_BASE UF[2,z]
3:C P[4]
: P[5] 20cm/min CNT100 ORNT_BASE UF[2,z]
4:C P[6]
7–108
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
: P[7] 20cm/min FINE ORNT_BASE UF[2,z]
5:J P[8] 100% FINE
[End]
The following alarm messages can be displayed related to ORNT_BASE instruction.
Table 7–12. ORNT_BASE Instruction Alarm Messages
Error
Description
INTP-204 Invalid value for index
Non-existent frame number is used
CD-008 No leader
ORNT_BASE LDR is taught without COORD
MOTN-591 Cannot use %s with ORNT_BASE
Unsupported option is used with ORNT_BASE
MOTN-592 Cannot use DUF as ORNT_BASE
Dynamic User Frame is used as ORNT_BASE UF
MOTN-593 Prev. term-type must be FINE
Reference Frame is changed without FINE term-type
MOTN-594 ORNT_BASE must be with C/A motion
Linear/joint motion is used with ORNT_BASE
7.3.14 Remote TCP Motion Option (optional)
L P[1] 100mm/sec CNT100
RTCP
The optional remote TCP motion option (RTCP) allows you to control the orientation of the robot
in applications where the tool is fixed in the workcell and the robot manipulates the workpiece
around the tool. The frame used for jogging and programming is a user frame you set up and select.
See Figure 7–77 for an illustration of the robot using remote TCP. The tool is fixed and the robot
is holding the workpiece.
Note If the Coordinated Motion option is loaded on the controller, the RTCP motion option will
not be available. If an existing program that already contains an RTCP instruction is executed,
the following error will be posted at the RTCP instruction: RTCP-014 “RTCP not supported
with COORD”. Loading the Coordinated Motion option on the controller completely disables
Remote TCP.
Note Remote TCP jogging is not available with the following options:
• Automatic Voltage Control (AVC)
• Coordinated Motion
• Multi-Arm
• Scratch Start
• TAST
7–109
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• RPM/Multi-Pass
• Touch Sensing
• Weaving
Figure 7–77. Remote TCP Motion Option
When you use remote TCP, you must first set up the user frame you will use as the remote TCP
frame. When you include the remote TCP (RTCP) motion option in a motion instruction, use the
UFRAME_NUM= instruction to specify the user frame you want to use; otherwise the current
user frame will be used by default.
Refer to Section 7.20 for more information on the UFRAME_NUM= instruction.
Note In a motion instruction that includes RTCP, the speed specified is the relative speed between
the workpiece and the tool.
Figure 7–78 contains an example of how to use the RTCP motion option.
7–110
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–78. Remote TCP (RTCP) Motion Option Example
7.3.15 Search [ ] Motion Option
J P[1] 50% FINE
Search[ ]
The Search [ ] motion option directs the motion of the robot (in a positive or negative x, y or z
direction) to search for an object. The x, y and z vectors are defined by the touch frame assigned
7–111
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
in the touch schedule. When contact is made with the object, the robot's current TCP position is
stored. The search motion option must be used between a search start and search end statement.
Note Touch Sense is an option and might not be installed on your system. If Touch Sense is not
installed, Search will not appear as a menu item.
Caution
Motion speed and direction are controlled by values set in the touch schedule
assigned by the Search Start instruction. The motion and speed might be
different than what is displayed on the line.
7.3.16 Skip Jump
The SkipJump motion option is available to all tools. Its functionality is similar to the function of
Skip Label, except that the action is the reverse of that of Skip Label motion option.
SKIP CONDITION [I/O] = [value]
J P[1] 50% FINE SkipJump, LBL[3]
The SkipJump, LBL[x] motion option redirects program execution based on whether a predefined
SKIP CONDITION is true. A SKIP CONDITION instruction defines an I/O condition. The
execution of the motion instruction that contains the SkipJump, LBL[x] motion option is affected
depending on status of the SKIP CONDITION, as follows:
• If the SKIP CONDITION is satisfied, the motion defined in the motion instruction that
contains the SkipJump, LBL[x] motion option terminates and the program branches to
the label, LBL[x].
• If the SKIP CONDITION is not satisfied, the motion defined in the motion instruction that
contains the Skip, LBL[x] motion option is executed. After the robot reaches the destination
position and the condition is still not satisfied, the next program instruction is executed.
Refer to Section 7.9 for more information on branching. Refer to Section 7.30 for more
information on the SKIP CONDITION instruction.
Refer to Figure 7–79 for an example of the SkipJump, LBL[x] motion option.
7–112
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–79. SKIP JUMP Motion Option Example
7.3.17 Skip Label
SKIP CONDITION [I/O] = [value]
J P[1] 50% FINE
Skip, LBL[3]
The Skip, LBL[x] motion option redirects program execution based on whether a predefinedSKIP
CONDITION is true. A SKIP CONDITION instruction defines an I/O condition. The execution
of the motion instruction that contains the Skip, LBL[x] motion option is affected depending on
status of the SKIP CONDITION, as follows:
• If the SKIP CONDITION is satisfied, the motion defined in the motion instruction that
contains the Skip, LBL[x] motion option terminates and the next program instruction is
executed.
• If the SKIP CONDITION is not satisfied, the motion defined in the motion instruction that
contains the Skip, LBL[x] motion option is executed. After the robot reaches the destination
position and the condition is still not satisfied, the program branches to the label, LBL[x].
Refer to Section 7.9 for more information on branching. Refer to Section 7.30 for more
information on the SKIP CONDITION instruction.
Refer to Figure 7–80 for an example of the Skip, LBL[x] motion option.
7–113
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–80. SKIP LBL[x] Motion Option Example
7.3.18 Time Before / Time After
TIME BEFORE Motion Option
J P[1] 50% FINE
TIME BEFORE 2.0 sec, CALL prog
TIME AFTER Motion Option
J P[1] 50% FINE
TIME AFTER 2.0 sec, CALL prog
Normally, when a teach pendant program is executed, the instruction that follows a motion
instruction is not executed until the motion has been completed. The TIME BEFORE/AFTER
motion option instruction allows you to specify a teach pendant program that is to be called at a
specified time before or after the completion of a motion instruction.
See Figure 7–81 .
7–114
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–81. TIME BEFORE / TIME AFTER Motion Option Instructions
Refer to the “Advanced Functions” chapter in the Setup and Operations Manual for more
information on the TIME BEFORE and TIME AFTER motion options.
7.3.19 Tool_offset
TOOL_OFFSET_CONDITION PR[x] (UTOOL[1])
J P[1] 50% FINE
Tool_offset
The Tool_offset motion option is used with the TOOL_OFFSET_CONDITION instruction to alter
positional information programmed at the destination position by the tool offset amount specified
in a position register. The TOOL_OFFSET_CONDITION instruction defines the position register
that contains the offset information and the tool frame that will be used during the tool offset.
The TOOL_OFFSET_CONDITION instruction must be added to the program before the tool
offset motion instruction.
A tool offset condition instruction specifies the offset condition used in a tool offset instruction.
Execute a tool offset condition instruction before executing the corresponding tool offset
instruction. After you specify the tool offset condition, it remains effective until the program
terminates or the next tool offset condition instruction is executed.
When you specify tool offset conditions, be aware of the following:
• The position register specifies the direction in which the target position shifts, as well as
the amount of shift.
• The tool coordinate system is used to specify offset conditions.
• When the number of a tool coordinate system is omitted, the currently selected tool coordinate
system is used.
• When a motion statement which includes a tool offset instruction is taught or a certain position
is modified, the position from which the offset is subtracted can be taught.
• When a motion statement which includes a tool offset instruction is taught or a certain position
is modified, you will be asked to answer the following questions:
— Subtract tool offset data? Press YES to subtract the tool offset data from the position data
and accept the new position. Press NO to store the current position as the position data.
7–115
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
— Enter PR index of tool offset data? Enter the position-register number specified by the
tool offset condition instruction.
— Enter tool no. of tool offset data? Enter the number of the tool coordinate system in
which the offset is to be specified.
• If you manually modify the position data using the numeric keys, the position is taught
without subtracting the offset.
• If you teach the position from which the offset is subtracted, the current position is stored in
the following cases.
— The specified position register has not yet been initialized
— The tool offset instruction ignore function is enabled (see other setting.)
• If you enable the ignore function for the tool offset instruction, the current position is taught
as position data and you will not receive any error messages. The robot moves to the taught
position, even if a tool offset instruction is executed.
• If you pause the robot during the execution of a tool offset instruction and modify the shift
amount, the modified amount will be used in the resumed movement.
If you modify a position register number specified by a tool offset condition instruction, the
modified number will not be used.
• In backward execution, the robot is moved to the position to which the offset has been applied.
This also applies to the direct tool offset instruction, described next.
7.3.20 Tool offset position register
J P[1] 50% FINE
Tool_Offset, PR[2]
A direct tool offset instruction specifies the position register number. The robot moves according
to the offset stored in the specified position register, ignoring the tool offset conditions specified by
the tool offset condition instruction. The currently selected tool coordinate system is used.
When you specify tool offset position registers, be aware of the following:
• If you teach a motion statement which includes a direct tool offset instruction or you modify
a certain position, you can teach the position from which the offset is subtracted. You will
be asked to answer the following question.
— Subtract tool offset data? Press YES to subtract the tool offset from the position data
and accept the new position. Press NO to store the current position as position data.
• If you manually modify the position data using the numeric keys, the position is taught
without subtracting the offset.
• If you teach the position from which the offset is subtracted, the current position is stored in
the following cases.
7–116
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
— The specified position register has not yet been initialized
— The direct tool offset instruction has not specified the number of a position register
— The tool offset instruction ignore function is enabled.
• If you enable the tool offset instruction ignore function, the current position is taught as
position data (no prompt messages are output). The robot moves to the taught position even if
a tool offset instruction is executed.
See Figure 7–82 for an example.
Figure 7–82. Tool Offset Instruction
7.3.21 Wrist Joint
L P[1] 50% FINE Wjnt
The wrist joint option is used during linear or circular moves. It causes the wrist orientation to
change during moves, permitting the tool center point to move along the programmed path without
flipping the wrist axes due to axis singularity positions.
For the WRISTJOINT method of orientation interpolation, the three wrist joints are joint
interpolated. The remaining joints are interpolated so that the TCP moves in a straight line.
Note that the starting and ending orientation will be used as taught, but because of the joint
interpolation, the orientation during the move is not predictable, although it is repeatable.
7–117
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Caution
When the WJNT modifier is added to a linear motion, then the moves made
by the major axes of the robot (especially Joints 2 and 3) can be drastically
different than those without the WJNT modifier.
7.4 ALL-POINT TEACHING FOR PALLETIZING
Note This section applies only to robots loaded with the Palletizing option (J500).
Conventional robots are capable of palletizing or depalletizing workpieces in a single
configuration. Refer to Section 7.2.4 for information about configuration.
Figure 7–83 shows an example of palletizing with a horizontally articulated robot with two arm
configurations: left and right.
Figure 7–83. Palletizing Example
In this example, the palletizing of three workpieces is taught using different configurations-right
for workpiece 3 and left for the other two.
Even after teaching as above, in a conventional system the program is executed so that the robot
palletizes or depalletizes workpieces such that the configuration is the same at each bottom point.
This function enables a robot to palletize or depalletize workpieces according to the configurations
it has been taught, simply by setting a system variable.
Operation
To palletize or depalletize workpieces, maintaining the same attitude and configuration as that
taught, perform the following setup procedure:
1. On the system variable screen, set system variable $PALCFG.$FREE_CFG_EN to TRUE
(the initial value is TRUE).
7–118
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
2. On the palletizing initial data screen, set attitude control to INTER for the palletizing
direction (one of COLUMN, ROWS, and LAYERS) for which the arrangement method
is FREE.
As a result, each workpiece along the specified direction is palletized or depalletized with the same
attitude and configuration as that of the reference workpiece used for teaching.
The following is an example of an irregular arrangement of four columns, two rows, and five
layers. Set the palletizing initial data as follows:
COLUMN = [ 4 FREE INTER]
ROWS = [ 2 LINE FIX ]
LAYERS = [ 5 LINE FIX 1]
In this example, FREE and INTER are set for COLUMN. When system variable
$PALCFG.$FREE_CFG_EN is TRUE, workpieces are palletized or depalletized with the
following configurations:
- P[1,1,1] for workpieces in the first column- P[2,1,1] for workpieces in the second columnP[3,1,1] for workpieces in the third column- P[4,1,1] for workpieces in the fourth column
Notes
When you use this function, note the following:
• FREE and INTER cannot be set for more than one direction of COLUMN, ROWS, and
LAYERS (such setting is possible when system variable $PALCFG.$FREE_CFG_EN is
FALSE, that is, the function is not used).
This is because the configuration for a workpiece that need not be taught (whose bottom point is
calculated from the positions of the reference workpieces which are taught) cannot be uniquely
determined from such a setting.
7–119
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
When the program contains such a setting, the execution will fail and the following error message
is displayed:
PALT-024 Calculation error occurred
• Create a program so that it is not stopped due to an alarm for an unmatched configuration.
When the configuration at the current position and that at the destination position are different, the
robot cannot move between the positions with linear movement (program execution is stopped and
an unmatched configuration alarm is output).
The configurations at the approach positions and retreat positions for palletizing are specified in
the same way as those for the bottom points. If the first palletizing command specifies linear
motion type, an unmatched configuration alarm might be output, depending on the configuration
of the robot when the command is executed.
This problem does not occur when the first palletizing command specifies joint motion type. For
example, the following program does not cause an unmatched configuration alarm to be output for
palletizing with three approach positions and two retreat positions:
Palletizing Program that will not Cause an Unmatched Configuration Alarm
:
10:
11:
12:
13:
14:
15:
16:
17:
18:
:
PALLETIZING EX_1
J PAL_1[A_3] 100% FINE
L PAL_1[A_2] 500mm/sec
L PAL_1[A_1] 300mm/sec
L PAL_1[BTM] 100mm/sec
OPEN_HAND1
L PAL_1[R_1] 300mm/sec
L PAL_1[R_2] 500mm/sec
PALLETIZING-END-1
Cnt50
Cnt10
FINE
Cnt10
Cnt50
7.5 TOUCH SENSE INSTRUCTIONS
7.5.1 Overview
Touch sensing is an option and might not be installed on your controller. Touch sensing
instructions are used to implement the touch sensing programming. There are four touch sensing
instructions provided:
• Search Start
• Search End
7–120
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• Touch Offset
• Touch Offset End
Note You can not use the Find command to locate touch sense instructions when you edit a
program.
Caution
You can not use the Replace command to replace a motion instruction
with a touch sense instruction. Doing so will cause a memory write failure
error. If you want to replace the motion instruction, first delete the motion
instruction, and then insert the touch sense instruction.
7.5.2 Search Start Instruction
Search Start indicates where the search motion begins. The Search Start instruction assigns
the touch schedule to be used during the search and the position register where the positional
information is to be stored. Each Search Start must have a Search End. A new Search Start can not
be executed until a Search End has been executed. See Figure 7–84 .
Schedule and position register range checking is done when you run the program.
If the program causes a nested search start error, move the cursor to the beginning of the program
and run the program again. The error should clear automatically.
You cannot move the cursor to a search motion statement and execute it unless you also execute
the preceding search start statement.
Note Backward execution of Search Start [ ] P[ ] will disable Search Start.
Figure 7–84. SEARCH START [i] PR[x]
7.5.3 Search End Instruction
Search End stops the search. It is important to end a Search Start properly by using Search End in
your program. Otherwise, if incremental is set to ON, all the motion afterward will be affected
by the incremental search. See Figure 7–85 .
7–121
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–85. SEARCH END
7.5.4 Touch Offset Instruction
Touch Offset indicates where the position shift begins in the program. The shift amount is
determined by the information in the specified position register relative to world frame. The shift
amount is generated by the search routine. Position register range checking is done when you
run the program. See Figure 7–86 .
Note When using a simple search pattern, Touch Offset and Touch Offset End are not used. A
simple search stores the actual position of the point being searched into the Position Register.
Figure 7–86. TOUCH OFFSET PR[x]
Touch Offset and Touch Offset End allow backward execution of the program with the following
conditions:
Note Backward execution of Touch Offset PR [ ] will disable Touch Offset.
• Backward execution of a Touch Offset instructionwill not terminate the offset. When
backward execution is done, any added or "touched up" positions will be the recorded position
plus the position register offset. For example, in line 1 of the following program, the robot
position is equal to P[1] + PR[1] when backward execution begins at line 2.
• Touch Offset terminates at only two conditions:
— The Touch Offset End is executed.
— The program aborts.
• The Touch Offset End instructionwill terminate the offset . However, if backward execution
begins prior to executing the Touch Offset End instruction all positions will be offset. For
example, both P[2] and P[3] in the example shown in Figure 7–87 will be offset by PR[1]
when backward execution begins at line 4. Also, if you scroll to P[4] and execute that
instruction, the position will be offset by the PR[1] amount.
7–122
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–87. Backward Execution Example
7.5.5 Touch Offset End Instruction
Touch Offset End indicates where the position shift ends. It is important to properly end a Touch
Offset by using Touch Offset End in your program. Otherwise, all the motion afterward will be
affected by the touch offset position register. See Figure 7–88 .
Figure 7–88. TOUCH OFFSET END
Note When using a simple search pattern, Touch Offset and Touch Offset End are not used. A
simple search stores the actual position of the point being searched into the Position Register.
7.6 PALLETIZING INSTRUCTIONS
Note This section applies only to robots loaded with the Palletizing option (J500)
7.6.1 Overview
Palletizing instructions tell the robot when and how to palletize. These palletizing instructions
allow you to either stack the pallet or unload the pallet. There are four kinds of palletizing
instructions:
• PALLETIZING-B
• PALLETIZING-BX
• PALLETIZING-E
• PALLETIZING-EX
The palletizing instruction deals only with the actual indexing of the area of the program
immediately close to the pallet. You must include any required I/O, other motions, and additional
logic instructions.
7–123
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
To use palletizing instructions you:
1. Select one of the palletizing instructions.
2. Use the Pallet Editor to specify how the instruction will work in your program. The Pallet
Editor appears only when entering or modifying a palletizing instruction.
3. Create the stack pattern by recording certain robot positions.
4. Create the route with which the robot moves to the pallet by recording certain robot positions.
Palletizing Program Example shows an example of a palletizing program.
Palletizing Program Example
1: R[1]=0
2: PL[1]=[1,1,1]
3: PL[2]=[1,1,1]
4: !THE NEXT LINE OPENS THE GRIPPER
5: RDO[1]=ON
6: RDO[2]=OFF
7: LBL[1]
8: IF SDI[4]=ON, CALL BALLET
9: J P[5] 100% CNT100
10: R[1]=R[1]+1
11: PR[3]=PR[4]
12: IF R[1]<6, JMP LBL[10]
13: IF R[1]=7, JMP LBL[10]
14: PR[3]=PR[2]
15: LBL[10]
16: PALLETIZING-B_1
17: J PAL_1[A_1] 100% FINE Offset,PR[1]
18: J PAL_1[BTM] 30% FINE Offset,PR[1]
19: !CLOSE THE GRIPPER
20: RDO[1]=OFF
21: RDO[2]=ON
22: WAIT .50 (sec)
23: J PAL_1[R_1] 30% FINE Offset,PR[1]
24: PALLETIZING-END-1
25: J P[5] 100% CNT100
26: J P[1] 100% CNT100
27: WAIT SDI[10] =OFF
28: J P[2] 100% FINE
29: L P[4] 100 mm/sec FINE
30: !THE NEXT LINE OPENS THE GRIPPER
31: RDO[1]=ON
32: RDO[2]=OFF
33: WAIT .50 (sec)
34: L P[2] 100mm/sec FINE
35: WAIT SDI[11]=ON
36: J P[6] 100% CNT100
37: L P[9] 100mm/sec CNT100
38: L P[7] 100mm/sec FINE
7–124
MAROUHT9102171E REV F
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
7. PROGRAM INSTRUCTIONS
!THE NEXT LINE CLOSES THE GRIPPER
RDO[1]=OFF
RDO[2]=ON
WAIT .50 (sec)
L P[7] 100mm/sec FINE
L P[9] 100mm/sec CNT100
J P[[6] 100% CNT100
J P[[1] 100% CNT100
J P[[5] 100% CNT100
J P[[12] 100% CNT100
L P[[10] 100mm/sec CNT100
J P[[11] 100% CNT100
L P[13] 100mm/sec CNT50
PALLETIZING-B_2
J PAL_2[A_1] 100% FINE Offset,PR[3]
J PAL_2[BTM] 10% FINE Offset,PR[3]
!THE NEXT LINE CLOSES THE GRIPPER
RDO[1]=OFF
RDO[2]=ON
WAIT .50(sec)
J PAL_2[R_1] 30% FINE Offset,PR[3]
IF R[1]<>9,JMP LBL[1]
R[1]=0
PL[1]=[1,1,1]
PL[2]=[1,1,1]
LBL[2]
IF SDI[4]=ON, CALL BALLET
J P[5] 100% CNT100
R[1]=R[1]+1
PR[3]=PR[4]
IF R[1]<6, JMP LBL[20]
IF R[1]=7, JMP LBL[20]
PR[3]=PR[2]
LBL[20]
PALLETIZING-B_2
J PAL_2[A_1] 100% FINE Offset,PR[3]
J PAL_2[BTM] 30% FINE Offset,PR[3]
CLOSE THE GRIPPER
RDO[1]=OFF
RDO[2]=ON
WAIT .50 (sec)
J PAL_2[R_1] 30% FINE Offset,PR[3]
PALLETIZING-END_2
J P[5] 100% CNT100
J P[1] 100% CNT100
WAIT SDI[10] =OFF
J P[2] 100% FINE
L P[4] 100 mm/sec FINE
!THE NEXT LINE OPENS THE GRIPPER
RDO[1]=ON
RDO[2]=OFF
7–125
7. PROGRAM INSTRUCTIONS
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
MAROUHT9102171E REV F
WAIT .50 (sec)
L P[2] 100mm/sec FINE
WAIT SDI[11]=ON
J P[6] 100% CNT100
L P[9] 100mm/sec CNT100
L P[7] 100mm/sec FINE
!THE NEXT LINE CLOSES THE GRIPPER
RDO[1]=OFF
RDO[2]=ON
WAIT .50 (sec)
L P[8] 100mm/sec FINE
L P[9] 100mm/sec
J P[6] 100% CNT100
J P[1] 100% CNT100
J P[5] 100% CNT100
J P[12] 100% CNT100
L P[10] 100mm/sec CNT100
J P[11] 100% CNT100
L P[13] 100mm/sec CNT50
PALLETIZING-B_1
J PAL_1[A_1] 100% FINE Offset,PR[1]
J_PAL_1[BTM] 30% FINE Offset,PR[1]
!THE NEXT LINE OPENS THE GRIPPER
RDO[1]=ON
RDO[2]=OFF
WAIT .50(sec)
J PAL_1[R_1] 30% FINE Offset,PR[1]
PALLETIZING-END_1
IF R[1]<>9,JMP LBL[2]
R[1]=0
JMP LBL[1]
7.6.2 PALLETIZING-B Instruction
The PALLETIZING-B instruction is the basic kind of palletizing instruction. You use this
instruction when:
• The approach and retreat routes of your robot always have the same direction and orientation.
The route is the number of robot positions you record to move your robot to the pallet and
then away from the pallet. See Figure 7–89 .
• Your stacking pattern consists of a line pattern. A line pattern has columns, rows, and layers
placed vertically, horizontally, and perpendicularly. For the line pattern, you record three end
positions that indicate where the rows, columns, and layers are located. In Figure 7–89 ,
[1,1,1] is the last route position recorded, [1,1,5], [1,3,1] and [4,1,1] are the three recorded
end positions.
7–126
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–89. Example of PALLETIZING-B Instruction
Note Palletizing or depalletizing [1,1,1] is always on the bottom of the pallet on the first layer.
Table 7–13 lists and describes each PALLETIZING-B instruction item you can specify in the
Pallet Editor.
Table 7–13. PALLETIZING-B Pallet Editor Items
ITEM
DESCRIPTION
Comment
This item allows you to enter a comment about this palletizing instruction.
Type
This item allows you to specify whether this palletizing instruction will palletize or
depalletize. If set to PALLET, the robot stacks the pallet from bottom to top. If set to
DEPALLET, the robot unloads the pallet from top to bottom.
7–127
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Incr
This item allows you to specify how the pallet register will increment or decrement. This
value, along with the specified order, controls which position will be processed by the
robot next. The value of the pallet register indicates the next position to be processed.
The order indicates which portion of the pallet register is updated first, second, and
last. In the example, the specified order is row, column, layer. For palletizing, when Incr
is set to 1, the instruction initializes the pallet register as the first row, first column, first
layer. When Incr is set to —1 the instruction initializes the pallet register as the last row,
last column, and first layer.
For depalletizing, when Incr is set to 1, the instruction initializes the pallet register as the
last row, last column, last layer. When Incr is set to —1 the instruction initializes the pallet
register as the first row, first column, and last layer.
Pal Reg
This item allows you to specify the pallet register that will be used to store the next position
to be processed.
Order
This item allows you to specify the order in which the robot will palletize or depalletize. The
available options are CRL, CLR, RCL, RLC, or LCR where
•
C = Column
•
R = Row
•
L = Layer
Columns
This item allows you to specify the total number of columns in the stack.
Rows
This item allows you to specify the total number of rows in the stack.
7–128
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Layers
This item allows you to specify the total number of layers in the stack.
Auxiliary Pos
This item allows you to specify whether or not an auxiliary position will be used. A value
of YES will keep the pallet positions that are away from the [1,1,1] corner compact. A
value of NO can cause spreading.
APPR
This item allows you to specify how many approach route positions to use. The number
you specify will be the number of positions created by the instruction for you to record.
RTRT
This item allows you to specify how many retreat route positions to use in the palletizing
instruction. The number you specify will be the number of positions created by the
instruction for you to record.
Procedure 7-4 Using the Palletizing Editor To Enter the Palletizing-B Instruction
Conditions
• You have created a program.
• You are editing a program.
Steps
1. Select the instruction:
a. Press F1, [INST].
b. Select Palletizing. See the following screen for an example.
PALLETIZING statem
2 PALLETIZING-BX
3 PALLETIZING-E
4 PALLETIZING-EX
Main Pallet
[END]
Select item
5 PALLETIZING-END
6
7
8
c. Select PALLETIZING-B. The Pallet Editor will be displayed. See following screen
for an example.
Main Pallet
PALLETIZING CONFIGURATION
PALETIZING_1 [
]
TYPE = [PALLET]
INCR = [ 1]
PAL REG = [ 1]
ORDER = [CRL]
COLUMN = [
1]
ROWS
= [
1]
LAYERS = [
1]
AUXILIARY POS = [NO]
APPR = [ 1]
RTRT = [ 1]
7–129
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Note The term Palletizing_1 in the example screen indicates that this is the first
palletizing instruction in the program.
2. To return to your program at any time, press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
3. To set up the palletizing configuration:
a. Enter a Comment.
• Press ENTER.
• Move the cursor to select a method of naming the program.
For example, if you chose Alphabetic, press a function key corresponding to the
first letter. Press that key until the letter you want is displayed in the comment field.
Press the right arrow key to move the cursor to the next space. Continue until the
entire comment is displayed. To delete a character, press BACK SPACE.
• When you are finished, press ENTER.
b. Select the TYPE.
• To palletize, press F2, PALLET.
• To depalletize, press F3, DEPALL.
c. Type the increment value.
d. Type the number of the pallet register you want to use.
e. Type the order. Available orders include: CRL, CLR, RCL, RLC, and LCR.
• To select rows, press F2, R.
• To select columns, press F3, C.
• To select layers, press F4, L.
f. Type the total number of columns.
g. Type the total number of rows.
h. Type the total number of layers.
i. Select the auxiliary position.
• To use an auxiliary position, press F2, YES.
• To not use an auxiliary position, press F3, NO.
j. Type the number of approach positions.
7–130
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
k. Type the number of retreat positions.
l. When you are finished setting up the PALLETIZING B instruction, press F5, DONE.
See the following screen for an example.
Main Pallet
TEACH BOTTOM POINTS
1: *P[1,1,1]
2: *P[10,1,1]
3: *P[1,2,1]
4: *P[1,1,2]
Note The number of bottom positions you record depends on the number of columns,
rows, and layers you entered in the Pallet Editor. In the above screen example, 10
columns, 2 rows, and 2 layers were entered. The order was entered as CRL.
4. To return to your program at any time, press >, and then press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
5. To return to the Pallet Editor at any time, press F1, BACK.
6. To record each pallet position:
a. Jog the robot to the position.
b. Hold down the SHIFT key and press F4, RECORD.
c. When you are finished recording positions, press F5, DONE. See the following screen
for an example.
Main Pallet
PALLETIZING ROUTE POINTS
IF PL[1] = [*,*,*}
1: J PAL_1[A_2] 30% FINE
2: J PAL_1[A_1] 30% FINE
3: J PAL_1[BTM] 30% FINE
4: J PAL_1[R_1] 30% FINE
5: J PAL_1[R_2] 30% FINE
Note The number of route positions you record depends on the number of approach
and retreat positions you entered in the Pallet Editor. In the above example, 2 approach
and 2 retreat positions were entered.
7. To return to your program at any time, press >, and then press F1, PROG.
7–131
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
8. To return to the Pallet Editor at any time, press F1, BACK.
9. To set up position default information, press F2, POINT.
10. To record each route position:
a. Jog the robot to the position.
b. Hold down the SHIFT key and press F4, RECORD.
c. When you are finished recording positions, press F5, DONE. You are returned to your
program and the PALLETIZING B instruction has been inserted.
7.6.3 PALLETIZING-BX Instruction
The PALLETIZING-BX instruction is a basic kind of palletizing instruction that allows you to
specify multiple route patterns. You use this instruction when:
• The approach and retreat routes of your robot have different directions and orientations.
The route is the number of robot positions your record to move your robot to the pallet and
then away from the pallet. See Figure 7–90 .
• Your stacking pattern consists of a line pattern. A line pattern has columns, rows, and layers
placed vertically, horizontally, and perpendicularly. For the line pattern, you record three end
positions that indicate where the rows, columns, and layers are located. In Figure 7–90 ,
[1,1,1] is the last route position recorded, [1,1,5], [1,3,1] and [4,1,1] are the three recorded
end positions.
7–132
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–90. Example of PALLETIZING-BX Instruction
Table 7–14 lists and describes each PALLETIZING-BX instruction item you can specify in the
Pallet Editor.
Table 7–14. PALLETIZING-BX Pallet Editor Items
ITEM
DESCRIPTION
Comment
This item allows you to enter a comment about this palletizing instruction.
Type
This item allows you to specify whether this palletizing instruction will palletize or
depalletize. If set to PALLET, the robot stacks the pallet from bottom to top. If set to
DEPALLET, the robot unloads the pallet from top to bottom.
7–133
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Incr
This item allows you to specify how the pallet register will increment or decrement. This
value, along with the specified order, controls which position will be processed by the
robot next. The value of the pallet register indicates the next position to be processed.
The order indicates which portion of the pallet register is updated first, second, and last. In
the example, the specified order is row, column, layer. For palletizing, when Incr is set to
1, the instruction initializes the pallet register as the last row, last column, and first layer.
For depalletizing, when Incr is set to 1, the instruction initializes the pallet register as the
last row, last column, last layer. When Incr is set to —1 the instruction initializes the pallet
register as the first row, first column, and last layer.
Pal Reg
This item allows you to specify the pallet register that will be used to store the next
position to be processed.
Order
This item allows you to specify the order in which the robot will palletize or depalletize.
The available options are CRL, CLR, RCL, or RLC where
•
C = Column
•
R = Row
•
L = Layer
Columns
This item allows you to specify the total number of columns in the stack.
Rows
This item allows you to specify the total number of rows in the stack.
Layers
This item allows you to specify the total number of layers in the stack.
7–134
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Auxiliary Pos
This item allows you to specify whether or not an auxiliary position will be used.
APPR
This item allows you to specify how many approach route positions to use. The number
you specify will be the number of positions created by the instruction for you to record.
RTRT
This item allows you to specify how many retreat route positions to use in the palletizing
instruction. The number you specify will be the number of positions created by the
instruction for you to record.
PATTERN
This item allows you to specify the number of approach and retreat routes to use. These
routes patterns can be DIRECT or MODULO . A direct pattern uses the same multiple
routes for each layer. A modulo pattern allows you to flip the pattern between layers.
Procedure 7-5 Using the Palletizing Editor To Enter the Palletizing-BX Instruction
Conditions
• You have created a program.
• You are editing a program.
Steps
1. Select the instruction:
a. Press F1, [INST].
b. Select Palletizing. See the following screen for an example.
PALLETIZING statem
1 PALLETIZING-B
2 PALLETIZING-BX
3 PALLETIZING-E
4 PALLETIZING-EX
Main Pallet
[END]
Select item
5 PALLETIZING-END
6
7
8
c. Select PALLETIZING- BX. The Pallet Editor will be displayed. See following screen
for an example.
7–135
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Main Pallet
PALLETIZING CONFIGURATION
PALETIZING_1 [
]
TYPE = [PALLET]
INCR = [ 1]
PAL REG = [ 1]
ORDER = [CRL]
COLUMN = [
1]
ROWS
= [
1]
LAYERS = [
1]
AUXILIARY POS = [NO]
APPR=[ 1] RTRT=[ 1] PATTERN=[ 1]
Note The term Palletizing_1 in the example screen indicates that this is the first
palletizing instruction in the program.
2. To return to your program at any time , press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
3. To set up the palletizing configuration,
a. Enter a Comment.
• Press ENTER.
• Move the cursor to select a method of naming the program.
For example, if you chose Alphabetic, press a function key corresponding to the
first letter. Press that key until the letter you want is displayed in the comment field.
Press the right arrow key to move the cursor to the next space. Continue until the
entire program name is displayed. To delete a character, press BACK SPACE.
• When you are finished, press ENTER.
b. Select the TYPE.
• To palletize, press F2, PALLET.
• To depalletize, press F3, DEPALL.
c. Type the increment value.
d. Type the number of the pallet register you want to use.
e. Type the order. Available orders include: CRL, CLR, RCL, RLC.
• To select rows, press F2, R.
7–136
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• To select columns, press F3, C.
• To select layers, press F4, L.
f. Type the total number of columns.
g. Type the total number of rows.
h. Type the total number of layers.
i. Select the auxiliary position.
• To use an auxiliary position, press F2, YES.
• To not use an auxiliary position, press F3, NO.
j. Type the number of approach positions.
k. Type the number of retreat positions.
l. Type the number of approach and retreat patterns you want to use.
m. When you are finished setting up the PALLETIZING BX instruction, press F5, DONE.
See the following screen for an example.
Main Pallet
TEACH BOTTOM POINTS
1: *P[1,1,1]
2: *P[10,1,1]
3: *P[1,2,1]
4: *P[1,1,2]
Note The number of bottom positions you record depends on the number of columns,
rows, and layers you entered in the Pallet Editor. In the above screen example, 10
columns, 2 rows, and 2 layers were entered. The order was entered as CRL.
4. To return to your program at any time, press >, and then press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
5. To return to the Pallet Editor at any time, press F1, BACK.
6. To record each pallet position:
a. Jog the robot to the position.
b. Hold down the SHIFT key and press F4, RECORD.
c. When you are finished recording positions, press F5, DONE. See the following screen
for an example.
7–137
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Main Pallet
PALLETIZING ROUTE PATTERNS
PTN [ 1] = [ *, *, *]
PTN [ 2] = [ *, *, *]
7. To return to your program at any time, press >, and then press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
8. To return to the Pallet Editor at any time, press F1, BACK.
9. To set up each route pattern,
a. Move the cursor to each asterisk.
b. To not alternate the patterns between layers, press F2, DIRECT.
c. To alternate the patterns between layers, press F3, MODULO.
d. Type the position number for each asterisk and press ENTER.
e. When you are finished recording positions, press F5, DONE. See the following screen
for an example.
Main Pallet
PALLETIZING ROUTE POINTS
IF PL[1] = [*,*,*}
1: J PAL_1[A_2] 30% FINE
2: J PAL_1[A_1] 30% FINE
3: J PAL_1[BTM] 30% FINE
4: J PAL_1[R_1] 30% FINE
5: J PAL_1[R_2] 30% FINE
Note The number of route positions you record depends on the number of approach
and retreat positions you entered in the Pallet Editor. In the above example, 2 approach
and 2 retreat positions were entered.
10. To return to your program at any time, press >, and then press F1, PROG.
Quit pallet editor?
7–138
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
11. To return to the Pallet Editor at any time, press F1, BACK.
12. To set up position default information, press F2, POINT.
13. To record each route position:
a. Jog the robot to the position.
b. Hold down the SHIFT key and press F4, RECORD.
c. When you are finished recording positions, press F5, DONE. You are returned to your
program and the PALLETIZING BX instruction has been inserted.
7.6.4 PALLETIZING-E Instruction
The PALLETIZING-E instruction is an extended kind of palletizing instruction that allows you to
specify different kind of stacking arrangements. You use this instruction when:
• The approach and retreat route of your robot always has the same direction and orientation.
The route is the number of robot positions your record to move your robot to the pallet and
then away from the pallet. See Figure 7–91 .
• Your stacking pattern consists of a line pattern. A line pattern has columns, rows, and layers
placed vertically, horizontally, and perpendicularly. For the line pattern, you record three end
positions that indicate where the rows, columns, and layers are located. In Figure 7–91 ,
[1,1,1] is the last route position recorded, [1,1,5] [1,3,1] and [4,1,1] are the three recorded
end positions.
• Your stacking pattern consists of a free pattern. A free pattern has columns, rows and layers
placed vertically, horizontally and perpendicularly. For the free pattern, you record free
positions where the rows, columns, and layers are located. In Figure 7–91 , [1,1,1] is the last
route position recorded, [1,1,5] indicates the position of the top layer, and [2,1,1], [3,1,1],
and [4,1,1] indicate the position of each row.
• You want to use an auxiliary position to define the direction of the pattern.
• You want to define the orientation of the tool at the pick/place point.
7–139
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–91. Example of PALLETIZING-E Instruction
Table 7–15 lists and describes each PALLETIZING-E instruction item you can specify in the
Pallet Editor.
Table 7–15. PALLETIZINGE Pallet Editor Items
ITEM
DESCRIPTION
Comment
This item allows you to enter a comment about this palletizing instruction.
Type
This item allows you to specify whether this palletizing instruction will palletize or
depalletize. If set to PALLET, the robot stacks the pallet from bottom to top. If set to
DEPALLET, the robot unloads the pallet from top to bottom.
7–140
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Incr
This item allows you to specify how the pallet register will increment or decrement. This
value, along with the specified order, controls which position will be processed by the
robot next. The value of the pallet register indicates the next position to be processed.
The order indicates which portion of the pallet register is updated first, second, and last. In
the example, the specified order is row, column, layer. For palletizing, when Incr is set
to 1, the instruction initializes the pallet register as the first row, first column, first layer.
When Incr is set to —1 the instruction initializes the pallet register as the last row, last
column, and first layer.
For depalletizing, when Incr is set to 1, the instruction initializes the pallet register as the
last row, last column, last layer. When Incr is set to —1 the instruction initializes the pallet
register as the first row, first column, and last layer.
Pal Reg
This item allows you to specify the pallet register that will be used to store the next
position to be processed.
Order
This item allows you to specify the order in which the robot will palletize or depalletize. The
available options are CRL, CLR, RCL, or RLC where •C = Column •R = Row •L = Layer
7–141
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
This item allows you to specify the total number of columns, rows, or layers in the stack,
whether pattern is a linear or free, and whether the orientation of the TCP is a fixed or
calculated orientation.
Columns
Rows
Layers
•
LINE - indicates the positions are lying in a straight line.
P—-P—-P—-P—-P
•
FREE - indicates the positions can be anywhere in a horizontal plane.
P PP PP
•
FIX - indicates the TCP orientation equals the orientation recorded at the [1,1,1]
position.
•
INTER - indicates the TCP orientation vector is calculated.
Auxiliary Pos
This item allows you to specify whether or not an auxiliary position will be used.
APPR
This item allows you to specify how many approach route positions to use. The number
you specify will be the number of positions created by the instruction for you to record.
RTRT
This item allows you to specify how many retreat route positions to use in the palletizing
instruction. The number you specify will be the number of positions created by the
instruction for you to record.
Procedure 7-6 Using the Palletizing Editor To Enter the Palletizing-E Instruction
Conditions
• You have created a program.
• You are editing a program.
Steps
1. Select the instruction:
a. Press F1, [INST].
b. Select Palletizing. See the following screen for an example.
PALLETIZING statem
1 PALLETIZING-B
2 PALLETIZING-BX
3 PALLETIZING-E
4 PALLETIZING-EX
Main Pallet
[END]
Select item
7–142
5 PALLETIZING-END
6
7
8
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
c. Select PALLETIZING-E. The Pallet Editor will be displayed. See the following
screen for an example.
Main Pallet
PALLETIZING CONFIGURATION
PALETIZING_1
[
TYPE = [PALLET]
PAL REG = [ 1]
COLUMN = [1 LINE FIX]
ROWS
= [1 LINE FIX]
LAYERS = [1 LINE FIX]
AUXILIARY POS = [NO]
APPR=[ 1] RTRT=[ 1]
]
INCR = [ 1]
ORDER = [CRL]
Note The term Palletizing_1 in the example screen indicates that this is the first
palletizing instruction in the program.
2. To return to your program at any time, press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
3. To set up the palletizing configuration:
a. Enter a Comment.
• Press ENTER.
• Move the cursor to select a method of naming the program.
For example, if you chose Alphabetic, press a function key corresponding to the
first letter. Press that key until the letter you want is displayed in the comment field.
Press the right arrow key to move the cursor to the next space. Continue until the
entire program name is displayed. To delete a character, press BACK SPACE.
• When you are finished, press ENTER.
b. Select the TYPE.
• To palletize, press F2, PALLET.
• To depalletize, press F3, DEPALL.
c. Type the increment value.
d. Type the number of the pallet register you want to use.
e. Type the order. Available orders include: CRL, CLR, RCL, RLC.
7–143
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• To select rows, press F2, R.
• To select columns, press F3, C.
• To select layers, press F4, L.
f. Set up your column information.
• Type the total number of columns.
• Select the type of positions.
• To select linear positions, press F2, LINE.
• To select free positions, press F3, FREE.
— Select the type of TCP orientation.
• To select fixed TCP orientation, press F2, FIX.
• To select calculated TCP orientation, press F3, INTER.
g. Set up your row information.
• Type the total number of rows.
• Select the type of positions.
• To select linear positions, press F2, LINE.
• To select free positions, press F3, FREE.
— Select the type of TCP orientation.
• To select fixed TCP orientation, press F2, FIX.
• To select calculated TCP orientation, press F3, INTER.
h. Set up your layer information.
• Type the total number of layers.
• Select the type of positions.
• To select linear positions, press F2, LINE.
• To select free positions, press F3, FREE.
• Select the type of TCP orientation.
— To select fixed TCP orientation, press F2, FIX.
— To select calculated TCP orientation, press F3, INTER.
i. Select the auxiliary position.
• To use an auxiliary position, press F2, YES.
7–144
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• To not use an auxiliary position, press F3, NO.
j. Type the number of approach positions.
k. Type the number of retreat positions.
l. Type the number of approach and retreat patterns you want to use.
m. When you are finished setting up the PALLETIZING-E instruction, press F5, DONE.
See the following screen for an example.
Main Pallet
TEACH BOTTOM POINTS
1: *P[1,1,1]
2: *P[10,1,1]
3: *P[1,2,1]
4: *P[1,1,2]
Note The number of bottom positions you record depends on the number of columns,
rows, and layers you entered in the Pallet Editor. In the above screen example, 10
columns, 2 rows, and 2 layers were entered. The order was entered as CRL.
4. To return to your program at any time, press >, and then press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
5. To return to the Pallet Editor at any time, press F1, BACK.
6. To record each pallet position:
a. Jog the robot to the position.
b. Hold down the SHIFT key and press F4, RECORD.
c. When you are finished recording positions, press F5, DONE. See the following screen
for an example.
Main Pallet
PALLETIZING ROUTE POINTS
IF PL[1] = [*,*,*}
1: J PAL_1[A_2] 30% FINE
2: J PAL_1[A_1] 30% FINE
3: J PAL_1[BTM] 30% FINE
4: J PAL_1[R_1] 30% FINE
5: J PAL_1[R_2] 30% FINE
7–145
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Note The number of route positions you record depends on the number of approach
and retreat positions you entered in the Pallet Editor. In the above example, 2 approach
and 2 retreat positions were entered.
7. To return to your program at any time, press >, and then press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
8. To return to the Pallet Editor at any time, press F1, BACK.
9. To set up position default information, press F2, POINT.
10. To record each route position:
a. Jog the robot to the position.
b. Hold down the SHIFT key and press F4, RECORD.
c. When you are finished recording positions, press F5, DONE. You are returned to your
program and the PALLETIZING E instruction has been inserted.
7.6.5 PALLETIZING-EX Instruction
The PALLETIZING-EX instruction can be used in the following cases:
• The approach and retreat routes of your robot have different directions and orientations.
The route is the number of robot positions you record to move your robot to the pallet and
then away from the pallet. See Figure 7–92 .
• If your stacking pattern consists of a line pattern. A line pattern has columns, rows, and layers
placed vertically, horizontally, and perpendicularly. For the line pattern, you record three end
positions that indicate where the rows, columns, and layers are located. In Figure 7–92 ,
[1,1,1] is the last route position recorded, [1,1,5] [1,3,1] and [4,1,1] are the three recorded
end positions.
• If your stacking pattern consists of a free pattern. A free pattern has columns, rows and layers
placed vertically, horizontally, and perpendicularly. For the free pattern, you record two end
positions where the rows, columns, and layers are located. In Figure 7–92 , [1,1,1] is the last
route position recorded, [1,1,5] indicates the position of the top layer, and [2,1,1], [3,1,1],
and [4,1,1] indicate the position of each row.
• Your layer patterns alternate. See Figure 7–92 .
• You want to use an auxiliary position to define the direction of the pattern.
• You want to define the orientation of the tool at the pick/place point.
7–146
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–92. Example of PALLETIZING-EX Instruction
Table 7–16 lists and describes each PALLETIZING-EX instruction item you can specify in the
Pallet Editor.
Table 7–16. PALLETIZING-EX Pallet Editor Items
ITEM
DESCRIPTION
Comment
This item allows you to enter a comment about this palletizing instruction.
Type
This item allows you to specify whether this palletizing instruction will palletize or
depalletize. If set to PALLET , the robot stacks the pallet from bottom to top. If set to
DEPALLET , the robot unloads the pallet from top to bottom.
7–147
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Incr
This item allows you to specify how the pallet register will increment or decrement. This
value, along with the specified order, controls which position will be processed by the
robot next. The value of the pallet register indicates the next position to be processed.
The order indicates which portion of the pallet register is updated first, second, and
last. In the example, the specified order is row, column, layer. For palletizing, when Incr
is set to 1, the instruction initializes the pallet register as the first row, first column, first
layer. When Incr is set to —1 the instruction initializes the pallet register as the last row,
last column, and first layer.
For depalletizing, when Incr is set to 1, the instruction initializes the pallet register as the
last row, last column, last layer. When Incr is set to —1 the instruction initializes the pallet
register as the first row, first column, and last layer.
Pal Reg
This item allows you to specify the pallet register that will be used to store the next position
to be processed.
Order
This item allows you to specify the order in which the robot will palletize or depalletize.
The available options are CRL, CLR, RCL, or RLC, where
7–148
•
C = Column
•
R = Row
•
L = Layer
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
This item allows you to specify the total number of columns, rows, or layers in the stack,
whether pattern is a linear or free, and whether the orientation of the TCP is a fixed
or calculated orientation.
Columns
Rows
Layers
•
FREE - indicates the positions can be anywhere in a horizontal plane.
P PP PP
•
LINE - indicates the positions are lying in a straight line.
P—-P—-P—-P—-P
•
FIX - indicates the TCP orientation equals the orientation recorded at the [1,1,1]
position.
•
INTER - indicates the TCP orientation vector is calculated.
Auxiliary Pos
Auxiliary Pos cannot be specified for the PALLETIZING-BX instruction.
APPR
This allows you to specify how many approach route positions to use. The number you
specify will be the number of positions created by the instruction for you to record.
RTRT
This allows you to specify how many retreat route positions to use in the palletizing
instruction. The number you specify will be the number of positions created by the
instruction for you to record.
PATTERN
This allows you to specify the number of approach and retreat routes to use. These routes
patterns can be DIRECT or MODULO. A direct pattern uses the same multiple routes for
each layer. A modulo pattern allows you to alternate the multiple route patterns between
layers.
Procedure 7-7 Using the Palletizing Editor To Enter the Palletizing-EX Instruction
Conditions
• You have created a program.
• You are editing a program.
Select the Instruction
1. Select the instruction:
a. Press F1, [INST].
b. Select Palletizing. See the following screen for an example.
7–149
7. PROGRAM INSTRUCTIONS
PALLETIZING statem
1 PALLETIZING-B
2 PALLETIZING-BX
3 PALLETIZING-E
4 PALLETIZING-EX
Main Pallet
[END]
Select item
MAROUHT9102171E REV F
5 PALLETIZING-END
6
7
8
c. Select PALLETIZING-EX. The Pallet Editor will be displayed. See the following
screen for an example.
Main Pallet
PALLETIZING CONFIGURATION
PALETIZING_1 [
TYPE = [PALLET]
PAL REG = [ 1]
COLUMN = [1 LINE FIX]
ROWS
= [1 LINE FIX]
LAYERS = [1 LINE FIX]
AUXILIARY POS = [NO]
APPR=[ 1] RTRT=[ 1]
]
INCR = [ 1]
ORDER = [CRL]
Note The term Paletizing_1 in the example screen indicates that this is the first
palletizing instruction in the program.
2. To return to your program at any time, press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
3. To set up the palletizing configuration:
a. Enter a Comment.
• Press ENTER.
• Move the cursor to select a method of naming the program.
For example, if you chose Alphabetic, press a function key corresponding to the
first letter. Press that key until the letter you want is displayed in the comment field.
Press the right arrow key to move the cursor to the next space. Continue until the
entire comment is displayed. To delete a character, press BACK SPACE.
7–150
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• When you are finished, press ENTER.
b. Select the TYPE.
• To palletize, press F2, PALLET.
• To depalletize, press F3, DEPALL.
c. Type the increment value.
d. Type the number of the pallet register you want to use.
e. Type the order. Available orders include: CRL, CLR, RCL, RLC.
• To select rows, press F2, R.
• To select columns, press F3, C.
• To select layers, press F4, L.
f. Set up your column information.
• Type the total number of columns.
• Select the type of positions.
— To select linear positions, press F2, LINE.
— To select free positions, press F3, FREE.
• Select the type of TCP orientation.
— To select fixed TCP orientation, press F2, FIX.
— To select calculated TCP orientation, press F3, INTER.
g. Set up your row information.
• Enter the total number of rows.
• Select the type of positions.
— To select linear positions, press F2, LINE.
— To select free positions, press F3, FREE.
• Select the type of TCP orientation.
— To select fixed TCP orientation, press F2, FIX.
— To select calculated TCP orientation, press F3, INTER.
h. Set up your layer information.
• Type the total number of layers.
• Select the type of positions.
— To select linear positions, press F2, LINE.
— To select free positions, press F3, FREE.
• Select the type of TCP orientation.
7–151
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
— To select fixed TCP orientation, press F2, FIX.
— To select calculated TCP orientation, press F3, INTER.
i. Select the auxiliary position.
• To use an auxiliary position, press F2, YES.
• To not use an auxiliary position, press F3, NO.
j. Type the number of approach positions.
k. Type the number of retreat positions.
l. Type the number of approach and retreat patterns you want to use.
m. When you are finished setting up the PALLETIZING EX instruction, press F5, DONE.
See the following screen for an example.
Main Pallet
TEACH BOTTOM POINTS
1: *P[1,1,1]
2: *P[10,1,1]
3: *P[1,2,1]
4: *P[1,1,2]
Note The number of bottom positions you record depends on the number of columns,
rows, and layers you entered in the Pallet Editor. In the above screen example, 10
columns, 2 rows, and 2 layers were entered. The order was entered as CRL.
4. To return to your program at any time, press >, and then press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
5. To return to the Pallet Editor at any time, press F1, BACK.
6. To record each pallet position:
a. Jog the robot to the position.
b. Hold down the SHIFT key and press F4, RECORD.
c. When you are finished recording positions, press F5, DONE. See the following screen
for an example.
7–152
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Main Pallet
PALLETIZING ROUTE PATTERSN
PTN [ 1] = [ *, *, *]
PTN [ 2] = [ *. *. *]
7. To return to your program at any time , press >, and then press F1, PROG.
Quit pallet editor?
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
8. To return to the Pallet Editor at any time, press F1, BACK.
9. To set up each palletizing route pattern,
a. Move the cursor to each asterisk.
b. To not alternate the patterns between layers, press F2, DIRECT.
c. To alternate the patterns between layers, press F3, MODULO.
d. Enter the position number for each asterisk.
e. When you are finished recording positions, press F5, DONE. See the following screen
for an example.
Main Pallet
PALLETIZING ROUTE PATTERSN
IF PL[1] = [*,*,*}
1: J PAL_1[A_2] 30% FINE
2: J PAL_1[A_1] 30% FINE
3: J PAL_1[BTM] 30% FINE
4: J PAL_1[R_1] 30% FINE
5: J PAL_1[R_2] 30% FINE
Note The number of route positions you record depends on the number of approach
and retreat positions you entered in the Pallet Editor. In the above example, 2 approach
and 2 retreat positions were entered.
10. To return to your program at any time, press >, and then press F1, PROG.
a. Press F4, YES, to return to your program.
b. Press F5, NO, to remain in the Pallet Editor.
11. To return to the Pallet Editor at any time, press F1, BACK.
7–153
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
12. To set up position default information, press F2, POINT.
13. To record each route position:
a. Jog the robot to the position.
b. Hold down the SHIFT key and press F4, RECORD.
c. When you are finished recording positions, press F5, DONE. You are returned to your
program and the PALLETIZING EX instruction has been inserted.
7.6.6 PALLETIZING-END Instruction
The PALLETIZING-END instruction resets the pallet register after the robot has finished stacking
or unstacking a pallet.
7.7 PALLET REGISTER INSTRUCTIONS
A pallet register stores layer, row, and column information for palletizing. Thirty-two registers
are available for all the programs in the controller combined. Pallet registers are identified by
numbers, 1-32. Pallet register instructions manipulate pallet registers arithmetically.
Up to 127 pallet registers are available for all programs in the controller combined. You can
increase the number of pallet registers at controlled start. Refer to the “System Operations”
appendix of the application-specific Setup and Operations Manual for information on performing
a Controlled start.
Pallet Register Addressing
Many instructions employ direct or indirect addressing techniques. When direct addressing is
used, the actual value is entered into the instruction. For example, if the pallet register instruction
PL[2]= [2,3,4] is used, the contents of pallet register 2 is replaced with the value [2,3,4].
When indirect addressing is used, the instruction contains a register within a pallet register. This
indicates that the actual value of the internal register becomes the pallet register number of the
pallet register. See Figure 7–93 .
Figure 7–93. Direct and Indirect Addressing Example
7–154
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
In Figure 7–93 , the first instruction illustrates direct addressing. This instruction causes the
contents of pallet register 3 to be replaced with the value [2, 3, 4].
The second instruction in Figure 7–93 illustrates indirect addressing. In this instruction, R[3] is the
internal register and PL[R[3]] is the external pallet register. If the value of the internal register R[3]
is 3, the pallet register number becomes PL[R[3]=3] or PL[3]. Therefore, the result of the second
instruction is that the contents of the pallet register, PL[3], is to be replaced with the value [5, 6, 7].
PL[x] = [value]
The PL[x] = [value] instruction stores a value in a pallet register. See Figure 7–94 .
Figure 7–94. PL[x] = [value]
PL[x]=[value][operator][value]
The PL[x] = [value] [operator] [value] instructions store the result of an arithmetic operation in a
Pallet register. The arithmetic operations are addition and subtraction. See Figure 7–95 .
You can use multiple arithmetic operators in a single instruction. However, there are the following
limitations:
• You cannot mix +, -, or */ in the same instruction.
• The maximum number of arithmetic operators you can have in the same instruction is 5.
Figure 7–95. PL[x] = [value] [operator] [value]
7–155
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
For conditional branching instruction using PL[], refer to Section 7.9.4 .
7.8 BASIC PROCESS AXES INSTRUCTIONS (OPTION)
7.8.1 Overview
The Basic Process Axes software option (R689) provides two TP instructions that can be used
to set the speed for some or all properly set up process axes:
• SET ISDT SPEED
• STOP ALL ISDT
7.8.2 SET ISDT SPEED Instruction
The SET ISDT SPEED instruction, when executed, sends the specified speed values as commands
directly to the specified process axes motors. The units of the speed value are user units. The
relationship between the “user units” used in the SET ISDT SPEED instruction and the RPM at
the motor shaft is defined by the following two quantities:
• The gear ratio specified in the Process Axes Setup routine at CONTROLLED start
• The scale factor specified in the Process Axes Setup menu.
This relationship is defined in the following equation:
7–156
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Note Please see the Software Installation Manual for more information on setting the gear ratio
for Process Axes, specifically the section entitled “Displaying, Modifying and Installing Process
Axes.”
Note Please see the “Basic Process Axes” section in the “Advanced Functions” chapter of this
manual for more details on how to set the scale factor in the Process Axes Setup menu.
Any properly setup process axes that are not specified in the SET ISDT SPEED instruction will
not be affected by the instruction; they will continue operating at their current speed.
The syntax of the instruction is shown in figure Figure 7–96 .
Figure 7–96. SET ISDT SPEED A...=...
By default, when the SET ISDT SPEED instruction is first inserted, by default it has two fields, one
for the axis number and one for the speed as shown in figure Figure 7–96 . Additional fields may
be added by pressing F1 ADD AX. This creates an additional set of axis and speed fields as shown:
1: SET ISDT SPEED A...=...,A...=...
The cursor can then be moved to any of the fields and integer data can be entered. Additional fields
can be added in this way, up to a total of eight sets of axis and speed data in a single instruction.
Note If an axis number is specified that does not correspond to a valid, properly setup process
axes, then an ISDT-012 alarm will be posted at run time.
Note If the same axis number is specified in multiple fields on the same instruction line, then an
ISDT-013 alarm will be posted at run time.
Note The speed value cannot be a negative number. If negative speed is desired, either indirect
(i.e. numeric register) must be used for the speed value, or a negative scale factor should be set up.
7–157
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.8.3 STOP ALL ISDT Instruction
The STOP ALL ISDT instruction, when executed, will send a zero speed value to all process axes
that are properly setup in the controller. This instruction does not have any arguments.
7.9 BRANCHING INSTRUCTIONS
7.9.1 Overview
Branching instructions cause the program to branch, or jump, from one place in a program to
another. There are three kinds of branching instructions:
• Label definition instruction
• Unconditional branching instructions
• Conditional branching instructions
7.9.2 Label Definition Instruction LBL[x]
A label marks the location in a program that is the destination of a program branch. A label is
defined using a label definition instruction.
A comment can be added to describe the label. After a label has been defined, it can be used with
conditional and unconditional branching instructions. See Figure 7–97 .
Figure 7–97. LBL[x]
7.9.3 Unconditional Branching Instructions
Unconditional branching instructions branch from one place in a program to another any time
they are executed. There are two kinds of unconditional branching instructions:
• Jump instructions - Cause the program to branch to a named label.
• Sub program call instructions - Cause the program to branch to another program.
7–158
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
JMP LBL[x]
The JMP LBL[x] instruction causes the program to branch to the specified label. See Figure 7–98 .
Figure 7–98. JMP LBL[x]
CALL program
The CALL program instruction causes the program to branch to another program and execute it.
When the called program finishes executing, it returns to the main program at the first instruction
after the call program instruction. See Figure 7–99 . Refer to Section 7.21 for information
on program call parameters.
Figure 7–99. CALL program
Note When you enable an application process for a program, you are setting the application mask.
The following rules dictate the kinds of programs you can CALL when application masks are used:
• A program with an application mask set to NONE can CALL a program (using the program
CALL instruction) that has an application mask set to a specific application (SpotTool+,
HandlingTool, or DispenseTool).
• A program with an application mask set to a specific application can CALL a program that
has an application mask set to NONE or to the same application.
• A program with an application mask set to a specific application cannot CALL a program that
has a different application mask.
Note If you have the Parameters for CALL Program option, you can include parameters in the
CALL program instruction. Refer to Section 7.21 for more information.
END
The program end instruction signals the end of a program. See Figure 7–100 .
7–159
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–100. Program End Instruction
7.9.4 Conditional Branching Instructions
Conditional branching instructions branch from one place to another in a program, depending on
whether certain conditions are true. There are two kinds of conditional branching instructions:
• IF instructions - Branch to a specified label or program if certain conditions are true. There
are register IF instructions and input/output IF instructions.
• SELECT instructions - Branch to one of several jump or call instructions, depending on the
value of a register.
IF R[x] [operator] [value] [action]
Register IF instructions compare the value contained in a register with another value and take an
action if the comparison is true. See Figure 7–101 .
Figure 7–101. Register IF Instruction
IF [I/O] [operator] [value] [action]
Input/output IF instructions compare an input or output value with another value and take an
action if the comparison is true.
See Figure 7–102 to Figure 7–104 .
7–160
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–102. I/O IF Instruction for DI/DO, RI/RO, SI/SO and UI/UO
Figure 7–103. I/O IF Instruction for PL
Figure 7–104. I/O IF Instruction for R, AI/AO, GI/GO and System Variable
7–161
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
For an IF instruction, conditions can be connected using AND or OR, as follows:
• AND operator
IF [cond1] AND [cond2] AND ..., [action]
For example,1: IF R[1]=1 AND R[2]=2 AND DI[2]=ON,JMP LBL[2]
• OR instruction
IF[cond1] OR [cond2] OR ..., [action]
For example,1: IF DI[10]=ON OR R[7]=R[8], JMPLBL[2]
Note You cannot mix the AND and OR operators in the same operation.
When you replace the operator between AND and OR, any operators taught in the same line are
also replaced automatically and the following message is displayed.
TPIF-062 AND operator was replaced to OR
TPIF-063 OR operator was replaced to AND
The maximum number of logical conditions that can be taught in the same operation is 5.
IF [cond1] OR [cond2] OR [cond 3] OR [cond4]OR [cond5], [action] (Maximum of five
logical conditions)
Mixed Logic IF Statement
The following is an example of a mixed logic IF statement:
IF (R[1] = (GI[1] + R[1]) * AI[1]), JMP LBL[1]
IF (DI[1] AND (!DI[2] OR DI[3])), JMP LBL[1]
• You can specify mixed logic expressions in the condition part of an IF statement.
• The result of the IF statement must be boolean.
• When the result of the expression is on, the action part of the statement, for example, JMP
LBL, is executed.
7–162
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• The following statements can be used in the action part of an IF statement when mixed
logic is used in the condition part:
JMP LBL[ ]
CALL
Mixed Logic assignment statement
Pulse statement
• Mixed Logic assignment statements and Pulse statements can be specified in the action
part of the IF statement only when the condition part is a Mixed Logic expression. See the
following example:
IF (DI[1]), DO[1]=(On)
IF (DI[2]), DO[1]=Pulse
• The maximum number of items (data or operators) in an IF statement is approximately 20.
The exact maximum number of items varies according to data type.
Refer to Section 7.17 for more information on mixed logic instructions.
SELECT R[x] = [value1] [action]= [value2] [action]= [valueN] [action] ELSE [action]
A select instruction compares the value of a register with one of several values and takes an action
if the comparison is true:
• If the value of the register equals one of the values, the jump or call instruction associated
with that value is executed.
• If the value of the register does not equal one of the values, the jump or call instruction
associated with the word ELSE is executed.
See Figure 7–105 .
Figure 7–105. Select Instruction
7–163
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.9.5 Wizard to Input Arguments
7.9.5.1 Overview
Wizard to input arguments allows you to use a wizard to teach call instruction arguments in any
sequence. For example, there is a program called, "TRACKING".
1: CALL TRACKING(’CStn_Out_R1’,2,(-1),1,1,1)
This program needs to be called with six arguments of a specific type and in the correct order.
Using Wizard to input arguments, allows you to teach the arguments in any sequence. The
argument description is also displayed.
1: CALL TRACKING(Area Name='CStn_Out_R1',VR num=2,
: Timeout Time=(-1),Reg num timeout=1,NOT-CONSECUTIVE,
: Model ID=1)
7.9.5.2 Preparation
To use this function, you must prepare and load a text file (DT file) that includes information
for the wizard.
File Format
The following is an example text (.DT) file.
Figure 7–106. Example Text (.DT) File
How to Write the Text File
The text file details are described below.
7–164
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
1. [PROGRAM] Section
• NAME is for the program name to call with arguments. (Max length is 36 characters)
• ARGUMENT is the number of the argument. (Max. is 30.)
2. [ARGUMENT] Section
• Basic writing style is | N(type of argument) 02(what number for argument) =(equal mark)
"VR num"(displayed meaning of argument)
• The number of (type of argument) is 4 types (N: Constant number, V: Macro definition,
S: String, W: List of string)
• (What number for argument) is from 01 to 30
• (Equal mark) is must
• Max length for (displayed meaning of argument) is 15 characters, enclosed it double
quotes.
- In the case of V: Macro definition
• Writing style is | V05 = "NOT-CONSECUTIVE"(macro definition name) :(colon)
'1'(value) |
• Max length for (macro definition name) is 15 characters.
• Describe macro definitions as long as necessary after | =(equal mark) with each macro
definition separated by a | ,(comma) |.
• The number of definable macros for an argument is up to 35.
• The details are explained later in the section called "Macro definition".
- In the case of W: List of string
• Writing style is | W04 = "NO_WELD"(string) | - Max length is 34 characters for (string).
• Describe strings as long as necessary after | =(equal mark) with each string separated
by a | ,(comma) |.
• The number of string for an argument is up to 35.
• Define the meaning of the string itself.
3. [ENDPROGRAM]
• - End.
• Write procedures from 1 to 3 additionally if it is needed. Up to 1000 different programs
can be included in the .dt file.
4. Write procedures from 1 to 3 additionally if it is needed.
• The number of describable program is up to 1000.
5. Place a comment within braces if necessary { } .
Quote marks are used as follows.
The following codes are prohibited to use for String enclosed in quotes " ":
• comma (,)
7–165
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• semicolon (;)
• colon (:)
• single quotes (')
• double quotes (")
• Line feed code
• Tab code
Macro Definition
Macros are used to define certain strings as a specific value. For example, it is described in the text
file as follows.
V03 = "MAX_SPD":'100', "NORMAL_SPD":'50', "SLOW_SPD":'10'
In this instance, '100' is passed as an argument if “MAX_SPD” is displayed in the field of the third
argument on the EDIT programlisting. For example,
----------------------------------------------------------------------[PROGRAM]
NAME = "HANDLING"
ARGUMENT : '4'
[ARGUMENT]
N01 = "LINE"
V02 = "SLOW":'1', "FAST":'2'
V03 = "SMALL":'1', "NORMAL":'2', "BIG":'3'
V04 = "MAX_LOAD":'10000', "NO_LOAD":'0'
[ENDPROGRAM]
-----------------------------------------------------------------------
If this text file is used, the following will be displayed on the Edit programlisting.
----------------------------------------------------------------------(Example)
[ Display ]
CALL HANDLING(LINE=3,SLOW,BIG,NO_LOAD)
[ Process ]
CALL HANDLING(3,1,3,0)
-----------------------------------------------------------------------
The following integer is used for the macro: -16777216 ~ 16777216 ( -2^24 ~ 2^24 ) A decimal
number is unusable for the macro definition. The same name or value cannot be used for an
argument. The number of definable macros for an argument is up to 35.
Change of Default Value
The default value for N(Constant number) is 0, for S(String) is '…'(null string). You can change
this default value for each argument. In the case of N(Constant number), :(colon) where:
----------------------------------------------------------------------[PROGRAM]
{OFFSSET}
7–166
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
NAME = "POS_OFFSET"
ARGUMENT = '3'
[ARGUMENT]
N01 = "X-OFFSET":'10'
N02 = "Y-OFFSET":'20'
N03 = "Z-OFFSET":'30'
[ENDPROGRAM]
-----------------------------------------------------------------------
The specified default value is used when arguments are taught automatically, if you teach the call
instruction while loading this text file.
1:CALL
POS_OFFSET(X-OFFSET=10,Y-OFFSET=20,Z-OFFSET=30)
By default, integer numbers within the following range can be used:
-16777216 ~ 16777216 ( -2^24 ~ 2^24 )
Six significant figures are used in a decimal number. For example, 123.456 If the default value
is described over six significant figures, it is truncated. Additionally, you can use the register or
argument register as a default too. In that case, you describe :(colon) and (R) or (AR) as follows:
N01 = "X-OFFSET":'10'
N02 = "Y-OFFSET":(R)
N03 = "Z-OFFSET":(AR)
If you teach a call instruction in this state, a register or argument register is used as default:
1: CALL POS_OFFSET(X-OFFSET=10,Y-OFFSET=R[...],
: Z-OFFSET=AR[...])
In the case of S(String), you describe :(colon) as follows:
S01 = "Area Name":"Booth1"
If you teach the call instruction as well as the case of S(String), the specified string is used as the
default when arguments are taught automatically. Additionally, you can also use the string register
or argument register as the default. In that case, :(colon) and (SR) or (AR) are described as follows:
S01 = "Area Name":(SR) or S01 = "Area Name":(AR)
File Name
File name is fixed as ARGDISPEG01.DT. Where the configuration is "ARGDISP(fixed) +
EG(language) + 01(serial number) + .DT(extension)"
ARGDISP(fixed) : Common part
EG(language) : language-specific where:
- EG : English
- KN : Japanese [Kanji]
7–167
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
- GR : German
- FR : French
- SP : Spanish
- CH : Chinese
- TW : Taiwanese
- CS : Czech
- OT : Other
01(serial number) : Usable from 01 to 99
It is possible to load different serial number files all together.
.DT(fixed extension) : Common part
Note Japanese is not JP but KN. This is because there are two display styles for Japanese. JP
is used for old software versions that use katakana. KN is used for current software versions
where Kanji (2 byte character) is used.
How to Load a Text File
Use the following procedure to load the text file.
1. Create the text file on the MC: (Memory Card).
2. Move the cursor to the file in the File programlisting, and select F3, [LOAD].
3. Cycle power.
Save and Load a Text File as a Backup
The text file is backed up and restored as follows:
(Backup) - At the File programlisting, select F4, [BACKUP] and “All of above” or “Application”
in Cold start.
(Restore) - At the File programlisting, select F4, [RESTORE] and “All of above” or “Application”
in Controlled start.
Alarm for Failure to Read Text File
If content of the loaded text file is not formatted correctly, it will not be read. An alarm such as
“FILE-095 (ARGDISPEG01.DT) is not loaded.” is posted and recorded in the alarm history.
View the cause of the failure in related alarm messages displayed on the alarm history
programlisting.
The following alarm messages can be displayed:
FILE-095
FILE-096
(xxx) to
FILE-097
FILE-098
FILE-099
FILE-100
7–168
(ARGDISPKN01.DT) is not loaded : File name to fail to read
on line n, xxx
: The line (n) and characters or value
fail to read
Out of memory
: Out of Temporary memory to be required
Over 1000 programs
: Over the maximum programs
Wrong end of file
: End of file not after [ENDPROGRAM]
Wrong tag/item/character code : Miss of tag, item or character code
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
FILE-101 Over 35 definitions
: Over the maximum definitions of macro or list
of string
FILE-102 Over limit value
: Over the maximum value for macro definition or
default value for Constant number
7.9.5.3 Editing
Use the following procedure to teach the call instruction arguments.
Procedure 7-8 Teaching of Arguments
1. . Input a CALL statement and select the program that is described in the text file.
1: CALL ...
[END]
2. Next, the arguments are taught automatically. (The default value is 0 or '…' (null string).
For a macro definition or list of strings, the first item is set.) The argument descriptions are
displayed in each field as follows.
1: CALL TRACKING(Area Name='...',VR num=0,
: Timeout Time=0,Reg num timeout=0,NOT-CONSECUTIVE,
: Model ID=0)
[END]
3. Change of value
The appearance is changed, but the input operation is not changed
1: CALL TRACKING(Area Name='CStn_Out_R1',VR num=0,
: Timeout Time=0,Reg num timeout=0,NOT-CONSECUTIVE,
: Model ID=0)
[END]
|
|
|
v Input Value
1: CALL TRACKING(Area Name='CStn_Out_R1',2 ,
: Timeout Time=0,Reg num timeout=0,NOT-CONSECUTIVE,
: Model ID=0)
[END]
|
|
|
v Push “Enter”
1: CALL TRACKING(Area Name='CStn_Out_R1',VR num=2,
: Timeout Time=0,Reg num timeout=0,NOT-CONSECUTIVE,
: Model ID=0)
[END]
7–169
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Submenu For Editing
The sub menu is displayed when F4, [CHOICE] is pressed while the cursor is on an argument.
The sub menu items displayed next are different.
1. Argument is N (Constant number)
Constant, Register and Argument register are displayed as items on the submenu.
2. Argument is V (Macro definition)
Strings that are defined as macros are displayed as items on the submenu.
3. Argument is S (String)
String, String register and Argument registers are displayed as items on the submenu.
4. Argument is W (list of String)
7–170
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
The list of strings is displayed as items on the submenu.
Note Up to 15 characters can be displayed as items on the submenu. And over 15 characters can
be used for the list of string. If over 15 characters are used, the first 13 characters and '..' (two
colons) are displayed as items on the submenu. For example) ”PAINT_APPLICATION” ->
“PAINT_APPLICA..”
Teaching Arguments Automatically
When you teach the CALL instruction and select the program that is written in the Text file,
arguments are automatically set with the default value (See "Teaching of Arguments"). If you
change the program name of the CALL instruction, arguments are taught. The default value is set
for each argument also as follows.
1: CALL TRACKING(Area Name='CStn_Out_R1',VR num=2,
: Timeout Time=(-1),Reg num timeout=1,NOT-CONSECUTIVE,
: Model ID=1)
|
|
|
v Change the program name from TRACKING to POS_OFFSET
1: CALL POS_OFFSET(X-OFFSET=10,Y-OFFSET=20,Z-OFFSET=30)
If the called program name is changed to the another program name that is not described in text
file, Wizard to input arguments is disabled and the previous argument value(s) will be restored.
7.9.5.4 Handling of Multiple Languages
The text file (DT file) is needed to be prepared for each language. The text file is read by the
current language setting on start-up. If the current language is switched and the text files of
multiple languages is loaded, controller power must be cycled for the new language file to be read.
The Text file for the current language must exist for Wizard to input arguments to operate properly.
7–171
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.9.5.5 Save and Upload of ASCII Files
If you save a TP program as an ASCII file (LS file) when Wizard to input arguments is enabled,
the meaning of argument is enclosed by " "(double quotes). [For example : VR num=2 > "VR
num"=2]. And in case of macro definition, not only macro definition name is enclosed by " ",
but also the defined value is described as | =(value) |. [For example : NOT-CONSECUTIVE >
"NOT-CONSECUTIVE"=1]
1: CALL TRACKING(Area Name='CStn_Out_R1',VR num=2,
: Timeout Time=(-1),Reg num timeout=1,NOT-CONSECUTIVE,
: Model ID=1)
|
|
|
v Save as ASCII file
1: CALL TRACKING("Area Name"='CStn_Out_R1',"VR num"=2,
: "Timeout Time"=(-1),"Reg num timeout"=1,
: "NOT-CONSECUTIVE"=1,"Model ID"=1)
You can upload this ASCII file if the ASCII upload option is loaded. The argument description
enclosed in quotes ( " ") is ignored when the ASCII file is uploaded. Therefore, you can upload
the ASCII file without considering whether the language is set correctly or the text file is loaded
in advance.
Note Wizard to input arguments and the process to ignore the argument description enclosed by
quotes (" ") is supported only in 7DC3(V8.30) and later. An ASCII file that includes an argument
description enclosed in quotes ( “ “) will cause the process to fail in versions released before
7DC3(V8.30).
7.9.5.6 Mode Selection
You can change the mode of Wizard to input arguments using the system variable
$ARGDISPMODE, as follows:
0 : Wizard to input arguments is disabled.
1 : Wizard to input arguments is enabled. (Default)
2 : Wizard to input arguments is enabled and the value of macro definition is displayed.
----------------------------------------------------------------------------(Example)
[ $ARGDISPMODE=0 ]
CALL HANDLING(3,1,3,0)
[ $ARGDISPMODE=1 ]
CALL HANDLING(LINE=3,SLOW,BIG,NO_LOAD)
[ $ARGDISPMODE=2 ]
CALL HANDLING(LINE=3,SLOW=1,BIG=3,NO_LOAD=0)
-----------------------------------------------------------------------------
7–172
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
The change of the mode is reflected after power is cycled.
7.10 COLLISION GUARD INSTRUCTIONS (OPTION)
You can use the Collision Guard instructions to control Collision Guard during programmed
motion.
COL DETECT ON
COL DETECT OFF
By default, Collision Guard is enabled.
• Todisable Collision Guard, include the COL DETECT OFF instruction in a teach pendant
program.
• Toenable Collision Guard that has been disabled previously, include the COL DETECT ON
instruction in a teach pendant program. Since Collision Guard is always enabled by default,
you need to use the COL DETECT ON instruction only if you have previously used the
COL DETECT OFF instruction.
See Example of Collision Guard Instructions for an example of how to use these instructions in
a teach pendant program.
Example of Collision Guard Instructions
10:
11:
12:
13:
14:
15:
16:
J P[1] 100% FINE
COL DETECT OFF
L P[2] 2000mm/sec CNT100
L P[3] 2000mm/sec CNT100
L P[4] 2000mm/sec CNT100
COL DETECT ON
J P[5] 50% FINE
7.11 CONDITION MONITOR INSTRUCTIONS
The condition monitor function monitors the condition of an I/O signal, register value, or alarm
status, during teach pendant program execution. As soon as the condition is triggered, the specified
teach pendant program is executed and interrupts the current program.
7–173
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Condition monitor instructions are used to control the monitoring of conditions when a program is
running. There are three condition monitor instructions used for program monitoring:
• MONITOR <program>
• MONITOR END <program>
• WHEN <condition> CALL <program>
MONITOR
This instruction starts monitoring the conditions taught in the specified condition program (ch
sub type). See Figure 7–107
Figure 7–107. MONITOR Instruction
MONITOR END
This instruction stops monitoring the conditions taught in the specified condition program (ch sub
type). See Figure 7–108 .
Figure 7–108. MONITOR END Instruction
WHEN <condition> CALL <program>
This instruction defines the conditions for which to monitor. You include WHEN instructions
within your condition (ch sub-type) programs. WHEN instructions are the only instructions
available when you create condition programs. See Figure 7–109 through Figure 7–112 .
In a condition handler program, you can teach multiple WHEN instructions as follows.
Multiple WHEN Instructions in a Condition Handler Program
1: WHEN
2: WHEN
3: WHEN
<cond1>
<cond2>
<cond3>
CALL
CALL
CALL
<program1>
<program2>
<program3>
You can connect the multiple conditions using AND/OR as follows.
7–174
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Connecting Multiple Conditions using AND/OR
1: WHEN
2: WHEN
<cond1>
<cond1>
AND <cond2> CALL <program1>
OR <cond2> OR <cond3> CALL <program2>
Note You cannot use both AND and OR in the same WHEN instruction.
Figure 7–109. Condition for Register, System Variable, and I/O Parameters
Figure 7–110. Condition2 for I/O
7–175
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–111. Condition2 for I/O
Figure 7–112. Condition for Error Status
ERROR NUMBER
ERR_NUM = aaabbb
aaa : Error facility code (decimal); Refer to the “Error Codes and Recovery” appendix in the
Setup and Operations Manual.
.bbb : Error number (decimal)
Example: WHEN ERR_NUM=11006, CALL PROG_A
This means "SRVO-006 Hand broken" error because the SRVO facility code is 11.
If 0 is specified as error number "aaabbb," whenever any error occurs, the condition is satisfied.
7–176
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.12 FOR/ENDFOR INSTRUCTIONS
The FOR/ENDFOR instruction is a function that repeats a loop within FOR and ENDFOR
instructions a specified number of times.
7.12.1 Overview
FOR/ENDFOR instructions have two INSTRUCTIONs: FOR instruction and ENDFOR
instruction.
• FOR instruction - start of FOR/ENDFOR loop
• ENDFOR instruction - end of FOR/ENDFOR loop
INSTRUCTIONs within FOR and ENDFOR instructions are repeated. The number of times to
repeat is determined by the specified values in the FOR instruction.
7.12.2 FOR/ENDFOR Instruction Specification
7.12.2.1 Form of FOR Instruction
The form of FOR instruction is as follows.
Register is used for the Loop counter. Constant, Register, and Argument Register is used for the
Initial value. For Constant, an integer whose range is –32767 to 32767 can be specified. Constant,
Register, and Argument Register is used for the Target value. For Constant, the integer whose
range is –32767 to 32767 can be specified.
7–177
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.12.2.2 FOR Instruction Execution
When the FOR instruction is executed, the Initial value is substituted into the Loop counter. The
following condition should be satisfied to execute the FOR/ENDFOR loop.
• When TO is specified, Initial value is equal to or smaller than Target value.
• When DOWNTO is specified, Initial value is equal to or larger than Target value.
When this condition is not satisfied, the cursor moves to the next line of the combined ENDFOR
instruction and the FOR/ENDFOR loop is not executed. The FOR instruction is executed only
once in the FOR/ENDFOR loop.
7.12.2.3 Form of ENDFOR Instruction
The form of ENDFOR instruction is as follows.
7.12.2.4 ENDFOR Instruction Execution
The FOR/ENDFOR loop is repeated as long as the following condition is satisfied.
• When TO is specified, the value of Loop counter is smaller than Target value.
• When DOWNTO is specified, the value of Loop counter is larger than Target value.
When this condition is satisfied and TO is specified, the value of Loop counter is incremented.
When this condition is satisfied and DOWNTO is specified, the value of the Loop counter is
decremented. And after that, the cursor moves to the next line of the combined FOR instruction.
When this condition is not satisfied, the cursor moves to next line and the FOR/ENDFOR loop
is not repeated.
Note An internal delay is used when the FOR/ENDFOR loop is executed repeatedly. Therefore, a
WAIT instruction is not necessary in the FOR/ENDFOR loop to repeat the loop.
7.12.3 Teach FOR/ENDFOR Instruction
7.12.3.1 How to teach the FOR/ENDFOR Instruction
How to teach FOR/ENDFOR instruction is as follows.
Procedure 7-9 Teach FOR/ENDFOR Instruction
1. In this example, insert blank lines in line 1 and 5.
7–178
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
2. Move the cursor to line 1 and press F1, [INST].
3. Select FOR/ENDFOR.
4. Select FOR. The FOR instruction is taught.
5. The cursor automatically moves to the index of the register. Input the value of the index.
In this example, input 1.
6. The cursor automatically moves to Initial value part. In this example, Constant is selected
and the value is 1. To choose register or argument register, press F4, [CHOICE] and select
one of them.
7–179
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7. The cursor automatically moves to TO/DOWNTO part. In this example, press ENTER. To
choose DOWNTO, press F4, [CHOICE] and select DOWNTO.
8. The cursor automatically moves to Target value part. In this example, select R[]. Input 2 for
the index of the register.
7–180
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
9. Move the cursor to line 5 and press F1, [INST].
10. Select FOR/ENDFOR.
11. Select ENDFOR. ENDFOR instruction is taught.
7.12.3.2 FOR/ENDFOR instruction Combination
FOR and ENDFOR instructions are automatically combined after teaching. The closest FOR
instruction and ENDFOR instruction are combined. By teaching FOR/ENDFOR instructions
additionally in FOR/ENDFOR loop, nested loops can be formed. Up to 10 nested loops can be
formed. However, teaching more than 10 nested loops causes an alarm in execution.
7–181
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
The number of FOR instruction and ENDFOR instruction in a program should be the same. When
the number is not the same, an alarm occurs in execution. Alarms related to FOR/ENDFOR
function are described in Section 7.12.5 . How to combine FOR and ENDFOR instructions is
described in the following example. Teach FOR instruction in line 1. In this case, the number of
FOR instruction and ENDFOR instruction is not the same. Therefore, if this program is executed,
the alarm “INTP-670 Need ENDFOR for FOR in line 1” occurs.
Teach ENDFOR instruction in line 6. FOR/ENDFOR loop is formed by FOR instruction in line 1
and ENDFOR instruction in line 6.
Teach FOR instruction in line 3. In this case, the number of FOR instruction and ENDFOR
instruction is not the same. Therefore, if this program is executed, the alarm “INTP-670 Need
ENDFOR for FOR in line 1” occurs.
Teach ENDFOR instruction in line 8. The closest FOR instruction and ENDFOR instructions are
combined. Therefore, the first FOR/ENDFOR loop is formed by FOR instruction in line 3 and
7–182
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
ENDFOR instruction in line 6, and the second FOR/ENDFOR loop is formed by FOR instruction
in line 1 and ENDFOR instruction in line 8. In this example, 2 nested loops are formed.
Note Please be careful not to use the same register number as Loop counters in the same nested
loop. It might cause abnormal behavior.
7.12.4 Execution examples
7.12.4.1 Backward execution
Backward execution is prohibited on FOR/ENDFOR instructions. However, backward execution
on instructions within FOR/ENDFOR loop is allowed. In the following example, when backward
execution is started from line 1 or 5, the alarm “INTP-238 BWD execution completed” occurs. On
the other hand, backward execution can be done when started from line 2, 3, 4 or 6.
7.12.4.2 Examples
The examples of FOR/ENDFOR instruction are described with the following program.
7–183
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Case 1: R[2]=3 TO is specified and Initial value is smaller than Target value. Therefore, the
condition of FOR instruction is satisfied. As the value of Loop counter changes from 1 to 3, the
condition of ENDFOR instruction is satisfied and FOR/ENDFOR loop is repeated three times.
Case 2: R[2]=1 TO is specified and Initial value is equal to Target value. Therefore, the condition
of FOR instruction is satisfied. However, as the value of Loop counter is equal to Target value, the
condition of ENDFOR instruction is not satisfied. Therefore, FOR/ENDFOR loop is executed
only once.
Case 3: R[2]=0 TO is specified and Initial value is larger than Target value. Therefore, the
condition of FOR instruction is not satisfied. The cursor moves to the next line of combined
ENDFOR instruction, that is, line 6 and FOR/ENDFOR loop is not executed.
7–184
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Other examples Start within FOR/ENDFOR loop: R[1]=0 When the following program is
executed from line 3 and R[1]=0, the condition of ENDFOR instruction is satisfied. Therefore,
FOR/ENDFOR loop is repeated 4 times (0 to 3).
Start within FOR /ENDFOR loop: R[1]=5 When the following program is executed from line 3
and R[1]=5, the condition of ENDFOR instruction is not satisfied. Therefore, FOR/ENDFOR
loop is not repeated.
JMP/LBL instructions exist within FOR/ENDFOR loop: In the following program, JMP/LBL
instructions exist within the FOR/ENDFOR loop. The cursor moves from line 3 to line 7 by
JMP instruction. FOR/ENDFOR loop between line 1 and 4 is not executed. As line 7 is also
within the FOR/ENDFOR loop and the condition of ENDFOR instruction in line 8 is satisfied,
FOR/ENDFOR loop between lines 5 and 8 is repeated. Finally, the value of R[1] is equal to 1
and R[2] is equal to 2.
7–185
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Note Please be careful when you use JMP/LBL within FOR/ENDFOR loop. Before you use
them, please consider how the loop works. Otherwise, it might cause fatal errors.
The Loop counter value is modified within FOR/ENDFOR loop: Loop counter can be modified
within the FOR/ENDFOR loops. In the following example, when DI[1] = ON, R[1] is changed to
11. As this value is larger than Target value, this FOR/ENDFOR loop is finished.
Note Please be careful when you modify Loop counter value within FOR/ENDFOR loop.
Changing Loop counter value within FOR/ENDFOR loop may cause an abnormal behavior or
infinite loops. Please be careful when you modify Target value within FOR/ENDFOR loop when
register or argument register is specified for them. Changing the value within FOR/ENDFOR loop
might cause an abnormal behavior.
The Loop counter value is calculated within FOR/ENDFOR loop: In the following example,
FOR/ENDFOR loop counter is calculated. After execution, Loop counter value will be 11. Loop
counter value is different from Target value. However, this result is correct.
7–186
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
This is explained as follows.
Line 1, R[1] is 6 (Initial value).
Line 5, R[1] is 7.
Line 6, R[1] is 7 and this satisfies the ENDFOR condition. R[1] is incremented to be 8.
Line 5, R[1] is 9.
Line 6, R[1] is 9 and this satisfies the ENDFOR condition. R[1] is incremented to be 10.
Line 5, R[1] is 11.
Line 6, R[1] is 11 and this does not satisfy the ENDFOR condition. The cursor goes to next line.
This means the user can calculate Loop counter, but need to be careful that the Loop counter value
is different from Target value.
Note In some cases, calculating Loop counter causes an alarm. This problem can be avoided
by using DIV just before FOR/ENDFOR instruction or input the same value in DATA screen.
Especially when you calculate with real value use division, please make sure to use DIV.
R[1]=R[1] DIV 1
7.12.5 Alarms
Alarms occur in the following conditions with FOR/ENDFOR function.
• Execute when the number of FOR instruction is smaller than ENDFOR instruction
• Execute when the number of ENDFOR instruction is smaller than FOR instruction
• Execute when there is over 10 nested loops
• Other than integer is used for Initial value or Target value in FOR instruction
• Other than integer is used for the value of Loop counter or Target value in ENDFOR instruction
• Execute when the number of FOR instruction is smaller than ENDFOR instruction
Execute the following program. As FOR instruction for ENDFOR instruction in line 5 does not
exist, the alarm “INTP-669 Need FOR for ENDFOR in line 5” occurs in execution.
• Execute when the number of ENDFOR instruction is smaller than FOR instruction Execute
the following program. As ENDFOR instruction for FOR instruction in line 1 does not exist,
the alarm “INTP-670 Need ENDFOR for FOR in line 1” occurs in execution.
7–187
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• Execute when there are over 10 nested loops The alarm “INTP-671 Too many FOR” occurs in
execution.
• Other than integer is used for Initial value or Target value in FOR/ENDFOR instruction
• Other than integer is used for the value of Loop counter or Target value in ENDFOR
instruction Execute the following program. As the value of the register for Target value in
FOR instruction in line 2 is not integer, the alarm “INTP-672 (program, 2) Value type is not
integer” occurs when line 2 is executed. In other cases, calculating the Loop counter, Initial
value or Target value may cause the same alarm.
Note In some cases calculating a register used for Loop counter or Target value causes the
alarm above even though the result and the value displayed in DATA screen is integer. This
problem can be avoided by using DIV as follows just before FOR/ENDFOR instruction or
input the same value in DATA screen. Especially when you calculate with real value using
division, please make sure to use DIV.
R[1]=R[1] DIV 1
7.13 INPUT/OUTPUT INSTRUCTIONS
7.13.1 Overview
Input/output, or I/O, instructions allow the program to turn on and off output signals and receive
input signals. There are several kinds of I/O instructions:
• Digital input and output instructions
• Robot digital input and output instructions
7–188
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• Analog input and output instructions
• Group input and output instructions
• Welding Input and output instructions
Note I/O instructions are initiated immediately after completion of the previous instruction.
The format of the I/O instructions in the TP editor is controlled by three items in the [EDCMD]
pull-up menu.
• Comment
• IO Status
• Color
7.13.2 Digital Input and Output Instructions
Digital input (DI) and digital output (DO) signals are user-controlled input and output signals. Use
digital input and output instructions to control digital input and output signals in a program. Refer
to the “Input/Output (I/O) Setup” chapter in the Setup and Operations Manual.
R[x] = DI[x]
The R[x] = DI[x] instruction stores the condition of a digital input signal line (ON=1, OFF=0) in a
register. See Figure 7–113 .
Figure 7–113. R[x] = DI[x]
DO[x] = ON/OFF
The DO[x] = ON/OFF instruction turns on or off the specified digital output signal. See Figure
7–114 .
Figure 7–114. DO[x] = ON/OFF
7–189
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
DO[x] = PULSE [,width]
The DO[x]=PULSE [,width] instruction turns on the digital output signal for the time specified.
See Figure 7–115 .
Figure 7–115. DO[x] = PULSE [,width]
DO[x] = R[x]
The DO[x] = R[x] instruction turns on or off the specified digital output signal based on the value
of the register. A value of 0 turns the specified digital output OFF. All values except zero turn the
specified digital output ON. See Figure 7–116 .
Figure 7–116. DO[x] = R[x]
7.13.3 Robot Digital Input and Output Instructions
Robot digital input (RI) and robot digital output (RO) signals are used to communicate between
the controller and the robot. Refer to the “Input/Output (I/O) Setup” chapter in the Setup and
Operations Manual.
7–190
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
R[x] = RI[x]
The R[x] = RI[x] instruction stores the condition of specified robot digital input signal (ON=1,
OFF=0) in a register. See Figure 7–117 .
Figure 7–117. R[x] = RI[x]
RO[x] = ON/OFF
The RO[x] = ON/OFF instruction turns on or off the specified robot digital output signal. See
Figure 7–118 .
Figure 7–118. RO[x] = ON/OFF
RO[x] = PULSE [,width]
The RO[x]=PULSE [,width] instruction turns on the specified robot digital output signal for the
time specified. See Figure 7–119 .
Figure 7–119. RO[x] = PULSE [,width]
7–191
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
RO[x] = R[x]
The RO[x] = R[x] instruction turns on or off the specified robot digital output signal based on
the value of the register (1=ON, 0=OFF). See Figure 7–120 .
Figure 7–120. RO[x] = R[x]
7.13.4 Analog Input and Output Instructions
Analog input (AI) and analog output (AO) signals are continuous input and output signals whose
magnitudes indicate data values, such as temperatures and voltages. Refer to the “Input/Output
(I/O) Setup” chapter in the Setup and Operations Manual.
R[x] = AI[x]
The R[x] = AI[x] instruction stores the value on an analog input channel in a register. See
Figure 7–121 .
Figure 7–121. R[x] = AI[x]
AO[x] = value
The AO[x]=value instruction sends a value on an analog output channel. See Figure 7–122 .
Figure 7–122. AO[x] = value
7–192
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.13.5 Group Input and Output Instructions
Group input (GI) and group output (GO) signals are several digital input and output signals that
have been assigned to a group, can be read as a binary number, and can be controlled by one
instruction. Refer to the “Input/Output (I/O) Setup” chapter in the Setup and Operations Manual.
R[x] = GI[x]
The R[x] = GI[x] instruction places the decimal value of the binary number on the specified group
input into the specified register. See Figure 7–123 .
Figure 7–123. R[x] = GI[x]
GO[x] = value
The GO[x]=value instruction sends the binary equivalent of a value on the specified group output
lines. See Figure 7–124 .
Figure 7–124. GO[x] = value
7–193
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.13.6 Input and Output Instruction Format
All of the I/O instructions discussed in the previous sections can either be displayed in a concise
format or, if you prefer, you can enhance the format with:
• Comment
• IO Status
• Color
These three display options can be selected in the [EDCMD] pull-up menu using the F5 function
key. Selecting an item in the menu will toggle the feature ON and OFF. These three display
options can be used together or independently.
Comments
A comment string can be added to an I/O signal in the I/O screen. You can display comments in
the editor by selecting the Comment item in the [EDCMD] menu.
Figure 7–125 shows the same program with Comments OFF and ON.
Figure 7–125. Comment OFF and ON
Note The Register instruction on Line 6 also has a comment. Comments can be added to Registers
in the Data Registers screen.
IO Status
A Digital I/O signal has a state of ON or OFF. This can be observed in the Digital I/O screens. An
Analog or Group I/O signal also has a value, and it can be viewed in the corresponding I/O screens.
The status or value of these signals can also be displayed in the I/O instructions in the TP editor.
You can enable or disable this feature by selecting the IO Status item in the [EDCMD] menu.
Figure 7–126 shows the same program with IO Status OFF and ON.
7–194
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Figure 7–126. I/O Status OFF and ON
Figure 7–127 adds comments to the examples above.
Figure 7–127. Comments and Status ON
Color
Color can be used by some TP instructions. The ON and OFF states of Digital I/O can be displayed
with Green and Red background colors, respectively. The I/O value of Analog and Group I/O
signals can be highlighted with a yellow background.
This is shown below in Figure 7–128 .
7–195
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–128. Color ON
7.14 MACRO COMMAND INSTRUCTION
The macro command instruction specifies the macro command to be executed when the program
is run. A macro command is a separate program that contains a series of instructions to perform a
task.
You can define as many as 20 to 99 macro commands, depending on how your system was set
up. See Figure 7–129 .
Figure 7–129. Macro Command Instruction
Refer to the “General Setup” chapter of this manual for information on how to set up and execute
macro commands. Refer to Section 7.21 for information on macro instruction parameters.
Note When using Parameters for Macros, you can include parameters in the macro command
instruction. Refer to Section 7.21 for more information.
7.15 MATH FUNCTION INSTRUCTIONS
• The Math function option (J593) allows you to calculate math functions (ex: SIN COS and
so on) in the TP program.
• The Math function instruction can be used in an assignment statement, conditional statement
and wait command.
7–196
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.15.1 Type of Math Functions
Usable instructions of math functions are as follows.
Table 7–17. Usable instruction of math function
Function
Explanation
Restriction of Argument
SQRT[x]
Square root
0 <= x
SIN[x]
None
COS[x]
None
TAN[x]
Except 90,270±360n
ASIN[x]
-1 <= x <= 1
Trigonometric Function Units are Degrees
ACOS[x]
-1 <= x <= 1
ATAN[x]
None
ATAN2[x,y]
Except x=0,y=0
LN[x]
Natural Logarithm
0<x
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).
7.15.2 Instruction Format of Math Function
Instruction type of math functions is explained in the following example.
7.15.2.1 Instruction Format of Assignment Statements
• The function which only has one argumentExcept of ATAN2[ ]
7–197
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• The function which has two argumentsATAN2[ ]
• The argument of math functions is “Register “ and “Argument Register.”
• Constant is not used directly.
7.15.2.2 Instruction Format of Relational Statements
• A mixed logic instruction expression can be used in the conditional statement of a conditional
branch command.
• If the result of a conditional statement is ON, the executable statement of the conditional
branch command is executed.
• The argument of math functions is “Register “ and “Argument Register.”
7–198
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• A Constant is not used directly.
7.15.2.3 Instruction Format of Wait Command Statements
• 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.”
• A Constant is not used directly.
7.15.3 Function Specification of Math Functions
7.15.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:
Execute this TP program then,
If the argument is minus value, then the following error occurs.
7.15.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:
7–199
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Execute this TP program then,
7.15.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:
Execute this TP program then,
7.15.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:
Execute this TP program then,
7–200
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
If the argument equals to 180*n+90 and execute, then the following Error will be posted.
7.15.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:
Execute this TP program then,
If the argument ranges are x>1 or x<-1 and execute program, then the following Error will be
posted.
7.15.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:
Execute this TP program then,
If the argument ranges are x>1 or x<-1 and execute program, then the following Error will be
posted.
7–201
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.15.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:
Execute this TP program then,
7.15.3.8 Inverse Trigonometric Function (ATAN)
Function name: ATAN [x] Argument: An integer or a real value to calculate ATAN. Example:
Execute this TP program then,
7.15.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:
7–202
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Execute this TP program then,
7.15.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:
Execute this TP program then,
If the argument is x <= 0 and the program execute, then the following Error will be posted.
7.15.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:
Execute this TP program then,
7–203
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.15.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:
Execute this TP program then,
7.15.3.13 Round Off (ROUND)
7.15.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.
7–204
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Table 7–18. Background operation of math function
Mode
Maximum Allowable
Number of Items
Scanning Time
Available Data
Available Operators
Standard
mode
No restriction
(Number of items
in standard mode /
300-Number of items
in high-level mode)*ITP
The number of items as
used here refers to the
total number of items in
each mode background
operation programs.
One ITP is usually eight
milliseconds.
SIN, COS, TAN,
ASIN, ACOS,
ATAN, ATAN2,
SQRT, LN, EXP,
ABS, TRUNC,
ROUND
(,), =, <>, <, <=, >, >=, +,
-, *, /, DIV, MOD
High-level
mode
270
Eight milliseconds.
• 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.
7.15.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.
Procedure 7-10 Examples of Teaching Math Function
1. Press F1 key(INST).
2. Select Register.
3. Select mixed logic instructions “…=(…)”.
7–205
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
4. Select register “R[ ]”. Then the cursor moves in the square bracket.
5. Input index 1.
6. Then the cursor moves to the right side of equal sign.
7. Select “SIN[ ]”.
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.
7–206
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
10. Move cursor to finish teaching.
11. Teaching of SIN[R[2]] function completed.
7.15.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.
The following statements are supported.
The following statements are not supported.
7–207
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• 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.
7.15.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)
:TAN[R[4]] (R[4] = 90)
• The value overflows when executed.
Example :EXP[R[1]] (R[1] = 100)
• 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)
7.16 MISCELLANEOUS INSTRUCTIONS
7.16.1 Overview
There are miscellaneous instructions for production control, user alarms, timer setting, speed
override, program remarks, message handling, and parameter setting.
7–208
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.16.2 RSR Enable/Disable Instruction
RSR[x] = [action]
The RSR enable/disable instruction enables and disables the queueing process of the specified
RSR. When an RSR signal is set to disable, the RSR signal will be ignored. See Figure 7–130 .
Figure 7–130. RSR Enable/Disable
7.16.3 User Alarm Instruction
The user alarm instruction puts the program in an alarm condition, pauses the program, and causes
a message to be displayed on the error message line as follows:
UALM[x]
INTP 213 UALM[x] Message (prog_name, line_num)
For example:
INTP 213 UALM[1] Check feeder (RSR001, 47)
If the program is resumed, program execution will continue from the next program line. The user
alarm instruction specifies the alarm message to be displayed. Refer to the “General Setup”
chapter of the Setup and Operations Manual for information on how to define the contents of a
user alarm. See Figure 7–131 .
Figure 7–131. User Alarm
7–209
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.16.4 Timer Instruction
Timer instructions allow you to start, stop, and reset up to 20 different timers in a program. Timers
allow you to determine how long a routine takes to execute, or how long your entire production
program takes to execute. Timers can be started in one program and then stopped in another. The
status of each timer is displayed in the $TIMER[n] system variable, where n is the number of the
timer. See Figure 7–132 .
TIMER[x] = [action]
You can display the status of program timers on the STATUS Prg Timer screen.
Figure 7–132. Timer
7.16.5 OVERRIDE Instruction
The OVERRIDE instruction sets the speed override to a percentage value of the programmed
speed. See Figure 7–133 .
OVERRIDE = x %
Figure 7–133. OVERRIDE
7.16.6 Remark Instruction
The remark instruction allows you to annotate the program. Remark information does not affect
the execution of the program. When you add a remark instruction, you enter the message to display
within the program. The remark instruction can be from 1 to 32 alphabetic, numeric, punctuation,
and blank space characters. The first character of a remark instruction is an exclamation point (!).
7–210
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
The remark instructions can be displayed with a yellow background color to help clarify the
program content. The use of color text in the editor can be turned On or Off using the Color
command available under the EDCMD function key.
7.16.7 Multi-lng Remark Instruction
The multi-lng remark instruction allows you to annotate the program. There are 2 reasons you
may wish to use this instead of the original remark instruction:
• You support multiple languages and you wish the remarks to be localized for each language.
• Or you wish to add remarks that are longer than 32 characters.
The multi-lng remark information does not affect the execution of the program. When you add a
multi-lng remark instruction, you enter the message to display within the program. The multi-lng
remark instruction can be alphabetic, numeric, punctuation, and blank space characters. The first
two characters are two hyphens (––). The multi-lng remark has the following characteristics:
• Each remark can be 242 characters although the total for all languages cannot exceed the
maximum line length which is also 242 characters.
• The remark will automatically be split among multiple lines in the editor based on the
window width. It uses space to split the line so if the remark has no spaces the display will
be truncated instead.
• When a new remark is entered it is based on the current language. To enter or display a remark
for a different language, you must change the language in the General Setup menu.
• When the language is changed, the remark will only display the two hyphens until you enter
a new remark for that language.
• When a program is loaded, it may contain a remark in a language that does not exist on the
controller. The language is not created. The remarks will be created but hidden from the editor.
• The .LS file will display all remarks for all languages, even if the language does not exist on
the controller.
In the editor, the remark will look as follows:
1:
:
--This program opens the raw part
gripper
In the .LS file, the remark will look as follows:
1:
:
:
:
--eg:This program opens the raw part gripper
--kn:This is KANJI version of remark
--sp:This is Spanish version of remark
--jp:Japanese
7–211
7. PROGRAM INSTRUCTIONS
:
:
:
:
:
MAROUHT9102171E REV F
--fr:French
--gr:German
--ch:Chinese
--tw:Taiwanese
--ot:Other ;
• It is useful to add remarks for multiple languages in the .LS file and use "Ascii Upload" option
to create the program. The suffix must be in lower case. The last suffix must contain the
; to end the remark.
• The remark can be displayed with a yellow background color to help clarify the program
content. The use of color text in the editor can be turned On or Off using the Color command
available under the EDCMD function key.
7.16.8 Line Remark (Comment out) Instruction
The Line Remark instruction allows you to disable the execution and editing of an line (comment
out). Any instruction can be remarked. The Line Remark has the following characteristics:
• The Line Remark instruction will prefix the line with // and then display the line as normal.
• When the language is changed, the Line Remark instruction is localized.
• You cannot create a line with //. A line is created in the normal way. You press [EDCMD]
Remark to convert a line to a Line Remark.
• [EDCMD] Remark will allow multiple lines to be selected and F4 REMARK or F5
UNREMARK will remark or unremark all the selected lines.
• You cannot use // to comment out just a portion of a line.
• You cannot edit a line with //. Right arrow in the TP Editor will not move the cursor off the
line number. TOUCHUP on a motion line is ignored.
• You can only remove the // using [EDCMD] Remark and selecting unremark.
• The line is still valid even though it is commented out. In other words, a position still exists
for the motion lines and a label still exists for the label lines. In the case of a label, the label
will be commented out so it is no longer valid to jump to. When a label is unremarked, then
the label will be uncommented out unless another label has been added with the same number.
• You can perform other modifications on the line such as delete, copy and paste, find and
replace, and renumber.
• Line Remark instructions must be valid instructions in order to successfully load a TP program
or to perform Ascii Upload. You can use the Multi-lng Remark Instruction if you need to
comment out an invalid instruction for Ascii Upload.
• The toolbars in the icon editor have a Line Remark Toggle button. When pressed, the current
line is toggled as a remark/unremark.
7–212
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.16.9 Message Instruction
The MESSAGE instruction displays the specified message on the USER screen. The message can
be from 1 to 23 alphabetic, numeric, punctuation, and blank space characters. If you want a blank
line between messages, leave the message content empty. See Figure 7–134 .
When the MESSAGE [message content] instruction is executed, the user screen is displayed
automatically.
MESSAGE [message content]
Figure 7–134. Message Instruction
7.16.10 Parameter Name Instruction
You can display and change the value of a system variable through the parameter name instruction,
by using teach pendant read and write operations. Refer to the “Status Displays and Indicators”
chapter in the Setup and Operations Manual for more information on system variables.
Note Some system variables only allow you to display their value. Therefore, you might not be
able to change the value of some system variables using the parameter name instruction.
There are two kinds of data types for a system variable:
• Numeric data type, which can be stored in a register.
• Position data type, which can be stored in a position register. The following data types are
possible:
— Cartesian (xyzwpr)
— Joint (axes J1 through J6)
When a position data type system variable is stored in a position register, the position register
takes on the data type of the system variable.
Note If the system variable you are setting requires a BOOLEAN value (true or false), use 1
for TRUE and 0 for FALSE.
Caution
Do not try to store a numeric system variable in a position register or a
position system variable in a numeric register; otherwise, you will cause
an error message to be displayed.
7–213
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Warning
System variables control how the robot and controller operate. Do not
set system variables unless you are certain of their effect; otherwise,
you could injure personnel, damage equipment, or disrupt the normal
operation of the robot and controller.
$[parameter name] = [value]
The $[parameter name]=[value] instruction allows you to change (write) the value of a system
variable. See Figure 7–135 .
Figure 7–135. Parameter Name Write Instruction
R[ ] / PR[ ] = $[parameter name]
The [value] = $[parameter name] instruction allows you to display (read) the value of a system
variable. See Figure 7–136 .
Figure 7–136. Parameter Name Read Instruction
7.16.11 Maximum Speed Instruction
The maximum speed instructions set the maximum speed of joint motion and linear or circular
motion in the program. If the motion speed exceeds the value designated by this instruction, the
motion speed is limited by the designated value.
If you use a maximum speed instruction and
7–214
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• If a macro program is called, the maximum speed value is set back to the default value.
• If a called macro program sets the maximum speed, the maximum speed value is set back
to the default value when returning to the calling program.
Figure 7–137 and Figure 7–138 show the maximum speed instructions used in a multiple motion
group system.
JOINT_MAX_SPEED[...] = ...
Figure 7–137. JOINT_MAX_SPEED Instruction - Multiple Motion Group Syntax
LINEAR_MAX_SPEED[...] = ...
Figure 7–138. LINEAR_MAX_SPEED Instruction - Multiple Motion Group Syntax
The maximum speed instructions have been shown as they would be used in a multiple motion
group system. The syntax for the commands is shown in Figure 7–139 and Figure 7–140 when
they are used in a single motion group system.
Figure 7–139. JOINT_MAX_SPEED Instruction - Single Motion Group Syntax
7–215
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Figure 7–140. LINEAR_MAX_SPEED Instruction - Single Motion Group Syntax
7.17 MIXED LOGIC INSTRUCTIONS
7.17.1 Overview
The Mixed Logic Instructions option provides any combination of operators and data in TP
program assignment statements, IF statements and WAIT statements. Mixed Logic also supports
the NOT operator (!) and parenthesis ( “(“ and “)” ).
You can specify Mixed Logic instructions through the Register menu, the I/O menu, the
IF/SELECT menu, and the WAIT menu.
Mixed Logic instructions must be specified in parentheses, as follows:
• DO[1]=(DI[1] AND !DI[2])
• IF (DI[1]) JMP,LBL[1]
• WAIT (DI[1])
When the statement does not have parentheses, the statement is executed the same as any other
Logic Instruction.
Mixed logic also provides the additional boolean data types Flag and Marker and the additional
statementTC_Online.
Mixed logic also provides Background Logic, which allows simultaneous, continuous, repeated
execution of as many as eight TP programs containing only assignment statements.
7.17.2 Data Types
The following data types are available for mixed logic instructions:
7–216
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Table 7–19. Data Types
Type
Value
Data
Numerical
The data can have numerical value.
Both integer and real values are
available.
Register, Constant, GI/O, AI/O,
Element of position register ,
Argument, System variable
Boolean
The data can be On or Off
.
DI/O, RI/O, UI/O, SI/O, WI/O, On, Off,
Flag, Marker
Note Position type data and Palletizing type data cannot be specified in mixed logic instructions.
7.17.3 Operators
The following operators are available for mixed logic instructions.
Table 7–20. Arithmetical Operators
Operator
Operation
+
Addition of left side and right side.
-
Subtraction of right side from left side
*
Multiplication of left side and right side.
/
Division of left side and right side.
MOD
Remainder of the division of left side and right side.
DIV
Round off the decimal part of the division of left side and right side.
• Arithmetical operators are used for numerical data only. If numerical operators are used for
boolean data, the INTP-205 Variable Type Mismatch error occurs.
• The output data type of arithmetical operators is always numerical.
Table 7–21. Logical Operators
Operator
Operation
AND
Logical AND of left side and right side.
OR
Logical OR of left side and right side.
!
Logical NOT of left side and right side.
• Logical operators are used for boolean data only. If logical operators are used for numerical
data, the INTP-205 Variable Type Mismatch error occurs.
• The output data type of logical operators is always boolean.
7–217
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Table 7–22. Comparison Operators
Operator
Operation
=
When the left side and right side are equal, returns ON; when unequal, returns
OFF.
<>
When the left side and right side are not equal, returns ON; when equal, returns
OFF.
<
When the left side is less than the right side, returns ON; when greater, returns
OFF.
>
When the left side is greater than the right side, returns ON; when less, returns
OFF.
<=
When the left side is less than the right side, or they are equal, returns ON; when
greater, returns OFF.
>=
When the left side is greater than the right side, or they are equal, returns ON;
when less, returns OFF.
• ”=” and “<>” can be used for both numerical data and boolean data.
• “<”,“>”,“<=”, and “ >=” are used for numerical data only. If they are used for boolean data,
the INTP-205 Variable Type Mismatch error occurs.
The priority of the operators is indicated in the following table.
Table 7–23. Priority of Operators
Priority
Operator
HIGHEST
!
*, /, DIV , MOD
+, —
MEDIUM
<, >, <=, >=
=, <>
AND
LOWEST
OR
7.17.4 Expressions
Mixed logic instructions can be specified in assignment statements, IF statements, and WAIT
statements.
Assignment Statements
The following is an example of a mixed logic assignment statement:
R[1] = ((GI[1] + R[1]) * AI[1])
DO[1] = (DI[1] AND (GI[1] — GI[2]))
7–218
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• The first = from the left indicates an assignment statement. The other =s indicate comparison.
The result of the right side expression is assigned to the left side data.
• When the left side data type is boolean and the result of the right side expression is numerical,
left side data becomes OFF when the right side value is less than 1 and greater than —1; the
left side data becomes ON when the right side value is greater than 1 or less than —1. This
behavior is the same as a normal assignment statement.
• When the left side data type is numerical and the result of the right side expression is boolean,
the left side data becomes 0 when the right side value is OFF, and the left side data becomes 1
when the right side value is ON. This behavior is the same as a normal assignment statement.
• If a real value is assigned to GO, AO, or an integer type system variable, the decimal part
is rounded off.
• “Pulse” cannot be specified in mixed logic instructions. You must use normal logic
instructions to specify “Pulse”.
• Position type data and palletizing type data cannot be specified in the right side or left side
of mixed logic instructions. You must use normal logic instructions to specify position or
palletizing type data.
• The maximum number of items (data or operators) allowed in an assignment statement is
approximately 20. The exact maximum number allowed varies according to data type.
The following data can be specified in the left side of the assignment:
Table 7–24. Data Assignments
Type
Data
Boolean
DO, RO, UO, SO, WO, Flag, Marker
Numerical
Register, GO, AO, element of a position register, system variable
IF Statements
The following is an example of a mixed logic IF statement:
IF (R[1] = (GI[1] + R[1]) * AI[1]) JMP LBL[1]
IF (DI[1] AND (!DI[2] OR DI[3])) JMP LBL[1]
• You can specify mixed logic expressions in the condition part of an IF statement.
• The result of the IF statement must be boolean.
• When the result of the expression is on, the action part of the statement, for example, JMP
LBL, is executed.
• The following statements can be used in the action part of an IF statement when mixed
logic is used in the condition part:
JMP LBL[ ]
CALL
7–219
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Mixed Logic assignment statement
Pulse statement
• Mixed Logic assignment statements and Pulse statements can be specified in the action
part of the IF statement only when the condition part is a Mixed Logic expression. See the
following example:
IF (DI[1]), DO[1]=(On)
IF (DI[2]), DO[1]=Pulse
• The maximum number of items (data or operators) in an IF statement is approximately 20.
The exact maximum number of items varies according to data type.
WAIT Statements
The following is an example of a mixed logic WAIT statement:
WAIT (DI[1] AND (!DI[2] OR DI[3]))
• Mixed Logic expressions can be specified in the condition of a WAIT statement
• The result of the expression must be boolean.
• The WAIT statement waits until the result of the expression becomes ON.
• “On+”,“Off-” and “ERR_NUM” cannot be specified in mixed logic instructions. You must
use normal logic instructions to specify them.
• The maximum number of items (data or operators) in a WAIT statement is approximately 20.
The exact maximum number of items varies according to the data type.
7.17.5 Adding Mixed Logic Instructions
Editing mixed logic statements is more complex than editing normal statements because of the
greater variety of data types and operators that can be used, and the flexibility with which they
can be combined.
To make editing easier, the following functions are provided:
• To begin teaching a mixed logic instruction you must first choose a statement containing
parentheses.
• Item selection menu shows the items available according to the location in the statement.
• When the combination of items is invalid, for example two operators adjoin, empty item is
inserted automatically, and you are prompted to select an item.
• When an item is deleted, the related items are deleted at the same time. For example, an
operator is deleted, the next data is deleted at the same time.
7–220
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• When the cursor is on the item of Mixed Logic expression, if the expression is wrong, an error
message is displayed on the prompt line. The following messages can be displayed.
Table 7–25. Mixed Logic Error Messages
Error Message
Explanation
Parentheses mismatch
The number of left parenthesis and right parenthesis are not same.
Invalid index
Index number is not correct.
Variable type mismatch
Data type is not correct for the operator.
Invalid parameter name
System variable name is not correct.
Untaught element
Empty item (...) exists.
Invalid motion group
The specified motion group of PR[ ] is not available for the program.
Invalid item for output
The left side item of assignment statement is invalid.
Invalid item for Mixed Logic
The item can not be used in Mixed Logical expression.
Syntax error
Invalid statement.
To add Mixed Logic instructions to a program,
1. At the Edit menu, press F1, INST to go to the Instruction menu.
2. Select the kind of instruction you want to add: Register, I/O, IF/SELECT, or WAIT.
3. At the Statement menu, select the Mixed Logic statement, which contains parentheses:
(...)
4. Build the instruction as you normally would.
5. To change an item of a Mixed Logic statement, when the cursor is on the item you want to
change, press F4, CHOICE. The available items will be displayed.
6. You can insert items in any Mixed Logic statement, except for the left side of an Assignment
statement. Press F1, INSERT. An empty item,
“...”
is inserted before the cursor and an item selection menu is displayed.
If you select an operator, an empty item is inserted after the operator, and the data menu is
displayed.
7. You can delete items in any Mixed Logic statement except for the left side of an assignment
statement. Move the cursor to the item and press CHOICE. The DELETE key will be
displayed on F2. If an operand is deleted, the following data item will also be deleted.
8. To add or delete a NOT(!) operator, when the cursor is on a Digital I/O item of a Mixed
Logic expression, except the left side of an Assignment statement, press F5, (!). The NOT(!)
operator will be added or deleted.
7–221
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
9. To change the left side of an Assignment statement when the right side of the Assignment
statement is Mixed Logic instructions, move the cursor to the left side item and press
F4, CHOICE. A menu that includes the items that can be specified in the left side of an
Assignment statement will be displayed.
7.17.6 Background Logic
7.17.6.1 Overview
Background logic allows any teach pendant program that includes only Mixed logic statements to
be executed in the background. The program is executed from beginning to end repeatedly. This
execution is not affected by E-STOP, HOLD, or any alarms.
There are two execution modes in Background Logic, Normal mode and High-level mode.
• In Normal mode, all mixed logic instructions can be executed in the background. The
number of items that can be processed every ITP, (ITP is normally 8 msec) in normal mode, is
dependant on the total number of items to be scanned in Normal and High-Level modes. An
"item" is data, an operator or an allowed instruction.
• In High-Level mode, all mixed logic instructions can be executed in the background. Up
to 540 items are processed every 8 msec.
Refer to Table 7–26 for information on the background logic execution modes.
Use Procedure 7-12 to execute background logic.
Table 7–26. Background Logic Execution Modes
Mode
Max. number of
Items
Scanning time
Available data
Available
operators
Available
Instructions
Normal Mode
No limitation
(Total Num. of
items / 600) * ITP
Number of items
means the
total items in
all background
logic programs.
(Normal and
High). ITP is
normally 8 msec.
F[], M[]*,
DI[], DO[],
AI[], AO[],
GI[],GO[],
SI[], SO[],
UI[], UO[],
RI[], RO[]
WI[], WO[]
On, Off
R[], PR[i.j],
AR[]
Constant
Parameter
Timer, Timer
overrun
(, ), !,
AND, OR,
=, <>,
<, < =, >, >=,
+,—, *, /,
DIV, MOD
All Mixed Logic
Operations
JMP LBL[...]
(Only jumping
in the down
direction),
RUN,
UALRM[...]
High-Level mode
540
8 msec
Same as Normal
Mode
Same as Normal
Mode
Same as Normal
Mode
7–222
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• M[ ] cannot be specified as left side of assignment statement in background logic.
• 8 programs can be executed as Background Logic at the same time.
• If the program includes anything but allowed statements, "INTP-443 Invalid item for Mixed
Logic" error occurs at execution.
• While a program is being executed in the background, the program cannot be edited, and the
program cannot be executed as a normal task. If the program is not running in the background,
it can be run as a normal task in order to test it
• When a program is running in the background, the program cannot be loaded as overwrite.
• If a program is executing as Background Logic at power down, the program is executed at
next power up automatically in the same execution mode.
• The Background Logic execution occurs before than normal program execution. The
Background Logic execution takes about 1 msec in every ITP. The background logic execution
may affect the cycle time of the normal program.
To decrease the execution time of Background Logic, change $MIX_LOGIC.$ITEM_COUNT
to smaller value. The default value of $MIX_LOGIC.$ITEM_COUNT is 600, which is the
number of items processed each ITP.
• Assignment statements with the IF condition can be executed by Background Logic. The
assignment statement is not executed when the condition is OFF. In the following example:
IF (DI[1]), DO[1]=(DI[2])
the value of DO[1] is set to DI[2] when DI[1] is ON, DO[1] is not changed when DI[1] is OFF.
• Pulse instruction can be used in Background Logic. It can be combined with the IF condition
to create an OFF DELAY TIMER. In the example:
IF (DI[1]), DO[1]=Pulse 1sec
DO[1] has 1sec pulse when DI[1] stays ON than 1 sec. If DI[1] turns OFF before 1 sec, DO[1]
turns OFF immediately. While DI[1] is OFF, this statement does not set DO[1].
To keep DO[1] on for 1 sec even if DI[1] turns OFF, use the following statements.
F[1]=(DI[1] OR (F[1] AND DO[1]))
IF (F[1]), DO[1]=Pulse 1sec
• If a Pulse instruction does not specify the time, it will be one scan pulse in Background
Logic execution. In the example:
IF (DI[1]), DO[1]=Pulse
In this case, DO[1] becomes ON for only one scan when DI[1] is changed from OFF to ON.
This can be used as edge detection.
Pulse instruction without time means the pulse of $DEFPULSE in normal execution, so it is
different in Background Logic execution.
7–223
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
You can use the Background Logic screen to set up and execute programs as Background Logic.
Refer to Table 7–27 for a description of each background logic screen item. Table 7–28 lists the
background logic screen operations.
Table 7–27. Background Logic Screen Items
ITEM
DESCRIPTION
PROGRAM
Enter the name of the program you want to execute as background logic.
STATUS
This item displays the status of the background logic program:
MODE
•
Stop: The program is stopped
•
Running: The program is running in Normal mode.
•
Running (High): The program is running in High-Level mode.
Use this item to select the execution mode:
•
Normal: The program is always executed in Normal mode.
Default is "Normal". If you would like to execute the program in High-Level
mode but it is executed in Normal mode, set this item "High".
•
High: The program is always executed in High-Level mode.
Table 7–28. Background Logic Screen Operations
FUNCTION KEY
DESCRIPTION
RUN
Press this key to execute the program as background
logic. If it contains statements that are not available in
background mode, an error will be posted.
STOP
Press this key to stop background execution of the
program.
CLEAR
Press this key to remove a Background logic program from
the list. (The program must be in "STOP" mode before it
can be removed.)
Procedure 7-12 Setting Up Background Logic
1. Press MENU
2. Select 6, SETUP
3. Press F1, TYPE
4. Select BG Logic. You will see a screen similar to the following:
7–224
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Background logic
Normal mode scan time: 8 msec
3/8
PROGRAM
STATUS
MODE
1 LOGIC1
Running
Normal
2 LOGIC2
Stop
High
3 LOGIC3
Running(High) High
4
Stop
Normal
5
Stop
Normal
6
Stop
Normal
7
Stop
Normal
8
Stop
Normal
5. In the PROGRAM column, enter the name of the program you want to run as Background
Logic. Press F4, [CHOICE] to get a listing of programs. Select the desired program from
the list.
The STATUS column will display the status of the background logic program:
• Stop: The program is stopped
• Running: The program is running in Normal mode..
• Running (High): The program is running in High-Level mode.
6. In the MODE column, select the execution mode. Press F4, [CHOICE] to get a listing of
modes. Select the desired mode from the list.
• Normal: The program is always executed in Normal mode.
• High: The program is always executed in High-Level mode.
Note The scanning time of Normal mode execution is displayed on the upper line of the
screen.
7. To run the program as background logic, press F2, RUN.
The program will run. If it contains statements that are not available in background mode, an
error will be posted.
8. To stop background execution of the program, press F3, STOP.
9. To remove a program from background execution, press F5, CLEAR.
7.17.6.2 Flag
Flags (F[ ])are internal I/O ports that can be read and set. They are not connected to any actual I/O
device, they are like a Boolean type variable.
The value of flags can be recovered by Power Failure Recovery function (HOT Start). It is the
same as the other output ports, for example DO.
7–225
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
The following conditions set all Flags to OFF:
• COLD start
• CONTROL start
• INIT start
• I/O assignment is changed, even though in HOT start.
• I/O configuration is changed, even though in HOT start.
DI, DO, UI, UO, GI and GO can be assigned to flags by configuring them as Rack 34, Slot
1, Start point 1-1024.
When UI/UO are assigned to flags, program execution can be controlled by TP program or
Background Logic. For Example:
Rack Slot Start Pt.
UI[1-18] 34 1
1
In this case, when F[6] is changed from ON to OFF, UI[6:START] is changed from ON to OFF,
and the selected program is executed.
To display the Flag monitor menu
1. Press MENU.
2. Select 5 I/O.
3. Press F1, TYPE.
4. Select Flag. You will see a screen similar to the following:
Flag
F[
F[
F[
F[
F[
F[
F[
F[
F[
F[
#
1]
2]
3]
4]
5]
6]
7]
8]
9]
10]
STATUS
ON [
OFF [
OFF [
ON [
OFF [
OFF [
OFF [
OFF [
OFF [
OFF [
1/1024
]
]
]
]
]
]
]
]
]
]
You can change the value of flags in this menu.
5. To display the port detail menu, press F2, DETAIL. You will see a screen similar to the
following:
7–226
MAROUHT9102171E REV F
Port Detail
Flag
Comment:[
7. PROGRAM INSTRUCTIONS
[
1]
]
You can change flag comments at this screen.
Examples of Edge Detection, Counter and Timer in Fast Mode Background Logic
Fast mode has better performance than Normal mode, and Fast mode does not affect the
performance of normal program execution. But Fast mode cannot use numerical operation and
Pulse instruction.
Example 1: Edge Detection
The following program is edge detection of DI[1]. DO[1] becomes ON only when DI[1] is
changed from OFF to ON.
1: DO[1]=(DI[1] AND !F[1])
2: F[1]=(DI[1])
F[1] has the DI[1] value of the previous scan. DO[1] becomes ON when DI[1] is ON and the
previous value of DI[1] is OFF.
Example 2: Counter
The following is the example of 4 bit counter of DI[1] edge. The counter value is set in F[41-44].
You can read the counter value by GI[1] if GI[1] is assigned as rack 34, slot 1, start pt 41 and
points 4.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
F[2]=(DI[1] AND !F[1]) ;
F[1]=(DI[1]) ;
! BIT1 ;
F[3]=(F[41]) ;
F[41]=((F[2] AND !F[3]) OR (!F[2] AND F[3])) ;
F[2]=(F[2] AND F[3]) ;
! BIT2 ;
F[3]=(F[42]) ;
F[42]=((F[2] AND !F[3]) OR (!F[2] AND F[3])) ;
F[2]=(F[2] AND F[3]) ;
! BIT3 ;
F[3]=(F[43]) ;
F[43]=((F[801] AND !F[3]) OR (!F[801] AND F[3])) ;
F[2]=(F[2] AND F[3]) ;
! BIT4 ;
F[3]=(F[44]) ;
F[44]=((F[2] AND !F[3]) OR (!F[2] AND F[3])) ;
F[2]=(F[2] AND F[3]) ;
7–227
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
The first 2 lines the edge detection of DI[1], F[2] becomes ON in one scan when DI[1] is changed
from OFF to ON.
The lines 4-6 process to count up the first bit of the counter (F[41]). F[3] is the work variable to
keep the original value. In line 5, F[41] is reversed when F[2] is ON, and F[41] is not changed
when F[2] is OFF. In line 6, F[2] is turned OFF when the original F[41] is OFF, it means overflow
does not occur.
The lines 8-10 are for the second bit (F[42]), the lines 12-14 are for the third bit (F[43]), and
the lines 16-18 are for the fourth bit (F[44]).
Example 3: Timer
Timer can be programmed by using the counter, because the scanning time of Fast mode is always
8msec. The following is the example of the 80msec Pulse. This program works as same as 'IF
(DI[1]), DO[1]=Pulse 80msec'.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
F[1]=(DI[1]);
F[2]=(F[1] AND !F[4]);
DO[1]=F[2]
! BIT1 ;
F[3]=(F[41]) ;
F[41]=(F[1] AND ((F[2] AND !F[3]) OR (!F[2] AND F[3]))) ;
F[2]=(F[2] AND F[3]) ;
! BIT2 ;
F[3]=(F[42]) ;
F[42]=(F[1] AND ((F[2] AND !F[3]) OR (!F[2] AND F[3]))) ;
F[2]=(F[2] AND F[3]) ;
! BIT3 ;
F[3]=(F[43]) ;
F[43]=(F[1] AND ((F[2] AND !F[3]) OR (!F[2] AND F[3]))) ;
F[2]=(F[2] AND F[3]) ;
! BIT4 ;
F[3]=(F[44]) ;
F[44]=(F[1] AND ((F[2] AND !F[3]) OR (!F[2] AND F[3]))) ;
F[2]=(F[2] AND F[3]) ;
! 80msec is 10 * 8msec. 10=0b1010 ;
F[4]=(F[44] AND !F[43] AND F[42] AND !F[41])
F[1] is the work variable to keep DI[1] value.
All bits of counter (F[41-44]) are cleared when F[1] is OFF.
F[2] is the work variable, the counter value is increased when F[2] is ON.
When the counter value is 10 (F[41]:ON, F[42]:OFF, F[43]:ON, F[44]:OFF), F[4] becomes ON,
and F[2] becomes OFF, so the counter is not increased until DI[1] is turned OFF.
7–228
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.17.6.3 Marker
The Marker Screen allows you to monitor the status of Markers.
Marker (M[ ]) is similar to flag, but the value of markers is not set directly. When Marker (M[ ]) is
specified in the left side of an assignment (=) in a TP program and the statement is executed, the
expressions are defined as Background Logic internally, and the expression is executed repeatedly.
The marker (M[ ]) always has the result of the expression.
By default, the Marker function is disabled, the Marker menu is not displayed, and M[ ] can not be
taught in TP program. To use the Marker function, set $MIX_LOGIC.$USE_MKR to TRUE.
Example:
M[1]=(DI[1] AND DI[2])
After this line is executed in a normal TP program (not in Background Logic), M[1] always
has the result of the right side expression. When both DI[1] and DI[2] are ON, M[1] is ON, in
the other case M[1] is OFF.
• When a Marker assignment statement is executed in a normal TP program, the statement is
registered to Background Logic. The statement is executed as Background Logic until another
expression redefines the marker. Execution of the statement does not stop even though the
program is paused or aborted, because it is Background Logic.
• By default, there are 8 markers (M[1]-M[8]). The number of markers can be changed by
system variable "$MIX_LOGIC.$NUM_MARKERS". Maximum number of markers is 100.
One marker takes 300bytes permanent memory pool.
• The scanning time to calculate a marker assignment statement is the same as the scanning
time of Normal mode Background Logic. Having marker assignment statements defined
affects the scan time of background logic.
• Clear the defined marker expression to stop the calculation. To clear the defined expression,
execute the CLEAR operation in the Marker detail menu or execute the following line of TP
program.
M[1]=()
• If a marker is not assigned to an expression and the marker is used in another statement, the
"INTP-347 Read I/O value failed" error occurs when the marker value is read.
• M[ ] cannot be specified in the left side of assignment statement in Background Logic.
To display the Marker monitor menu
1. Press MENU.
2. Select 5, I/O.
3. Press F1, TYPE.
4. Select Marker. You will see a screen similar to the following:
7–229
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Marker
M[
M[
M[
M[
M[
M[
M[
M[
#
1]
2]
3]
4]
5]
6]
7]
8]
STATUS
ON [
OFF [
OFF [
ON [
OFF [
OFF [
OFF [
OFF [
1/8
]
]
]
]
]
]
]
]
5. To display the port detail menu, press F2, DETAIL. You will see a screen similar to the
following:
Port Detail
Marker
[
1]
Comment:[
]
Expression:
M[1]=((DI[1] OR DI[2]) AND !DI[3]
AND !(DI[4] AND DI[5]))
Monitor:
M [1]
ON
DI[1]
OFF
DI[2]
ON
DI[3]
OFF
DI[4]
OFF
DI[5]
ON
You can change marker comments in this screen.
• The port detail screen displays the defined expression.
To clear the defined expression , press F5, CLEAR. When the message
Clear expression?
is displayed, press F4, YES.
• Current value of every data item in the defined expression is displayed in monitor area.
• You can change marker comments in this screen.
7–230
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.17.6.4 TC_ONLINE
TC_ONLINE is similar to marker. The TC_ONLINE statement defines the expression and the
expression is calculated as Background Logic. While the result of the expression is OFF, all TP
programs that have group motion are stopped.
By default, the TC_ONLINE function is disabled, the TC_ONLINE menu is not displayed and
TC_ONLINE statement can not be taught in TP program. To use TC_ONLINE function, please
set $MIX_LOGIC.$USE_TCOL to TRUE.
For Example:
TC_ONLINE (DI[1] AND DI[2])
After this line is executed, all TP programs are stopped while DI[1] or DI[2] is OFF. Refer
to Table 7–29 .
Table 7–29. TC Online Instruction
TC_ONLINE (...)
Defines the specified Mixed Logic Instructions as a
TC_ONLINE expression and enables the TC_ONLINE
function.
TC_ONLINE DISABLE*
Disable TC_ONLINE function. Any TP program is not
stopped by TC_ONLINE when TC_ONLINE is disabled.
TC_ONLINE ENABLE*
Enable TC_ONLINE function. This is used to enable
TC_ONLINE that is disabled by TC_ONLINE Disable.
* By default, TC_ONLINE DISABLE and TC_ONLINE ENABLE are not available. set
$MIX_LOGOC.$USE_TCOLSIM to FALSE to use these instructions.
• When TC_ONLINE (...) statement is executed, the specified expression is defined as a
TC_ONLINE expression.
While TC_ONLINE is enabled, the defined expression is calculated as Background Logic.
If the result of the expression is OFF, all TP and KAREL programs except NOPAUSE are
stopped.
• If a program is started while TC_ONLINE expression is OFF, the program is paused
immediately. All types of start are affected by TC_ONLINE except Shif+BWD.
• Only when a program is executed by Shift+BWD, the program can be executed even though
TC_ONLINE expression is OFF.
• TC_ONLINE expression is calculated at every ITP (ITP is normally 8msec) even though the
scanning time of Background Logic is longer than ITP.
• Programs that do not have motion group or in which 'ignore pause' parameter is TRUE are not
paused even if TC_ONLINE condition is OFF.
• When $MIX_LOGIC.$USE_TCOLSIM is TRUE (default), TC_ONLINE DISABLE and
TC_ONLINE ENABLE cannot be taught by Edit menu. The setting of ENABLE/DISABLE
of TC_ONLINE should be changed in the TC_ONLINE menu. In this case, TC_ONLINE
7–231
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
is enabled automatically when motion statement execution is completed. This means that
TC_ONLINE is disabled only when the operator moves the robot temporarily.
• When $MIX_LOGIC.$USE_TCOLSIM is FALSE, TC_ONLINE DISABLE and
TC_ONLINE ENABLE can be taught by Edit menu. The setting of ENABLE/DISABLE of
TC_ONLINE is not changed automatically when motion statement execution is completed.
Use Procedure 7-15 to add a TC_ONLINE Instruction. Use Procedure 7-16 to display the
TC_ONLINE Monitor Menu.
Procedure 7-15 Adding a TC_ONLINE Instruction
Steps
1. At the Edit menu, press F1, INST to go to the Instruction menu.
2. Select TC_ONLINE.
If $MIX_LOGIC.$USE_TCOLSIM isTRUE, select the item and complete the statement as
you normally would
If $MIX_LOGIC.$USE_TCOLSIM isFALSE,
a. Select 1 (...).
b. Select the item and complete the statement as you normally would.
3. Tochange a TC_ONLINE statement, press F4, CHOICE, on the first '(' in the TC_ONLINE
statement, then select 2 ENABLE.
Procedure 7-16 Displaying the TC_ONLINE Monitor Menu
Steps
1. Press MENU.
2. Select 5, I/O.
3. Select F1, TYPE.
4. Select TC ONLINE. You will see a screen similar to the following:
7–232
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
TC_ONLINE
1/6
Status:
On
Enable:
TRUE
Expression:
((DI[1] OR DI[2]) AND !DI[3] AND
!(DI[4] AND DI[5]))
Monitor:
DI[1]
ON
DI[2]
OFF
DI[3]
ON
DI[4]
OFF
DI[5]
OFF
• “Enable” line shows whether TC_ONLINE is enabled or not now. User can change this
item in this menu.
• “Status“ line shows the status of TC_ONLINE. It is the result of the defined expression.
• The current value of every data in the defined expression is displayed in monitor area.
• The defined expression is displayed in expression area.
5. To clear the defined expression, move the cursor to Monitor.
a. Press F5, CLEAR. You will see the following prompt:
Clear expression?
b. Press F4, YES.
7.17.7 Backup/Restore
Every data of Mixed Logic Instructions are saved as follows.
• Mixed Logic Instructions are saved in TP file of the program.
• Background Logic program is saved to TP file.
• Setting of Background Logic menu is saved in MIXLOGIC.SV.
MIXLOGIC.SV has the value of the following system variables.
— $MIX_LOGIC
— $MIX_BG
— $MIX_MKR
— $DRYRUN
7–233
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
— $DRYRUN_PORT
— $DRYRUN_SUB
• Comments of Flag and Marker are saved in DIOCFGSV.IO.
• If DI/O, UI/O or GI/O are assigned to flags, the assignment is saved in DIOCFGSV.IO.
7.18 MULTIPLE CONTROL INSTRUCTIONS
Multiple control instructions are used for multi-tasking. Multi-tasking allows you to execute
more than one task at a time.
RUN program
The RUN program instruction causes the selected program to begin to execute immediately. The
parent program continues to execute. See Figure 7–141 .
Figure 7–141. RUN program
7.19 MOTION GROUP INSTRUCTIONS (OPTION)
7.19.1 Overview
Motion group instructions allow you to program multiple motion groups independently of each
other.
Motion group instruction can be used to specify the:
• Motion type for individual groups (except for circular motions)
• Travel speed for individual groups
• Termination type for individual groups
There are two types of motion group instructions:
• Independent motion group instruction Independent GP, Section 7.19.2
• Simultaneous motion group instruction Simultaneous GP, Section 7.19.3
To define an Independent or Simultaneous motion group instruction in a teach pendant program,
refer to Section 7.19.4 .
7–234
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.19.2 Independent Motion Group Instructions
With an Independent motion group instruction, each motion group operates with a separately
taught motion type, speed, and termination type.
The following example shows independent motion for motion groups 1 and 3, with motion mask
[1,*,1,*,*,*,*,*].
Independent GP
GP1 L P[1] 90mm/s CNT 100
GP3 J P[1] 100% CNT 50
7.19.3 Simultaneous Motion Group Instructions
With a simultaneous motion group instruction, each motion group operates with a separately
taught motion type, but with the same time (the longest travel time among all groups based on the
programmed speeds). The termination type for the motion group with the smallest CNT value
(near the FINE value) is also used for the other motion groups.
The following example program shows simultaneous motion for motion groups 1 and 3, with
motion mask [1,*,1,*,*,*,*,*]. The travel time for the motion group with the longest travel time is
also used for the other motion groups. The programmed travel speeds might not always be used.
The termination type value for group 3 (GP3), with the smallest CNT value, is also applied to
group 1 (GP1).
Simultaneous GP
GP1 L P[1] 90mm/s CNT 100
GP3 J P[1] 100% CNT 50
7.19.4 Defining Motion Group Instructions
Procedure 7-17 describes how to define an Independent or Simultaneous motion group instruction.
The example program specifies motion groups 1 and 3,with motion mask [1,*,1,*,*,*,*,*].
Note You cannot define an Independent or Simultaneous motion group instruction for a circular
motion statement or a control statement.
Procedure 7-17 Defining Motion Group Instructions
Conditions
• You cannot specify Independent or Simultaneous motion group instructions for circular
motion instructions.
7–235
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Steps
1. Move the cursor to the line number of any motion statement, except for a circular motion
statement. See the following screen for an example.
PNS0001
1: L P[1] 1000mm/sec Cnt100
[END]
2. Press F1, [INST]. A list of control instructions appears. You will see a screen similar to
the following.
1 .....
5 .....
2 .....
6 Independent GP
3 .....
7 Simultaneous GP
4 .....
8 -- next page -PNS0001
1: L P[1] 1000mm/sec Cnt100
[END]
3. Select Independent GP or Simultaneous GP. The contents of line 1 in the teach pendant
program is transferred to the other groups. The position data might be changed. See the
following screen for an example.
PNS0001
1: Independent GP
: GP1 L P[1] 1000mm/sec Cnt100
: GP3 L P[1] 1000mm/sec Cnt100
4. For a motion instruction already within a Independent or Simultaneous motion group
instruction, change the motion type, speed, and termination type in the same way as for
ordinary motion instructions. Refer to Section 7.2 for more information.
Note You cannot add motion options to an Independent or Simultaneous motion group
instruction after it has been created. All motion options must be added to the Independent or
Simultaneous motion group instruction before it is created. However, you can delete motion
options from an Independent or Simultaneous motion group instruction.
Cautions and Restrictions
When you use the motion group instruction function, observe the following cautions and
restrictions.
7–236
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• If a motion statement is a circular motion, a motion group instruction cannot be specified.
• You cannot add a circular motion type to an Independent or Simultaneous motion group
instruction.
• Within a motion group instruction:
— The position data format for each group cannot be changed (position <-> position register).
— The position number for each group cannot be changed.
— Motion options cannot be added; deletion is possible.
— A group cannot be deleted or created.
• No search can be made for elements in a motion group instruction.
• You cannot perform simultaneous teaching or deletion for the program element replacement
function in a motion group instruction.
• Within a motion group instruction, SHIFT + TOUCHUP> cannot be used to correct the
position.
• If an incremental instruction is deleted from a motion group instruction, the position data used
in the motion group instruction will be uninitialized.
If no motion group instruction has been specified, an ordinary motion instruction is executed. It is
assumed all groups are executed simultaneously with the same motion type, time, termination
type, and motion options. In this case, other groups are synchronized with the group that has the
longest travel time.
7.20 OFFSET/FRAME INSTRUCTIONS
Offset/frame instructions specify positional offset information or the frames used for positional
information. There are five offset instructions:
• Positional offset condition - contains information on the distance or degrees to offset
positional information
• User frame
— Sets the number of the user frame to use
— Defines a user frame
• Tool frame
— Sets the number of the tool frame to use
— Defines a tool frame
If your system is configured to have more than one group, you can set the group mask when you
create any offset instruction that contains a position register. The group mask allows you to
use function keys to specify:
• Whether the group mask will be used. If the group mask is not used, the position register
will affect the default group only.
7–237
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• The group or groups that the position register will affect.
OFFSET CONDITION PR[x] item
The OFFSET CONDITION PR[x] item instruction specifies a position register that contains the
offset information used when the OFFSET command is executed. When a user frame is specified
in UFRAME[y], that user frame is used when the offset command uses the offset specified in
PR[x]. The OFFSET command is entered in the motion instruction. Refer to Section 7.3 for
more information. See Figure 7–142 .
Figure 7–142. Offset Condition
UFRAME_NUM = [value]
The UFRAME_NUM=[value] instruction sets the number of the user frame to use. A value of
zero indicates that no user frame is used. This means that world frame is used. See Figure 7–143
. Refer to the “General Setup” chapter in the Setup and Operations Manual for information on
setting up the user frame.
Note To verify that this feature is enabled, check the value of $USEUFRAME and be sure it is set
to TRUE. Also, make sure the UFRAME number is not zero before you teach data.
Note You must execute the UFRAME_NUM = value instruction after you insert it into a teach
pendant program in order for the subsequent positions to be recorded correctly with respect to
the proper user frame.
Note This instruction can be used only if your system has the Userframe input option installed.
Figure 7–143. UFRAME_NUM=[value]
UTOOL_NUM = [value]
The UTOOL_NUM=[value] instruction sets the number of the tool frame to use. A value of zero
indicates that no tool frame is used. This means that the frame defined by the faceplate coordinates
7–238
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
is used. See Figure 7–144 . Refer to the “General Setup” chapter in the Setup and Operations
Manual for information on setting up the tool frame.
Figure 7–144. UTOOL_NUM=[value]
UFRAME[i] = PR[x]
The UFRAME[i] = PR[x] instruction defines the specified user frame using the information
contained in a position register. See Figure 7–145 .
Figure 7–145. UFRAME[i] = PR[x]
UTOOL[i] = PR[x]
The UTOOL[i] = PR[x] instruction defines the specified tool frame using the information
contained in a position register. See Figure 7–146 .
Figure 7–146. UTOOL[i] = PR[x]
7–239
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.21 PARAMETERS FOR PROGRAM CALL AND MACRO
INSTRUCTIONS
7.21.1 Overview
A parameter is an argument you pass with a program call or MACRO instruction to a
corresponding sub-program or macro program. This is similar to passing a parameter with a
KAREL routine.
In HandlingTool, you can pass parameters to teach pendant programs and macros.
In the example shown in Figure 7–147 , the main program, MAIN.TP, calls the sub program,
PROC_1.TP, and uses two parameters. These parameters can be used in the sub-program as
two argument registers, AR[1] and AR[2] .
Figure 7–147. Parameter Example
To use parameters, you do the following:
1. Define the parameter(s) in the CALL program instruction or macro program instruction.
2. Use the parameters within the sub-program or macro program by including one of the
permitted instructions.
A parameter can be one of the following:
• Constant
• String
• Argument register (AR[ ])
• Register (R[ ])
This section contains information on the following topics:
• Parameter instruction syntax
• String value selections
• Argument registers
• Parameter guidelines
7–240
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
• Including parameters in program call and MACRO instructions
• Including argument registers in sub-programs
7.21.2 Parameter Instruction Syntax
You can use parameters in the following kinds of instructions:
• Program call instructions
• MACRO instructions
Refer to Table 7–30 for example parameter instructions.
Table 7–30. Parameter Instructions
Instruction Name
Example
Program Call instruction
CALL SUBPRG_1(1, R[3], AR[1])
MACRO instruction
Vacuum_Hand_Release(2.5)
Set_UTOOL(1)
Refer to Table 7–31 for example parameter data types.
Table 7–31. Parameter Data Types
Parameter Type
Example
Constant
1, 3.5
String*
'Perch'
Register
R[6]
Argument Register
AR[3]
Program Call Instructions
The syntax of the program call instruction is shown in Figure 7–148 .
Figure 7–148. CALL Program with Parameters
7–241
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
MACRO Instructions
The syntax of the MACRO instruction is shown in Figure 7–149 .
Figure 7–149. MACRO Program with Parameters
7.21.3 String Value Selections
When you program instructions for call parameters and you select string, the subwindow lists
choices. You can control the choices you see in the subwindow by initializing the system variables
summarized in Table 7–32 . There are sets of choices: a top-level category and a lower-level
sub-category.
7–242
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
Table 7–32. String Parameter System Variables
Item
System Variables
Notes
HandlingTool Default Value
String category
Top-level categories:
$ARG_STRING[i].$title
i = 1-10
At least one character, up to
16 characters
$ARG_STRING[1].$title = MENUS
the menu utility option uses this first
entry. Do not make changes here. The
menu utility program will overwrite your
changes.
$ARG_STRING[2].$title = 'PARTS'
$ARG_STRING[3].$title = 'TOOL'
$ARG_STRING[4].$title = 'WORK'
$ARG_STRING[5].$title = 'POS'
$ARG_STRING[6].$title = 'DEV'
$ARG_STRING[7].$title = 'PALT'
$ARG_STRING[8].$title = 'GRIP'
$ARG_STRING[9].$title = 'USER'
$ARG_STRING[10].$title = 'PREG'
String
Lower level
sub-categories:
$ARG_STRING[i ].$item j
i = 1-10
j = 1-20
Up to 16 characters
$ARG_STRING[2].$item1=
'PARTS_ITEM1'
$ARG_STRING[3].$item1 =
'TOOL_ITEM1'
$ARG_STRING[4].$item1 =
'WORK_ITEM1'
$ARG_STRING[5].$item1 =
'POS_ITEM1'
$ARG_STRING[6].$item1 =
'DEV_ITEM1'
$ARG_STRING[7].$item1 =
'PALT_ITEM1'
$ARG_STRING[8].$item1 =
'GRIP_ITEM1'
$ARG_STRING[9].$item1 =
'USER_ITEM1'
$ARG_STRING[10].$item1 =
'PREG_ITEM1'
Function key
label "Words"
displayed for
F1-F5 keys
when you select
parameter
string, F5,
STRINGS.
$ARG_WORD[i]
i = 1-5
Up to 7 characters
$ARG_WORD[1] = '$'
$ARG_WORD[2] = '['
$ARG_WORD[3] = ']'
7–243
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
7.21.4 Argument Registers
When you refer to a parameter within a sub-program or macro program, you refer to it as an
argument register. From left to right in the instruction, the first parameter is AR[1], the second
parameter is AR[2], and so forth. See Figure 7–150 .
Figure 7–150. Argument Registers
You can use the argument registers in specific instructions in the sub-program or macro program.
Table 7–33 lists the kinds of instructions that can use argument registers.
Table 7–33. Instructions That Can Use AR[]
You Can Use an Argument Register...
Example
On the right side of an assignment instruction
R[1] =AR[1] + R[2] + AR[4]
IF R[1] =AR[1] AND R[2] = AR[4] , JMP LBL[1]
GO[1] =AR[2]
IF R[7] =AR[1] , JMP LBL[1]
WAIT AI[1] <>AR[2] , JMP LBL[1]
UFRAME_NUM =AR[3] UTOOL_NUM = AR[4]
As an indirect index in an instruction
R[AR[1] ] = R[ AR[2] ]
DO[AR[1] ] = ON
As a parameter for program call instruction
CALL SUBPRG_1(AR[5] )
As a parameter for MACRO instruction
Hand 3 Release (AR[1] ]
Note You cannot use an argument register as the index for an indirect register, as follows:
Not allowed:
R[ R[ AR[1] ] ]
Allowed:
AR[ [ AR[1] ]
7–244
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
7.21.5 Guidelines for Using Parameters
Follow the guidelines in this section to use parameters correctly and avoid errors.
Use No More than Ten Parameters in an Instruction
You can use up to ten parameters in a program call or MACRO program instruction.
See Figure 7–151 for an example.
Figure 7–151. Use No More than Ten Parameters in an Instruction
Make Sure Data Types Match
The parameter type in AR[ ] must match the data type in the sub-program or macro program
instruction.
The compatibility of data types between parameters used in the main program and sub-program is
not checked until the main program is executed. If the data type specified in the main program
does not match how the argument register is used in the sub-program, an error will occur.
In the example shown in Figure 7–152 , if string data is stored in AR[2] as defined in the main
program, when the instruction R[3] = AR[2] is executed in the sub-program, an alarm occurs.
Figure 7–152. Make Sure Data Types Match
Define All Required Elements of the Parameters You Add
You must define all required elements of a parameter you add to an instruction in the main program.
7–245
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
Registers and argument registers require index numbers. Constants and strings require values.
In the examples shown in Figure 7–153 , the constant parameter has not been specified and the
register index has not been defined. When the sub-program is executed, an error will occur.
Figure 7–153. Define All Parameter Elements
In a Sub-Program, Use Parameters Defined in the Main Program
Argument registers used in a sub-program must be defined in the corresponding main program.
In the example shown in Figure 7–154 , the program MAIN sets only one parameter, but the
sub-program PROC_1 uses a second parameter (AR[2]). The sub-program cannot use a parameter
that has not been defined. When that instruction is executed, an error will occur.
Figure 7–154. Use Parameters Defined in the Main Program
In a Main Program, You Can Define Parameters that are Not Used in the
Sub-Program
Parameters can be defined in the main program that are not used in the sub-program.
You can use this feature to pass optional parameters. The sub-program can provide branches that
process a parameter only if it exists.
Execute Sub-Programs or Macro Programs only from Main Programs
Sub-programs or MACRO programs that use argument registers can be executed from the
corresponding main programs only.
7–246
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
You cannot execute a sub-program that uses AR[ ] values unless the sub-program is called from a
main program. The main program supplies the values of the parameters used in the sub-program.
If you execute the sub-program independently of the main program, the parameters will not have
any values, and the following error is displayed: "INTP-288 Parameter does not exist." Therefore,
the sub-program that uses the parameters cannot be executed.
7.21.6 Including Parameters in Program Call and Macro Instructions
Use Procedure 7-18 to include parameters in program call and MACRO instructions.
Procedure 7-18 Including Parameters in Program Call and MACRO Instructions
Conditions
• You have created a teach pendant program.
• This program is not a process program.
Steps
1. Select the program you want to edit.
2. Press ENTER.
3. Insert a call program or MACRO instruction.
4. To add a parameter to an instruction that has no parameters,
a. Move the cursor to the program call or MACRO program instruction to which you
want to add parameters.
b. Press the right arrow key to move the cursor to the end of the instruction as shown
in the following screen.
5: CALL PROC_1
c. Press F4, [CHOICE].
d. Select the kind of parameter you want to insert:
• To insert a constant parameter, go to Step 9 .
• To insert a string parameter, go to Step 10 .
7–247
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV F
• To insert an argument register (AR[]) parameter, go to Step 11 .
• To insert aregister (R[ ]) parameter, go to Step 7 .
5. To insert a parameter in an instruction that has other parameters,
a. Move the cursor to the program call or MACRO program instruction in which you
want to insert a parameter.
b. Move the cursorto the right of where you want to insert the parameter. See Figure
7–155 .
Figure 7–155. Cursor Position to Insert Parameters
c. Press F4, [CHOICE].
d. If you are inserting a parameter between existing parameters, select < Insert>.
Otherwise, continue to Step 5 Step 5e .
e. Select the kind of parameter you want to insert:
• To insert a constant parameter, go to Step 9 .
• To insert a string parameter, go to Step 10 .
• To insert an argument register (AR[]) parameter, go to Step 11 .
• To insert a register (R[ ]) parameter, go to Step 7 .
6. To delete a parameter,
7–248
MAROUHT9102171E REV F
7. PROGRAM INSTRUCTIONS
a. Move the cursor to the program call or MACRO program instruction in which you
want to delete a parameter.
b. Move the cursor to the parameter you want to delete.
c. Press F4, [CHOICE].
d. Select <None>.
Note If no parameter is set for the instruction or the cursor is on ")" on the end of the
line, no parameter will be deleted and the sub-menu will be closed.
7. To insert a register (R[]) parameter,
a. Select R[ ].
b. Type the index of the register and press ENTER.
8. To insert an indirect register (R[AR[ ]]orR[R[]]) parameter,
a. Select R[ ].
b. To change the index between an R[ ] and an AR[ , move the cursor to the register
and press F3, INDIRECT, repeatedly. The index will be changed as follows:
R[ R[...] ] -> R[ AR[...] ] -
Download