Programming FANUC® Robots for Industry Applications Front Matter

Page 1

PROGRAMMING for

ROBOTS

Industry Applications

James W. Gruenke


Programming FANUC Robots for Industry Applications contains procedures commonly practiced in industry and the trade. Specific procedures vary with each task and must be performed by a qualified person. For maximum safety, always refer to specific manufacturer recommendations, insurance regulations, specific job site and plant procedures, applicable federal, state, and local regulations, and any authority having jurisdiction. The material contained herein is intended to be an educational resource for the user. Neither American Technical Publishers nor FANUC America Corporation assumes responsibility or liability in connection with this material or its use by any individual or organization.

American Technical Publishers Editorial Staff Editor in Chief: Peter A. Zurlis Director of Product Development: Cathy A. Scruggs Assistant Production Manager: Nicole D. Burian Technical Editor: Julie M. Welch Supervising Copy Editor: Catherine A. Mini Copy Editor: James R. Hein Editorial Assistant: Erin E. Bello Art Manager: Sarah E. Kaducak

Cover Design: Kevin L. Cuasay Illustration/Layout: Kevin L. Cuasay Bethany J. Fisher Richard O. Davis Nicholas W. Basham Melanie G. Doornbos Nick G. Doornbos Digital Media Manager: Adam T. Schuldt Digital Resources: Cory S. Butler Tim A. Miller James V. Cashman

ABB is a registered trademark of ABB Asea Brown Boveri Ltd Limited Company. FANUC, iPendant, and ROBOGUIDE are registered trademarks of FANUC Corporation. KAREL is a registered trademark of FANUC Robotics America, Inc. ISO is a registered trademark of the International Organization for Standardization. Windows is a registered trademark of Microsoft Corporation. NFPA 70, NFPA 70E, and National Electrical Code are registered trademarks of National Fire Protection Association, Inc. Quick Quizzes is a registered trademark of American Technical Publishers.

© 2021 by American Technical Publishers All rights reserved 1 2 3 4 5 6 7 8 9 –  21 –  9 8 7 6 5 4 3 2 1 Printed in the United States of America    ISBN 978-0-8269-3412-3    eISBN 978-0-8269-9598-8

This book is printed on recycled paper.


: : : 7: : : :J : :L

UTOOL_NUM=1 UFRAME_NUM=0 TIMER[1]=RESET R[1:Process1_Count]=0 @P[1:Home] 100% FINE P[9:GT1] 100mm/sec FINE

:L : : : : : : :J :C

P[10:GT2] 100mm/sec FINE RO[2:Gripper Closed]=ON WAIT RI[1:PartSensor]=ON WAIT 1.00(sec)

Acknowledgments !Process 1: Repeat 3 time LBL[2] P[2:CirclePt1] 50% FINE P[3:CirclePt2]

ABOUT THE AUTHOR James (Jim) W. Gruenke After earning his BS Industrial Technology, Plant Engineering degree from the University of Wisconsin-Stout, Jim joined the US Army. Quickly rising through the enlisted ranks, Jim was assigned as the supervisor of the Heavy Equipment and Power Generation Maintenance Shop in conjunction with the Cold Regions Test Center located in Alaska. Leaving the military in 1989, Jim accepted the position of plant engineer and maintenance manager for a company in his home state of Wisconsin. Over the next 25 years, he held a variety of positions with four different companies and always gained responsibilities. These positions provided experience around the world as a project manager for the construction, rebuilding, and startup of facilities using innovative automation equipment to ensure high and consistent product quality. After nearly 25 years in industry, Jim accepted an instructor position at Lakeshore Technical College (LTC) in 2009. He also returned to UW-Stout where he earned an MS in Career and Technical Education. Being tasked with advancing LTC’s robotics program, Jim led a team that developed the courses and labs into a renowned program with state-of-the-art equipment and facilities. Jim currently holds the position of program coordinator and instructor in the Automation Technology and Electro-Mechanical Maintenance Technician Associate Degree programs and the Mechatronics Technician Apprenticeship program.

TECHNICAL ASSISTANCE The author and publisher are grateful for the technical assistance provided by FANUC America Corporation.

iii


Contents

1

CHAPTER

:A P[7:ArcPt2] 500mm/sec CN :A P[8:ArcPt3] 500mm/sec CN : : TIMER[1]=STOP : : CALL PACK_PROGRAM : : !Trace fixture :J PR[1:Origin] 100% FINE

ROBOT CELLS AND SAFETY

: : : : : : :A :A :A

MESSAGE[Turn Part Over] WAIT 5.00(sec) !Start process 2 UFRAME_NUM=1 TIMER[1]=START P[6:ArcPt1] 500mm/sec CN P[7:ArcPt2] 500mm/sec CN P[8:ArcPt3] 500mm/sec CN

1

SECTION 1.1 INDUSTRIAL ROBOTS ................................................................................... 2 SECTION 1.2 ROBOT CELL COMPONENTS ...................................................................... 4 SECTION 1.3 ROBOT SAFETY STANDARDS ................................................................... 15 PROCEDURE: • Changing Robot Batteries ..................................................................................................17

Review 1................................................................................................................................. 21 Lab Exercise 1....................................................................................................................... 24

2

CHAPTER

ROBOT JOGGING

25

SECTION 2.1 POWERING UP ROBOTS ............................................................................. 26 SECTION 2.2 COMPARING JOGGING METHODS ........................................................... 26 SECTION 2.3 JOGGING ROBOTS ...................................................................................... 34 PROCEDURE: • Resetting a Fault .................................................................................................................35

Review 2................................................................................................................................. 39 Lab Exercise 2....................................................................................................................... 42

3

CHAPTER

ROBOT FRAMES

43

SECTION 3.1 REFERENCING FRAMES ............................................................................ 44 SECTION 3.2 CREATING TOOL FRAMES.......................................................................... 45 PROCEDURES: • Establishing a Tool Frame Using the Direct-Entry Method.................................................48 • Establishing a Tool Frame Using the Three-Point Method .................................................50 • Establishing a Tool Frame Using the Six-Point (XZ) Method .............................................54 • Testing a Tool Frame ...........................................................................................................56

SECTION 3.3 CREATING USER FRAMES ......................................................................... 56 PROCEDURES: • Establishing a User Frame Using the Three-Point Method ................................................58 • Establishing a User Frame Using the Direct-Entry Method ...............................................60 • Testing a User Frame .........................................................................................................61

SECTION 3.4 CREATING JOG FRAMES ........................................................................... 62 Review 3................................................................................................................................. 63 Lab Exercise 3....................................................................................................................... 66 iv


: : : 7: : : :J : :L

UTOOL_NUM=1 UFRAME_NUM=0 TIMER[1]=RESET R[1:Process1_Count]=0 @P[1:Home] 100% FINE P[9:GT1] 100mm/sec FINE

4

CHAPTER

:L : : : : : : :J :C

P[10:GT2] 100mm/sec FINE RO[2:Gripper Closed]=ON WAIT RI[1:PartSensor]=ON WAIT 1.00(sec) !Process 1: Repeat 3 time LBL[2] P[2:CirclePt1] 50% FINE P[3:CirclePt2]

STARTING PROGRAMS

67

SECTION 4.1 IDENTIFYING FILE TYPES ........................................................................... 68 SECTION 4.2 SETTING UP TP PROGRAMS...................................................................... 72 PROCEDURES: • Creating a Program Shell ...................................................................................................72 • Accessing Program Details ................................................................................................74

SECTION 4.3 CREATING PAYLOAD SCHEDULES ........................................................... 76 PROCEDURES: • Creating a Payload Schedule .............................................................................................78 • Adding Payloads to Programs ............................................................................................80

SECTION 4.4 USING EDITING COMMANDS ..................................................................... 81 SECTION 4.5 PROGRAMMING MOVEMENT LINES......................................................... 84 PROCEDURES: • Adding Movement Lines for Home Position .......................................................................84 • Using the Touchup Command ............................................................................................88

Review 4................................................................................................................................. 89 Lab Exercise 4....................................................................................................................... 94

5

CHAPTER

COMPARING MOVEMENT TYPES

95

SECTION 5.1 SELECTING MOVEMENT SETTINGS ......................................................... 96 PROCEDURE: • Robot Remastering...........................................................................................................100

SECTION 5.2 PROGRAMMING MOVEMENT TYPES...................................................... 103 PROCEDURES: • Creating a Circle ...............................................................................................................106 • Creating a Circle Arc.........................................................................................................108

Review 5............................................................................................................................... 109 Lab Exercise 5..................................................................................................................... 112

v


Contents

6

CHAPTER

:A P[7:ArcPt2] 500mm/sec CN :A P[8:ArcPt3] 500mm/sec CN : : TIMER[1]=STOP : : CALL PACK_PROGRAM : : !Trace fixture :J PR[1:Origin] 100% FINE

INSTRUCTION LINES

: : : : : : :A :A :A

MESSAGE[Turn Part Over] WAIT 5.00(sec) !Start process 2 UFRAME_NUM=1 TIMER[1]=START P[6:ArcPt1] 500mm/sec CN P[7:ArcPt2] 500mm/sec CN P[8:ArcPt3] 500mm/sec CN

113

SECTION 6.1 SELECTING FRAMES ................................................................................ 114 PROCEDURES: • Running a Program in Manual Mode................................................................................115 • Resetting Gate Faults .......................................................................................................115 • Inserting a Tool Frame Selection Line ..............................................................................116 • Inserting a User Frame Selection Line .............................................................................117

SECTION 6.2 USING THE PROGRAM ADJUST PROCEDURE ..................................... 118 PROCEDURE: • Using Program Adjust.......................................................................................................120

SECTION 6.3 DIRECTING PROGRAM EXECUTION ...................................................... 122 PROCEDURES: • Calling a Subprogram .......................................................................................................122 • Adding the Jump Label Instruction ...................................................................................126

SECTION 6.4 FINE-TUNING PROGRAM TIMING ............................................................ 128 PROCEDURES: • Adding a Timer..................................................................................................................130 • Reading a Timer ...............................................................................................................132 • Adding a Wait Instruction ..................................................................................................133

SECTION 6.5 ADDING PROGRAM NOTES ..................................................................... 134 PROCEDURES: • Adding a Remark ..............................................................................................................134 • Adding a Message ............................................................................................................135

Review 6............................................................................................................................... 137 Lab Exercise 6..................................................................................................................... 140

7

CHAPTER

REGISTERS

141

SECTION 7.1 UTILIZING REGISTERS.............................................................................. 142 PROCEDURE: • Using a Register to Count Code Loops............................................................................144

SECTION 7.2 UTILIZING POSITION REGISTERS ........................................................... 148 PROCEDURE: • Setting Up a Position Register..........................................................................................150 • Changing from the Icon Interface to the Menu Interface ..................................................152 • Changing from the Menu Interface to the Icon Interface ..................................................152

Review 7............................................................................................................................... 153 Lab Exercise 7..................................................................................................................... 156 vi


: : : 7: : : :J : :L

UTOOL_NUM=1 UFRAME_NUM=0 TIMER[1]=RESET R[1:Process1_Count]=0 @P[1:Home] 100% FINE P[9:GT1] 100mm/sec FINE

8

CHAPTER

:L : : : : : : :J :C

P[10:GT2] 100mm/sec FINE RO[2:Gripper Closed]=ON WAIT RI[1:PartSensor]=ON WAIT 1.00(sec) !Process 1: Repeat 3 time LBL[2] P[2:CirclePt1] 50% FINE P[3:CirclePt2]

OFFSETTING POSITION REGISTERS

157

SECTION 8.1 OFFSET PROGRAMMING ......................................................................... 158 PROCEDURES: • Programming with Constant-Value Offsets ......................................................................161 • Programming with Formula Offsets ..................................................................................167

SECTION 8.2 RESETTING AN OFFSET POSITION REGISTER .................................... 172 PROCEDURES: • Verifying the Offset PR Position .......................................................................................172 • Resetting the Offset PR with a Twin PR ...........................................................................173 • Resetting the Offset PR with Registers ............................................................................174

Review 8............................................................................................................................... 177 Lab Exercise 8..................................................................................................................... 180

9

CHAPTER

INPUTS/OUTPUTS AND END EFFECTORS

181

SECTION 9.1 UTILIZING INPUTS/OUTPUTS................................................................... 182 PROCEDURES: • Initializing Complementary Robot I/Os .............................................................................185 • Gripping an Object with the End Effector .........................................................................189 • Initializing Digital I/Os .......................................................................................................192 • Waiting for a Digital Input ..................................................................................................193

SECTION 9.2 INTEGRATING END EFFECTORS............................................................. 195 Review 9............................................................................................................................... 201 Lab Exercise 9A .................................................................................................................. 204 Lab Exercise 9B .................................................................................................................. 205

GLOSSARY

207

INDEX

211

vii


:A P[7:ArcPt2] 500mm/sec CN :A P[8:ArcPt3] 500mm/sec CN : : TIMER[1]=STOP : : CALL PACK_PROGRAM : : !Trace fixture :J PR[1:Origin] 100% FINE

Book Features

: : : : : : :A :A :A

MESSAGE[Turn Part Over] WAIT 5.00(sec) !Start process 2 UFRAME_NUM=1 TIMER[1]=START P[6:ArcPt1] 500mm/sec CN P[7:ArcPt2] 500mm/sec CN P[8:ArcPt3] 500mm/sec CN

Programming FANUC® Robots for Industry Applications is an introduction to programming FANUC® industrial robots using the handheld teach pendant. This user-friendly text/workbook describes the robot cell environment, robot components, basic operation, safety considerations, and programming concepts. Step-by-step procedures walk the learner through the elements of setting up, developing, and modifying programs. These programming skills are applicable for assembly, pick-and-place, welding, and a variety of other industrial processes. Learners will be able to establish robot frames, determine the necessary parameters for an instruction, and implement features for enhanced operations. Review questions at the end of each chapter assess comprehension. Lab exercises provide step-by-step instructions for guided practice of selected procedures. Online demonstration videos provided in the complimentary learner resources illustrate various programming commands and parameters.

Chapter introductions preview content to be covered. Photos depict robot and cell components. Objectives identify learning goals for the chapter. Procedures list each step for performing common programming tasks.

Key terms list the important vocabulary terms introduced.

Lab exercises provide the opportunity to practice procedures on actual equipment.

Review questions check for comprehension of chapter content.

viii


: : : 7: : : :J : :L

UTOOL_NUM=1 UFRAME_NUM=0 TIMER[1]=RESET R[1:Process1_Count]=0

:L : : : : : : :J :C

P[10:GT2] 100mm/sec FINE RO[2:Gripper Closed]=ON WAIT RI[1:PartSensor]=ON WAIT 1.00(sec)

Online Learner Resources

@P[1:Home] 100% FINE

P[9:GT1] 100mm/sec FINE

!Process 1: Repeat 3 time LBL[2] P[2:CirclePt1] 50% FINE P[3:CirclePt2]

Programming FANUC Robots for Industry Applications includes access to online learner resources that reinforce content and enhance learning. These online resources can be accessed using either of the following methods: • Key atplearningresources.com into a web browser and enter Access code • Use a Quick Response (QR) reader app to scan the QR Code with a mobile device.

The Learner Resources include the following: • Quick Quizzes® that provide interactive questions for each section, with embedded links to highlighted content within the text/workbook • Flash Cards that provide a self-study/review of common terms and definitions • Lab Exercises that consist of printable PDF files of the end-of-chapter lab exercises and are convenient for in-lab use • Reference Sheets that include useful descriptions and menu navigation hints for common programming functions • Media Library that consists of videos that reinforce text/workbook content • Internet Resources that provide access to additional resources to support continued learning To obtain information on related training materials, visit atplearning.com. The Publisher

ix



Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.