0% found this document useful (0 votes)
42 views19 pages

infoPLC - Net - 03a Fanuc Robotic Arm Creating A Program

Uploaded by

fasp
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views19 pages

infoPLC - Net - 03a Fanuc Robotic Arm Creating A Program

Uploaded by

fasp
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

Fanuc Robotic Arm Creating a Program

By: Matthew Jourden


Brighton High School
Brighton, MI

1. Turn On and Connect on the Robotic Arm to RoboGuide > Open BHS Fanuc Robotic Arm Workcell
2. Select File > Save “BHS Fanuc Robotic Arm Workcell” AS

3. Add your Last Name to the End of Enter New Cell Name

4. Select the Folder for Enter New Cell Path > Select Windows (C:) > Select My Work Cells Folder > Select Ok > Select Ok

2. Select Windows (C:)

3. Select My Work Cells

1. Select Ok

4. Select Ok

NOTE: Moving forward this will be the workcell you will select when working in RoboGuide
5. Open and Run Program Zero_90 if the robot is not set in this position: This should be your starting position for the robot
to avoid a singularity. Singularity is when Joints J3, J4 and J5 are in direct alignment. The Robot has an infinite possibility
of movement in this setup and does not know how to move. A Fault will be appear when in Singularity.

Creating a New Program: Rectangle


Overview: The Program will be tracing the Square Image on the Workcell Table. The Robotic Arm should not come any closer
that 50mm of the table and the claw should be perpendicular to the table

Rectangle to Trace

Operator may need to rotate the workcell into a saved view (View > Standard Views > Front, Top, etc.) rotation
Operator may also measure distances utilizing the measurement tool

a. Dimension Tool: Allows the operator to measure between different points and provide a distance measure
a. Select the Dimension Tool
b. Menu

Select Entity to start from


Select Entity to end from

Select what to select Feature Entity

Distance Data

Check Boxes to turn ON/OFF Data


on the Workcell
c. Set Dimension:
i. Uncheck D, X and Y
d. Select “FROM” the top of menu to Pick a Point on the claw > Select Entity Selection: Vertex > Pick a Point on the
end of the claw

1. Select From

2. Select Vertex

Select Point on the


end of the Claw

e. Select “TO” > Select Entity Selection: Face > Select the Workcell Table

1. Select To

2. Select Face

3. Select the Table

f. Distance is shown > Operator can select Create Dimension to place the dimension on the work cell to keep the
dimension on the screen
6. Creating a New Program:
a. Press the Select Key on the Teach Pendent

b. Select Softkey Create: Press F2 (NOTE: Virtual Teach Pendent below does not have F1-F5 Hardkeys shown, but
the keys ) or use the Touch Screen press Create

Select Softkey Create or Hardkey


F2 (Not Shown)

c. Select Options/Key Board on the touch screen > Select Softkey Keyboard or Hardkey F5

Select Options/Keybd
Select Softkey Keyboard or Hardkey F5
d. A Keyboard will appear > Type in the Program Name: Rectangle_”Student Last Name” > Press Exit to Set the
Name of the File
Notes about the Keyboard
i. Use the Touch Screen set cursor in the typing space
ii. Shift Key = Caps Lock
iii. Max 36 Characters
iv. No
1. Spaces are allowed in File Names
2. Mathematical Symbols (*, +,/,-)
3. File Name CANNOT begin with a Number
v. ABC and 123 Buttons Toggle Screens for various characters

Area to Type File Name Exit: Sets File Name

Shift = CAPS Lock


for Characters

e. Select Softkey: Detail


Detail Shows the Properties of the program

Subtype: Change program type


None = .TP Program/Default
Collection (.CO) = Creates Folder to Organize Files/Non-Motion
Macro (.MR) = can be setup to use robot functions, teach pendent keys, input signals and manual functions to operate the
robot
Cond. (Conditional Handler, .CH) = Monitors I/O Signals, register values and Alarms status

Comment: Provide a short description of the program

Group Mask: Controls motion groups up to 8, defining axes groups. Fanuc robots can control up to 72 axis’s. Value of 1 allows
for 8 axis of movement and value of 0 is no motion. Asterisk (*) the motion group is not used.

Write Protected: Allows the programmer to lock the program and not be modified

Ignore Pause: Allows the programmer to make the program run even if there is an error or fault with the robot

Stack Size: allocates memory space for each program minimum is 500 (2000 bytes) up to 4000 (20000 bytes)
f. Program Rectangle_”Student Last Name” > Detail Menu > Arrow down to Comment > Press Enter > Select KeyBd
> Tutorial 1 > Select Exit on the Keyboard > Select Softkey Key END or Hardy Key F1

3. Select Detail

4. Arrow down to Comment > 5. Using the Keybd


Press Hardkey Enter Option > Type:
Tutorial 1
2. Select Side Arrow
1. Arrow down/down to program

g. Press Select Hardkey > Arrow to Program Rectangle_”Student Last Name” > Press Hardkey Enter or Select
Softkey Edit or Hardkey F3 to enter coding workscreen or if in the Detail Menu > End > Select Menu > Select
Program > Press Enter to Load Program

Quick Selection Options

New Instruction: Set Machine Instructions i.e.


Registers, I/O, Wait Commands, Call Program, etc.

Edit Command: Formatting Options for the program


Add, Insert, Delete,

Add Move Point: Records and Adds current


coordinate points into the program as a position
number

Touchup Point: Allows operator to update/change


coordinate points for a define program point Touchup Point:
Allows operator to
update/change
coordinate points
for a define
Add Move Point: Records and Adds program point
current coordinate points into the Side Key Provides Softkey options for Instructions and Edit Command (EBCMD)
program as a position number
7. 1st Commands a Robotic Programmer should set is the Tool Frame and User Frame
Frames are the default setup for logging Coordinate/Angle Values for X, Y, Z, W (Yaw), P (Pitch), R (Roll). Default Frames
for
- User Frame: Coordinate System offset from World which is located at the intersection of J1 and the Base

World Frame

- Tool Frame: Center point of the End Effector. Default is the center of the tool plate (TCP) without an end
effector.

Default Tool Frame at the


End of Tool Center Plate
(TCP)

a. Checking Active Tool and User Frame: Press Hardkey Shift + COORD > Select Hardkey Prev to close window

Informational Pop Menu Pop-up window shows


active Tool, Jog and User Frames

Operators are able to setup their own Frames for


Tools Frames: Account for Tool Length by moving the
origin to the end of the end effector and not the end
of the TCP

User Frames: Reposition the origin in a different


location the World. NOTE: World does not move the
robot will calculate distances from the User Frame to
World

Select Hardkey Shift +


COORD to see active Tool
and User Frames
b. On the Teach Pendent Select New Instruction > Select Side Arrow to Show more Instruction Options > Select
Offset Frames

1. Select Offset Frames

2. Select New Instruction

3. Select New Instruction

c. Setting UserFrame: Select UFRAME_NUM = … > Select CONSTANT > Type 0 > Select Hardkey ENTER

3. Type 0 > Select


Hardkey ENTER
2. Select CONSTANT
1. Select UFRAME_NUM = …

d. Setting Tool Frame: Repeat Steps b. from above: Select New Instruction > Select Right Side Arrow to move to
next screen > Select Offset Frames > Select UTOOL [] = …. > Select CONSTANT > Select 1 > Select Hardkey ENTER

4. Type 1 > Select


Hardkey ENTER
2. Select CONSTANT

1. Select UTOOL_NUM = …
8. EDIT COMMAND:
a. Inserting Blank Lines: It is recommended to add blanks lines between groups of instructions/motions to make
the program easier to read
i. Arrow Over the Cursor in desired location to Insert Lines: For this program place the cursor on the END
Command on the coding screen. NOTE: New Lines will be inserted below the highlight line of code; with
the excepton of the end command

ii. Select EDIT COMMAND > Select INSERT > Type in the number of lines to insert: Enter 3 > Select Hardkey
ENTER

5. Type 3 > Select


Hardkey ENTER

2. Select EDIT COMMAND


1. Select INSERT

b. Deleting Lines:
i. Arrow to the desired line to delete: Place Cursor on Line 4

ii. Select EDIT COMMAND > Select DELETE > Select Soft

3. Select Softkey YES


1. Select EDIT COMMAND
2. Select INSERT

Program Should as follows


9. Recording Points
a. With the Robot in Default Position from Program: Zero_90 (NOTE: if the robot is not in this position run the
program Zero_90 to get the mode set and come back to program Rectangle_”Student Last Name”)

Position Types

Positional: P[_] Points the operator records that are specific to a program; called Local Points

Positional Register: PR[_] are points that Global to the Machine and that any program can use. Good options is Positional
Register Points: Home, Repair, Safe, Other (i.e. part removal, part entry, etc.). BHS Robots have PR[1] set has the Home Position
which is the same as Program: ZERO_90.

To see the Positional Register list Select Data > Softkey Type or Hardkey F1 > Select

Move_to: Move the robot to that


position without Jogging
2. Select Option 2
Positional REG
Record New/Update Positions

3. Select Softkey TYPE


or
Hardkey F1 Position: See the
Coordinates/Angles of the
highlighted Position
1. Select Hardkey Data
Motion Types

i. 2 Types of Movements
1. Linear Movement (Labeled as L): Straight Line
2. Joint Movement (Labeled as J): Creates more arced path

Movement Commands: 2 Types of Movements


Joint: Curved/Arced Movements
Linear: Straight Line Movements

Speed (How fast to move)


Linear = velocity mm/sec
Joint = Percentage of max speed that the joints can adjust while in motion

Termination at logged position (coordinate Points x, y, z)


FINE = Goes to the position slowing down then pausing at the end location before moving on
to the next position
CNT = Continuous motion 0 -100
0 = Closest to the End Point
100 = Creates an arc furthest away from the destination point. Arc is calculated based
on speed and joint(s) rotation
b. Place Cursor on Line 4 > Recording Point: Select ADD MOVE POINT

1. Place Cursor on Line 4


2. Select ADD MOVE POINT

c. Selecting Motion Type: Motion type will be defined in how the operator want the robot to move between points
and how it will be tranistion/breaking when it reaches that point.
i. For the First Point we want to the robot to placed in this position as fast and quick as possible while
avoiding and obstructions.
ii. Select J P[ ] 100% FINE > Notice on the robot a line of code is placed on Line 4 with a position number of
1. The robot will record each point as the next available digit. Operator is able to reuse Position
number 1 at any point in the program and the robot will move to those coordinates.
NOTE: Operator is able to adjust values by using the arrow keys to position on the desire item to change
(i.e. Position Number, Speed % and mm/sec or Breaking FINE v. CNT)

New Line of Code


Select J P[ ] 100% FINE
iii. Change the Poistion to a Position Register
1. Arrow cursor to P [_] on Line 4 > Select Softkey [CHOICE] or Hardkey F4 > Select Touch Screen PR
[_] > Selct Constant > Type 1

1. Arrow over to Position 4. Select Keyboard


3. Select PR[_]
# > Type 1

2. Select Softkey [CHOICE] or HardKey F4

SAVE: Workcell: BHS Fanuc Robotic Arm Workcell “Student Last Name”
Rectangle Points

PT1 PT4

PT2 PT3

d. Point 1:
i. Jog the Robot to PT1 > Keeping the Claw perpendicular to the table and the height between 25 to 100 mm
NOTE: two types of jogging:
World: Moves all 6 joints to maintain end of tooling orientation. Remember the Right Hand Rule for
direction and polarity RIGHT HAND RULE for World Frame (Origin)

When Facing the Robot to Determine Axis Polarization +/- Direction

X = Forward (-) to Back (+)


Y = Left (-) and Right (+)
Z = Down (-) and Up (+)

Joint: Moves 1 joint at a time. Finished Jog Position

X,Y,Z Joint Jog Mode Reference when facing the Robot

X = Left (-) to Right (+)


Y =Towards User (-) to Toward User (+)
Z = Down (-) to Up (+)
ii. Arrow cursor to END > Select Add Move Point > Select L P[_] 100 mm/sec FINE

Program Updated
2. Select Add Move Point
or Point
3. Select L[_] 100mm/sec FINE

1. Place Cursor on END

iii. Change Speed: Arrow over to 100 mm/sec > Change value to 1000mm/sec

Arrow over to Value > Select


Keyboard > Type in 1000

e. Jog to Point 2: Try and maintain a similar height to Point 1 (25mm -100mm) use dimension tool or POSN Key:
World to see values > Record position as L [_] 100 mm/sec FINE > Change speed to 1000
f. Jog to Point 3 Try and maintain a similar height to Point 1 (25mm -100mm) use dimension tool or POSN Key:
World to see values > Record position as L [_] 100 mm/sec FINE > Change speed to 1000
g. Jog to Point 4 Try and maintain a similar height to Point 1 (25mm -100mm) use dimension tool or POSN Key:
World to see values > Record position as L [_] 100 mm/sec FINE > Change speed to 1000
h. Add a New Point: the Software will make this P[5] > Arrow over to the 5 > Select Keyboard > Change Position
Value to 1
i. Run the Program in STEP Mode > Rotate to a Top View >Check the shape: If the shape is off then Run the
Program in STEP > Stop at the Point that needs to be adjusted: Be SURE the cursor is on the line number to be
adjusted/updated > HOLD SHIFT + Select Softkey TOUCHUP or Hardkey F5 > Select Softkey YES or Hardkey F4 to
Update (NO is F5)

For Example: Position 2 needs adjusting

1. Run the Program in STEP Mode to the position

2. Jog the Robot as needed to update the position


3. Hold Hardkey SHIFT + SELECT TOUCHUP

Hold Hardkey Shift + Select Softkey TOUCHUP or Hardkey F5

4. Select Softkey YES or Hardkey F4 to update the point > Program will tell operator if point has
been updated
SAVE: Workcell: BHS Fanuc Robotic Arm Workcell “Student Last Name”
10. Wait Command: Pauses the robot a the last location for a defined amount of time. Various applications for this but it is
desired to use sensors (optical, pressure, etc.) as a means of waiting then time.
a. Place the Cursor at the [END] command > Select Touch Screen New Instruction > Select WAIT >

3. Select New
Instruction 1. Select Wait 2. Select Wait …. (sec) > Set Value to 2

11. Return Home: Set a New Move Point > Change Move Point to PR[1] (Position Register [1]) > Place a Wait Command of 2
Seconds

12. Run Program in STEP Mode > TouchUp Points as needed


13. Run Program in Continuous > TouchUp Points as needed

SAVE: Workcell: BHS Fanuc Robotic Arm Workcell “Student Last Name”
14. Tracing the Square in Joint Motion
a. Place Cursor on the [END] line of the program
b. Without Moving the robot add 5 J [_] 100% CNT100 lines

c. Place cursor on each Joint (J) Motion Position Number (P[#]) change to the following

d. Run the Program in STEP Mode> TouchUp Points as needed


e. Run the Program in Continuous > TouchUp Points as needed: Notice the Joint Commands how they are moving.
f. Adjust the Percentage Speed to 50 for all Joint Commands > Run the Program in Continuous
g. Test the Program: Notice the Rectangle is not traced evenly and some points seem to be skipped over. This is
due to the arc that is created when the robot tries to approach the recorded point.
h. Adjust CNT number to 50

i. Run the Program in T1 Continuous > TouchUp Points as needed


j. Add the following

k. Run the Program in T1 Continuous > TouchUp Points as needed


l. Run the Program in Auto Mode

SAVE: Workcell: BHS Fanuc Robotic Arm Workcell “Student Last Name”
Assignment: Triangle
Complete the following

1. Trace 2 Triangles in Linear with the following path


Path: PT1 > PT2 > PT 3 > PT 4 > PT2 > PT3 > PT1
2. Height Restriction: 30mm - 100mm

PT2

PT1 PT4

PT3

Program

a. Create a New Program named: Triangle_”Student Last Name”


a. Add A comment in the Program Details: Assignment 1
b. Declare UTool and UFrame
c. Insert Blank Space
d. Set Position Register Home
e. Insert 2 Blank Spaces > on the 2nd blank line Add Remark (New Instruction > Miscellaneous >
Remark): “Linear Triangle”
f. Set 7 Points at Linear Motion 500mm/sec FINE
g. Wait Statement 2sec
h. Return to Position Register Home
i. Wait Statement 2sec
j. Insert 2 Blank Spaces > on the 2nd blank line Add Remark (New Instruction > Miscellaneous >
Remark): “Joint Triangle”
k. Set 7 Points (NOTE the robot should not need to move when setting the code) at Joint Motion 100%
CNT 100 > Test the Pat
a. Adjust Speed to 50% and CNT50 after noticing the Triangle Points are too close together and
the shape is not traced
l. Wait Statement 1.5sec
m. Return to Position Register Home
n. Run the Program in Step Mode > TouchUp Points as needed
o. Run Program in Continuous Mode > TouchUp Points as needed

You might also like