RW6 Prog and Op 2015
RW6 Prog and Op 2015
RobotWare 6.0
Programming and Operation
UK R752
Produced by Simon Turner
© ABB Group
November 28, 2023 | Slide 1
Site Map
Fire Assembly point
Fire
Assembly
Point
Visitors
Parking
Loading
Bay
Visitors
Parking Smoking
Employee Area
Parking
Employee parking
Smoking
Shelter
© ABB Group
November 28, 2023 | Slide 2
Auriga House Ground Floor Plan
Workshop Area
Must be accompanied by a member of ABB staff
Health & Safety / Customer confidentiality
Smoking area
Access via main entrance
© ABB Group
November 28, 2023 | Slide 4
Current RW 6.0 Training course scheme
Programming
Operator &
Operation
2day 5 day
RobotStudio 6
Offline programming
Stage 1
3 day
RobotStudio 6
Offline programming
Stage2
2 day
© ABB Group
November 28, 2023 | Slide 5
Course Objectives
Safety requirements for basic programming and operation
System warm start up, shut down and error recovery
Basic program operation
Basic production programming techniques
Editing program instructions to maximise efficiency
Create and use routines
Use input output instructions
Flexpendant communication instructions
Numerical data instructions
Saving and opening programs
© ABB Group
November 28, 2023 | Slide 6
Safety
Safety
© ABB Group
November 28, 2023 | Slide 7
Robot Safety during training course
When inside the robot cell, make sure you have control of Pendant
© ABB Group
November 28, 2023 | Slide 8
ABB Safety Solutions – an Overview
Emergency stop
Operating modes
Production (Auto) Interlocked guarding
Manual reduced speed (Teach)
Jogging and program operation
Maximum speed 250mm/sec
Manual full speed (Test)
Program operation only
© ABB Group
November 28, 2023 | Slide 9
Enabling Device (Dead Mans Grip)
Enabling device
© ABB Group
November 28, 2023 | Slide 10
Manual Full Speed (Optional)
Press and Hold down the play key, to run the program
© ABB Group
November 28, 2023 | Slide 11
Safeguard Stops
Your robot system can be equipped with a vast range of safeguards such as
door interlocks, safety light curtains, laser scanners and pressure mats etc.
A safeguard prevents hazardous situations by stopping the manipulator in a
controlled manner when a mechanism such as a light curtain is activated
The controller has three separate safeguarding mechanisms,
General stop (GS) Always active regardless of operating mode
Automatic stop (AS) Only active in auto mode
Superior stop (SS). Always active regardless of operating mode
© ABB Group
November 28, 2023 | Slide 12
Working range of robot axis
© ABB Group
November 28, 2023 | Slide 13
Brakes Release
IRC5C controller
Produced by Simon Turner
All grip devices must be designed so the work piece will be held even on
power failure and other disturbances in the robot system
There should be possibilities to loosen the work piece manually
Familiarize yourself with operational buttons assigned to the gripper function
© ABB Group
November 28, 2023 | Slide 15
FlexPendant Overview
User defined keys
Status bar
Windows E-Stop
button
Enabling
device
3D
Joystick
Jogging
keys
Quickset menu
USB port
Produced by Simon Turner
With the QuickSet menu you can access some often used settings
© ABB Group
November 28, 2023 | Slide 17
Basic Program Operation demonstration
Manual reduced speed
Enabling device
Manual Full speed
Enabling device and Hold-to-run
Automatic
Stepwise Operation
Fwd Bwd and limitations
E-Stop and recovery
Override speeds
25% etc
Running mode
Produced by Simon Turner
© ABB Group
Cycle or Continuous
November 28, 2023 | Slide 18
Operational Exercise
Exercise
Program Operation
© ABB Group
November 28, 2023 | Slide 19
Program Operation using Debug (Program Editor)
© ABB Group
November 28, 2023 | Slide 20
‘Auto Condition Reset’ parameter
If Reset parameter is set to YES then the following conditions are reset
when switching to auto:
Control panel – configuration – Controller – Auto condition Reset- All Debug Settings
Produced by Simon Turner
© ABB Group
November 28, 2023 | Slide 21
FlexPendant Windows Overview
© ABB Group
November 28, 2023 | Slide 22
Jogging the robot
© ABB Group
November 28, 2023 | Slide 23
6 Axis Robot
Axis 4
Axis 6
Axis 3 Axis 5
Axis 2 Axis 3
Axis 4
Axis 1 Axis 2
+
Produced by Simon Turner
© ABB Group
November 28, 2023 | Slide 24
4 Axis Robot (FlexPalletiser)
• A = Axis 1
• B = Axis 2
A • C = Axis 3
• D = Axis 6
+
Produced by Simon Turner
© ABB Group
November 28, 2023 | Slide 25
3 / 4 Axis Robot (FlexPicker)
2 3
Y 4
© ABB Group
November 28, 2023 | Slide 26
Jogging 6 axis robot
© ABB Group
November 28, 2023 | Slide 27
Jogging along Coordinate axis
© ABB Group
November 28, 2023 | Slide 28
Jogging Motion Keys
© ABB Group
November 28, 2023 | Slide 29
Jogging External Axis Track
© ABB Group
November 28, 2023 | Slide 30
Jogging External Axis Positioner
© ABB Group
November 28, 2023 | Slide 31
Incremental Jogging
Small = 0.05mm 2
Medium = 1mm
Large 5mm
© ABB Group
November 28, 2023 | Slide 32
Jogging collisions
© ABB Group
November 28, 2023 | Slide 33 Disabled
Jogging Override Speed
© ABB Group
November 28, 2023 | Slide 34
The Jogging Window
© ABB Group
November 28, 2023 | Slide 35
Jogging demonstration
Position the robot joints
Major Axis
Minor Axis
Increments where required
Position the tool using Linear relative to:
World / Base coordinates
Tool coordinates
Work object coordinates
Increments where required
Position the tool using Orientation relative to:
Tool / Base and Work object coordinates
© ABB Group
November 28, 2023 | Slide 37
Programming Introduction
Creating a program
Introduction to basic move instructions and data
Programming move instructions
Modifying Instructions and data
Programming demonstration
Practical…
Further demonstrations and Practice…
© ABB Group
November 28, 2023 | Slide 38
Creating a new Program
Old program will be removed
The new program is temporarily named ‘NewProgramName’
A ‘main’ routine is created within a ‘MainModule’
© ABB Group
November 28, 2023 | Slide 39
Introduction to Joint & Linear Motion
Move L
Move J
© ABB Group
November 28, 2023 | Slide 40
Positional Movements Instructions (Common Picklist)
© ABB Group
November 28, 2023 | Slide 41
Zone
Zone data describes how close to the destination position
the axes must be before the next instruction can be executed.
Zone size
MoveL p1, v100, z10,
tool0;
MoveL p2, v100, z10,
tool0;
MoveL p3, v100, z10,
Produced by Simon Turner
p3
tool0;
© ABB Group
November 28, 2023 | Slide 42
Positional Movements Instructions (Common Picklist)
© ABB Group
November 28, 2023 | Slide 43
Exercise 1
Exercise
Programming movements
© ABB Group
November 28, 2023 | Slide 44
Modify Position
© ABB Group
November 28, 2023 | Slide 45
Program Edit Menu
© ABB Group
November 28, 2023 | Slide 46
Comment (‘Various’ Picklist)
Comment - Inserts a line of text to make it easier to understand the program.
Use ABC… in the Edit menu to add text after the exclamation mark
© ABB Group
November 28, 2023 | Slide 47
Tool Centre Points (TCP)
+Y
© ABB Group
November 28, 2023 | Slide 48
Tool Centre Point theory
The position & movement of the robot is always relative to the active TCP.
Many TCP’s may be defined, but only one active at any one time.
Can be programmed manually but only if accurate TCP values are known.
If tool is damaged or replaced, don’t modify program positions, just redefine the
tool.
© ABB Group
November 28, 2023 | Slide 49
Tool Centre Point Definition Methods
Default Orientation (same direction as Wrist coordinate system)
TCP & Z Just Z direction defined (X stays in same plane as wrist)
TCP & Z, X both Z and X defined
From 3 to 9 approach points
© ABB Group
November 28, 2023 | Slide 50
Example of TCP with default orient
No rotational difference from the wrist coordinate system
© ABB Group
November 28, 2023 | Slide 51
Example of TCP with Z direction defined
© ABB Group
November 28, 2023 | Slide 52
Example of TCP with Z&X directions defined
© ABB Group
November 28, 2023 | Slide 53
TCP Definition – Default Orient
1
1
4
3
2 4
3 2
Plan view
© ABB Group
November 28, 2023 | Slide 54
TCP Definition – Z & X
Tool orientations are defined by the direction the tool is
positioned away from the datum point.
5
Z Elongator point Jog robot so the tool’s intended Z and
X directions, visually align to the base
coordinate’s Z and X axis.
X Elongator point
Produced by Simon Turner
© ABB Group
November 28, 2023 | Slide 55
Tool Centre Point Definition Method
Menu
Program data
Select tooldata
Show data
New…
Name tool
Initial value or OK and then select tool in list and Edit Value
Mass:= type in kg and Centre of Gravity
Press OK
Press Edit
Select Define
Select Method and number of Points
Select Point 1, jog robot to calibration position and press Modify Position
Repeat for remaining points
Press OK
You will need to activate your TCP in the jog window
© ABB Group
November 28, 2023 | Slide 56
Exercise 2
Exercise 2
Create a Tool Centre Point
© ABB Group
November 28, 2023 | Slide 57
Logical Instructions (‘Common’ Picklist)
Set doGripper;
Reset doGripper;
© ABB Group
November 28, 2023 | Slide 58
Logical Instructions (‘I/O’ Picklist)
SetDO do15, 1;
or
SetDO \SDelay := 0.2, do15, 1;
© ABB Group
November 28, 2023 | Slide 59
Logical Instructions (‘Common’ Picklist)
WaitTime 0.5;
(Waits 0.5 seconds)
© ABB Group
November 28, 2023 | Slide 60
Routines and program flow example
© ABB Group
November 28, 2023 | Slide 61
Routines Summary
Routines separate the program into smaller more easily understood parts,
these can then be called anywhere in the program using the ProcCall
instruction.
Routines are called within the program using the instruction ‘Procall’
© ABB Group
November 28, 2023 | Slide 62
Routines Exercise
Copy this routine and edit the output instruction to put the pen down
© ABB Group
November 28, 2023 | Slide 63
Routines Exercise
Exercise 3
Create Routines
to pick and place the pen
© ABB Group
November 28, 2023 | Slide 64
Work Object Coordinate Systems
Wobj0 is the default coordinate system and connected to the robot World
Its advisable to use custom work objects as wobj0 can not be moved
pSafe
TCP
wobjBox
World / wobj0
© ABB Group
November 28, 2023 | Slide 65
Work Objects
User Object
World
© ABB Group
November 28, 2023 | Slide 66
Work Objects and External Axis
Object frame locates the tooling fixture relative to the user frame / faceplate
User frame
Object frame
© ABB Group
November 28, 2023 | Slide 67
Calibrating Work Object frames
Both User and Object frames can be defined with calibration points
Y1
Y1
X1 X1
X2
X2
World
© ABB Group
November 28, 2023 | Slide 68
Work Object Definition Methods
Its common practice for the Object frame to be located directly on top
of its User frame.
© ABB Group
November 28, 2023 | Slide 69
Jogging along axis of active workobject
© ABB Group
X Y Z
November 28, 2023 | Slide 70
Work Objects Summary
Many work object data’s may be defined, but only one can be active at a time.
Robot can be jogged along the axes of the work objects, object frame.
© ABB Group
November 28, 2023 | Slide 71
Work Object Definition Method (page 76 in pocket guide)
In the jogging window activate the TCP that you will use to define Workobject
Menu
Program data
Select wobjdata and tap Show Data
Select New…
Name work object
Press OK
Press Edit
Select Define
Select ‘3 points’ for user frame and ‘No Change’ for Object frame definition
Jog the tool to the User X1 point select and Modify Position
Repeat for User X2 and User Y1
Press OK and view the calculated result
Press OK to close
You will need to activate your workobject in the Jogging window in order to program or jog
relative to it.
Produced by Simon Turner
© ABB Group
November 28, 2023 | Slide 72
Exercise 4
Exercise 4
Create a Work Object
© ABB Group
November 28, 2023 | Slide 73
Moving Circular (‘Common’ Picklist)
mid
end
© ABB Group
November 28, 2023 | Slide 74
Programming MoveC (‘Common’ Picklist)
p1
Pick MoveC here
p4 p2
p3
ModPos End target here
Start / Finish
Direction
© ABB Group
November 28, 2023 | Slide 76
Exercise 5
Exercise 5
Programming with Routines
© ABB Group
November 28, 2023 | Slide 77
Introduction to Modules
What is a module
Types of modules
© ABB Group
Backup and Restore
November 28, 2023 | Slide 78
Internal Structure of Module
© ABB Group
November 28, 2023 | Slide 79
Program Task Structure
Main
Routines Routines
Routine
© ABB Group
November 28, 2023 | Slide 80
Program Task Structure
Main
Routines Routines Routines
Routine
© ABB Group
November 28, 2023 | Slide 81
Modules Summary
A module contains routines and data’s.
The module that contains the main routine is the MainModule
System modules are always present in memory and can be used to save your
default data
Filename extensions are
© ABB Group
November 28, 2023 | Slide 82
Creating and Loading programs
New Programs can be created in the Program Editor
Program names can not start with a number
If a program allready exists, it will be overwritten
New programs are temporaraly called ’NewProgramName’
© ABB Group
November 28, 2023 | Slide 83
Saving the program in IRC5
© ABB Group
November 28, 2023 | Slide 84
The Modules view
Select the modules tab from the Program Editor
Use the file menu to create, load, save or delete individual modules
2
Produced by Simon Turner
© ABB Group
November 28, 2023 | Slide 85
Backup Structure
Copy of
Systems
‘home’
folder
TASKS
© ABB Group
November 28, 2023 | Slide 86
Backup and Restore Exercise
Exercise 6
Backup and Restore System
© ABB Group
November 28, 2023 | Slide 87
Logical Instructions (‘Common’ Picklist)
© ABB Group
November 28, 2023 | Slide 88
Logical Instructions (‘Common’ Picklist)
WaitUntil di1=1;
© ABB Group
November 28, 2023 | Slide 89
Exercise 7
Exercise 7
Waiting for Inputs and Time
© ABB Group
November 28, 2023 | Slide 90
Communication Instructions (‘Communicate’ Picklist)
Num = 8388608
Dnum = 4503599627370496
© ABB Group
November 28, 2023 | Slide 91
Communication Instructions (‘Communicate’ Picklist)
© ABB Group
November 28, 2023 | Slide 92
Communication Instructions (‘Communicate’ Picklist)
TPShow - is used to switch the window on the FlexPendant.
TPShow TP_PROGRAM;
The Production Window will be active if the system is in AUTO mode.
Or
The Program Editor will be active if the system is in MAN mode.
TPShow TP_LATEST;
Show the previous FlexPendant Window before the current one.
© ABB Group
November 28, 2023 | Slide 93
Exercise 8
Exercise 8
Operators Log Messages
© ABB Group
November 28, 2023 | Slide 94
Logical Instructions (‘Common’ Picklist)
© ABB Group
November 28, 2023 | Slide 95
Logical Instructions (‘Common’ Picklist)
Exercise 9
Decision making with ‘IF’
© ABB Group
November 28, 2023 | Slide 97
Communication Instructions (‘Communicate’ Picklist)
© ABB Group
November 28, 2023 | Slide 98
Logical Instructions (‘Common’ Picklist)
WHILE reg1> 0 DO
rCircle;
Decr reg1;
ENDWHILE
Repeats the instructions in the WHILE loop as long as
reg1 > 0
WHILE Condition DO... ENDWHILE
© ABB Group
November 28, 2023 | Slide 99
Exercise 10
Exercise 10
While
© ABB Group
November 28, 2023 | Slide 100
Cycle Timing Instructions (‘System & Time’ Picklist)
© ABB Group
ClkStop clock1;
November 28, 2023 | Slide 101
ClkRead()
ClkReset clock1;
ClkStart clock1;
MoveJ *, v1000, fine, tool0;
ClkStop clock1;
TPWrite “Cycle Time = ”\Num:=ClkRead(clock1);
© ABB Group
November 28, 2023 | Slide 102
TPReadFK (‘Communicate’ Picklist)
TPReadFK - Writes text on the functions keys and records the selected key
Program execution waits until one of the function keys is pressed
A numeric value 1..5 is returned to a register
© ABB Group
November 28, 2023 | Slide 103
TEST (‘Prog.Flow’ Picklist)
© ABB Group
November 28, 2023 | Slide 104
Course Objectives
Safety requirements for basic programming and operation
System warm start up, shut down and error recovery
Basic program operation
Basic production programming techniques
Editing program instructions to maximise efficiency
Create and use routines
Use input output instructions
Flexpendant communication instructions
Numerical data instructions
Saving and opening programs
© ABB Group
November 28, 2023 | Slide 105
© ABB Group
November 28, 2023 | Slide 106