FANUC Robotics System R-J3, R-J3iB & R-30iA ArcTool eLearn Student Manual MATELRNAT0511CE REV. A This publication contains proprietary information of FANUC Robotics America Corporation furnished for customer use only. No other uses are authorized without the express written permission of FANUC Robotics America Corporation FANUC Robotics America Corporation 3900 W. Hamlin Road Rochester Hills, Michigan 48309-3253 i Table of Contents 1 FRAMES ..................................................................................................................... 1 1.1 SLIDE 2-TYPES OF FRAMES ..............................................................................................1 1.2 SLIDE 3-FRAME OVERVIEW ...............................................................................................1 1.3 SLIDE 4-TWO DIMENSIONAL CARTESIAN COORDINATE .......................................................1 1.4 SLIDE 5-ONE QUADRANT ..................................................................................................1 1.5 SLIDE 6-THREE DIMENSIONAL CARTESIAN COORDINATE ....................................................1 1.6 SLIDE 7-9-ORIENTATION IN WORLD MODE-MINOR AXES ...................................................1 1.7 SLIDE 10-CARTESIAN COORDINATE SYSTEM .....................................................................1 1.8 SLIDE 11-WORLD FRAME..................................................................................................1 1.9 SLIDE 12-RIGHT HAND RULE ............................................................................................1 1.10 SLIDE 13-TOOL FRAME .....................................................................................................1 1.11 SLIDE 14-TOOL FRAME FEATURES ....................................................................................1 1.12 SLIDE 15-ADJUSTING TOOL CENTER POINT .......................................................................1 1.13 SLIDE 16-ACTUAL TOOL CENTER POINT ............................................................................1 1.14 SLIDE 17-METHODS OF DEFINING THE TOOL FRAME ..........................................................1 1.15 SLIDE 18-TEACHING A TOOL CENTER POINT 6 POINT METHOD ..........................................1 1.16 SLIDE 19-TOOL CENTER POINT 6 POINT METHOD PROCEDURE .........................................1 1.17 SLIDE 20-VERIFY TCP......................................................................................................1 1.18 SLIDE 21-SELECTING A TOOL FRAME FROM THE JOG MENU ...............................................1 1.19 SLIDE 22-HOW THE ROBOT FRAMES ARE LINKED ...............................................................1 1.20 SLIDE 23-USER FRAME.....................................................................................................1 1.21 SLIDE 24- EXAMPLE OF USER & TOOL FRAME IN A TP PROGRAM .......................................1 1.22 SLIDE 25-SAMPLE PROGRAM UFRAME VS. WORLD FRAME ................................................1 1.23 SLIDE 26-USER FRAME PROCEDURE ................................................................................1 1.24 SLIDE 27-YOU TRY IT-USER FRAME ..................................................................................1 1.25 SLIDE 28-REMOTE TOOL CENTER POINT ...........................................................................1 1.26 SLIDE 29-FUNCTION KEY ..................................................................................................1 1.27 SLIDE 30-RTCP INSTRUCTION ..........................................................................................1 1.28 SLIDE 31-NO RTCP INSTRUCTION ....................................................................................1 1.29 SLIDE 32-JOG FRAME .......................................................................................................1 1.30 SLIDE 33-JOG FRAME PROCEDURE ...................................................................................1 1.31 SLIDE 34-FRAMES SUMMARY ............................................................................................1 1.32 SLIDE 35-QUIZ .................................................................................................................1 ii Table of Contents MATELRNAT0511CE REV. A 2 3 INPUT/OUTPUT............................................................................................................ 1 2.1 SLIDE 2-ANALOG ..............................................................................................................1 2.2 SLIDE 3-DIGITAL INPUT/OUTPUT .......................................................................................1 2.3 SLIDE 4-DIGITAL ...............................................................................................................1 2.4 SLIDE 5-ROBOT I/O ..........................................................................................................1 2.5 SLIDE 6-ROBOT I/O ..........................................................................................................1 2.6 SLIDE 7-MODEL A INPUT/OUTPUT .....................................................................................1 2.7 SLIDE 8-RACK ASSIGNMENT .............................................................................................1 2.8 SLIDE 9-MODEL A – RACK ................................................................................................1 2.9 SLIDE 10-SLOT ASSIGNMENT ............................................................................................1 2.10 SLIDE 11-MODEL A SLOT ASSIGNMENT .............................................................................1 2.11 SLIDE 12-STARTING POINT/CHANNEL ASSIGNMENT ...........................................................1 2.12 SLIDE 13-MODEL A-STARTING POINT ASSIGNMENT ...........................................................1 2.13 SLIDE 14-CONFIGURING I/O..............................................................................................1 2.14 SLIDE 15-CONFIGURIG I/O STATUS ...................................................................................1 2.15 SLIDE 16-COMPLEMENTARY SIGNALS ...............................................................................1 2.16 SLIDE 17-I/O DETAIL ........................................................................................................1 2.17 SLIDE 18-19-MONITORING/CONTROLLING I/O ...................................................................1 2.18 SLIDE 20-SIMULATING I/O.................................................................................................1 2.19 SLIDE 21-CONFIGURING GROUP I/O..................................................................................1 2.20 SLIDE 22-GROUP INPUT/OUTPUT ......................................................................................1 2.21 SLIDE 23-INPUT/OUTPUT REVIEW .....................................................................................1 PROGRAM INSTRUCTION .............................................................................................. 1 3.1 SLIDE 2-MODULE CONTENT ..............................................................................................1 3.2 SLIDE 3-DATA REGISTER ..................................................................................................1 3.3 SLIDE 4-POSITION REGISTER INSTRUCTIONS .....................................................................1 3.4 SLIDE 5-POSITION REGISTER ELEMENT .............................................................................1 3.5 SLIDE 6-PROGRAM INSTRUCTIONS ....................................................................................1 3.6 SLIDE 7-BRANCHING INSTRUCTIONS..................................................................................1 3.7 SLIDE 8-LABEL DEFINITION INSTRUCTION LBL[X] ...............................................................1 3.8 SLIDE 9-UNCONDITIONAL BRANCH – CALL .........................................................................1 3.9 SLIDE 10-CONDITIONAL BRANCHING INSTRUCTIONS ..........................................................1 3.10 SLIDE 11-IF REGISTER .....................................................................................................1 3.11 SLIDE 12-EXAMPLE #1 – IF REGISTER ..............................................................................1 Table of Contents iii MATELRNAT0511CE REV. A 4 3.12 SLIDE 13-EXAMPLE #2 – IF REGISTER ..............................................................................1 3.13 SLIDE 14-IF INPUT/OUTPUT ..............................................................................................1 3.14 SLIDE 15-EXAMPLE #3 – IF / OR.......................................................................................1 3.15 SLIDE 16-IF PROCEDURE .................................................................................................1 3.16 SLIDE 17-YOU TRY IT – IF REGISTER ................................................................................1 3.17 SLIDE 18-SELECT INSTRUCTIONS....................................................................................1 3.18 SLIDE 19-SELECT INSTRUCTION PROCEDURE..................................................................1 3.19 SLIDE 20-SELECT INSTRUCTIONS – YOU TRY IT ...............................................................1 3.20 SLIDE 21-WAIT INSTRUCTION...........................................................................................1 3.21 SLIDE 22-REMARK INSTRUCTION ....................................................................................1 3.22 SLIDE 23-OVERRIDE INSTRUCTION .................................................................................1 3.23 SLIDE 24-MESSAGE INSTRUCTION ..................................................................................1 3.24 SLIDE 25-TIMER INSTRUCTION ........................................................................................1 3.25 SLIDE 26-MODULE COMPLETE ..........................................................................................1 ARCTOOL PROGRAMMING ........................................................................................... 1 4.1 SLIDE 2-MODULE CONTENT ..............................................................................................1 4.2 SLIDE 3-ARCTOOL PROGRAM GUIDELINES ........................................................................1 4.3 SLIDE 4-WELD I/O ............................................................................................................1 4.4 SLIDE 5-CONTROLLED START R-J3 THRU R-3IB ................................................................1 4.5 SLIDE 6-CONTROLLED START FOR R-30IA ........................................................................1 4.6 SLIDE 7@ CONTROLLED START WELD I/O EQUIPMENT SELECTION ....................................1 4.7 SLIDE 8-SETTING UP THE WELDING SYSTEM .....................................................................1 4.8 SLIDE 9-WELD EQUIPMENT ...............................................................................................1 4.9 SLIDE 10-SETTING LINCOLN EQUIPMENT ...........................................................................1 4.10 SLIDE 11-ARC DEFAULTS INSTRUCTION DEMO ..................................................................1 4.11 SLIDE 12-ARC PROGRAMMING ..........................................................................................1 4.12 SLIDE 13-WELD ENABLED KEY .........................................................................................1 4.13 SLIDE 14-ARC START .......................................................................................................1 4.14 SLIDE 15-ARC END...........................................................................................................1 4.15 SLIDE 19-ARC WELD SCHEDULE .......................................................................................1 4.16 SLIDE 20-DELAY TIME ......................................................................................................1 4.17 SLIDE 21-ARC START SCHEDULE DEMO ............................................................................1 4.18 SLIDE 23-WEAVE INSTRUCTIONS ......................................................................................1 4.19 SLIDE 24-ARC WEAVE SETUP ...........................................................................................1 iv Table of Contents MATELRNAT0511CE REV. A 5 4.20 SLIDE 25-WEAVE SCHEDULE ............................................................................................1 4.21 SLIDE 26-WEAVE INSTRUCTION PROGRAM ........................................................................1 4.22 SLIDE 28-PATH JOGGING ..................................................................................................1 4.23 SLIDE 29-TORCHMATE .....................................................................................................1 4.24 SLIDE 30-TORCHMATE VIDEO ...........................................................................................1 4.25 SLIDE 31-INSTALLING & ALIGNING THE TOUCH BLOCK .......................................................1 4.26 SLIDE 32-SETUP TORCHMATE ..........................................................................................1 4.27 SLIDE 33-EXECUTE TM_ADJST MACRO ...........................................................................1 4.28 SLIDE 34-VIEW THE TCP OFFSETS ...................................................................................1 4.29 SLIDE 35-COURSE OVERVIEW ..........................................................................................1 MODIFYING A PROGRAM .............................................................................................. 1 5.1 SLIDE 2-MODIFYING PROGRAMS .......................................................................................1 5.2 SLIDE 3-INSERT .............................................................................................................1 5.3 SLIDE 4-DELETE.............................................................................................................1 5.4 SLIDE 5-COPY ................................................................................................................1 5.5 SLIDE 6-PASTE ...............................................................................................................1 5.6 SLIDE 7-PASTE-F2 LOGIC ...............................................................................................1 5.7 SLIDE 8-9 PASTE – F3 POS-ID .......................................................................................1 5.8 SLIDE 10-11 PASTE – F4 POSITION ..............................................................................1 5.9 SLIDE 12-REVERSE PASTE ...........................................................................................1 5.10 SLIDE 13-PASTE - F1 R-LOGIC ......................................................................................1 5.11 SLIDE 14-PASTE – F1 R-LOGIC .....................................................................................1 5.12 SLIDE 15-PASTE – F2 R-POS-ID ....................................................................................1 5.13 SLIDE 16-PASTE – F2 R POS-ID ....................................................................................1 5.14 SLIDE 17-PASTE – F4 R-POS.........................................................................................1 5.15 SLIDE 18-PASTE – F4 R-POS.........................................................................................1 5.16 SLIDE 19-PASTE – F3 RM-POS-ID .................................................................................1 5.17 SLIDE 20-PASTE – F3 RM-POS-ID .................................................................................1 5.18 SLIDE 21-PASTE – F5 RM-POS......................................................................................1 5.19 SLIDE 22-PASTE – F5 RM-POS......................................................................................1 5.20 SLIDE 23-FIND ................................................................................................................1 5.21 SLIDE 24-REPLACE ........................................................................................................1 5.22 SLIDE 25-RENUMBERING..............................................................................................1 5.23 SLIDE 26-COMMENT ......................................................................................................1 Table of Contents v MATELRNAT0511CE REV. A 6 7 8 5.24 SLIDE 27-UNDO ..............................................................................................................1 5.25 SLIDE 28-YOU TRY IT .......................................................................................................1 5.26 SLIDE 29-MODULE REVIEW ...............................................................................................1 MACRO COMMANDS .................................................................................................... 1 6.1 SLIDE 2-MODULE CONTENT ..............................................................................................1 6.2 SLIDE 3-OVERVIEW OF MACROS .......................................................................................1 6.3 SLIDE 4-TEACH PENDANT USER KEYS ..............................................................................1 6.4 SLIDE 5-MACRO COMMAND ASSIGNMENTS ........................................................................1 6.5 SLIDE 6-OPERATOR PANEL BUTTONS ...............................................................................1 6.6 SLIDE 7-MANUAL FUNCTIONS MACROS .............................................................................1 6.7 SLIDE 8-SETTING UP MACRO COMMANDS..........................................................................1 6.8 SLIDE 9-YOU TRY IT .........................................................................................................1 6.9 SLIDE 10-MACRO REVIEW ................................................................................................1 PRODUCTION SETUP ................................................................................................... 1 7.1 SLIDE 2-AGENDA ..............................................................................................................1 7.2 SLIDE 3-REMOTE/LOCAL MODE ........................................................................................1 7.3 SLIDE 4-PRODUCTION SETUP IN SYSTEM CONFIG MENU....................................................1 7.4 SLIDE 5-PRODUCTION SETUP ...........................................................................................1 7.5 SLIDE 6-PRODUCTION START CHECKS ..............................................................................1 7.6 SLIDE 7-PRODUCTION SETUP – GENERAL CONTROLS........................................................1 7.7 SLIDE 8-STYLE SELECT USING DIN START METHOD PROCEDURE ......................................1 7.8 SLIDE 9-SUMMARY ...........................................................................................................1 FILE MANAGEMENT ..................................................................................................... 1 8.1 SLIDE 2-MODULE CONTENT ..............................................................................................1 8.2 SLIDE 3-DISPLAY PROGRAM FILES ....................................................................................1 8.3 SLIDE 4-COPY A PROGRAM...............................................................................................1 8.4 SLIDE 5-DELETE PROGRAM FILES .....................................................................................1 8.5 SLIDE 6-7-ABORTING A PROGRAM ....................................................................................1 8.6 SLIDE 8-YOU TRY IT .........................................................................................................1 8.7 SLIDE 9-TYPES OF FILES ..................................................................................................1 8.8 SLIDE 10-STORAGE DEVICES ............................................................................................1 8.9 SLIDE 11-SET THE DEFAULT DEVICE & GENERATE A DIRECTORY .......................................1 8.10 SLIDE 12-YOU TRY IT .......................................................................................................1 vi Table of Contents MATELRNAT0511CE REV. A 8.11 SLIDE 13-BACKUP UP FILES VS. CONTROLLER BACKUP .....................................................1 8.12 SLIDE 14-BACKUP FILES USING THE FILE MENU ...............................................................1 8.13 SLIDE 15-LOADING FILES USING THE FILE MENU ..............................................................1 8.14 SLIDE 16-BACKUP UP A CONTROLLER AS IMAGES ..............................................................1 8.15 SLIDE 17-RESTORING CONTROLLER IMAGES .....................................................................1 1 Course Overview System R-J3, R-J3iB & R-30iA Course Overview 1 – Frames 2 – Input/Output 3 – Program Instruction 4 - ArcTool Programming 4 – Modify a Program 5 – Macro Commands 6 – Robot Setup for Production 7 – File Management Module Contents Frames: – World Frame, – Tool Frame, – User Frame and within user frames, the Remote Tool Center Point which is only available in some applications, – Jog Frame Input/Output: – After successfully completing this module, you should know the different types of Inputs and Outputs and how to configure them. – There are several types of I/O’s, but in this module, the different types of Inputs and Outputs are: – • Robot • Digital; • Analog • Group Inputs and Outputs are electrical signals that enable the robot controller to communicate with End of Arm Tooling, process equipment, other external sensors and other devices. 2 Course Overview MATELRNAT0511CE REV. A Program Instructions – Data Register – Position Register Instruction – Branching Instructions • Label • Unconditional • JMP LBL • CALL • Conditional – Wait Instructions – Miscellaneous Instructions • Remark • Override • Message • Timer ArcTool Programming – ArcTool Program Guideline – Weld I/O – Setup and Select Weld Equipment – ArcTool Instructions ¾ ArcTool Default Instructions – Arc Weld Schedule ¾ Delay Time – Weld Enable – Weave Patterns ¾ Weave Instructions ¾ Weave Schedule – Torchmate Course Overview MATELRNAT0511CE REV. A Modifying a Program – Inserting blank lines into a Program. – Deleting lines from a Program – Copying and Pasting lines within a Program – Finding program instructions within a Program – Replacing Items – Renumbering Positional ID’s – Turning ON and OFF Comments – And the UNDO function Macro Commands – Overview of Macros – Setting Up Macro Commands – Assigning a Macro to a Teach Pendant User Key,Manual Functions or Operator Panel Buttons Robot Setup for Production – Learn how setup a robot for production using the teach pendant. – Cover various production modes, system and Cell I/O configurations. – A video to reinforce the step by step process needed to configure the settings File Management – Copying and Deleting Programs, – Backup all or specific types of files to a specific device. – Learn how to load program from the backup device – Then wrap-up with how to do an image backup and Restore 3 4 Course Overview MATELRNAT0511CE REV. A 1 1 5 Frames System R-J3, R-J3iB & R-30iA FRAMES Frames Frames Audio: Welcome to Frames. In this course we will investigate what type of frames there are. We will see how to set them up and what they are used for. 6 Frames MATELRNAT0511CE REV. A 1.1 Slide 2-Types of Frames Frames Types of Frames • World frame - default frame of the robot • Tool frame - user defined frame • User frame - user defined frame ¾ RTCP – Remote Tool Center Point – HandlingTool, DispenseTool, and SpotTool+ only) • Jog frame - user defined frame Audio: This course will cover all the frames available within FANUC software. The robot uses four kinds of frames which are • World Frame, • Tool Frame, • User Frame and within user frames, the Remote Tool Center Point which is only available in some applications, • and finally wrap up with Jog Frame Frames MATELRNAT0511CE REV. A 1.2 Slide 3-Frame Overview Audio: 1. But first, an overview of what a frame is. A frame is an intersection of three planes at right angles to each other. The point where all three planes intersect is called the origin point. Where X,Y & Z values are all 0. Here are more examples of a Frame with the Origin point in different positions. 2. Any point can be located within a frame by providing three positive or negative numbers to represent the X,Y & Z distances from the origin. This kind of system is called a Cartesian coordinate system. 3. The frame itself is a set of numbers used to describe the location, and orientation about the X,Y,Z axes of the reference frame. 7 8 Frames MATELRNAT0511CE REV. A 1.3 Slide 4-Two Dimensional Cartesian Coordinate Frames Two Dimensional Cartesian Coordinate + I II – Quadrant x y values values I >0 >0 II <0 >0 III <0 <0 IV >0 <0 y-axis + I x-axis Origin = 0 IV III – Audio: To further explain the Cartesian Coordinate system, we will start with the two dimensional system also known as the rectangular coordinate system two axes are used as references. “X” is the horizontal axis. “Y” is the Vertical axis. The Origin is the location where both axes intersect. It's reference point is "0". All measurements are based off of the origin point. As you can see in this illustration there are four quadrants generated. • Quadrant "I" references point values positive for both the x and y axes. • Quadrant "II" references point values negative for x, positive for y. • Quadrant "III" references point values negative for both x and y axes. • Quadrant "IV" references point values positive for x, negative for y. Notice the quadrants are in counterclockwise order by convention. Now we will focus on just one quadrant. Frames 9 MATELRNAT0511CE REV. A 1.4 Slide 5-One Quadrant Audio: To determine the robot’s position in millimeters we use this scale to figure this out. The result is positive 600 in the x direction and positive 800 in the y direction 10 Frames MATELRNAT0511CE REV. A 1.5 Slide 6-Three Dimensional Cartesian Coordinate Audio: In the three dimensional Cartesian Coordinate system we are adding another axis to the plane. • “X” axis becomes forward and backward movement. • “Y” axis becomes a side to side movement. • “Z” is the UP and DOWN movement. The values reflect the location for positional information, the values shown in this slide reflects Distance from the origin along the X axis which reflects in example 600 Distance from the origin along the Y axis which is 800 Distance from the origin from the Z axis which is negative 700 11 Frames MATELRNAT0511CE REV. A 1.6 Slide 7-9-Orientation in WORLD mode-Minor Axes Frames Orientation in WORLD mode – Minor Axes Orientation Yaw (W) – Rotation around X Pitch (P) – Rotation around Y Roll (R) – Rotation around Z Major Axes Minor Axes Frames Orientation in WORLD mode – Minor Axes Orientation Yaw (W) – Rotation around X Pitch (P) – Rotation around Y Roll (R) – Rotation around Z Major Axes Minor Axes Audio: The orientations of a position is expressed in three dimensions also, but are measured in degrees of rotation about the x, y, and z axes. Use the minor axes from the teach pendant when jogging about the x, y and z axes When rotating Yaw it is Rotating around X 12 Frames MATELRNAT0511CE REV. A 1.7 Slide 10-Cartesian Coordinate System Frames Cartesian Coordinate System +Z=800mm Teach Pendant POSN menu -BCKEDT- LINE 0 AUTO ABORTED POSITION JOINT 100 % World Tool: 1 0 Configuration: N U T, 0, 0, 0 x: 1800.000 y: 1000.000 z: 800.000 w: -146.360 p: r: -22.691 -33.432 +Y=1000mm +X=1800mm [ TYPE ] JNT USER WORLD Audio: Putting it all together this robot’s position in Cartesian is positive 1800 millimeters in the x direction, positive 1000 millimeters in the y direction and positive 800 in the z direction all from the origin. The robot’s orientation is negative 146 degrees about X which is the yaw value and negative 33 degrees about Y which is the pitch value and negative 22 degrees about Z which is the roll value. You can view the robots positional values from the Position menu on the Teach Pendant. 13 Frames MATELRNAT0511CE REV. A 1.8 Slide 11-World Frame Frames World Frame J1 ORIGIN OF WORLD FRAME J2 J2 J1 Audio: Starting with World Frame. 1. The World Frame is the default frame of the robot. It cannot be changed by the user. 2. The origin of the world frame is located on the centerline of the J1-axis and at the height of the centerline of the J2-axis. 3. The location of this origin never changes. 4. And the orientation of the World frame never changes. 14 Frames MATELRNAT0511CE REV. A 1.9 Slide 12-Right Hand Rule Frames Right Hand Rule +Z +X +Z +Y +X +Y Audio: The directions of the World frame can be represented by the right hand rule. Also the World coordinates can be better understood if you stand behind or by the side of the robot and then use the right handed rule. Frames MATELRNAT0511CE REV. A 1.10 Slide 13-Tool Frame Frames Tool Frame +X +X ToolDefault CenterTool Point has moved from the Frame Origin faceplate to the tool +Y +Y A Tool frame is defined using the Cartesian coordinate system +Z +Z Audio: Now we will discuss the Tool Frame. Its origin is called the tool center point (TCP). By default, the TCP is located at the center of the robot’s faceplate. When you set up a Tool frame, also called a UTool, you move the TCP from the robot’s faceplate to define the point on the applicator, gun, torch, or other tool where the painting, welding, sealing, handling, or other application work is to be done. 15 16 Frames MATELRNAT0511CE REV. A 1.11 Slide 14-Tool Frame Features Audio: So why define a Tool Center Point. An important reason to define a TCP is simply to jog the TCP to the workpiece which makes programming easier. Some software applications are based on a correctly defined TCP. For an Example, in a SpotTool servo gun application, the TCP is tied to the tip wear compensation. Another important reason to define a TCP is to have consistency from robot to robot, especially in a plant that has many cells. Frames 17 MATELRNAT0511CE REV. A 1.12 Slide 15-Adjusting Tool Center Point Audio: Here is another example of the default Tool Frame located on the Face Plate. When the tool is mounted, it does not take into account the actual position of the tooling where the work is to be done. Therefore if you jog the robot using default tool coordinates you will be unable to control the position of the robot relative to the center of the attached tooling. In order for the Tool coordinates X,Y,& Z to refer to the center of the tooling, you must adjust the Tool Frame offset as shown here. 18 Frames MATELRNAT0511CE REV. A 1.13 Slide 16-Actual Tool Center Point Frames Actual Tool Center Point Audio: Here are some examples of different tooling’s Tool Frame Offsets. in PaintTool, the TCP is approximately 12 inches from the end of the applicator, but this can vary depending on your particular applicator; in ArcTool, the TCP is the tip of the wire; in SpotTool+, the TCP is where the tips of the gun meet when they are closed; in HandlingTool, the TCP is where the gripper closes to pick the part up. Frames 19 MATELRNAT0511CE REV. A 1.14 Slide 17-Methods of Defining the Tool Frame Frames Methods of Defining the Tool Frame • Three Point Method – defines just the location of the tool frame when the values cannot be measured and directly entered • Six Point Method – defines the location and orientation of the tool frame when the values cannot be measured and directly entered. • Direct Entry Method – used when tool dimensions are known and can be entered directly into Tool Frame settings. Direct Entry must be used with 4-axis robots Audio: There are three ways to define a tool Frame: The Three Point Method, the Six Point Method, and the Direct Entry Method. • Use the three point method to define just the location of the tool frame when the values cannot be measured and directly entered • 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 direct entry method provides for direct numerical entry of known tool dimensions. Direct Entry is used when tool dimensions are known and can be entered directly into Tool Frame settings. Direct Entry must be used with 4-axis robots, such as the M410iB and the A520iB. In this exercise you will set up the Tool Frame using the 6 point method. 20 Frames MATELRNAT0511CE REV. A 1.15 Slide 18-Teaching a Tool Center Point 6 Point Method Audio: • This video (which will repeat) is displaying the 6 point method which requires you to teach 6 points. The first 3 approach points are used to define the location of the Tool Center Point and are the same approach points as in the 3 Point method. The three additional points define the direction vector for the tool. These three additional points define orientation, measured in degrees of rotation about an axis. W stands for Yaw. Yaw rotates about the X axis. P stands for Pitch, and rotates about the Y axis. R, for Roll, rotates about the Z axis. All are measured in degrees. • When recording the Orient origin point or to simplify teaching points 4, 5, and 6, align the desired X, Y, and Z directions of the tool with the X, Y, and Z of the World frame in any order that avoids singularity. In this example it is convenient to align the tool frame Z with the World frame Z and the Tool frame X with the World frame X. This alignment is based on the shape of the tool and the need to avoid singularity. • When you teach the Orient Origin point it is often helpful to start with all of the Zero position reference marks aligned. Then you can move the minor axes until the tool is squared up with the World Frame. Just be sure the robot is not in singularity. Then you can record the Orient Origin point. Frames 21 MATELRNAT0511CE REV. A 1.16 Slide 19-Tool Center Point 6 Point Method Procedure Audio: The following video will show how to define a Tool Center Point using the 6 point method. You will teach 3 different approach points, an Orient origin point and then define your Positive X and Positive Z direction points. In the process of learning the 6 point method, you will learn the 3 Point Method as well. 1 The first thing you need to do is turn the Teach Pendant to the ON position, then press the MENUS key. From the pop-up menu cursor down to SETUP and press the ENTER key. 2 Press the F1 TYPE key and cursor down to FRAMES and press the ENTER key. Upon selecting Frames, the Tool frame setup is the default screen. 3 Press the F2 DETAIL key to select TOOL Frame #1. 4 To name this Tool Frame, press ENTER key. You will name this tool frame POINTER, after you have typed the name PRESS the ENTER key. 5 Select the 6 point method from the function key F2 . 6 You begin by teaching 3 points on a fixed reference, with the orientation of the tool 90 degrees different on each point. This is all that is required when teaching a 3 point method. 7 You will now jog the tool to the approach point #1 and HOLD the SHIFT key and PRESS F5 RECORD to record it. 22 Frames MATELRNAT0511CE REV. A 8 Now cursor down to approach point #2 . Remember you need 3 different planes recorded. Now jog the tool to approach point #2, and again hold the SHIFT key and PRESS F5 RECORD. 9 Release the SHIFT key and cursor down to APPROACH point 3. Jog the tool to approach point 3 position then press and HOLD the SHIFT key plus the F5 key to record this position. 10 This completes the 3 point method. The 6 point method continues to the next step of defining the Orient Origin point. Any orientation of the tool will work as long as the tool is square to the World Frame and the robot is not in Singularity. 11 In the final 2 steps you define the Positive X and Positive Z directions of the Tool Frame. First we will define the Positive X direction by jogging the tool from the Orient Origin point at least 250 mm, then HOLD the SHIFT key and PRESS the F5 RECORD. 12 Finally you need to define the Positive Z Direction. Start by moving back to the Orient Origin point being careful that the tool doesn’t move the part. 13 Now jog the tool at least 250mm in the direction that you want to define as the Positive Z direction and HOLD the SHIFT key and PRESS the F5 RECORD. The Tool Frame have now been defined. Frames 23 MATELRNAT0511CE REV. A 1.17 Slide 20-Verify TCP Frames Verify TCP Audio: If the TCP was taught correctly, it will move in the direction you want when you jog in X, Y, or Z. When you rotate the tool, it should rotate about the Tool center point. The TCP should remain stationary. 24 Frames MATELRNAT0511CE REV. A 1.18 Slide 21-Selecting a Tool Frame from the Jog Menu Frames Selecting a Tool Frame from the Jog Menu Tool #1 Tool #2 + Tool ( .=10) Jog User Group 2 0 3 2 Audio: When there are multiple tools and groups defined on a robot, you can use the jog menu to verify and change the following jogging information: TOOL, JOG, and USER frame number of each frame. Additionally, you can change motion group number – be aware that before changing motion group number, the frame number that is displayed is the frame number defined within that motion group. First press SHIFT plus the coordinate key on the Teach Pendant. Select TOOL and enter the number of the frame you want. Then press the coordinate key without the shift key until desired coordinate system is selected. After you have taught the Tool Center Point and that tool is selected, you can test the tool by jogging in the Tool Frame you have just taught. 25 Frames MATELRNAT0511CE REV. A 1.19 Slide 22-How the Robot Frames are linked Frames How the Robot frames are linked Robot Tool Frame (TCP) Taught Position J P[1] 100% FINE Positional data User Frame origin Audio: In Summary, the Tool Frame Offset tells the controller where the Tool frame is relative to the center of the faceplate Positional data tells the controller where the Tool frame is, relative to the User frame. In this example, there is a defined User Frame that is not using the default world frame. User frame offset data (UFRAME) tells the controller where the defined USER frame is relative to World frame. This is the next subject. 26 Frames MATELRNAT0511CE REV. A 1.20 Slide 23-User Frame Frames User Frame User Frame is this offset in the X,Y,Z,W,P,R World Frame • User frame - user defined frame +Z PL AN E X PL AN E AN E -X Z -X XP Y PLANE -Y -Z PL +Y +Z +Y +X Z NE LA +X You can define up to 9 user frames within R-J3 controllers Y PL AN E -Y -Z User: Now let’s discuss the User Frame • User frame is a frame that you can set up in any location, with any orientation. User frames are used so that positions in a program can be recorded relative to the origin of the frame. • If you do not set up the location and orientation of the user frame before you create a program, then the user frame will be set, by default, to the world frame origin point. When jogging the robot in User coordinates and you have not defined a user frame, then the XYZ motion will be the same as XYZ motion in world. If you jog the robot in User Coordinates, and a user frame has been defined and that defined user frame is selected, you must remember that the X, Y, & Z origin point is referenced from the defined user frame, not the center of the robot, like World Coordinates does. You can define up to nine user frames within the R-J3 controllers There are three methods of setting the Uframe: The Three Point Method, the Four Point Method and the Direct Entry Method. 27 Frames MATELRNAT0511CE REV. A 1.21 Slide 24- Example of User & Tool Frame in a TP Program Frames Example of User & Tool Frame in a TP Program Program Position Detail Audio: Each time a point is taught in a program, the recorded positional data provides the location of the TCP, expressed as X, Y, & Z, relative to the origin of the currently selected User Frame. The orientation of the Tool Frame, expressed as W, P, & R, for Yaw, Pitch and Roll, is also relative to the User Frame. Therefore, if no Tool Frame has been taught, the X, Y, & Z positional data will reference from the center of the robot faceplate and not the center of the attached tool. However, if a Tool frame has been taught, and, that Tool Frame is selected, the X, Y, Z, W, P, & R data will reference the actual Tool Center Point. 28 Frames MATELRNAT0511CE REV. A 1.22 Slide 25-Sample Program UFrame vs. World Frame Frames Sample Program UFrame vs. World Frame Program is referenced from UFrame Program Points Audio: One of the benefits of defining a user frame is when multiple programs are based on a user frame which can be referenced from the workpiece and when the workpiece moves, then editing the user frame would adjust all programs based on that user frame. Frames 29 MATELRNAT0511CE REV. A 1.23 Slide 26-User Frame Procedure Audio: This video will show you how to define a User Frame using the 3 point method. 1 First turn the Teach Pendant to the ON position, then press the MENUS key. From the pop-up menu cursor down to SETUP and press the ENTER key. 2 Now press the F1 TYPE key and cursor down to FRAMES and press the ENTER key. Upon selecting Frames, the Tool frame setup is the default screen. 3 Select User frame from the function key F3 labeled OTHER and press ENTER 4 Press F2 DETAIL function key to define and name the user frame. 5 You can name the user frame within the Comment line; however this has already been defined. To delete the existing name and rename it hold the Shift key plus arrow right to delete one character at a time. We will rename it to be called BOX. The Teach Pendant recognizes the Frame number and not the comment name you provide. 6 Press the softkey F2 labeled method to select the method that you will be using when defining the User Frame 7 Jog the robot to the Orient origin point position and record it using the SHIFT and F5 Record key 8 Next, you define the Positive X direction by jogging the robot from the Orient Origin point at least 250 mm, then HOLD the SHIFT key and PRESS the F5 RECORD key. 30 Frames MATELRNAT0511CE REV. A 9 Now jog the tool at least 250mm in the direction that you want to define as the Positive Y direction and HOLD the SHIFT key and PRESS the F5 RECORD key. 10 This completes the procedure on how to define a user frame using the three point method 11 Now we will demonstrate using the newly defined the User Frame. newly 12 When you press the SHIFT plus the COORD key, you can verify the user frame number that is selected. This completes the demonstration on how to create a three point user frame. Frames 31 MATELRNAT0511CE REV. A 1.24 Slide 27-You Try It-User Frame Audio: This is your opportunity to recall the steps needed to define a User Frame using the 3 point method. You can name the user frame within the Comment line; however this has already been defined. We will rename it to be called BOX. We will Jog the robot to the Orient origin point position We will jog the robot from the Orient Origin point 250 mm. We will jog the tool at least 250mm in the direction that defines the Positive Y direction. 32 Frames MATELRNAT0511CE REV. A 1.25 Slide 28-Remote Tool Center Point Frames Remote Tool Center Point Tool Frame +Z +Y -X +Z +X User Frame +Y (Remote Tool Center Point) Audio: In this section, we will cover the Remote Tool Center Point A remote tool is an external tool within the robot’s working envelope that performs work on a part that is delivered by the robot. In situations where the robot carries the workpiece and the tool is stationary, you can make use of the User Frame to provide special movement of the workpiece about the tool. In these situations the User Frame is called a Remote Tool Center Point. You can define a user frame whose origin is at the external tool to allow moving the part relative to the external tool. When the user frame is employed this way, it is called a Remote Tool Center Point. You must first define a user frame before you can use the Remote Tool Center Point feature when jogging the robot. If you want to include remote tool center point moves in a program, you must include Remote Tool Center Point instructions in the program. Frames 33 MATELRNAT0511CE REV. A 1.26 Slide 29-Function Key Frames Function Key FCTN Audio: The controller must have the Remote Tool Center Point software option installed. To jog the robot in Remote Tool Center Point, you must press the Function key on the Teach Pendant, select “Toggle Remote TCP” and press enter. Once you have selected the Remote TCP function and you are using XYZ coordinates, the selected Remote Tool Center Point, along with the coordinate system will be displayed in the teach pendant window. In this example Remote TCP one and Tool Coordinate is displayed in the Teach Pendant window. When this function is enabled and the remote tool center point user frame has been defined, you can jog the robot with the part around the remote tool. 34 Frames MATELRNAT0511CE REV. A 1.27 Slide 30-RTCP Instruction Audio: if you want to use the Remote Tool Center Point option in your Teach Pendant program, you must decide where it is needed and then place it on the end of the program-line statement using the CHOICE menu to display Motion Options to select RTCP. Notice in this animation, which provides multiple views of the same motion, how the robot with part will jog around the remote tool. When you are done viewing this slide, press the next slide icon. Frames 35 MATELRNAT0511CE REV. A 1.28 Slide 31-No RTCP Instruction Audio: Here is an example of the resulting path of a robot using a Teach Pendant program without the Remote Tool Center Point option. This example also shows multiple views of the same motion. Notice how the robot with part is not accurate when rotating around the tool. 36 Frames MATELRNAT0511CE REV. A 1.29 Slide 32-Jog Frame Frames Jog Frame World Frame Jog Frame You can set up as many as 5 different jog frames for each robot Audio: We will wrap up with Jog Frame The Jog Frame provides a convenient way to jog the robot relative to a particular workpiece. In this example, A Jog frame was defined to move along a part when the part is oriented differently from the world frame. This displays two examples: the world frame and the jog frame. The benefits of defining a jog frame, are that it makes jogging easier when teaching points, and it will remove the need to "tack” while jogging, if a part is skewed in relation to the world frame. Remember that Jog frames can be taught anywhere inside the robot’s workspace. You may like to think of a Jog Frame as another right hand rule defined somewhere within the work envelope. NOTE that a Jog Frame has no effect on program data! Before you can use a jog frame, you must set up its location and orientation. You can set up as many as five different jog frames for each robot. Frames 37 MATELRNAT0511CE REV. A You can select one jog frame to be active at a time per motion group. Once the Jog Frame has been defined and is selected, the robot can be jogged in that frame. There are two methods you can use to define a jog frame: The “Direct Entry” method and the “Three Point” method 1. The direct entry method provides for direct recording and numerical entry of the frame position. 2. This method allows you to designate the origin with the actual values for x, y, z, w, p, and r when they are already known. Usually however, the frame data is unknown. In that case you can use the three point method to teach a jog frame. 38 Frames MATELRNAT0511CE REV. A 1.30 Slide 33-Jog Frame Procedure Audio: In this video you will learn how to define a jog frame. 1 First, turn on the Teach Pendant, then select Setup from the MENU key. 2 Now press the function key F1 labeled TYPE and cursor down to FRAMES and press the ENTER key. 3 Select Jog frame from the function key F3 labeled OTHER and press ENTER 4 Press F2 DETAIL function key to define and name the jog frame. 5 Press ENTER to name this frame BOX, then press ENTER again 6 Select the function key F2 labeled METHOD and select 3 point. 7 Place the robot at the top left hand corner of the box and record the origin point. When the robot is positioned at this point, press Shift plus F5 to Record this position. For the X direction, jog the robot in the direction that you want the jog frame plus X direction to be. Any coordinates can be utilized to get to the +X directions. Coordinates do not have any bearing on the final outcome in defining the jog frame. 8 Now jog the robot so that the pointer is half way down the box to represent the +Y direction. Frames 39 MATELRNAT0511CE REV. A 9 Press SHIFT F5 to record the +Y direction 10 Now test the frame that was just created. Change the coordinates to jog frame. 11 When you bring up the jog menu with the SHIFT plus the COORD key, you will see that jog frame number 1 is active This completes the Jog Frame setup procedure 1.31 Slide 34-Frames Summary Frames Frames Summary • World frame - default frame of the robot • Tool frame - user defined frame • User frame - user defined frame – RTCP – Remote Tool Center Point • HandlingTool, DispenseTool, and SpotTool+ only) • Jog frame - user defined frame Audio: You have completed the frames module. In this module understanding the different types of frames has been the key topic. We learned that world frame is always the default frame of the robot. An important reason to define a tool frame is simply jog the TCP to the work piece which makes programming easier. User frame is a frame that you can setup in any location and any orientation. User frames are used so that positions in a program can be recorded relative to the origin of the frame. A remote tool is an external tool within the robot’s working envelope that performs work on a part that is delivered by the robot. And the course wrapped up with Jog frame which simply provides a convenient way to jog the robot relative to a particular work piece. 40 Frames MATELRNAT0511CE REV. A 1.32 Slide 35-Quiz Frames Quiz • Now is your opportunity to test your knowledge • You must pass with an 80% or higher • You may retake the questions as many times as necessary, but you must close out of the course before retaking it again. Click here to begin the Quiz Audio: If you have any questions or would like to provide feedback, please contact trainingweb@fanucrobotics.com And now in the next slides you will have the opportunity to test your knowledge of the information that has been provided. 2 41 Input/Output System R-J3, R-J3iB & R-30iA 2 INPUT/OUTPUT Input/Output Module Objectives After successfully completing this module you should know the different types of I/O and how to configure them: Audio: Welcome to Input, Output After successfully completing this module, you should know the different types of Inputs and Outputs and how to configure them. There are several types of I/O’s, but in this module, the different types of Inputs and Outputs are: Robot; Digital; Analog and Group. Inputs and Outputs are electrical signals that enable the robot controller to communicate with End of Arm Tooling, process equipment, other external sensors and other devices. 42 Input/Output MATELRNAT0511CE REV. A 2.1 Slide 2-Analog Input/Output Analog Typical Voltage Values -10 volts to +10 volts Substance Pressure Transducer - Analog Audio: First, what are Analog signals Analog Signals are created from sensors, or transducers in the work cell, or sent from a Robot controller via its control module to a transducer within the cell to effect a change. This signal is normally an electrical voltage within an accepted range of values that is transmitted to or from an I/O circuit-board or module connected to a robot controller. Notice, in this example, that as the substance fills the tank, the pressure transducer puts out an analog voltage that is used to determine when to open the valve and release the substance. Analog input devices convert external analog signals into numbers for use by the controller. Analog Output devices send analog signals out to external devices. Typical voltages of analog inputs and Outputs are from negative 10 to positive 10 volts Input/Output 43 MATELRNAT0511CE REV. A 2.2 Slide 3-Digital Input/Output Input/Output Digital Input/Output Light switch is OFF ON Audio: A Digital Input and Output signal is a control signal sent to or from the controller. Digital signals can have only one of two possible states: ON or OFF. 44 Input/Output MATELRNAT0511CE REV. A 2.3 Slide 4-Digital Input/Output Digital Float with Switch – Digital OFF ON Substance Audio: Here is an example of a Digital signal. As a substance fills the tank, a switch, connected to the float at the top of the tank will disconnect to break a connection. This becomes a digital OFF signal, and is used to stop the flow of substance. Then as the substance drains out of the tank, the float’s switch will make the connection to turn the substance-flow on. Input/Output MATELRNAT0511CE REV. A 2.4 Slide 5-Robot I/O Audio: Robot Inputs and Outputs are digital signals usually used to manipulate the End of Arm Tooling. These signals are sent through the End Effector or the EE connector located on the robot. Although all robot have it, not all robots use it. 45 46 Input/Output MATELRNAT0511CE REV. A 2.5 Slide 6-Robot I/O Audio: This example shows how the programming instruction would be written to manipulate the End of Arm Tooling utilizing Robot Outputs. Input/Output 47 MATELRNAT0511CE REV. A 2.6 Slide 7-Model A Input/Output Audio: Here’s how to configure Digital AND ANALOG Inputs and Outputs: When all appropriate I/O hardware has been installed and connected, you must configure the I/O. Configuring I/O establishes the correspondence between the signal number and the physical port. Each signal, or signal-sequence must be configured to a rack, a slot in the rack, and the channel number or starting point. You can change this configuration depending on the kind of I/O you are using. Model “A” I/O is unique, in the fact that some FANUC software will be automatically configured, similar to the PC-world’s “Plug and Play”. 48 Input/Output MATELRNAT0511CE REV. A 2.7 Slide 8-Rack Assignment Input/Output Rack Assignment • The rack is the first part of the address for an I/O signal • The following ground rules apply to assigning I/O rack numbers – – – – – – Racks are numbered sequentially Process I/O is always rack 0 Model A or Model B I/0 Starts at rack 1 PLC I/O is always rack 16 DeviceNet is always rack 81-84 ControlNet is always Rack 85/86 Audio: The rack is the first part of the address for an I/O signal. The following ground rules apply to assigning I/O rack numbers: • Racks are numbered sequentially • Process I/O is always rack 0 • Model A or Model B I/0 Starts at rack 1 • PLC I/O is always rack 16 • DeviceNet is always rack 81-84 • and ControlNet is always rack 85 & 86. Input/Output 49 MATELRNAT0511CE REV. A 2.8 Slide 9-Model A – Rack Input/Output Model A - Rack Rack Audio: The rack is the physical location on which the input or output process I/O board or modular I/O is mounted. Your system can contain multiple racks. 50 Input/Output MATELRNAT0511CE REV. A 2.9 Slide 10-Slot Assignment Input/Output Slot Assignment • The slot is the second part of the address for an I/O signal • The slot number distinguishes individual I/O modules on a rack • The following rules apply to slot assignment – – – – Slot numbers are assigned sequentially Valid numbers are 1 through 9, no letters The first process I/O board is always assigned slot 1 Slot numbers cannot be used twice in the same rack Audio: The slot is the second part of the address for an I/O signal. The slot number distinguishes individual I/O modules on a rack. The following rules apply to slot assignment: • Slot numbers are assigned sequentially • Valid numbers are 1 through 9, no letters • The first process I/O board is always assigned slot 1 • And slot numbers cannot be used twice in the same rack. Input/Output 51 MATELRNAT0511CE REV. A 2.10 Slide 11-Model A Slot Assignment Audio: The first opening within the Rack is for the Interface card. The remaining slots are for the Input and Output cards. Here is an example of a model “A” I/O inside a controller. 52 Input/Output MATELRNAT0511CE REV. A 2.11 Slide 12-Starting Point/Channel Assignment Input/Output Starting Point/Channel Assignment • Starting points-digital signals – The physical position on the I/O module or process I/O board that identifies the first port in a range • Channel-Analog Signals – Physical position of the port on a process I/O – Terminal number for modular I/O Audio: Starting points for digital signals are the physical position on the I/O module or process I/O board that identifies the first point in a range. Analog Signals use channels that are the physical position of the port on a process I/O board or a terminal number for I/O card. Input/Output 53 MATELRNAT0511CE REV. A 2.12 Slide 13-Model A-Starting Point Assignment Input/Output Model A - Starting Point Assignment I/O Signal Connections Audio: This is an example of a digital I/O card. It has 16 inputs or outputs. The signal terminals are labeled A0 through A7 and B0 through B7. Digital input/output one is terminal A0. Digital input 2 is terminal A1, continuing through the first 8 input/outputs. Digital input 9 is terminal B0, and the remaining input/outputs continue on terminals B1 through B7. The schematic diagram indicates the proper wiring for power, ground and connection for each input/output signal. 54 Input/Output MATELRNAT0511CE REV. A 2.13 Slide 14-Configuring I/O Input/Output MATELRNAT0511CE REV. A Audio: We are now ready to Configure Digital I/O: 1 Press the MENU key and select I/O. 2 Then press the F1 [TYPE] key and select Digital you will see the following screen. 3 The F3 IN/OUT key will let you toggle between Inputs and Outputs. 4 Now press the F2 CONFIG Key to get to the configuration screen. 5 First set your range or the number of ports you want to configure. In this example we will change the range from 1 thru 64 to 1 thru 16. 6 Then cursor over and assign the Rack, Slot and Starting Point. It is important that once you have completed your I/O configuration that you power down the controller and power it back up to get the changes to take effect. 55 56 Input/Output MATELRNAT0511CE REV. A 2.14 Slide 15-Configurig I/O Status Audio: The Status line describes the current status of the I/O. ACTIVE - the assignment is valid and active. INVALID – the assignment is invalid based on the I/O hardware present when the controller was turned ON. Invalid will appear when you choose incorrect values for that module PENDING - the assignment is valid, but not active. UNASSIGNED - An assignment has not been made. 57 Input/Output MATELRNAT0511CE REV. A 2.15 Slide 16-Complementary Signals Input/Output Complementary Signals DO[1] DO[2] DO[3] DO[4] DO[5] 1 2 3 4 5 F1 F2 F3 F4 F5 Audio: If Output signals are configured as a complementary pair, a command to turn that signal ON will also turn its paired output OFF. In this example Digital Outputs 1 and 2 are setup to be complementary. By manipulating Digital Output 1, we can also manipulate Digital output 2. In this example the cursor is on Digit Output 1, we have turned it OFF then Digital Output 2 will automatically turn ON. Only outputs can be set as complementary pairs. So Digital Output 1 and 2 can be a paired together, then 3 and 4 together, 5 and 6 are together and so on. 58 Input/Output MATELRNAT0511CE REV. A 2.16 Slide 17-I/O Detail Input/Output I/O Detail F1 F2 F3 F4 F5 Next Audio: The I/O Detail key lets you name, set the polarity of and configure complementary pairs for each Input or Output. Complementary pairs are always defined on the odd output. To access the detail screen, from the I/O screen press the next key then press the F4 DETAIL key. To name the I/O, with the cursor on the Comment line, press the ENTER key. To set the output to be complementary, cursor down to Complementary and press the F4 TRUE key. You must power down the controller and power it back up to get the changes to take effect. Input/Output MATELRNAT0511CE REV. A 2.17 Slide 18-19-Monitoring/Controlling I/O Input/Output Monitoring/Controlling I/O WARNING: BEFORE FORCING A SIGNAL BE SURE THAT IT IS SAFE TO DO SO. SIGNALS SHOULD BE FORCED FOR TESTING AND TROUBLESHOOTING PURPOSES ONLY. AFTER COMPLETION OF TESTING OR TROUBLESHOOTING BE SURE TO RETURN ALL I/O SIGNALS TO THEIR NORMAL CONDITION. Audio: BEFORE FORCING A SIGNAL BE SURE THAT IT IS SAFE TO DO SO. SIGNALS SHOULD BE FORCED FOR TESTING AND TROUBLESHOOTING PURPOSES ONLY. AFTER COMPLETION OF TESTING OR TROUBLESHOOTING BE SURE TO RETURN ALL I/O SIGNALS TO THEIR NORMAL CONDITION. 59 60 Input/Output MATELRNAT0511CE REV. A Input/Output Monitoring/Controlling I/O DO [1] DO [2] DO [3] DO [4] DO [5] DO [6] DO [7] DO [8] DO [9] DO [10] F1 F2 F3 F4 F5 DO [11] Audio: The Teach Pendant can be used to monitor and control Input and Output signals. Monitoring I/O is using the teach pendant to see the I/O being manipulated in a program. Controlling I/O is turning the signals ON or OFF manually. As seen in this example Digital Outputs can be manually forced ON or OFF without being simulated. 61 Input/Output MATELRNAT0511CE REV. A 2.18 Slide 20-Simulating I/O Input/Output Simulating I/O ON OFF F1 F2 F3 F4 F5 Audio: Simulating a Input allows us to change the bit for the signal without a signal actually going into or out of the controller. Digital Input signals must be Simulated first and then the signal can be manually forced ON or OFF. 62 Input/Output MATELRNAT0511CE REV. A 2.19 Slide 21-Configuring Group I/O Input/Output Configuring Group I/O Power OFF then ON to enable changes. F1 F2 F3 F4 F5 Audio: Group I/O is made up of a sequence of digital I/O signals that is interpreted as a binary integer. When configuring group I/O, you first need to look at the configuration of the I/O you want to group. In this example we will configure Digital Outputs (DO) 1-16 to Group Output #1. To view the configuration, go into the I/O screen and press F2 CONFIG. Digital Outputs 1-16 are assigned to Rack 1, Slot 1 and our starting point will be 1. Now press the F1 TYPE key to view the Group Outputs. Press the F2 CONFIG key to configure the Group Output. Insert Rack information from the Digital Outputs configuration, in example, we used Rack 1, Slot 1 and Starting Point 1 and the range of digital output we used is 16. Once you have configured your Group Outputs you must power down the controller and power it back up to gets the changes to take effect. 63 Input/Output MATELRNAT0511CE REV. A 2.20 Slide 22-Group Input/Output Input/Output Group Input/Output Binary Bits DO[1] DO[2] DO[3] DO[4] DO[5] 1 2 3 4 5 4 8 1 2 2 3 5 16 1: GO [1] = 2 10 17 Audio: Once the Group I/O are configured you can manipulate multiple I/O with binary bits. When Group Output #1 is set to 2 the Binary bit 2 is switched ON. When Group Output #1 is set to 10 both Binary bits 2 and 8 are switched ON. And when Group Output #1 is set to 17, Binary bits 1 and 16 are switched ON. An example of using Group I/O might to turn ON multiple colors of paint or turn on several items simultaneously by using one number. 64 Input/Output MATELRNAT0511CE REV. A 2.21 Slide 23-Input/Output Review Input/Output Input/Output Review • Robot Inputs and Outputs are signals between the robot and the controller. • An analog signal is an input or output voltage that has a range of values within the I/O board or module that is being used. • Digital signals can have only one of two possible states: ON or OFF. • Group I/O is made up of a sequence of digital I/O signals that is interpreted as a binary integer. Click here to begin the Quiz Audio: In Review • Robot Inputs and Outputs are signals between the robot and the controller. • An analog signal is an input or output voltage that has a range of values within the I/O board or module that is being used. • Digital signals can have only one of two possible states: ON or OFF. • Group I/O is made up of a sequence of digital I/O signals that is interpreted as a binary integer. • This concludes the Input/Output Module. The next four slides will provide you the opportunity to test your knowledge and comprehension. 3 Program Instruction 65 System R-J3, R-J3iB & R-30iA 3 PROGRAM INSTRUCTION Program Instructions Program Instructions Audio: Welcome to the Program Instructions Module 66 Program Instruction MATELRNAT0511CE REV. A 3.1 Slide 2-Module Content Program Instructions Module Content • Data Register • Position Register Instruction • Branching Instructions – Label – Unconditional • JMP LBL • CALL – Conditional • Wait Instructions • Miscellaneous Instructions – – – – Remark Override Message Timer Audio This module will cover Data Registers, Position Register Instruction, Unconditional and Conditional Branching, Wait Instructions and Miscellaneous Instructions which are Remark, Override, Message and Timer 67 Program Instruction MATELRNAT0511CE REV. A 3.2 Slide 3-Data Register Program Instructions Data Register • • • • Direct R[3]= 2 Registers are used to store numbers Numbers can be used for arithmetic operations, track part count, cycle count, May contain group I/O data Default number of registers is 32 – Can be changed during initial setup or during control start • Internal Register Direct vs Indirect Indirect R [R [3] ] = 5 External Register R[R[3]=2] or R[2] Audio: Registers are very powerful programming tools. When used correctly, registers can be utilized as counter, to set program flags, or to adjust program speed. A register stores one number. The default number of registers is 32, however up to 999 registers are available. 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 register instruction R[3]= 2 is used, the current contents of register 3 is replaced with the value 2. When indirect addressing is used, the instruction contains a register within a register. This indicates that the actual value of the internal register becomes the register number of the external register. In the example shown Register 3 is the internal register and statement shown (R[R[3]]) is the external register. Since in the previous instruction value of the internal register 3 is 2, the external register number addresses register 2 instead of register 3. Therefore, the result of the second instruction is that the contents of the external register 2 is to be replaced with the value 5. You can increase the number of registers during a controlled start. 68 Program Instruction MATELRNAT0511CE REV. A 3.3 Slide 4-Position Register Instructions Program Instructions POSITION REGISTER Instructions PR[GRPn:x]=[value] Audio: Position registers can be used to store global positions, such as a home or a maintenance position which contain x,y,z,w,p,r, configuration. Position Registers allow positions to be predefined for shared use by many programs. Position register instructions can manipulate the robot positions. They include assignment, addition, and subtraction instructions. The following is the instruction syntax The Group number is needed if there is more than one group defined. The x is the position register number direct or indirect. For clarification of direct or indirect, refer to the slide “Register Instructions” The value choices are LPOS which is the current Cartesian coordinates in xyzwpr and configuration; JPOS which is Current joint angles; UTOOL number is the Tool Frame; UFRAME number is the User frame; PR number is the Position Register and P number is the Position. The operator choices are addition, subtraction or carriage return to terminate without adding an operator The maximum number of the same arithmetic operator you can have in one instruction is 5. 69 Program Instruction MATELRNAT0511CE REV. A 3.4 Slide 5-Position Register Element Program Instructions POSITION REGISTER Element PR [i, j] Direct: Position Register element # Indirect: Position register #= contents of R[x] /PROG PREG_ELE 1: !POSITION REG VALUE 2:J P[1:ABOVE JOINT] 100% FINE 3:J P[2] 100% FINE 4: PR[1]=LPOS 5: PR[1,2]=600 6:L PR[1] 100.0inch/min FINE 7:J P[1:ABOVE JOINT] 100% FINE /END Indirect: Position register element #= contents of R[x] Direct: Position Register element # For Cartesian Positions: For Joint positions 1=x 2=y 3=z 4=w 5=p 6=r 7=config 1=joint 1 2=joint 2 3=joint 3 4=joint 4 5=joint 5 6=joint 6 n=joint n x, y, z, w, p, r, config x,600,z, w, p, r, config Audio: Position register element instructions manipulate a specific position register element. A position register element is one element of a specified position register. Where the designation for i represents the position register number and the j represents the position register element. The program example shown, line 4 is changing Position register 1 to equal the current Cartesian coordinates position in line 3 (x,y,z,w,p,r,config) as explained in the previous slide. Program line number 5 is using position register element 2 which is y shown in the table, to equal 600. Program Line 6 will move the robot in a linear move to position register 1 with 100 inches per minute travel speed and Fine termination. 70 Program Instruction MATELRNAT0511CE REV. A 3.5 Slide 6-Program Instructions Program Instructions Program Instructions Instruction Instruction Instruction 1 Registers 1 Skip 1 LOCK PREG 2 I/O 2 Payload 2 MONITOR/MON. END 3 IF/SELECT 3 Offset/Frames 3 4 WAIT 4 Multiple control 4 5 JMP/LBL 5 Program control 5 6 CALL 6 MACRO 6 7 Miscellaneous 7 Tool Offset 7 8 –next page-- 8 –next page-- 8 –next page-- Audio: While creating or editing a program from the select menu, all instructions can be displayed while the cursor is on the program line number or at the END of the program. The function 1 key labeled INSTRUCTION will provide a list as shown here. Program Instruction MATELRNAT0511CE REV. A 3.6 Slide 7-Branching Instructions Program Instructions Branching Instructions 1. Label Definition Instruction 2. Unconditional Branching Instructions 3. Conditional Branching Instructions Audio: Starting with Branching instructions Branching Instructions cause the program to branch, or jump, from one place in a program to another. There are three kinds of branching instructions: 1. Label definition instruction 2. Unconditional branching instructions 3. Conditional branching instructions 71 72 Program Instruction MATELRNAT0511CE REV. A 3.7 Slide 8-Label Definition Instruction LBL[x] Program Instructions Label Definition Instruction LBL[x] LBL[x: comment] Direct: Label number As many as 16 numbers, letters, Indirect: blank spaces, the punctuation ;, :, R[x] where label #= contents of R[x] ’, ”, (, ), and the characters * , _ and @ Unconditional Branching Instruction JMP LBL[x] 1: LBL [1] 2: J P[2] 100% CNT80 3: L P[3] 2000mm/s CNT80 4: L P[4] 2000mm/s CNT80 5: L P[5] 2000mm/s CNT80 6: L P[2] 2000mm/s CNT80 7: JMP LBL [1] END Audio: 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. Use the Jump Label instruction to branch to the specified label. Watch the program flow. When it reaches the Jump Label 1, the program then looks for the label 1 to continue the program Program Instruction 73 MATELRNAT0511CE REV. A 3.8 Slide 9-Unconditional Branch – Call Program Instructions Unconditional Branch - Call CALL program Name of Program PROG2 PROG1 PROG1 PROG2 JOINT 100% P[2] 100% CNT80 1: J P[1] P[3] 2000mm/s CNT80 2: J P[2] P[4] 2000mm/s CNT80 3: L P[3] P[5] 2000mm/s CNT80 4: L P[4] 5: L P[6] 2000mm/s CNT80 END 6: L P[2] 2000mm/s CNT80 7: CALL PROG2 8: L P[7] 2000mm/s CNT80 END Audio: Another Branch instruction you could use is the CALL instruction. The CALL program instruction causes the program to branch to another program and execute it. When the called program finishes executing, it returns automatically to the main program at the first instruction after the call program instruction. It is not necessary to add a call statement in the second program to return back to the first program as it will automatically return when it reaches the program END. 74 Program Instruction MATELRNAT0511CE REV. A 3.9 Slide 10-Conditional Branching Instructions Program Instructions 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. Audio: 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 which branch to a specified label or program if certain conditions are true. There are register IF instructions and input/output IF instructions. And there is the SELECT instructions which branch to one of several jump or call instructions, depending on the value of a register. 75 Program Instruction MATELRNAT0511CE REV. A 3.10 Slide 11-IF Register Program Instructions IF Register Condition IF R[x] [operator] [value] Direct: [action] Register # = equal constant value Indirect: <> not equal R[x] where value = contents of R[x] R[x] where register #= contents of R[x] < less than <= less than or equal > greater than or equal JMP LBL[x] CALL program IF R [1] = 1 AND R [2] = 2 AND DI [2] = ON, JMP LBL [2] Audio: Register IF instructions compare the value contained in a register with another value and then take an action if the comparison is true. For an IF instruction, conditions can be connecting using AND or OR. Looking at the example shown, the IF is checking to see if Register 1 is equal to 1 AND Register 2 is equal to 2 AND Digital Input 2 is ON. When all three conditions are true, then the action is to jump to label 2. 76 Program Instruction MATELRNAT0511CE REV. A 3.11 Slide 12-Example #1 – IF Register Program Instructions Example #1 – IF Register R[1: Number of welds] R[2: Number of Tip Dresses] DI[2: Zone is Clear] IF R[1] >= 3000 and R[2] = 5 and DI[2]=ON, JMP LBL [2] Audio: In this example, Register 1 is tracking the number of welds Register 2 is tracking the number of tip dresses Digital Input 2 is used to determine if the Zone is clear So If the number of welds in register 1 is greater than or equal to 3000 and the caps have already been shaved or dressed more than five times which is determined by the value in register 2 AND the zone is clear which Digital Input [2] is equal to ON of other equipment … then jump to another part of the program to execute the Cap Change program … which means it’s time to change weld caps. Program Instruction 77 MATELRNAT0511CE REV. A 3.12 Slide 13-Example #2 – IF Register Program Instructions Example #2 – IF Register R[1: Number of parts on the pallet] R[2: Number pallets stacked] DO[2: Request for Fork Truck] If R[1] >= 30 and R[2] = 5, JMP LBL [2] . . . LBL 2 DO[2]=ON Audio: In example 2 IF the number of parts on the pallet is greater than or equal to 30 which is determined by register 1 number value indicates that the pallet is full AND the number of pallets stacked in register 2 is equal to 5… then jump to another part of the program to turn on the light beacon “Digital Output [2]” for the Fork Truck … indicating that these are ready to go. 78 Program Instruction MATELRNAT0511CE REV. A 3.13 Slide 14-IF Input/Output Program Instructions IF Input/Output Condition IF [I/O] [operator] [value] JMP LBL[x] DO[x] DI[x] RO[x] [action] = equal <> not equal RI[x] SO[x] SI[x] UO[x] UI[x] IF DI [10]=ON OR R [7]=R [8], JMP LBL [2] CALL program R[X] On Off DO[x] DI[x] RO[x] RI[x] SO[x] SI[x] UO[x] UI[x] Audio: Input/output IF instructions compare an input or output value with another value and take an action if the comparison is true. You cannot mix the AND or OR operators in the same operation. Here is an example of using an OR operator. The IF is checking to see if Digital Input #10 is ON -OR- Register 7 has the same value as Register 8. In the event one of the two conditions is true, then the action will jump to label 2. Program Instruction 79 MATELRNAT0511CE REV. A 3.14 Slide 15-Example #3 – IF / OR Program Instructions Example #3 – IF / OR DO[10: Conveyor Running] R[7: Number of parts processed] R[8: Maximum number of parts] LBL [1] . . . If DO[10] = OFF OR R[7] = R[8], JMP LBL [2] . . . JMP LBL [1] LBL [2] END Audio: In example 3, If the conveyor “Digital Output [10]” has been shut off, or if the number of parts processed in register 7” equals the number of parts needed in register 8, then the logic jumps to the end of the program. Otherwise the program jumps back to the beginning to continue to run until it processes all the parts needed. 80 Program Instruction MATELRNAT0511CE REV. A 3.15 Slide 16-IF Procedure Audio: This video will demonstration the steps to create an IF Register program instructions. 1 Select the program to be edited. 2 Arrow down to the End to add the new Program Instruction or insert a new program line if needed. 3 Turn the Teach Pendant switch to the On position. 4 Press the NEXT key to add the new Program Instruction 5 Press F1 key labeled INSTRUCTION 6 Arrow down to highlight the IF/SELECT instruction 7 Press ENTER to select the instruction 8 Select the appropriate operator for the IF statement. This demonstration is using the equal operator, press ENTER to select it. 9 Press ENTER again to select Register statement 10 Select the Register number for the IF instruction. This demonstration will use a constant value to compare against Register 1 11 Enter in the constant value to compare with. Program Instruction 81 MATELRNAT0511CE REV. A This completes a condition portion of the If statement. Arrow down to select AND if you desire another condition 3.16 Slide 17-You Try It – IF Register Audio: Here you will need recall all the steps needed to create an IF Register program instruction. 82 Program Instruction MATELRNAT0511CE REV. A 3.17 Slide 18-SELECT Instructions Program Instructions SELECT Instructions MAIN2: 1:LBL[1] 2: SELECT R[5:PRGSLCT]=1 CALL PROG1 3: =2 CALL PROG2 4: =3 CALL PROG3 5: ELSE JMP LBL[1] L P[7] 2000mm/s CNT80 END Audio: 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. In the program example shown, once the program has captured a valid number, it will execute this program once and then it will move on to the next instruction. Program Instruction 83 MATELRNAT0511CE REV. A 3.18 Slide 19-SELECT Instruction Procedure Audio: This video will demonstration all the steps that are needed to call specific programs based on a Register’s value utilizing the SELECT branching instructions. 1 Select and edit the program to add the instructions to. Tturn on the teach pendant. 2 Press the Next key to display the F1 instruction choice. 3 Press Function 1 to select the SELECT instruction 4 Arrow down to line 3 labeled IF/SELECT 5 Press ENTER to select the instruction. All the IF and SELECT choices will appear. You must press line 8 labeled next page to view the SELECT instruction choices. We will use all three SELECT instructions listed here to accomplish the task. 6 Select the first item labeled SELECT Register equal to. 7 Enter register 5 8 Press Enter 9 Now select Constant 10 Within Register 5, determine if the content contains the value 1. 11 If the value is 1, then issue a CALL instruction to PROGRAM 1 84 Program Instruction MATELRNAT0511CE REV. A 12 To add additional branching instructions, we need to insert two more select conditions. 13 Arrow down to IF/SELECT and press ENTER 14 Once again, select NEXT PAGE to view the SELECT instruction choices. 15 This time select item 2 labeled <select> equal 16 Now we will determine if Register 5, contains the value 2. 17 Select the CALL instruction 18 If the register 5 contains the value 2, select the program name PROG2 19 Now we will repeat the process to insert another CALL instruction to Program name PROG 3 20 Now insert the ELSE JUMP LABEL instruction in the event that Register 5 does not contain the values 1, 2 or 3 21 Enter the value 1 to jump to label 1 This completes the SELECT instruction demonstration. Press the next slide icon at the bottom of the course window to continue the course. Program Instruction 85 MATELRNAT0511CE REV. A 3.19 Slide 20-SELECT Instructions – You Try it Audio: This is your opportunity to recall the steps needed to call specific programs based on a register value utilizing the select branching instructions. 86 Program Instruction MATELRNAT0511CE REV. A 3.20 Slide 21-WAIT Instruction Audio: WAIT condition instructions delay program execution until specified conditions are true or until an amount of time elapses (a timeout occurs). The timeout can be specified as one of the following: Forever - the program will wait until the condition is true. Timeout, LBL[i] - the program will wait for the time specified in Timeout . If the condition is still not true, the program will branch to the specified label. You can specify the timeout by setting the system variable $WAITTMOUT to a time, in milliseconds. The default timeout value is 3000 milliseconds which is 3 seconds. You can change this system variable by going to MENU , SYSTEM then press F1 labeled TYPE and select Variable. The example shown will wait for Digital Input 1 to equal On and Digital Input 2 to equal ON for 3 seconds (based off the system variable WAIT default setting), if the digital inputs do not turn on, then the program will move to label 1. Program Instruction 87 MATELRNAT0511CE REV. A 3.21 Slide 22-REMARK Instruction Program Instructions REMARK Instruction Remark /PROGRAM INTFZONE 1: !Run interference zones Miscellaneous statements 1 RSR [ ] 2 UALM [ ] 3 TIMER [ ] 4 OVERRIDE 5 Remark 6 Message 7 Parameter Name Audio: Now we will discuss the Miscellaneous Instructions. The Remark instructions allow 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 (!). 88 Program Instruction MATELRNAT0511CE REV. A 3.22 Slide 23-OVERRIDE Instruction Program Instructions OVERRIDE Instruction 1: OVERRIDE = 100 % Audio: The OVERRIDE instruction sets the speed override to a percentage value of the programmed speed. So if your Teach pendant is set at 50% as shown in this screen, inserting an OVERRIDE instruction of 100% will ensure the program will run at that percentage speed. Program Instruction 89 MATELRNAT0511CE REV. A 3.23 Slide 24-MESSAGE Instruction Audio: 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. When the MESSAGE instruction is executed, the user screen is displayed automatically. 90 Program Instruction MATELRNAT0511CE REV. A 3.24 Slide 25-TIMER Instruction Audio: Timer instructions allow you to start, stop, and reset up to ten 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 timer result can be viewed press MENU , press 0 for next, then select STATUS. Press F1 for TYPE then select Program Timer Program Instruction 91 MATELRNAT0511CE REV. A 3.25 Slide 26-Module Complete Program Instructions Module Complete • Next 5 slides will present questions to text your knowledge • 80% or higher is passing • If you need to take the quiz again, close the course and reopen it again Start the Quiz Audio: This completes the Program Instructions module. The next few slide will provide the opportunity to test your knowledge and comprehension. 92 Program Instruction MATELRNAT0511CE REV. A 4 ArcTool Programming 93 System R-J3, R-J3iB & R-30iA 4 ARCTOOL PROGRAMMING ArcTool Information ArcTool Overview Audio: This module will discuss how to setup and teach an Arc Welding program. 94 Modifying a Program MATELRNAT0511CE REV. A 4.1 Slide 2-Module Content ArcTool Information Module Content • • • • ArcTool Program Guideline Weld I/O Setup and Select Weld Equipment ArcTool Instructions • Arc Weld Schedule • • Weld Enable Weave Patterns – ArcTool Default Instructions – Delay Time – Weave Instructions – Weave Schedule • Torchmate Audio: In this module we will cover ArcTool Programming guideline ¾ A Weld input and output discussion ¾ How to setup and select weld equipment ¾ ArcTool program instructions ¾ How to set the ArcTool default instructions to make it easier to program ¾ Using the Arc Weld schedule and an understanding of the delay time ¾ How to enable the weld ¾ An understanding of Weave pattern choices and inserting weave instructions into a program that uses the weave schedule ¾ And we will wrap up with torchmate option Modifying a Program MATELRNAT0511CE REV. A 4.2 Slide 3-ArcTool Program Guidelines ArcTool Information ArcTool Program Guidelines • Use fine termination for weld start and weld end. • Use linear or circular motion type and CNT 100 termination type in motion instructions during arc welding (weld points). • Position the torch in the correct position and orientation depending on your joint type. • Minimize changes in wrist orientation. • Use the proper schedule for each position; consult application process specification information for your application. Audio: Use the following guidelines when you teach an Arc Welding program: Use fine termination type for weld start and weld end instructions. Because the starting and ending of the weld must be accurately located. Use linear or circular motion type and Continuous 100 termination type in motion instructions during arc welding (weld points), because it will maintain the proper stick-out and prevent pausing and point locations Position the torch in the correct position and orientation depending on your joint type. Minimize changes in wrist orientation, because this will help avoid singularity issues along maintaining a straight tooling position. Use the proper weld schedule for each position as using the proper schedule will ensure weld quality. 95 96 Modifying a Program MATELRNAT0511CE REV. A 4.3 Slide 4-Weld I/O ArcTool Information Weld I/O • ArcTool supports: – Analog and Digital I/O – DeviceNet is another method – ArcLink is the newest robotic interface – ArcLink XT (Ethernet) Audio: When configuring Input and Outputs, ArcTool supports several different types of connections to the welding equipment and the choice is governed by the specific equipment chosen for your application. The welding equipment can be connected to the robot controller with analog and digital I/O, DeviceNet, or ArcLink. Analog and Digital I/O hardware is the traditional way to connect a robot and a welding power supply. Typically a Process I/O board and a standard weld cable are used. Modular I/O (Model A) is also used, but less often. The Lincoln Electric PowerWave 450 and Invertec STT II series use the analog and digital I/O interface. Welding equipment that uses the Process I/O board connects to the welding input and output signals on the CRW1 connector. DeviceNet is another method to connect to some models of Lincoln Electric weld equipment. Instead of individual connections for each signal, analog and digital I/O signals are transmitted over a 5 wire CAN (Controller Area Network) network using serial communication. Explicit messaging is also used to exchange setup information. A DeviceNet DNP scanner from SS Technologies and a PC-104 Motherboard are required. ArcLink is the newest robotic interface to Lincoln Electric weld equipment. ArcLink is a CAN 2.0B based serial communication network similar to DeviceNet. It requires the same interface boards that are used with DeviceNet but has different DIP switch settings and cabling. ArcLink has a substantially richer interface than DeviceNet, allowing for tighter integration and faster control from ArcTool. The weld controller in the ArcLink® XT system handles the signal processing for you and does not require adjustment Modifying a Program 97 MATELRNAT0511CE REV. A 4.4 Slide 5-Controlled Start R-J3 thru R-3iB Audio: The next several slides, will be discussing setting up the weld equipment. This requires a controlled start. Controlled start is where you set up hardware equipment, robot motion parameters, execute any software setup, installing options and updates, or loading or setting system variables to the robot. Controlled start for R-J3 through R-J3iB is executed by holding the PREVIOUS AND NEXT keys on the teach pendant while powering up the robot. 98 Modifying a Program MATELRNAT0511CE REV. A 4.5 Slide 6-Controlled Start for R-30iA Audio: For the R-30iA, you can cycle power from the function menu or turn off the disconnect while holding down the PREVIOUS and NEXT keys. Modifying a Program 99 MATELRNAT0511CE REV. A 4.6 Slide 7-@ Controlled Start Weld I/O Equipment Selection Audio: The following Configuration Menu will appear. Press the numeric key number 3 labeled CONTROLLED START and press ENTER . After selecting Controlled start The Weld equipment manufacturer and model will appear. Cursor down to item 6 labeled Manufacturer and select F4 CHOICE. View your choices and select the appropriate manufacturer. This example, we selected Lincoln. When highlighted the manufacturer, press ENTER to select it. 100 Modifying a Program MATELRNAT0511CE REV. A Next arrow down to line 7 labeled Model. Press F4 CHOICE and highlight the power supply of your choice and press ENTER to select. When done, press the FCTN key and enter on START COLD Modifying a Program 101 MATELRNAT0511CE REV. A 4.7 Slide 8-Setting up the Welding System Audio: After installing the weld power supply that will be used, verify the weld system setup menu to ensure to proper operation of your system. To get to this menu, Press Menu, select Setup, then press F1 TYPE and select Weld System For detail of each of these items, refer to the ArcTool manual that came with your robot. Typically, the default values are set correctly. 102 Modifying a Program MATELRNAT0511CE REV. A 4.8 Slide 9-Weld Equipment Audio: The weld equipment is accessed when you select Menu, then Setup, select Weld Equipment from the TYPE function key, you will find that dependent on the type of equipment that was installed during controlled start, this menu will display different choices that is custom to that equipment. For example, this screen is showing General Purpose. Whereas when selecting Lincoln Electric PowerWave with ArcLink as the Weld equipment, then this screen will display different choices that is specific to that equipment. Modifying a Program 103 MATELRNAT0511CE REV. A 4.9 Slide 10-Setting Lincoln Equipment Audio: This example will demonstrate using the Lincoln equipment. If you want to search for pulse welding process, cursor down on to line 3 as shown here. Press Function 4 labeled YES, then cursor down to line 4 for wire type, then press F4 labeled CHOICE and the following choices will appear. We will select STEEL. Now that we have set the criteria for SEARCH parameters for lines 2-4, press F3 labeled SEARCH and the following screen will appear. The choices displayed show the wire diameter and process that can be selected for use. Cursor down will provide more choices. This example, we will selected process 19 using the Function 2 labeled SELECT. 104 Modifying a Program MATELRNAT0511CE REV. A The final screen appears filling in line 1 with the specific process selected for use. Modifying a Program 105 MATELRNAT0511CE REV. A 4.10 Slide 11-Arc Defaults Instruction Demo Audio: A list of default motion instructions is provided for ease of programming. These contain the motion type, speed and other items to create the program. These defaults may be changed as needed. When setting your default motion statements, be sure that the shift key is not depressed when you press F1 . Notice the F1 is labeled ED_DEF which means EDIT DEFAULTS. When you press F1 again, all the default motion statements will be displayed for editing. 106 Modifying a Program MATELRNAT0511CE REV. A This example we will change the motion type to Circular. When finished, press F5 labeled DONE. After you have defined the default instructions you can add them to the program. You select one of the available default instructions to be the current default instruction by moving the cursor to that instruction. You can define and change default instructions any time while you write or modify a program. If the F1 key is pressed without the shift key depressed, the default motion statement will be displayed and will highlight the last edited line. So, when recording points, while using the SHIFT F1 key, the highlighted motion statement will be inserted. FCTN 2 through FCTN 4 keys provide ArcTool Default motion instructions that also can be displayed and modified as shown here. To teach the default motion instruction that was selected, hold the SHIFT then press F1 and the Circular instruction will be inserted. In this example, this is not the default motion statement desired. We will delete this instruction. We are going to change the default motion selection We will highlight the desired default motion statement and press enter. This will do two things, it will insert it into the program, plus it will become the selected motion statement for further use. Modifying a Program 107 MATELRNAT0511CE REV. A 4.11 Slide 12-Arc Programming Audio: This demonstration is showing is how to program using the default motion statements keys we had shown previously. Welding will not occur unless the weld enable output is turned on. Hold the Shift while depressing the weld enable key. Note the LED light is turned on, displaying weld enable. CAUTION, when this light is lit and the program runs, welding will occur when an arc start command is encountered. The robot default speed must be set to 100% for welding to occur even with the weld enable turned on. As you watch this simulation program run, note that at each corner the weld speed commands are utilizing the travel speed specified in the weld schedule. Additionally, notice how the robot does not slow down at each corner of the box because of the continuous 100 termination type. 108 Modifying a Program MATELRNAT0511CE REV. A 4.12 Slide 13-Weld Enabled Key Audio: The previous demonstration showed enabling the weld using the Weld Enable key while holding the SHIFT key and the Weld enable LED light displayed. When you press the Weld Enable key WITHOUT the shift key, the following screen will display allowing you to TOGGLE weld enable output from TRUE TO FALSE using the F5 key. CAUTION once the weld enable output has been set to true, any time an arc start command is seen in the program, welding will begin. 109 Modifying a Program MATELRNAT0511CE REV. A 4.13 Slide 14-Arc Start ArcTool Information Arc Start Arc Arc Arc Arc Arc Start Start Start Start Start [ i [v, [v, [a, [a] ] wfs] a] wfs] Arc Start [..., ...] [v, wfs] v: voltage, in Volts wfs: wire feed speed, in mm/sec, cm/min, or IPM (inches per minute) MIG with wire feed speed control [v, a] v: voltage, in Volts a: amperage, in Amps MIG with “Weld Power Control” = CURRENT on the SETUP Weld Equip screen [a, wfs] a: amperage, in Amps wfs: wire feed speed, in mm/sec, cm/min, or IPM (inches per minute) TIG with the wire feed speed control option Audio: Starting with Arc Start Instruction Arc start instructions tell the robot to begin the arc weld. The Arc Start [integer] instruction initiates arc welding using the specified weld schedule which will be discussed later. The Arc Start with bracketed values instruction initiates arc welding using the voltage, wire feed speed, and amperage specified in the instruction. The format of the instruction depends on the kind of welding (MIG or TIG) and the weld equipment setup selected. 110 Modifying a Program MATELRNAT0511CE REV. A 4.14 Slide 15-Arc End Audio: Arc End instructions tell the robot to end the arc weld. There are two types of arc end instructions: The Arc End with an integer will stops arc welding using the specified weld schedule number which will be discussed later. OR you could use Arc End and within the brackets, enter in a voltage or amperage, wire feed speed, and delay time to stops arc welding. Again, the format of the instruction depends on the kind of welding and the weld equipment setup. Modifying a Program 111 MATELRNAT0511CE REV. A 4.15 Slide 19-Arc Weld Schedule Audio: Arc welding uses weld schedules to control welding conditions. A schedule defines the information that determines how the welding will be performed. You can access weld schedules from the DATA menu, which is shown here. Note the two columns of inches per minute. The Weld Schedule DETAIL screen will provide further detail when you press F2. The information displayed on this screen will vary depending on your arc welding system setup. The first inches per minutes column is wire feed and the next is travel speed. 112 Modifying a Program MATELRNAT0511CE REV. A Line item 5 labeled Delay Time is the amount of time to delay for craterfill during Arc End. The next slide will provide an example. Modifying a Program 113 MATELRNAT0511CE REV. A 4.16 Slide 20-Delay Time Audio: The craterfill picture shown below displays insufficient filler material at the end of a weld. By entering in a delay time, the forward motion of the robot stops, but the arc remains established and the wire continues to be fed using the specified time enter here. 114 Modifying a Program MATELRNAT0511CE REV. A 4.17 Slide 21-Arc Start Schedule demo Audio: This demonstration is showing how to insert an Arc Start instruction and what weld schedule to use. As you view the program, notice line 1 is using user frame 1 as the active user frame. Note that the travel speed of the robot in line 10 is traveling at 30 millimeter per second. This will override the schedule 1’s travel speed of 20 inches per minute. Modifying a Program 115 MATELRNAT0511CE REV. A To use the schedule’s travel speed, cursor over to 30mm/sec within line 10 of the program. Press F3 labeled WELD. The newly inserted Weld Speed instructions indicates to use the speed that is in schedule 1 for the robot travel speed as the Arc Start in line 9 is calling schedule 1. Now that we have added the Arc Start instruction, we need to include an Arc End instruction at the proper point in the program. In this example we will insert the Arc End instruction on line 15. Press F1 for instructions and select Arc. Cursor down to Arc End and press ENTER . Select Schedule 1 and ENTER . If the delay time required to end the weld is in schedule 2, then you can select that at the arc end statement, meaning that you do not need to use the same schedule that started the welding to end the welding. 116 Modifying a Program MATELRNAT0511CE REV. A 4.18 Slide 23-Weave Instructions ArcTool Information Weave Instructions • Weave – Sine – Figure Eight – Circle – Weave L – Weave End Audio: Weave instructions tell the robot to use a weave pattern to arc weld. Weaving is an oscillation of the welding torch in a particular pattern. There are basically 5 weave instructions, 4 of which designate the pattern of the weave and the 5th will end weaving. The weave instructions is entered on program line of its own. In other words, it cannot be an option to an existing program instruction. The weave is similar to the weld process in that you need to setup the weave and specify a weave schedule. Modifying a Program 117 MATELRNAT0511CE REV. A 4.19 Slide 24-Arc Weave Setup Audio: Weave Setup allows you to adjust the parameters that control weaving. For most applications, the default settings should be fine and there is no reason to change them. The Weave is accessed from the Setup menu then select Weave Each line item listed will affect the weave pattern. For explanation of each item, refer to the ArcTool manual that came with your robot. 118 Modifying a Program MATELRNAT0511CE REV. A 4.20 Slide 25-Weave Schedule Audio: When applying weave instruction in a program, you select a weave schedule. To view the weave schedule and the detail information, press the DATA key, then select F1 TYPE to select Weave Schedule Modifying a Program 119 MATELRNAT0511CE REV. A And the following will appear. Select F2 labeled DETAIL. Item one specifies the weave frequency in cycles per second. The valid range of frequency is from 0.1 to 10 Hertz for conventional 6-Axis weaving, and 0.1 to 30 Hertz for Wrist Axis Weaving. The actual frequency that will be achieved depends on several factors including 120 Modifying a Program MATELRNAT0511CE REV. A weave amplitude and dwell time. This parameter is not an absolute value for weave frequency. It is a reference value where higher numbers result in faster weaving. Line item 2 labeled Amplitude is the distance from the centerline of the weave pattern to each peak. The valid range of amplitude is from .1 to 25.0 millimeters. Line item 3 labeled Right Dwell is the amount of time the robot delays at the right side of the weld. The valid range of right dwell is from 0.0 to 32 seconds. Line item 4 labeled Left Dwell is the amount of time the robot pauses at the left side of the weld. The valid range of left dwell is from 0.0 to 32 seconds. Lines 3 & 4 does not affect circle or figure 8 patterns as there is not delay these patterns. Modifying a Program 121 MATELRNAT0511CE REV. A 4.21 Slide 26-Weave Instruction Program Audio: This slide is demonstrating how insert a Weave instructions into an existing program. As mentioned previously, the Weave must be on its own program line and must follow the Arc Start Instructions. Here are all the weave pattern choices. We will select Circle for this demonstration. We will select weave schedule 1. Once again, we will insert another line for the Weave End instruction 122 Modifying a Program MATELRNAT0511CE REV. A 4.22 Slide 28-Path Jogging Audio: Now that we have shown how to create an ArcTool program, you can jog the robot using the PATH jog coordinate system that will correspond to the current path of the paused Arctool program. The PATH coordinate can only be used while a program is paused and while executing a linear or circular motion instruction. When you jog the robot using the PATH coordinate system, the robot will move in the frame created by the currently paused motion instruction. In PATH jogging, the +x jog key moves the Tool Center Point along the path. The +y jog key moves the TCP across the path and the +z jog key moves the Tool Center Point along the direction of the tool frame or stick out. You cannot use the PATH jog coordinate system any other time. Modifying a Program 123 MATELRNAT0511CE REV. A 4.23 Slide 29-TorchMate ArcTool Information TorchMate Audio: Now we will discuss Torchmate 3 option. Torchmate 3 works with controller version 6???? (JOE – PLEASE LET ME KNOW) And above The TorchMate option provides an easy-to-use solution for automatically adjust the Tool Center Point (TCP) on single motion group systems, or for systems that incorporate the MultiARM feature (two or more robots controlled by a single controller). TorchMate automatically compensates for bent torch barrels and worn contact tips to reduce weld defects and increase system productivity. TorchMate compensates for variation of the TCP in x and y, or in x, y, and z directions. A voltage is applied to the welding wire and an input is received when the wire contacts the TorchMate touch block. TorchMate does not compensate for variation in orientation Multi-equipment for single robot cases is supported by teaching another Utool on the same robot group and assigning the equipment number in the TorchMate SETUP DATA screen. When you use TorchMate, you start with a system that is fully functional and has a properly defined Tool Center Point. Then you set up TorchMate and perform TorchMate mastering of the TCP for each robot. Since TorchMate provides an executable program for each robot group (up to four robots), it can be called either automatically (for example, every 50 production parts), or manually, whenever desired. 124 Modifying a Program MATELRNAT0511CE REV. A 4.24 Slide 30-TorchMate Video ArcTool Information Torchmate Video Audio: As you view this video, the first pass shows the normal weld path with the correct Tool center point. The next pass will show the tcp has been altered possibly due to a torch collision. The tcp for the torch needs to be re-adjusted. The torchmate adjust program will be called to correct the TCP. This is done by sensing two sides of the torchmate block plate. The information gathered from the sensing will be loaded into a position register which applies an offset to correct the TCP. Notice the next pass is showing the corrected TCP. Modifying a Program 125 MATELRNAT0511CE REV. A 4.25 Slide 31-Installing & Aligning the Touch Block ArcTool Information Installing & Aligning the Touch Block Audio: When installing and aligning the touch block, allow space within the work envelope for a 250 mm "edge search" along the robot world frame x and y directions, and within the robot workcell. If you are using automatic TorchMate adjustment, place the block in a location which minimizes motion from the last weld position used. Similarly, if you are using automatic torch cleaner equipment, locate the block close to that equipment prior to using TorchMate adjustment. Make sure the torch mate block share the same ground potential as the welder, otherwise the search routine will not work. Allow a minimum of 3” of clear space under the cut out to prevent false detections from the mounting plate surface. Mount the plate such that the notch is in the robots world frame negative X and Y quadrant as shown here. You need to teach a TorchMate reference position for each tool frame that you want to adjust with TorchMate. You must move the robot to the reference position so that the torch is parallel to the z-axis of the WORLD frame, with the torch pointing in the -z direction and the tip of the wire touching the tip of the touch block pointer. 126 Modifying a Program MATELRNAT0511CE REV. A 4.26 Slide 32-Setup TorchMate Audio: Once you are in the Setup screen, there are some key items to focus on they are: Tool number, Group number, Weld equipment number, Input signal, Output signal, Search speed, Wire advance time, Wire retract time. Equipment numbers are correct and the input signal is defined. Tool Number = The tool defined for the torch you are using Group number = The group you are using in the event of a multi group configuration Weld equipment = The weld equipment define to the group you are using Input signal = is the missing input definition in the weld input screen as shown here with the missing value of 3. This is your touch sensing Input value to be used in the Search settings Output signal = is again the missing output definition in the weld output screen when you select the Output screen as just discussed with in the input signal Search Speed = The speed the robot will search with. Be cautious when setting this speed aggressive search speed will bend the wire and result in poor recordings. Wire advance time = Set the time long enough to feed fresh wire a minimum the length of the taught TCP Modifying a Program 127 MATELRNAT0511CE REV. A Wire retract time = Set this time to retract the wire upon touch completion 2mm the length of the taught TCP. The retract value shown here is slightly longer than the feed time. All other values not discussed can be left at default settings. With robot perpendicular and over the torch mate pointer teach the reference position. Press and hold the shift and F4 key to record this position. The reference position under the setup screen will change to RECORDED. With the reference position taught the TCP can now be mastered. Set the Jog Overide to 100% and Press and hold the SHIFT key and press F2 , labeled MASTER. The robot will Move and establish a master reference positions. Upon completion the robot will move the TCP back to the reference position. The mastering status will change to done. Failure to reference at 100% will result in inaccurate corrections later on. 128 Modifying a Program MATELRNAT0511CE REV. A 4.27 Slide 33-Execute TM_ADJST Macro ArcTool Information Execute TM_ADJST Macro • Select the TM_ADJST Macro when the Tool Center Point needs to be adjusted – Select the program from the SELECT menu OR – Use a call statement within your program Audio: Use the macro named TM_ADJST to update the TCP once mastering has been established. You will need to execute the TM-ADJST Macro when the following situations occur: - Before teaching points or touching up program positions - After a crash a crash not matter how minor - Between maintenance routines to correct wearing of the contact tips - Whenever a welding torch is switched or replaced Failure to consistently use and execute the TM-ADJST macro to maintain a good TCP will result in poor performance 129 Modifying a Program MATELRNAT0511CE REV. A 4.28 Slide 34-View the TCP Offsets ArcTool Information View the TCP Offsets DATA TorchMate Date DATA F1 [TYPE] TorchMate Time E1 G1 G T X Y Z 1 20-APR 10:49 1 1 Mastered X Y 2 19-APR 13:59 2 1 .45 4.64 0.00 3 19-APR 13:59 1 1 .45 .09 0.00 4 19-APR 13:59 2 1 .45 4.64 0.00 5 19-APR 13:58 1 1 .09 -.61 0.00 6 19-APR 13:58 2 1 .81 4.64 0.00 7 19-APR 13:57 1 1 .45 .09 0.00 8 19-APR 13:57 2 1 .71 4.64 0.00 9 19-APR 13:57 1 1 -.61 0.00 0.00 Audio: To view the TorchMate history press the DATA key, then press F1 for TYPE and select TORCHMATE. Every time the TM_AJST macro runs, it captures the difference between the mastered position and the current TCP, it is not an accumulated value between every touch. The reordered difference is what is used to correct the running TCP. For record keeping purposes the execution history is time and date stamped. 130 Modifying a Program MATELRNAT0511CE REV. A 4.29 Slide 35-Course Overview ArcTool Information Course Overview • • • • ArcTool Program Guideline Weld I/O Setup and Select Weld Equipment ArcTool Instructions • Arc Weld Schedule • • Weld Enable Weave Patterns – ArcTool Default Instructions – Delay Time – Weave Instructions – Weave Schedule • Torchmate Begin taking quiz Audio: This wraps up this module. You learned the ArcTool Program rules to follow such as Using fine termination for weld start and weld end. And use linear or circular motion type and CNT 100 termination type in motion instructions during arc welding (weld points). How to setup up the Weld Input/Outputs We discussed setting up the Weld Equipment that will differ from equipment to equipment You learned how to set ArcTool default instruction to make programming easier How to use Arc weld schedule and define the delay time How the weld is in enabled Then we covered Weave Pattern instructions and schedule Finally we wrapped up with setting up Torchmate. The next several slides will provide you an opportunity to test your knowledge of the material presented in the module. 5 Modifying a Program 131 System R-J3, R-J3iB & R-30iA 5 MODIFYING A PROGRAM Modifying Programs – Edit Command Menu Modifying Programs Using the Edit Command Menu 132 Modifying a Program MATELRNAT0511CE REV. A 5.1 Slide 2-Modifying Programs Modifying Programs – Edit Command Menu Modifying Programs • • • • • • • • Inserting blank lines into a Program. Deleting lines from a Program Copying and Pasting lines within a Program Finding program instructions within a Program Replacing Items Renumbering Positional ID’s Turning ON and OFF Comments And the UNDO function Audio: In this Module we will discuss how to Modify programs. We will cover the following topics: • Inserting blank lines into a Program. • Deleting lines from a Program • Copying and Pasting lines within a Program • Finding program instructions within a Program • Replacing Items • Renumbering Positional ID’s • Turning ON and OFF Comments • And the UNDO function 133 Modifying a Program MATELRNAT0511CE REV. A 5.2 Slide 3-INSERT Modifying Programs – Edit Command Menu Modifying Programs - INSERT Audio: To Modify a program, bring the program up on the Full Edit Screen all the items covered in this Module are found in the Edit Command Key function 5. The first option is to Insert Blank lines. Select the INSERT option you will be prompted “How Many Lines to Insert”? Enter the number of lines to be inserted then press the ENTER key. The blank lines will be inserted above the current location of the cursor. 134 Modifying a Program MATELRNAT0511CE REV. A 5.3 Slide 4-DELETE Audio: The second option under the Edit Command Key is Delete. Once you have selected the Delete option you can move the cursor to select multiple lines to delete. When you have selected the lines, confirm deleting those Lines with the F4 labeled YES. The UNDO function is detailed later Modifying a Program 135 MATELRNAT0511CE REV. A 5.4 Slide 5-COPY Audio: The COPY function allows you to copy a single or a group of instructions. Press F5 labeled EDCMD which will display the Edit Command Popup menu and select COPY. Next you need to select F1 labeled COPY. Then cursor up or down to select the lines that you want to copy and press the F1 again to actually COPY to those into memory 136 Modifying a Program MATELRNAT0511CE REV. A 5.5 Slide 6-PASTE Audio: When the lines of instructions have been copied which was shown from the previous slide , the PASTE function allows you to paste a single or a group of instructions. Select F5 labeled PASTE, then select the method in which you would like to paste the copied lines. The lines can be pasted in normal or reversed order in a variety of ways. Modifying a Program 137 MATELRNAT0511CE REV. A 5.6 Slide 7-PASTE-F2 Logic Modifying Programs – Edit Command Menu PASTE – F2 LOGIC SAMPLE PROGRAM PASTED PROGRAM (F2) LOGIC - adds the lines exactly as they were copied, does not record positions, but leaves the position numbers blank. Audio: Paste using LOGIC command will add the lines exactly as they were copied, at the cursor position. This does not record positions, but leaves the position numbers blank as shown here with the dots. In this example the cursor was below line 6, CALL HOME and created lines 7 through 12. 138 Modifying a Program MATELRNAT0511CE REV. A 5.7 Slide 8-9 PASTE – F3 POS-ID Modifying Programs – Edit Command Menu PASTE – F3 POS-ID Modifying Programs – Edit Command Menu PASTE – F3 POS-ID SAMPLE PROGRAM PASTED PROGRAM (F3) POS-ID - adds the lines exactly as they were copied, and retains the current position numbers. Audio: (F3) POS-Identification – Will add lines exactly as they were copied, at the cursor position and retain the current position numbers. In this example the cursor was below the CALL HOME of line 6. 139 Modifying a Program MATELRNAT0511CE REV. A 5.8 Slide 10-11 PASTE – F4 POSITION Modifying Programs – Edit Command Menu PASTE – F4 POSITION Modifying Programs – Edit Command Menu PASTE – F4 POSITION SAMPLE PROGRAM PASTED PROGRAM (F4) POSITION - adds the lines exactly as they were copied, and renumbers the copied positions with the next available position numbers. All positional data is transferred. Audio: (F4) POSITION – Will add lines exactly as they were copied and renumbers the copied positions with the next available position number at the cursor position. All positional data is transferred. In this example Position 1 is the same as position 5. Position 2 is the same as position 6 and so on. 140 Modifying a Program MATELRNAT0511CE REV. A 5.9 Slide 12-REVERSE PASTE Modifying Programs – Edit Command Menu Modifying Programs – REVERSE PASTE Audio: By selecting the NEXT key you can reverse paste the lines that were copied. Modifying a Program MATELRNAT0511CE REV. A 5.10 Slide 13-PASTE - F1 R-LOGIC Modifying Programs – Edit Command Menu PASTE – F1 R-LOGIC Audio: When using function 1 labeled R-LOGIC – R for Reverse 141 142 Modifying a Program MATELRNAT0511CE REV. A 5.11 Slide 14-PASTE – F1 R-LOGIC Audio: (NEXT+F1) R-LOGIC – Will add lines in reverse order, at the cursor position and will not record the positions, but leaves the position numbers blank. In this example the cursor was below the CALL HOME of line 6. Modifying a Program MATELRNAT0511CE REV. A 5.12 Slide 15-PASTE – F2 R-POS-ID Modifying Programs – Edit Command Menu PASTE – F2 R-POS-ID Audio: When using function 2 - Reverse-Position-Identification 143 144 Modifying a Program MATELRNAT0511CE REV. A 5.13 Slide 16-PASTE – F2 R POS-ID Audio: (NEXT+F2) R-POS-ID – Will add lines in reverse order and retains their original position numbers. In this example the cursor was below the CALL HOME of line 6. As you can see the numeric values are in reverse sequence order. Modifying a Program MATELRNAT0511CE REV. A 5.14 Slide 17-PASTE – F4 R-POS Modifying Programs – Edit Command Menu PASTE – F4 R-POS Audio: When using function 4 – R-POS – Reversed Position 145 146 Modifying a Program MATELRNAT0511CE REV. A 5.15 Slide 18-PASTE – F4 R-POS Audio: (NEXT+F4) R-POS – Will add lines in reverse order at the cursor position and renumbers the copied positions with the next available position numbers. In this example the cursor was below the CALL HOME of line 6. The last position was P[4], so when pasting it would generate the next positions starting with 5 through 8 in reverse order. Modifying a Program MATELRNAT0511CE REV. A 5.16 Slide 19-PASTE – F3 RM-POS-ID Modifying Programs – Edit Command Menu PASTE – F3 RM-POS-ID Audio: When using Function 3– Reversed Motion, Position, and Identification. Note: some Teach Pendants will display the remainder label name of ID on to F4 as shown here. 147 148 Modifying a Program MATELRNAT0511CE REV. A 5.17 Slide 20-PASTE – F3 RM-POS-ID (NEXT+F3) RM-POS-ID –Reverse Position Motion ID paste all instructions except motion instructions in reverse order. Motion instructions are created using the current (first) and next (second) motion instruction. Original position numbers are retained. Speed and termination types are pasted in the proper instructions to maintain the original speed and termination of each path segment You might use Reversed Motion Position & ID to retrace a complex path such as withdrawing the robot from a location with tight clearances. As you watch the path of the sample program the robot will move from Position 1 to position 2 at a fast 500mm per second. Then from P2 to P3 it will run at 50% of maximum speed, then from P3 to P4 at 10 mm per second. The reverse of this path must maintain the same speed and termination type. When using Function 3 Reverse Motion Position & ID, the robot will retrace the sample program steps. From position 4 to position 3 traveling at 10 mm per second, then from P3 to P2 it will run at 50% of maximum speed, then from P2 to P1 it will run 500 mm per second. Modifying a Program MATELRNAT0511CE REV. A 5.18 Slide 21-PASTE – F5 RM-POS Modifying Programs – Edit Command Menu PASTE – F5 RM-POS Audio: F5 – RM-POS – Reversed Motion and Position 149 150 Modifying a Program MATELRNAT0511CE REV. A 5.19 Slide 22-PASTE – F5 RM-POS Audio: (NEXT+F5) RM-POS – This is exactly like the RM-POS-ID that was just shown in the previous slide, except that new Position numbers are assigned in the pasted lines. So example shown here, the next position will become P[5] in reverse order. P8 is the same position as P4, and P7 is the same as P3 etc. Modifying a Program MATELRNAT0511CE REV. A 5.20 Slide 23-FIND Modifying Programs – Edit Command Menu Modifying Programs - FIND Audio: The FIND function under the Edit Command Key allows us to search a Program for specific Program Instructions. The FIND function will search the Program from the cursor down. 151 152 Modifying a Program MATELRNAT0511CE REV. A 5.21 Slide 24-REPLACE Audio: The REPLACE option will help you to Modify Registers, Modify Motion Speed and Termination, Inputs and Outputs, Jump Labels, Calls and Time Before and Time After. Under the Motion Modify option you can Replace Speed and Termination, and also Insert or Remove Options. Modifying a Program MATELRNAT0511CE REV. A 5.22 Slide 25-RENUMBERING Audio: The RENUMBER function reassigns all position numbers in the program so that they are in sequential order. Notice that Line 5 Position ID #7 Changes to Position ID #4 but the AT symbol indicating that the Robot is at that Position stays constant. This verifies that RENUMBERING only changes the POSITION ID NOT THE POSITIONAL INFORMATION. 153 154 Modifying a Program MATELRNAT0511CE REV. A 5.23 Slide 26-COMMENT Modifying Programs – Edit Command Menu Modifying Programs - COMMENT Audio: The COMMENT function is a simple Toggle ON and OFF of comments in your Program. This function works on the following types of COMMENTS: • I/O Instructions • Register Instructions • Position Register Instructions • And Position Register Element Instructions. Modifying a Program 155 MATELRNAT0511CE REV. A 5.24 Slide 27-UNDO Audio: The UNDO function will allow you to undo the LAST Edit only. In this example we will UNDO a Touched Up position. Note the AT Symbol that Designates the robot is currently at that position. Once you have used the UNDO function you can go back in and REDO the last edit. Or in this case reapply your Touched Up Point. 156 Modifying a Program MATELRNAT0511CE REV. A 5.25 Slide 28-You Try It Audio: This is your opportunity to recall the steps needed to copy and paste the program lines and position numbers shown here. Modifying a Program 157 MATELRNAT0511CE REV. A 5.26 Slide 29-Module Review Modifying Programs – Edit Command Menu Module Review • • • Inserting blank lines into a Program. Deleting lines from a Program Copying and Pasting lines within a Program – F2 – LOGIC will add the lines exactly as they were copied – F3 POS-ID will add lines exactly as they were copied and retains the current position numbers – F4 POSITION - Will add lines exactly as they were copied and renumbers the copied positions with the next available position number – F1 R-LOGIC - Will add lines in reverse order, at the cursor position and does not record the positions, but leaves the position numbers blank – F2 R-POS-ID - Will add lines in reverse order and retains their original position numbers – F3 RM-POS-ID - Reverse Motion ID paste all instructions except motion instructions in reverse order. – F4 R-POS - Will add lines in reverse order at the cursor position and renumbers the copied positions with the next available position numbers – F5 – RM-POS - This is exactly like the RM-POS-ID except that new Position numbers are assigned in the pasted lines. Take Test Audio: This wraps up Modifying programs module. We learned in how to insert blank lines and how to delete program lines. We then copied program lines and then Pasted lines using different function keys, depending upon what you were trying to achieve. F2 – LOGIC will add the lines exactly as they were copied F3 POS-ID will add lines exactly as they were copied and retain the current position numbers F4 POSITION - Will add lines exactly as they were copied and renumbers the copied positions with the next available position number When you press the NEXT key you will find all reverse paste choices F1 R-LOGIC - Will add lines in reverse order, at the cursor position and does not record the positions, but leaves the position numbers blank F2 R-POS-ID - Will add lines in reverse order and retains their original position numbers F3 RM-POS-ID - Reverse Motion ID paste all instructions except motion instructions in reverse order. F4 R-POS - Will add lines in reverse order at the cursor position and renumbers the copied positions with the next available position numbers 158 Modifying a Program MATELRNAT0511CE REV. A F5 – RM-POS - This is exactly like the RM-POS-ID except that new Position numbers are assigned in the pasted lines. In the next few slides you will have the opportunity to test your knowledge. Click on this icon when you are ready. 6 Macro Commands 159 System R-J3, R-J3iB & R-30iA 6 MACRO COMMANDS Macro Commands Macro Commands Audio: Welcome to the Macro Commands Module 160 Macro Commands MATELRNAT0511CE REV. A 6.1 Slide 2-Module Content Macro Commands Module Content • Overview of Macros • Setting Up Macro Commands • Assigning a Macro to a Teach Pendant User Key, Manual Functions or Operator Panel Buttons Audio: In this module, you will learn how to define and setup macro commands, and then assign a macro to either a Teach Pendant User key, to the Manual functions menu or to the Operator Panel. Macro Commands 161 MATELRNAT0511CE REV. A 6.2 Slide 3-Overview of Macros Macro Commands Overview of Macros • • • A macro is any program that is assigned the subtype Macro Can contain motion and non motion instructions To use a Macro – – • The macro command program must be written Macro command must be defined Runs under one of the following conditions: – – – – Teach Pendant user key is pressed Selected from MANUAL FCTNS menu I/O signal Standard Operator panel input (USER1, USER2) Standard Operator Panel (SOP) R-J3iB Audio: A Macro allows you to execute a program by just pressing one key or selecting from a menu. Macro commands must be set up before they can be used. Macros can contain motion and non motion instructions. First the Macro command program must be written, then it must be defined. You can set them to run from a Teach Pendant user key, from the MANUAL FUNCTIONS menu, from an Input signal or from the Standard Operator panel buttons labeled USER1 or USER2. R-30iA controller does not provide the ability to assign macros to any buttons on the Standard Operator panel. 162 Macro Commands MATELRNAT0511CE REV. A 6.3 Slide 4-Teach Pendant User Keys Macro Commands Teach Pendant User Keys UK=User Key SU=SHIFT+User Key1 ÏÏÏ UK[1] and ÏÏÏ SU[1] ÏÏÏ ÏÏÏ UK[2] and ÏÏÏ SU[2] ÏÏÏ ÏÏÏ ÏÏÏ UK[3] and ÏÏÏ ÏÏÏ SU[3] ÏÏÏ and ÏÏÏ UK[4] ÏÏÏ SU[4] ÏÏÏÏ ÏÏÏÏ ÏÏÏ ÏÏÏÏ ÏÏÏÏ ÏÏÏÏ ÏÏÏÏÏÏÏ ÏÏÏ ÏÏÏÏ UK[7]ÏÏÏÏ UK[6] ÏÏÏ UK[5] TOOL 1 TOOL 2 MOVE MENU SETUP POS I/O STATUS and and and SU[7] SU[6] SU[5] Audio: As mentioned from the previous slide You can set a macro to run from a Teach Pendant user key alone or with the SHIFT key. When you set up macro commands, you can define up to seven macros to run when the user key is pressed alone or with the SHIFT key. If you desire user keys 1 through 7 to be pressed without the shift key then the macro program cannot contain any motion instructions to move the robot, and no groups are defined within the group mask in the program header information. For example, if you have a macro program that moves the robot to a specific position and you desire Tool1 key to be the executing macro, then this macro must be assigned to the SHIFT plus User key 1. 163 Macro Commands MATELRNAT0511CE REV. A 6.4 Slide 5-Macro Command Assignments Macro Commands Macro Command Assignments User Key on Teach Pendant without SHIFT (UK) UK [1] UK [2] UK [3] UK [4] UK [5] UK [6] UK [7] User Key on Teach Pendant with SHIFT (SU) SU [1] SU [2] SU [3] SU [4] SU [5] SU [6] SU [7] MANUAL FCTNS Screen Item (MF) Input Signals (DI, RI, UI) Digital inputs DI[0] - DI[99] MF [1] - MF [99] Robot inputs RI[0] - RI[n] UOP inputs UI[0] - UI[n] n: number of signals configured in your system Audio: Use this table to help you know what Key Assignments are available. You can display up to 99 macros within the Manual Functions screen 164 Macro Commands MATELRNAT0511CE REV. A 6.5 Slide 6-Operator Panel Buttons Macro Commands Operator Panel Buttons Standard Operator Panel (SOP) R-J3iB USER1 SP [4] USER2 SP [5] Audio: When you can setup a macro command program to run when a button on the operator panel is pressed, you must assign the button, USER 1 to SP[4] and USER2 to SP[5] Macro Commands 165 MATELRNAT0511CE REV. A 6.6 Slide 7-Manual Functions Macros Audio: You can set up a macro command program from the Setup Macro Command Screen to be executed from the MANUAL Functions menu. After you set up a macro command to run from this screen, you can then select a manual functions menu item and press the SHIFT key and the EXEC function key to execute the macro command. The next slide will provide detail instructions to setup Macros. 166 Macro Commands MATELRNAT0511CE REV. A 6.7 Slide 8-Setting up Macro Commands Audio: This video will demonstrate all the necessary steps to take an existing Teach Pendant Program and change it to be a Macro, then setup the macro to run from the Manual functions menu. 1 First, determine if the program sub type is a macro within the program header information. Press the Select key to bring up all the programs 2 From the Next screen press the F2 key labeled DETAIL to display the program header information 3 If the program sub type has not been change to a Macro, then press F4 key label CHOICE to change it 4 As mentioned earlier, if you desire user keys 1 through 7 to be pressed without the shift key then the macro program cannot contain any motion instructions that will move the robot, and no groups are defined within the group mask. This Macro will move the robot and it has a 1 in the group mask, so we will assign it to the Manual Functions menu. 5 The next step is to assign this macro to the manual functions screen. To do this, select MENU then setup. 6 Press F1 labeled TYPE to select Macro 7 If you would like to add a new Macro, then arrow down to the next open spot and press ENTER. Macro Commands 167 MATELRNAT0511CE REV. A 8 Select Words, Uppercase or lowercase to create a descriptive instruction name for the macro. 9 This demonstration will use a description that is already created. 10 Arrow right to assign the macro to this descriptive instruction name 11 Press the F4 KEY labeled CHOICE, to select the macro program 12 At any time you need to Remove or Clear the Instruction name, Program or the Assignment, simply move the cursor and press the F2 key labeled CLEAR. 13 Currently, the macro is assigned to the Manual functions menu, but if you want to assign the macro to the Operator Panel or Teach Pendant User keys or an Input signal, press the F4 key label CHOICE to change.. 14 Be sure to assign a number for this macro. If you are assigning User Keys, then refer back to the slide named “Teach Pendant User Keys” to know what number to assign for a specific key. Now that the Macro has been setup and defined, you execute the macro from the manual function screen. Press MENU and select MANUAL FUNCTIONS 15 Notice the Instruction name “open hand 1”is used as there isn’t a note saying NOT ASSIGNED. To execute, turn on the teach pendant, then press and hold the SHIFT key and then press F3 key labeled EXECUTE. This concludes the demonstration of setting up macro commands. Press the next slide icon at the button of the window to continue the course. 168 Macro Commands MATELRNAT0511CE REV. A 6.8 Slide 9-You Try It Audio: This is where you recall the steps needed to take an existing Teach Pendant Program and change it to be a macro and setup the macro to run from the Manual Functions menu. Macro Commands 169 MATELRNAT0511CE REV. A 6.9 Slide 10-Macro Review Macro Commands Macro Review • Teach Pendant User Keys: – UK[1] – UK[7] cannot contain any motion instructions in the macro – SU[1] – SU[7] can contain motion instructions • Standard Operator Panel – Can only use SP[4] for USER1 and SP[5] for USER2 • MANUAL FUNCTIONS menu – MF[1] – MF[7] Click here to begin the Quiz Audio: In review, the teach pendant user key uses UK1 through UK7 which cannot contain any motion instructions whereas user keys SU1 through SU7 can contain motion instructions The standard operator panel can only use SP4 for USER1 and SP5 for USER2. The manual functions menu uses MF1 through MF7. This concludes the Macro Module. The next four slides will provide you the opportunity to test your knowledge and comprehension. 170 Macro Commands MATELRNAT0511CE REV. A 7 Production Setup 171 System R-J3, R-J3iB & R-30iA 7 PRODUCTION SETUP Robot Setup for Production Operation Production Setup Audio: Welcome to the training on Production Setup and Operations. 172 Production Setup MATELRNAT0511CE REV. A 7.1 Slide 2-Agenda Robot Setup for Production Operation Agenda • Production Setup & Operation – System Configuration – Setup - Program Select Choices – Cell I/O Input Settings • Video – General operation of the “Prog Select” menu – Cell I/O • Quiz Audio: In this course you will learn how setup a robot for production using the teach pendant. Cover various production modes, system and Cell I/O configurations. A video to reinforce the step by step process needed to configure the settings. At the end of the course, there is a quiz to reinforcement comprehension and knowledge. 173 Production Setup MATELRNAT0511CE REV. A 7.2 Slide 3-Remote/Local Mode Robot Setup for Production Operation Remote/Local Mode • Local Mode is designed for application development and testing. • Remote Mode is used when running to Memory Card Slot production. SYSTEM Clock JOINT 100 % LINE 0 AUTO ABORTED 1Clock Remote Display System/Config JOINT 100 % 100 % 2UTILITIES Local Hints JOINT External I/O is used to assign a switch • 39/41 HandlingTool (N. A.) MENUS 3 External I/O 33 Signal to set in T2 mode DO[ 0] select either Remote or Local mode 1 SELECT 4 OP DATE panel key 05/12/21 34 Signal to set if E-STOP DO[ 0] V6.4060 2 EDIT System/Config 35 Set3 if INPUT SIMULATED DO[ 0] TIMEDATA 08:18:22 136Clock Sim. Input2005, Wait All Delay: 0.00 sec EMERGENCY STOP STOP EMERGENCY Copyright RightsSYSTEM Reserved 4 STATUS 36 Sim. Input Wait Delay: 0.00 secR-J3 FANUC 237Variables FANUC SYSTEM R-J3iB Set if Sim. Skip Enabled DO[ 0] FANUC FANUC Robotics POSITION BATTERY 37 Set5LTD, if Sim. Skip EnabledAmerica, DO[ Inc. 0] CYCLEFAULT FAULT 338 Master/Cal FAULT REMOTECYCLE Hand broken : USER1 <*GROUPS*> USER2 ALARM FAULT REMOTE/LOCAL HOLD USER1 USER2 Licensed Software: Your use constitutes ON-OFF 6 SYSTEM START RESET RESET START 38OTHand broken : <*GROUPS*> 439 Release Remote/Local setup: Remote your acceptance. This product protected 7Limits USER2 39 Remote/Local setup: Remote 540 Axis External I/O(ON:Remote):RI [ 1] ON by several U.S. patents. 8 40 External I/O(ON:Remote):RI [ 1] 641 Config UOP9 auto assignment: None 41 UOP auto assignment: None 7Please Motionselect function OFF 0 ]–NEXT -[ TYPE ADJUST [TYPE] [CHOICE] TYPE HELP [ [TYPE ] ] LICENSE PATENTS [CHOICE] Audio: The controller can be setup in a “local” or “Remote” mode. Local Mode is designed for application development and testing. The controller in this mode cannot be made to start from an external signal i.e. PLC or Cell controller. While in local mode, the selected program within the Teach Pendant will automatically run when you press Cycle start on the Standard Operator Panel. If no program is selected, you will receive a WARN-error code. The Remote Mode is used when running production. The controller listens to external signals such as a PLC or a Remote Operator Panel to start a program. Controller version R-J3 has an external key on the controller to determine the mode selection. Whereas controller version R-J3iB and later are controlled through the software configuration settings from the Teach Pendant. To access the configurations settings, go to – MENU then SYSTEM which is found in the NEXT screen, Select CONFIG from the [Type] menu and the LOCAL/REMOTE SETUP will display the mode that the controller is in. Select CHOICE to change. A user can create a switch that will put the robot into either Local or Remote. This can be done by selecting External I/O in line 40 which in line 41, you assign a Digital Input number associated to the switch. The next slides will focus on the settings within the menu of Program select. 174 Production Setup MATELRNAT0511CE REV. A 7.3 Slide 4-Production Setup in System Config Menu Robot Setup for Production Operation Production Setup in System Config Menu System/Config 1/41 SYSTEM Clock JOINT 100 % LINE 00 AUTO ABORTED LINE AUTO ABORTED 1 Use System/Config HOT FALSE ClockSTART: Display JOINT 100 % UTILITIES Hints JOINTALL 100 % 2 I/O power fail recovery:RECOVER 1/41 HandlingTool (N. A.) MENUS 1 Useprogram HOT START: FALSE 3 Autoexec [********] 1 SELECT DATE 05/12/21 2 I/Ofor power failV6.4060 recovery:RECOVER ALL Cold start: 2 EDIT 3 Autoexec program [********] 3 DATA 4 Autoexec program [********] TIME 08:18:22 1 Clock for Cold Copyright 2005,start: Allstart: Rights Reserved 4 for STATUS Hot 2 4Variables Autoexec program [********] FANUC FANUC Robotics America, Inc. 5LTD, POSITION 5 HOT 3START done signal: DO[ 0] Master/Cal for HotYour start: Licensed Software: use constitutes 6 SYSTEM 4 5OTHOT Release START done signal: DO[ 0] 6 Restore program: TRUE your selected acceptance. This product protected 7 USER2 5 Axis Limits 6 Restore selected program: TRUE 7 Enable UI8 signals: TRUE by several U.S. patents. 6 7Config Enable UI signals: TRUE 8 START for9 CONTINUE only: FALSE function 7Please 8Motion STARTselect for CONTINUE only: FALSE 0 ]–NEXT -9 CSTOPI for ABORT: [ TYPE ADJUSTFALSE [TYPE TYPE] ] LICENSE PATENTS HELP [ TRUE FALSE 10 Abort all programs by CSTOPI: FALSE 11 PROD_START depend on PNSTROBE:FALSE 12 Detect FAULT_RESET signal: FALL 13 Use PPABN signal: <*GROUPS*> 14 WAIT timeout: 30.00 sec 15 RECEIVE timeout: 30.00 sec 16 Retun to top of program: TRUE 17 Original program name(F1): [PRG ] 18 Original program name(F2): [MAIN ] 19 Original program name(F3): [SUB ] 20 Original program name(F4): [TEST ] 21 Original program name(F5): [*******] System/Config 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 1/41 Default logical command: <*DETAIL*> Maximum of ACC instruction: 150 Minimum of ACC instruction: 0 WJNT for default motion: ****** Auto display of alarm menu: FALSE Force Message: ENABLE Reset CHAIN FAILURE detection:FALSE Allow Force I/O in AUTO mode: TRUE Allow chg. ovrd. in AUTO mode:TRUE Signal to set in AUTO mode DO[ 0] Signal to set in T1 mode DO[ 0] Signal to set in T2 mode DO[ 0] Signal to set if E-STOP DO[ 0] Set if INPUT SIMULATED DO[ 0] Sim. Input Wait Delay: 0.00 sec Set if Sim. Skip Enabled DO[ 0] Hand broken : <*GROUPS*> Remote/Local setup: Remote External I/O(ON:Remote):DI [ 0] UOP auto assignment: Full Audio: Most of the setup screens you need to access when running production is the System Configuration and Program Select. To access the System Configuration – select MENU , then SYSTEM which is found in the NEXT screen, Select CONFIG from the [Type] menu. Line items in red is what we will cover. Hot start in line item 1, is a method for turning on power to the robot and controller without entering Boot Monitor functions. At the completion of a Hot start, the screen that was displayed before power was turned off is re-displayed. A Cold start is the standard method for turning on power to the robot and controller which will read the Boot Monitor functions. Hot start is useful when you are in production and an error occurs requiring you to restart the controller. In this case the controller will restart in the same condition it was prior to shutdown, enabling you to more easily resume production. The decision to use Hot Start or Cold Start would depend on the application. Line item 1 determines the robot startup mode. When set to FALSE then the robot will start in COLD start mode, when set to TRUE it will run in HOT START mode. Line item 3 & 4- The autoexec program (also referred as Power Normal) runs at the completion of the power up sequence. Autoexec can be used to do custom setup or monitoring of production conditions that can run continuously. The autoexec can be a teach pendant or a Production Setup 175 MATELRNAT0511CE REV. A KAREL program. It is not recommended to make it a motion program due to safety issues as it will be the first program that runs after a power up sequence. Enable User Input signals in line item 7 is a way to determine that a start signal will respond from a PLC or from the User Operator Panel while in Remote Mode. Line Item 26: Automatically Display the Alarm menu page when an error occurs when set to TRUE. When line item 27 Force message is set to ENABLE then the user page will automatically be forced on your current screen when a message instruction that has been created within a Teach Pendant Program is executed. When set to DISABLED, the user will have to press the MENU key then USER to display the message. Use the MODE SELECT switch to select the most appropriate way to operate the robot, depending on the conditions and situation. Item 30 determine whether to Allow or Disallow users from changing override mode speed when the controller is in auto mode. Set the value to TRUE to allow speed changes. And line item 39 is the setting to control Remote/Local setting when there isn’t a switch on the Operator Panel for R-J3iB controllers as discussed earlier. 176 Production Setup MATELRNAT0511CE REV. A 7.4 Slide 5-Production Setup Audio: Production operation setup allows you to set up a program so that it runs automatically during production. To access Production Setup screen, select MENU , SETUP, press F1 for Type then select Program Select screen First item is program select mode. This determines which program will run when the cycle start is received. This course focuses on the Program mode STYLE. When you use Style, then you need to define which program should run based on the style number which is provided as a Group Input. This is done by selecting the soft key DETAIL then enter all the programs within the Style table. A side note; another program mode choice is called Other, it could be used to run the same program, for an example you can assign a program named MAIN.tp every time a cycle start is received. Production Setup 177 MATELRNAT0511CE REV. A In item 2, Production Start method, you indicate how the cycle start is sent. It could be through a User Operator panel button, through a digital input, or setting a system variable. If you select OTHER for the program mode, then the start method should be set on User Operator panel. If you select program mode of STYLE, then the start method should be set to Digital Input. This screen is displaying the Cell input menu when selecting I/O from the MENUs key then Cell Interface Type. This is where you assign the Group Input which determines the style number that is received from the external device. You also indicate which Digital input is to be used as a start signal, which initiates reading the style number or the Group Input. 178 Production Setup MATELRNAT0511CE REV. A After you set items 1 and 2, you can setup production checks in lines 3 through 10. These conditions determine if it is ok to run the robot. The General Controls within lines 11 through 14 allow you to do some miscellaneous control settings displayed. Further detail of Production Checks and General Controls is covered in the next few slides. Production Setup 179 MATELRNAT0511CE REV. A 7.5 Slide 6-Production Start Checks Audio: Production Start Checks in lines 3 through 10 are settings to check before running a production program. Press the DETAIL softkey for each production check, which will provide the same choices as displayed here. If the line item has a number assigned, then you have the option of ENABLING or DISABLING. Production Check item 3 called AT Home check. When you press DETAIL softkey, the following numbered choices are available. When there isn’t a number associated, then line item is a default setting. In order to do the AT Home check you must teach a home position. This is done in the reference position menu when you press F1 TYPE, within this SETUP menu. You teach one of the reference positions as a Home position. Once this is done, ENABLE the AT Home check within the Setup menu. The controller will check to see if the robot is at the Home position and if it is NOT at Home position, then it will not run the production program. Production check 4 is called Resume Position Tolerance check. This position check will check to see if the Robot arm has been moved away from its programmed path after a program has been paused. If “Resume Position Tolerance check” is enabled, the controller will display: “Robot is out of tolerance”. Production check 5, simulated I/O check means that if there is an I/O on the controller that is simulated then the controller will display a prompt box warning you of this so that you can abort the program if needed. 180 Production Setup MATELRNAT0511CE REV. A Production check 6: General override if DISABLED, then the robot speed will default to 10%. To ensure that the robot is at 100% speed, when running production, you would ENABLE this item. Production check 7: Program Override. When this item is set to ENABLED, production will be run only if the program override is set to 100%. Production check 8: the machine lock, if ENABLED, will check to see if the “Robot Lock” is ON within the Test Cycle menu. You will receive a startup check prompt message. Even though the robot will not move when locked, the robot still thinks its running production. Production check 9, when Single Step is set to ENABLED, production will run if the robot is not in step mode. Production check 10: Process Ready item is application-specific. An example, When this item is set to ENABLED in a spot welding application, the Welder, Water saver, Water flow, and transformer over temperature will be checked for faults during production initiation. Each Production check provides different ENABLED choices within the program select DETAIL. If the specified Production check fails when the program is executed or resumed, the following actions will be taken. If “Check when run” or “Check when resume” are disabled, these actions are ignored. The “Force condition” action takes priority over the other actions. If “Force condition” and “Prompt if failure” are both enabled, only the “Force condition” action is performed. The “Prompt if failure” allows you to specify that a prompt will be displayed on the teach pendant screen if the specified check caused the program start or program resume to fail. For example, if the Production check General override <100 is enabled, a prompt will be displayed on the teach pendant screen when the general override is less than 100. The user can then determine how to process: continue, force, or abort. The “Post error if failure is always enabled and displays an error message on the alarm log to indicate what caused the specified check for the program start or resume to fail. In the previous example, the message “SYST-085 Gen override not 100” would be displayed. The “Post warning if forced” is used only when the Force condition check is enabled. It displays an error message on the alarm log. The “Force condition” is not available for “At home check,” “Resume position toler.”, and “Machine lock” Production checks. 181 Production Setup MATELRNAT0511CE REV. A 7.6 Slide 7-Production Setup – General Controls Robot Setup for Production Operation Production Setup – General Controls • Heartbeat Timing – • Low TEMP DRAM memory – – • Low on execution or run-time memory. May need to upgrade DRAM memory. LOW PERM SRAM (CMOS) memory – – • An external PLC can know if the controller is alive or dead. Recommended minimum free: 50 KB. Needed for installing new options or KAREL programs or increasing Numeric or Position Register counts. • If you do not need the above, lower the threshold to eliminate the warning. Reset when Deadman pressed – You can have the controller perform an automatic reset when the deadman on the pendant is pressed. This is a preference issue. Prog Select JOINT 100 % 1 Program select mode: 2 Production start method: Production checks: 3 At home check: 4 Resume position toler.: 5 Simulated I/O: 6 General override < 100: 7 Prog override < 100: 8 Machine lock: 9 Single step: 10 Process ready: General controls : 11 Heartbeat timing: 12 Low TEMP DRAM memory: 13 Low PERM CMOS memory: 14 RESET when DEADMAN press: [ TYPE ] 1/14 STYLE UOP DISABLED ENABLED DISABLED DISABLED DISABLED DISABLED DISABLED DISABLED 1000 MS 100 KB 50 KB DISABLED ENABLED DISABLED Audio: The General Controls portion of the Program setup menu has 4 items: Item 11 Heartbeat timing – an external PLC can know if the controller is alive or dead by setting up the timing information Item 12 Low TEMP DRAM memory– If the controller is low on the TEMP DRAM memory – it can be made to force a message. Once you receive this message you may need to upgrade your DRAM memory Item 13 Low PERM Static Random Access Memory SRAM is recommended to set it a minimum of 50 kilobytes free. This memory is needed to install new options, KAREL programs, or increasing the numerical position register counts in the controller. If you do not need all these, then you can lower the threshold of 50 kylobytes. Anytime you upgrade memory you need to reload the controller from scratch. Item 14 RESET when Deadman press. The default behavior is when ever the Deadman is pressed then a message get posted the pendant saying “Deadman switch is released” and the RESET has not be performed. You must press the RESET button to clear this alarm error. You can have the controller do an automatic RESET every time you press Deadman switch, provided there are no other errors active. This is a preference issue. 182 Production Setup MATELRNAT0511CE REV. A 7.7 Slide 8-Style Select using DIN start Method Procedure Audio: This video will show you how to setup the controller to run any program of your choice during production run using the program select method called STYLE. The production start is provided through the Digital Input. Additionally, the video will show you how to setup some production start checks and how the controller responds to start checks when they fail. First you must put the controller in REMOTE mode. 1 You are in the System Configuration menu. To move to the Remote/Local setup line item or if you know the line item number, you can press the item key and enter the number. 2 Press the softkey F4 for CHOICE select REMOTE. 3 Next, you will need to go to the Program Select menu to select the program select mode and start method which is found in the Setup menu. 4 Press the F4 CHOICE key to select the Program Mode STYLE, then press F3 DETAIL to define the programs that will start production. During production, the robot receives a group input followed by a cycle start input from an external device, such as a PLC. The robot checks that the program name corresponds to the group input. After the robot validates that all safety and I/O signals have been set properly for a production run, the robot runs the program that corresponds to the style number. 5 To define the Program names, select DETAIL and select all the program names within the Style Table Setup. Production Setup 183 MATELRNAT0511CE REV. A 6 After defining all the program names, you need to set item 2 “Production start method” to Digital Input. Press the previous key to return to the Program Select menu. 7 We will provide two example Production Checks, the At Home and General Override to demonstrate the messages that will display when starting production, Press F3 DETAIL on the At Home line item and ENABLE both “Check win run” and “prompt if failure” General Overide <100 screen 8 To ensure that the robot is at 100% speed, when running production, you would ENABLE this item. If the speed is less than 100%, then you will ENABLE both “Check win run” and “prompt if failure” 9 Production Setup is done – we now need to configure I/O to indicate which Digital Input will be used to start production. This configuration is done within the Cell I/O menu. 10 Notice the yellow highlighted message in the Teach Pendant. In order for the controller to recognize the changes made in the Program Select menu, you need to cycle power. 11 The controller has been restarted and has returned back to the start-up menu. We will now return to the Cell I/O menu. 12 Notice when returning to this menu that the yellow highlighted message has been removed. You need to configure Digital Input, that you wish to use for cycle start, press F2 for CONFIG. 13 You are now in the Input Signal Details menu. Notice the signal name is Start DIN. We will enter in Digital Input #3 for the example. 14 To configure the next I/O signal, simply press the softkey F3 NEXT-IO 15 Once again, notice the highlighted Signal Name – Initiate Style. We will enter in #1 for this example. 16 Once again, notice the yellow highlighted message in the Teach Pendant prompting to restart the controller. Whenever you change the I/O configurations, the controller will need to be restarted to initialize changes to I/O setup. 17 We have completed Cell I/O configurations and are ready to run production. When you press Cycle Start and the robot is not at Home position, then the following message will appear. 18 Now we will demonstrate the message you will receive when the robot speed is less than 100%. To see this message, we will reduce the robot speed. 19 The robot is at the Home position and the robot speed is less than 100%. Now we will Cycle start again and the At Home position will not display, but the General Override prompt appears and is asking whether you want to continue or do you want to force the condition or stop and not run the production. This concludes the video 184 Production Setup MATELRNAT0511CE REV. A 7.8 Slide 9-Summary Robot Setup for Production Operation Summary • When you get a new robot / controller, HandlingTool is setup for LOCAL mode. Set the Remote/Local setting to REMOTE for production operations. • From the Prog Select Menu, select: – Program Select mode – Production Start mode • Setup the Production Check details such as “At home check”, “General Override < 100%”. – If you do not setup the details, default values will be used. Audio: • When you get a new robot / controller, HandlingTool is setup for LOCAL mode. Set the remote local setting to REMOTE for production operation. • From the Prog Select Menu, select - Program Select mode - Production Start mode • Setup the Production Check details such as “At home check”, “General Override < 100%”. - If you do not setup the details, default values will be used. 8 File Management System R-J3, R-J3iB & R-30iA 8 FILE MANAGEMENT File Manipulation File Manipulation AUTO JOINT 100 % 691734 bytes free 1/54 No. Program name Comment 1 -BCKEDT[ ] 2 ABORTIT [ABORT PRODUCTION] 3 ATERRJOB VR [ ] 4 ATSOFTPA VR [ ] 5 DSP_WEBP MR [Display web page] 6 GEMDATA PC [GEM Vars ] 7 GETDATA MR [Get PC Data ] 8 GETIO MR [GET CELL IO ] 9 GET_HOME PC [Get Home Pos ] Select [ TYPE ] CREATE 185 DELETE MONITOR [ATTR ]> Audio: Welcome to the File Manipulation module 186 File Management MATELRNAT0511CE REV. A 8.1 Slide 2-Module Content File Manipulation Module Content • Copy Programs Files • Delete Programs Files • Backup Files – Set the Backup Device • Loading Program • Image Backup and Restore Audio: In this module we will cover, • Copying and Deleting Programs, • Backup all or specific types of files to a specific device. • Learn how to load program from the backup device • Then wrap-up with how to do an image backup and Restore 187 File Management MATELRNAT0511CE REV. A 8.2 Slide 3-Display Program Files File Manipulation Display Program Files AUTO JOINT 100 % 691734 bytes free 24/54 1/19 No. Program name Comment 23 1 MHSHELL -BCKEDTVR [ ] 24 2 MOV_HOME ABORTIT MR [MOVE [ABORTTO PRODUCTION] HOME ] 25 3 MOV_REPR HOME_IO MR [ [MOVE [SET AT TOHOME REPAIR I-O ] __________________VR 4 All NTDAQ MENUTEST VR [ [Example menus ] | 26 1 |MR 5 TP OPERMENU ORIENT [Entry Menu Macro] | 27 2 Programs | MR [ ] 6 KAREL ORIENT POS1_2 | 28 3 Progs | [ ] 7 Macro POS1_2 POS2_2 | 29 4 | [ ] 8 Cond POS2_2 POS3_2 | 30 5 | [ ] 9 POS3_2 POS_1 [ ] | 31 +---------Select [ TYPE ] CREATE CREATE DELETE MONITOR SELECT Menu [ATTR ]> Audio: As programs are created they are stored automatically on the controller memory. A list of all programs stored on controller memory is displayed on the SELECT menu as shown here. If you desire to display specific types of programs then press the F1 key labeled TYPE and from the pop-up menu select the type of program to be displayed. In this example, we will select TP Programs and the following display will show just Teach Pendant Programs. 188 File Management MATELRNAT0511CE REV. A 8.3 Slide 4-Copy a Program Audio: If you would like to modify a program without changing the existing program, then use COPY feature within the SELECT menu. When you press the NEXT key, additional function is available. 1 Move the cursor to the program you want to copy. 2 When you press the function key F1 , labeled COPY you will see the following display. 3 Type in the new copied program name and press ENTER. 4 Press the F4 key, labeled YES to confirm, otherwise, press F5 labeled NO to cancel copying the program. 5 When you press F4 , The selected program will be copied. The SELECT menu will be displayed. The copied program will be displayed in the SELECT menu. File Management 189 MATELRNAT0511CE REV. A 8.4 Slide 5-Delete Program Files Audio: If you no longer want to have a program loaded on controller memory you can delete it. If you want to keep a copy of the program, save it to a storage device before you delete it from the SELECT menu. We will cover storing programs on a storage device later. 1 Press SELECT key. You will see a similar screen. 2 Move the cursor to the name of the program you want to delete. 3 Press NEXT if necessary to display the default function keys, and then press F3 , DELETE. See a similar screen. 4 To delete the program, press F4 labeled YES, otherwise, press F5 labeled NO to cancel. NOTE: the Teach Pendant does not need to be ON or that the Deadman switch needs to be pressed to delete programs. 190 File Management MATELRNAT0511CE REV. A 8.5 Slide 6-7-Aborting a Program File Manipulation Aborting a Program TEST LINE FUNCTIONS 0 UTILITIES Hints 1 ABORT (ALL) AUTO ABORTED JOINT 100 % HandlingTool (N. A.) 2 DISABLE FWD/BWD V6.4060 Copyright 2005, All Rights Reserved FANUC LTD, FANUC Robotics America, Inc. Licensed Software: Your use constitutes your acceptance. product protected 7 RELEASEThis WAIT by several U.S. patents. 0 –NEXT-[ TYPE ] LICENSE PATENTS HELP FCTN Audio: You cannot delete a program if it is paused, assigned to a macro, or write-protected. If the program is paused, you must abort it (press FCTN and select ABORT ALL). If the program is assigned to a macro, it must be "unassigned" first on the SETUP Macro screen if using controllers versions earlier than RJ-3. The next slide will provide the step by step procedure to accomplish this. File Management 191 MATELRNAT0511CE REV. A Audio: When deleting Program files, you must turn off the Write Protection first if it is on.. Additionally, programs that are assigned to sub-type MACRO must be "unassigned" before you can delete when you are using R-J2 and earlier controllers . R-J3 and higher, this step is not necessary. 1 From the SELECT menu cursor down to the Program that is defined as a macro. 2 Press the NEXT key to display additional functions 3 Press F2 DETAIL function key 4 Cursor down to Sub Type if you are using earlier versions of R-J3. 5 Press F4 CHOICE function key to select NONE 6 Verity that the Write Protection is turned OFF. 7 Press F1 END function key to return to the SELECT menu 8 Press the Next key to display the function delete 9 Press the F3 function key labeled DELETE to delete the program 10 Press F4 function key to confirm the deletion. The program file has been deleted. If the Macro Start Assignment has been made on the program that was just deleted, then you must clear the Instruction name, Program and the Assignment from the Setup Menu. Be sure to highlight the Instruction Name and press F2 CLEAR then arrow right to Program and Press F2 to clear and the same for Assignment. Press the next slide icon at the bottom of the course window. 192 File Management MATELRNAT0511CE REV. A File Management MATELRNAT0511CE REV. A 8.6 Slide 8-You Try it Audio: Here’s an opportunity to recall the steps to needed to delete program files. 193 194 File Management MATELRNAT0511CE REV. A 8.7 Slide 9-Types of Files To manipulate a file you must know the type of file you are manipulating. This slide lists several types of files available. During your work on the controller, you might only use a few types of files. You can determine the file type by looking at the file name as it is displayed on the FILE menu. The file name consists of a file name, followed by a period, then followed by a two- or three-letter file type. File Management MATELRNAT0511CE REV. A 8.8 Slide 10-Storage Devices File Manipulation Storage Devices • The following kinds of storage devices can be used to store programs and files: – – – – – – – – – Memory Card (MC:) USB Memory Stick Device (UD1:) Flash File Storage disk (FR:) RAM Disk (RD:) (Not for SpotTool+) Ethernet Device (optional) Memory Device (MD:) Memory Device Backup (MDB:) MF Device (MF:) Filtered Memory Device (FMD:) Audio: The following kinds of storage devices can be used to store programs and files: This course does not show or explain how to format the devices or setup up a port. 195 196 File Management MATELRNAT0511CE REV. A 8.9 Slide 11-Set the Default Device & Generate a Directory Audio: Now we will demonstrate how to set the Default Device, then how to generate a directory of files on that device. You can display a directory of files on the devices you use for the purpose of loading or backing up of the files. 1 Some devices contain hundreds of files. You can display a directory of all files, or a subset of the files as mentioned from the previous slide. This demonstration will show all Teach Pendant Programs. 2 Press the MENU key 3 Arrow down to FILE 4 If necessary press F1 TYPE to select FILE 5 Press F5 UTILITIES to select the device. This demonstration will select the Memory Card. 6 Press F2 [DIRECTORY] to generate a directory of the type of files you would like to display. The result is displaying all teach pendant programs from the Memory Card. Press the next slide icon at the bottom of the course window. File Management 197 MATELRNAT0511CE REV. A 8.10 Slide 12-You Try It Audio: Here you can recall the steps needed to setup a default device then generate a directory of files on that device. 198 File Management MATELRNAT0511CE REV. A 8.11 Slide 13-Backup Up Files vs. Controller Backup File Manipulation Backing Up Files vs. Controller Backup File Backup JOINT 100 % MC: *.TP 1 -BCKEDT2 ABORTIT 3 DSP_WEBP 4 GETDATA 5 GETIO 6 HOME_IO 7 LISTMENU 8 MENUTEST 9 MOV_HOME FILE 1/59 TP TP TP TP TP TP TP TP TP [ TYPE ] [ DIR ] FANUC Controller Backup 74 106 246 179 215 397 177 368 401 LOAD [BACKUP][UTIL ]> SYSTEM R-30iA Controller Backup and Restore Backing up a controller as an Image (starting on the R-J3 and higher controllers) Audio: When backing up a files, you save it from controller memory to the default device so that you have a second copy of the file. You can back up program, system, application, diagnostic, and error log files to the default device using the FILE screen. The actual application software (such as HandlingTool, SpotTool, PaintTool etcetera) that is installed on the controller will NOT be part of the backup when using the FILE menu. To back up all memory on the controller, which would include the application software, use the Controller Backup and Restore function. There are two types of controller backup. One is called “Controller Backup and Restore”, and the second is called “Backing up a controller as an Image”. “Backing up a Controller as an Image” will make a memory image, similar to taking a picture, of the Flash-Read Only Memory (F-ROM for short) and Static-Random Access Memory (S-RAM for short) of the controller modules. Caution should be applied when restoring controller images. If the hardware memory configuration does not match the controller that supplied the image, damage may result if you try to restore that image. File Management 199 MATELRNAT0511CE REV. A 8.12 Slide 14-Backup Files Using the FILE Menu Audio: When the default device has been setup from the Files UTILITIES screen that was shown earlier, you can easily BACKUP files to that device. Select MENU then select FILE, select F4 labeled BACKUP and a pop-up menu will appear to choose what type of file you want to backup. We will demonstrate backing up all Teach Pendant programs. Notice the bottom display showing to backup one teach pendant file at a time. You can choose F4 labeled YES or choose F5 labeled NO, or simply select F3 to backup ALL teach pendant programs. 200 File Management MATELRNAT0511CE REV. A 8.13 Slide 15-Loading Files Using the FILE Menu Audio: Loading programs allow you to load programs into the controller that have been previously backed up. First, be sure the default device has been set. Refer to the slide labeled “Set the Default Device/Generate a Directory”. When loading files, you have two options: 1 One file at a time, or 2 all of the same type of file To load one file, you must generate a Directory to display that file. To load all files types, from the FILE menu, select that type of file, then select F3 LOAD and the following display will appear. You will see at the bottom of the windows display the name of each file being loaded. Press F4 labeled YES to confirm. File Management 201 MATELRNAT0511CE REV. A 8.14 Slide 16-Backup up a Controller as Images Audio: The Image Backup feature allows you to make an image of the F-ROM and S-RAM controller memory modules. The image is stored in a number of files that uses the extension of i-m-g on a selected destination device. Image backup is available from the File menu when the system is in Cold Start. After an Image Backup is selected from the File menu, the actual backup occurs the next time the controller is powered up. Controlled start also provides an Image Backup. The following procedure will demonstrate Backing up a controller as images to a memory card from the Controlled Start Mode. Before you begin, be sure the teach pendant ON/OFF switch is OFF and the DEADMAN switch is released and The REMOTE/LOCAL setup item in the System Configuration Menu is set to LOCAL. 202 File Management MATELRNAT0511CE REV. A Be sure the memory card has enough free space. 1 To begin, Press and hold the F1 and F5 keys on the teach pendant. 2 Turn the power disconnect circuit breaker to ON. You will see a screen similar to the following. 3 Release all of the keys. 4 Select Controller backup/restore and press ENTER . 5 Select Backup controller as Images and press ENTER . 6 Select memory card (MC) and press ENTER . 7 Insert a memory card that has enough space to hold the full controller image into the memory card interface in the CPU module in the controller. 8 Type 1 and press ENTER. The files will be written to the memory card. You should see messages similar to the following. NOTE: If BMON crashes or hangs during “Writing USB: SRAM0x.img...,” this could be an indication of problems with the SRAM memory. If this occurs, contact a FANUC Robotics Service Representative. 9 When all the image files have been written to the memory card, you will see a message similar to the following. File Management 203 MATELRNAT0511CE REV. A 8.15 Slide 17-Restoring Controller Images Audio: Restoring Controller Images feature allows you to restore the F-ROM and S-RAM controller memory from an image backup. It can only be restored to a controller with the same memory configuration, or larger. The restore is done during power up. The following procedure will demonstrate Restoring the controller from a memory card. Before you begin, be sure the teach pendant ON/OFF switch is OFF and the DEADMAN switch is released and The REMOTE/LOCAL setup item in the System Configuration Menu is set to LOCAL. 1 To begin, Press and hold the F1 and F5 keys on the teach pendant. 2 Turn the power disconnect circuit breaker to ON. You will see a screen similar to the following. 3 Release all of the keys. 4 Select Controller backup/restore and press ENTER . 204 File Management MATELRNAT0511CE REV. A 5 Select Restore Controller Images and press ENTER 6 Select the device used to restore image and press ENTER . 7 If you have selected memory card, you will see a screen similar to the following. Insert the memory card that contains the full controller image into the memory card interface. As mentioned earlier, Caution should be applied when restoring controller images. If the hardware memory configuration does not match the controller that supplied the image, damage may result if you try to restore that image. 8 Type 1 and press ENTER . The files will be read from the device and restore them into the controller 9 When the restore is complete, press ENTER to return to the first screen. This completes the File manipulation module. The next few slides will provide the opportunity to test your knowledge and comprehension.