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
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.
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.
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
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 [email protected] 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.
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.
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.
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
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
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.
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