FANUC America Corporation
SYSTEM R-30iB Plus/R-30iB
Mate Plus/R-30iB Compact
Plus HandlingTool
Setup and Operations Manual
MAROUHT9102171E REV E
Version 9.10 series
© 2018 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
i
About This Manual
MAROUHT9102171E REV E
FANUC America Corporation
3900 W. Hamlin Road
Rochester Hills, MI 48309-3253
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.
ii
MAROUHT9102171E REV E
About 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
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.
iii
About This Manual
MAROUHT9102171E REV E
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.
Note Information appearing next to NOTE concerns related information or useful hints.
iv
Contents
About This Manual
Safety
.................................................................................................................................
................................................................................................................................................
QUICK REFERENCE
.......................................................................................................................
i
lxix
lxxvii
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 .......................................................................................... 1–1
OVERVIEW .................................................................................................................... 1–2
ROBOT ........................................................................................................................... 1–2
Robot Overview ................................................................................................................. 1–2
Robot Models .................................................................................................................... 1–3
HandlingTool End-of-Arm Tooling (EOAT) ............................................................................ 1–3
Extended Axes .................................................................................................................. 1–4
CONTROLLER ................................................................................................................. 1–5
Controller Overview .......................................................................................................... 1–5
Standard Operator Panel ..................................................................................................... 1–9
MODE SELECT Switch ................................................................................................... 1–12
Robot Stop Variation ......................................................................................................... 1–15
User Operator Panel (UOP) ................................................................................................ 1–16
Emergency Stop Devices ................................................................................................... 1–16
Communications ............................................................................................................. 1–17
Input/Output (I/O) ........................................................................................................... 1–18
Remote I/O Interfaces ....................................................................................................... 1–19
Motion .......................................................................................................................... 1–19
Extended Axes ................................................................................................................ 1–20
Controller Backplane ........................................................................................................ 1–20
Memory ........................................................................................................................ 1–21
Line Tracking ................................................................................................................. 1–23
FANUC SOFTWARE ...................................................................................................... 1–23
STARTUP (AND POWER OFF) OF THE ROBOT ................................................................ 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
iPENDANT OPERATIONS ............................................................................................ 2–1
OVERVIEW ...................................................................................................................... 2–3
TEACH PENDANT SWITCHES........................................................................................... 2–4
SCREEN NAVIGATION...................................................................................................... 2–6
Touch/Non-Touch Screen ..................................................................................................... 2–6
Screen Backlighting .......................................................................................................... 2–10
Zoom.............................................................................................................................. 2–11
Related View Menu ........................................................................................................... 2–12
Maximize/Restore ............................................................................................................. 2–12
Window Display ............................................................................................................... 2–14
Browser Guidelines ......................................................................................................... 2–21
v
Contents
vi
MAROUHT9102171E REV E
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
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
Changing Focus ............................................................................................................... 2–26
Color Setup .................................................................................................................... 2–27
TEACH PENDANT KEYS ................................................................................................ 2–28
HAPTIC iPENDANT ........................................................................................................ 2–39
Overview ........................................................................................................................ 2–39
Hardware/Software Requirements, Application Tools .............................................................. 2–40
Testing the Haptic iPendant ................................................................................................. 2–41
Configuring the Haptic iPendant .......................................................................................... 2–42
Haptic Log ...................................................................................................................... 2–44
Common Haptic Functions ................................................................................................. 2–44
Material Handling Haptic Functions ..................................................................................... 2–52
STATUS.......................................................................................................................... 2–59
Status Bar Displays .......................................................................................................... 2–59
Status indicators .............................................................................................................. 2–61
LEDs ............................................................................................................................ 2–61
Display Equip ................................................................................................................. 2–61
HELP ............................................................................................................................. 2–62
MORE INFO ................................................................................................................... 2–62
Help and Diagnostics ....................................................................................................... 2–62
ADDITIONAL iPENDANT FUNCTIONS ............................................................................ 2–64
Document Viewer ............................................................................................................. 2–64
Menu Favorites ................................................................................................................ 2–67
Menu History .................................................................................................................. 2–71
Multi-Pane Edit ............................................................................................................... 2–71
Other iPendant Guidelines ................................................................................................ 2–72
Popup Menus .................................................................................................................. 2–73
Screen Customizations ...................................................................................................... 2–74
Software Keyboard ........................................................................................................... 2–90
Top Menu ....................................................................................................................... 2–101
Universal Serial Bus (USB) Port ....................................................................................... 2–108
User Views .................................................................................................................... 2–108
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
.............................................................................................................. 3–1
iHMI GUIDE NAVIGATION ................................................................................................ 3–2
The First Time you use iHMI Guided Setup ............................................................................. 3–2
How to Use iHMI Setup Guides ............................................................................................. 3–3
BASIC SETUP ................................................................................................................. 3–10
Overview ........................................................................................................................ 3–10
Initial Setup ..................................................................................................................... 3–11
End of Arm Tool Setup ...................................................................................................... 3–12
TEACH .......................................................................................................................... 3–14
Creating a Program ........................................................................................................... 3–14
Selecting a Program .......................................................................................................... 3–14
RUN .............................................................................................................................. 3–15
Monitoring a Running Program ........................................................................................... 3–15
UTILITY ........................................................................................................................ 3–17
Backup ........................................................................................................................... 3–17
Jog Assist ........................................................................................................................ 3–17
Tutorials.......................................................................................................................... 3–19
Chapter 4
4D FUNCTIONALITY
.................................................................................................... 4–1
MAROUHT9102171E REV E
Contents
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
OVERVIEW ..................................................................................................................... 4–2
Introduction ....................................................................................................................... 4–2
Navigation ......................................................................................................................... 4–5
Basic Display Concepts ........................................................................................................ 4–9
Selected Program .............................................................................................................. 4–11
Frames ............................................................................................................................ 4–11
Groups ............................................................................................................................ 4–12
USER INTERFACE SCREENS .......................................................................................... 4–12
VIEWING 4D SCENES ..................................................................................................... 4–12
ADJUSTING THE VIEW .................................................................................................. 4–14
VISUAL JOG .................................................................................................................. 4–22
EDIT NODE MAP SCREEN .............................................................................................. 4–27
SELECT SCREEN ............................................................................................................ 4–30
VIEWING TWO DIFFERENT PROGRAMS ........................................................................ 4–31
PROGRAM UTILITIES .................................................................................................... 4–33
TCP TRACE ................................................................................................................... 4–35
FRAME SETUP .............................................................................................................. 4–37
POSITION REGISTERS ................................................................................................... 4–38
REMOTE CONTROLLER DISPLAY .................................................................................. 4–39
DCS 4D VISUALIZATION ............................................................................................... 4–42
4D CUSTOMIZATION ...................................................................................................... 4–43
ACCESSING THE 4D DISPLAY FROM A PC ...................................................................... 4–44
View Adjustment Mode ..................................................................................................... 4–45
Scene Visibility ................................................................................................................ 4–46
4D GRAPHICS IMPORT ................................................................................................... 4–46
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
JOGGING THE ROBOT .............................................................................................. 5–1
Overview ......................................................................................................................... 5–2
Visual Jog.......................................................................................................................... 5–2
Jog Speed .......................................................................................................................... 5–2
Coordinate Systems ............................................................................................................. 5–4
Wrist Jogging ..................................................................................................................... 5–8
Remote TCP Jogging (Option) .............................................................................................. 5–8
Motion Groups ................................................................................................................... 5–9
Jog Menu ........................................................................................................................ 5–10
Extended Axes and Sub-Groups ........................................................................................... 5–12
Overview ........................................................................................................................ 5–12
J7 and J8 Jog Keys ............................................................................................................ 5–13
Jogging the Robot and Other Axes ....................................................................................... 5–18
Jogging the Robot without the Teach Pendant ......................................................................... 5–23
Chapter 6 FRAMES ......................................................................................................................
6.1 Frames Overview ..............................................................................................................
6.2 How Frames are Used ..........................................................................................................
6.3 Using the Right-Hand Rule to Understand Robot Frames ............................................................
6–1
6–2
6–2
6–4
vii
Contents
viii
MAROUHT9102171E REV E
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
Frame Types ...................................................................................................................... 6–6
World Frame ...................................................................................................................... 6–6
Tool Frame ........................................................................................................................ 6–7
Tool Frame General Information ............................................................................................ 6–7
Setting Up a Tool Frame..................................................................................................... 6–10
Selecting a Tool Frame ..................................................................................................... 6–38
User Frame ...................................................................................................................... 6–40
Overview ........................................................................................................................ 6–40
Setting Up a User Frame .................................................................................................... 6–43
Selecting a User Frame ...................................................................................................... 6–61
Remote TCP Frame ........................................................................................................... 6–63
Setting Up a Remote TCP Frame ........................................................................................ 6–63
Jog Frame........................................................................................................................ 6–73
Setting Up Jog Frame ....................................................................................................... 6–73
Selecting a Jog Frame ...................................................................................................... 6–85
Cell Frame and Cell Floor .................................................................................................. 6–86
Cell Frame Setup .............................................................................................................. 6–87
Cell Floor Setup ............................................................................................................... 6–92
Saving Frame Data ............................................................................................................ 6–93
Frame Visualization........................................................................................................... 6–95
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
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–39
Position Confirmation ...................................................................................................... 7–40
Motion Status Display ...................................................................................................... 7–41
Frame Number of Positional Data ....................................................................................... 7–50
Switch Frame Check Type ................................................................................................ 7–51
Speed ............................................................................................................................ 7–52
Termination Type ............................................................................................................ 7–60
MOTION OPTIONS INSTRUCTION .................................................................................. 7–62
Acceleration Override ...................................................................................................... 7–64
Advanced Constant Path ................................................................................................... 7–65
Break ............................................................................................................................ 7–84
Constant Path ................................................................................................................. 7–84
Coordinated Motion .......................................................................................................... 7–95
Corner Distance Control Option ........................................................................................... 7–96
Extended Velocity EV Motion Option ................................................................................ 7–108
FacePlate Linear .............................................................................................................. 7–110
Incremental Motion ........................................................................................................ 7–112
Minimal Rotation (HandlingTool Only) .............................................................................. 7–113
Offset ........................................................................................................................... 7–115
Offset Position Register ................................................................................................... 7–115
ORNT_BASE ................................................................................................................. 7–116
Remote TCP Motion Option (optional) ............................................................................... 7–120
Search [ ] Motion Option ................................................................................................. 7–122
Skip Jump ...................................................................................................................... 7–123
MAROUHT9102171E REV E
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
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
Contents
Skip Label ....................................................................................................................
Time Before / Time After .................................................................................................
Tool_offset ....................................................................................................................
Tool offset position register ..............................................................................................
Wrist Joint ....................................................................................................................
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 ..............................................................................
7–124
7–125
7–126
7–127
7–129
7–129
7–132
7–132
7–133
7–134
7–134
7–135
7–135
7–136
7–139
7–145
7–152
7–160
7–168
7–168
7–171
7–171
7–171
7–172
7–173
7–173
7–173
7–173
7–175
7–179
7–189
7–190
7–193
7–193
7–193
7–195
7–200
7–204
7–206
7–206
7–206
7–208
7–210
7–210
7–211
7–214
7–214
7–215
7–215
7–217
7–223
ix
Contents
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
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
x
MAROUHT9102171E REV E
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 ......................................................................................
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 .........................................................................................................
7–224
7–225
7–226
7–227
7–227
7–227
7–227
7–228
7–229
7–229
7–229
7–231
7–231
7–232
7–234
7–235
7–235
7–236
7–236
7–238
7–240
7–241
7–254
7–254
7–255
7–255
7–255
7–256
7–256
7–258
7–261
7–261
7–262
7–264
7–266
7–267
7–269
7–273
7–274
7–276
7–276
7–278
7–280
7–284
7–284
7–284
7–286
7–289
7–290
7–290
7–290
MAROUHT9102171E REV E
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
7.33.3
7.33.4
7.33.5
7.33.6
7.33.7
7.33.8
7.33.9
7.33.10
7.33.11
7.33.12
7.33.13
7.33.14
7.33.15
7.33.16
7.33.17
7.33.18
7.33.19
7.33.20
7.33.21
7.33.22
7.33.23
7.33.24
7.33.25
7.34
Contents
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 ...................................................................
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 ..................................................................................................
Chapter 8 CREATING A PROGRAM
............................................................................................
8.1 OVERVIEW ....................................................................................................................
8.2 PLANNING A PROGRAM ................................................................................................
7–290
7–291
7–291
7–292
7–292
7–292
7–293
7–296
7–296
7–296
7–297
7–297
7–301
7–304
7–304
7–305
7–306
7–307
7–308
7–309
7–310
7–311
7–311
7–311
7–312
7–312
7–313
7–313
7–314
7–314
7–315
7–315
7–316
7–316
7–317
7–317
7–318
7–318
7–319
7–319
7–320
7–320
7–321
7–322
7–323
7–323
7–324
7–324
8–1
8–3
8–3
xi
Contents
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
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
xii
MAROUHT9102171E REV E
Overview ......................................................................................................................... 8–3
Robot Motion ................................................................................................................... 8–3
Special Positions ............................................................................................................... 8–4
CREATING AND NAMING A PROGRAM .......................................................................... 8–7
Naming a Program ............................................................................................................ 8–7
Creating a New Program ...................................................................................................... 8–9
Select Screen and Operations .............................................................................................. 8–12
ADDING INSTRUCTIONS AND EDITING A PROGRAM .................................................... 8–13
Overview ........................................................................................................................ 8–13
Adding Instructions to a Program ......................................................................................... 8–14
Editing a Program ........................................................................................................... 8–16
PROGRAM DETAIL INFORMATION ............................................................................... 8–34
Overview ....................................................................................................................... 8–34
Creation Date ................................................................................................................. 8–39
Modification Date ........................................................................................................... 8–39
Copy Source ................................................................................................................... 8–40
Positions and Program Size ............................................................................................... 8–40
Program Name ................................................................................................................ 8–40
Sub Type ....................................................................................................................... 8–41
Program Comment .......................................................................................................... 8–42
Group Mask ................................................................................................................... 8–43
Write Protection .............................................................................................................. 8–43
Ignore Pause ................................................................................................................... 8–44
Stack Size ...................................................................................................................... 8–44
Collection ........................................................................................................................ 8–44
No-Disp Sub-Program ....................................................................................................... 8–45
Application Mask ............................................................................................................ 8–45
Program Type ................................................................................................................. 8–46
Multi-Arm Main ............................................................................................................. 8–46
Head of Family ............................................................................................................... 8–46
Family Members ............................................................................................................. 8–46
Procedure for Accessing and/or Changing Program Detail Information........................................ 8–47
COLLECTIONS ............................................................................................................... 8–50
Overview ........................................................................................................................ 8–50
Adding to a Collection ....................................................................................................... 8–50
Displaying a Collection ...................................................................................................... 8–52
LINE NUMBER AND PROGRAM END MARKER ............................................................. 8–53
MACROS ...................................................................................................................... 8–53
Overview ....................................................................................................................... 8–53
Writing a Macro ............................................................................................................... 8–54
Setting Up Macros ........................................................................................................... 8–54
Executing Macros ........................................................................................................... 8–59
Assigning I/O and Recording Positions in Macro Command Programs ...................................... 8–62
HandlingTool Macro Commands ........................................................................................ 8–63
Creating a Macro Program ................................................................................................ 8–66
ICON (TOUCH PANEL) EDITOR ....................................................................................... 8–66
Displaying/Exiting the Icon (Touch Panel) Editor .................................................................... 8–66
Using the Icon Editor ......................................................................................................... 8–68
MODIFYING A PROGRAM IN THE BACKGROUND (BACKGROUND EDITING) ............... 8–74
Overview ....................................................................................................................... 8–74
Background Edit Process Flow .......................................................................................... 8–75
Background Editing Using the iPendant ............................................................................... 8–77
Modifying a Program in the Background ............................................................................. 8–78
MAROUHT9102171E REV E
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
Contents
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–80
8–82
8–83
8–86
8–88
8–88
8–88
8–89
8–89
8–90
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
9.5.3
9.5.4
9.5.5
9.6
9.6.1
9.6.2
9.6.3
9.7
TESTING A PROGRAM AND RUNNING PRODUCTION .............................................. 9–1
OVERVIEW .................................................................................................................... 9–2
PROGRAM PAUSE AND RECOVERY ................................................................................ 9–3
Program Pause and Recovery Overview ................................................................................. 9–3
EMERGENCY STOP and Recovery ..................................................................................... 9–3
HOLD and Recovery ......................................................................................................... 9–5
Setting Tolerance for Resuming a Program ............................................................................. 9–7
Disable Fault Checking .................................................................................................... 9–11
TEST CYCLE ................................................................................................................ 9–15
Test Cycle Overview ........................................................................................................ 9–15
Test Cycle Setup ............................................................................................................. 9–16
Single Step Testing .......................................................................................................... 9–18
Continuous Testing .......................................................................................................... 9–24
Monitoring Programs ....................................................................................................... 9–28
RELEASE WAIT ............................................................................................................ 9–29
PRODUCTION OPERATION ........................................................................................... 9–30
Production Operation Overview ......................................................................................... 9–30
Standard Operator Panel Cycle Start Production .................................................................... 9–32
User Operator Panel Start ................................................................................................. 9–33
Robot Service Request (RSR) Production Start ..................................................................... 9–35
Program Number Select (PNS) and UOP Production Start ....................................................... 9–36
ADJUSTING A PROGRAM (PROG ADJUST) .................................................................... 9–38
Overview ....................................................................................................................... 9–38
Adjusting a Program or a Schedule ..................................................................................... 9–38
Error Handling ................................................................................................................ 9–46
MAINTENANCE AND REPAIR ....................................................................................... 9–48
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
GENERAL SETUP ....................................................................................................
PRODUCTION OPERATION SETUP ................................................................................
Production Operation Setup Overview .................................................................................
Robot Service Request (RSR) Setup ...................................................................................
Program Number Select (PNS) Setup .................................................................................
Style Name Setup ...........................................................................................................
OTHER Program Select Mode ..........................................................................................
AXIS LIMITS SETUP ....................................................................................................
BRAKE TIMERS SETUP ...............................................................................................
GENERAL SETUP SCREEN ...........................................................................................
Overview ......................................................................................................................
Brake on Hold Setup .......................................................................................................
Current Language Setup ..................................................................................................
10–1
10–3
10–3
10–8
10–12
10–18
10–24
10–25
10–27
10–33
10–33
10–33
10–34
xiii
Contents
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
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
xiv
MAROUHT9102171E REV E
Ignore Offset Setup ......................................................................................................... 10–35
Ignore Tool Offset Setup .................................................................................................. 10–36
Enable VOFFSET Setup .................................................................................................. 10–37
USER ALARM SETUP .................................................................................................. 10–38
OVERRIDE SELECT SETUP .......................................................................................... 10–41
PASSWORD SETUP ...................................................................................................... 10–43
Password Operations Overview ......................................................................................... 10–43
Install User Password Operations ...................................................................................... 10–45
Disabling Passwords ....................................................................................................... 10–48
Disabling Passwords without INSTALL login ....................................................................... 10–49
Program and Set Up User Password Operations .................................................................... 10–50
Configuring Passwords .................................................................................................... 10–54
Password Log ................................................................................................................ 10–72
Password Level Screen Permissions .................................................................................... 10–74
USB Password Function .................................................................................................... 10–76
Using KCL with Passwords Enabled .................................................................................. 10–78
Password Auto Login Function ........................................................................................... 10–80
ERROR SEVERITY TABLE ........................................................................................... 10–81
Error Severity Table Overview .......................................................................................... 10–81
Modifying Error Severity ................................................................................................. 10–81
ERROR CODE OUTPUT SETUP (OPTION) ...................................................................... 10–86
Error Code Output Setup Overview ................................................................................... 10–86
Method 1: Output Errors Using 33 Digital Outputs ............................................................... 10–87
Method 2: Output Errors Using 3 Group Outputs ................................................................. 10–91
Output Error Parameters .................................................................................................. 10–93
Procedure ..................................................................................................................... 10–93
ROBOT PAYLOAD SETTING ......................................................................................... 10–94
Overview ...................................................................................................................... 10–94
Setting the Active Payload Schedule .................................................................................. 10–95
Setup of Payload Schedules .............................................................................................. 10–97
Using Payload Ident. (J669) to Set Up Payload Schedules .................................................... 10–101
Setting Up Arm Load Information ................................................................................... 10–114
STROKE LIMIT SETUP ............................................................................................... 10–115
SYSTEM CONFIGURATION SETUP ............................................................................. 10–117
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 ..........................................................................................................
11–1
11–3
11–3
11–3
11–4
11–6
11–7
11–9
11–9
11–9
11–10
11–16
11–19
11–23
11–23
11–23
MAROUHT9102171E REV E
Contents
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 .................................................................................................
Overview .......................................................................................................................
Creating and Editing Visual Diagnostic Screens .....................................................................
Managing Screens ............................................................................................................
Viewing Visual Diagnostic Screens .....................................................................................
11–25
11–25
11–26
11–28
11–30
11–34
11–36
11–37
11–38
11–41
11–43
11–44
11–46
11–46
11–47
11–50
11–51
11–52
11–52
11–53
11–54
11–61
11–62
11–64
11–67
11–68
11–70
11–70
11–71
11–74
11–75
11–77
11–82
11–82
11–84
11–96
11–99
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–1
12–3
12–3
12–9
12–9
12–11
12–16
12–20
12–24
12–25
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
11.24.1
11.24.2
11.24.3
11.24.4
xv
Contents
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–25
12–26
12–28
12–29
12–31
12–32
12–34
12–35
12–36
12–36
12–42
12–44
12–45
12–51
12–57
12–57
12–59
12–60
12–62
12–63
12–67
12–67
12–67
12–68
12–73
12–75
12–75
12–76
12–79
12–82
12–82
12–82
12–86
12–86
12–88
INPUT/OUTPUT (I/O) SETUP ....................................................................................
OVERVIEW ..................................................................................................................
Overview .......................................................................................................................
Hardware .......................................................................................................................
Kinds of I/O ...................................................................................................................
SETTING UP I/O ............................................................................................................
Overview .......................................................................................................................
Configuring I/O ..............................................................................................................
Adding Comments About I/O ...........................................................................................
Complementary Output Signals and Polarity ........................................................................
Simulating I/O ...............................................................................................................
Controlling Outputs ........................................................................................................
Memory Image Port Assignment .......................................................................................
Procedure for Setting Up I/O ............................................................................................
Custom I/O ...................................................................................................................
DISTRIBUTED (MODEL B) I/O SETUP ...........................................................................
13–1
13–3
13–3
13–3
13–3
13–5
13–5
13–6
13–10
13–10
13–10
13–10
13–11
13–11
13–27
13–29
Chapter 13
13.1
13.1.1
13.1.2
13.1.3
13.2
13.2.1
13.2.2
13.2.3
13.2.4
13.2.5
13.2.6
13.2.7
13.2.8
13.2.9
13.3
xvi
MAROUHT9102171E REV E
MAROUHT9102171E REV E
Contents
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–29
13–31
13–34
13–36
13–37
13–41
13–45
13–45
13–45
13–45
13–46
13–47
13–47
13–50
13–52
13–60
13–61
13–67
13–67
13–68
13–69
13–70
13–72
13–72
13–74
13–80
13–83
13–83
13–84
13–91
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 ......................................................................................................................
Features ........................................................................................................................
Limitations ...................................................................................................................
I/O Interface ..................................................................................................................
Setup ...........................................................................................................................
Programming ................................................................................................................
14–1
14–9
14–9
14–11
14–12
14–15
14–17
14–18
14–19
14–25
14–25
14–26
14–30
14–31
14–31
14–31
14–33
14–34
14–35
14–42
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
14.4.2
14.4.3
14.4.4
14.4.5
14.4.6
xvii
Contents
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
14.12.6
xviii
MAROUHT9102171E REV E
Testing ......................................................................................................................... 14–46
Error Recovery Manual Function ...................................................................................... 14–46
I/O Timing Sequence ...................................................................................................... 14–49
AUXILIARY AXIS SERVO OFF (LOCAL STOP) FUNCTION .............................................. 14–54
Specifications .................................................................................................................. 14–55
Limitations ..................................................................................................................... 14–58
Settings .......................................................................................................................... 14–58
Additional Information ..................................................................................................... 14–62
Programming .................................................................................................................. 14–63
BRAKE CHECK FUNCTION ........................................................................................... 14–67
Overview ....................................................................................................................... 14–67
Setup ............................................................................................................................. 14–67
Start Brake Check ............................................................................................................ 14–68
Result of Brake Check ...................................................................................................... 14–69
Limitations ..................................................................................................................... 14–69
Caution .......................................................................................................................... 14–70
CENTER FINDER ......................................................................................................... 14–70
Overview ...................................................................................................................... 14–70
Using Center Finder ........................................................................................................ 14–71
Troubleshooting ............................................................................................................. 14–79
COLLISION DETECTION FOR AUXILIARY AXIS ............................................................ 14–79
Overview ....................................................................................................................... 14–79
Initial Setting .................................................................................................................. 14–80
Tuning Procedure ............................................................................................................. 14–80
COLLISION GUARD ..................................................................................................... 14–82
Overview ...................................................................................................................... 14–82
Limitations ................................................................................................................... 14–83
Falsely Detected Collisions .............................................................................................. 14–83
Setup ........................................................................................................................... 14–83
Programmed Motion ....................................................................................................... 14–85
COLLISION RECOVERY (formerly known as Automatic Collision Recovery) ......................... 14–89
Overview ...................................................................................................................... 14–89
Enabling and Disabling Collision Recovery ......................................................................... 14–89
Collision Recovery Setup ................................................................................................. 14–90
Mode 1 of Collision Recovery .......................................................................................... 14–92
Mode 2 of Collision Recovery .......................................................................................... 14–93
Limitations ................................................................................................................... 14–95
CONDITION MONITOR FUNCTION .............................................................................. 14–96
Overview ...................................................................................................................... 14–96
Monitors ....................................................................................................................... 14–97
Monitor State ................................................................................................................ 14–99
Monitor Instructions ..................................................................................................... 14–100
Condition Handler Program ............................................................................................ 14–100
Conditions .................................................................................................................. 14–101
Condition Menu ........................................................................................................... 14–102
Restrictions ................................................................................................................. 14–104
CONTINUOUS TURN FUNCTION (OPTION) .................................................................. 14–111
OVERVIEW ............................................................................................................... 14–111
HARDWARE AND SOFTWARE ..................................................................................... 14–114
GENERAL SETUP ...................................................................................................... 14–115
OPERATIONAL RULES .............................................................................................. 14–117
PROGRAMMING ........................................................................................................ 14–123
TROUBLESHOOTING .................................................................................................. 14–126
MAROUHT9102171E REV E
14.12.7
14.12.8
14.12.9
14.12.10
14.13
14.13.1
14.13.2
14.13.3
14.14
14.14.1
14.14.2
14.14.3
14.15
14.15.1
14.15.2
14.15.3
14.15.4
14.15.5
14.15.6
14.16
14.16.1
14.16.2
14.16.3
14.16.4
14.16.5
14.16.6
14.16.7
14.16.8
14.16.9
14.16.10
14.16.11
14.16.12
14.16.13
14.16.14
14.16.15
14.17
14.17.1
14.17.2
14.18
14.18.1
14.18.2
14.18.3
14.18.4
14.19
14.19.1
14.19.2
14.20
14.21
14.21.1
14.21.2
14.21.3
Contents
NOTES AND RESTRICTIONS ......................................................................................
SPECIAL KAREL REMASTERING PROGRAM FOR HANDLING CONTINUOUS
ROTATING AXES.........................................................................................................
GEAR INFORMATION ................................................................................................
SPIRAL CLADDING .....................................................................................................
COORDINATES OFFSET FUNCTION ...........................................................................
Using the Coordinates Offset Function .............................................................................
Tool Frame Offset Function ............................................................................................
User Frame Offset Function ...........................................................................................
CYCLE TIME LOGGING AND DISPLAY ......................................................................
Overview ....................................................................................................................
Modes ........................................................................................................................
Tracking Cycle Time .....................................................................................................
DATA MONITOR ........................................................................................................
Overview ....................................................................................................................
Data Monitor Setup ......................................................................................................
Data Monitor Schedule ..................................................................................................
Data Monitor Programming ............................................................................................
Data Monitor Chart ........................................................................................................
Data Monitor Operation ..................................................................................................
DISTANCE BEFORE ...................................................................................................
Overview ....................................................................................................................
Specification ...............................................................................................................
Program Instruction ......................................................................................................
Distance Value .............................................................................................................
Action ........................................................................................................................
Changing the Trigger Condition ......................................................................................
Alarms Posted When Distance Before is Not Triggered .......................................................
Single Step Execution ...................................................................................................
Hold and Resume .........................................................................................................
Resume After Jogging ...................................................................................................
Power Failure Recovery ................................................................................................
Adding the Distance Before Motion Option (Procedure) ......................................................
Cautions and Limitations ...............................................................................................
System Variables ..........................................................................................................
Error Codes .................................................................................................................
DUAL MOTOR DRIVE .................................................................................................
Introduction ..................................................................................................................
Setup ...........................................................................................................................
EASY NORMAL UTILITY (formerly known as Auto Normal Utility) ...................................
Overview ....................................................................................................................
Using the Easy Normal Utility ........................................................................................
Setup .........................................................................................................................
Execution ...................................................................................................................
EASY TEACH SUITE (formerly known as Simple Teach Suite) ............................................
Overview ....................................................................................................................
Auto Path Smoothing ....................................................................................................
ENHANCED MIRROR IMAGE (OPTION) .....................................................................
EXECUTING MULTIPLE PROGRAMS (MULTI-TASKING) .............................................
Overview ....................................................................................................................
Guidelines ..................................................................................................................
Synchronizing the Execution of Multiple Programs .............................................................
14–128
14–129
14–131
14–145
14–146
14–146
14–150
14–153
14–157
14–157
14–159
14–163
14–167
14–167
14–169
14–173
14–178
14–179
14–181
14–183
14–183
14–183
14–184
14–184
14–186
14–187
14–190
14–190
14–191
14–194
14–196
14–196
14–199
14–200
14–202
14–202
14–202
14–203
14–205
14–205
14–206
14–210
14–212
14–213
14–213
14–213
14–223
14–242
14–242
14–242
14–243
xix
Contents
14.21.4
14.21.5
14.21.6
14.21.7
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
xx
MAROUHT9102171E REV E
Effect of Multi-Tasking on Dedicated I/O Signals ...............................................................
Standard Operator Panel (SOP) Cycle Start Execution .........................................................
Program Number Select (PNS) Execution .........................................................................
RUN Program Instruction Execution ................................................................................
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 .............................................................................................
14–244
14–244
14–245
14–246
14–247
14–249
14–249
14–249
14–251
14–254
14–254
14–255
14–256
14–257
14–257
14–257
14–258
14–258
14–258
14–258
14–259
14–260
14–261
14–261
14–263
14–265
14–268
14–270
14–274
14–276
14–281
14–281
14–284
14–289
14–291
14–294
14–296
14–298
14–301
14–302
14–306
14–307
14–308
14–308
14–308
14–309
14–310
14–312
14–316
14–319
14–319
14–320
14–326
MAROUHT9102171E REV E
14.29.4
14.29.5
14.29.6
14.29.7
14.30
14.31
14.31.1
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.38.1
14.38.2
14.39
14.39.1
14.39.2
14.39.3
14.39.4
14.39.5
14.40
14.40.1
14.40.2
14.40.3
14.40.4
14.41
14.41.1
14.41.2
Contents
List Menu ...................................................................................................................
Status Menu ................................................................................................................
Operator Entry Menu ....................................................................................................
Using Your Teach Pendant Menus ...................................................................................
MIRROR IMAGE UTILITY ..........................................................................................
MONITORING PROGRAMS ........................................................................................
Montioring Teach Pendant Programs ................................................................................
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 ..........................................................................................
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) .............................................................
14–332
14–340
14–350
14–360
14–361
14–377
14–377
14–379
14–379
14–380
14–380
14–381
14–382
14–383
14–383
14–383
14–384
14–385
14–386
14–386
14–390
14–396
14–401
14–401
14–403
14–404
14–435
14–435
14–436
14–438
14–444
14–446
14–446
14–449
14–449
14–450
14–454
14–454
14–454
14–463
14–465
14–469
14–476
14–476
14–477
14–477
14–478
14–479
14–479
14–488
xxi
Contents
14.42
14.43
14.44
14.44.1
14.44.2
14.44.3
14.44.4
14.44.5
14.44.6
14.44.7
14.44.8
14.45
14.45.1
14.45.2
14.45.3
14.45.4
14.45.5
14.45.6
14.46
14.46.1
14.46.2
14.46.3
14.46.4
14.47
14.47.1
14.47.2
14.47.3
14.48
14.48.1
14.48.2
14.48.3
14.48.4
14.48.5
14.49
14.49.1
14.49.2
14.49.3
14.49.4
14.49.5
14.49.6
14.49.7
14.49.8
14.50
14.50.1
14.50.2
14.50.3
14.51
14.51.1
14.51.2
14.51.3
14.51.4
14.51.5
xxii
MAROUHT9102171E REV E
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 ............................................................................................
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 .....................................................................................................................
14–491
14–503
14–507
14–507
14–507
14–508
14–508
14–509
14–509
14–510
14–511
14–511
14–511
14–512
14–513
14–515
14–516
14–517
14–518
14–519
14–521
14–523
14–528
14–529
14–529
14–529
14–529
14–530
14–531
14–531
14–532
14–533
14–535
14–537
14–537
14–538
14–539
14–541
14–544
14–556
14–559
14–567
14–568
14–568
14–568
14–571
14–573
14–573
14–574
14–575
14–575
14–576
MAROUHT9102171E REV E
14.51.6
14.51.7
14.51.8
14.52
14.53
14.53.1
14.53.2
14.54
14.54.1
14.54.2
14.54.3
14.54.4
14.54.5
14.54.6
14.54.7
14.54.8
14.54.9
14.55
14.55.1
14.55.2
14.56
14.56.1
14.56.2
14.56.3
14.56.4
14.57
14.57.1
14.57.2
14.58
14.58.1
14.58.2
14.58.3
14.59
14.59.1
14.59.2
14.59.3
14.60
14.60.1
14.60.2
14.60.3
14.61
14.61.1
14.61.2
14.61.3
14.61.4
14.61.5
14.61.6
14.62
14.62.1
14.62.2
14.62.3
Contents
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 .....................................................................................................
General Soft Float Guidelines .........................................................................................
Cartesian Soft Float Guidelines .......................................................................................
Other Guidelines ..........................................................................................................
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 ..................................................................................................................
14–579
14–586
14–586
14–588
14–589
14–589
14–591
14–595
14–595
14–596
14–598
14–600
14–602
14–605
14–608
14–611
14–616
14–619
14–621
14–629
14–630
14–630
14–639
14–639
14–641
14–642
14–645
14–645
14–646
14–646
14–647
14–649
14–651
14–651
14–652
14–653
14–665
14–665
14–668
14–671
14–673
14–673
14–674
14–677
14–678
14–680
14–681
14–681
14–681
14–683
14–684
xxiii
Contents
14.63
14.63.1
14.63.2
14.63.3
14.63.4
14.64
14.64.1
14.64.2
14.64.3
14.64.4
Chapter 15
15.1
15.2
15.2.1
15.2.2
15.2.3
15.2.4
15.3
15.4
MAROUHT9102171E REV E
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)................................................................................................
14–685
14–685
14–685
14–686
14–687
14–688
14–688
14–688
14–689
14–690
FANUC SENSOR INTERFACE ..................................................................................
OVERVIEW ..................................................................................................................
COMMUNICATION PROTOCOL .....................................................................................
Overview .......................................................................................................................
Flow Control Mechanism ..................................................................................................
Data Format ...................................................................................................................
Handshaking ..................................................................................................................
PROGRAMMING ..........................................................................................................
SENSOR SETUP AND HARDWARE CONNECTIONS ........................................................
15–1
15–2
15–2
15–2
15–2
15–3
15–5
15–7
15–8
Chapter 16 iRCALIBRATION OPTIONS
...................................................................................... 16–1
16.1 OVERVIEW .................................................................................................................. 16–3
16.1.1 Overview ....................................................................................................................... 16–3
16.1.2 Torque Observer Sensor and Electrical Continuity Sensing ...................................................... 16–5
16.1.3 iRCalibration TP Instructions ............................................................................................ 16–6
16.2 IRCALIBRATION MASTER SET ..................................................................................... 16–8
16.2.1 Overview ....................................................................................................................... 16–8
16.2.2 Preliminary Setup ............................................................................................................. 16–9
16.2.3 iRCalibration Master Set Setup ......................................................................................... 16–12
16.2.4 Creating a Robot Calibration Teach Pendant Program ............................................................ 16–22
16.2.5 Running the iRCalibration Master Set Program .................................................................... 16–34
16.2.6 Updating the Master Count .............................................................................................. 16–37
16.2.7 Viewing the Calibration Result ......................................................................................... 16–38
16.2.8 Troubleshooting iRCalibration Master Set ........................................................................... 16–40
16.3 iRCALIBRATION MASTER RECOVERY ........................................................................ 16–41
16.3.1 Overview ...................................................................................................................... 16–41
16.3.2 Preliminary Setup ........................................................................................................... 16–43
16.3.3 iRCalibration Master Recovery Setup ................................................................................. 16–45
16.3.4 Creating a Robot Calibration Teach Pendant Program ............................................................ 16–56
16.3.5 Running the iRCalibration Master Recovery Program ........................................................... 16–69
16.3.6 Single Axis Mastering Recovery ....................................................................................... 16–71
16.3.7 Updating the Master Count .............................................................................................. 16–72
16.3.8 Viewing the Calibration Result ......................................................................................... 16–73
16.3.9 Troubleshooting iRCalibration Mastering ............................................................................ 16–75
16.4 iRCALIBRATION TCP SET ............................................................................................ 16–77
16.4.1 Overview ...................................................................................................................... 16–77
16.4.2 Preliminary Setup ........................................................................................................... 16–77
16.4.3 iRCalibration TCP Set Setup ............................................................................................ 16–82
16.4.4 Running the iRCalibration TCP Set Program ...................................................................... 16–101
16.4.5 Displaying the UTool Log Screen .................................................................................... 16–103
16.4.6 iRCalibration TCP Set Error Recovery ............................................................................. 16–105
xxiv
MAROUHT9102171E REV E
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
16.7.2
16.7.3
16.7.4
16.7.5
16.7.6
16.7.7
16.7.8
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
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
Contents
iRCalibration TCP Set Troubleshooting ............................................................................
iRCALIBRATION TCP SHIFT ........................................................................................
Overview .....................................................................................................................
Preliminary Setup ..........................................................................................................
iRCalibration TCP Shift Setup ..........................................................................................
Running the iRCalibration TCP Shift Program ....................................................................
Displaying the UTool Log Screen ....................................................................................
iRCalibration TCP Shift Error Recovery ...........................................................................
iRCalibration TCP Shift Troubleshooting ..........................................................................
iRCALIBRATION FRAME SHIFT ...................................................................................
Overview ....................................................................................................................
Preliminary Setup .........................................................................................................
iRCalibration Frame Shift Setup ......................................................................................
Running the iRCalibration Frame Shift Program and Updating the User Frame ........................
Using iRCalibration Frame Shift with Dynamic-Uframe ......................................................
Displaying the UFrame Log Screen .................................................................................
Troubleshooting iRCalibration Frame Shift .......................................................................
iRCALIBRATION SIGNATURE ......................................................................................
Overview .....................................................................................................................
Performance .................................................................................................................
Limitations ...................................................................................................................
System Variables ...........................................................................................................
Entering and Exiting High Accuracy Mode .........................................................................
iRCalibration Signature Status UIF....................................................................................
iRCalibration Signature Custom UIF .................................................................................
iRCalibration Custom TCP/UFRAME UIF .........................................................................
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–106
16–106
16–106
16–107
16–111
16–131
16–133
16–135
16–136
16–137
16–137
16–138
16–141
16–162
16–165
16–165
16–167
16–170
16–170
16–171
16–172
16–172
16–172
16–173
16–174
16–182
16–185
16–185
16–187
16–187
16–190
16–192
16–193
16–193
16–193
16–194
16–195
16–196
16–198
16–199
16–200
MATERIAL HANDLING OPTION ............................................................................... 17–1
OVERVIEW .................................................................................................................. 17–2
SETTING UP THE MATERIAL HANDLING TOOLS .......................................................... 17–3
Overview ....................................................................................................................... 17–3
Setting Up Tooling Valves ................................................................................................. 17–3
Setting Up Tooling Valve Signals ....................................................................................... 17–5
Configuring Tooling Valve I/O ........................................................................................... 17–9
Controlling Valve I/O ...................................................................................................... 17–10
CONTROLLING A TOOLING VALVE IN MANUAL MODE .............................................. 17–13
MATERIAL HANDLING VALVE MACRO PROGRAMS .................................................... 17–14
xxv
Contents
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
MAROUHT9102171E REV E
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–15
17–16
17–16
17–16
17–17
17–18
17–19
17–20
17–21
17–22
17–23
17–24
17–24
17–25
17–25
17–25
Chapter 18
18.1
18.1.1
18.1.2
18.1.3
18.2
18.3
18.4
18.4.1
18.4.2
18.5
18.5.1
PAINT PLUG-IN OPTION ............................................................................................ 18–1
Overview ........................................................................................................................ 18–2
Application Instructions ..................................................................................................... 18–2
Configuration ................................................................................................................... 18–3
Custom Setup ................................................................................................................... 18–3
Paint Plug In Error Codes ................................................................................................... 18–8
Setup .............................................................................................................................. 18–8
LR Mate Plus Controller I/O ............................................................................................... 18–9
LR Mate Plus Controller Main Board Connectors.................................................................... 18–9
Mate Peripheral Device / 50 Pin Honda Connector on Connector Conversion Board ..................... 18–11
Status ............................................................................................................................ 18–14
Overview ....................................................................................................................... 18–14
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
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 .........................................................................................
xxvi
19–1
19–3
19–3
19–3
19–3
19–4
19–6
19–7
19–7
19–9
19–17
19–17
19–17
19–18
19–18
19–18
19–19
19–19
19–20
19–20
MAROUHT9102171E REV E
Contents
19–21
19–21
19–22
19–22
19–23
19–23
19–23
19–24
19–24
19–24
19.13.6
19.13.7
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. ............................................................
Chapter 20
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
TOUCH SENSING .....................................................................................................
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 ....................................................................................................................
20–1
20–3
20–4
20–4
20–5
20–5
20–6
20–7
20–7
20–10
20–16
20–22
20–28
20–28
20–28
20–29
20–30
20–30
20–31
20–32
20–38
20–38
20–38
20–39
20–40
20–41
20–42
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–26
19–26
19–28
19–30
19–31
19–31
19–32
19–33
19–33
19–34
19–34
19–35
xxvii
Contents
MAROUHT9102171E REV E
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
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–44
20–46
20–47
20–49
20–50
20–50
20–50
20–51
20–51
20–53
20–53
20–53
20–55
20–56
20–57
20–57
20–58
20–59
20–59
20–60
Appendix A
A.1
A.2
A.2.1
A.2.2
A.2.3
A.2.4
A.3
A.3.1
A.3.2
A.3.3
A.3.4
A.3.5
ERROR CODES AND RECOVERY .............................................................................
OVERVIEW ...................................................................................................................
ERROR CODE PROPERTIES ............................................................................................
Overview ........................................................................................................................
Facility Name and Code ....................................................................................................
Severity Descriptions .......................................................................................................
Error Message Text ..........................................................................................................
GENERAL ERROR RECOVERY PROCEDURES ...............................................................
Overview .......................................................................................................................
Overtravel Release ..........................................................................................................
Hand Breakage Recovery ..................................................................................................
Pulse Coder Alarm Recovery .............................................................................................
Chain Failure Detection Error Recovery ..............................................................................
A–1
A–2
A–3
A–3
A–8
A–13
A–16
A–16
A–16
A–17
A–19
A–20
A–21
Appendix B
B.1
B.1.1
B.1.2
B.1.3
B.1.4
B.1.5
B.1.6
B.2
B.3
B.3.1
B.3.2
B.3.3
B.4
B.4.1
B.4.2
B.4.3
SYSTEM OPERATIONS .............................................................................................
STARTUP METHODS ......................................................................................................
Overview ........................................................................................................................
Hot Start .........................................................................................................................
Cold Start(START COLD) .................................................................................................
Cycle Power ....................................................................................................................
Controlled Start ..............................................................................................................
INIT Start ......................................................................................................................
HARDWARE DIAGNOSIS ..............................................................................................
CONTROLLER BACKUP AND RESTORE ........................................................................
Overview .......................................................................................................................
Backing Up a Controller as Images .....................................................................................
Restoring Controller Images ..............................................................................................
MAINTENANCE OPERATIONS ......................................................................................
Overview .......................................................................................................................
Updating Boot Software from the Configuration Menu ...........................................................
Updating iPendant Firmware .............................................................................................
B–1
B–2
B–2
B–3
B–5
B–7
B–10
B–16
B–16
B–22
B–22
B–22
B–25
B–28
B–28
B–28
B–30
xxviii
MAROUHT9102171E REV E
Contents
B.5 DIAGNOSTIC TOOLS ....................................................................................................
B.5.1 Development Tools ...........................................................................................................
B.5.2 Diagnostic Log .................................................................................................................
B–39
B–39
B–39
Appendix C MASTERING
.............................................................................................................
C.1 OVERVIEW ...................................................................................................................
C.2 RESETTING ALARMS AND PREPARING FOR MASTERING .............................................
C.3 FIXTURE POSITION MASTER (MASTERING TO A FIXTURE) ...........................................
C.4 ZERO POSITION MASTER (ZERO DEGREE MASTERING)................................................
C.5 QUICK MASTERING ......................................................................................................
C.6 QUICK MASTERING FOR SINGLE AXIS ..........................................................................
C.7 SINGLE AXIS MASTERING ............................................................................................
C.8 SAVING AND RESTORING MASTERING DATA ..............................................................
C–1
C–2
C–4
C–7
C–11
C–14
C–19
C–22
C–26
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–5
D–5
D–6
D–6
D–7
D–8
Appendix E
E.1
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
SYSTEM VARIABLES ................................................................................................... E–1
FORMAT OF A SYSTEM VARIABLE .................................................................................. E–2
SYSTEM VARIABLES ....................................................................................................... E–5
Power Fail Recovery ........................................................................................................... E–5
Brake Control..................................................................................................................... E–5
Mastering .......................................................................................................................... E–7
Quick Mastering ................................................................................................................. E–9
Calibration ...................................................................................................................... E–10
Specifying Coordinate Systems ........................................................................................... E–11
Setting Motors.................................................................................................................. E–13
Override .......................................................................................................................... E–16
Payload Specification......................................................................................................... E–21
Executing a Program ......................................................................................................... E–23
Automatic Operation ......................................................................................................... E–23
Deleting the Warning History .............................................................................................. E–24
Disabling Alarm Output ..................................................................................................... E–24
User Alarm ...................................................................................................................... E–26
Jogging ........................................................................................................................... E–26
I/O Setting ....................................................................................................................... E–27
Software Version .............................................................................................................. E–28
Soft Float Function............................................................................................................ E–28
xxix
Contents
MAROUHT9102171E REV E
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
xxx
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–29
E–29
E–30
E–30
E–31
E–32
E–33
E–34
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
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.
HandlingTool Quick Reference Flow Chart ......................................................................... lxxvii
Example System Overview ................................................................................................... 1–2
Major and Minor Axes ......................................................................................................... 1–3
Finger Type Gripper ........................................................................................................... 1–4
Vacuum Type Gripper ......................................................................................................... 1–4
R-30iB Plus A-Cabinet Controller .......................................................................................... 1–6
R-30iB Plus B-Cabinet Controller .......................................................................................... 1–7
R-30iB Mate Plus Controller ................................................................................................. 1–8
R-30iB Compact Plus Controller ............................................................................................ 1–9
R-30iB Plus A Cabinet Operator Panel .................................................................................. 1–10
R-30iB Plus B Cabinet Operator Panel .................................................................................. 1–10
R-30iB Mate Operator Panel ............................................................................................... 1–11
R-30iB Compact Plus Operator Panel ................................................................................... 1–11
Mode Select Switch ......................................................................................................... 1–12
Effect of Opening the Safety Fence While in AUTO Mode ...................................................... 1–15
Controller Memory .......................................................................................................... 1–22
Cycle Power .................................................................................................................... 1–26
iPendant ............................................................................................................................ 2–4
Teach Pendant Enabling Device (DEADMAN Switches) ............................................................ 2–5
Teach Pendant Enable Switch ................................................................................................ 2–5
EMERGENCY STOP Button ............................................................................................... 2–6
Touch Screen Navigation ...................................................................................................... 2–7
iPendant General Setup ........................................................................................................ 2–9
Touch Panel Setup............................................................................................................. 2–10
Zoom.............................................................................................................................. 2–12
Maximize/Restore ............................................................................................................. 2–13
Window Display Control Menu ........................................................................................... 2–14
TreeView ........................................................................................................................ 2–19
Window and Focus Example ............................................................................................... 2–27
HandlingTool iPendant Keys ............................................................................................... 2–29
Haptic iPendant Overview .................................................................................................. 2–40
Hardware/Software Compatibility Matrix .............................................................................. 2–41
General Haptic Setup ......................................................................................................... 2–42
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
xxxii
2–17.
2–18.
2–19.
2–20.
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.
MAROUHT9102171E REV E
Configuring Haptic Feedback ..............................................................................................
Haptic Log ......................................................................................................................
Warning Alarms ...............................................................................................................
User Alarms.....................................................................................................................
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 ...............................................................................................................
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–66
2–68
2–69
2–70
2–71
2–74
2–76
2–77
2–78
2–80
2–81
2–83
2–84
2–85
2–86
2–91
2–92
2–93
2–94
2–95
2–96
2–97
2–98
MAROUHT9102171E REV E
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
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–58.
2–59.
2–60.
2–61.
2–62.
2–63.
2–64.
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.
Contents
Software Keyboard ........................................................................................................... 2–99
Vision ASCII String Input Field .......................................................................................... 2–100
Vision Keyboard .............................................................................................................. 2–101
Top Menu ....................................................................................................................... 2–102
iPendant General Setup Screen ........................................................................................... 2–103
Top Menu ....................................................................................................................... 2–104
Top Menu Setup .............................................................................................................. 2–105
Read-Write Access ........................................................................................................... 2–106
Top Menu ....................................................................................................................... 2–107
iPendant with USB Port .................................................................................................... 2–108
Modifying User Views Screen ............................................................................................ 2–110
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–15
After More Than One Program is Created .............................................................................. 3–15
RUN .............................................................................................................................. 3–16
Production Monitor ........................................................................................................... 3–16
UTILITY ........................................................................................................................ 3–17
Jog Assist Panes ............................................................................................................... 3–18
Jog a robot ....................................................................................................................... 3–19
Edit a Program ................................................................................................................. 3–20
Execute a Program ............................................................................................................ 3–20
Full Screen Mode ................................................................................................................ 4–3
Dual Screen Mode............................................................................................................... 4–4
i Key ................................................................................................................................ 4–5
Top Menu .......................................................................................................................... 4–7
Robot Display .................................................................................................................... 4–9
Three Groups in One Controller ........................................................................................... 4–10
Scene Selection ................................................................................................................ 4–13
ZOOM Button .................................................................................................................. 4–15
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
xxxiv
4–9.
4–10.
4–11.
4–12.
4–13.
4–14.
4–15.
4–16.
4–17.
4–18.
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.
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.
MAROUHT9102171E REV E
PAN Button ..................................................................................................................... 4–15
ROTATE Button ............................................................................................................... 4–16
SELECT Button ............................................................................................................... 4–16
Selecting a View ............................................................................................................... 4–17
User View Menu ............................................................................................................... 4–19
[VISIBLE] Button............................................................................................................. 4–20
Visibility menu ................................................................................................................. 4–21
Linear Jog Indicator .......................................................................................................... 4–23
Joint Jog Indicators ........................................................................................................... 4–24
Positioner Jog Indicator ...................................................................................................... 4–25
Cartesian Jog Preview ........................................................................................................ 4–26
Cartesian Rotation Preview ................................................................................................. 4–26
Joint Jog Preview .............................................................................................................. 4–27
Dual Screen Mode............................................................................................................. 4–28
Select Preview Node Map................................................................................................... 4–30
Viewing two Different Programs .......................................................................................... 4–32
Shift Utility and Node Map ................................................................................................. 4–34
Node Map and Trace ......................................................................................................... 4–36
Frame Setup..................................................................................................................... 4–37
Position Registers ............................................................................................................. 4–38
Display of Remote Robots and Data ..................................................................................... 4–40
Controller Visibility Menu .................................................................................................. 4–41
TPGLCFG.XML .............................................................................................................. 4–42
Full Screen Menu .............................................................................................................. 4–45
Jog Speed Keys .................................................................................................................. 5–4
COORD Key and Display..................................................................................................... 5–5
Jog Menu ........................................................................................................................ 5–20
Cartesian Coordinate System ................................................................................................. 6–2
Position Relative to a Frame.................................................................................................. 6–3
Rotated Position ................................................................................................................. 6–3
Right-hand Rule ................................................................................................................. 6–5
World Positive X, Y, and Z Vector Directions ........................................................................... 6–5
World Frame ...................................................................................................................... 6–7
Tool Frame Origin Default Location ....................................................................................... 6–8
Tool Frame Origin Moved to the End of the Tool ...................................................................... 6–8
Tool Frame Adjusted to Accommodate Angled Tool .................................................................. 6–9
Tool frame setup screen (Two Point + Z) ............................................................................... 6–12
Defining the Orientation of the Origin ................................................................................. 6–32
World and User Frames ...................................................................................................... 6–43
Defining the Origin .......................................................................................................... 6–47
Defining the X direction Point ........................................................................................... 6–47
MAROUHT9102171E REV E
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
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–15.
6–16.
6–17.
6–18.
6–19.
6–20.
6–21.
6–22.
6–23.
6–24.
6–25.
6–26.
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.
Contents
Defining the X-Y Plane .................................................................................................... 6–48
Defining the Origin .......................................................................................................... 6–53
Defining the X direction Point ........................................................................................... 6–54
Defining the X-Y Plane .................................................................................................... 6–54
Defining the Second Origin ............................................................................................... 6–55
Remote TCP Frame ......................................................................................................... 6–63
Touching the TCP of the Robot Tool to the Remote TCP ......................................................... 6–66
Touching the TCP of the Robot Tool to the Remote TCP ......................................................... 6–69
Jog Frame Defined Parallel to Part ...................................................................................... 6–74
Defining the Origin .......................................................................................................... 6–78
Defining the X direction Point ........................................................................................... 6–79
Defining the X-Y Plane .................................................................................................... 6–80
Cell Frame and Cell Floor .................................................................................................. 6–87
Program Example .............................................................................................................. 7–5
Typical Motion Instruction Example ..................................................................................... 7–6
Joint Motion Type ............................................................................................................. 7–7
Linear Motion Type ........................................................................................................... 7–8
Linear Motion Type Used to Rotate About the Tool Center Point ................................................ 7–9
Circular Motion Type ....................................................................................................... 7–10
Restart of Circular Motion Instruction ................................................................................. 7–11
Restart of Circular Motion Instruction ................................................................................. 7–11
Extend Circular Arc .......................................................................................................... 7–12
Normal Motion ................................................................................................................. 7–14
First A Motion ................................................................................................................. 7–14
Circle Formed by Current Point ........................................................................................... 7–15
Last A Motion .................................................................................................................. 7–16
This Path Used ................................................................................................................. 7–17
Robot Moves in a Linear Motion.......................................................................................... 7–18
Robot Moves Linear .......................................................................................................... 7–19
Robot Can't Move ............................................................................................................. 7–19
Resume After Jog ............................................................................................................. 7–20
Resume After Jog ............................................................................................................. 7–21
Change of Destination Point ................................................................................................ 7–22
Change of Next Destination Point ........................................................................................ 7–23
Deletion of Next A Motion ................................................................................................. 7–23
Deletion of Next A Motion ................................................................................................. 7–24
Deletion of Next A Motion ................................................................................................. 7–24
Program is Paused ............................................................................................................. 7–25
After Modificaton Programmed Path..................................................................................... 7–26
Motion is Resumed ........................................................................................................... 7–26
Program is Paused ............................................................................................................. 7–27
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
xxxvi
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.
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.
MAROUHT9102171E REV E
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 ......................................................................................
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 .................................................................................................................
7–27
7–27
7–28
7–29
7–29
7–30
7–31
7–32
7–32
7–39
7–42
7–43
7–45
7–52
7–53
7–54
7–56
7–61
7–62
7–65
7–66
7–67
7–68
7–70
7–71
7–74
7–75
7–76
7–77
7–78
7–86
7–97
7–99
7–100
7–102
7–103
7–104
7–107
7–108
7–110
7–111
MAROUHT9102171E REV E
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
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–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.
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.
Contents
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 ..........................................................................................
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 ..........................................................................................................
7–112
7–113
7–114
7–117
7–117
7–118
7–119
7–121
7–122
7–124
7–125
7–126
7–128
7–130
7–133
7–134
7–134
7–135
7–135
7–139
7–145
7–153
7–161
7–169
7–169
7–170
7–172
7–173
7–174
7–174
7–175
7–175
7–176
7–176
7–176
7–178
7–180
7–190
7–190
7–191
7–192
xxxvii
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
xxxviii
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.
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.
MAROUHT9102171E REV E
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 ...................................................................................................................
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 ..............................................................
7–192
7–192
7–207
7–207
7–207
7–208
7–208
7–209
7–209
7–209
7–210
7–210
7–211
7–211
7–212
7–213
7–213
7–214
7–214
7–227
7–228
7–228
7–229
7–232
7–233
7–233
7–234
7–234
7–235
7–235
7–255
7–259
7–259
7–260
7–260
7–261
7–261
7–263
7–263
7–266
7–267
MAROUHT9102171E REV E
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
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–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.
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.
Contents
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 ..................................................................................................
SYNC_SCHED .............................................................................................................
INPOS .........................................................................................................................
PR_STRT[n] .................................................................................................................
PR_END[n] ..................................................................................................................
PR_SYNC[n] ................................................................................................................
Direct and Indirect Addressing Example .............................................................................
R[x] = [value] ................................................................................................................
R[x] = [value] [operator] [value] .......................................................................................
Skip Condition for DO/DI, RO/RI, SO/SI, and UO/UI ...........................................................
Skip Condition for DI/DO, RI/RO, SI/SO, UI/UO, and WI/WO ..............................................
Skip Condition for R, GI/GO, AI/AO, and Parameters ...........................................................
Skip Condition ...............................................................................................................
String Register Assignment ................................................................................................
String Register Concatenation ............................................................................................
STRLEN Instruction .........................................................................................................
FINDSTR Instruction .......................................................................................................
SUBSTR Instruction .........................................................................................................
7–267
7–268
7–268
7–270
7–274
7–276
7–277
7–278
7–282
7–283
7–285
7–285
7–286
7–287
7–288
7–289
7–289
7–290
7–290
7–291
7–291
7–292
7–292
7–293
7–294
7–294
7–295
7–295
7–295
7–298
7–298
7–300
7–302
7–302
7–302
7–303
7–305
7–306
7–308
7–308
7–309
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
7–193.
7–194.
7–195.
7–196.
7–197.
7–198.
7–199.
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.
10–3.
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.
xl
MAROUHT9102171E REV E
Tool Offset Condition Instruction ...................................................................................... 7–311
Wait Time ..................................................................................................................... 7–325
WAIT Condition for DI/DO, RI/RO, SI/SO, and UI/UO ......................................................... 7–325
WAIT Condition for DI/DO, RI/RO, SI/SO, UI/UO, and WI/WO ............................................ 7–326
WAIT Condition for R, GI/GO, AI/AO, and Parameters ......................................................... 7–326
WAIT Condition ............................................................................................................ 7–327
Mixed Logic WAIT Example ............................................................................................ 7–328
Program Detail Information ............................................................................................... 8–39
Collection Editor .............................................................................................................. 8–51
Treeview/Select ................................................................................................................ 8–52
Icon Editor ...................................................................................................................... 8–69
Instruction Icons ............................................................................................................... 8–70
Context Sensitive Icon Editing ............................................................................................ 8–71
TOOLBAR Icons .............................................................................................................. 8–72
INPUT Icon ..................................................................................................................... 8–73
Background Edit Process .................................................................................................. 8–76
Background Edit Process (Continued) ................................................................................. 8–77
Select Details ................................................................................................................... 8–86
Resume Tolerance Example ................................................................................................ 9–8
ALARM Recovery Without Specific Error and Action Text ..................................................... 9–12
Example Program Showing Backward Execution .................................................................. 9–19
Production SETUP Screen ................................................................................................ 10–4
RSR Timing Diagram ...................................................................................................... 10–9
PNS Timing Diagram (default and recommended configuration) NOTE: Your Timing
Diagram might vary depending on your application. ............................................................... 10–14
Typical Style Initiate Sequence ......................................................................................... 10–19
Fault Recovery During Style Execution .............................................................................. 10–20
Password Configuration Screen .......................................................................................... 10–55
Password Help ................................................................................................................ 10–76
Error Severity Table ........................................................................................................ 10–82
Example Output Definition ............................................................................................... 10–90
Timing - One Alarm ....................................................................................................... 10–91
Timing - Multiple Alarms ................................................................................................ 10–91
Inertia Equations .......................................................................................................... 10–101
Valid Payload Configuration for Accurate Estimation .......................................................... 10–102
J5 and J6 Orientation for POS1 ....................................................................................... 10–110
Acceleration Equation ................................................................................................... 10–112
Status Indicators ............................................................................................................... 11–3
R-30iB Plus A Cabinet Operator Panel .................................................................................. 11–5
R-30iB Plus B Cabinet Operator Panel .................................................................................. 11–5
The User System to Utilize Completion Process by DI Input .................................................... 11–19
MAROUHT9102171E REV E
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
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–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.
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.
Contents
Notifications Screen ......................................................................................................... 11–26
Notifications Screen with Cleared Notification ....................................................................... 11–28
Power Consumption Monitor ............................................................................................. 11–37
Process Axes Status Screen ................................................................................................ 11–38
Status 1 Screen .............................................................................................................. 11–47
Status 2 Screen .............................................................................................................. 11–50
Pulse Screen .................................................................................................................. 11–51
Torque Monitor Screen .................................................................................................... 11–52
Tracking Screen ............................................................................................................. 11–53
Disturbance Torque Screen ............................................................................................... 11–54
Servo Diagnosis Main Screen ........................................................................................... 11–55
Servo Diagnosis Reducer Screen ....................................................................................... 11–56
Servo Diagnosis Over Heat Screen .................................................................................... 11–58
Servo Diagnosis Torque Screen ......................................................................................... 11–58
Servo Diagnosis Disturbance Screen .................................................................................. 11–59
Servo Diagnosis OVC Screen ........................................................................................... 11–60
Servo Diagnosis Collision Detection Screen ........................................................................ 11–61
String Register Simple Import Text File ............................................................................... 11–66
String Register Full Import Text File.................................................................................... 11–66
Turn Number and Joint Placement Display on Position Screen ................................................ 11–71
Turn Number Display Configuration .................................................................................. 11–72
Joint Placement Configuration Examples for Fully Articulated Robots ...................................... 11–72
Joint Placement Configuration Examples for Fully Articulated Paint Robots .............................. 11–73
Joint Placement Configuration Examples for Horizontally Articulated Robots ............................ 11–74
$SCR_GRP[group].$turn_axis[i] for Turn Number Display Configuration ................................ 11–75
Simple Gripper Example ................................................................................................... 11–83
Select a Screen to Configure............................................................................................... 11–85
Screen Settings Page......................................................................................................... 11–86
Selecting an Image File ..................................................................................................... 11–89
File Devices .................................................................................................................... 11–90
Adjust ............................................................................................................................ 11–91
Indicator Settings Page...................................................................................................... 11–92
Indicator Settings ............................................................................................................. 11–94
Adjust the Location of LED Indicator State: 0 ....................................................................... 11–95
Custom Logic Program Field.............................................................................................. 11–96
SETUP Visual Diagnostics ................................................................................................ 11–97
Reposition the Screen ....................................................................................................... 11–98
Select a Screen to View ..................................................................................................... 11–99
Invalid Indicator ............................................................................................................ 11–100
Visual Diagnostics Screen Display .................................................................................... 11–101
R-30iB Plus Controller Memory Card Interface Location ........................................................ 12–18
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
xlii
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.
14–7.
14–8.
14–9.
14–10.
14–11.
14–12.
14–13.
14–14.
14–15.
14–16.
14–17.
14–18.
MAROUHT9102171E REV E
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 .......................................................................................
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 ...................................................................................
12–19
12–19
12–20
12–24
12–25
12–25
12–37
12–88
13–7
13–30
13–31
13–33
13–48
13–51
13–52
13–54
13–55
13–56
13–57
13–58
13–59
13–79
13–80
14–10
14–17
14–21
14–22
14–26
14–28
14–30
14–36
14–41
14–43
14–43
14–43
14–43
14–44
14–44
14–45
14–45
14–50
MAROUHT9102171E REV E
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
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–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.
14–51.
14–52.
14–53.
14–54.
14–55.
14–56.
14–57.
14–58.
14–59.
Contents
Normal Operation without Execution of Resume Program ...................................................... 14–51
Resume Program Aborted ................................................................................................ 14–52
Normal Operation (Automatic Start DISABLED) ................................................................. 14–53
Auto Mode When an Undefined Alarm Occurs .................................................................... 14–54
Local Stop Lines .............................................................................................................. 14–55
System Configuration Example ........................................................................................... 14–56
Basic Process Flow .......................................................................................................... 14–57
Basic Process Flow with Macro Program .............................................................................. 14–57
I/O Setup Example ........................................................................................................... 14–62
System Programming Example ........................................................................................... 14–63
I/O Setup Example ........................................................................................................... 14–64
Cycle Flow Example ........................................................................................................ 14–65
Program A for welding of a workpiece A : WELD_A ............................................................. 14–66
Program B for welding of a workpiece B : WELD_B .............................................................. 14–66
Shape with a Perpendicular Axis ....................................................................................... 14–71
Orientation Setup Approach Positions ................................................................................ 14–78
Condition Monitor Function ............................................................................................. 14–97
Condition for Register, System Variable, and I/O Parameters ................................................ 14–101
Condition2 for I/O ........................................................................................................ 14–101
Condition for Error status .............................................................................................. 14–102
Program Monitor Menu ................................................................................................. 14–103
System Monitor Menu ................................................................................................... 14–104
.................................................................................................................................. 14–145
Coordinates Offset Screens ............................................................................................ 14–147
TCP Fixed Method ....................................................................................................... 14–148
Robot Fixed Method - Example 1 .................................................................................... 14–149
Robot Fixed Method - Example 2 .................................................................................... 14–149
Total Cycle Time in One Cycle Mode ............................................................................... 14–160
Ten Cycle Mode ........................................................................................................... 14–161
Hundred Cycle Mode .................................................................................................... 14–162
One Hundred Hour Mode .............................................................................................. 14–163
Target Cycle Time ........................................................................................................ 14–165
Reference Program Recorded Display .............................................................................. 14–166
Process Limits ............................................................................................................. 14–168
Sample Report ............................................................................................................. 14–170
Data Monitor Chart Screen .............................................................................................. 14–180
Data Monitor Operation Screen ........................................................................................ 14–182
Execution Timing of Distance Before ............................................................................... 14–183
Distance Before Motion Option, DB ................................................................................ 14–184
Checking Whether the TCP Goes into the Trigger Region .................................................... 14–185
Size of Trigger Region .................................................................................................... 14–186
xliii
Contents
Figure 14–60.
Figure 14–61.
Figure 14–62.
Figure 14–63.
Figure 14–64.
Figure 14–65.
Figure 14–66.
Figure 14–67.
Figure 14–68.
Figure 14–69.
Figure 14–70.
Figure 14–71.
Figure 14–72.
Figure 14–73.
Figure 14–74.
Figure 14–75.
Figure 14–76.
Figure 14–77.
Figure 14–78.
Figure 14–79.
Figure 14–80.
Figure 14–81.
Figure 14–82.
Figure 14–83.
Figure 14–84.
Figure 14–85.
Figure 14–86.
Figure 14–87.
Figure 14–88.
Figure 14–89.
Figure 14–90.
Figure 14–91.
Figure 14–92.
Figure 14–93.
Figure 14–94.
Figure 14–95.
Figure 14–96.
Figure 14–97.
Figure 14–98.
Figure 14–99.
Figure 14–100.
xliv
MAROUHT9102171E REV E
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 ............................................................................................................
Interface Panel Screens ...................................................................................................
Cursor .........................................................................................................................
Position Number ............................................................................................................
Type Code Field ............................................................................................................
Type Code Field ............................................................................................................
Button Preview ..............................................................................................................
14–188
14–189
14–192
14–192
14–193
14–194
14–195
14–196
14–207
14–208
14–209
14–210
14–225
14–226
14–226
14–227
14–228
14–228
14–229
14–229
14–230
14–230
14–231
14–231
14–234
14–235
14–243
14–246
14–247
14–248
14–248
14–253
14–262
14–263
14–267
14–268
14–271
14–272
14–272
14–273
14–278
MAROUHT9102171E REV E
Figure 14–101.
Figure 14–102.
Figure 14–103.
Figure 14–104.
Figure 14–105.
Figure 14–106.
Figure 14–107.
Figure 14–108.
Figure 14–109.
Figure 14–110.
Figure 14–111.
Figure 14–112.
Figure 14–113.
Figure 14–114.
Figure 14–115.
Figure 14–116.
Figure 14–117.
Figure 14–118.
Figure 14–119.
Figure 14–120.
Figure 14–121.
Figure 14–122.
Figure 14–123.
Figure 14–124.
Figure 14–125.
Figure 14–126.
Figure 14–127.
Figure 14–128.
Figure 14–129.
Figure 14–130.
Figure 14–131.
Figure 14–132.
Figure 14–133.
Figure 14–134.
Figure 14–135.
Figure 14–136.
Figure 14–137.
Figure 14–138.
Figure 14–139.
Figure 14–140.
Figure 14–141.
Contents
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 Panel ......................................................................................................................
Single Step or Continuous ...............................................................................................
Jogging iPendant Screen..................................................................................................
Operation Key Sheet.......................................................................................................
Jog Panel Screen ............................................................................................................
14–280
14–286
14–287
14–290
14–297
14–299
14–301
14–310
14–319
14–320
14–321
14–326
14–327
14–332
14–333
14–340
14–341
14–351
14–352
14–363
14–363
14–364
14–365
14–366
14–366
14–367
14–367
14–368
14–368
14–371
14–371
14–385
14–404
14–406
14–410
14–415
14–416
14–417
14–422
14–425
14–426
xlv
Contents
Figure 14–142.
Figure 14–143.
Figure 14–144.
Figure 14–145.
Figure 14–146.
Figure 14–147.
Figure 14–148.
Figure 14–149.
Figure 14–150.
Figure 14–151.
Figure 14–152.
Figure 14–153.
Figure 14–154.
Figure 14–155.
Figure 14–156.
Figure 14–157.
Figure 14–158.
Figure 14–159.
Figure 14–160.
Figure 14–161.
Figure 14–162.
Figure 14–163.
Figure 14–164.
Figure 14–165.
Figure 14–166.
Figure 14–167.
Figure 14–168.
Figure 14–169.
Figure 14–170.
Figure 14–171.
Figure 14–172.
Figure 14–173.
Figure 14–174.
Figure 14–175.
Figure 14–176.
Figure 14–177.
Figure 14–178.
Figure 14–179.
MAROUHT9102171E REV E
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 ...................
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 ..............................................................................
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 ................
Hold with non-Constant Path Resume Offset — Path Resumes from Offset Stop Position
14–428
14–436
14–440
14–441
14–444
14–447
14–447
14–448
14–450
14–451
14–451
14–452
14–453
14–453
14–465
14–466
14–471
14–473
14–473
14–474
14–475
14–486
14–489
14–491
14–491
14–492
14–492
14–493
14–494
14–494
14–495
14–495
14–496
14–496
14–497
14–502
14–508
.................................................................................................................................. 14–509
Figure 14–180. Relationship Between Forward and Measured Position .......................................................... 14–519
Figure 14–181. Wireshark Ethernet Log .................................................................................................. 14–520
xlvi
MAROUHT9102171E REV E
Contents
Figure 14–182. RSI_ON_I () Example ....................................................................................................
Figure 14–183. Servo Tool ..................................................................................................................
Figure 14–184. SETUP Circle DETAIL Screen .......................................................................................
Figure 14–185. Circle Detail Terminology ..............................................................................................
Figure 14–186. SETUP Hexagon DETAIL Screen ...................................................................................
Figure 14–187. Hexagon Detail Terminology ..........................................................................................
Figure 14–188. SETUP Rectangle DETAIL Screen ..................................................................................
Figure 14–189. Rectangle Detail Terminology .........................................................................................
Figure 14–190. SETUP Slot DETAIL Screen ..........................................................................................
Figure 14–191. Slot Detail Terminology ................................................................................................
Figure 14–192. SETUP Keyhole DETAIL Screen ....................................................................................
Figure 14–193. Keyhole Detail Terminology ...........................................................................................
Figure 14–194. SETUP Pommel DETAIL Screen ....................................................................................
Figure 14–195. Pommel Detail Terminology ...........................................................................................
Figure 14–196. SETUP Cust Shape DETAIL Screen ................................................................................
Figure 14–197. UTILITIES Shape Gen DETAIL Screen Example ...............................................................
Figure 14–198. UTILITIES Shape Gen Screen ........................................................................................
Figure 14–199. Shape Generated Program Example ACIR1 .......................................................................
Figure 14–200. Shape Generated Program Example ACIR2 .......................................................................
Figure 14–201. Production Program Example .........................................................................................
Figure 14–202. Taught Configuration vs. Actual Configuration ..................................................................
Figure 14–203. Single Step Forward (FWD) vs. Backward (BWD) .............................................................
Figure 14–204. Program Motion vs. Jogging: Behavior Might Be Different Near Singularity ...........................
Figure 14–205. Unforeseeable Singularity at a Corner Path ........................................................................
Figure 14–206. Servo Schedules ...........................................................................................................
Figure 14–207. Example Program Using the Manual Servo Schedule ............................................................
Figure 14–208. Lemon Shape with a Bump on the Right Side ....................................................................
Figure 14–209. Lemon Shape with Outward Bump and Ripples ..................................................................
Figure 14–210. Flat Spot on Each Side ..................................................................................................
Figure 14–211. Two Flat Spots and an Inward Bump ................................................................................
Figure 14–212. Soft Float in the X Direction ...........................................................................................
Figure 14–213. Soft Float[n] Independent Instruction Example ..................................................................
Figure 14–214. Soft Float[n] Motion Option Example ..............................................................................
Figure 14–215. Improving Softness Example ..........................................................................................
Figure 14–216. Improving Softness .......................................................................................................
Figure 14–217. Layout and Tool Selection ..............................................................................................
Figure 14–218. Insertion Motion ..........................................................................................................
Figure 14–219. Face-to-Face Motion .....................................................................................................
Figure 14–220. TCP Setup Example ......................................................................................................
Figure 14–221. Space Check - Single Robot Controller .............................................................................
Figure 14–222. Space Check - Single Robot Controller .............................................................................
14–526
14–533
14–545
14–546
14–547
14–548
14–549
14–550
14–550
14–551
14–552
14–553
14–554
14–556
14–556
14–561
14–562
14–565
14–566
14–567
14–575
14–577
14–578
14–579
14–590
14–591
14–592
14–593
14–594
14–595
14–605
14–606
14–607
14–610
14–610
14–612
14–613
14–614
14–615
14–619
14–620
xlvii
Contents
Figure 14–223.
Figure 14–224.
Figure 14–225.
Figure 14–226.
Figure 14–227.
Figure 14–228.
Figure 14–229.
Figure 14–230.
Figure 14–231.
Figure 14–232.
Figure 14–233.
Figure 14–234.
Figure 14–235.
Figure 14–236.
Figure 14–237.
Figure 14–238.
Figure 14–239.
Figure 15–1.
Figure 15–2.
Figure 15–3.
Figure 15–4.
Figure 15–5.
Figure 15–6.
Figure 16–1.
Figure 16–2.
Figure 16–3.
Figure 16–4.
Figure 16–5.
Figure 16–6.
Figure 16–7.
Figure 16–8.
Figure 16–9.
Figure 16–10.
Figure 16–11.
Figure 16–12.
Figure 16–13.
Figure 16–14.
Figure 16–15.
Figure 16–16.
Figure 16–17.
Figure 16–18.
xlviii
MAROUHT9102171E REV E
Common Space Inside/Outside ....................................................................................... 14–624
Common Space Outside Boundary .................................................................................. 14–625
Common Space Vertexes ............................................................................................... 14–626
MultiARM Controller ................................................................................................... 14–629
Symmetric Part Orientation .............................................................................................. 14–644
Max Value .................................................................................................................. 14–646
Max Speed .................................................................................................................. 14–647
Typical TP Shim Example .............................................................................................. 14–666
Advanced TP Shim Example Using USEMAST ................................................................. 14–667
Advanced TP Shim Example Using HISTORY .................................................................. 14–668
TIME BEFORE / TIME AFTER Motion Option Instructions ................................................ 14–674
Normal Execution when $timebf_ver=4 ............................................................................ 14–676
Timing Sequence (TIME BEFORE instruction) .................................................................. 14–677
Timing Sequence (AFTER instruction) ............................................................................. 14–677
Timing Sequence (TIME BEFORE instruction) .................................................................. 14–678
Main and Sub Program Examples .................................................................................... 14–680
Program Example for TIME BEFORE Instruction .............................................................. 14–680
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–6
Handshaking When Position Register Data is Received .......................................................... 15–6
Handshaking When Three Point Data is Received .................................................................. 15–7
Handshaking When the Transformation Matrix is Received ..................................................... 15–7
Standard iRCalibration Mastering Calibration Plates ............................................................. 16–12
Example of First Three Positions ....................................................................................... 16–28
Example of Second Three Positions ................................................................................... 16–29
Standard iRCalibration Mastering Calibration Plates .............................................................. 16–45
Example of First Three Positions ........................................................................................ 16–63
Example of Second Three Positions ................................................................................... 16–63
Typical Arc Welding tool definition ................................................................................... 16–78
Typical Waterjet Tool Definition ........................................................................................ 16–79
Recommended iRCalibration TCP Set Touch Plate and Pointer Specifications ............................ 16–80
Installing the Touch Plate ................................................................................................. 16–81
Example of First Three Positions ....................................................................................... 16–94
Example of Second Three Positions ................................................................................... 16–95
Cal-Plate Calibration Positions .......................................................................................... 16–96
iRCalibration TCP Set NEW-XYZWPR Calibration Program Example .................................... 16–99
iRCalibration TCP Set Cal-Plate Calibration Program Example ............................................. 16–100
Typical Arc Welding tool definition ................................................................................... 16–108
Typical Waterjet Tool Definition ....................................................................................... 16–109
Recommended iRCalibration TCP Shift Touch Plate and Pointer Specifications ........................ 16–110
MAROUHT9102171E REV E
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Contents
16–19. Installing the Touch Plate ................................................................................................ 16–111
16–20. iRCalibration TCP Shift XYZWPR Calibration Program Example ......................................... 16–125
16–21. Example of Manually Created XYZ Search TPP Program .................................................... 16–126
16–22. Example of Manually Created XY Search TP Program ........................................................ 16–126
16–23. Example of Manually Created Z Search Teach Pendant Program ........................................... 16–127
16–24. Example of Manually Created XYZ Search TP Program Using Detect Circle Instruction
(with XY and Z offsets) .................................................................................................. 16–127
16–25. Example of Manually Created XY Search TP Program Using Detect Circle Instruction
(without XY and Z offsets) ............................................................................................. 16–128
16–26. Example of Standard iRCalibration TCP Shift-Generated Program with Update Frame
Added ......................................................................................................................... 16–128
16–27. Typical Arc Weld Tool Definition .................................................................................... 16–140
16–28. Typical Waterjet Tool Definition ...................................................................................... 16–141
16–29. Non-uniform Surface (Example 1) ................................................................................... 16–157
16–30. Non-uniform Surface (Example 2) ................................................................................... 16–157
16–31. 6 Points Search (3-2-1) (Corresponds to ) .......................................................................... 16–158
16–32. 6 points (3-2-1) for x, y, z, w, p, r Offset ........................................................................... 16–159
16–33. Example program for automatic operation. ........................................................................ 16–160
16–34. Secondary Encoder ........................................................................................................ 16–186
16–35. Application Example ...................................................................................................... 16–186
16–36. Secondary Encoder Feedback ........................................................................................... 16–188
16–37. Program Example .......................................................................................................... 16–191
16–38. Timing Diagram ............................................................................................................ 16–199
17–1. HandlingTool User Keys .................................................................................................. 17–14
18–1. Paint Start and Paint End .................................................................................................... 18–6
18–2. Paint_Pause and Paint_Resum Teach Pendant Programs ........................................................... 18–7
19–1. Example: Servo tool is the 2nd group and the number of tools is four ......................................... 19–4
19–2. ..................................................................................................................................... 19–6
19–3. Calibration Motion Type .................................................................................................. 19–14
19–4. Tool Change Sequence .................................................................................................... 19–20
19–5. .................................................................................................................................... 19–23
19–6. .................................................................................................................................... 19–23
19–7. .................................................................................................................................... 19–24
19–8. .................................................................................................................................... 19–26
20–1. Example Program Including Touch Sensing Routine .............................................................. 20–4
20–2. Search Using Searches in One Direction .............................................................................. 20–8
20–3. Search Using Offsets in Two Dimensions ............................................................................. 20–9
20–4. Search Using Two Search Motions in Two Different Directions to Obtain X and Y Offset
and Rotation about Z ....................................................................................................... 20–10
20–5. Touch Frame Used in a Program ....................................................................................... 20–11
20–6. Simple Search Routine Using Searches in Two Directions ...................................................... 20–17
20–7. Fillet Search in One Direction (x) with Rotation about Z ........................................................ 20–18
xlix
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
l
MAROUHT9102171E REV E
20–8. Fillet Search in Two Directions (x and y) with Rotation about Z .............................................. 20–19
20–9. Fillet Search in Three Directions (x, y, z) with Rotation about Z .............................................. 20–19
20–10. V-Groove Search ............................................................................................................ 20–20
20–11. OD/ID Search in Two Directions (X and Y) ........................................................................ 20–20
20–12. Touch Sensing Motion Option Example ............................................................................... 20–29
20–13. Points that Require Touching Up ........................................................................................ 20–31
20–14. Simple Search Example Program ...................................................................................... 20–32
20–15. One-Dimensional Search Ex. Prog. (Fillet/Lap, V-Groove) .................................................... 20–33
20–16. Two Dimensional Search Example Program ........................................................................ 20–33
20–17. Two Dimensional Search with Coordinated Motion Example Program (See and for
illustrations) ................................................................................................................... 20–34
20–18. First Illustration of Two Dimensional Search with Coordinated Motion Program Example ............ 20–35
20–19. Second Illustration of Two Dimensional Search with Coordinated Motion Program
Example ........................................................................................................................ 20–35
20–20. Simple Search with Coordinated Motion Example Program .................................................... 20–36
20–21. Three Dimensional Search with Rotation Example Program (See for an illustration) ................... 20–37
20–22. Illustration of Three Dimensional Search with Rotation Program Example ................................ 20–37
20–23. Part in Mastered Position and Offset Applied Illustration ........................................................ 20–39
20–24. Offset Value Illustration ................................................................................................... 20–41
20–25. Part with One Touch Sense Start Position, 2, and Three Points along a Path, 5, 6, 7 ...................... 20–43
20–26. Illustration of the Path when an Offset is Applied .................................................................. 20–44
20–27. Offset Path Touch Up to Adjust Location of Points 6 and 7 ..................................................... 20–44
20–28. New Master Touch Up Illustration ...................................................................................... 20–45
20–29. Incorrect Touch Up of a Path ............................................................................................. 20–45
20–30. Path Followed After Altering One Point .............................................................................. 20–46
20–31. New Point Taught while Executing the Offset Path ................................................................ 20–47
20–32. Multiple Searches can be Performed for Complex Shapes ....................................................... 20–48
20–33. Illustration of Part Shape Change and the Effect on Multiple Searches Performed ........................ 20–49
20–34. Moving a Search Start Position along the Search Direction ...................................................... 20–50
20–35. Search Start Position moved to a New Location Off the Axis of the Search Direction ................... 20–50
20–36. Simple Low Voltage Touch Sense Detection Circuit ............................................................... 20–52
20–37. Laser Digital Input Touch Sensing ....................................................................................... 20–57
20–38. Laser Digital Touch Sensing Schedule ................................................................................. 20–58
20–39. Example 1 ...................................................................................................................... 20–59
20–40. Touch Sensing Type Screen ............................................................................................... 20–59
20–41. Multi-Arm Laser Digital Simultaneous Touch Sensing Schedule .............................................. 20–60
B–1. Cycle Power ..................................................................................................................... B–9
B–2. Cycle Power .................................................................................................................... B–14
B–3. Start Mode screen ............................................................................................................. B–15
C–1. Example of position when quick mastering J3 axis .................................................................. C–20
C–2. Example of position when quick mastering J5 axis .................................................................. C–20
MAROUHT9102171E REV E
Figure
E–1.
Contents
System Variable Format .......................................................................................................
E–2
li
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
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.
Standard Operator Panel Buttons ........................................................................................ 1–11
Robot Servo Status ........................................................................................................... 1–16
Touch Screen and Mouse Navigation ...................................................................................... 2–8
Blanking and Dimming ...................................................................................................... 2–11
Window Displays .............................................................................................................. 2–15
TreeView Types ................................................................................................................ 2–20
TreeView Keys ................................................................................................................. 2–20
Browser Screen Keys ....................................................................................................... 2–22
Favorites Screen Operations .............................................................................................. 2–23
Browser Screen Keys ....................................................................................................... 2–25
Navigation and Data Entry Keys ........................................................................................ 2–30
Robot Motion Keys ......................................................................................................... 2–33
Execution Keys ............................................................................................................... 2–34
Editing Keys .................................................................................................................. 2–35
Material Handling-Specific Keys ........................................................................................ 2–36
Help and Diagnostic Key .................................................................................................. 2–37
FCTN Menu ................................................................................................................... 2–37
Key Functions .............................................................................................................. 2–38
Status Bar Display Items ................................................................................................... 2–60
..................................................................................................................................... 2–61
HELP/DIAGNOSTICS Menu Items .................................................................................... 2–62
Help/Diag Information Display Locations ............................................................................ 2–63
Document Viewer Function Keys ......................................................................................... 2–66
$UI_CONFIG.$recovermenu ............................................................................................. 2–73
System Variable Settings .................................................................................................. 2–89
Softkeys ............................................................................................................................ 3–7
Jog Speed Values .............................................................................................................. 5–3
LCD Indicators ................................................................................................................. 5–5
Coordinate Systems ........................................................................................................... 5–6
SubGroup Example ......................................................................................................... 5–13
$JOG_GROUP[] System Variables ....................................................................................... 5–18
Tool Frame Setup Screen Items ............................................................................................ 6–9
Tool Frame Setup Three Point DETAIL Screen Items ............................................................. 6–14
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
liv
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.
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.
MAROUHT9102171E REV E
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 ..........................................................................................
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 ........................................................................................
6–20
6–27
6–34
6–41
6–44
6–50
6–57
6–74
6–75
6–81
6–88
6–88
6–90
6–92
7–33
7–35
7–35
7–36
7–37
7–41
7–43
7–46
7–51
7–52
7–55
7–120
7–140
7–146
7–154
7–161
7–215
7–223
7–236
7–236
7–237
7–237
7–237
7–238
7–240
7–242
7–244
MAROUHT9102171E REV E
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–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.
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.
Contents
Background Logic Screen Operations ................................................................................. 7–244
TC Online Instruction ..................................................................................................... 7–252
Parameter Instructions ..................................................................................................... 7–262
Parameter Data Types ..................................................................................................... 7–262
String Parameter System Variables .................................................................................... 7–265
Instructions That Can Use AR[] ........................................................................................ 7–266
Instructions that can Use AR[] .......................................................................................... 7–273
Schedule and Robot Combinations .................................................................................... 7–293
SR[x]=R[y]..................................................................................................................... 7–307
R[x]=SR[y]..................................................................................................................... 7–307
SR[x]=R[y]+SR[z] ........................................................................................................... 7–307
SR[x]=SR[y]+R[z] ........................................................................................................... 7–307
R[x]=STRLEN SR[y]: ...................................................................................................... 7–308
R[x]=FINDSTR SR[y],SR[z] ............................................................................................. 7–309
SR[n]=SUBSTR SR[x],R[y],R[z]........................................................................................ 7–309
Rack 1 ............................................................................................................................ 8–5
Select Screen Items and Operations .................................................................................... 8–12
Paste Methods ................................................................................................................ 8–22
Program DETAIL Screen Items and Operations .................................................................... 8–34
Macro Command Screen Items .......................................................................................... 8–54
Application-Specific Teach Pendant User Keys ..................................................................... 8–55
Macro Command Assignments (ArcTool and HandlingTool) ................................................... 8–58
MANUAL Macros Screen Items ........................................................................................ 8–61
..................................................................................................................................... 8–64
Troubleshoot Background Edit - Problem Cause and Remedy .................................................. 8–80
Permanent Program Storage States ....................................................................................... 8–84
Temporary Program Storage States ....................................................................................... 8–85
Load/Convert Times for 1,000 Point Program ......................................................................... 8–85
Storage Configuration Status and Settings .............................................................................. 8–87
Maximum Program Size for Typical CMOS Allocations ........................................................... 8–88
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–30
UTILITIES Prog Adj Screen Items ..................................................................................... 9–39
UTILITIES Prog Adj DETAIL Screen Items ........................................................................ 9–39
Production Setup Screen ................................................................................................... 10–4
RSR Setup Item Description .............................................................................................. 10–9
PNS Setup Item Description ............................................................................................. 10–16
Style Name Setup Items ................................................................................................... 10–20
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
lvi
10–5.
10–6.
10–7.
10–8.
10–9.
10–10.
10–11.
10–12.
10–13.
10–14.
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.
MAROUHT9102171E REV E
Prog Select STYLE Setup DETAIL Screen Items ................................................................. 10–21
Prog Select OTHER DETAIL Screen Items ......................................................................... 10–24
SYSTEM Axis Limit Items .............................................................................................. 10–26
SETUP General Screen Items ........................................................................................... 10–33
Brake On Hold Settings ................................................................................................... 10–33
$UALRM_SEV[n] Severity Values .................................................................................... 10–38
Setting/User Alarm Screen Items ....................................................................................... 10–39
Override Select Menu Listing ........................................................................................... 10–42
Password Levels ............................................................................................................ 10–44
SETUP Passwords Screen Items — Screen .......................................................................... 10–50
SETUP Passwords Screen Items — Screen .......................................................................... 10–51
Password Configuration Setup Items .................................................................................. 10–56
XML Command Syntax ................................................................................................... 10–57
Password Log Screen Items .............................................................................................. 10–72
Devices for Password Level Screen Permissions .................................................................. 10–75
Error Severity Table Items ............................................................................................... 10–82
Error Code Output Signal Definition ($ER_OUT_PUT.$out_num=1) ....................................... 10–87
Error Code Severity Definition ($ER_OUT_PUT.$out_num = 1) ............................................. 10–87
Program Control: DO[25] and DO[26] ............................................................................... 10–88
Motion Control: DO[27] and DO[28] ................................................................................. 10–88
MOTION PERFORMANCE Screen Items .......................................................................... 10–96
MOTION/PAYLOAD SET Screen Items ............................................................................ 10–99
MOTION/PAYLOAD ID Items ....................................................................................... 10–103
MOTION/ID POS1 ID Items .......................................................................................... 10–103
MOTION/ARMLOAD SET Items ................................................................................... 10–115
Stroke Limit Setup Screen Items ..................................................................................... 10–116
System Configuration Setup Screen Items ......................................................................... 10–118
Use PPABN Signal DETAIL Screen Items ........................................................................ 10–127
Default Logical Command DETAIL Screen Items .............................................................. 10–127
Output when waiting on Input DETAIL Screen Items .......................................................... 10–128
Hand Broken DETAIL Screen Items ................................................................................ 10–128
Teach Pendant Status Indicators ......................................................................................... 11–4
Standard Operator Panel Status Indicators ............................................................................ 11–5
Clock Screen Items .......................................................................................................... 11–6
Execution History Screen .................................................................................................. 11–7
Maintenance Reminder Main Menu Items.............................................................................. 11–9
General Setup Items ......................................................................................................... 11–11
Maintenance Reminder Items ............................................................................................. 11–12
Maintenance Record items ................................................................................................. 11–20
Items in Maintenance Record File ....................................................................................... 11–21
Memory Status .............................................................................................................. 11–24
MAROUHT9102171E REV E
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–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.
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.
Contents
Notifications Screen Items .................................................................................................
DATA Position Reg Screen Items ......................................................................................
POSITION Joint Screen Items ..........................................................................................
POSITION User Screen Items ..........................................................................................
POSITION World Screen Items ........................................................................................
Power Consumption Monitor Items .....................................................................................
Process Axes Status Items .................................................................................................
Program Timer Listing Screen Items ..................................................................................
Program Timer DETAIL Screen Items ................................................................................
Program Status or Production Status Items ..........................................................................
Program Monitor Screen Items .........................................................................................
DATA Registers Screen Items ...........................................................................................
Status 1 Screen Items ......................................................................................................
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 ....................................................................
11–27
11–30
11–34
11–35
11–35
11–36
11–38
11–39
11–39
11–41
11–43
11–44
11–47
11–47
11–48
11–48
11–49
11–49
11–50
11–50
11–50
11–51
11–52
11–53
11–54
11–55
11–57
11–58
11–59
11–59
11–60
11–61
11–62
11–64
11–67
11–77
11–78
11–78
11–79
11–79
11–79
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
lviii
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.
12–14.
12–15.
12–16.
12–17.
12–18.
12–19.
12–20.
12–21.
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.
13–16.
13–17.
MAROUHT9102171E REV E
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 ..................................................................................
Back Up Operations ........................................................................................................
File Types .....................................................................................................................
Auto Update Operations Items ............................................................................................
Valid SAVE Function Screens ...........................................................................................
FILE Memory Screen Items .............................................................................................
Automatic Backup Setup Items .........................................................................................
Viewing ASCII Program Loader Error Screen Items .............................................................
Viewing ASCII Program Loader Error Screen Operations ......................................................
Process I/O Board Default Digital Input and Output Configuration ............................................
I/O Hardware Eligible for Default UOP Assignment ...............................................................
Default UOP Input Configuration for Process I/O Boards ........................................................
Default UOP Output Configuration for Process I/O Boards ......................................................
Rack Assignments for Different Kinds of I/O ........................................................................
Slot Assignments for Different Kinds of I/O .........................................................................
I/O Analog In/Out Monitor Screen Items ............................................................................
I/O Analog In/Out Configure Screen Items ..........................................................................
I/O Digital In/Out Monitor Screen Items .............................................................................
I/O Digital In/Out Configure Screen Items ..........................................................................
I/O Digital In/Out DETAIL Screen Items ............................................................................
I/O Group In/Out Monitor Screen Items ..............................................................................
I/O Group In/Out Configure Screen Items ...........................................................................
CONFIG Screen I/O Status ..............................................................................................
Range Setting Limitations ................................................................................................
Custom I/O Setup Items ...................................................................................................
Communication Speed Settings for Switches Q and H ...........................................................
11–84
11–87
11–92
12–12
12–12
12–15
12–34
12–36
12–36
12–38
12–41
12–43
12–46
12–47
12–48
12–50
12–51
12–55
12–58
12–65
12–67
12–68
12–86
12–87
13–7
13–8
13–8
13–8
13–9
13–9
13–11
13–12
13–13
13–14
13–16
13–16
13–17
13–21
13–21
13–28
13–32
MAROUHT9102171E REV E
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
13–18.
13–19.
13–20.
13–21.
13–22.
13–23.
13–24.
13–25.
13–26.
13–27.
13–28.
13–29.
13–30.
13–31.
13–32.
13–33.
13–34.
13–35.
13–36.
13–37.
13–38.
13–39.
13–40.
13–41.
13–42.
13–43.
13–44.
13–45.
14–1.
14–2.
14–3.
14–4.
14–5.
14–6.
14–7.
14–8.
14–9.
14–10.
14–11.
14–12.
14–13.
Contents
Unit Number Settings of Switches 16, 8, 4, 2, and 1 ..............................................................
I/O Robot In/Out Screen Items ..........................................................................................
I/O Robot In/Out DETAIL Screen Items .............................................................................
I/O SOP In/Out Screen Items ............................................................................................
Standard Operator Panel Input Signals ................................................................................
Standard Operator Panel Output Signals .............................................................................
Process I/O Assignments .................................................................................................
Kinds of Process I/O available on HandlingTool ...................................................................
Model A I/O Assignments ................................................................................................
Model B I/O Assignments ................................................................................................
I/O Link Device List Screen Items .....................................................................................
Device Names ...............................................................................................................
Devices that have Access to the DETAIL Screen ..................................................................
FANUC I/O Link Specifications ........................................................................................
FANUC I/O Link Ordering Information ..............................................................................
LED Status Descriptions ..................................................................................................
I/O InterConnect Screen Items ..........................................................................................
Relationship Between the MODE SELECT Switch Signals and Modes of Operation ...................
I/O UOP In/Out Monitor Screen Items ...............................................................................
I/O UOP In/Out Configure Screen Items .............................................................................
UOP UI to Process I/O Board DI .......................................................................................
UOP Input Signals ..........................................................................................................
UOP Outputs to Process I/O Board DO ..............................................................................
UOP Output Signals .......................................................................................................
Cell Interface Input Signals ..............................................................................................
Cell Interface Output Signals ............................................................................................
Check Items with Robot Ready .........................................................................................
Custom I/O Setup Items ...................................................................................................
Input Parameters ............................................................................................................
Output Parameters ..........................................................................................................
Map Functions ...............................................................................................................
Options ........................................................................................................................
Auto Backward Exit Macros ..............................................................................................
Auto Exit Setup Items .......................................................................................................
Auto Backward Exit System Variables .................................................................................
Error Recovery Features ..................................................................................................
Error Recovery Setup Items ..............................................................................................
Auto Error Recovery Manual Function Screen Items .............................................................
Auto Error Recovery Manual Function Detail Screen Items ....................................................
Description of system variable (Following settings are necessary for each Local stop line) .............
....................................................................................................................................
13–33
13–38
13–38
13–42
13–42
13–43
13–46
13–46
13–46
13–47
13–47
13–48
13–49
13–53
13–53
13–54
13–63
13–66
13–73
13–73
13–75
13–76
13–81
13–82
13–85
13–86
13–90
13–92
14–11
14–12
14–15
14–17
14–27
14–27
14–29
14–32
14–36
14–47
14–48
14–59
14–60
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
lx
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.
14–51.
14–52.
14–53.
14–54.
MAROUHT9102171E REV E
Center Finder Menu Items ................................................................................................ 14–72
Center Finder Motion SETUP Menu .................................................................................. 14–74
Troubleshooting Information ............................................................................................ 14–79
Collision Guard Setup Items ............................................................................................. 14–84
Collision Recovery Variable Data ...................................................................................... 14–90
State of Condition Monitoring .......................................................................................... 14–99
Program Monitor Menu Items ......................................................................................... 14–103
System Monitor Menu Items .......................................................................................... 14–104
Continuous Turn SETUP Screen Items ............................................................................. 14–116
$CN_USR_GRP.$cn_step_enb System Variable ................................................................. 14–122
Continuous Turn Common Problems ................................................................................ 14–127
Gear Ratio Information for FANUC Robots ........................................................................ 14–132
Tool Offset Screen Items ................................................................................................ 14–150
User Frame Offset Screen Items ...................................................................................... 14–154
Tracked Cycle Time Categories ....................................................................................... 14–157
Cycle Time Tracking Screen Items .................................................................................. 14–158
Data Monitor SETUP Screen Menu Items ......................................................................... 14–169
Data Monitor ITM DETAIL Screen Items ......................................................................... 14–170
Data Monitor Schedule Menu Items ................................................................................. 14–173
Distance Before Specification ......................................................................................... 14–184
Distance Before Signal Output Instructions ....................................................................... 14–187
$DB_CONDTYP ......................................................................................................... 14–187
Distance Before Alarms ................................................................................................. 14–190
DISTBF_TTS for a CALL Program Action ....................................................................... 14–191
Distance Before System Variables ................................................................................... 14–200
.................................................................................................................................. 14–204
Easy Normal Setup Items and Operations .......................................................................... 14–210
Easy Teach Suite Main Setup Screen Items ....................................................................... 14–215
Auto Path Smoothing Menu Items ................................................................................... 14–215
ENHANCED MIRROR IMAGE Screen Items ................................................................... 14–224
Mastering Methods ........................................................................................................ 14–251
Mastering Method Selection ............................................................................................ 14–252
Group Mask Exchange Screen Items ................................................................................ 14–254
Group Mask Exchange Troubleshooting ........................................................................... 14–256
TCP Cartesian position ................................................................................................... 14–259
Joint angles ................................................................................................................... 14–259
System Variables ........................................................................................................... 14–260
Interface Panel Setup Screen ............................................................................................ 14–269
Button Display Based on I/O ............................................................................................ 14–279
Button Detail Setup Screen Items ...................................................................................... 14–282
Button Status ................................................................................................................ 14–283
MAROUHT9102171E REV E
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–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.
14–95.
Contents
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 ..............................................................
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 ..........................................................................................
14–287
14–290
14–292
14–293
14–295
14–297
14–298
14–299
14–302
14–303
14–311
14–311
14–320
14–322
14–322
14–328
14–328
14–334
14–335
14–342
14–344
14–344
14–344
14–352
14–354
14–354
14–354
14–362
14–381
14–391
14–399
14–400
14–401
14–404
14–406
14–410
14–411
14–412
14–415
14–419
14–422
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
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
lxii
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.
MAROUHT9102171E REV E
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 ..............................................................................................
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 ........................................................................................
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) .....................................................................
14–427
14–430
14–431
14–432
14–433
14–433
14–434
14–437
14–442
14–445
14–455
14–463
14–469
14–480
14–486
14–489
14–489
14–490
14–490
14–490
14–497
14–504
14–504
14–510
14–510
14–512
14–514
14–515
14–516
14–517
14–521
14–524
14–524
14–525
14–526
14–527
14–528
14–534
14–539
14–542
14–545
MAROUHT9102171E REV E
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–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.
15–1.
15–2.
16–1.
16–2.
16–3.
16–4.
16–5.
16–6.
16–7.
16–8.
16–9.
16–10.
16–11.
Contents
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 .......................................................................................
Common Space I/O ......................................................................................................
Space Check Function Screen Items .................................................................................
14–547
14–549
14–551
14–552
14–554
14–557
14–557
14–561
14–586
14–589
14–598
14–600
14–602
14–613
14–614
14–615
14–616
14–621
14–622
.................................................................................................................................. 14–625
Start Packet (Sent from external device to robot controller) .................................................... 14–633
Robot Status Packet (Send from Robot Controller to external device)....................................... 14–633
Motion Command Packet Send from External Device to Robot controller ................................. 14–636
Stop Packet from External Device to Robot Controller .......................................................... 14–638
System variables ............................................................................................................ 14–640
Options that can not be used with Stream Motion ................................................................. 14–642
Teach Pendant Shim Screen Items and Function Keys ......................................................... 14–668
HISTORY Screen Items ................................................................................................ 14–671
FANUC Sensor Data Formats ............................................................................................ 15–4
NULL Modem Cable Pin Connector Layout ......................................................................... 15–9
Relation of iRCalibration Options ....................................................................................... 16–3
Calibration Hardware ...................................................................................................... 16–11
iRCalibration Master Set Schedule Screen Description .......................................................... 16–13
iRCalibration Master Set Detection Schedule Description ...................................................... 16–15
Program Creation Screen Items for Standard iRCalibration Master Set Programs ........................ 16–23
Robot Calibration Program Taught Points ........................................................................... 16–27
Troubleshooting ............................................................................................................. 16–40
Calibration Hardware ...................................................................................................... 16–44
iRCalibration Mastering Schedule Screen Description ........................................................... 16–46
iRCalibration Mastering Detection Schedule Description ....................................................... 16–49
Program Creation Screen Items for Standard iRCalibration Master Recovery Programs ............... 16–57
lxiii
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
lxiv
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.
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.
MAROUHT9102171E REV E
Robot Calibration Program Taught Points ........................................................................... 16–61
Troubleshooting ............................................................................................................. 16–76
Calibration Mode Descriptions .......................................................................................... 16–82
iRCalibration TCP Set UTOOL Schedule Item Description .................................................... 16–82
iRCalibration TCP Set Detection Schedule Description ......................................................... 16–84
New TCP Program Points ................................................................................................ 16–92
iRCalibration TCP Set Fit Errors ..................................................................................... 16–105
Calibration Mode Descriptions ......................................................................................... 16–112
iRCalibration TCP Shift UTOOL Schedule Item Description .................................................. 16–112
iRCalibration TCP Shift Detection Schedule Description ..................................................... 16–114
New TCP Program Points .............................................................................................. 16–122
iRCalibration TCP Shift Fit Errors ................................................................................... 16–135
Frame Schedule Detail Schedule Setup ............................................................................. 16–142
iRCalibration Frame Shift Detection Schedule Description ................................................... 16–144
Troubleshooting iRCalibration Frame Shift ....................................................................... 16–168
STATUS iRCALIBRATION SIGNATURE ......................................................................... 16–174
Secondary Encoder Setup Screen ...................................................................................... 16–189
Valve Signals .................................................................................................................. 17–6
SETUP MH Tool Signal DETAIL Screen Items .................................................................... 17–6
I/O MatHandling Screen Items .......................................................................................... 17–11
Handling Manual Operations ............................................................................................ 17–14
Material Handling Valve Macro Programs ........................................................................... 17–14
Part Present Macro ......................................................................................................... 17–16
Check No Part Macro ...................................................................................................... 17–17
Prepare to Pick Macro ..................................................................................................... 17–18
Clear to Proceed Macro ................................................................................................... 17–19
Turn ON Vacuum Macro .................................................................................................. 17–20
Turn OFF Vacuum Macro ................................................................................................ 17–21
Turn OFF Blowoff Macro ................................................................................................ 17–23
Set CurrentValve Macro .................................................................................................. 17–24
Set MH Tool ................................................................................................................. 17–24
Paint Plug In Setup Items .................................................................................................. 18–8
Rack 48 .......................................................................................................................... 18–9
CRMA15 ........................................................................................................................ 18–9
CRMA16 ....................................................................................................................... 18–10
CRMA58 ....................................................................................................................... 18–11
CRMA59 ....................................................................................................................... 18–13
Paint Plug In Status .......................................................................................................... 18–14
Basic Specifications........................................................................................................... 19–3
Common setup ............................................................................................................... 19–10
Calibration Motion Type .................................................................................................. 19–12
MAROUHT9102171E REV E
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
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.
E–1.
E–2.
E–3.
E–4.
E–5.
E–6.
E–7.
E–8.
E–9.
E–10.
Contents
Calibration Speed and Acceleration Rate ............................................................................ 19–16
Position Register No. ...................................................................................................... 19–16
Touch Torque ................................................................................................................ 19–16
Detection Signal ............................................................................................................. 19–16
Status Tool Change Screen Items ....................................................................................... 19–21
Servo Tool Change Initial Setup Screen Items ...................................................................... 19–25
Servo Tool Change Setup Screen Items ............................................................................... 19–25
Touch Frame Setup Items ................................................................................................. 20–12
Search Pattern and Valid Pattern Type ................................................................................ 20–21
Touch Sensing Schedule Setup Items ................................................................................. 20–22
Touch I/O Setup Screen Items ............................................................................................ 20–55
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–5
Haptic Alarm Log .............................................................................................................. A–5
ERROR FACILITY CODES FOR ALL APPLICATION-TOOLS ............................................. A–8
Severity Descriptions ....................................................................................................... A–13
Effects of Error Severity ................................................................................................... A–15
MANUAL OT Release Items ............................................................................................ A–17
Startup Methods ............................................................................................................... B–2
Controlled Start Options for All Software Applications ........................................................... B–11
Controlled Start Options for HandlingTool ........................................................................... B–12
Handling Config Menu Options .......................................................................................... B–12
Hardware Diagnostic Functions ......................................................................................... B–16
Backup and Restore Controller Items .................................................................................. B–22
SYSTEM Master/Cal Items ................................................................................................ C–3
Setting for “Quick mastering for single axis” .......................................................................... C–19
Format of a system variable ................................................................................................. E–2
Power Fail Recovery — $SEMIPOWERFL ............................................................................. E–5
Brake Control — $PARAM_GROUP[group].$SV_OFF_ENB .................................................... E–6
Brake Control — $PARAM_GROUP[group].$SV_OFF_TIME ................................................... E–6
Brake Control — $PARAM_GROUP[group].$SV_OFF_ALL ..................................................... E–7
Mastering — $MASTER_ENB ............................................................................................. E–7
Mastering — $DMR_GRP[group].$MASTER_DONE ............................................................... E–7
Mastering — $DMR_GRP[group].$MASTER_COUN .............................................................. E–8
Mastering — $DMR_GRP[group].$GRAV_MAST ................................................................... E–8
Mastering — $PARAM_GROUP[group].$MASTER_POS ......................................................... E–9
lxv
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
lxvi
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.
E–45.
E–46.
E–47.
E–48.
E–49.
E–50.
E–51.
MAROUHT9102171E REV E
Quick Mastering — $DMR_GRP[group].$REF_DONE ............................................................. E–9
Quick Mastering — $DMR_GRP.$REF_COUNT[group].$REF_COUNT ................................... E–10
Quick Mastering — $DMR_GRP.$REF_POS[group].$REF_POS .............................................. E–10
Calibration — $MOR_GRP.$CAL_DONE[group] .................................................................. E–10
Specifying Coordinate Systems — $MNUFRAMENUM[group] ................................................ E–11
Specifying Coordinate Systems — $MNUFRAME[group]........................................................ E–11
Specifying Coordinate Systems — $MNUTOOLNUM ............................................................ E–12
Specifying Coordinate Systems — $MNUTOOL[group] .......................................................... E–12
Specifying Coordinate Systems — $JOG_GROUP[group].$JOG_FRAME .................................. E–13
Setting Motors — $SCR_GRP[group].$AXISORDER ............................................................. E–13
Setting Motors — $SCR_GRP[group].$ROTARY_AXS .......................................................... E–14
Setting Motors — $PARAM_GROUP[group].$MOSIGN ......................................................... E–14
Setting Motors — $PARAM_GROUP[group].$ENCSCALES ................................................... E–15
Setting Motors — $PARAM_GROUP[group].$MOT_SPD_LIM ............................................... E–16
Override — $SHIFTOV_ENB ............................................................................................. E–16
Override — $MCR.$PROGOVERRIDE ............................................................................... E–16
Override — $SCR_GRP.$JOGLIM ...................................................................................... E–16
Override — $SCR_GRP.$JOGLIMROT................................................................................ E–17
Override — $SCR_GRP[group].$JOGLIM_JNT .................................................................... E–17
Override — $SCR.$COLDOVRD ........................................................................................ E–17
Override — $SCR.$COORDOVRD ..................................................................................... E–18
Override — $SCR.$TPENBLOVRD .................................................................................... E–18
Override — $SCR.$JOGOVLIM ......................................................................................... E–18
Override — $SCR.$RUNOVLIM ........................................................................................ E–18
Override — $SCR.$FENCEOVRD ...................................................................................... E–18
Override — $SCR.$SFJOGOVLIM ..................................................................................... E–19
Override — $SCR.$SFRUNOVLIM..................................................................................... E–19
Override — $SCR.$RECOV_OVRD .................................................................................... E–20
Payload Specification — $PARAM_GROUP[group].$AXISINERTIA ........................................ E–21
Payload Specification — $PARAM_GROUP[group].$AXISMOMENT ...................................... E–22
Payload Specification — $PARAM_GROUP[group].$AXIS_IM_SCL........................................ E–23
Executing a Program — $DEFPULSE .................................................................................. E–23
Automatic Operation — $RMT_MASTER ............................................................................ E–24
Deleting the Warning History — $ER_NOHIS ....................................................................... E–24
Disabling Alarm Output — $ER_NO_ALM.$NOALMENBL ................................................... E–25
Disabling Alarm Output — $ER_NO_ALM.$NOALM_NUM .................................................. E–25
Disabling Alarm Output — $ER_NO_ALM.$ER_CODE ......................................................... E–25
User Alarm — $UALRM_SEV ........................................................................................... E–26
Jogging — $JOG_GROUP.$FINE_DIST............................................................................... E–26
Jogging — $SCR.$FINE_PCNT .......................................................................................... E–26
I/O Setting — $OPWORK.$UOP_DISABLE ......................................................................... E–27
MAROUHT9102171E REV E
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
Table
E–52.
E–53.
E–54.
E–55.
E–56.
E–57.
E–58.
E–59.
E–60.
E–61.
E–62.
E–63.
E–64.
E–65.
E–66.
E–67.
E–68.
E–69.
E–70.
E–71.
E–72.
Contents
I/O Setting — $SCR.$RESETINVERT .................................................................................
I/O Setting — $PARAM_GROUP.$PPABN_ENBL .................................................................
I/O Setting — $PARAM_GROUP.$BELT_ENBLE .................................................................
Software Version — $ODRDSP_ENB ..................................................................................
Soft Float Function — $SFLT_ERRTYP ...............................................................................
Soft Float Function — $SFLT_DISFUP ................................................................................
Saving Files — $FILE_APPBCK.........................................................................................
Saving Files — $FILE_SYSBCK.........................................................................................
Register Speed Specification Function — $RGSPD_PREXE .....................................................
Specifying an Output Signal of the BZAL/BLAL Alarm —$BLAL_OUT.$DO_INDEX ................
Specifying an Output Signal of the BZAL/BLAL Alarm —$BLAL_OUT.$BATALM_OR..............
Setup for Changing Jog Group According to the Motion Group of the Selected Program —
$PROGGRP_TGL ............................................................................................................
Default Setting for the Motion Group — $DSBL_GPMSK .......................................................
Servo Information — $SV_INFO[group].$Q_CURRENT ........................................................
Servo Information — $SV_INFO[group].$AXIS_POS.............................................................
System Timer $SYSTEM_TIMER[group].$PWR_TOT ..........................................................
$SYSTEM_TIMER[group].$SRV_TOT ...............................................................................
$SYSTEM_TIMER[group].$RUN_TOT ..............................................................................
$SYSTEM_TIMER[group].$WIT_TOT ...............................................................................
$SYSTEM_TIMER[group].$SHM_TOT ..............................................................................
System Ready — $PWRUP_DELAY.$SY_READY ................................................................
E–27
E–27
E–28
E–28
E–28
E–29
E–29
E–29
E–29
E–30
E–30
E–31
E–31
E–32
E–33
E–33
E–33
E–33
E–33
E–34
E–34
lxvii
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
lxix
Safety
MAROUHT9102171E REV E
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.
lxx
MAROUHT9102171E REV E
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.
lxxi
Safety
MAROUHT9102171E REV E
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.
• 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.
lxxii
MAROUHT9102171E REV E
Safety
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.
• 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.
lxxiii
Safety
MAROUHT9102171E REV E
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.
• 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.
lxxiv
MAROUHT9102171E REV E
Safety
• 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.
• 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.
lxxv
Safety
MAROUHT9102171E REV E
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.
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.
lxxvi
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
lxxvii
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–17
1–18
1–19
1–19
1–20
1–20
1–21
1–23
1–23
1–23
1–1
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV E
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.
1–2
MAROUHT9102171E REV E
1. OVERVIEW AND STARTUP
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 .
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 E
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 E
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 E
MAROUHT9102171E REV E
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 E
MAROUHT9102171E REV E
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 E
MAROUHT9102171E REV E
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 E
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.
1–12
MAROUHT9102171E REV E
1. OVERVIEW AND STARTUP
The operation modes you can select using the MODE SELECT switch are described in the following
sections.
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.
1–13
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV E
• 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.
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.
1–14
MAROUHT9102171E REV E
1. OVERVIEW AND STARTUP
Figure 1–14. Effect of Opening the Safety Fence While in AUTO Mode
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.
1–15
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV E
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
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
T1 or T2
ON
pressed
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)
1–16
MAROUHT9102171E REV E
1. OVERVIEW AND STARTUP
• 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.
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–17
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV E
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)
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–18
MAROUHT9102171E REV E
1. OVERVIEW AND STARTUP
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 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.
1–19
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV E
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
• 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:
1–20
MAROUHT9102171E REV E
1. OVERVIEW AND STARTUP
• 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 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.
1–21
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV E
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.
Figure 1–15. Controller Memory
1–22
MAROUHT9102171E REV E
1. OVERVIEW AND STARTUP
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:
• 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 .
1–23
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV E
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.
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.
1–24
MAROUHT9102171E REV E
1. OVERVIEW AND STARTUP
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–25
1. OVERVIEW AND STARTUP
MAROUHT9102171E REV E
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–26
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
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 ................................................................................................
2–1
2–3
2–4
2–6
2–6
2–10
2–11
2–12
2–12
2–14
2–21
2–26
2–27
2–28
2–39
2–39
2–40
2–41
2–42
2–44
2–44
2–52
2–59
2–59
2–61
2–61
2–61
2–62
2–62
2–1
2. iPENDANT OPERATIONS
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
2–2
MAROUHT9102171E REV E
Help and Diagnostics ............................................................................... 2–62
ADDITIONAL iPENDANT FUNCTIONS ........................................................ 2–64
Document Viewer....................................................................................... 2–64
Menu Favorites ......................................................................................... 2–67
Menu History ............................................................................................ 2–71
Multi-Pane Edit ......................................................................................... 2–71
Other iPendant Guidelines ....................................................................... 2–72
Popup Menus ............................................................................................ 2–73
Screen Customizations ............................................................................. 2–74
Software Keyboard .................................................................................... 2–90
Top Menu ................................................................................................. 2–101
Universal Serial Bus (USB) Port ............................................................. 2–108
User Views .............................................................................................. 2–108
MAROUHT9102171E REV E
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 E
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 E
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.
2–5
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
See Figure 2–4 .
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
2–6
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
FCTN menus. If the title bar has any icons, such as
(zoom),
(maximize/restore), you can touch the icon to activate the feature.
(related view), or
See Figure 2–5 .
Figure 2–5. Touch Screen Navigation
2–7
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
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 E
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 E
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.
2–10
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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.
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 E
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 .
2–12
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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.
Figure 2–9. Maximize/Restore
2–13
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
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 E
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.
2–15
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Table 2–3. Window Displays (Cont'd)
Window Display
Mode
Triple
Example Screen
Additional Comment
In Triple, three different windows can be
displayed at one time.
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 .
2–16
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Table 2–3. Window Displays (Cont'd)
Window Display
Mode
Example Screen
Additional Comment
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–17
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Table 2–3. Window Displays (Cont'd)
Window Display
Mode
Example Screen
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.
2–18
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
• 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.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.
2–19
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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
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.
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.
+ right arrow key to
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.
2–20
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Table 2–5. TreeView Keys (Cont'd)
KEY
DESCRIPTION
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
When the type is Menus, use these 2 keys together to collapse
or expand all menu entries.
+ Right
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.
+ Down
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
2–21
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
• 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.
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–22
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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–23
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Table 2–7. Favorites Screen Operations (Cont'd)
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–24
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Table 2–7. Favorites Screen Operations (Cont'd)
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.
2–25
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Table 2–8. Browser Screen Keys (Cont'd)
Key
Description
FAVORITES
Use this function key to display the Favorites Page or to add or select a link.
Use these 2 keys together to add a space. Can also be used to check and uncheck
an HTML checkbox.
+ ENTER
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.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–26
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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.
2–27
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.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–28
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Figure 2–13. HandlingTool iPendant Keys
2–29
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
2–30
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Table 2–9. Navigation and Data Entry Keys (Cont'd)
iPendant Key
Symbolic iPendant Key (if available)
Function
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–31
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Table 2–9. Navigation and Data Entry Keys (Cont'd)
iPendant Key
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.
2–32
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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.
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.
2–33
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Table 2–10. Robot Motion Keys (Cont'd)
iPendant Key
Symbolic i Pendant Key (if
available)
Function
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.)
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.
2–34
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Table 2–11. Execution Keys (Cont'd)
iPendant Key
Symbolic iPendant Key (if
available)
Function
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.
The arrow keys are used to highlight or select
an item on the screen.
2–35
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Table 2–12. Editing Keys (Cont'd)
iPendant Key
Symbolic iPendant Key (if
available)
Function
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–36
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Table 2–13. Material Handling-Specific Keys (Cont'd)
iPendant Key
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.
2–37
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Table 2–15. FCTN Menu (Cont'd)
Item
Function
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.
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.
2–38
MAROUHT9102171E REV E
Table 2–16.
2. iPENDANT OPERATIONS
Key Functions (Cont'd)
Key
Description
Adds a space. Can also be used to check and uncheck an
HTML checkbox.
+ ENTER
When a blinking
is shown in the Status Bar, then pressing
and releasing
will display the STATUS Notifications
screen.
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–39
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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 .
2–40
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Figure 2–15. Hardware/Software Compatibility Matrix
The Haptic iPendant currently supports:
• Arc Welding
• 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
2–41
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
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.
2–42
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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
• 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–43
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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
• @ Taught Position
2–44
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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–45
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–46
MAROUHT9102171E REV E
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–47
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–48
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Figure 2–23. Monitoring System Variables
2–49
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–50
MAROUHT9102171E REV E
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–51
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–52
MAROUHT9102171E REV E
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–53
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–54
MAROUHT9102171E REV E
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–55
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–56
MAROUHT9102171E REV E
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–57
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–58
MAROUHT9102171E REV E
MAROUHT9102171E REV E
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–59
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
2–60
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Table 2–17. Status Bar Display Items (Cont'd)
STATUS ITEM
DESCRIPTION
Motion Information
This item lists the following information:
• Coordinate System
• Group
• Subgroup
Speed Override
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.
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–61
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.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 .
2–62
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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,
• 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.
2–63
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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 ,
• 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.
2–64
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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–65
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–66
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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.
2–67
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Figure 2–36. Menu Favorites
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.
2–68
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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. 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.
2–69
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
10. To display the main iPendant Setup menu, press F2, BACK.
2–70
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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
2–71
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.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.
2–72
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
• 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 .
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–73
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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:
2–74
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
• EasyPanel environment
• PanelWizard
• 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–75
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
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.
2–76
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Note Double Panel mode will be displayed automatically.
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–77
2. iPENDANT OPERATIONS
Figure 2–43. Create Operation Panel Flowchart
2–78
MAROUHT9102171E REV E
MAROUHT9102171E REV E
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.
2–79
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
1. Press MENU.
2. Select SETUP.
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–80
MAROUHT9102171E REV E
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.
2–81
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
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.
2–82
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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.
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.
2–83
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–84
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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.
2–85
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Figure 2–49. Disabling the Data Key
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–86
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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:
$CUSTOMMENU[3].$TITLE :
$CUSTOMMENU[3].$PROG_NAME :
“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 ].
2–87
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
• 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
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:
2–88
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
$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
$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
2–89
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
Table 2–23. System Variable Settings (Cont'd)
System Variable
Top Level Menu
Softpart ID
Screen ID
$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–90
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Figure 2–50. Options Menu Item
The menu to input characters is displayed as shown in Figure 2–51 .
2–91
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
2–92
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Figure 2–52. Software Keyboard
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.
2–93
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–94
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Figure 2–54. Keyboard Uppercase Letters
When “123” is selected, the input mode becomes the numeric character and symbol input mode.
2–95
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–96
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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–97
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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 .
2–98
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
Figure 2–58. Software Keyboard
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.
2–99
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–100
MAROUHT9102171E REV E
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.
2–101
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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.
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);
}
2–102
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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.
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–103
2. iPENDANT OPERATIONS
Figure 2–63. Top Menu
2–104
MAROUHT9102171E REV E
MAROUHT9102171E REV E
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–105
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–106
MAROUHT9102171E REV E
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.
2–107
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
21. The Top Menu entries are stored in $UI_TOPMENU and will be backed up and restored
in SYSUIF.SV.
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,
2–108
MAROUHT9102171E REV E
2. iPENDANT OPERATIONS
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.
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–109
2. iPENDANT OPERATIONS
MAROUHT9102171E REV E
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–110
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–14
3–14
3–14
3–15
3–15
3–17
3–17
3–17
3–19
3–1
3. iHMI GUIDES
MAROUHT9102171E REV E
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 E
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
3–3
3. iHMI GUIDES
MAROUHT9102171E REV E
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.
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
3–4
or
to step through the pane display.
MAROUHT9102171E REV E
3. iHMI GUIDES
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 .
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 E
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 E
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
MAROUHT9102171E REV E
Table 3–1. Softkeys (Cont'd)
KEY
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 E
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 E
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
3–10
MAROUHT9102171E REV E
3. iHMI GUIDES
• 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.
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.
3–11
3. iHMI GUIDES
MAROUHT9102171E REV E
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.
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.
3–12
MAROUHT9102171E REV E
3. iHMI GUIDES
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.
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–13
3. iHMI GUIDES
MAROUHT9102171E REV E
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 .
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 .
3–14
MAROUHT9102171E REV E
3. iHMI GUIDES
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.
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.
3–15
3. iHMI GUIDES
MAROUHT9102171E REV E
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.
Figure 3–17. Production Monitor
3–16
MAROUHT9102171E REV E
3. iHMI GUIDES
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.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.
3–17
3. iHMI GUIDES
MAROUHT9102171E REV E
Figure 3–19. Jog Assist Panes
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
3–18
MAROUHT9102171E REV E
3. iHMI GUIDES
— TOOL
— USER
Perform the JOG TUTORIAL (
systems. Refer to Section 3.5.3 .
) to learn more about jogging the robot and selecting coordinate
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.
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.
3–19
3. iHMI GUIDES
MAROUHT9102171E REV E
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–20
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–9
4–11
4–11
4–12
4–12
4–12
4–14
4–22
4–27
4–30
4–31
4–33
4–35
4–37
4–38
4–39
4–42
4–43
4–44
4–45
4–46
4–46
4–1
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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.
4–2
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
7. Position register settings.
8. Interference zones.
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
4–3
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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.
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.
4–4
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
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.
4–5
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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
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.
4–6
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
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.
4–7
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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–8
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
4–9
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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 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 .
4–10
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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. .
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–11
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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.
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–12
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
4–13
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
• 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.
• 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.
4–14
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
• 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–15
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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:
• 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–16
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
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–17
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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.
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.
4–18
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
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.
4–19
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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
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.
4–20
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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
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.
4–21
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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–22
MAROUHT9102171E REV E
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–23
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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–24
MAROUHT9102171E REV E
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–25
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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.
4–26
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
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–27
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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
4–28
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
example, if you know you want to adjust the highest point in the program, you can find that point
easily without moving the robot.
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–29
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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 ”
4–30
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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 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.
4–31
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
Figure 4–24. Viewing two Different Programs
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
4–32
+FCTN and select “4D Select Node Map ”
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
• 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–33
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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
4–34
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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 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–35
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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.
4–36
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
Running the program with motion DISABLED will also display the trace and movement of the
graphical robot.
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.
4–37
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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.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
4–38
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
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–39
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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–40
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
4–41
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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
$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.
4–42
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
Refer to the Dual Check Safety Function Operator's Manual for details.
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.
4–43
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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.
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–44
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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–45
4. 4D FUNCTIONALITY
MAROUHT9102171E REV E
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”
4–46
MAROUHT9102171E REV E
4. 4D FUNCTIONALITY
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.
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–47
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
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....................................................................................
Jogging the Robot and Other Axes ...........................................................
Jogging the Robot without the Teach Pendant ..........................................
5–1
5–2
5–2
5–2
5–4
5–8
5–8
5–9
5–10
5–12
5–12
5–13
5–18
5–23
5–1
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
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 E
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.
5–3
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
Figure 5–1. Jog Speed Keys
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
5–4
MAROUHT9102171E REV E
5. JOGGING THE ROBOT
• 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
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.
5–5
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
Table 5–3. Coordinate Systems
COORDINATE DESCRIPTION
SYSTEM
JOINT
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–6
ILLUSTRATION
MAROUHT9102171E REV E
5. JOGGING THE ROBOT
Table 5–3. Coordinate Systems (Cont'd)
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.
ILLUSTRATION
5–7
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
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 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.
5–8
MAROUHT9102171E REV E
PROGRAM NAME
5. JOGGING THE ROBOT
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 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.
5–9
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
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 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
5–10
14
3
55
2
MAROUHT9102171E REV E
5. JOGGING THE ROBOT
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.
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
5–11
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
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,
• 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.
5–12
MAROUHT9102171E REV E
5. JOGGING THE ROBOT
• 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 .
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.
5–13
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
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].
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.
5–14
MAROUHT9102171E REV E
5. JOGGING THE ROBOT
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
:
:
:
:
:
:
1
R-2000iB/165F
2
0
‘’
1
0
‘’
GEN_POS
[ TYPE ]
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
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
1
‘’
2
2
‘’
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.
5–15
5. JOGGING THE ROBOT
POSITION
Joint
J1:
J4:
MAROUHT9102171E REV E
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
:
:
:
:
:
:
1
R-2000iB/165F
2
1
‘Table axis 1’
2
2
‘’
[ TYPE ]
GEN_POS
GEN_POS
GROUP
• 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
[ TYPE ]
5–16
:
:
:
:
:
:
1
R-2000iB/165F
2
1
‘Table axis 1’
2
2
‘Table axis 2’
GROUP
GEN_POS
GEN_POS
MAROUHT9102171E REV E
POSITION
Joint
J1:
J4:
5. JOGGING THE ROBOT
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
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.
5–17
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
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 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.
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.
5–18
MAROUHT9102171E REV E
5. JOGGING THE ROBOT
• 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–19
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
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–3. 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.
5–20
MAROUHT9102171E REV E
5. JOGGING THE ROBOT
PROGRAM NAME
S
JOINT 10%
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.
5–21
5. JOGGING THE ROBOT
MAROUHT9102171E REV E
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.
PROGRAM NAME
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–22
MAROUHT9102171E REV E
5. JOGGING THE ROBOT
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.11 Jogging the Robot without the Teach Pendant
Refer to the “Advanced iPendant Functions” chapter of the Internet Options Manual for more
information.
5–23
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–6
6–6
6–7
6–7
6–10
6–38
6–40
6–40
6–43
6–61
6–63
6–63
6–73
6–73
6–85
6–86
6–87
6–92
6–93
6–95
6–1
6. FRAMES
MAROUHT9102171E REV E
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.
6–2
MAROUHT9102171E REV E
6. FRAMES
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
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
6–3
6. FRAMES
MAROUHT9102171E REV E
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.
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 .
6–4
MAROUHT9102171E REV E
6. FRAMES
Figure 6–4. Right-hand Rule
Figure 6–5. World Positive X, Y, and Z Vector Directions
6–5
6. FRAMES
MAROUHT9102171E REV E
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.
See Figure 6–6 for an example. Your robot might be different depending on your system.
6–6
MAROUHT9102171E REV E
6. FRAMES
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–7
6. FRAMES
MAROUHT9102171E REV E
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–8
MAROUHT9102171E REV E
6. FRAMES
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.
6–9
6. FRAMES
MAROUHT9102171E REV E
Table 6–1. Tool Frame Setup Screen Items (Cont'd)
ITEMS
DESCRIPTION
Y
This column show the coordinate of each tool frame.
Z
This column show the coordinate of each tool frame.
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–10
MAROUHT9102171E REV E
6. FRAMES
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.)
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.
6–11
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–12
MAROUHT9102171E REV E
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
6. FRAMES
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.
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.
6–13
6. FRAMES
MAROUHT9102171E REV E
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 .
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.
6–14
MAROUHT9102171E REV E
6. FRAMES
Table 6–2. Tool Frame Setup Three Point DETAIL Screen Items (Cont'd)
ITEMS
DESCRIPTION
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.
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.
6–15
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–16
MAROUHT9102171E REV E
6. FRAMES
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):
a. Move the cursor to Approach point 1.
b. Jog the robot so that the tool tip touches a reference point.
6–17
6. FRAMES
MAROUHT9102171E REV E
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):
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.
6–18
MAROUHT9102171E REV E
6. FRAMES
-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.
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.
6–19
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–20
MAROUHT9102171E REV E
6. FRAMES
Table 6–3. Tool Frame Setup Four Point DETAIL Screen Items (Cont'd)
ITEMS
DESCRIPTION
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.
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–21
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–22
MAROUHT9102171E REV E
6. FRAMES
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:
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.
6–23
6. FRAMES
MAROUHT9102171E REV E
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–24
MAROUHT9102171E REV E
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.
6–25
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–26
MAROUHT9102171E REV E
6. FRAMES
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.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.
6–27
6. FRAMES
MAROUHT9102171E REV E
Procedure 6-4 Setting Up Tool Frame Using the Six 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.
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.
6–28
MAROUHT9102171E REV E
6. FRAMES
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
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.
6–29
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–30
MAROUHT9102171E REV E
6. FRAMES
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):
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.
6–31
6. FRAMES
MAROUHT9102171E REV E
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.
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.
-OR-
6–32
MAROUHT9102171E REV E
6. FRAMES
You 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.
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.
6–33
6. FRAMES
MAROUHT9102171E REV E
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–34
MAROUHT9102171E REV E
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.
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–35
6. FRAMES
MAROUHT9102171E REV E
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–36
MAROUHT9102171E REV E
6. FRAMES
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.
6–37
6. FRAMES
MAROUHT9102171E REV E
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
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.
6–38
MAROUHT9102171E REV E
6. FRAMES
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 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.
6–39
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–40
MAROUHT9102171E REV E
6. FRAMES
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.
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.
6–41
6. FRAMES
MAROUHT9102171E REV E
Table 6–6. User Frame Setup Screen Items (Cont'd)
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.
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 .
6–42
MAROUHT9102171E REV E
6. FRAMES
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.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).
6–43
6. FRAMES
MAROUHT9102171E REV E
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 )
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–44
MAROUHT9102171E REV E
6. FRAMES
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.
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.
6–45
6. FRAMES
MAROUHT9102171E REV E
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) :
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.
6–46
MAROUHT9102171E REV E
6. FRAMES
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.
Figure 6–14. Defining the X direction Point
6–47
6. FRAMES
MAROUHT9102171E REV E
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
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 .
6–48
MAROUHT9102171E REV E
6. FRAMES
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,
k. Press MENU.
l. Select SYSTEM.
m. Press F1, [TYPE].
n. Select Variables.
o. Press FCTN.
6–49
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–50
MAROUHT9102171E REV E
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 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–51
6. FRAMES
MAROUHT9102171E REV E
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.
6–52
MAROUHT9102171E REV E
6. FRAMES
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 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–53
6. FRAMES
MAROUHT9102171E REV E
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
6–54
MAROUHT9102171E REV E
6. FRAMES
17. Teach the origin of the second user frame (System Origin):
a. Move the cursor to System Origin.
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 .
6–55
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–56
MAROUHT9102171E REV E
6. FRAMES
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.
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.
6–57
6. FRAMES
MAROUHT9102171E REV E
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.
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–58
MAROUHT9102171E REV E
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.
6–59
6. FRAMES
MAROUHT9102171E REV E
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 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.
6–60
MAROUHT9102171E REV E
6. FRAMES
17. To save 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.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.
6–61
6. FRAMES
MAROUHT9102171E REV E
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 *************
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–62
MAROUHT9102171E REV E
6. FRAMES
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.
Figure 6–20. Remote TCP Frame
You can use two methods to define the RTCP frame:
• Three point method
• Direct entry method
6–63
6. FRAMES
MAROUHT9102171E REV E
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.
• 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.
6–64
MAROUHT9102171E REV E
6. FRAMES
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.
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.
6–65
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–66
MAROUHT9102171E REV E
6. FRAMES
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.
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.
6–67
6. FRAMES
MAROUHT9102171E REV E
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.
• 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:
6–68
MAROUHT9102171E REV E
6. FRAMES
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–69
6. FRAMES
MAROUHT9102171E REV E
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 .
6–70
MAROUHT9102171E REV E
6. FRAMES
• Move the cursor to the w, p, and r components and enter 0 for each component.
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].
6–71
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–72
MAROUHT9102171E REV E
6. FRAMES
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 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.
6–73
6. FRAMES
MAROUHT9102171E REV E
Figure 6–23. Jog Frame Defined Parallel to Part
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
6–74
MAROUHT9102171E REV E
6. FRAMES
• 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.
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.
6–75
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–76
MAROUHT9102171E REV E
6. FRAMES
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
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–77
6. FRAMES
MAROUHT9102171E REV E
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–78
MAROUHT9102171E REV E
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.
6–79
6. FRAMES
MAROUHT9102171E REV E
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.
-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.
6–80
MAROUHT9102171E REV E
6. FRAMES
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.
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.
6–81
6. FRAMES
MAROUHT9102171E REV E
Table 6–12. Jog Frame Setup Direct Entry DETAIL Screen Items (Cont'd)
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.
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.
6–82
MAROUHT9102171E REV E
6. FRAMES
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
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.
6–83
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–84
MAROUHT9102171E REV E
6. FRAMES
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.
Conditions
• The jog frame you want to select has been set up.
6–85
6. FRAMES
MAROUHT9102171E REV E
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. At the
6–86
MAROUHT9102171E REV E
6. FRAMES
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).
6–87
6. FRAMES
MAROUHT9102171E REV E
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.
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.
Press this key to access various application-specific options.
[TYPE]
DETAIL
[OTHER]
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).
Press this key to clear the current value of the cell frame.
CLEAR
COPY
Press this key to copy to/from cell frame from/to a specific
user frame or cd pair (in systems with coordinated motion
option).
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.
[OTHER]
APPLY
6–88
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).
Press this button for the changes you have applied to take
effect.
MAROUHT9102171E REV E
6. FRAMES
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.
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.
6–89
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–90
MAROUHT9102171E REV E
6. FRAMES
Table 6–15. Cell Frame Copy Screen Items (Cont'd)
ITEM
DESCRIPTION
[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.
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.
6–91
6. FRAMES
MAROUHT9102171E REV E
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.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:
6–92
0.0
0.0
Z:
R:
0.0
0.0
MAROUHT9102171E REV E
6. FRAMES
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.
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.
6–93
6. FRAMES
MAROUHT9102171E REV E
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.
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.
6–94
MAROUHT9102171E REV E
6. FRAMES
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–95
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
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–39
Position Confirmation .............................................................................. 7–40
Motion Status Display .............................................................................. 7–41
Frame Number of Positional Data ............................................................ 7–50
Switch Frame Check Type ........................................................................ 7–51
Speed ....................................................................................................... 7–52
Termination Type ..................................................................................... 7–60
MOTION OPTIONS INSTRUCTION.............................................................. 7–62
Acceleration Override .............................................................................. 7–64
Advanced Constant Path ......................................................................... 7–65
Break ....................................................................................................... 7–84
Constant Path .......................................................................................... 7–84
Coordinated Motion .................................................................................. 7–95
Corner Distance Control Option ................................................................ 7–96
Extended Velocity EV Motion Option ..................................................... 7–108
FacePlate Linear ...................................................................................... 7–110
Incremental Motion ................................................................................ 7–112
Minimal Rotation (HandlingTool Only) ................................................... 7–113
Offset ..................................................................................................... 7–115
Offset Position Register ......................................................................... 7–115
ORNT_BASE ............................................................................................ 7–116
Remote TCP Motion Option (optional) ................................................... 7–120
Search [ ] Motion Option ........................................................................ 7–122
Skip Jump ................................................................................................ 7–123
7–1
7. PROGRAM INSTRUCTIONS
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
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–2
MAROUHT9102171E REV E
Skip Label ..............................................................................................
Time Before / Time After ........................................................................
Tool_offset .............................................................................................
Tool offset position register ...................................................................
Wrist Joint .............................................................................................
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 .................................................
7–124
7–125
7–126
7–127
7–129
7–129
7–132
7–132
7–133
7–134
7–134
7–135
7–135
7–136
7–139
7–145
7–152
7–160
7–168
7–168
7–171
7–171
7–171
7–172
7–173
7–173
7–173
7–173
7–175
7–179
7–189
7–190
7–193
7–193
7–193
7–195
7–200
7–204
7–206
7–206
7–206
7–208
7–210
7–210
7–211
7–214
7–214
7–215
7–215
7–217
7–223
MAROUHT9102171E REV E
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
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. PROGRAM INSTRUCTIONS
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 ...........................................................
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 ................................................................................................
7–224
7–225
7–226
7–227
7–227
7–227
7–227
7–228
7–229
7–229
7–229
7–231
7–231
7–232
7–234
7–235
7–235
7–236
7–236
7–238
7–240
7–241
7–254
7–254
7–255
7–255
7–255
7–256
7–256
7–258
7–261
7–261
7–262
7–264
7–266
7–267
7–269
7–273
7–274
7–276
7–276
7–278
7–280
7–284
7–284
7–284
7–286
7–289
7–290
7–290
7–3
7. PROGRAM INSTRUCTIONS
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
7.33.3
7.33.4
7.33.5
7.33.6
7.33.7
7.33.8
7.33.9
7.33.10
7.33.11
7.33.12
7.33.13
7.33.14
7.33.15
7.33.16
7.33.17
7.33.18
7.33.19
7.33.20
7.33.21
7.33.22
7.33.23
7.33.24
7.33.25
7.34
7–4
MAROUHT9102171E REV E
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 ............................................
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–290
7–290
7–291
7–291
7–292
7–292
7–292
7–293
7–296
7–296
7–296
7–297
7–297
7–301
7–304
7–304
7–305
7–306
7–307
7–308
7–309
7–310
7–311
7–311
7–311
7–312
7–312
7–313
7–313
7–314
7–314
7–315
7–315
7–316
7–316
7–317
7–317
7–318
7–318
7–319
7–319
7–320
7–320
7–321
7–322
7–323
7–323
7–324
7–324
MAROUHT9102171E REV E
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
7–5
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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
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
7–6
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
• 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.
7–7
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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.
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 E
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.
7–9
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
If you change an existing point to "C", that position becomes the "via" or intermediate position.
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
7–10
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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.
7–11
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• Logical instructions can be written between every position.
See Figure 7–9 .
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]
P[2]
P[2]
P[3]
Circle of P[2], P[3] and P[4]
7–12
P[5]
P[1]
P[1]
P[4]
Circle of P[2], P[5]
and P[3]
P[4]
P[3]
Can insert
teaching points.
Circle
CircleofofP[5],
P[3],P[3]
P[4]and
andP[4]
P[5]
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
• 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: J P[1] 100% FINE
2: A P[2] 200mm/sec FINE
3: A P[3] 200mm/sec CNT 100
4: A P[4] 200mm/sec CNT 100
5: A P[5] 200mm/sec FINE
6: L P[6] 200mm/sec FINE
7–13
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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 .
7–14
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–15
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Figure 7–13. Last A Motion
7.2.3.5 Circular Motion Direction
1: J P[1] 100% FINE
2: A P[2] 200mm/sec FINE
3: A P[3] 200mm/sec CNT100
4: A P[4] 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–16
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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: J P[1] 100% FINE
2: A P[2] 200mm/sec FINE
3: A P[3] 200mm/sec CNT100
4: L P[3] 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.
7–17
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
1: J P[1] 100% FINE
2: A P[2] 200mm/sec FINE
3: A P[2] 200mm/sec CNT100
4: A P[3] 200mm/sec CNT100
5: A P[3] 200mm/sec FINE
6: L P[4] 200mm/sec FINE
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: J P[1] 100% FINE
2: A P[2] 200mm/sec FINE
3: A P[3] 200mm/sec CNT100
4: A P[4] 200mm/sec CNT100
7–18
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
1: J P[1] 100% FINE
2: A P[2] 200mm/sec FINE
3: A P[3] 200mm/sec CNT100
4: A P[4] 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.
7–19
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
1: J P[1] 100% FINE
2: A P[2] 200mm/sec FINE
3: A P[3] 200mm/sec CNT100
4: A P[4] 200mm/sec CNT100
5: A P[5] 200mm/sec FINE
6: L P[6] 200mm/sec 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.
Figure 7–18. Resume After Jog
7–20
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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 .
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 .
7–21
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Figure 7–20. Change of Destination Point
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 .
7–22
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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 .
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
7–23
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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 .
Figure 7–24. Deletion of Next A Motion
7–24
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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: J P[1] 100% FINE
2: A P[2] 200mm/sec FINE
3: A P[3] 200mm/sec CNT100
4: A P[4] 200mm/sec FINE
5: L P[5] 200mm/sec CNT100
6: A P[6] 200mm/sec FINE
7: A P[7] 200mm/sec CNT100
8: A P[8] 200mm/sec FINE
9: J P[9] 200mm/sec 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 .
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 .
7–25
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
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 .
7–26
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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
If the program is resumed by backward execution, the robot moves to P[5] in a linear motion.
7–27
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–28
MAROUHT9102171E REV E
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–29
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.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 .
7–30
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Figure 7–35. Backward Execution
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].
7–31
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.2.3.15 Backward Resume from Different Line
Refer to Section 7.2.3.14 .
7–32
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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: J P[1] 100% FINE
2: A P[2] 200mm/sec CNT100
3: A P[3] 200mm/sec CNT100
4: A P[4] 200mm/sec CNT100
5:
JMP LBL[1]
6: A P[5] 200mm/sec CNT100
7: L P[6] 200mm/sec 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.
If/Call
IF SDI[1]=ON CALL (Prg)
SELECT / JMP / LBL causes error.
7–33
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Table 7–1. Available Logic Instructions Between Type A Motion Instructions (Cont'd)
Instructions
Examples
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
7–34
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Table 7–1. Available Logic Instructions Between Type A Motion Instructions (Cont'd)
Instructions
Examples
InterBus PCI
IB attach
Path Switch
PS-10mm, 1.0 sec DO[1]=ON
Collision Detect
COL DETECT ON
Approach Instruction
Approach_STOP[1] = TMP_DISABLE
Arc
Arc Start[1]
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]
Notes
7–35
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Table 7–3. Instructions Unavailable Between A Type Motion Instructions (Cont'd)
Instructions
Examples
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
Notes
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]
7–36
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.
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Table 7–4. Available Motion Options (Cont'd)
Instructions
Example
Weave
Weave Sine[1]
Touch Sensing
Search [X]
Coordinated motion
COORD
Corner Region
CR50
Comment
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 .
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
7–37
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
avoid this, a type A motion instruction can detect inconsistent position at execution. If detected, an
alarm is posted.
1: J P[1] 100% FINE
2: A P[2] 200mm/sec CNT100
3: A P[3] 200mm/sec CNT100
4: A PR[1] 200mm/sec CNT100
5: A P[5] 200mm/sec CNT100
6: A P[6] 200mm/sec CNT100
7: L 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.
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: J P[1] 100% FINE
2:
LOCK PREG
3: A P[2] 200mm/sec CNT100
4: A P[3] 200mm/sec CNT100
5: A PR[1] 200mm/sec CNT100
6: A P[5] 200mm/sec CNT100
7: A P[6] 200mm/sec CNT100
8:
UNLOCK PREG
9: 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–38
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
• 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.
7–39
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–40
MAROUHT9102171E REV E
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 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]
4:J P[1] 100% FINE
1 (Multiple @)
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–41
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–42
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Figure 7–40. Motion Info is Toggled ON and OFF with EDCMD
TEST
JOINT
10 %
1/5
1:J @P[1] 100% FINE__________________
2:J P[2] 40% FINE | 1 Insert
|
: Arc Start[1]
| 2 Delete
|
3:L P[3] WELD_SPEE| 3 Copy
|
: Arc End[1]
| 4 Find
|
4:J @P[1] 100% FINE| 5 Replace
|
[End]
| 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]
7–43
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Table 7–7. Display Modes (Cont'd)
Mode
Description
Header
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]
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–44
MAROUHT9102171E REV E
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
7–45
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
Table 7–8. Display Mode Examples
Mode
Example
Description
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
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.
0
1
P[mm to TCP G1]
\\\1:J @P[1:
.000] 100% FINE
2:J P[2:
] 40% FINE
: Arc Start[1]
3:L P[3:
] WELD_SPEED FINE
: Arc End[1]
4:J @P[1:
] 100% FINE
2
P[mm to TCP G1]
\\\1:J @P[1:
.000] 100% FINE
2:J P[2:
26.795] 40% FINE
: Arc Start[1]
3:L P[3:
11.520] WELD_SPEED FINE
: Arc End[1]
4:J @P[1:
.000] 100% FINE
7–46
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.
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Table 7–8. Display Mode Examples (Cont'd)
Mode
Example
Description
3
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.
P[Cmnd Time G1]
\\\3:L P[3:
2.9s] WELD_SPEED FINE
: Arc End[1]
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.
P[Cmnd %
\\\3:L P[3: 28%
: Arc End[1]
4
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]
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.
7–47
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Table 7–8. Display Mode Examples (Cont'd)
Mode
Example
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]
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
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.
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
7–48
Description
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Table 7–8. Display Mode Examples (Cont'd)
Mode
Example
20
P[WorkXZ dg G1]
\\\1:J @P[1: 36.832 R] 100% FINE
21
Description
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
23
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
7–49
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Table 7–8. Display Mode Examples (Cont'd)
Mode
Example
Description
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.
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
These fields indicate the current frame number.
UF: User Frame number
7–50
deg
deg
deg
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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.
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.
7–51
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
Joint motion uses
7–52
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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–53
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
7–54
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
The following examples show various motion type instructions that take their speed value from
a register (R[ ]).
• 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.
7–55
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
*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.
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.
7–56
MAROUHT9102171E REV E
Modify motion menu
1 Replace speed
2 Replace term
3 Insert option
4 Remove option
7. PROGRAM INSTRUCTIONS
5
6
7
8
4. Select Replace speed. See the following screen for an example.
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.
7–57
7. PROGRAM INSTRUCTIONS
Speed type menu
1 All type
2 Speed value
3 R[ ]
4 R[R[ ]]
MAROUHT9102171E REV E
5
6
7
8
7. Specify the units of the replacement motion instruction.
See the following screen for an example.
Select motion item
1 %
2 mm/sec
3 cm/min
4 inch/min
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.
7–58
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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.
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–59
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
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.
7–60
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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.
7–61
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
— Process Speed
7–62
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
— 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
7–63
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Refer to Section 7.3.18
• Tool offset
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.
7–64
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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)
7–65
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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.
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 .
7–66
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Figure 7–50. PICK and PLACE Application with CNT100
Robot is at P1
J P[2] 100% CNT100
L P[3] 2000 mm/s FINE
L [P2] 2000 mm/s CNT100
J [P4] 2000 mm/s CNT100
L [P5] 2000 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.
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 .
7–67
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Figure 7–51. Adjusting P3 and P5 with Linear Distance
The program would be (from P1):
J P[2] 100% CNT100
L P[3] 2000 mm/s FINE AP_LD100
L P[2] 2000 mm/s CNT100 RT_LD100
J P[4] 2000 mm/s CNT100
L P[5] 2000 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–68
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–69
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–70
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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).
7–71
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• The linear distance function only supports articulated robots and does not support Independent
Axes or Positioners.
• The local condition trigger time might be different than without Linear Distance. However the
timing is repeatable.
• When multiple group motion is used, the motion will be synchronized. However, if more than
one group has linear distance enabled, all the groups will have linear distance satisfied.
• When using max_speed (refer to max speed section below), the specified Linear Distance may
not be guaranteed.
• 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.
7–72
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
Motion Modify
1 Retract_LD
2 Approach_LD
3 Tool_Offset
4 Tool_Offset,PR[
LD
JOINT 10 %
5 TIME BEFORE
6 TIME AFTER
7 DISTANCE BEFORE
8 ---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).
7–73
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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
7–74
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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
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
7–75
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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
7–76
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
Figure 7–57. Corner Path determined by CRy if Linear Dist is satisfied
7–77
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
7–78
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
After the path is taught, if you want to adjust its process speed from the nominal taught value, but do
not want to change the path, you can use the Process Speed feature.
Add this motion option to the range of motion lines where adjustment is required.
• PSPD 100 is equivalent to the default cases without PSPD option.
• 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.
7–79
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
• 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
7–80
J P[1] 50% FINE PSPD110
L P[2] 500 mm/sec CNT100 PSPD110
L P[3] 500 mm/sec CNT0 PSPD110
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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
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
7–81
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
— 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.
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:
7–82
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
— 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.
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–83
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.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.
7–84
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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
— 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.
7–85
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
The instructions in this category are as follows:
7–86
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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–87
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.34 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 J P[1] 50% FINE
2 L P[2] 500 mm/sec CNT100
3 R[1] = 1
4 Wait DI[1] = on
5 L P[3] 500 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 J P[1] 50% FINE
cursor –> 2 L P[2] 500 mm/sec CNT100
3 R[1] = 1
4 Wait DI[1] = on
5 L P[3] 500 mm/sec CNT0
7–88
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
b. case 2: Hold/E-stop at WAIT statement (cursor at non-motion line)
1 J P[1] 50% FINE
2 L P[2] 500 mm/sec CNT100
3 R[1] = 1
cursor –> 4 Wait DI[1] = on
5 L P[3] 500 mm/sec CNT0
c. case 3: Hold/E-stop at motion line after WAIT statement
1 J P[1] 50% FINE
2 L P[2] 500 mm/sec CNT100
3 R[1] = 1
4 Wait DI[1] = on
cursor –> 5 L P[3] 500 mm/sec CNT0
7–89
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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 ->
7–90
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 E
7. PROGRAM INSTRUCTIONS
After 1st 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
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
7–91
7. PROGRAM INSTRUCTIONS
->
1
2
3
4
5
MAROUHT9102171E REV E
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
->
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
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
7–92
MAROUHT9102171E REV E
->
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
->
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
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
7–93
7. PROGRAM INSTRUCTIONS
-> 1
2
3
4
5
MAROUHT9102171E REV E
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.)
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–94
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 E
7. PROGRAM INSTRUCTIONS
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
->
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
7.3.5 Coordinated Motion
J P[1] 50% FINE
7–95
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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.
7–96
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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 .
Figure 7–60. Corner Distance Screen
7–97
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–98
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–99
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
7–100
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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[ ]
7–101
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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).
• 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.
7–102
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
• 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 .
7–103
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
— 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.
7–104
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
— 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
Corner Distance function supports LINEAR DISTANCE option, though LINEAR DISTANCE
has preference.
7–105
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
— 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–106
MAROUHT9102171E REV E
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–107
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
7–108
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Simultaneous EV
J P[1] 100% FINE
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
7–109
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.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.
7–110
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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
• 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–111
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
7–112
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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."
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
7–113
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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.
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
7–114
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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
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
7–115
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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).
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;
7–116
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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 .
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.
7–117
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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” .
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 .
7–118
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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]
: 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.
7–119
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
• RPM/Multi-Pass
• Touch Sensing
• Weaving
7–120
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–121
7. PROGRAM INSTRUCTIONS
Figure 7–78. Remote TCP (RTCP) Motion Option Example
7.3.15 Search [ ] Motion Option
J P[1] 50% FINE
Search[ ]
7–122
MAROUHT9102171E REV E
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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 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–123
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–124
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–125
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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:
7–126
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
— 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.
— 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.
7–127
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
— 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.
— 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–128
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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.
7–129
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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).
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:
7–130
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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 column- P[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.
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.
7–131
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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: PALLETIZING EX_1
11: J PAL_1[A_3] 100% FINE
12: L PAL_1[A_2] 500mm/sec Cnt50
13: L PAL_1[A_1] 300mm/sec Cnt10
14: L PAL_1[BTM] 100mm/sec FINE
15: OPEN_HAND1
16: L PAL_1[R_1] 300mm/sec Cnt10
17: L PAL_1[R_2] 500mm/sec Cnt50
18: PALLETIZING-END-1
:
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
• Touch Offset
• Touch Offset End
7–132
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–133
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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 .
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:
7–134
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
— 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.
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–135
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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
7–136
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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
39: !THE NEXT LINE CLOSES THE GRIPPER
40: RDO[1]=OFF
41: RDO[2]=ON
42: WAIT .50 (sec)
43: L P[7] 100mm/sec FINE
44: L P[9] 100mm/sec CNT100
45: J P[[6] 100% CNT100
46: J P[[1] 100% CNT100
47: J P[[5] 100% CNT100
48: J P[[12] 100% CNT100
49: L P[[10] 100mm/sec CNT100
50: J P[[11] 100% CNT100
51: L P[13] 100mm/sec CNT50
52: PALLETIZING-B_2
53: J PAL_2[A_1] 100% FINE Offset,PR[3]
54: J PAL_2[BTM] 10% FINE Offset,PR[3]
55: !THE NEXT LINE CLOSES THE GRIPPER
56: RDO[1]=OFF
57: RDO[2]=ON
58: WAIT .50(sec)
59: J PAL_2[R_1] 30% FINE Offset,PR[3]
61: IF R[1]<>9,JMP LBL[1]
62: R[1]=0
63: PL[1]=[1,1,1]
64: PL[2]=[1,1,1]
65: LBL[2]
66: IF SDI[4]=ON, CALL BALLET
67: J P[5] 100% CNT100
7–137
7. PROGRAM INSTRUCTIONS
68: R[1]=R[1]+1
69: PR[3]=PR[4]
70: IF R[1]<6, JMP LBL[20]
71: IF R[1]=7, JMP LBL[20]
72: PR[3]=PR[2]
73: LBL[20]
74: PALLETIZING-B_2
75: J PAL_2[A_1] 100% FINE Offset,PR[3]
76: J PAL_2[BTM] 30% FINE Offset,PR[3]
77: CLOSE THE GRIPPER
78: RDO[1]=OFF
79: RDO[2]=ON
80: WAIT .50 (sec)
81: J PAL_2[R_1] 30% FINE Offset,PR[3]
82: PALLETIZING-END_2
83: J P[5] 100% CNT100
84: J P[1] 100% CNT100
85: WAIT SDI[10] =OFF
86: J P[2] 100% FINE
87: L P[4] 100 mm/sec FINE
88: !THE NEXT LINE OPENS THE GRIPPER
89: RDO[1]=ON
90: RDO[2]=OFF
91: WAIT .50 (sec)
92: L P[2] 100mm/sec FINE
93: WAIT SDI[11]=ON
94: J P[6] 100% CNT100
95: L P[9] 100mm/sec CNT100
96: L P[7] 100mm/sec FINE
97: !THE NEXT LINE CLOSES THE GRIPPER
98: RDO[1]=OFF
99: RDO[2]=ON
100: WAIT .50 (sec)
101: L P[8] 100mm/sec FINE
102: L P[9] 100mm/sec
103: J P[6] 100% CNT100
104: J P[1] 100% CNT100
105: J P[5] 100% CNT100
106: J P[12] 100% CNT100
107: L P[10] 100mm/sec CNT100
108: J P[11] 100% CNT100
109: L P[13] 100mm/sec CNT50
110: PALLETIZING-B_1
111: J PAL_1[A_1] 100% FINE Offset,PR[1]
112: J_PAL_1[BTM] 30% FINE Offset,PR[1]
113: !THE NEXT LINE OPENS THE GRIPPER
114: RDO[1]=ON
7–138
MAROUHT9102171E REV E
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
115: RDO[2]=OFF
116: WAIT .50(sec)
117: J PAL_1[R_1] 30% FINE Offset,PR[1]
118: PALLETIZING-END_1
119: IF R[1]<>9,JMP LBL[2]
120: R[1]=0
121: 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.
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.
7–139
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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.
7–140
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Table 7–13. PALLETIZING-B Pallet Editor Items (Cont'd)
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.
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.
7–141
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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]
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.
7–142
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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]
7–143
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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.
7–144
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
Figure 7–90. Example of PALLETIZING-BX Instruction
7–145
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–146
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Table 7–14. PALLETIZING-BX Pallet Editor Items (Cont'd)
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.
7–147
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Table 7–14. PALLETIZING-BX Pallet Editor Items (Cont'd)
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.
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.
7–148
MAROUHT9102171E REV E
PALLETIZING statem
1 PALLETIZING-B
2 PALLETIZING-BX
3 PALLETIZING-E
4 PALLETIZING-EX
Main Pallet
[END]
Select item
7. PROGRAM INSTRUCTIONS
5 PALLETIZING-END
6
7
8
c. Select PALLETIZING- BX. 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] 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.
7–149
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
• 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]
7–150
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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 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.
7–151
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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?
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:
7–152
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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.
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.
7–153
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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.
7–154
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Table 7–15. PALLETIZINGE Pallet Editor Items (Cont'd)
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
Rows
Layers
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.
• 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.
7–155
7. PROGRAM INSTRUCTIONS
PALLETIZING statem
1 PALLETIZING-B
2 PALLETIZING-BX
3 PALLETIZING-E
4 PALLETIZING-EX
Main Pallet
[END]
Select item
MAROUHT9102171E REV E
5 PALLETIZING-END
6
7
8
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.
7–156
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
• 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.
7–157
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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.
• 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?
7–158
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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–159
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–160
MAROUHT9102171E REV E
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.
7–161
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Table 7–16. PALLETIZING-EX Pallet Editor Items (Cont'd)
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.
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.
7–162
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Table 7–16. PALLETIZING-EX Pallet Editor Items (Cont'd)
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
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:
7–163
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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-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.
7–164
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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.
• 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.
7–165
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
— 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.
• 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?
7–166
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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 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.
7–167
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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.
7–168
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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
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]
7–169
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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]
For conditional branching instruction using PL[], refer to Section 7.9.4 .
7–170
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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:
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 .
7–171
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.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–172
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
JMP LBL[x]
The JMP LBL[x] instruction causes the program to branch to the specified label. See Figure 7–98 .
7–173
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–174
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–175
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–176
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
7–177
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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
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–178
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
7–179
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
Figure 7–106. Example Text (.DT) File
How to Write the Text File
The text file details are described below.
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".
7–180
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
- 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 (,)
• 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"
7–181
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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}
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 )
7–182
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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]
- 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
7–183
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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 (ARGDISPKN01.DT) is not loaded : File name to fail to read
FILE-096 on line n, xxx
: The line (n) and characters or value
(xxx) to fail to read
FILE-097 Out of memory
: Out of Temporary memory to be required
FILE-098 Over 1000 programs
: Over the maximum programs
FILE-099 Wrong end of file
: End of file not after [ENDPROGRAM]
FILE-100 Wrong tag/item/character code : Miss of tag, item or character code
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–184
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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]
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.
7–185
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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)
The list of strings is displayed as items on the submenu.
7–186
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–187
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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)
7–188
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
[ $ARGDISPMODE=2 ]
CALL HANDLING(LINE=3,SLOW=1,BIG=3,NO_LOAD=0)
-----------------------------------------------------------------------------
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: J P[1] 100% FINE
11:
COL DETECT OFF
12: L P[2] 2000mm/sec CNT100
13: L P[3] 2000mm/sec CNT100
14: L P[4] 2000mm/sec CNT100
15:
COL DETECT ON
16: J P[5] 50% FINE
7–189
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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 .
7–190
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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
7–191
7. PROGRAM INSTRUCTIONS
Figure 7–110. Condition2 for I/O
Figure 7–111. Condition2 for I/O
Figure 7–112. Condition for Error Status
7–192
MAROUHT9102171E REV E
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.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.
7–193
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.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–194
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
2. Move the cursor to line 1 and press F1, [INST].
3. Select FOR/ENDFOR.
7–195
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–196
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–197
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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
7–198
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–199
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–200
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–201
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–202
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–203
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
7–204
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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.
• 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
7–205
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
• 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 .
7–206
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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
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]
7–207
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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 .
7–208
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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]
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–209
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.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.
7–210
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.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.
7–211
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–212
MAROUHT9102171E REV E
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–213
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
7–214
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• The Math function instruction can be used in an assignment statement, conditional statement
and wait command.
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–215
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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.
7–216
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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.”
• 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–217
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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:
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:
7–218
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Execute this TP program then,
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:
7–219
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.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:
7–220
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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:
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,
7–221
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.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–222
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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–223
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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 “…=(…)”.
4. Select register “R[ ]”. Then the cursor moves in the square bracket.
5. Input index 1.
7–224
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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”.
7–225
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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.
• 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)
7–226
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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.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:
7–227
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.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–228
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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 (!).
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.
7–229
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
--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.
7–230
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
• 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.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.
7–231
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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–232
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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–233
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
• 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.
7–234
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
Figure 7–139. JOINT_MAX_SPEED Instruction - Single Motion Group Syntax
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–235
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
7.17.2 Data Types
The following data types are available for mixed logic 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.
7–236
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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–237
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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]))
• 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:
7–238
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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
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–239
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
• 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.
7–240
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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.
7–241
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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
• 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])
7–242
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
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.
7–243
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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:
• Stop: The program is stopped
• Running: The program is running in Normal mode.
• Running (High): The program is running in High-Level mode.
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–244
MAROUHT9102171E REV E
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.
7–245
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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:
7–246
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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:
Port Detail
Flag
Comment:[
[
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
7–247
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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: F[2]=(DI[1] AND !F[1]) ;
2: F[1]=(DI[1]) ;
3: ! BIT1 ;
4: F[3]=(F[41]) ;
5: F[41]=((F[2] AND !F[3]) OR (!F[2] AND F[3])) ;
6: F[2]=(F[2] AND F[3]) ;
7: ! BIT2 ;
8: F[3]=(F[42]) ;
9: F[42]=((F[2] AND !F[3]) OR (!F[2] AND F[3])) ;
10: F[2]=(F[2] AND F[3]) ;
11: ! BIT3 ;
12: F[3]=(F[43]) ;
13: F[43]=((F[801] AND !F[3]) OR (!F[801] AND F[3])) ;
14: F[2]=(F[2] AND F[3]) ;
15: ! BIT4 ;
16: F[3]=(F[44]) ;
17: F[44]=((F[2] AND !F[3]) OR (!F[2] AND F[3])) ;
18: F[2]=(F[2] AND F[3]) ;
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:
7–248
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 ;
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
9: F[3]=(F[42]) ;
10: F[42]=(F[1] AND ((F[2] AND !F[3]) OR (!F[2] AND F[3]))) ;
11: F[2]=(F[2] AND F[3]) ;
12: ! BIT3 ;
13: F[3]=(F[43]) ;
14: F[43]=(F[1] AND ((F[2] AND !F[3]) OR (!F[2] AND F[3]))) ;
15: F[2]=(F[2] AND F[3]) ;
16: ! BIT4 ;
17: F[3]=(F[44]) ;
18: F[44]=(F[1] AND ((F[2] AND !F[3]) OR (!F[2] AND F[3]))) ;
19: F[2]=(F[2] AND F[3]) ;
20: ! 80msec is 10 * 8msec. 10=0b1010 ;
21: 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.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
7–249
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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:
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:
7–250
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.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])
7–251
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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 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.
7–252
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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:
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.
7–253
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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
— $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.
7–254
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.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,*,*,*,*,*].
7–255
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
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.
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.
7–256
MAROUHT9102171E REV E
7. PROGRAM INSTRUCTIONS
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.
• If a motion statement is a circular motion, a motion group instruction cannot be specified.
7–257
7. PROGRAM INSTRUCTIONS
MAROUHT9102171E REV E
• 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
0
You can add this document to your study collection(s)
Sign in Available only to authorized usersYou can add this document to your saved list
Sign in Available only to authorized users(For complaints, use another form )