3HAC066559 AM SafeMove For RW7-En
3HAC066559 AM SafeMove For RW7-En
3HAC066559 AM SafeMove For RW7-En
Application manual
SafeMove
Trace back information:
Workspace 20A version a11
Checked in 2020-03-11
Skribenta version 5.3.033
Application manual
SafeMove
RobotWare 7.0.2
Table of contents
Overview of this manual ................................................................................................................... 9
Product documentation .................................................................................................................... 11
Safety ................................................................................................................................................ 13
1 Introduction 15
1.1 Overview of functional safety ............................................................................... 15
1.2 Safety ............................................................................................................. 18
1.2.1 Safety aspects for the safety module and SafeMove ...................................... 18
1.2.2 Standards conformance ........................................................................... 19
1.2.3 Specific safety requirements ..................................................................... 20
1.2.4 Safe design of SafeMove .......................................................................... 21
1.2.5 Certifications .......................................................................................... 23
1.2.6 Conclusion ............................................................................................. 24
1.3 Limitations ....................................................................................................... 25
1.4 Terminology ..................................................................................................... 28
1.5 Abbreviations and acronyms ............................................................................... 29
2 SafeMove functions 31
2.1 Overview of SafeMove functions .......................................................................... 31
2.2 General functions .............................................................................................. 33
2.2.1 Manual Operation Supervision ................................................................... 33
2.2.2 Contact Application Tolerance (CAP) .......................................................... 34
2.3 Synchronization functions ................................................................................... 36
2.3.1 Software synchronization .......................................................................... 36
2.3.2 Hardware synchronization ........................................................................ 37
2.4 Supporting functions .......................................................................................... 39
2.4.1 Safe Brake Ramp .................................................................................... 39
2.5 Supervision functions ........................................................................................ 40
2.5.1 Stand Still Supervision (SST) ..................................................................... 40
2.5.2 Axis Speed Supervision (ASP) ................................................................... 42
2.5.3 Tool Speed Supervision (TSP) ................................................................... 43
2.5.4 Axis Position Supervision (APO) ................................................................ 45
2.5.5 Tool Position Supervision (TPO) ................................................................ 47
2.5.6 Tool Orientation Supervision (TOR) ............................................................ 48
2.5.7 Control Error Supervision ......................................................................... 49
3 Installation 51
3.1 Hardware ......................................................................................................... 51
3.1.1 Safety module ........................................................................................ 51
3.2 Software .......................................................................................................... 52
6 Configuring SafeMove 93
6.1 Recommended working procedure ....................................................................... 93
6.2 Preparations .................................................................................................... 95
6.3 Configure system parameters .............................................................................. 96
6.4 Set up safety user grants .................................................................................... 97
6.5 Starting Visual SafeMove .................................................................................... 99
6.6 Configure Manual Operation Supervision ............................................................... 100
6.7 Configure the robot ............................................................................................ 101
6.8 Configure additional axes ................................................................................... 103
6.9 Configure the synchronization position .................................................................. 104
6.10 Configure the tools ............................................................................................ 105
6.11 Configure safe I/O ............................................................................................. 108
6.12 Configure the zones ........................................................................................... 110
6.13 Configure the ranges ......................................................................................... 113
6.14 Global supervision functions ............................................................................... 116
6.15 Configure the supervision functions ...................................................................... 117
6.16 Configure other functions ................................................................................... 127
6.17 Save the configuration ....................................................................................... 129
6.18 Load the configuration to the safety controller ........................................................ 130
6.18.1 Loading a safety configuration using RobotStudio ......................................... 130
6.19 Validate the configuration ................................................................................... 131
6.20 Restore configuration ......................................................................................... 143
6.21 Reset safety controller to factory settings .............................................................. 144
6.22 Upgrading and installing new systems .................................................................. 145
8 Maintenance 151
8.1 Required maintenance activities .......................................................................... 151
Index 187
Usage
This manual should be used during installation and configuration of the safety
module, SafeMove, and the functional safety options.
Prerequisites
The reader should have the required knowledge of:
• mechanical installation work
• electrical installation work
• working with industrial robots
• using RobotStudio
• personal safety, see Safety manual for robot - Manipulator and IRC5 or
OmniCore controller.
References
Reference Document ID
Application manual - PROFINET Controller/Device 3HAC066558-001
Application manual - EtherNet/IP Scanner/Adapter 3HAC066565-001
Operating manual - RobotStudio 3HAC032104-001
Safety manual for robot - Manipulator and IRC5 or OmniCore 3HAC031045-001
controller
Product manual - OmniCore C30 3HAC060860-001
Technical reference manual - RAPID Instructions, Functions and 3HAC065038-001
Data types
Product specification - Robot stopping distances according to 3HAC048645-001
ISO 10218-1
Technical reference manual - System parameters 3HAC065041-001
Revisions
Revision Description
A Released with RobotWare 7.0.2.
Product documentation
Categories for user documentation from ABB Robotics
The user documentation from ABB Robotics is divided into a number of categories.
This listing is based on the type of information in the documents, regardless of
whether the products are standard or optional.
All documents can be found via myABB Business Portal, www.myportal.abb.com.
Product manuals
Manipulators, controllers, DressPack/SpotPack, and most other hardware is
delivered with a Product manual that generally contains:
• Safety information.
• Installation and commissioning (descriptions of mechanical installation or
electrical connections).
• Maintenance (descriptions of all required preventive maintenance procedures
including intervals and expected life time of parts).
• Repair (descriptions of all recommended repair procedures including spare
parts).
• Calibration.
• Decommissioning.
• Reference information (safety standards, unit conversions, screw joints, lists
of tools).
• Spare parts list with corresponding figures (or references to separate spare
parts lists).
• References to circuit diagrams.
Application manuals
Specific applications (for example software or hardware options) are described in
Application manuals. An application manual can describe one or several
applications.
An application manual generally contains information about:
• The purpose of the application (what it does and when it is useful).
• What is included (for example cables, I/O boards, RAPID instructions, system
parameters, software).
• How to install included or required hardware.
• How to use the application.
• Examples of how to use the application.
Operating manuals
The operating manuals describe hands-on handling of the products. The manuals
are aimed at those having first-hand operational contact with the product, that is
production cell operators, programmers, and troubleshooters.
Safety
Safety regulations
Before beginning mechanical and/or electrical installations, ensure you are familiar
with the safety information in the product manuals for the robot.
The integrator of the robot system is responsible for the safety of the robot system.
1 Introduction
1.1 Overview of functional safety
Purpose
The purpose of the safety module and the functional safety options is to provide
a robust and easy-to-use safety controller in the robot system. Functional safety
includes a complete software and hardware solution that is fully integrated with
the robot controller and the RobotStudio programming environment.
SafeMove is the main functional safety option, but the safety module can also be
used in various applications without the SafeMove option. For example to
communicate with a safety PLC through safe fieldbus communication, or when
using the keyless mode selector.
SafeMove functions
When using SafeMove, the safety controller ensures a high safety level in the robot
system by using supervision functions that can stop the robot. Note that the safety
module and the functional safety options is one component in the safety system
of a complete robot cell, normally complemented by other equipment (for example
light barriers) for detecting the whereabouts of the operator.
Function Description
Tool supervision Protects the operator and enhances machine and equipment safety
functions by supervising the position (Tool Position Supervision), speed (Tool
Speed Supervision) and orientation (Tool Orientation Supervision)
of the tool.
Axis supervision Protects the surroundings by supervising the axis position (Axis
functions Position Supervision) and the axis speed (Axis Speed Supervision).
Standstill supervision Supervises the stand-still of robot axes without having to switch the
robot to Motors Off. It enables operators to perform tasks in the
immediate vicinity of the robot.
Contact application Allows the robot to be in contact with the work-piece in limited areas.
tolerance This can for example be used in applications where the robot is
used for grinding or during tool change.
Cyclic brake check Supervises that the brakes are checked with a cyclic interval.
Stop functions Triggers stop of the robot using safe fieldbus inputs from the safety
PLC.
Visual SafeMove
The safety module option gives you access to the Visual SafeMove configurator
in RobotStudio. With Visual SafeMove you can:
• configure and visualize supervision functions in a 3D environment.
• configure stop functions, such as automatic stop.
• configure Cyclic Brake Check.
• configure safe signals (safe Ethernet communication and I/Os)
• configure signal logics.
• configure system status outputs.
Basic approach
This is the general approach for setting up the safety module and SafeMove.
1 Connect the safety controller to other safety hardware and configure the safe
I/O connections.
2 Configure the settings for the SafeMove functions via Visual SafeMove.
3 Download the configuration to the the safety controller. Restart the controller.
4 Synchronize the safety controller.
5 Make sure the activation input signals are activating the desired supervision
functions.
6 Validate the configuration.
Requirements
Robust supervision functionality in SafeMove requires correct settings of payload
and additional axes, since this will affect the calculated accepted servo lag. Please
also note that external forces applied on the manipulator can cause a negative
influence on the supervision functions, since the servo lag might differ from the
calculated values, due to such external forces.
DANGER
1.2 Safety
Overview
The safety module is an integrated safety controller in the robot controller, with
the purpose of providing safety functionality for the robot. Safe output and input
signals are typically connected to cell safety circuitry by safe communication with
a safety PLC. The safety PLC can take care of interlocking in the robot cell, for
example, in order to prevent robot and operator to enter a the same area at the
same time.
In this chapter we describe how the safety module and SafeMove comply with
relevant safety standards and regulations.
Note
The safety module and SafeMove is only a part of the robot system, it is the
responsibility of the user to do a risk assessment of the robot system. It is also
the responsibility of the user of SafeMove to ensure that the robot system is
designed and installed in accordance with the safety requirements set forth in
the standards and regulations of the country where the robot system is installed.
Standards
The safety module and SafeMove has been designed to fulfill applicable parts of
the following standards.
• EN ISO 12100:2010 Safety of machinery - General principles for design -
Risk assessment and risk reduction
• EN 60204-1:2006/A1:2009 Safety of machinery - Electrical equipment of
machines - Part 1: General requirements
• EN ISO 10218-1:2011, Robots for industrial environments - Safety
requirements - Part 1: Robot
• EN 61000-6-2:2005 EMC, Generic immunity
• EN 61000-6-4:2007/A1:2011 EMC, Generic emission
• EN ISO 13849-1:2015 Safety of machinery - Electrical equipment of machines
- Part 1: General requirements
EN ISO 13849-2:2012 Safety of machinery - Safety-related parts of control
systems - Part 2: Validation
Overview
SafeMove has two important types of supervision functionality.
The first one being to ensure that the axis computer and the drive system are
working correctly, making the robot follow the ordered value from the main computer
as expected.
The second being to supervise the robot position and speed and stopping the robot
or setting output signals to indicate a hazard.
Category 3 supervision
The supervision complies with category 3, that is, two separate channels shall
always give the same result. One channel consists of the axis computer with the
drive system, motors, resolvers, and measurement system. The second channel
consists of the ordered value from the main computer. These channels are
compared using the SafeMove evaluation circuits, which in itself is dual channel.
1.2.5 Certifications
Overview
The safety module and SafeMove has been certified by external organizations as
described below.
Certifications by UL
The safety controller DSQC1015, and included software, is approved by UL
according to the following standards:
• UL 1740, Standard for Robots and Robotic Equipment
• ANSI/RIA R15.06, Industrial Robots and Robotic Systems
• CAN/CSA Z434-14, Industrial Robots and Robot Systems - General Safety
Requirements
• CAN/CSA C22.2 No. 73-1953, Test of Electrically Operated Machine Tools
1.2.6 Conclusion
Conclusion
As has been shown above and confirmed by third party certifications, the safety
module and SafeMove fulfills all relevant current safety standards globally.
1.3 Limitations
Note
YuMi robots with SafeMove requires using the enabling device to enable the
motors in manual mode. For more information, see:
Product manual - IRB 14050
Note
WARNING
Supported tracks
SafeMove supports all ABB track motion units.
Supported positioners
SafeMove supports positioners that are single axis mechanical units. Positioners
with several axes are treated as multiple single axes, for example two axes
positioners will be treated by SafeMove as two single axes and can be monitored
as such using axis supervision.
Positioners that are used with activation/deactivation feature, is not supported.
The axes of the positioner must be active at all times.
Tool changer
SafeMove Pro supports up to 16 different tools. All included tools must have their
appropriate settings in the configuration file. The selection of tool must be
supervised using a safe fieldbus.
No deactivation
Additional axes that are used with activation/deactivation feature are not supported.
If additional axes are to be used, they must also be active at all times.
Independent joint
Independent joint cannot be monitored by SafeMove.
Responsive jogging
Category 1 stop is deactivated in manual mode when responsive jogging is active.
This is because a robot that is stopped with a category 1 stop follows its
programmed path while decelerating. When using responsive jogging there is no
defined path available.
Note
SoftMove
When SafeMove is used together with SoftMove there is a risk for servo lag
problems. The recommended action is to add a Contact Application Tolerance
(CAP) in the area where SoftMove is active.
For more information about SoftMove, see Application manual - SoftMove.
1.4 Terminology
Term list
Term Definition
Category 0 stop Stop by immediate removal of power to the actuators. Mechan-
ical brakes are applied.
A robot that is stopped with a category 0 stop does not follow
its programmed path while decelerating.
Category 1 stop Controlled stop with power available to the actuators to achieve
the stop. Power is removed from the actuators when the stop
is achieved.
A robot that is stopped with a category 1 stop follows its pro-
grammed path while decelerating.
Occupationally safe Safe for a person to be in an area.
Operationally safe Safe for the machinery but not safe for persons to enter the
area.
Safe input Dual monitored digital input.
Safe output Dual monitored digital output.
Safety controller A safety board used with the robot controller, handling Safe-
Move functionality.
Overview
This section specifies typical abbreviations and acronyms used in this manual.
Abbreviatons/acronyms list
Abbreviation/acronym Description
APO Axis Position Supervision
ASP Axis Speed Supervision
CAP Contact Application Tolerance
SST Stand Still Supervision
TOR Tool Orientation Supervision
TPO Tool Position Supervision
TSP Tool Speed Supervision
2 SafeMove functions
2.1 Overview of SafeMove functions
Overview
The SafeMove functions can be divided into the following categories:
• General functions, see:
- Manual Operation Supervision on page 33
- Contact Application Tolerance (CAP) on page 34
• Synchronization functions, see:
- Software synchronization on page 36
- Hardware synchronization on page 37
• Supporting functions, for example verification of brakes, see:
- Safe Brake Ramp on page 39
• Supervision functions, can stop the robot or set a safe output signal, see:
- Stand Still Supervision (SST) on page 40
- Axis Speed Supervision (ASP) on page 42
- Tool Speed Supervision (TSP) on page 43
- Axis Position Supervision (APO) on page 45
- Tool Position Supervision (TPO) on page 47
- Tool Orientation Supervision (TOR) on page 48
- Control Error Supervision on page 49
for setting a speed limitation in specific areas (Tool Speed Supervision) or for
protecting equipment being hit by the robot (Tool Position Supervision).
Global functions are general functions that are active regardless of the position of
the robot. It could for example be a general speed limitation activated when the
cell door is opened.
For more information, see The Global Functions button on page 62.
Combining functions
The supervision functions can be used separately or in a variety of combinations.
DANGER
Functionality
While Manual Operation Supervision is active, a supervision makes sure that the
tool center point (TCP), wrist center point (WCP), and elbow speed does not exceed
250 mm/s (unless a lower value is configured).
Manual Operation Supervision overrides safety functions by muting stops from
the safety controller due to supervision functions.
Note
Settings
The following parameters can to be configured for Manual Operation Supervision:
• Max speed in manual mode.
See Configure Manual Operation Supervision on page 100.
Function activation
Manual Operation Supervision is activated by switching to manual mode.
Functionality
Contact Application Tolerance relaxes the Control Error Supervision (servo lag)
to a higher value if all configured axes are within the defined axis range, or the
TCP is within the defined zone, and the activation signal is 0 (if used).
Contact Application Tolerance can be used, for instance, in machine tending, when
the servo loop gain is reduced (soft servo), or during Force Control. It is also useful
when external forces are applied to the robot, for example during tool change.
If the robot is within the defined range/zone, then the safety level is considered to
be operationally safe rather than occupationally safe. That means it is not safe for
personnel to be in the range/zone defined for Contact Application Tolerance.
For axis ranges, both reference value and measured value for all axes must be
within the defined range to be able to activate the relaxed control error. For zones,
both reference value and measured value for the TCP must be within the defined
zone to be able to activate the relaxed control error.
Up to 9 axes can be supervised simultaneously.
WARNING
When the Contact Application Tolerance is active then the dual channel safety
tolerance is reduced with the configured value. This must be considered in the
design of the robot application.
Settings
The following settings can be configured for Contact Application Tolerance:
• An axis range or a zone to apply Contact Application Tolerance for.
• Permissible control error for each axis, in degrees or mm on arm side.
• Set an output signal if a violation occurs.
• Set a status signal when the function is active.
How to define these settings is described in Configuring Contact Application
Tolerance on page 124.
Contact Application Tolerance can be used in combination with all other SafeMove
functions.
Limitations
Contact Application Tolerance is not considered to be active if the run chain is
open.
Related information
Control Error Supervision on page 49.
Software synchronization
Software synchronization is a function that makes sure that the safety controller
has the correct information regarding robot position.
Unsynchronized state can, for example, occur:
• If one or more axes were moving during shutdown or power off.
• After a failed synchronization.
Note
Functionality
Software synchronization is initiated from the FlexPendant. How to execute a
software synchronization is described in section Performing a synchronization on
page 155.
If the synchronization attempt is unsuccessful, the synchronization procedure must
be executed again until successful.
Note
Settings
The following settings need to be configured for software synchronization:
• Status signal.
• Angles and positions of robot (and additional axes) at the synchronization
position.
Related information
Configure the synchronization position on page 104
Software synchronization guidelines on page 155.
Recovery after safety violation on page 149.
Hardware synchronization
Hardware synchronization is a function that makes sure that the robot calibration
is correct by using a physical synchronization switch.
Unsynchronized state can, for example, occur:
• If one or more axes were moving during shutdown or power off.
• After a failed synchronization.
Note
Functionality
The robot must move to a safe synchronization position to ensure that the safety
controller and the robot controller are synchronized. The safe synchronization
position is defined during configuration and stored in the safety controller.
The robot must move to the safe synchronization position and activate a switch.
When the switch is activated, the safety controller assumes that the robot revolution
counters are correct. It also calculates the arm position from the motor positions,
the gear ratio, and its internal revolution counter. If the position matches the stored
synchronization position within half a motor revolution, then the synchronization
is assumed to be correct.
If the synchronization is correct, the safety controller then sends a message to the
robot controller, confirming that the safety controller is synchronized to its
mechanical units, and continues with its regular operation.
Note
Settings
The following settings need to be configured for hardware synchronization:
• Synchronization signal.
• Angles and positions of robot (and additional axes) at the synchronization
position.
Limitations
• The safe sync position must be within reach for the robot. It must not be a
singularity, that is all six axis must have unique positions.
Related information
Configure the synchronization position on page 104
Hardware synchronization guidelines on page 157.
Recovery after safety violation on page 149.
Functionality
When a category 1 stop is triggered by the safety controller, the motors are used
for a controlled deceleration along the planned motion path. Safe Brake Ramp
supervises this deceleration. If the deceleration is too slow, a category 0 stop is
triggered. After 1 second, a category 0 stop is always triggered regardless.
A category 1 stop usually stops faster than the margins for Safe Brake Ramp, so
under normal circumstances Safe Brake Ramp does not trigger.
Note
Depending on the application, Safe Brake Ramp may trigger more often, for
example for tilted robot or heavy load. This results in a category 0 stop.
Settings
For track motions and other additional axes, the parameters Brake Ramp Limit
and Ramp Delay have to be set. The parameter Start Speed Offset is used for
both manipulator and all additional axes.
Function activation
Safe Brake Ramp cannot be dynamically activated/deactivated. If it is configured
to be active, it is always active.
Limitations
• Safe Brake Ramp only supervises category 1 stops initiated by the safety
controller. Stops initiated elsewhere, e.g. by the robot controller, are not
supervised.
Related information
Category 1 stop (see Terminology on page 28)
Category 0 stop (see Terminology on page 28)
Explanation of Safe Brake Ramp on page 71
Functionality
Stand Still Supervision can supervise that a robot is standing still even if the servo
and drive system are in regulation. If any supervised axis starts to move, Stand
Still Supervision will cause a category 0 stop.
When Stand Still Supervision is active for all axes (including all additional axes),
the operator is safe from harm related by robot motion when entering the working
space of the robot.
8 different sets of up to 9 axes can be defined. When Stand Still Supervision is
activated for a set, all axes in that set are supervised.
DANGER
Working under an axis affected by gravity which has no balancing may require
a safety performance level (PL) "e", which is not provided by SafeMove. If this
kind of work is intended, the risk must be added to the risk analysis of the
installation and eliminated by other means (for example additional mechanical
stops).
DANGER
It is not allowed to enter the working space of the robot if a Contact Application
Tolerance function is active, even if a Stand Still Supervision function is active
at the same time.
DANGER
WARNING
Safe Stand Still is not active in manual operating mode and shall therefore not
be used to guarantee operator safety in that mode.
Note
If the robot tries to move due to an error during active Stand Still Supervision,
SafeMove will detect this and initiate a stop. Since there is a certain reaction
time involved a slight jerk may occur.
Settings
The following parameters can be configured for Stand Still Supervision:
• Assignment of safe inputs for activation of Stand Still Supervision.
• Which axes to supervise, with specified stand still measurement tolerance,
for each stand still set.
• Set an output signal if a violation occurs.
• Set a status signal when the function is active.
See Configuring Stand Still Supervision on page 125.
Function activation
Stand Still Supervision is activated by a safe input signal, or is permanently active
if only output signal and no stop is used.
Note
If SafeMove becomes unsynchronized, the robot will stop and the Stand Still
Supervision function will be deactivated. A movement with reduced speed is
possible.
Limitations
• Stand Still Supervision is only available for SafeMove Pro, see Functional
safety options on page 16.
Functionality
Supervision of the speed for up to 9 axes (robot axes and additional axes). Up to
8 sets can be configured.
If any of the supervised axes is outside its allowed speed, the safety controller
triggers. This violation will cause a category 0 stop, a category 1 stop, and set an
output signal, depending on the configuration.
WARNING
Axis Speed Supervision is not active in manual operating mode and shall therefore
not be used to guarantee operator safety in that mode.
Settings
The following parameters can be configured for Axis Speed Supervision:
• An optional axis range or a zone for which the Axis Speed Supervision is
applied.
• Which axes to supervise.
• Maximum speed and minimum speed, defined per axis.
• Category 0 stop, category 1 stop, or no stop if a violation occurs.
• Set an output signal if a violation occurs.
• Set a status signal when the function is active.
• Assignment of safe input for activation of Axis Speed Supervision.
How to define these settings is described in Configuring Axis Speed Supervision
on page 119.
Function activation
Axis Speed Supervision is activated by a safe input signal, or is permanently active.
Limitations
• Axis Speed Supervision is only available for SafeMove Pro, see Functional
safety options on page 16.
• The highest speed limit that can be configured is 600 degrees/s for rotational
axes and 10000 mm/s for linear axes.
Functionality
Tool Speed Supervision supervises the linear speed (in mm/s) for:
• TCP for the active safety tool.
• Arm check point, "elbow".
(The position is depending on robot type and can be user defined, but is
located around axis 3).
• Wrist center point (WCP), in manual mode only.
• A number of configurable speed supervised points on the current tool.
If any of these points exceed the maximum speed, the safety controller triggers.
If the TCP moves slower than the minimum speed, the safety controller will also
trigger. The speed violation will cause a category 0 stop, a category 1 stop, or set
an output signal, depending on the configuration.
There can be up to 8 global sets of Tool Speed Supervision plus one for each zone
and axis range (up to 16 zones and 8 axis ranges).
WARNING
Tool Speed Supervision is not active in manual operating mode and shall therefore
not be used to guarantee operator safety in that mode.
CAUTION
Since the TCP speed is determined by the programmed speed it is very important
that the TCP of the active tool in SafeMove corresponds to the active tool of the
robot program.
Note
The resultant robot TCP speed can in some situations be higher than the
programmed TCP speed. This could happen for some robot types if the move
instructions are of type MoveJ or MoveAbsJ. If this occurs, either increase the
Max Speed for Tool Speed Supervision, or try to add intermediate robot targets
in the RAPID program.
Note
When the robot is running in manual mode, neither the elbow point nor the TCP
point will exceed 250 mm/s. When the robot is running in auto mode, the robot
controller will not consider the elbow speed when generating the path, only the
defined TCP speed and reorientation speed. (If additional axis exists in the
system, the speed data for this will also be considered.)
The result from this is that the elbow speed is sometimes higher than the
programmed TCP speed. Since Tool Speed Supervision supervises the TCP,
the elbow, and the speed supervision points on the tool, the speed of these points
must be taken into account when creating the RAPID program.
Settings
The following parameters can be configured for each set of Tool Speed Supervision:
• An optional axis range or a zone for which the Tool Speed Supervision is
applied.
• Maximum allowed speed (in mm/s) for TCP, elbow, and speed supervised
points.
• An optional minimum speed for the TCP.
• Category 0 stop, category 1 stop, or no stop if a violation occurs.
• Set an output signal if a violation occurs.
• Set a status signal when the function is active.
• Assignment of a safe input for activation, or set as permanently active.
How to define these settings is described in Configuring Tool Speed Supervision
on page 118.
Function activation
Tool Speed Supervision is activated by a safe input signal, or is permanently active.
Limitations
• Tool Speed Supervision is only available for SafeMove Pro, see Functional
safety options on page 16.
• The highest speed limit that can be configured is 600 degrees/s for rotational
axes and 10000 mm/s for linear axes.
Functionality
Supervision of up to 9 axes (robot axes and additional axes) in each set. Up to 8
sets can be configured, one for each safe axis range.
If an axis in an active set exceeds its allowed range, the safety controller triggers.
This violation will cause a category 0 stop, a category 1 stop, and/or set an output
signal, depending on the configuration.
Settings
The following parameters can be configured for Axis Position Supervision:
• A safe range to which it should be applied.
• Category 0 stop, category 1 stop, or no stop if an axis is outside its range.
• Set an output signal if an axis is outside its range.
• Set a status signal when the function is active.
• Assignment of safe inputs for activation of each set of axis ranges, or set as
permanently activated.
How to define these settings is described in Configuring Axis Position Supervision
on page 123.
Function activation
Axis Position Supervision is activated by a safe input signal, or is permanently
active.
Examples
This example shows a robot with defined axis ranges for axes 2 and 3 in three
different positions. The function Axis Position Supervision supervises that axis 2
is within range x2 and that axis 3 is within range x3.
In positions A and B, all supervised axes are within the allowed ranges. In position
C, axis 3 is not within the defined range.
xx0600003331
Note
The ranges define axis angles, not the position of the TCP. In robot position C,
the TCP is still within what seems to be a safe range, but axis 3 is outside its
defined range.
Limitations
WARNING
Be aware of that the braking starts when the axis exceeds the configured limit
value.
The braking distance depends on robot type, load, position and speed, and
therefore an additional stopping distance may sometimes be required to achieve
the desired safety.
Functionality
Tool Position Supervision supervises that the robot and the active safety tool (and
any configured encapsulation around them) are within the defined zone. Up to 32
sets can be configured, max two per safe zone.
If the robot is outside its allowed zone, the safety controller triggers. This violation
will cause a category 0 stop, a category 1 stop, and/or set an output signal,
depending on the configuration.
Settings
The following parameters can be configured for Tool Position Supervision:
• A safe zone to which it should be applied.
• Assignment of a safe input for activation, or set as permanently active.
• Category 0 stop, category 1 stop, or no stop if the robot violates its zone
limits.
• Set an output signal if the robot violates its zone limits.
• Set a status signal when the function is active.
• If the upper arm should be included in the supervision, or only the tool.
• If the robot should be allowed only inside or only outside of the zone.
How to define these settings is described in Configuring Tool Position Supervision
on page 117.
Function activation
Tool Position Supervision is activated by a safe input signal, or is permanently
active.
Limitations
• Tool Position Supervision is only available for SafeMove Pro, see Functional
safety options on page 16.
WARNING
Be aware of that the braking starts when the tool or robot exceeds the configured
limit value.
The braking distance depends on robot type, load, position and speed, and
therefore an additional stopping distance may sometimes be required to achieve
the desired safety.
Functionality
Tool Orientation Supervision supervises the tool orientation. If the tool orientation
is outside its allowed tolerance, the safety controller triggers. This violation will
cause a category 0 stop, a category 1 stop, or set an output signal, depending on
the configuration.
Up to 8 sets can be configured.
CAUTION
Settings
The following parameters can be configured for Tool Orientation Supervision:
• An optional axis range or a zone for which the Tool Orientation Supervision
is applied.
• Allowed orientation of the tool in x and z directions including a tolerance.
• Assignment of a safe input for activation, or set as permanently active.
• Category 0 stop, category 1 stop, or no stop if a violation occurs.
• Set an output signal if the tool orientation violates its limits.
• Set a status signal when the function is active.
How to define these settings is described in Configuring Tool Orientation
Supervision on page 121.
Function activation
Tool Orientation Supervision is activated by a safe input signal, or is permanently
active.
Limitations
• Tool Orientation Supervision is only available for SafeMove Pro, see
Functional safety options on page 16.
Functionality
The control error (servo lag) is the absolute value of the difference between the
reference value and the measured value of the motor position of each axis.
Control Error Supervision is activated automatically after the safety controller has
been synchronized with the robot position.
When Control Error Supervision triggers, the following happens:
• The robot is stopped with a category 1 stop.
• An event log message (90511) is sent to the robot controller.
en0700000723
Function activation
Control Error Supervision is always active. It can only be relaxed by Contact
Application Tolerance.
3 Installation
3.1 Hardware
Safety module
The safety module is installed at delivery inside the main computer of the robot
controller. For more information, see the product manual for the controller.
3.2 Software
Install RobotStudio
The configuration environment, Visual SafeMove is included in the standard
installation of RobotStudio.
Action
1 Install RobotStudio.
Visual SafeMove is included in both the Minimal and Full version of RobotStudio.
2 Start RobotStudio.
3 Start Visual SafeMove by going to the Controller tab on the ribbon, click Safety and
select Visual SafeMove.
Note
RobotStudio must be of the same version or later than the RobotWare used.
Action
1 Start RobotStudio with a virtual controller (with or without a station) or connect a real
controller.
2 In the Controller tab, click Online Monitor.
(Not needed when running a RobotStudio station.)
3 In the Controller tab, click Safety, then select Visual SafeMove.
Prerequisites
• Some functionality is only available for SafeMove Pro, see Functional safety
options on page 16.
• Only a user with the grant Safety Services is allowed to download a
configuration. See Set up safety user grants on page 97.
Limitations
The simulation functions are only available when running a RobotStudio station.
xx1500000804
Parts Description
A The Visual Safe- Displays groups of icons organized in a logical sequence of
Move ribbon function.
The Modify tab Is used by some functions in the Visual SafeMove ribbon to
display additional functionality.
B Visual SafeMove Displays all available SafeMove functions.
browser
C Visual SafeMove Displays all available properties and settings of the selected
Properties browser SafeMove function.
D Graphics window Is used to to visualize and configure safety zones in the Robot-
Studio station.
When not running a RobotStudio station, Online Monitor is
used to visualize the robot.
E Output window The output window displays information about events that occur
in RobotStudio, both general events and Visual SafeMove
events.
SafeMove Viola- Displays all violations that has occurred since the last restart.
tions window Click a violation in the list to show a detailed view of all geo-
metries that are related to the violation. The geometries that
are not related are automatically hidden.
The violations window can also be used to view a violation
when RobotStudio is connected to a real robot.
The tabs
The Visual SafeMove tab and the Modify tab contains groups of commands
organized in a logical sequence of functions that simplifies the configuration of
SafeMove, see The Visual SafeMove tab on page 57 and The Modify tab on page 65.
The browsers
The configured safety functions are available from the Visual SafeMove browser.
When a function is selected by clicking the node in the browser, the properties and
settings are displayed in the Visual SafeMove Properties browser, see The Visual
SafeMove browser on page 68.
Use the Visual SafeMove browser, or standard keyboard shortcuts, to cut, copy,
and paste zones both between zone types and between robots.
Tip
Robot number Upper arm in- Zone minim- Zone maxim- Robot allowed Robot not al-
cluded in Tool um speed lim- um speed lim- inside zone lowed inside
Position Su- it it zone
pervision
xx1600000060
Note
Tip
Most commands in the ribbon are also available from the Visual SafeMove
browser by right-clicking the nodes in the tree.
Configuration group
The Configuration group is used when creating, saving and loading SafeMove
configurations.
The safety configuration in RobotStudio that has not yet been written to the
controller is referred to as "local configuration". The safety configuration on the
controller is referred to as "controller configuration".
Button Description
New / Create a new controller configuration.
Controller Configuration
New / Create a new drive module configuration.
Drive Module Configuration The new configuration will be in the latest format version.
Open configuration Open a controller configuration.
The format version of the opened configuration will be kept.
Save configuration as Save the safety or geometry configuration to file.
For more information about the geometry configuration file,
see SafeMove geometry configuration file on page 169.
Import geometries Imports safety geometries such as zones, tools and robot
upper arm geometry from a safety configuration file or a
simplified configuration file generated by an external tool.
Geometries with the same name will be overwritten.
Import protected elements Imports the protected elements from the selected file. All
currently protected elements will be unprotected and the
protected elements in the selected file will be imported to
the local configuration. The protected elements checksum
of the local configuration will be the same as the selected
files protected checksum after this operation.
Button Description
Read from controller Reads the configuration from the safety controller.
Write to controller Writes the configuration to the safety controller.
Upgrade configuration to Upgrades the safety configuration to the latest format ver-
latest version sion. The checksums will be updated.
Reset to factory settings Resets the configuration in the safety controller to default
settings.
See also Reset safety controller to factory settings on
page 144.
Restore configuration Restores the configuration from file.
The file is restored as it is. It is not opened in RobotStudio.
Options group
The Options group contains display options for the Visual SafeMove user interface.
Checkbox Description
Show Labels Displays labels in the graphics window.
Tip
Most commands in the ribbon are also available from the Visual SafeMove
browser, by right-clicking the nodes in the tree.
Button Description
New Create a new tool.
Encapsulate Creates a geometry that encapsulates the selected tool.
Up to four different geometries can be used to create a more accur-
ate encapsulation of the tool.
Settings
The following settings are available in the Visual SafeMove Properties browser
after the tool has been created.
Setting Description
Make default Tool If more than one tool is configured, one of them must be selected
as default tool. The default tool will be used when no tool is selected
by input signals.
The tool that already is the default tool has a greyed out button with
the text Is default Tool.
Activation Specifies the safety signal that activates the selected tool.
The setting Permanently active is used for a tool that is always
active. This setting needs to be deactivated to be able to create
more than one tool.
Function active Specifies a safety signal that indicates that the selected tool is active.
status The setting No signal is used for a tool that is always active.
Tool data Modify the tool data, or load a tool data from the RobotStudio station.
CAUTION
Speed supervised The tool can use up to eight points to supervise the speed of the
points tool.
By default all eight points are created. It is recommended to reduce
the number of points if all points are not required depending on the
shape of the tool.
After a zone has been created, the next step is to add safety functions to the zone.
This is described in section The Modify tab on page 65.
Tip
It is recommended to change the default name of the safe zone in the Visual
SafeMove browser to a name that better corresponds to the current installation.
Settings
The following settings are available in the Visual SafeMove Properties browser
after the zone has been created.
Setting Description
Tool Speed Supervi- Used to set the priority for overlapping zones. The zone with the
sion Priority highest priority will set the speed limit for the overlapping space.
• BASE - lowest priority.
• NORMAL - normal priority.
• OVERRIDE - highest priority.
For more information, see Configure the zones on page 110.
Tip
Create a BASE zone with a low speed limit that covers the entire
robot cell. This zone is then used to protect the fence. Add NORMAL
zones for the areas where the robot performs most of the work.
Additionally, add OVERRIDE zones for any areas where the robot
is allowed to move fast.
Note
Setting Description
Vertices Displays the vertices of the safe zone. It is possible to add or delete
vertices from the Visual SafeMove Properties.
Tip
Settings
The following settings are available in the Visual SafeMove Properties browser
after the range has been created.
Setting Description
Joint The joints of the robot.
Enabled Safe range is enabled for the joint.
Lower bound The lower bound limit in degrees.
Upper bound The upper bound limit in degrees.
Invert If selected, the supervised angles for that axis will be below the
Lower bound and above the Upper bound.
Settings
The settings for the global safety functions are the same as for the safe zones and
safe ranges. For information about the settings see The Add Safety Function group
on page 66.
CAUTION
A safety stop from the safety PLC will not affect external units that may be
connected to the automatic stop input (AS) or the emergency stop input (ES) of
the robot controller. For example: external emergency stop buttons, light curtains,
door breakers, etc.
Setting Description
Trigger signal Specifies the safety signal that activates the safety stop. The signal
is set to 0 for activation.
Stop trigger status Specifies a safety signal that indicates that the the safety stop is
active. The signal is set to 0 when triggered.
The setting No signal is used if no status signal should be used.
Settings The Mode setting defines which stop mode that shall be activated
• Mode on the robot controller. The corresponding warning will be written
to the event log and presented on the FlexPendant.
• SC_AutoStop - puts the robot controller in auto stop mode
(AS).
• SC_EmergencyStop - puts the robot controller in emergency
stop mode (ES).
Settings • Category0Stop - Stop by immediate removal of power to the
• Stop category actuators. Mechanical brakes are applied.
A robot that is stopped with a category 0 stop does not follow
its programmed path while decelerating.
• Category1Stop - Controlled stop with power available to the
actuators to achieve the stop. Power is removed from the
actuators when the stop is achieved.
A robot that is stopped with a category 1 stop follows its
programmed path while decelerating.
Setting Description
Warning only, no If this checkbox is selected, the robot will not stop if a cyclic brake
stop check has not been performed on time. Only a warning will be written
to the event log and presented on the FlexPendant.
Max CBC test interval The maximum allowed time between cyclic brake checks.
Pre warning time The warning time before a cyclic brake check must be performed.
Standstill tolerance The maximum allowed movement during a cyclic brake check.
Supervision The minimum servo lag used for detecting that the cyclic brake
threshold check is performed.
Setting Description
ROB1 If a checkbox is deactivated, then cyclic brake check is deactivated
for that joint.
xx1600000063
Tip
Most commands in the ribbon are also available from the Visual SafeMove
browser, by right-clicking the nodes in the tree.
Settings
It is possible to modify the settings for the geometries from the Visual SafeMove
Properties browser.
Note
For information about global functions, see The Global Functions button on
page 62.
Settings
The following settings are available in the Visual SafeMove Properties browser,
and are common for all safety functions.
Setting Description
Activation Specifies the safety signal that activates the supervision. The signal
is set to 0 for activation.
The setting Permanently active is used for a supervision that is
always active.
Function active status Specifies a safety signal that indicates that the selected safety
function is active. The signal is set to 1 when active.
The setting No signal is used if no signal should be used.
Setting Description
Violation action • Category0Stop - Stop by immediate removal of power to the
• Stop type actuators. Mechanical brakes are applied.
A robot that is stopped with a category 0 stop does not follow
its programmed path while decelerating.
• Category1Stop - Controlled stop with power available to the
actuators to achieve the stop. Power is removed from the
actuators when the stop is achieved.
A robot that is stopped with a category 1 stop follows its
programmed path while decelerating.
• NoStop - Passive monitoring with signaling function only.
Violation action Specifies a safety signal that indicates that the the axis speed su-
• Signal pervision is violated. The signal is set to 0 at violation.
The setting No signal is used if no violation signal should be used.
Note
The following settings are available in the Visual SafeMove Properties browser,
and are individual for each safety function.
Function Setting Description
ASP Speed limits The minimum and maximum speed for each robot joint.
TOR X Vector The tolerance around the x and z axis of the tool.
Z Vector
Get vectors Gets the vectors from the active tool in RAPID. The tool tip
for active tool shows which tool is active.
(button)
CAUTION
TSP Speed limits The minimum and maximum speed for the tool.
SST Tolerances Specifies if stand still supervision is enabled and the toler-
ance for each robot joint.
Setting Description
Max speed in manual mode The max speed cannot be higher than the default value of
250 mm/s, but a lower value can be set.
Note
If reducing the max speed that SafeMove allows in manual mode, the jogging
speed of the robot has to be reduced to the same value. Change the parameter
Teach Mode Max Speed, topic Motion and type Motion Planner. See Technical
reference manual - System parameters.
Setting Description
Elbow offset If any extra equipment is attached to the upper arm, a point
• Position X, Y, Z on this equipment can be defined as a check point. The robot
will then monitor the speed of this point so that it does not
exceed 250 mm/s in manual reduced speed mode.
See Explanation of Elbow offset on page 69.
Safe Brake Ramp Data A speed offset for the Safe Brake Ramp function.
• Start Speed Offset For track motions and other additional axes, the parameters
Brake Ramp Limit and Ramp Delay have to be set. The
parameter Start Speed Offset is used for both manipulator
and all additional axes, see Explanation of Safe Brake Ramp
on page 71.
The following settings are available when right-clicking the robot parameters node:
Setting Description
Exclude from configuration Excludes the robot from the safety configuration.
This setting must be used when configuring a safe fieldbus
on robots that are not supported by SafeMove. This setting
can also be used to exclude supported robots, for example
individual robots in a MultiMove application and robots run-
ning only a safe fieldbus.
See Overview of SafeMove functions on page 31.
DANGER
z3 zb
A A
x3 y3
yb
xx1300002628
A Elbow point
x3, y3, z3 Axis 3
yb, zb Robot base
Note
The values that are entered into Elbow Offset should also be entered into the
parameter Arm Check Point, topic Motion. This is to avoid different speed
calculations between the robot controller and SafeMove in manual reduced speed
mode.
For more information, see Technical reference manual - System parameters.
Joint parameters
Setting Description
Servo lag Servo lag is the estimated lag (in radians on motor side) for the
additional axis.
For more information, see Servo Delay Factor and Servo Lag on
page 165.
Servo delay factor Estimated delay factor between reference position and measured
position (number of 4 ms units) when moving the additional axis.
(See TuneMaster, signal number 17 and 18.)
For more information, see Servo Delay Factor and Servo Lag on
page 165.
Max speed manual The maximum speed in manual mode.
mode
Setting Description
Safe brake ramp enabled Selects if safe brake ramp should be used for the additional
(check box) axis.
Ramp delay Delays the Safe Brake Ramp function. See figure below.
Default value: 200 ms.
Brake ramp limit If the actual deceleration is lower than the specified Brake
Ramp Limit, then Safe Brake Ramp will cause a category 0
stop. The value is specified for the arm side.
Start speed offset A speed offset for the Safe Brake Ramp function.
en0700000724
Synchronization node
Setting Description
Activation To use software synchronization, select Software synchron-
ization.
To use hardware synchronization, select the input signal
from the sync switch.
Synchronization status Specifies a safety signal that indicates that the safety con-
troller is synchronized The signal is set to 1 when synchron-
ized.
The setting No signal is used if no signal should be used.
ROB1 The axis position values of the robot.
• Joint
• Position
Additional axis The axis position value of the additional axis.
• Joint
• Position
4.6.1 Introduction
For instructions on how to perform the configuration, see Configure safe I/O on
page 108. For information on general rules and limitations see Safe I/O system rules
and limitations on page 85.
Introduction
The Signals view contains configuration of global safety signals (virtual signals)
to be used internally in RAPID and in the safety controller, see Global signals on
page 73. If a safe fieldbus is installed, the Signals view also contains configuration
of parameters for the safe fieldbuses and configuration of safe input and safe
output signals for the safe fieldbus in the robot controller.
The safety signals can be read from RAPID, but they can only be set from the
safety controller, see Accessing safe signals and feedback signals on page 74.
For more information on how to configure safe I/O, see Configure safe I/O on
page 108.
Configuring signals
The following safe signal settings are available.
Setting Description
Signal Name The name of the safety signal.
Default value For input signals, the default value has no significance.
For global and output signals, the default value can be used to define
constant TRUE or FALSE.
Offset The mapping of the signal.
Direction Input or output.
Signal uses Lists all readers and writers of the signal.
A signal can only have one writer, but it can have more than one
reader.
Tip
Global signals
The global signals are virtual signals that are to be used internally in RAPID and
in the safety controller. The user can create up to 2048 global signals. The signals
can be read from RAPID, but they can only be set from the safety controller, see
Accessing safe signals and feedback signals on page 74.
There is a set of predefined global signals that corresponds to safety functions
with the same names. It is allowed to change the names of these signals as long
as the signal is still mapped to the corresponding safety function. It is also allowed
to delete them as long as the function is replaced by another signal.
• DriveEnable
• LocalEmergencyStopStatus
• ManualFullSpeedMode
• ManualMode
• DriveEnableFeedback
• SafetyEnable
For a description of the safety functions, see Description of safety functions on
page 75.
Signal The signal that is currently mapped to the function (input, output,
or global).
Source The source gives information on which part of the system writes
value to the signal. This can be either Safe local I/O, Safety system,
or user defined.
The source also gives information on when a signal/alias gets its
value updated, i.e. Safe local I/O is first and Safety system is after
the pre-logic.
Mandatory True or false.
Some mappings are mandatory since they are used by the safety
controller.
Description See Description of safety functions on page 75.
Errors Displays error, for example when the mapping for a mandatory
function is missing.
Note
Function Description
DriveEnable True if power is enabled to the actuators.
DriveEnable is the safety controllers way of ensuring that
there is only power enabled to the actuators when there are
no safety violations. This is done through the superior stop
input on the panel board.
LocalEmergencyStopStatus False if the emergency stop on the FlexPendant is pressed.
This can be used to send local emergency stop status to
other devices.
ExternalEmergencyStop- False if the external emergency stop is pressed.
Status This can be used to send external emergency stop status
to other devices.
ExtComShutdownReq ii Set to True when the safe external communication is about
to be terminated, beginning in no less than 1 second. This
will happen in case of controlled shutdown, for example
during robot controller shutdown.
ExtComShutdownAck ii Only used only with ExtComShutdownReq. If True, the safety
controller is allowed to shut down before 1 second has
passed after the ExtComShutdownReq was set. For example,
this can be set to True by the PLC when preparations have
been made after ExtComShutdownReq is set to True.
ManualMode True if manual mode is selected.
ManualFullSpeedMode True if manual full speed mode is selected.
DriveEnableFeedback True if the power to the motors is enabled.
SafetyEnable The SafetyEnable function should, when possible, be con-
nected to a safe input signal from, for example, a PLC. This
signal shall be set to True as soon as communication is up
and running.
When False, all signal activated supervision functions, such
as stop configurations, will be deactivated, and DriveEnable
will be set to False, disabling robot motion.
ServiceModeActive i True if Service mode is activated.
Stop0Status False if a category 0 stop is active.
Stop1Status False if a category 1 stop is active.
Note that this will be a very brief indication since a category
1 stop is converted to a category 0 stop when all robot motion
has ceased.
SafetyControllerOperational True if the safety controller is running without errors.
It is False during start-up before SafetyEnable is set to True,
during shutdown of the controller or if there is a critical failure
of the safety controller.
i Only used for option SafeMove Basic or SafeMove Pro.
ii Only with safe fieldbus option (3023-1, 3023-2 or 3026-2).
Creating statements
Operators can be combined into complex statements.
Global signals can automatically be created from the statements by clicking Create
signals.
xx1600000054
Note
Signals between blocks are created internally and will not be available to the
user. For example the signal between the OR and the AND block in the above
picture.
Tip
First use the button Create signals to automatically create global signals from
the statement, then use cut and paste to move signals to safe inputs or outputs.
Tip
When viewing large statements, press the left mouse button to pan and use the
scroll wheel to zoom.
Note
<, <=, ==, >, Compares two integer values and Destination := Source1 < Source2
>=, != produces a Boolean result. Destination := Source1 != Source2
(smaller than, smaller/equal, equal, ...
larger than, larger/equal, not
equal)
ABS Absolute value of integer. Destination := ABS Source
COPY Copy integer value. COPY(Source, Destination1, Destina-
Copy integer value from source to tion2,...,Destination8)
up to eight destination signals.
Complex operators
These operators use a mix of bool and INT32 actuators and resultants. For a
more detailed description, see Description of the complex operators on page 80.
Operator Description
COUNT Counts number of pulses.
DELAY Timer
DECODE4LOW Integer to Boolean converter.
Decodes the binary value when for example selecting a tool.
DECODE4HIGH Integer to Boolean converter.
Decodes the binary value when for example selecting a tool.
DIV Divides two integer values with boolean error flag when dividing with
zero.
Note
Operator COUNT
This operator counts pulses on an actuator. If the Boolean actuator enable is
inactive then this operator does nothing. The integer resultant count retains its
current value.
If enable is active then count counts the number of inactive-to-active transitions
of the Boolean actuator pulse since the last active-to-inactive transition of clear.
The integer resultant count is limited by the value of the integer actuator limit.
When count reaches limit, then count will restart from 0 (zero) on the next
activation of the Boolean actuator pulse. When the resultant count is restarted
from zero the rollover resultant is activated and then deactivated on the following
execution.
xx1800002598
Operator DELAY
The delay operator is similar to the count operator, but instead of counting pulses
on an actuator it counts execution loops.
If the Boolean actuator enable is inactive then this operator does nothing. The
integer resultant count retains its current value.
If the Boolean actuator reset is activated (and enable is active) then the integer
resultant count is set to 0 (zero) and the Boolean resultant rollover is inactivated.
While enable is active, and reset is inactive, then the integer resultant count
counts the number of executions loops since the last active-to-inactive transition
of reset.
The integer resultant count is limited by the value of the integer actuator period.
When count reaches period, then count will restart from 0 (zero) on the next
execution. When the resultant count is restarted from zero and rollover is
activated until the next execution.
xx1800002599
Operator DECODE4LOW
Decodes the thee least significant bits of an integer actuator into eight individual
Boolean resultants if the fourth least significant bit of the integer actuator input
is low. I.e. for integer values between 0 and 7, (0xxx).
Maximum one output will ever be activated at the same time.
DECODE4LOW works in conjunction with the DECODE4HIGH operator to create
a 4 bits-to-16 decoder.
xx1800002600
Operator DECODE4HIGH
Decodes the thee least significant bits of an integer actuator into eight individual
Boolean resultants, if the fourth least significant bit of the integer actuator input
is high. I.e. for integer values between 8 and 15, (1xxx).
Maximum one output will ever be activated at the same time.
xx1800002601
Operator DIV
This operator divides two integer actuators and produces the quotient as an integer
resultant. If the denominator act2 is zero, then error is set and res1 keeps its
current value.
xx1800002602
Operator EDGE
The EDGE operator has two Boolean actuators, trigg and reset, and one Boolean
resultant result. When trigg is inactive then result is also inactive. When
trigg is active then the EDGE operator sets result to active upon a transition,
from inactive to active, on reset.
xx1800002603
xx1700000469
Operator MUX
The MUX operator has two integer actuators, input1 and input2, one Boolean
actuator select, and one integer resultant result. When select is inactive then
result obtains the value of input1. When select is active then result obtains
the value of input2.
xx1800002604
Operator REM
This operator divides two integer actuators and produces the remainder, modulo,
as an integer resultant. If the denominator act2 is zero, then error is set and
res1 keeps its current value.
xx1800002605
Note
The simulation functions are only available when running a RobotStudio station.
Introduction
When configuring a large number of robot systems in a factory or a large production
line, it is often desired to make the signal configurations similar or identical.
If every system has different signal names and different setups, then it will be very
difficult for the operator to understand the systems.
Therefore it is possible to create a basic configuration that can be used as a
template when configuring a new system. It is also possible to protect elements
in the configuration.
Note
There is not any automatic check of the protected elements checksum in the
robot system, this must be implemented by the customer.
Action Note/illustration
4 Save the controller configuration.
Note
Introduction
This section gives an overview of the Safety Controller control panel on the
FlexPendant. Views, buttons, and other parts of the user interface are described
in respect to their content and how they are accessed.
For more information on how to use the FlexPendant in general, see Operating
manual - OmniCore.
The safety configuration can be viewed from the Settings app.
xx1900000976
Tip
6 Configuring SafeMove
6.1 Recommended working procedure
General
This section describes the recommended working procedure when configuring
SafeMove for the first time. The working procedure helps to understand the
dependencies between the different steps. A good approach when creating a new
configuration is to start with the basic functionality. When that works as expected,
expand the application.
A prerequisite is that all steps in the hardware and software installation procedures
must have been performed, see chapter Installation on page 51.
For more information on what can be done with the configuration tool, see chapter
The Visual SafeMove user interface in RobotStudio on page 53.
Note
Some functionality is only available for SafeMove Pro, see Functional safety
options on page 16.
Basic steps
Use this procedure when configuring SafeMove.
Action See
1 Make some initial preparations. Preparations on page 95
2 Configure system parameters. Configure system parameters on page 96
3 Set the input and output size and name Application manual - PROFINET Control-
of the PROFINET internal device. ler/Device
4 Set up safety user grants. Set up safety user grants on page 97
5 Configure robot properties. Configure the robot on page 101
6 Configure the synchronization position. Configure the synchronization position on
page 104
7 Configure the SafeMove tool defini- Configure the tools on page 105
tions.
8 Configure safe I/O signals. Configure safe I/O on page 108
9 Configure zones and/or ranges. Configure the zones on page 110
Configure the ranges on page 113
10 Configure the supervision functions. Configure the supervision functions on
page 117
11 Configure other functions. Configure other functions on page 127
12 Load the configuration to the safety Load the configuration to the safety controller
controller. on page 130
13 Restart the robot controller.
14 Validate the configuration. Validate the configuration on page 131
Action See
15 Set the safety configuration to validated Setting the configuration to validated on
and lock it. page 142
Setting the configuration to locked on page 142
6.2 Preparations
Preparations
Experience shows that when starting with a clean system it is good to first configure
the robot system and make some initial preparations before configuring SafeMove.
• Create a robot system with the option SafeMove Basic or SafeMove Pro.
• Define the coordinate systems that should be used in the robot system.
• Create tool data for all needed tools, and define the TCPs, tool loads,
payloads, and arm loads.
• Create work object data for all needed fixtures and define them.
Note
Type Arm
If an axis should be excluded from Cyclic Brake Check, set the parameter Deactivate
Cyclic Brake Check for axis to On.
The maximum working area for additional axes has to be limited according to
limitations specified in section Work area for additional axes on page 26. This must
be taken into consideration when entering the parameters Upper Joint Bound and
Lower Joint Bound. (The parameter values in radians or meters on arm side.)
Type Brake
If Cyclic Brake Check is executed on an additional axis, a lowest safe brake torque
must be defined. A 5% margin is added during the test for setting the fail limit. The
parameter used is Max Static Arm Torque defined in Nm on motor side. A warning
limit is set with a higher torque value (depending on the brake).
Note
Tip
WARNING
Users must be educated appropriately before given any grants related to safety
configuration or operation.
Action
1 Start RobotStudio with a virtual controller (with or without a station) or connect a real
controller.
2 In the Controller tab, click Online Monitor.
(Not needed when running a RobotStudio station.)
3 In the Controller tab, click Safety, then select Visual SafeMove.
Action Note/illustration
1 Click on ROB_1 (1) in the SafeMove.
2 In the SafeMove Properties browser, set The max speed cannot be higher than the
Max speed in manual mode. default value of 250 mm/s, but a lower value
can be set.
See also system parameters Teach Mode
Max Speed and Use checkpoint limitation
in world in section Configure system para-
meters on page 96.
xx1600000247
Action Note/illustration
1 Click on ROB_1 in the SafeMove browser
to specify the robot properties in the
SafeMove Properties browser.
2 Under Elbow offset, set the X, Y and Z See Explanation of Elbow offset on page 69.
values for the elbow point.
3 Under Safe Brake Ramp Data, set the See Explanation of Safe Brake Ramp on
Start Speed Offset. page 71.
4 Under Base frame, select reference co- See Explanation of Base Frame on page 70.
ordinate system.
xx1500000538
Action Note/illustration
1 In the Visual SafeMove browser, select
the robot (for example ROB_1).
2 In the Visual SafeMove ribbon, click on
the Capsule.
3 Click on the shape you have just created
to select it.
4 Fill in the parameters for the shape to
specify the position and size of the shape.
xx1600000129
Action Note/illustration
1 If the axis should be part of the SafeMove
supervision, select the check box Is su-
pervised.
2 Specify Servo lag. Servo lag is the estimated lag (in radians
on motor side) for the additional axis.
For more information, see Servo Delay
Factor and Servo Lag on page 165.
3 Specify Servo delay factor. Estimated delay factor between reference
position and measured position (number of
4 ms units) when moving the additional axis.
(See TuneMaster, signal number 17 and 18.)
For more information, see Servo Delay
Factor and Servo Lag on page 165.
4 If safe brake ramp should be used for the See Explanation of Safe Brake Ramp on
axis, select the check box Safe brake page 71.
ramp enabled. Set the values for Ramp
delay, Brake ramp limit and Start speed
offset.
Some information about the additional axis is shown, but cannot be changed. This
includes joint limits, transmission gear ratio and measurement channel information.
xx1600000133
Action Note/illustration
1 Click on Synchronization in the Visual
SafeMove browser.
2 Select Activation. Software synchronization is always available
To use software synchronization only, even if hardware synchronization is con-
select Software synchronization. figured.
To also use hardware synchronization,
select the input signal from the sync
switch.
3 If a status signal should be set when the Signal definitions:
safety controller is synchronized, select 0 = not synchronized
the signal to use in Synchronization
status. 1 = synchronized
If no output signal should be used, select
No signal.
4 Jog the robot to the synchronization pos- It is also possible to specify the axis position
ition. values manually.
In the Visual SafeMove Properties
browser, click on Read current values.
Note
The tool must be correctly defined in RobotStudio for the automatic encapsulation
to work.
Action Note/illustration
1 In the SafeMove ribbon, click on the Tool
menu and select New.
Action Note/illustration
2 Select Activation. Tool signal definitions:
If no tool changer is used, select Perman- 0 = deactivate tool
ently active. 1 = activate tool
If a tool changer is used, select which in-
put signal should be used to activate this Note
SafeMove tool.
One, and only one, tool must be active at all
times.
xx1500000237
Action Note/illustration
8 Fill in the parameters for the shape to
specify the position and size of the geo-
metry.
xx1500000238
Note
Copying a tool
Action Note/illustration
1 Right-click on a tool and select Copy.
2 Right-click on the tool again and select A new tool is created with exactly the same
Paste. data as the first tool. The parameter values
can then be adjusted.
Deleting a tool
Action
1 Right-click on a tool and select Delete object.
Note
Action
1 In the SafeMove ribbon, click on the Safe IO Configurator.
2 Select the Signals view.
3 Expand Input signals,Output signals, or Global signals, depending on which
type of signal you want to create.
4 Click on an empty line and type the signal name.
5 Set Default value.
Note
The usage of a signal cannot be changed from the Safe IO Configuration, but
in the column Signal uses it is shown what functions use each signal.
Tip
xx1600000139
Action Note/illustration
1 Select the Pre Logic or Post Logic view
in Safe IO Configuration.
2 Click on New expression.
3 At the bottom of the Safe IO Configura- If the result signal is not already configured,
tion, type the logical expression. click Create signal to automatically define
it as a global signal.
Tip
Creating a zone
DANGER
When setting zone limits, brake distances must be taken into consideration, so
that the SafeMove functions are configured with enough margin. If the robot hits
the zone limit, it starts to brake and needs the brake distance to stop. This occurs
outside the allowed zone.
Note that if the robot starts accelerating strongly just before reaching a configured
zone limit, there will occur a speed overshoot before decelerating. This may
result in a somewhat increased speed and extended braking distance compared
to a smoother speed situation.
Action Note/illustration
1 In the Visual SafeMove ribbon, click on A zone of default size is shown in the
Safe Zone. graphics window.
2 Specify Tool Speed Supervision Priority
for the zone. Tip
If two zones are overlapping, the zone
with the highest priority will set the speed If there is a small zone with higher allowed
limits for the overlapping space. speed (e.g. 1000 mm/s) inside a larger zone
If two overlapping zones have the same with lower allowed speed (e.g. 250 mm/s),
priority, the most restrictive values will be use higher priority for the small zone.
used in the overlapping space (lowest
max speed and highest min speed).
3 Fill in the height of the box and the X and If you want to state the coordinates in anoth-
Y values for each corner. er coordinate system, select it in the field
Reference.
If the zone base should have another shape
than square, add a corner point by clicking
on a + button. For example, to add a new
point between point 2 and 3, click on the +
button at point 2.
An alternative to writing coordinates in the
Visual SafeMove Properties browser, is to
click and drag on the corners or sides. By
pressing the key X while dragging, the
dragging is done along the X-axis while the
Y value remains unchanged. By pressing
the key Y while dragging, the dragging is
done along the Y-axis while the X value re-
mains unchanged.
xx1500000535
Tip
To change the name of a zone, right-click on the zone in the Visual SafeMove
browser, select Rename and type the desired name.
Action Note
1 In the Visual SafeMove browser, click on
the zone to select it.
2 In the Visual SafeMove ribbon, click on
the function to create.
3 Configure the function according to Con-
figure the supervision functions on
page 117.
Creating a range
DANGER
When setting range limits, brake distances must be taken into consideration, so
that the SafeMove functions are configured with enough margin. If the robot hits
the range limit, it starts to brake and needs the brake distance to stop. This occurs
outside the allowed range.
Note that if the robot starts accelerating strongly just before reaching a configured
range limit, there will occur a speed overshoot before decelerating. This may
result in a somewhat increased speed and extended braking distance compared
to a smoother speed situation.
Action Note/illustration
1 In the Visual SafeMove ribbon, click on A range of default size is shown for each
Safe Range. axis in the graphics window.
2 Specify Upper bound and Lower bound
for each axis.
3 If an axis should be excluded from the
safe range, clear the check box Enabled
for that axis.
4 To supervise the inverted range for an
axis (below Lower bound and above Up-
per bound) select the check box Inverted
for that axis.
xx1600000128
Tip
To change the name of a range, right-click on the range in the Visual SafeMove
browser, select Rename and type the desired name.
Action Note
1 In the Visual SafeMove browser, click on
the range to select it.
2 In the Visual SafeMove ribbon, click on
the function to create.
3 Configure the function according to the
descriptions in section Configure the su-
pervision functions on page 117.
Action Note
1 In the Visual SafeMove browser, make
sure that no zone or range is selected.
2 In the Visual SafeMove ribbon, click
Global Functions and select function.
3 Configure the function according to Con-
figure the supervision functions on
page 117.
xx1500000536
Action Note/illustration
3 In Stop category, select if violation of the
function should stop the robot with cat-
egory 0 stop, category 1 stop or not stop
the robot.
4 Select Signal to be set at violation. Note that if Stop category is NoStop, then
If no signal should be set at violation, se- Signal cannot be No signal.
lect No signal. Signal definitions:
0 = violation
1 = no violation
5 Specify the maximum allowed speed in The maximum speed limit must always be
Max speed. larger than the minimum speed limit.
6 If a minimum TCP speed is going to be If a minimum TCP speed shall be used, the
used, specify the minimum allowed speed function cannot be both permanently active
in Min speed. and stopping the robot.
The minimum speed limit has a lower super-
vision limit of 2 mm/s. The minimum speed
limit supervision is disabled by entering a
limit of 0 mm/s.
xx1500000537
xx1600000130
Action Note/illustration
3 In Stop category, select if violation of the
function should stop the robot with cat-
egory 0 stop, category 1 stop or not stop
the robot.
4 Select Signal to be set at violation. Note that if Stop category is NoStop, then
If no signal should be set at violation, se- Signal cannot be No signal.
lect No signal. Signal definitions:
0 = violation
1 = no violation
5 Jog the robot so that the tool is in desired To exclude supervision for either X vector
orientation and click on Get vectors for or Z vector, clear the check box Enable
active tool. This will set both X and Z vector.
vector for the tool orientation.
or CAUTION
Manually specify the tool's X and Z vec-
tors in the world coordinate system. Since the tool data is determined by the
programmed tool, it is very important that
the active tool in SafeMove corresponds to
the active tool of the robot program.
6 Specify the Tolerance for both the X vec- The allowed orientation of X and Z are
tor and the Z vector. shown as cones in the graphics window.
xx1600000127
xx1600000131
Action Note/illustration
3 In Stop category, select if violation of the
function should stop the robot with cat-
egory 0 stop or category 1 stop.
4 Select Signal to be set at violation. Signal definitions:
If no signal should be set at violation, se- 0 = violation
lect No signal. 1 = no violation
5 Under Tolerances, specify how much Set as low tolerances as the applications
deviation from ordered position that is permit, to keep the deviations as small as
tolerated for each axis. possible.
xx1600000135
Action Note/illustration
2 If a status signal should be set when all Function active status is a status signal
violation functionality is active, select the telling if all configured violation actions (e.g.
signal to use in Function active status. stop and output signal) will be activated at
If no output signal should be used, select violation. For example, in service mode,
No signal. some functions have disabled stops and
therefore the status signal will not show that
all functionality is active.
Signal definitions:
0 = at least one violation action disabled
1 = all violation actions enabled
3 In Stop category, select if violation of the Note that if Activation is Permanently act-
function should stop the robot with cat- ive, then Stop category must be NoStop.
egory 0 stop or not stop the robot.
4 Select Signal to be set at violation. Note that if Stop category is NoStop, then
If no signal should be set at violation, se- Signal cannot be No signal.
lect No signal. Signal definitions:
0 = violation
1 = no violation
5 If an axis should be omitted from the su-
pervision, clear the check box under En-
abled for that axis.
6 For each axis, specify the maximum al-
lowed tolerance for that axis (in radians
on axis side).
xx1600000132
Action Note/illustration
1 In the Visual SafeMove ribbon, click Stop
Configuration.
2 In Trigger signal, select the signal that Trigger signal definitions:
should trigger the stop. 0 = activate stop
1 = deactivate stop
3 If a status signal should be set when the Stop trigger status is a status signal telling
functionality is active, select the signal to if the configured stop has triggered.
use in Stop trigger status. Signal definitions:
If no output signal should be used, select 0 = stop triggered
No signal.
1 = stop not triggered
4 In Mode, select if it should be:
• SC_AutoStop - puts the robot
controller in auto stop mode (AS).
• SC_EmergencyStop - puts the ro-
bot controller in emergency stop
mode (ES).
5 In Stop category, select if the function
should stop the robot with category 0 stop
or category 1 stop.
Action Note/illustration
1 In the Visual SafeMove ribbon, click
Cyclic Brake Check.
2 If the robot should not be stopped when
the test interval has elapsed, select the
check box Warning only, no stop.
3 In Max CBC test interval, set the maxim- A value between 2 and 720 hours.
um allowed time (in hours) between brake
checks.
4 In Pre warning time, set how long before A value between 1 and 11 hours.
the end of the interval a warning should
be shown on the FlexPendant.
5 Do not change the default value for Standstill tolerance is used for Stand Still
Standstill tolerance unless absolutely Supervision during brake test. The motor is
necessary. in regulation during brake test, and a small
movement may be allowed. The size of the
allowed movement is specified in Standstill
tolerance (in radians on motor side). Typical
value is 2 radians.
6 Do not change the default value for Super- Supervision threshold defines the threshold
vision threshold unless absolutely neces- to verify that a brake check has been made.
sary.
Action Note/illustration
7 If one axis should be excluded from the This must correspond with the axes that has
Cyclic Brake Check, clear the check box the system parameter Deactivate Cyclic
Enabled for that axis. Brake Check for axis set to On.
For axes not included in SafeMove, deactiv-
ation of the axes must be done by setting
the parameter Deactivate Cyclic Brake
Check for axis to On via RobotStudio for all
axes not included.
For more information, see Cyclic Brake Check guidelines on page 158.
Action Note/illustration
1 In the Visual SafeMove ribbon, click on
File and then select Save configuration
as.
xx1500000802
Action
1 In the Visual SafeMove ribbon, click on File and then select Open configuration.
2 Browse and select a file.
Click on Open.
Note
The configuration file can only be edited using RobotStudio. Changing the
configuration file in any other way will make the file invalid and it is not possible
to run the robot if this file is loaded.
Action Note/illustration
1 Log in as a user with the grant Safety See Set up safety user grants on page 97.
Services.
2 In the Visual SafeMove ribbon, click on
Controller and then select Write to con-
troller.
xx1500000801
DANGER
Tip
Note
Depending on the combination of functions and how they are activated, the
validation procedures described below may have to be modified for the specific
configuration.
Tip
Use RAPID programs in order to perform testing faster and to be able to repeat
them.
Tip
To validate that the ranges have enough margins, let the robot move with
maximum allowed speed when reaching the range limits. Verify that the limits
are set with enough margin with respect to the breaking distance.
Validate the range limits for all configured ranges. It is enough to validate the limits
of each range for one function, since the range limits are treated equally for all
functions in the range. Perform the range limits validation using one of the following
functions (preferably Axis Position Supervision).
Tip
To validate that the zones have enough margins, let the robot move with maximum
allowed speed when reaching the zone limits. Verify that the limits are set with
enough margin with respect to the breaking distance.
Validate the zone limits for all configured zones. It is enough to validate the limits
of each zone for one function and one tool, since the zone limits are treated equally
for all functions and tools in the zone. Perform the zone limits validation using one
of the following functions (preferably Tool Position Supervision).
Note
It is not necessary to validate each tool with each range/zone. It is enough if all
ranges/zones are validated with one tool and all tools are validated with one
range/zone.
Note
The TCP for the SafeMove tool must correspond with the TCP of the active tool
for jogging and RAPID instructions.
xx0700000696
Tip
xx1500000533
Introduction
The function Reset safety controller to factory settings clears all user settings
and loads a default configuration. The firmware of the safety controller is not
affected.
In rare cases the safety controller can get locked in safety state, for example when
loading an incompatible or poorly configured safety configuration or replacing the
robot controller. Then it is not possible to load another safety configuration without
first resetting the safety controller to factory settings.
Note
Upgrading RobotWare
If an upgrade of RobotWare is done by using the Installation Manager, the safety
configuration is kept as it is. A restore of the safety configuration is not needed.
Since the configuration is kept as it is, the checksum is the same and the
configuration is automatically locked after upgrade.
Downgrading RobotWare
SafeMove is not forward compatible. A safety configuration from a newer system
is not possible to use in an older system.
7 Running in production
7.1 Reaction time
Note
The time depends on the cycle time on the communication with the PLC. 24 ms
is the case when the cycle time is set to 8 ms.
Note
When a signal is set to 0 at violation, it will remain 0 for at least 250 ms even
after the violation has ended.
Restart modes
None of the restart modes Restart, Reset RAPID, or Reset system will affect the
safety configuration.
For more information about restart procedures, see Operating manual - Integrator's
guide OmniCore.
DANGER
Tip
Set up the User Authorization System so that only the safety user is allowed to
administrate installed systems.
Action
1 Switch to Manual mode on the robot controller.
2 Jog the robot back to a position that does not trigger any supervision function.
Action
1 Release and activate the three-position enabling device on the FlexPendant.
2 Jog the robot back to a position that does not trigger any supervision function.
Action Note
1 Press the motors on button on the robot controller. This allows the robot to be moved
at reduced speed.
2 Perform a synchronization.
Perform synchronization
If any of the following is done, a new synchronization is required:
• Revolution counter update
• Fine calibration
• Axis calibration
8 Maintenance
8.1 Required maintenance activities
9 RAPID components
About the RAPID components
This is an overview of all instructions, functions, and data types for functional safety
and SafeMove.
For more information, see Technical reference manual - RAPID Instructions,
Functions and Data types.
Instructions
Instructions Description
SafetyControllerSyncRe- SafetyControllerSyncRequest is used to initiate the hard-
quest ware synchronization procedure.
Functions
Functions Description
SafetyControllerGetCheck- SafetyControllerGetChecksum is used to get the safety
sum controller checksum for the user configuration file.
SafetyControllerGetSWVer- SafetyControllerGetSWVersion is used to get the safety
sion controller firmware version.
SafetyControllerGetUser- SafetyControllerGetUserChecksum is used to get the
Checksum safety controller checksum for the area with protected
parameters in the user configuration file.
Data types
There are no RAPID data types for functional safety and SafeMove.
10 Reference information
10.1 Synchronization guidelines
Note
Note
Performing a synchronization
WARNING
If the robot position is not visually verified, to make sure all robot axes are in
correct position, the synchronization can jeopardize the safety.
Note
Action
1 Move the robot to its sync position
(for example with MoveAbsJ).
Action
2 Visually verify that the robot is in If an axis is in wrong position, the revolution coun-
its sync position (all axes must be ters are most likely incorrect.
in correct position).
3 Go to the Safety Controller view.
4 On the tab Synchronization, tap
Synchronize.
Note
Note
Performing a synchronization
Action Note
1 Run a RAPID program with the This will make the controller responsive to the syn-
instruction chronization input signal for 30 seconds.
SafetyControllerSyncRequest.
2 Move the robot to a position close If an axis is in wrong position, the revolution coun-
to the sync switch. ters are most likely incorrect.
3 Slowly press the sync switch from If the approach is too fast, the accuracy of the robot
the desired direction. position may be too low.
Note
Note
Note
If Cyclic Brake Check is called together with the below combinations, then Cyclic
Brake Check will be executed for all axes and the safety controller will not take
any actions when the Cyclic Brake Check interval has passed or if the Cyclic
Brake Check fails:
• SafeMove system with an empty safety configuration.
• SafeMove system with a safety configuration, but without a configured Cyclic
Brake Check.
Action Note/illustration
1 Move the robot to a safe brake
check position.
2 On the FlexPendant, open the
Safety Controller view.
Continues on next page
158 Application manual - SafeMove
3HAC066559-001 Revision: A
© Copyright 2020 ABB. All rights reserved.
10 Reference information
10.2 Cyclic Brake Check guidelines
Continued
Action Note/illustration
3 On the tab CBC, tap Execute.
M*g
Arm (3)
xx1600001289
To calculate the parameter for an axis that has no gravity, for example a track, the
below formula may be used:
Max Static Arm Torque = Tbrake min/1.35
Tbrake min for ABB motor units can be found in the product specification for the
specific motor unit, see Product specification - Motor Units and Gear Units.
Note
Note that the calculated value should be entered in [Nm] and calculated to the
motor side.
Brake maintenance
Brake maintenance is a feature in the CyclicBrakeCheck functionality.
CyclicBrakeCheck automatically detects if maintenance of the mechanical brakes
is needed and activates the Brake maintenance functionality during execution.
Brake maintenance applies the brake and turns the motor shaft 1 radian five times,
which gives a movement of the robot arm of less than 1 degree.
There are event logs that tell if Brake maintenance is needed, and if it has been
run.
For more information see parameter Brake Maintenance, type General Rapid, topic
Controller, in Technical reference manual - System parameters.
Introduction
Description of different signal states for Cyclic Brake Check (CBC).
Beginning of CBC
The following signals are set in the beginning of the CBC.
Signal Set to
SC1CBCOK 0
SC1CBCACT 1
SC1CBCERR 0
SC1CBCWAR 0
End of CBC
The following signals are set in the end of the CBC.
Signal CBC test OK CBC test WARNING CBC test ERROR
Set to Set to Set to
SC1CBCOK 1 0 0
SC1CBCREQ 0 0 1
SC1CBCERR 0 0 1
SC1CBCWAR 0 1 0
SC1CBCACT 0 0 0
SC1CBCPREWARN 0 0 No change
In graph (b) in the figure below, the Servo Lag parameter is illustrated when the
measured signal is shifted with the Servo Delay Time. The measured position
should now be within a distance of +/- Servo Lag from the reference at every time
instance. If the measured position is outside the specified region the SafeMove
position supervision is triggered.
Servo Delay Time
angle angle
Servo Lag
me me
(a) (b)
en1100000626
Figure 10.1: Illustration of Servo Delay Time (a) and Servo Lag (b). Solid line is motor angular position
reference (test signal 17) and dashed is the corresponding measured motor angular position (test signal
18). In (b) the measured motor angular position signal is shifted Servo Delay Time in order to illustrate
that it is the time shifted signal (samples) that should lie within +/- Servo Lag radians from the reference.
Note
The signals in the figure are only for illustrative purpose. The Servo Delay Time
in a real system is small, typically in the range 12-16 ms, which means a Servo
Delay Factor in the range 3-4. If the Servo Delay Factor is incorrect the Servo
Lag has to compensate this since the difference between reference and measured
motor angular position will be large when the axis accelerates, runs at high speed,
or decelerates.
WARNING
The system is unstable and therefore dangerous during the tuning process, since
bad parameters or parameter combinations may be used! The safety procedures
of the robot system must be carefully followed throughout the tuning process.
Protective
stop
Safety Robot
controller
24 V
24 V
xx1800000411
DANGER
When using this solution, the communication between the safety PLC and the
safety controller must be active at all times.
Safety Robot
Local
DO DI controller
emergency
stop
24 V
External
emergency
stop Motor power
Motor
Protective contactor
stop
xx1800000412
10.5.1 Introduction
Overview
This section describes the SafeMove geometry configuration file that can be used
to import and export safety zones and related geometry to and from Visual
SafeMove.
The intended use of the file is to provide means to define and analyze the geometry
related part of a safety configuration in a tool external to RobotStudio and Visual
SafeMove.
The illustration below shows how the safety related geometry information can be
read from a file and written to a robot controller via Visual SafeMove. Vice versa,
the safety-related geometry information can be read from the controller by Visual
SafeMove and exported to a geometry configuration file.
Robot
controller
SafeMove geometry
Write to Read from
configuration file (public)
controller controller
xx1700000702
Unsupported functions
The following functions must be configured using Visual SafeMove in RobotStudio
and cannot be configured through the geometry configuration file.
• Contact Application Tolerance
• Stand Still Supervision
• Axis Speed Supervision
• Axis Position Supervision
• Tool Orientation Supervision
• External Power Supply
4 Import the SafeMove geometry configuration file into the external planning
tool so that the nominal safety zones are updated with the values from the
real robot.
10.5.3.1 Introduction
Overview
The purpose of the SafeMove geometry configuration file is to support data related
to the supervision functions:
• Tool Position Supervision
• Tool Speed Supervision
• Tool Orientation Supervision
The file can contain the tool encapsulation, speed supervision points, and the zone
definitions. This data is necessary, but not sufficient, to specify the functions. To
completely specify the functions then also activation signals, speed limits, and
whether a zone is an inside or an outside zone must be specified and added in
Visual SafeMove.
Summary
XML-tag Description
DriveModuleConfiguration 1-2 per controller
Robot 0-1 per DriveModuleConfiguration
Baseframe 0-1 per Robot
ElbowOffset 0-1 per Robot
UpperArmGeometry 0-2 per Robot
ExternalAxis 0-3 per DriveModuleConfiguration
BaseFrame 1 per ExternalAxis
Tool 0-16 per DriveModuleConfiguration
TCP 1 per Tool
ToolOrientation 1 per Tool
ToolGeometry 0-4 per Tool
SpeedSupervisionPoint 0-8 points per Tool
Name 1 per Tool
SafeZone 0-16 per DriveModuleConfiguration
Point 4-24 per SafeZone
Name 1 per SafeZone
XML schema
There is an XML schema available that defines the exact syntax and content of the
interface file. This is stored in an xsd-file and can be used to validate the content
of the xml-file.
The template file SimplifiedSafetyControllerSchema.xsd can be obtained from the
PC or the robot controller.
• In the RobotWare installation folder in RobotStudio: ...\RobotPackages\
RobotWare_RPK_<version>\utility\SafeMove2\
Note
Navigate to the RobotWare installation folder from the RobotStudio Add-Ins tab,
by right-clicking on the installed RobotWare version in the Add-Ins browser and
selecting Open Package Folder.
Overview
The DriveModuleConfiguration tag contains information about the motion
task.
There is a drive module configuration for each motion task of a controller system
monitored by SafeMove.
ID
The driveModuleId tag contains the ID of the motion task.
Each motion task must have a unique ID between 1 and 4. The ID is not visible to
the user.
Overview
The Robot tag contains information about the robot.
Name
The name tag is ROB_1 for a controller with only one manipulator. For a MultiMove
system the subsequent robot is called ROB_2.
Robot moved by
For track mounted robots, the movedBy tag specifies the name of the external axis
that moves the robot.
Base frame
The Baseframe tag specifies the robot mounting position relative to the controller
world coordinate system.
When importing a SafeMove geometry configuration file into Visual SafeMove, the
base frame values contained in the file will be replaced by the base frame of the
connected controller when creating the complete safety configuration. When
exporting the file, the Baseframe tag will contain the values of the actual base
frame of the connected robot.
Elbow offset
The ElbowOffset tag defines the point on the robot elbow that is speed monitored.
It should be the top-most point of the upper arm including any cable packages or
additional equipment.
reference point of the upper arm geometry is the same as the elbow offset of the
motion configuration file of the controller, moc.cfg.
xx1700000703
Overview
The ExternalAxis tag contains information about external axes.
Name
The name tag contains the name of the external axis. For example TRACK_1.
Axis type
The axisType tag must be Track for a track motion.
Base frame
The Baseframe tag specifies the position and orientation of the track motion.
10.5.3.5 Tool
Overview
The Tool tag contains information about the tools.
A tool consists of a set of shapes and a set of points. The shapes are used by the
function Tool Position Supervision and the points by the function Tool Speed
Supervision.
Up to 16 tools can be defined.
ID
The id tag contains the ID of the tool.
Each tool must have a unique ID between 1 and 16. The ID is not visible to the
user.
Name
The name tag contains the name of the tool.
Tool geometry
The ToolGeometry tag defines the number of shapes.
A tool consists of up to four shapes, so called sphere-swept volumes. A shape can
be a sphere, a capsule, or a rounded box (lozenge).
xx1700000705
The shapes are generated by a sphere with a certain radius in combination with a
point, a line, or a plane, respectively.
The sphere is trivially generated by placing the generating sphere on a point. A
capsule is generated by letting the center of the generating sphere travel along a
line. A rounded box is generated by letting the center point of the generating sphere
travel along a plane.
The below figure shows an example of a tool encapsulation with an ABB FlexGun
covered by a capsule and a rounded box.
xx1700000706
xx1700000707
xx1700000708
Overview
The SafeZone tag contains information about the safe zones.
The functions Tool Position Supervision, Tool Orientation Supervision, and Tool
Speed Supervision are based on zones. Up to 16 safe zones can be defined.
ID
The id tag contains the ID of the zone.
Each zone must have a unique ID between 1 and 16. The ID is not visible to the
user.
Name
The name tag contains the name of the zone.
The name will be visible to the user and presented in the controller event log in
case of a safety violation.
Points
The Point tag defines the points of the zone.
A zone is defined by minimum 4 up to 24 points in the X-Y plane of the controller
world coordinate system in addition to the bottom and top in the Z direction.
Limitations
Any of the coordinates must not exceed ± 1000 meters. The edges of a zone must
be at least 0.2 m and they must not intersect. The zone must be wider than 0.1 m.
A corner of a zone must have an angle between 30 and 330 degrees.
The below illustration shows the constraints that must be met by any zone definition.
xx1700000704
10.5.4 Example
Overview
This section contains an example of an XML-file for a MultiMove systems with two
robots. The first robot, ROB_1, is mounted on a track motion, TRACK_1, whereas
the second, ROB_2 is mounted on the floor.
The example file defines the zones in the below illustration.
xx1700000709
Example file
<SimplifiedSafetyConfiguration
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:abb-robotics-simplified-safety-controller-configuration">
<DriveModuleConfiguration DriveModuleId="1"
maxSpeedManualMode="0.25">
<Robot name="ROB_1" startSpeedOffset="0.1" movedBy="TRACK_1">
<Baseframe>
<Translation x="0" y="0" z="0" />
<Quaternion q1="0.707107" q2="0" q3="0" q4="0.707107" />
</Baseframe>
<ElbowOffset x="-0.252" y="0" z="0.342" />
<UpperArmGeometry xs:type="Capsule" name="UpperArm"
radius="0.357727">
<Start x="-0.268245" y="-0.017373" z="0.190867" />
<End x="1.03026" y="-0.096637" z="0.167713" />
</UpperArmGeometry>
<UpperArmGeometry xs:type="Sphere" name="HosePackage"
radius="0.5">
<Center x="-0.084216" y="-0" z="0.305324" />
</UpperArmGeometry>
</Robot>
<ExternalAxis name="TRACK_1" axisType="Track">
<Baseframe>
<Translation x="0" y="0" z="0" />
<Quaternion q1="1" q2="0" q3="0" q4="0" />
</Baseframe>
</ExternalAxis>
<Tool id="1" name="tFlexGun">
<TCP x="0" y="0.1485" z="0.8015" />
<ToolOrientation q1="0.5" q2="0.5" q3="-0.5" q4="0.5" />
<ToolGeometry xs:type="Lozenge" name="GunBody" radius="0.183332"
width="0.542759" height="0.5">
<Pose>
<Translation x="0.063143" y="0" z="0.377878" />
<Quaternion q1="0.707107" q2="0" q3="-0.707107" q4="0" />
</Pose>
</ToolGeometry>
<ToolGeometry xs:type="Capsule" name="BodyRight"
radius="0.181797">
<Start x="0.2" y="0.2" z="0.15" />
<End x="0.2" y="-0.3" z="0.15" />
</ToolGeometry>
<ToolGeometry xs:type="Sphere" name="Electrode"
radius="0.144212">
<Center x="0" y="0.162418" z="0.78145" />
</ToolGeometry>
<ToolGeometry xs:type="Capsule" name="BodyLeft"
radius="0.181797">
<Start x="-0.2" y="0.2" z="0.15" />
<End x="-0.2" y="-0.3" z="0.15" />
</ToolGeometry>
<SpeedSupervisionPoint x="-0.212" y="-0.499717" z="-0.005" />
<SpeedSupervisionPoint x="-0.212" y="0.3855" z="-0.005" />
<SpeedSupervisionPoint x="-0.212" y="0.3855" z="0.8515" />
<SpeedSupervisionPoint x="-0.212" y="-0.499717" z="0.8515" />
<SpeedSupervisionPoint x="0.15799" y="-0.499717" z="-0.005" />
<SpeedSupervisionPoint x="0.15799" y="0.3855" z="-0.005" />
<SpeedSupervisionPoint x="0.15799" y="0.3855" z="0.8515" />
<SpeedSupervisionPoint x="0.15799" y="-0.499717" z="0.8515" />
</Tool>
<SafeZone id="1" name="RobotZone1" top="2.889806" bottom="-0.5"
speedLimitPriority="NORMAL">
<Point x="3.181233" y="3.743311" />
<Point x="2.13778" y="3.552878" />
<Point x="2.042189" y="2.624328" />
<Point x="-0.430474" y="2.750736" />
<Point x="-0.359415" y="-0.735027" />
<Point x="8.319961" y="-0.790136" />
<Point x="8.181677" y="2.193857" />
<Point x="6.422987" y="2.805629" />
L
A limitations, 25
additional axes, 25–26 load configuration, 129
work area limitations, 26 locked configuration file, 142, 145
APO, 29, 45
ASP, 29, 42 M
axis calibration, 150 maintenance, 151
Axis Position Supervision, 29, 45 Manual Operation
description, 45 using, 149
axis range, 46 Manual Operation Supervision
Axis Speed Supervision, 29, 42 description, 33
description, 42 MoveAbsJ, 155, 157
B N
base coordinate system changed, 150 non ABB additional axes, 26
brake check
guidelines, 158 O
occupationally safe, 28
C open configuration, 129
CAP, 29, 34 operationally safe, 28
category 0 stop, 28
category 1 stop, 28 R
Certifications, 23 range, 46
compatibility, 25 RAPID components, 153
Configuring SafeMove, 93 RAPID non motion execution, 27
Contact Application Tolerance, 29, 34 reaction time, 147
description, 34 rebuilt robot cell, 150
Control Error Supervision recovery, 149
description, 49 replaced robot part, 150
Cyclic Brake Check replaced tool, 150
guidelines, 158 response time, 147
signal description, 161 restarting controller, 148
revolution counter updated, 150
D ribbon, 55, 57, 65
deactivation, 26 robots supported by SafeMove, 25
download configuration, 130
S
E Safe Brake Ramp, 71
electronically linked motors, 27 description, 39
emergency stop, 167 safe input, 28
exclude from configuration, 32, 69 safe output, 28
external axes, combined, 26 safety, 13
external emergency stop, 167 safety configuration report, 132
safety controller, 15, 28
F SafetyControllerGetChecksum, 153
fine calibration, 150 SafetyControllerGetSWVersion, 153
floor plan, 132 SafetyControllerGetUserChecksum, 153
SafetyControllerSyncRequest, 153
G safety controller version, 150
gantry, 26
safety users, 97
grants, 97
save configuration, 129
H Servo Delay Factor, 165
hardware synchronization servo lag, 34, 49
description, 37 Servo Lag, 165
servo tool changer, 26
I servo welding gun, 25
include safety settings, 143 shared drive modules, 27
independent joint, 27 signals for Cyclic Brake Check, 161
installing soft servo, 34
RobotStudio, 52 software synchronization
RobotWare, 52 description, 36
software, 52 SST, 29, 40
integrator responsibility, 13 stand alone controller, 26
IsBrakeCheckActive, 158 Stand Still Supervision, 29, 40
ISO 10218, 23 description, 40
ABB Inc.
Robotics and Motion
1250 Brown Road
Auburn Hills, MI 48326
USA
Telephone: +1 248 391 9000
abb.com/robotics
3HAC066559-001, Rev A, en