iiQKA OS 12 en

Download as pdf or txt
Download as pdf or txt
You are on page 1of 230

System Software

iiQKA.OS 1.2
Operating and programming instructions

Issued: 19.01.2024
iiQKA.OS 1.2 V3
KUKA Deutschland GmbH
iiQKA.OS 1.2

© Copyright 2024
KUKA Deutschland GmbH
Zugspitzstraße 140
D-86165 Augsburg
Germany

This documentation or excerpts therefrom may not be reproduced or disclosed to third parties
without the express permission of KUKA Deutschland GmbH.
Other functions not described in this documentation may be operable in the controller. The user
has no claims to these functions, however, in the case of a replacement or service work.
We have checked the content of this documentation for conformity with the hardware and soft-
ware described. Nevertheless, discrepancies cannot be precluded, for which reason we are not
able to guarantee total conformity. The information in this documentation is checked on a regu-
lar basis, however, and necessary corrections will be incorporated in the subsequent edition.
Subject to technical alterations without an effect on the function.
KIM-PS5-DOC
Translation of the original documentation

Publication: Pub iiQKA.OS 1.2 (PDF) en


PB22588

Book structure: iiQKA.OS 1.2 V2.1


BS19397

Version: iiQKA.OS 1.2 V3

2/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Contents

1 Introduction.............................................................................................. 11
1.1 Target group.......................................................................................................... 11
1.2 Industrial robot documentation.............................................................................. 11
1.3 Representation of warnings and notes................................................................. 11
1.4 Licenses................................................................................................................. 12

2 Product description................................................................................. 13
2.1 Product description................................................................................................ 13
2.2 Overview of the industrial robot............................................................................ 13
2.3 System requirements............................................................................................. 14
2.4 Network connections............................................................................................. 14
2.5 Intended use and misuse...................................................................................... 15

3 Safety......................................................................................................... 17
3.1 General.................................................................................................................. 17
3.1.1 Disclaimer.............................................................................................................. 17
3.1.2 EC declaration of conformity and declaration of incorporation............................ 17
3.1.3 Terms in the “Safety” chapter............................................................................... 18
3.2 Personnel............................................................................................................... 20
3.3 Workspace, protected space and danger zone................................................... 21
3.4 Triggers for stop reactions.................................................................................... 22
3.5 Safety functions..................................................................................................... 23
3.5.1 Overview of the safety functions.......................................................................... 23
3.5.2 Safety controller..................................................................................................... 25
3.5.3 Local EMERGENCY STOP device....................................................................... 25
3.5.4 Enabling device..................................................................................................... 26
3.5.5 Velocity monitoring................................................................................................ 27
3.5.6 Signal for operator safety...................................................................................... 27
3.5.7 External EMERGENCY STOP device.................................................................. 28
3.5.8 EMERGENCY STOP output................................................................................. 29
3.5.9 Monitoring functions for collaborative operation (HRC)....................................... 29
3.5.10 External enabling device....................................................................................... 29
3.6 Additional protective equipment............................................................................ 30
3.6.1 Jog mode............................................................................................................... 30
3.6.2 Software limit switches.......................................................................................... 30
3.6.3 Options for moving the manipulator without drive energy................................... 30
3.6.4 Labeling on the industrial robot............................................................................ 30
3.6.5 External safeguards............................................................................................... 31
3.7 Mode selection...................................................................................................... 31
3.8 Safety measures.................................................................................................... 33
3.8.1 General safety measures...................................................................................... 33
3.8.2 Transportation........................................................................................................ 35
3.8.3 Start-up and recommissioning.............................................................................. 35
3.8.4 Manual mode......................................................................................................... 37
3.8.5 Simulation.............................................................................................................. 38
3.8.6 Automatic mode..................................................................................................... 38
3.8.7 Maintenance and repair........................................................................................ 39

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 3/230


iiQKA.OS 1.2

3.8.8 Decommissioning, storage and disposal.............................................................. 40


3.8.9 Safety measures for Single Point of Control........................................................ 40
3.9 IT security.............................................................................................................. 40
3.9.1 Introduction............................................................................................................ 40
3.9.2 Measures for secure operation of the product..................................................... 42
3.9.2.1 Physical access protection.................................................................................... 42
3.9.2.2 Network connection............................................................................................... 42
3.9.2.3 Access management............................................................................................. 43
3.9.2.4 Software updates................................................................................................... 43
3.9.2.5 Data backup.......................................................................................................... 44
3.9.2.6 USB interfaces....................................................................................................... 44
3.9.2.7 Customer service access...................................................................................... 44
3.9.2.8 Developer mode.................................................................................................... 44
3.9.3 IT security features of the product....................................................................... 45
3.9.3.1 General.................................................................................................................. 45
3.9.3.2 Firewalls................................................................................................................. 45
3.9.3.3 Encryption of communication................................................................................ 46
3.9.3.4 Checking of software updates.............................................................................. 47
3.9.3.5 Preventing the installation of older software........................................................ 47
3.9.3.6 Subdivision of the system..................................................................................... 48
3.9.3.7 Removal of non-essential software components and functions........................... 48
3.9.3.8 Decommissioning the system............................................................................... 48
3.9.3.9 Further information on IT security........................................................................ 48

4 General operation.................................................................................... 49
4.1 Overview of the user interface.............................................................................. 49
4.2 Changing the user interface language................................................................. 51
4.3 Shutting down or restarting the robot controller................................................... 51
4.4 Changing the operating mode.............................................................................. 52
4.5 Changing the user role......................................................................................... 53
4.6 Displaying system information.............................................................................. 54
4.7 Help........................................................................................................................ 54
4.8 Backup & Restore................................................................................................. 55
4.9 Software................................................................................................................. 57
4.9.1 Installed Toolboxes tab.......................................................................................... 57
4.9.2 Updates tab and Upgrades tab............................................................................ 58
4.9.3 Available Toolboxes tab........................................................................................ 59
4.9.4 “Settings” tab......................................................................................................... 60
4.10 Firmware updates/upgrades.................................................................................. 61
4.11 Coordinate systems............................................................................................... 61
4.12 Moving the robot manually.................................................................................... 62
4.12.1 Axis-specific jogging.............................................................................................. 63
4.12.2 Cartesian jogging................................................................................................... 64
4.12.3 Incremental jogging............................................................................................... 66
4.12.4 Aligning the tool with a base................................................................................ 67
4.12.5 Manual guidance................................................................................................... 70
4.13 Operating the user interface with the Commander.............................................. 71
4.14 Program execution................................................................................................ 73
4.14.1 Executing a program manually............................................................................. 73

4/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

4.14.2 Executing a program automatically....................................................................... 73


4.14.3 Resetting a program.............................................................................................. 74
4.14.4 Resuming a program............................................................................................. 74
4.15 Brake test.............................................................................................................. 74
4.15.1 “Brake Test” view................................................................................................... 75
4.15.2 Brake Test Settings............................................................................................... 75
4.15.3 Performing a brake test........................................................................................ 76
4.16 Mastering............................................................................................................... 77
4.16.1 Mastering view....................................................................................................... 77
4.16.2 Mastering settings................................................................................................. 78
4.16.3 Mastering the robot............................................................................................... 79
4.16.4 Check result........................................................................................................... 81
4.17 Calibration of the joint torque sensors................................................................. 81
4.17.1 Recalibrating all sensors....................................................................................... 82
4.17.2 Resetting the sensors to factory settings............................................................. 83
4.18 Confirmation of mastering and calibration of the joint torque sensors................ 83

5 General configuration.............................................................................. 87
5.1 User roles and rights management...................................................................... 87
5.2 System settings..................................................................................................... 87
5.2.1 Network settings.................................................................................................... 87
5.2.2 Proxy network settings.......................................................................................... 88
5.2.3 Firewall rules......................................................................................................... 89
5.2.4 Changing a user password................................................................................... 90
5.2.5 Display settings..................................................................................................... 91
5.2.6 Date and time settings.......................................................................................... 91
5.2.7 Configuring the name of the robot controller....................................................... 91
5.2.8 Service Account..................................................................................................... 92

6 I/O configuration...................................................................................... 93
6.1 Physical inputs and outputs.................................................................................. 93
6.1.1 Mapping physical inputs and outputs................................................................... 94
6.2 Signals................................................................................................................... 95
6.2.1 Signal collections................................................................................................... 96
6.2.2 Creating and mapping a new signal..................................................................... 96
6.3 Bus Topology......................................................................................................... 97
6.3.1 Compare Online/Offline topology.......................................................................... 98
6.3.2 Update PDOs........................................................................................................ 99
6.3.3 Device manager.................................................................................................... 99
6.3.4 Configuration of EtherCAT devices....................................................................... 100
6.3.5 Diagnosis............................................................................................................... 100
6.3.6 Updating MDPs..................................................................................................... 101
6.4 Configuring EtherCAT® Bridge FSoE M/M.......................................................... 101
6.4.1 Configuring the primary side in iiQKA.OS............................................................ 102
6.4.2 Configuring the secondary side on an external controller................................... 104
6.4.3 Configuring the safety interface............................................................................ 104
6.4.4 Configuring the secondary side in iiQKA.OS....................................................... 106

7 Payload configuration............................................................................. 109


7.1 Payload configuration, general.............................................................................. 109

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 5/230


iiQKA.OS 1.2

7.2 Tool configuration editor........................................................................................ 109


7.2.1 Tool calibration....................................................................................................... 111
7.2.1.1 Calibrating the origin............................................................................................. 112
7.2.1.2 Calibrating the orientation..................................................................................... 112
7.3 Workpiece configuration editor.............................................................................. 112
7.4 Gripper toolboxes.................................................................................................. 115
7.4.1 Configuring gripper functions................................................................................ 115
7.4.1.1 Custom Gripper Capability.................................................................................... 116
7.4.1.2 SCHUNK Gripper Capability................................................................................. 117
7.4.2 Executing and testing gripper functions............................................................... 118

8 3D scene................................................................................................... 121
8.1 Overview of 3D scene........................................................................................... 121
8.2 Managing frames................................................................................................... 122
8.3 Configuring, calibrating and managing tools........................................................ 124
8.3.1 Configuring tool spheres....................................................................................... 125
8.3.2 Configuring the force interaction area.................................................................. 126
8.4 Adding tools outside the robot.............................................................................. 127
8.5 Managing workpieces............................................................................................ 127
8.6 Calibrating and managing bases.......................................................................... 129
8.7 Managing monitoring spaces: prisms and cuboids.............................................. 130
8.8 Configuring the Sick microScan3 laser scanner.................................................. 130
8.9 Deleting objects from the 3D scene..................................................................... 131
8.10 Cutting and pasting objects.................................................................................. 132

9 Safety configuration................................................................................ 133


9.1 Safety configuration, general................................................................................ 133
9.1.1 Safety Rule Set..................................................................................................... 134
9.1.2 Safety Rule............................................................................................................ 134
9.1.3 Monitoring Block.................................................................................................... 134
9.2 Safety configuration editor.................................................................................... 134
9.2.1 Editing parameters................................................................................................ 136
9.2.2 Applying the safety configuration.......................................................................... 136
9.2.3 Canceling the safety stop if the safety configuration is not approved................ 137
9.2.4 Approving the safety configuration....................................................................... 138
9.2.5 Creating and downloading a safety configuration report..................................... 138
9.2.6 Safety Settings...................................................................................................... 139
9.3 Status of the current safety configuration............................................................ 139
9.4 Safety reactions..................................................................................................... 140
9.4.1 Behavior of safety-oriented outputs...................................................................... 142
9.5 Configuration of safety-oriented tools................................................................... 142
9.6 Configuration of further safety parameters in scene............................................ 143
9.7 Safety interfaces.................................................................................................... 144
9.7.1 Discrete safety interfaces...................................................................................... 144
9.7.2 Ethernet safety interfaces..................................................................................... 144
9.7.3 Safety interface for external laser scanner.......................................................... 145
9.8 Configuration of safe signals................................................................................ 145
9.9 Use of safe signals in the safety configuration.................................................... 146
9.10 Overview of Monitoring Blocks............................................................................. 147

6/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

9.11 Confirmation of mastering and calibration of the joint torque sensors................ 149
9.12 Evaluating the operating mode............................................................................. 150
9.12.1 Monitoring Block “Test Mode”............................................................................... 150
9.12.2 Monitoring Block “Automatic Mode”...................................................................... 151
9.12.3 Monitoring Block “Reduced Speed Mode”............................................................ 151
9.12.4 Monitoring Block “High Speed Mode”................................................................... 151
9.13 Monitoring Block “Safety Stop”............................................................................. 151
9.14 Monitoring of operator devices............................................................................. 152
9.14.1 Monitoring of the EMERGENCY STOP device on the smartPAD pro................ 152
9.14.2 Monitoring of enabling in T1/CRR........................................................................ 152
9.15 Monitoring of enabling devices............................................................................. 153
9.15.1 Monitoring Block “Enabling Inactive”.................................................................... 153
9.15.2 Monitoring Block “Manual Guidance Inactive”...................................................... 154
9.15.3 Monitoring Block “Manual Guidance Active”........................................................ 155
9.16 Evaluation of the confirmation status of mastering and joint torque sensor cal-
ibration................................................................................................................... 155
9.16.1 Monitoring Block “Mastering Not Approved”......................................................... 155
9.16.2 Monitoring Block “JTS Adjustment Not Approved”............................................... 156
9.17 Monitoring of safety-oriented inputs...................................................................... 156
9.17.1 Monitoring Block “Input Signal”............................................................................. 156
9.17.2 Monitoring Block “Input Signal with Acknowledgement”...................................... 157
9.18 Velocity monitoring functions................................................................................. 158
9.18.1 Monitoring Block “Maximum Axis Velocity”........................................................... 158
9.18.2 Monitoring Block “Maximum Cartesian Velocity”.................................................. 158
9.18.3 Velocity monitoring in T1 and CRR...................................................................... 159
9.18.4 Velocity monitoring during manual guidance........................................................ 159
9.19 Space monitoring functions................................................................................... 160
9.19.1 Monitoring Block “Axis Work Range”.................................................................... 160
9.19.2 Monitoring Block “Axis Protection Range”............................................................ 161
9.19.3 Monitoring Block “Cartesian Monitoring Space”................................................... 162
9.19.3.1 Unexpected protected space violation at corners and edges.............................. 164
9.20 Monitoring of tool orientation................................................................................ 165
9.21 Monitoring of forces and axis torques.................................................................. 168
9.21.1 Monitoring Block “Collision”................................................................................... 168
9.21.2 Monitoring Block “Maximum TCP Force”............................................................. 170
9.22 Monitoring Block “Timer Expired”.......................................................................... 172
9.23 Safety acceptance................................................................................................. 173
9.23.1 Basic properties of the safety configuration......................................................... 174
9.23.2 Safety-oriented tools.............................................................................................. 176
9.23.2.1 Geometry data of the tool..................................................................................... 176
9.23.2.2 Tool load data........................................................................................................ 176
9.23.2.3 Tool orientation...................................................................................................... 177
9.23.3 Installation position and orientation of the robot.................................................. 177
9.23.4 Safety Rules.......................................................................................................... 177
9.23.5 Monitoring Blocks.................................................................................................. 178
9.23.5.1 Monitoring Block “Enabling Inactive”.................................................................... 179
9.23.5.2 Monitoring Block “Manual Guidance Inactive”...................................................... 179
9.23.5.3 Monitoring Block “Manual Guidance Active”........................................................ 180
9.23.5.4 Monitoring Block “Reduced Speed Mode”............................................................ 180

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 7/230


iiQKA.OS 1.2

9.23.5.5 Monitoring Block “High Speed Mode”................................................................... 180


9.23.5.6 Monitoring Block “Test Mode”............................................................................... 180
9.23.5.7 Monitoring Block “Automatic Mode”...................................................................... 180
9.23.5.8 Monitoring Block “Safety Stop”............................................................................. 180
9.23.5.9 Monitoring Block “Input Signal”............................................................................. 180
9.23.5.10 Monitoring Block “Input Signal with Acknowledgement”...................................... 181
9.23.5.11 Monitoring Block “Mastering Not Approved”......................................................... 181
9.23.5.12 Monitoring Block “JTS Adjustment Not Approved”............................................... 181
9.23.5.13 Monitoring Block “Maximum Axis Velocity”........................................................... 181
9.23.5.14 Monitoring Block “Axis Work Range/Axis Protection Range”.............................. 182
9.23.5.15 Monitoring Block “Maximum Cartesian Velocity”.................................................. 182
9.23.5.16 Monitoring Block “Cartesian Monitoring Space” (cuboid)..................................... 183
9.23.5.17 Monitoring Block “Cartesian Monitoring Space” (prism)....................................... 184
9.23.5.18 Monitoring Block “Tool Orientation Monitoring”.................................................... 185
9.23.5.19 Monitoring Block “Collision”................................................................................... 186
9.23.5.20 Monitoring Block “Maximum TCP Force”............................................................. 187
9.23.5.21 Monitoring Block “Timer Expired”.......................................................................... 187
9.23.6 General safety-oriented parameters..................................................................... 188
9.23.6.1 Mass of the heaviest workpiece........................................................................... 188

10 Programming............................................................................................ 189
10.1 Creating and managing programs........................................................................ 189
10.2 Node Palette: inserting nodes (program elements)............................................. 189
10.2.1 Basic nodes........................................................................................................... 190
10.2.1.1 Sequence............................................................................................................... 190
10.2.1.2 Motion group.......................................................................................................... 190
10.2.1.3 Move (motion)........................................................................................................ 192
10.2.1.4 Loop....................................................................................................................... 194
10.2.1.5 Wait........................................................................................................................ 194
10.2.1.6 Set.......................................................................................................................... 194
10.2.1.7 Grip & Release...................................................................................................... 194
10.2.1.8 GetState................................................................................................................. 195
10.2.1.9 If/else – simple branch.......................................................................................... 196
10.2.2 Advanced nodes.................................................................................................... 197
10.2.2.1 If/else group – advanced branch.......................................................................... 197
10.2.2.2 Break (exit loop or resume).................................................................................. 197
10.2.2.3 Halt (pause or reset program).............................................................................. 198
10.2.2.4 Subroutine (creating a subprogram)..................................................................... 198
10.2.2.5 Execute (execute subprogram)............................................................................. 199
10.2.2.6 Position hold (holding position under impedance control)................................... 199
10.3 Editing the program structure............................................................................... 199
10.4 Program variables................................................................................................. 200
10.4.1 Creating value with new data type....................................................................... 201
10.4.2 Example of a program variable............................................................................ 201
10.5 Creating and executing subroutines..................................................................... 202
10.6 Expression Editor.................................................................................................. 203
10.6.1 Functions in the Expression Editor....................................................................... 204
10.6.2 Namespace lang.................................................................................................... 206
10.6.2.1 lang.List data type................................................................................................. 206

8/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

10.6.2.2 Data type “lang.Maybe”......................................................................................... 207


10.6.3 Namespace math.................................................................................................. 208
10.7 Programming of a compliant robot....................................................................... 209
10.7.1 Cartesian impedance control................................................................................ 210
10.7.1.1 Calculation of the forces on the basis of Hooke’s law........................................ 211
10.7.2 Axis impedance control......................................................................................... 213
10.7.3 Holding position under impedance control........................................................... 214
10.7.4 Notes on using impedance control....................................................................... 215
10.8 Trigger programming............................................................................................. 216
10.8.1 Checking whether trigger is triggered................................................................... 218
10.9 Grid Patterns toolbox............................................................................................ 219
10.9.1 Defining grid patterns in scene............................................................................. 219
10.9.2 Defining grid patterns in capabilities..................................................................... 220
10.9.3 Using grid patterns in a program.......................................................................... 221

11 Diagnosis.................................................................................................. 223
11.1 Creating a diagnosis package.............................................................................. 223
11.2 Message log.......................................................................................................... 224
11.3 Alert display........................................................................................................... 225
11.4 Resuming the safety controller............................................................................. 226

12 KUKA Service........................................................................................... 227


12.1 Requesting support............................................................................................... 227
12.2 KUKA Customer Support...................................................................................... 227

Index 229

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 9/230


iiQKA.OS 1.2

10/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Introduction
1 Introduction

1.1 Target group

This documentation is aimed at users with the following knowledge and


skills:
• Advanced knowledge of the robot controller system

For optimal use of KUKA products, we recommend the training courses


offered by KUKA College. Information about the training program can be
found at www.kuka.com or can be obtained directly from our subsidia-
ries.

1.2 Industrial robot documentation

The industrial robot documentation consists of the following parts:


• Documentation for the robot arm
• Documentation for the robot controller
• Documentation for the smartPAD pro
• Documentation for the System Software
• Instructions for options and accessories
• Spare parts overview in KUKA Xpert
Each set of instructions is a separate document.

1.3 Representation of warnings and notes

Safety

These warnings are provided for safety purposes and must be observed.
DANGER
These warnings mean that it is certain or highly probable that death or
severe injuries will occur if no precautions are taken.

WARNING
These warnings mean that death or severe injuries may occur if no pre-
cautions are taken.

CAUTION
These warnings mean that minor injuries may occur if no precautions
are taken.

NOTICE
These warnings mean that damage to property may occur, if no precau-
tions are taken.

These warnings contain references to safety-relevant information or gen-


eral safety measures.
These warnings do not refer to individual hazards or individual precau-
tionary measures.

This warning draws attention to procedures which serve to prevent or rem-


edy emergencies or malfunctions:

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 11/230


Introduction iiQKA.OS 1.2

SAFETY INSTRUCTION
The following procedure must be followed exactly!

Procedures marked with this warning must be followed exactly.

Notices

These notices serve to make your work easier or contain references to


further information.
Tip to make your work easier or reference to further information

1.4 Licenses

The KUKA license terms are displayed on the user interface of the system
software:
• In the main menu under System Information, Eula tab
The license terms of the open-source software used can be displayed on
a separate laptop/PC:
1. Connect the robot controller to the network and determine the control-
ler IP.
The IP address can be found in the main menu of the system soft-
ware under System Settings > Network.
2. Enter the URL <controller IP>/licenses/ in the web browser.

12/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Product description
2 Product description

2.1 Product description

Description

The system software iiQKA.OS 1.2 provides all the functions required for
operating the KUKA LBR iisy.

Functions

• Touch operation via the smartPAD pro


• Simple user interface for programming, configuration and diagnosis
• Regular updates for expansion of the functionalities
• Wizards
‒ Start wizard for quick overview of all functions
‒ Further supporting wizards that provide assistance for navigating
through functions
• Programming
‒ Programming for beginners
‒ Graphical program display and editing with touch input
‒ Expression editor for programming complex expressions
‒ Create and edit program variables
‒ Create, edit and execute subprograms
‒ Programming a compliant robot
• 3D scene display
‒ Virtual robot model
‒ Simple saving of positions
‒ Display and management of monitoring spaces, tools, workpieces
and coordinate systems
• Calibration of tools, workpieces and coordinate systems
• I/O configuration and diagnosis
‒ Support of safe signals and standard signals
‒ Importing EtherCAT device description files
‒ Scanning, adding, deleting EtherCAT devices
‒ FSoE support: primary side can be configured
‒ PROFINET support
• Safety configuration
‒ Simple expansion of the existing safety configuration
‒ Flexible configuration of complex applications
‒ Simple integration of the Sick safety laser scanner

2.2 Overview of the industrial robot

The industrial robot consists of the following components:


• Manipulator
• Robot controller
• Teach pendant
• Connecting cables

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 13/230


Product description iiQKA.OS 1.2

• Software
• Options, accessories

Fig. 2-1: Example of an industrial robot

1 Manipulator
2 smartPAD pro teach pendant
3 Connecting cable / smartPAD pro
4 Robot controller
5 Connecting cable / data cable
6 Connecting cable / motor cable

2.3 System requirements

The system software iiQKA.OS 1.2 can be used on the following robot
controller:
• KR C5 micro
• With “Performance” system board

2.4 Network connections

The following diagram shows the Ethernet interfaces on the “Performance”


system board.
• The following network interfaces can be configured in the system set-
tings of the system software:
‒ KLI OT, interface XF5
‒ KLI IT, interface XF2
‒ KONI, interface XF7
• At the KSI, interface XF1, a DHCP server is available on the controller
side.

14/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Product description
Fig. 2-2: Overview of interfaces for “Performance” system board

XF1 KUKA Service Interface


XF2 KUKA Line Interface (IT)
XF3 DaisyChain
XF4 DaisyChain
XF5 KUKA Line Interface (OT)
XF6 Not available
XF7 KUKA Optional Network Interface
XF8 KUKA Extension Interface (EtherCAT)

Further information about the Ethernet interfaces can be found in the


assembly instructions for the robot controller KR C5 micro with KUKA
iiQKA.OS.

2.5 Intended use and misuse

Use

The system software iiQKA.OS 1.2 is intended exclusively for the opera-
tion of a KUKA industrial robot.
Each version of the system software is to be operated exclusively in ac-
cordance with the specified system requirements.

Misuse

Any use or application deviating from the intended use is deemed to be


misuse and is not allowed. KUKA Deutschland GmbH is not liable for any
damage resulting from such misuse. The risk lies entirely with the user.
Examples of such misuse include:
• Operation of a kinematic system that is not a KUKA industrial robot
• Operation of the system software not in accordance with the specified
system requirements

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 15/230


Product description iiQKA.OS 1.2

16/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
3 Safety

3.1 General

3.1.1 Disclaimer

The device described in this document is either an industrial robot or a


component thereof.
Components of the industrial robot:

• Manipulator
• Robot controller
• Teach pendant
• Connecting cables
• Software
• Options, accessories
The industrial robot is built using state-of-the-art technology and in accord-
ance with the recognized safety rules. Nevertheless, misuse of the indus-
trial robot may constitute a risk to life and limb or cause damage to the
industrial robot and to other material property.
The industrial robot may only be used in perfect technical condition in ac-
cordance with its intended use and only by safety-conscious persons who
are fully aware of the risks involved in its operation. Use of the industrial
robot is subject to compliance with this document and with the declaration
of incorporation supplied together with the industrial robot. Any functional
disorders, especially those affecting safety, must be rectified immediately.

Safety information

Information about safety may not be construed against the manufacturer.


Even if all safety instructions are followed, this is not a guarantee that the
industrial robot will not cause personal injuries or material damage.
No modifications may be carried out to the industrial robot without the au-
thorization of the manufacturer. Unauthorized modifications will result in
the loss of warranty and liability claims.
Additional components (tools, software, etc.), not supplied by the manufac-
turer, may be integrated into the industrial robot. The user is liable for any
damage these components may cause to the industrial robot or to other
material property.
In addition to the Safety chapter, this document contains further safety in-
structions. These must also be observed.

3.1.2 EC declaration of conformity and declaration of incorporation

The industrial robot constitutes partly completed machinery as defined by


the EC Machinery Directive. The industrial robot may only be put into op-
eration if the following preconditions are met:
• The industrial robot is integrated into a complete system.
or: The industrial robot, together with other machinery, constitutes a
complete system.
or: All safety functions and safeguards required for operation in the
complete machine as defined by the EC Machinery Directive have
been added to the industrial robot.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 17/230


Safety iiQKA.OS 1.2

• The complete system complies with the EC Machinery Directive. This


has been confirmed by means of a conformity assessment procedure.

EC declaration of conformity

The system integrator must issue an EC declaration of conformity for the


complete system in accordance with the Machinery Directive. The EC dec-
laration of conformity forms the basis for the CE mark for the system. The
industrial robot must always be operated in accordance with the applicable
national laws, regulations and standards.
The robot controller has a CE mark in accordance with the EMC Directive
and the Low Voltage Directive.

Declaration of incorporation

The partly completed machinery is supplied with a declaration of incorpo-


ration in accordance with Annex II B of the Machinery Directive
2006/42/EC. The assembly instructions and a list of essential require-
ments complied with in accordance with Annex I are integral parts of this
declaration of incorporation.
The declaration of incorporation declares that the start-up of the partly
completed machinery is not allowed until the partly completed machinery
has been incorporated into machinery, or has been assembled with other
parts to form machinery, and this machinery complies with the terms of
the EC Machinery Directive, and the EC declaration of conformity is
present in accordance with Annex II A.

3.1.3 Terms in the “Safety” chapter

Term Description

Axis range Range within which the axis may move The axis range must be de-
fined for each axis.

Stopping distance Stopping distance = reaction distance + braking distance


The stopping distance is part of the danger zone.

Workspace Area within which the robot may move. The workspace is derived
from the individual axis ranges.

Automatic (AUT) Operating mode for program execution. The manipulator moves at
the programmed velocity.

User The user of the industrial robot can be the management, employer
or delegated person responsible for use of the industrial robot.

Commander Operator interface on the manipulator that enables the connection


of external tools as well as manual guidance of the manipulator

Danger zone The danger zone consists of the workspace and the stopping dis-
tances of the manipulator.

18/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
CRR Controlled Robot Retraction
CRR is an operating mode which can be selected when the indus-
trial robot is stopped by the safety controller for one of the following
reasons:

• Industrial robot violates an axis-specific or Cartesian monitoring


space.
• The tool orientation is outside the permitted range.
• Industrial robot violates collision detection or the maximum TCP
force monitoring function.
• One or more axes are unmastered.
• Mastering of one or more axis positions is not confirmed.
• Calibration of one or more joint torque sensors is not confirmed.
• Maximum Cartesian velocity has been exceeded.
• Maximum torque of an axis has been exceeded, e.g. due to a
crushing situation.
After changing to CRR mode, the industrial robot may once again
be moved.

KUKA smartPAD pro Teach pendant for the robot controller


The KUKA smartPAD pro has all the operator control and display
functions required for operation and programming.

Manipulator The robot arm and the associated electrical installations

HRC Human-robot collaboration

External EMERGENCY Triggering an external EMERGENCY STOP affects the robot con-
STOP device trollers in the system that are integrated into the external EMER-
GENCY STOP circuit.
Notice: Triggering an external EMERGENCY STOP does not (!) set
the output signal for the local EMERGENCY STOP.

EMERGENCY STOP de- • EMERGENCY STOP device on the smartPAD


vice local
• Optional: additional EMERGENCY STOP device on the front
door of the cabinet
• Optional: additional EMERGENCY STOP device on XG58
Triggering a local EMERGENCY STOP directly affects the robot
controller to which this EMERGENCY STOP is connected.

Safety zone The safety zone is situated outside the danger zone.

Safety stop The safety stop is triggered by the safety controller, interrupts the
work procedure and causes all robot motions to come to a stand-
still.
The safety stop can be executed as Stop category 0, as Stop cate-
gory 1 (HRC) or as Stop category 1 (path-maintaining).
Note: In this document, a safety stop of Stop category 0 is referred
to as safety stop 0, a safety stop of Stop category 1 (HRC) as
safety stop 1 (HRC) and a safety stop of Stop category 1 (path-
maintaining) as safety stop 1 (path-maintaining).

Stop category 0 The drives are deactivated immediately and the brakes are applied.
The manipulator is stopped with path-oriented braking.
Note: This stop category is called “STOP 0” in this document.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 19/230


Safety iiQKA.OS 1.2

Stop category 1 (HRC) The manipulator switches to compliance control with increased
damping in order to reduce the acting external forces and to come
to a standstill. The manipulator leaves the path in this case. At
standstill, the drives are deactivated and the brakes are applied.
If Stop category 1 (HRC) is triggered by the safety controller, the
safety controller monitors the braking process. Specifically, the Car-
tesian velocity and the external axis torques are monitored. The
brakes are applied after 1 s at the latest and the drives are deacti-
vated. Stop category 0 is executed in the event of a fault.
Note: This stop category is called “STOP 1 (HRC)” in this docu-
ment.

Stop category 1 (path- The manipulator is braked and stays on the programmed path. At
maintaining) standstill, the drives are deactivated and the brakes are applied.
If Stop category 1 (path-maintaining) is triggered by the safety con-
troller, the safety controller monitors the braking process. After a
duration of 1.5 s at the latest, or less depending on the robot type,
the brakes are applied and the drives are switched off. Stop cate-
gory 0 is executed in the event of a fault.
Note: This stop category is called “STOP 1 (path-maintaining)” in
this document.

Stop category 2 The drives are not deactivated and the brakes are not applied. The
manipulator is braked with a path-maintaining braking ramp.
Note: This stop category is called “STOP 2” in this document.

System integrator The system integrator is responsible for safely integrating the indus-
(plant integrator) trial robot into a complete system and commissioning it.

T1 Test mode, Manual Reduced Velocity (<= 250 mm/s)


Note: With manual guidance in T1, the velocity is not reduced, but
rather limited through a safety-oriented velocity monitoring in ac-
cordance with the safety configuration.

3.2 Personnel

The following persons or groups of persons are defined for the industrial
robot:

• User
• Personnel

Qualification of personnel
Work on the system must only be performed by personnel that is able
to assess the tasks to be carried out and detect potential hazards.
Death, severe injuries or damage to property may otherwise result. The
following qualifications are required:
• Adequate specialist training, knowledge and experience
• Knowledge of the relevant operating or assembly instructions, knowl-
edge of the relevant standards
• All persons working with the industrial robot must have read and un-
derstood the industrial robot documentation, including the safety
chapter.

20/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
User

The user must observe the labor laws and regulations. This includes e.g.:

• The user must comply with his monitoring obligations.


• The user must carry out briefing at defined intervals.
• The user must comply with the regulations relating to personal protec-
tive equipment (PPE).

Personnel

Personnel must be instructed, before any work is commenced, in the type


of work involved and what exactly it entails as well as any hazards which
may exist. Instruction must be carried out regularly. Instruction is also re-
quired after particular incidents or technical modifications.
Personnel includes:

• System integrator
• Operators, subdivided into:
‒ Start-up, maintenance and service personnel
‒ Operating personnel
‒ Cleaning personnel

System integrator

The industrial robot is safely integrated into a complete system by the sys-
tem integrator.
The system integrator is responsible for the following tasks:

• Installing the industrial robot


• Connecting the industrial robot
• Performing the risk assessment
• Implementing the required safety functions and safeguards
• Issuing the EC declaration of conformity
• Affixing the CE mark
• Creating the operating instructions for the system

Operators

The operator must meet the following preconditions:


• The operator must be trained for the work to be carried out.
• Work on the system must only be carried out by qualified personnel.
These are people who, due to their specialist training, knowledge and
experience, and their familiarization with the relevant standards, are
able to assess the work to be carried out and detect any potential
hazards.

3.3 Workspace, protected space and danger zone

Workspaces are to be restricted to the necessary minimum size.


The danger zone consists of the workspace and the stopping distances of
the manipulator. The danger zone must be protected by means of physical
safeguards to prevent danger to persons or the risk of material damage.
The safeguards (e.g. safety gate) must be located outside the danger
zone. In the event of a stop, the manipulator is braked and comes to a
stop within the danger zone.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 21/230


iiQKA.OS 1.2

There must be no shearing or crushing hazards at the loading and trans-


Safety

fer areas.
If there are no physical safeguards present, the requirements for collabo-
rative operation in accordance with EN ISO 10218 must be met.

3.4 Triggers for stop reactions

Stop reactions of the industrial robot are triggered in response to operator


actions or as a reaction to monitoring functions and error messages. The
following tables show the stop reactions depending on the operating mode
that has been set.

Permanently defined triggers

The following triggers for stop reactions are predefined by the system and
invariable:
Trigger T1, CRR AUT
Start key released STOP 2
PAUSE key pressed STOP 2
Power switched off via main switch or STOP 0
device switch
Or power failure
Internal error in non-safety-oriented part STOP 0 or STOP 1
of the robot controller
(dependent on the cause of the error)
Operating mode changed during opera- Safety stop 1 (path-maintaining)
tion
Error in the safety controller Safety stop 0 or safety stop 1 (path-maintaining)
(dependent on the cause of the error)

User-specific triggers

The system software is supplied with a standard safety configuration. The


standard safety configuration can be modified by the user and contains
the following preconfigured triggers for stop reactions:
Trigger T1, CRR AUT
EMERGENCY STOP pressed on the Safety stop 1 (path-maintaining)
smartPAD
Enabling switches on smartPAD and Safety stop 1 (path- -
Commander released maintaining)
Enabling switch on smartPAD or Safety stop 1 (path- -
Commander fully pressed maintaining)
Maximum permissible velocity for man- Safety stop 1 (path-maintaining)
ual guidance * exceeded (enabling sig-
nal issued via Commander)
* Preconfigured values depend on the system software version: Up to version 1.0 (900 mm/s),
from version 1.1 onwards (500 mm/s)
Maximum permissible velocity in Safety stop 1 (path- -
T1/CRR (250 mm/s) exceeded (no ena- maintaining)
bling signal issued via Commander)
Maximum permissible global velocity in - Safety stop 1 (path-
AUT (2000 mm/s) exceeded (deactiva- maintaining)
ted by default)

22/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
Trigger T1, CRR AUT
Safety gate opened (operator safety) - Safety stop 1 (path-
maintaining)
External EMERGENCY STOP pressed Safety stop 1 (path-maintaining)
(deactivated by default)
From version 1.1 onwards, the standard safety configuration of the system
software also contains the following preconfigured triggers for stop reac-
tions for collaborative operation (HRC):
Trigger T1, CRR AUT
Maximum permissible external torque Safety stop 1 (HRC)
exceeded at least one axis (30 Nm) (no
enabling signal issued via Commander)
Maximum permissible velocity Safety stop 1 (path-maintaining)
(500 mm/s) exceeded (no enabling sig-
nal issued via Commander)
The user can additionally configure further triggers for stop reactions, in-
cluding the associated stop category.
(>>> 9 "Safety configuration" Page 133)

3.5 Safety functions

3.5.1 Overview of the safety functions

Safety functions are distinguished according to the safety requirements


that they fulfill:
• Safety-oriented functions for the protection of personnel
The safety-oriented functions of the industrial robot meet the following
safety requirements:
‒ Category 3 and Performance Level d in accordance with EN ISO
13849-1
‒ SIL 2 according to EN 62061
The requirements are only met on the following condition, however:
‒ All safety-relevant mechanical and electromechanical components
of the industrial robot are tested for correct functioning during start-
up and at least once every 12 months, unless otherwise deter-
mined in accordance with a workplace risk assessment. These in-
clude:
‒ EMERGENCY STOP device on the smartPAD
‒ External EMERGENCY STOP devices (if present)
‒ Enabling device on the smartPAD
‒ Enabling device on the Commander
‒ External enabling devices (if present)
‒ Safety-oriented outputs of the discrete safety interface
(>>> "Function test" Page 36)
• Non-safety-oriented functions for the protection of machines
The non-safety-oriented functions of the industrial robot do not meet
specific safety requirements.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 23/230


Safety iiQKA.OS 1.2

DANGER
Risk of fatal injury due to non-operational safety functions or exter-
nal safeguards
In the absence of operational safety functions or safeguards, the indus-
trial robot can cause death, severe injuries or damage to property.
• If safety functions or safeguards are dismantled or deactivated, do
not operate the industrial robot.

Integrate industrial robot into safety system of the overall system


During system planning, the safety functions of the overall system must
be planned and designed. Death, severe injuries or damage to property
may otherwise result.
• The industrial robot must be integrated into the safety system of the
overall system.

Safe state in the event of an error

In the case of a serious error in the safety controller, the following safe
state is established:
• All safety-oriented outputs are set to LOW (state “0”) or the safety-ori-
ented connection is interrupted.
• The energy supply to all safety-oriented drives is interrupted.
• Application of the holding brakes of all safety-oriented drives is activa-
ted.

Safety-oriented functions

All required safety-oriented functions can be configured. Some of these


safety-oriented functions are preconfigured as Safety Rules in Safety Rule
Sets:
• Safety Rule Set “Operator Devices”
‒ Safety Rule “Emergency Stop Operator Device”
EMERGENCY STOP device on the smartPAD
‒ Safety Rule “Enabling in Test Mode”
Enabling device on the smartPAD and LBR iisy Commander
• Safety Rule Set “Velocity Monitoring”
‒ Safety Rule “Velocity Limit Global”
Maximum global velocity
Disabled by default. In order to be able to use the functionality, the
Safety Rule must be enabled.
‒ Safety Rule “Velocity Limit T1”
Maximum velocity in T1/CRR
‒ Safety Rule “Velocity Limit Manual Guidance”
Maximum velocity for manual guidance
• Safety Rule Set “Standard Safety Interface”
The following preconfigured safety functions additionally require the in-
tegration of external devices via the safety interface of the robot con-
troller.
‒ Safety Rule “Safety Door”
Operator safety (= connection for the monitoring of physical safe-
guards)
‒ Safety Rule “Emergency Stop External”
External EMERGENCY STOP device

24/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Disabled by default. In order to be able to use the functionality, the

Safety
Safety Rule must be enabled.
‒ Safety Rule “Emergency Stop Internal”
EMERGENCY STOP output

Further information about the available safety interfaces is contained


in the assembly instructions of the robot controller in the “Planning”
chapter.

• Safety Rule Set “HRC (transient contact)” (available from version 1.1
of the system software onwards)
‒ Safety Rule “Velocity Limit HRC (transient contact)”
Maximum velocity for collaborative operation (HRC)
‒ Safety Rule “Collision detection”
Collision detection for collaborative operation (HRC)
Additional safety-oriented functions can also be configured, e.g.:
• External enabling device
• External safety stop
• Axis-specific workspace monitoring
(>>> 9 "Safety configuration" Page 133)

3.5.2 Safety controller

The safety controller is a unit inside the control PC. It links safety-relevant
signals and safety-relevant monitoring functions.
Safety controller tasks:
• Switching off the drives; applying the brakes
• Monitoring of the braking ramp
• Velocity monitoring
• Evaluation of safety-relevant signals
• Setting of safety-oriented outputs

3.5.3 Local EMERGENCY STOP device

This safety function is preconfigured in the Safety Rule “Emergency Stop


Operator Device” in the Safety Rule Set “Operator Devices”.
As standard, the EMERGENCY STOP device of the industrial robot is the
EMERGENCY STOP device on the smartPAD. The EMERGENCY STOP
device must be pressed in the event of a hazardous situation or emergen-
cy.
Reaction of the industrial robot if the EMERGENCY STOP device is
pressed (default configuration):
• The manipulator stops with a safety stop 1 (path-maintaining).
Before operation can be resumed, the EMERGENCY STOP device must
be released.
The inputs for the local EMERGENCY STOP can be configured. A dif-
ferent EMERGENCY STOP device can be connected and used for the
local EMERGENCY STOP.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 25/230


Safety iiQKA.OS 1.2

WARNING
Danger to life and limb due to tools and equipment without EMER-
GENCY STOP
If tools and other equipment connected to the robot are not integrated
into the EMERGENCY STOP circuit, this can result in death, severe in-
juries or damage to property.
• Integrate tools and other equipment into the EMERGENCY STOP
circuit if they could constitute a potential hazard.

If a holder is used for the teach pendant and conceals the EMERGENCY
STOP device, an external EMERGENCY STOP device must be installed
that is accessible at all times.
(>>> 3.5.7 "External EMERGENCY STOP device" Page 28)

3.5.4 Enabling device

This safety function is preconfigured in the Safety Rule “Enabling in Test


Mode” in the Safety Rule Set “Operator Devices”.
The enabling devices of the industrial robot are the enabling switches on
the smartPAD and on the LBR iisy Commander.
• smartPAD: 4 enabling switches
• Commander: 2 enabling switches
The enabling switches have 3 positions:
• Not pressed
• Center position
• Fully pressed (panic position)
In operating modes T1 and CRR, the manipulator can only be moved if
one of these enabling switches is held in the center position (default con-
figuration).
It is possible to hold several enabling switches on the smartPAD simulta-
neously in the center position or both enabling switches on the Command-
er. It is not possible to move the manipulator if an enabling switch on the
Commander and an enabling switch on the smartPAD are held simultane-
ously in the center position.
In operating modes T1 and CRR, the manipulator can be stopped in the
following ways:
• Press at least one enabling switch down fully.
Fully pressing an enabling switch triggers a safety stop 1 (path-main-
taining).
• Release all enabling switches.
Releasing all (!) enabling switches held in the center position triggers
a safety stop 1 (path-maintaining).

WARNING
Danger to life and limb due to lack of reaction when an enabling
switch is released
Releasing one of multiple enabling switches held in the center position
does not trigger a stop reaction.
If multiple switches are held in the center position, the robot controller
cannot distinguish whether one of them was intentionally released or if it
was unintentionally released as the result of an accident.
• Create awareness for the hazard.

26/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

If an enabling switch malfunctions (e.g. jams in the center position), the

Safety
industrial robot can be stopped using one of the following methods:

• Press another enabling switch down fully.


• Actuate the EMERGENCY STOP device.
• Release the Start key.

WARNING
Danger to life and limb due to manipulation of enabling switches
The enabling switches must not be held down by adhesive tape or other
means or tampered with in any other way. Death, severe injuries or
damage to property may result.
• Carry out a visual inspection of the enabling switches.
• Rectify tampering or remove any foreign bodies.

3.5.5 Velocity monitoring

This safety function is preconfigured in the Safety Rule Set “Velocity Mon-
itoring”.
By default, the Cartesian velocity of the manipulator is limited. The follow-
ing Cartesian velocity limits are defined:
• Safety Rule “Velocity Limit T1”
Maximum velocity in T1/CRR: 250 mm/s
If the velocity limit is exceeded in T1 or CRR mode and manual guid-
ance is not active, i.e. no enabling switch on the Commander is press-
ed, a safety stop 1 (path-maintaining) is triggered.
In the case of manual guidance in T1/CRR, the velocity is not re-
duced, but is limited by the velocity monitoring configured in the
Safety Rule “Velocity Limit Manual Guidance”. By default, this velocity
limit is greater than 250 mm/s.
• Safety Rule “Velocity Limit Manual Guidance”
Maximum velocity for manual guidance
Preconfigured values depend on the version of the system software:
‒ Up to Version 1.0: 900 mm/s
‒ From Version 1.1 onwards: 500 mm/s
When manual guidance is active, i.e. an enabling switch on the
Commander is pressed, a safety stop 1 (path-maintaining) is triggered
if the velocity limit is exceeded.
The maximum velocity for manual guidance can be adapted. The val-
ue for this velocity limit must be defined in a risk assessment (recom-
mendation: < 1000 mm/s).
(>>> 9.18.4 "Velocity monitoring during manual guidance" Page 159)
• Safety Rule “Velocity Limit Global” (disabled by default)
Maximum global velocity: 2000 mm/s
When the Safety Rule is enabled, a safety stop 1 (path-maintaining) is
triggered as soon as the global velocity limit is exceeded.

3.5.6 Signal for operator safety

This safety function is preconfigured in the Safety Rule “Safety Door” in


the Safety Rule Set “Standard Safety Interface”.
The “Safety Door” signal is used for monitoring physical safeguards, e.g.
safety gates. According to the Safety Rule, the robot can only be moved

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 27/230


iiQKA.OS 1.2

in automatic mode if the “Safety Door” signal is set or the robot is guided
Safety

manually.
Operator safety is not active as standard in the Manual Reduced Velocity
(T1) and CRR modes. The signal is not evaluated.
If no physical safeguards are installed, the preconditions for collaborative
operation in accordance with EN ISO 10218 must be met. In this case,
the Safety Rule can be disabled or removed.
Reaction of the industrial robot in the event of a loss of signal during au-
tomatic operation (default configuration):
• The manipulator stops with a safety stop 1 (path-maintaining).
As standard, the safety gate is connected to the robot controller via input
IN_A1 of safety interface XG11.1.
Further information about the safety interface is contained in the assem-
bly instructions of the robot controller in the “Planning” chapter.

WARNING
Danger to life and limb due to resumption of automatic operation
without adequate checking
Following loss of the signal for operator safety, it must not be possible
to restart automatic operation by merely closing the safeguard. Other-
wise, for example, the safety gate could close unintentionally, thereby
causing automatic operation to resume while there are persons in the
danger zone. Death, severe injuries or damage to property may result.
• Automatic operation must not be resumed until the safeguard has
been closed and the closing has been acknowledged.
• The acknowledgement must be designed in such a way that an ac-
tual check of the danger zone can be carried out first. Acknowledge-
ment that is automatically and directly triggered by closure of the
safeguard is not permitted.
• If closure is acknowledged by a device (e.g. by the PLC), the sys-
tem integrator must ensure that the acknowledgement is preceded
by an actual check of the danger zone.

3.5.7 External EMERGENCY STOP device

This safety function is preconfigured in the Safety Rule “Emergency Stop


External” in the Safety Rule Set “Standard Safety Interface”. The Safety
Rule is disabled by default.
Every operator station that can initiate a robot motion or other potentially
hazardous situation must be equipped with an EMERGENCY STOP de-
vice. The system integrator is responsible for ensuring this.
Reaction of the industrial robot if the external EMERGENCY STOP device
is pressed (default configuration):
• The manipulator stops with a safety stop 1 (path-maintaining).
Before operation can be resumed, the EMERGENCY STOP device must
be released.
By default, external EMERGENCY STOP devices are connected via input
IN_A0 of safety interface XG11.1 of the robot controller. External EMER-
GENCY STOP devices are not included in the scope of supply of the in-
dustrial robot.
Further information about the safety interface is contained in the assem-
bly instructions of the robot controller in the “Planning” chapter.

28/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
3.5.8 EMERGENCY STOP output

This safety function is preconfigured in the Safety Rule “Emergency Stop


Internal” in the Safety Rule Set “Standard Safety Interface”.
The state of the EMERGENCY STOP device on the smartPAD is provided
at the safety-oriented output of safety interface XG11.1 by default. If the
EMERGENCY STOP is actuated, the output signal is set to LOW. Trigger-
ing an external EMERGENCY STOP does not (!) set the output signal for
the local EMERGENCY STOP.
Further information about the safety interface is contained in the assem-
bly instructions of the robot controller in the “Planning” chapter.

3.5.9 Monitoring functions for collaborative operation (HRC)

For collaborative operation without physical safeguards, the Safety Rule


Set “HRC (transient contact)” is preconfigured (available from version 1.1
of the system software onwards). The Safety Rule Set reduces the risk of
transient contact during automatic operation.
The following Safety Rules are included:
• Safety Rule “Collision detection”
Maximum external torque for collision detection: 30 Nm
A safety stop 1 (HRC) is triggered as long as a collision is detected
(maximum external torque exceeded) and manual guidance is not ac-
tive, i.e. no enabling switch pressed on the Commander.
• Safety Rule “Velocity Limit HRC (transient contact)”
Maximum velocity for collaborative operation: 500 mm/s
A safety stop 1 (path-maintaining) is triggered if the maximum velocity
limit is exceeded and manual guidance is not active, i.e. no enabling
switch pressed on the Commander.
Instructions on using the Safety Rule Set:
• To operate the robot without physical safeguards, the Safety Rule
“Safety Door” must be deactivated.
(>>> 3.5.6 "Signal for operator safety" Page 27)
• The Safety Rule Set does not provide sufficient risk reduction against
potential crushing hazards.
• For collaborative operation, it is advisable to comply with the safety re-
quirements of ISO/TS 15066.

3.5.10 External enabling device

External enabling devices are required if it is necessary for more than one
person to be in the danger zone of the industrial robot.
Multiple external enabling devices can be connected via the safety inter-
face of the robot controller. External enabling devices are not included in
the scope of supply of the industrial robot.
Further information about the available safety interfaces is contained in
the assembly instructions of the robot controller in the “Planning” chap-
ter.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 29/230


Safety iiQKA.OS 1.2

3.6 Additional protective equipment

3.6.1 Jog mode

In the operating modes T1 (Manual Reduced Velocity) and CRR, the robot
controller can only execute programs in jog mode. This means that it is
necessary to hold down an enabling switch and the Start key in order to
execute a program.
• Releasing the enabling switch on the teach pendant triggers a safety
stop 1 (path-maintaining).
• Pressing the enabling switch on the teach pendant fully down triggers
a safety stop 1 (path-maintaining).
• Releasing the Start key triggers a stop of Stop category 2.

3.6.2 Software limit switches

The axis ranges of all manipulator axes are limited by means of non-safe-
ty-oriented software limit switches. These software limit switches only
serve as machine protection and are preset in such a way that the manip-
ulator is stopped under servo control if the axis limit is exceeded, thereby
preventing damage to the mechanical equipment.

3.6.3 Options for moving the manipulator without drive energy

Qualification of personnel with regard to behavior in emergency


situations
In emergencies or other exceptional situations, it may be necessary to
move the manipulator without drive energy.
• Personnel must be trained in how to move the manipulator without
drive energy.

In order to be able to move the manipulator after an accident or malfunc-


tion without drive energy, it must be either dismounted or pushed against
the brakes.
NOTICE
Damage to property due to moving the manipulator without drive
energy
Moving the manipulator without drive energy can damage the motor
brakes of the axes concerned.
• Only move the manipulator without drive energy in emergencies,
e.g. for rescuing persons.
• Perform brake test.
The motor must be replaced if the brake has been damaged.

3.6.4 Labeling on the industrial robot

All plates, labels, symbols and marks constitute safety-relevant parts of


the industrial robot. They must not be modified or removed.
Labeling on the industrial robot consists of:
• Identification plates
• Warning signs
• Safety symbols

30/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
• Designation labels
• Cable markings
• Rating plates

Further information is contained in the technical data of the operating in-


structions or assembly instructions of the components of the industrial
robot.

3.6.5 External safeguards

The access of persons to the danger zone of the industrial robot must be
prevented by means of safeguards. It is the responsibility of the system
integrator to ensure this.
If there are no physical safeguards present, the requirements for collabo-
rative operation in accordance with EN ISO 10218 must be met.
Physical safeguards must meet the following requirements:

• They meet the requirements of EN ISO 14120.


• They prevent access of persons to the danger zone and cannot be
easily circumvented.
• They are sufficiently fastened and can withstand all forces that are
likely to occur in the course of operation, whether from inside or out-
side the enclosure.
• They do not, themselves, represent a hazard or potential hazard.
• Prescribed clearances, e.g. to danger zones, are adhered to.
Safety gates (maintenance gates) must meet the following requirements:

• They are reduced to an absolute minimum.


• The interlocks (e.g. safety gate switches) are linked to the configured
operator safety inputs of the robot controller.
• Switching devices, switches and the type of switching conform to the
requirements of Performance Level d and category 3 according to
EN ISO 13849-1.
• Depending on the hazard situation: the safety gate is additionally safe-
guarded by means of a locking mechanism that only allows the gate
to be opened if the manipulator is safely at a standstill.
• The device for setting the signal for operator safety, e.g. the button for
acknowledging the safety gate, is located outside the space limited by
the safeguards.

Further information is contained in the corresponding standards and reg-


ulations. These also include EN ISO 14120.

Other safety equipment

Other safety equipment must be integrated into the system in accordance


with the corresponding standards and regulations.

3.7 Mode selection

The operating mode can be changed by displaying the mode in the status
bar of the user interface.
Do not change the operating mode while a program is running. If the
operating mode is changed, the industrial robot stops with a safety
stop 1 (path-maintaining).

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 31/230


Safety iiQKA.OS 1.2

Operating modes

The industrial robot can be operated in the following modes:


• Manual Reduced Velocity (T1)
• Automatic (AUT)
• Controlled robot retraction (CRR)

Operating
Use Velocities
mode
T1 Programming, teaching and testing of • Program verification:
programs
Reduced programmed velocity,
maximum 250 mm/s
• Jog mode:
Jog velocity, maximum 250 mm/s
• Manual guidance:
No limitation of the velocity, but
safety-oriented velocity monitoring
in accordance with the safety con-
figuration
AUT Automatic execution of programs • Program mode:
For industrial robots with and without Programmed velocity
higher-level controllers • Jog mode:
Not possible
• Manual guidance:
Safety-oriented velocity monitoring
in accordance with the safety con-
figuration

32/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
Operating
Use Velocities
mode
CRR CRR is an operating mode which can • Program verification:
be selected when the industrial robot
Reduced programmed velocity,
is stopped by the safety controller for
maximum 250 mm/s
one of the following reasons:
• Jog mode:
• Industrial robot violates an axis- Jog velocity, maximum 250 mm/s
specific or Cartesian monitoring
• Manual guidance:
space.
No limitation of the velocity, but
• The tool orientation is outside the
safety-oriented velocity monitoring
permitted range.
in accordance with the safety con-
• Industrial robot violates collision figuration
detection or the maximum TCP
force monitoring function.
• One or more axes are unmastered.
• Mastering of one or more axis po-
sitions is not confirmed.
• Calibration of one or more joint tor-
que sensors is not confirmed.
• Maximum Cartesian velocity has
been exceeded.
• Maximum torque of an axis has
been exceeded, e.g. due to a
crushing situation.
After changing to CRR mode, the in-
dustrial robot may once again be
moved.
If the cause of the stop is no longer
present and no further stop is reques-
ted for 4 seconds by one of the speci-
fied causes, the operating mode
switches automatically to T1.

3.8 Safety measures

3.8.1 General safety measures

The industrial robot may only be used in perfect technical condition in ac-
cordance with its intended use and only by safety-conscious persons. Op-
erator errors can result in personal injury and damage to property.
It is important to be prepared for possible movements of the industrial ro-
bot even after the robot controller has been switched off and locked out.
Incorrect installation (e.g. overload) or mechanical defects (e.g. brake de-
fect) can cause the manipulator to sag. If work is to be carried out on a
switched-off industrial robot, the manipulator must first be moved into a
position in which it is unable to move on its own, whether the payload is
mounted or not. If this is not possible, the manipulator must be secured
by appropriate means.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 33/230


Safety iiQKA.OS 1.2

DANGER
Risk of fatal injury due to non-operational safety functions or exter-
nal safeguards
In the absence of operational safety functions or safeguards, the indus-
trial robot can cause death, severe injuries or damage to property.
• If safety functions or safeguards are dismantled or deactivated, do
not operate the industrial robot.

DANGER
Danger to life and limb of persons under the robot arm
Sagging or falling parts can cause death or serious injuries. This applies
at all times, e.g. also for assembly tasks or with the controller switched
off.
• Never loiter under the robot arm.

Implants

WARNING
Danger to life due to malfunction of implants caused by motors
and brakes
Electric motors and brakes generate electric and magnetic fields. The
fields can cause malfunctions in active implants, e.g. pacemakers.
• Affected persons must maintain a minimum distance of 300 mm
from motors and brakes. This applies to both energized and deener-
gized motors and brakes.

smartPAD

The user must ensure that the industrial robot is only operated with the
smartPAD pro by authorized persons.
If more than one smartPAD is used in the overall system, it must be en-
sured that it is clearly recognizable which smartPAD is connected to which
industrial robot. They must not be interchanged.
The enabling switches on the smartPAD must be subjected to a function
test at least once every 12 months and in certain specific cases.
(>>> "Function test" Page 36)

Modifications

After modifications to the industrial robot, checks must be carried out to


ensure the required safety level. The valid national or regional work safety
regulations must be observed for this check. The correct functioning of all
safety functions must also be tested.
New or modified programs must always be tested first in Manual Reduced
Velocity mode (T1).
After modifications to the industrial robot, existing programs must always
be tested first in Manual Reduced Velocity mode (T1). This applies to all
components of the industrial robot and includes modifications to the soft-
ware and configuration settings.

Faults

In the case of faults on the industrial robot, the following safety measures
must be implemented immediately:
• Switch off the robot controller and secure it (e.g. with a padlock) to
prevent unauthorized persons from switching it on again.

34/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
• Indicate the fault by means of a label with a corresponding warning
(tagout).
• Keep a record of the faults.
Carry out a functional test after the fault has been rectified.

3.8.2 Transportation

Manipulator

The prescribed transport position of the manipulator must be observed.


Transportation must be carried out in accordance with the operating in-
structions or assembly instructions of the robot.
Avoid vibrations and impacts during transportation in order to prevent
damage to the manipulator.

Robot controller

The prescribed transport position of the robot controller must be observed.


Transportation must be carried out in accordance with the operating in-
structions or assembly instructions of the robot controller.
Avoid vibrations and impacts during transportation in order to prevent
damage to the robot controller.

3.8.3 Start-up and recommissioning

Changing default passwords


The system software is supplied with default passwords for the user
groups. If the passwords are not changed, this enables unauthorized
persons to log on.
• Before start-up, change the passwords for the user groups.
• Only communicate the passwords to authorized personnel.

Before starting up systems and devices for the first time, a check must be
carried out to ensure that the systems and devices are complete and op-
erational, that they can be operated safely and that any damage is detec-
ted.
The valid national or regional work safety regulations must be observed
for this check. The correct functioning of all safety functions must also be
tested.
WARNING
Danger to life and limb due to incorrectly assigned cables
The robot controller is preconfigured for the specific industrial robot. The
manipulator and other components can receive incorrect data if they are
connected to a different robot controller. Death, severe injuries or dam-
age to property may result.
• Only connect the manipulator to the corresponding robot controller.

Do not impair safety functions


Additional components (e.g. cables and hoses) not supplied by KUKA
may be integrated into the industrial robot. If the safety functions are not
taken into consideration, this may result in death, severe injuries or
damage to property.
• Additional components must not impair or disable safety functions.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 35/230


Safety iiQKA.OS 1.2

NOTICE
Damage to property due to condensation
If the internal cabinet temperature of the robot controller differs greatly
from the ambient temperature, condensation can form. This may result
in damage to property.
• Wait until the internal cabinet temperature has adapted to the ambi-
ent temperature in order to avoid condensation.

Take substitute measures for minimizing risk in the case of incom-


plete start-up
Start-up is incomplete, for example, if not all safety functions have yet
been implemented, or if a function test of the safety functions has not
yet been carried out. The absence of substitute measures for minimizing
risk can result in death, serious injury or damage to property.
• Additional substitute measures for minimizing risk must be taken and
documented, e.g. installing a safety fence, attaching a warning sign,
locking the main switch.

Function test

The following tests must be carried out before start-up and recommission-
ing:
General test:
It must be ensured that:

• The industrial robot is correctly installed and fastened in accordance


with the specifications in the documentation.
• There are no foreign bodies or defective or loose parts on the industri-
al robot.
• There is no damage to the robot that could be attributed to external
forces.
WARNING
Danger to life and limb resulting from external forces
The external application of force, such as an impact or a collision,
can cause non-visible damage. For example, it can lead to a gradu-
al loss of drive power from the motor, resulting in unintended move-
ments of the manipulator.
Death, severe injuries or damage to property may result from non-
visible damage.
‒ Check the robot for damage that could have been caused by ex-
ternal forces, e.g. dents or abrasion of paintwork.
‒ In the case of damage, the affected components must be ex-
changed.

• All required safety equipment is correctly installed and operational.


• The power supply ratings of the industrial robot correspond to the
local supply voltage and mains type.
• The ground conductor and the equipotential bonding cable are suffi-
ciently rated and correctly connected.
• The connecting cables are correctly connected and the connectors are
locked.
Test of the safety functions:
A function test must be carried out for all the safety-oriented functions to
ensure that they are working correctly.
(>>> 9.23 "Safety acceptance" Page 173)

36/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Test of the safety-relevant mechanical and electromechanical compo-

Safety
nents:
The following tests must be performed prior to start-up and recommission-
ing, and at least once every 12 months unless otherwise determined in
accordance with a workplace risk assessment:
• Function of all connected EMERGENCY STOP devices
Press the EMERGENCY STOP device. A message must be displayed
on the teach pendant indicating that the EMERGENCY STOP has
been actuated. At the same time, no error message may be displayed
about the EMERGENCY STOP device.
• Function of the enabling switches of all connected enabling devices
Move the robot in Test mode and release the enabling switch. The ro-
bot motion must be stopped. At the same time, no error message may
be displayed on the teach pendant about the enabling device.
The test must always be carried out for all enabling switches of a con-
nected enabling device.
If the state of the enabling device is configured at an output, the test
can also be performed via the output.
• Panic function of the enabling switches of all connected enabling devi-
ces
Move the robot in test mode, press the enabling switch down and hold
in the panic position for 3 seconds. The robot motion must be stop-
ped. At the same time, no error message may be displayed on the
teach pendant about the enabling device.
The test must always be carried out for all enabling switches of a con-
nected enabling device.
If the state of the enabling device is configured at an output, the test
can also be performed via the output.
• Switch-off capability of the safety-oriented outputs
Switch robot controller off and then on again. After it is switched on,
no error message may be displayed on the teach pendant relating to
a safety-oriented output.
Test of the functional capability of the brakes:
For the industrial robot, a brake test is available which can be used to
check whether the brake of each axis applies sufficient braking torque.
The brake test ensures that any impairment of the braking function is de-
tected, e.g. due to wear, overheating, fouling or damage, thereby eliminat-
ing avoidable risks.
Unless otherwise determined by a risk assessment, the brake test must
be performed regularly:
• The brake test must be performed for each axis before start-up and
recommissioning of the industrial robot.
• The brake test must be carried out every 48 hours during operation.
A risk assessment can be used to determine whether the brake test is re-
quired for the specific application and how often the brake test must be
performed.

3.8.4 Manual mode

General

Manual mode is the mode for setup work. Setup work is all the tasks that
have to be carried out on the industrial robot to enable automatic opera-
tion. Setup work includes:

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 37/230


Safety iiQKA.OS 1.2

• Jog mode
• Teaching
• Programming
• Program verification
The following must be taken into consideration in manual mode:
• New or modified programs must always be tested first in Manual Re-
duced Velocity mode (T1).
• The manipulator and its tooling must never touch or project beyond
the safety fence.
• Workpieces, tooling and other objects must not become jammed as a
result of the industrial robot motion, nor must they lead to
short-circuits or be liable to fall off.
• All setup work must be carried out, where possible, from outside the
safeguarded area.

Setup work in T1

If it can be avoided, there must be no persons inside the safeguarded


area.
If it is necessary to carry out setup work from inside the safeguarded
area, the following must be taken into consideration in the operating mode
Manual Reduced Velocity (T1):
• If it can be avoided, there must be no more than one person inside
the safeguarded area.
• If it is necessary for there to be several persons inside the safeguar-
ded area, the following must be observed:
‒ Each person must have an enabling device.
‒ All persons must have an unimpeded view of the industrial robot.
‒ Eye-contact between all persons must be possible at all times.
• The operator must be so positioned that he can see into the danger
zone and get out of harm’s way.
• Unexpected motions of the manipulator cannot be ruled out, e.g. in
the event of a fault. For this reason, an appropriate clearance must be
maintained between persons and the manipulator, including the tool.
Guide value: 50 cm.
The minimum clearance may vary depending on local circumstances,
the motion program and other factors. The minimum clearance that is
to apply for the specific application must be decided by the user on
the basis of a risk assessment.

3.8.5 Simulation

Simulation programs do not correspond exactly to reality. Robot programs


created in simulation programs must be tested in the system in Manual
Reduced Velocity mode (T1). It may be necessary to modify the pro-
gram.

3.8.6 Automatic mode

Automatic mode is only permissible in compliance with the following safety


measures:
• All safety equipment and safeguards are present and operational.

38/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
• There are no persons in the system or the requirements for collabora-
tive operation in accordance with EN ISO 10218 have been met.
• The defined working procedures are adhered to.
If the manipulator comes to a standstill for no apparent reason, the
danger zone must not be entered until an EMERGENCY STOP has been
triggered.

3.8.7 Maintenance and repair

After maintenance and repair work, checks must be carried out to ensure
the required safety level. The valid national or regional work safety regula-
tions must be observed for this check. The correct functioning of all safety
functions must also be tested.
The purpose of maintenance and repair work is to ensure that the system
is kept operational or, in the event of a fault, to return the system to an
operational state. Repair work includes troubleshooting in addition to the
actual repair itself.
The following safety measures must be carried out when working on the
industrial robot:
• Carry out work outside the danger zone. If work inside the danger
zone is necessary, the user must define additional safety measures to
ensure the safe protection of personnel.
• Switch off the industrial robot and secure it (e.g. with a padlock) to
prevent it from being switched on again. If it is necessary to carry out
work with the robot controller switched on, the user must define addi-
tional safety measures to ensure the safe protection of personnel.
• If it is necessary to carry out work with the robot controller switched
on, this may only be done in operating mode T1.
• Label the system with a sign indicating that work is in progress. This
sign must remain in place, even during temporary interruptions to the
work.
• The EMERGENCY STOP devices must remain active. If safety func-
tions or safeguards are deactivated during maintenance or repair work,
they must be reactivated immediately after the work is completed.

DANGER
Danger to life and limb due to live parts
The robot system must be disconnected from the mains power supply
prior to work on live parts. It is not sufficient to trigger an EMERGENCY
STOP or safety stop, because parts remain live. Death or severe inju-
ries may result.
• Before commencing work on live parts, turn off the main switch and
secure it against being switched on again.
If the controller variant in question does not have a main switch
(e.g. KR C5 micro), turn off the device switch then disconnect the
power cable and secure it so it cannot be reconnected.
• Then check to ensure that the system is deenergized.
• Inform the individuals involved that the robot controller is switched
off. (e.g. by affixing a warning sign)

Faulty components must be replaced using new components with the


same article numbers or equivalent components approved by KUKA
Deutschland GmbH for this purpose.
Cleaning and preventive maintenance work is to be carried out in accord-
ance with the operating instructions.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 39/230


Safety iiQKA.OS 1.2

Robot controller

Even when the robot controller is switched off, parts connected to periph-
eral devices may still carry voltage. The external power sources must
therefore be switched off if work is to be carried out on the robot control-
ler.
The ESD regulations must be adhered to when working on components in
the robot controller.
Voltages in excess of 50 V (up to 780 V) can be present in various com-
ponents for several minutes after the robot controller has been switched
off! To prevent life-threatening injuries, no work may be carried out on the
industrial robot in this time.
On robot controllers with transformers, the transformers must be discon-
nected before working on components in the robot controller.
Water and dust must be prevented from entering the robot controller.

Hazardous substances

The following safety measures must be carried out when handling hazard-
ous substances:
• Avoid prolonged and repeated intensive contact with the skin.
• Avoid breathing in oil spray or vapors.
• Clean skin and apply skin cream.

Use current safety data sheets


Knowledge of the safety data sheets of the substances and mixtures
used is a prerequisite for the safe use of KUKA products. Death,
injuries or damage to property may otherwise result.
• Request up-to-date safety data sheets from the manufacturers of
hazardous substances regularly.

3.8.8 Decommissioning, storage and disposal

The industrial robot must be decommissioned, stored and disposed of in


accordance with the applicable national laws, regulations and standards.

3.8.9 Safety measures for Single Point of Control

The industrial robot can be controlled exclusively via the connected KUKA
smartPAD pro. The “Single Point of Control” principle (SPOC) has been
implemented and is assured by the system. No additional safety measures
are required.

3.9 IT security

3.9.1 Introduction

General information

KUKA products must only be used in perfect technical condition in accord-


ance with their intended use and only by safety-conscious persons.
In particular, safety-conscious use includes being operated in an IT envi-
ronment which meets the current security-relevant standards and for
which there is an overall concept for IT security.

40/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
Take measures to ensure IT security
IT security involves not only aspects of information and data processing
as such, but also affects at least the following areas:
• Technology, organization, personnel, infrastructure
KUKA urgently recommends that users implement an information securi-
ty management system for their products which designs, coordinates
and monitors the tasks related to information security.

Sources for information about IT security for companies include:


• Independent consulting firms
• National cybersecurity authorities
National authorities often make their recommendations available on the In-
ternet.

Integration into an existing IT environment

The following information about IT security must be considered together


with the integrator’s and user’s overall concept for IT security. On the ba-
sis of threat modeling and risk analyses, appropriate protective measures
must be derived and implemented for the respective use of the product.
These protective measures may be located in the following areas, among
others:
• Network segmentation (firewalls)
• Access protection (authentication and authorization)
• Encryption
• Logging
• Auditing
• Physical access protection
It is the responsibility of the integrator and the user to ensure that the sys-
tems and components associated with this product and the infrastructure
into which they are integrated provide adequate protection against IT se-
curity threats. This includes, among other things, protective measures
against:
• Malware
• Unauthorized access
• Impacts on the availability of the system
• Theft or loss of information

Product support lifecycle

The products used must be in an active product support lifecycle and


must not have been discontinued by the manufacturer. If this is not the
case, an upgrade or replacement must be obtained in order to be able to
maintain IT security. If this is not possible, further IT security measures
(depending on the IT security policies and other requirements) must be
taken in order to minimize the risk of operating a discontinued product.

Up-to-date information about the product

The latest information about the product, including information on IT se-


curity, is provided and updated in KUKA Xpert and must be accessed,
checked and observed there by the integrator and user.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 41/230


Safety iiQKA.OS 1.2

3.9.2 Measures for secure operation of the product

3.9.2.1 Physical access protection

The system integrator and user must take external measures to ensure
that only authorized and trained persons have physical access to the sys-
tem and its components, as well as connected systems, components and
networks. Examples of this include access restrictions to the rooms or
separately access-protected cabinets in which the respective system and
components, such as the robot controller and teach pendant, are housed
permanently or when not in use.

3.9.2.2 Network connection

The system has network interfaces for integration into IT and OT net-
works. If the network connectivity enables connections where trust boun-
daries would be transgressed, the following points must be considered in
detail:
• Threats and risks associated with them
• Additional measures that may need to be taken to protect the system

Fig. 3-1: Trust boundaries and network connectivity

42/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
Network requirements

The robot controller (including the teach pendant) may only be used in in-
ternal, segmented and inaccessible networks. Use in networks that are not
separately protected is not permitted. It is recommended to use firewall
solutions in order to allow only network connections between the robot
controller and other systems that are actually necessary.

3.9.2.3 Access management

Standard access data

Access to the robot controller via the teach pendant is protected so that
only authorized users can access the system and execute actions. The
default passwords preset on delivery must be changed immediately in ac-
cordance with the local IT security requirements. No passwords that are
easy to guess may be used.
Detailed information about changing the passwords can be found in the
chapter “General configuration” of the iiQKA.OS documentation.

Authorization concept

Information about the authorization concept can be found in the chapter


“General configuration” of the iiQKA.OS documentation.

Automatic logoff

• If no actions are carried out on the user interface for a specified time,
the current user is automatically logged out. Different times apply de-
pending on the user role:
‒ User: After 30 min. of inactivity
‒ Administrator: After 10 min. of inactivity
‒ Safety Commissioning Engineer: After 5 min. of inactivity

Requirements on the configuration of access protection

• All user roles must be protected using strong passwords.


• Depending on the local requirements, the implementation of an author-
ization concept is necessary.
• Users should be assigned only the minimum permissions required for
their respective tasks.
• Granted permissions must be regularly checked to ensure that they
are correct and up to date, and changes must be implemented
promptly.

3.9.2.4 Software updates

KUKA offers software updates and upgrades and, if necessary, separate


security updates for secure operation of the system. These must be imple-
mented in accordance with the customer-specific requirements when using
the system.
Information about the software update procedure can be found in the
chapter “General operation” of the iiQKA.OS documentation.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 43/230


iiQKA.OS 1.2

3.9.2.5 Data backup


Safety

In accordance with the customer-specific requirements when using the


system, a data backup concept must be established and implemented so
that all necessary data can be restored in the event of data loss on the
robot controller or an associated component.
Information about the procedure for data backup can be found in the
chapter “General operation” of the iiQKA.OS documentation.

3.9.2.6 USB interfaces

Only trustworthy USB devices may be connected to the system. Only con-
tent that comes from trustworthy sources and, if necessary, has been pre-
viously checked with an antivirus program may be written to the USB de-
vices. The data written to USB devices in the course of a data backup or
export may contain sensitive data. Appropriate IT security measures
should therefore be taken to protect these data accordingly.

3.9.2.7 Customer service access

The system features emergency SSH access to the Linux kernel system,
which is not enabled by default and can only be used by the customer
and KUKA Customer Support with local access to the system. This
access (Service Account) can be temporarily enabled via the HMI or via
the KSI interface (with an enabling tool). Administrator privileges are re-
quired for enabling access. After access has been enabled, an SSH serv-
ice is active at TCP port 22 on the KLI and KSI interfaces. It is only pos-
sible to log on via SSH with the access data of KUKA Customer Support.
Access is automatically disabled 30 minutes after enabling.
If customer service is required, it must be ensured that the SSH connec-
tion is established to the correct system (e.g. using a dedicated network
cable to the robot controller). Each robot controller has an individual SSH
host key, enabling the robot controller to be identified for future connec-
tions via the fingerprint of the SSH host key.
SSH access is intended for emergencies in which analysis or repair of the
software components is not otherwise possible, and it may no longer be
available in future versions of the product.
Information about enabling customer service access (Service Account)
can be found in the chapter “General configuration” of the iiQKA.OS
documentation.

3.9.2.8 Developer mode

Developer mode can be activated via the Administrator user role. As long
as Developer mode is activated, the SSH service at port 22 is accessible
from the network and the user can log on to the system via SSH with the
password set when activating the mode. This SSH access can be used to
install specially signed extensions for development purposes. On exiting
Developer mode, SSH access is disabled and the system is reset to its
state before Developer mode was activated.

44/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
3.9.3 IT security features of the product

3.9.3.1 General

On the basis of threat modeling and risk analyses, potential threats were
identified and necessary protective measures for the system were derived.
The following sections outline what these basic measures are, what
threats these measures target, and what broader aspects the system inte-
grator and user additionally need to consider. Since the system is subject
to ongoing development, only the most important protective measures are
explained here.

3.9.3.2 Firewalls

Description

The system has a firewall that protects against undesired network access.
Certain connections necessary for the system to function are only allowed
via defined interfaces. All other connections are blocked by the system.

Threats taken into consideration

The following potential threats were considered during the planning of the
described function:
• An attacker could access internal network services of the robot con-
troller or other components via the network.
• An attacker could use the network to access network services that
have been inadvertently enabled or network services that have been
enabled for temporary purposes only (e.g. for analytics).
• An attacker could exploit another vulnerability to start their own service
for various purposes or provide an existing service via a modified con-
figuration that could allow them direct access to the system (e.g. a
shell or FTP server).

Permitted connections

Up to version 1.0 of the system software, the firewall configuration of the


system cannot be adapted by the user. The following connections and re-
lated services are allowed in the standard installation:
• KLI IT interface
‒ Incoming: TCP port 22 (SSH) – customer service access
‒ Incoming: TCP port 80 (HTTP) – license information
• KLI OT interface
‒ Incoming: TCP port 22 (SSH) – customer service access
‒ Incoming: TCP port 80 (HTTP) – license information
• KONI interface
‒ Incoming: TCP port 22 (SSH) – customer service access
• KSI interface
‒ Incoming: TCP port 22 (SSH) – customer service access
‒ Incoming: TCP port 80 (HTTP) – license information
‒ Incoming: TCP port 49162 – enabling of customer service access
by customer

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 45/230


iiQKA.OS 1.2

From version 1.1 of the system software onwards, the firewall configura-
Safety

tion can be viewed by the user in the system settings. The following con-
nections and related services are allowed in the standard installation:
• KLI IT interface
‒ Incoming: TCP port 22 (SSH) – customer service access
‒ Incoming: TCP port 80 (HTTP) – license information
• KLI OT interface
‒ Incoming: TCP port 22 (SSH) – customer service access
‒ Incoming: TCP port 80 (HTTP) – license information
‒ Incoming: TCP port 44818 and UDP port 2222 – EtherNet/IP, can
be switched off
• KONI interface
‒ Incoming: TCP port 22 (SSH) – customer service access
• KSI interface
‒ Incoming: TCP port 22 (SSH) – customer service access
‒ Incoming: TCP port 80 (HTTP) – license information
‒ Incoming: TCP port 49162 – enabling of customer service access
by customer
Optional toolboxes can also provide additional services and open the ports
these require. The corresponding firewall rules are also displayed in the
system settings.
Unnecessary firewall rules can be deactivated in the system settings. The
correct functioning of the system or toolbox cannot be guaranteed in this
case.
Information about deactivating the firewall rules can be found in the
chapter “General configuration” of the iiQKA.OS documentation.

3.9.3.3 Encryption of communication

Description

With a few exceptions, communication with the system takes place in en-
crypted form and using procedures selected in accordance with the cur-
rent state of the art. Encrypted communication relationships:
• HTTPS between robot controller and my.kuka.com (access to software
updates)
• HTTPS between robot controller and KUKA Update Service (access to
software updates)
• SSH (if enabled) between local customer PC or customer service PC
and robot controller
Exceptions to encrypted communication:
• DHCP (local)
• DNS (local)
• HTTP access to license information

Threats taken into consideration

The following potential threat was considered during the planning of the
described function:
• An attacker who is able to monitor, read or redirect network traffic lo-
cally or remotely could obtain sensitive information, modify it or com-
promise the system.

46/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety
Cryptographic techniques used

The following cryptographic techniques are used:


SSL/TLS connections
• KUKA Update Service:
TLS 1.2 and TLS 1.3
• Web UI on the robot controller (accessible via smartPAD only):
TLS 1.1 and TLS 1.2
• Enabling of customer service access via KSI interface:
TLS 1.2 and TLS 1.3
SSH customer service access
• SSH protocol version 2.0
• SSH encryption algorithms:
[email protected], aes128-ctr, aes192-ctr, aes256-ctr,
[email protected], [email protected]
• SSH key exchange algorithms:
curve25519-sha256, [email protected], ecdh-sha2-
nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, diffie-hellman-
group-exchange-sha256, diffie-hellman-group16-sha512, diffie-hellman-
group18-sha512, diffie-hellman-group14-sha256
• Signature verification of software artifacts:
4096-bit RSA key and SHA-256 hashing
• Password hashing technique for HMI users:
Argon2

3.9.3.4 Checking of software updates

Software artifacts such as software updates and extensions are checked


for integrity and a valid cryptographic signature by the system prior to in-
stallation. Only software artifacts signed by KUKA are accepted and instal-
led. This only applies as long as the system has not been switched to De-
veloper mode. (>>> 3.9.2.8 "Developer mode" Page 44)

3.9.3.5 Preventing the installation of older software

Description

Software artifacts can only be updated through higher versions. It is not


possible to install older versions (downgrades).

Threats taken into consideration

The following potential threats were considered during the planning of the
described function:
• An attacker with temporary access to the system could gain deeper
access or persistence to the system by installing an older software ar-
tifact – and any vulnerabilities potentially contained therein.
• It should not be possible to exploit a vulnerability in the authorization
of software updates or a vulnerability that allows arbitrary software up-
dates to be copied onto the system in order to install older versions.
• If an older software update is foisted on an administrator, it should not
be possible to use it to install older versions.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 47/230


iiQKA.OS 1.2

3.9.3.6 Subdivision of the system


Safety

Description

Various techniques are used to separate individual software components


and services from one another and to restrict their permissions so that on-
ly those interactions between software components that are actually nec-
essary are possible. In the event that a single software component is
compromised, this makes it much more difficult for an attacker to infiltrate
the rest of the system.

Threats taken into consideration

The following potential threats were considered during the planning of the
described function:
• A vulnerability in a single software component could be exploited to
compromise the entire system.
• A vulnerability in a single software component could be exploited to in-
fluence functions provided by other software components.
• A vulnerability in a single software component could be exploited to
obtain information that is processed, managed or saved by other soft-
ware components.

3.9.3.7 Removal of non-essential software components and functions

Description

Non-essential software components and software functions have been re-


moved to reduce the attack surface. Examples include kernel functions,
kernel modules, userspace applications and application extensions that
are not required.

Threats taken into consideration

The following potential threats were considered during the planning of the
described function:
• Compromise of the system through exploitation of a vulnerability in a
non-essential software component or function.
• An attacker has the opportunity to quickly and easily infiltrate the sys-
tem and achieve their objectives, as various standard applications are
available that significantly minimize the effort required to do so.

3.9.3.8 Decommissioning the system

The system currently does not offer a function for securely deleting the
complete system. If there is a need to delete the complete system, KUKA
Customer Support should be contacted. Otherwise, it is recommended to
remove the hard drive and logically erase and physically destroy it de-
pending on the local IT security policies.

3.9.3.9 Further information on IT security

Further information about IT security can be found through the following


channels:
• KUKA Xpert
• KUKA Customer Support
• https://www.kuka.com/cybersecurity

48/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
4 General operation

4.1 Overview of the user interface

The basic elements of the user interface are described here. The following
elements are always present:
• Status bar (upper edge of screen)
• Control bar for jogging (right-hand edge of screen)
• Program control bar (left-hand edge of screen)
• Main view in the center

Fig. 4-1: Overview of the user interface

Item Description
1 Main menu
The main menu can be used, for example, to execute system
functions, configure network settings or display system informa-
tion and help.
2 Feature menu
The Feature menu offers all the functions required for start-up,
configuration and programming of the robot.
3 Alert display
Further information about the alert display can be found in the
help function under “Diagnosis”.
4 Display/selection of the operating mode
It is possible to change the operating mode via the display.
(>>> 4.4 "Changing the operating mode" Page 52)

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 49/230


General operation iiQKA.OS 1.2

Item Description
5 Display of the tool and display/setting of the motion frame and
the reference system for jogging

• A different motion frame can be set via the display. Besides


the robot flange, all TCPs created for the tool are available
for selection. Additionally, the configured workpieces can be
selected.
Further information about the configuration of tools and
workpieces can be found in the help function under “Pay-
load configuration” and under “3D scene”.
• A different reference system for jogging can be set via the
display.
(>>> 4.12 "Moving the robot manually" Page 62)
6 Display/setting of continuous/incremental jogging
The display can be used to activate or deactivate incremental
jogging as well as to set the increments for incremental jogging.
(>>> 4.12.3 "Incremental jogging" Page 66)
7 User button
Using this button, the user can switch to another user role or
log out.
(>>> 4.5 "Changing the user role" Page 53)
8 Help button
Activates or deactivates the context help. If the context help is
activated, the button is highlighted in orange.
(>>> 4.7 "Help" Page 54)
9 Control bar for jogging
10 Parameter view/detail view
Displays the parameters and properties or the details of an ele-
ment selected in the main view.
11 Toolbar of the current view
Different tools are available (or no tools) depending on the view.
12 Main view
Shows the main view of the function selected in the Feature
menu.
13 Menu of the current view

50/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
Item Description
14 Program control bar
Displays by means of icons the current function that can be
executed using smartPAD keys. The icon is highlighted in white
if the function is available.

• Pause key
The Pause key can be used to pause a running program or
to reset a paused program.
• Start key
The Start key can be used to start a program or to resume
a paused program. The Start key can also be used to man-
ually address frames or to move the robot back onto the
programmed path.
• Start backwards key (without function)
(>>> 4.14 "Program execution" Page 73)

4.2 Changing the user interface language

The language of the user interface can be changed. To do so, select Lan-
guage in the main menu.
The following languages are available:
Chinese (simplified) Dutch
Danish Polish
German Portuguese
English Romanian
Finnish Swedish
French Slovak
Italian Spanish
Japanese Czech
Korean Turkish
Hungarian

• The layout of the on-screen keyboard is automatically linked to the se-


lected language if the check mark at Synchronize with language is
set.
• The layout of the on-screen keyboard can be set independently of the
selected language by removing the check mark at Synchronize with
language.
• If no keyboard layout is available for the selected language, the Eng-
lish key assignment is used.

4.3 Shutting down or restarting the robot controller

Description

The robot controller can be shut down or restarted via the main menu.

Precondition

• Operating mode T1

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 51/230


General operation iiQKA.OS 1.2

Procedure

• In the main menu, select the desired entry:


‒ Shut down
The robot controller shuts down.
‒ Restart
The robot controller shuts down and restarts with a cold start.

4.4 Changing the operating mode

The operating mode can be changed by displaying the mode in the status
bar of the user interface.
Do not change the operating mode while a program is running. If the
operating mode is changed, the industrial robot stops with a safety
stop 1 (path-maintaining).

Operating
Use Velocities
mode
T1 Programming, teaching and testing of • Program verification:
programs
Reduced programmed velocity,
maximum 250 mm/s
• Jog mode:
Jog velocity, maximum 250 mm/s
• Manual guidance:
No limitation of the velocity, but
safety-oriented velocity monitoring
in accordance with the safety con-
figuration
AUT Automatic execution of programs • Program mode:
For industrial robots with and without Programmed velocity
higher-level controllers • Jog mode:
Not possible
• Manual guidance:
Safety-oriented velocity monitoring
in accordance with the safety con-
figuration

52/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
Operating
Use Velocities
mode
CRR CRR is an operating mode which can • Program verification:
be selected when the industrial robot
Reduced programmed velocity,
is stopped by the safety controller for
maximum 250 mm/s
one of the following reasons:
• Jog mode:
• Industrial robot violates an axis- Jog velocity, maximum 250 mm/s
specific or Cartesian monitoring
• Manual guidance:
space.
No limitation of the velocity, but
• The tool orientation is outside the
safety-oriented velocity monitoring
permitted range.
in accordance with the safety con-
• Industrial robot violates collision figuration
detection or the maximum TCP
force monitoring function.
• One or more axes are unmastered.
• Mastering of one or more axis po-
sitions is not confirmed.
• Calibration of one or more joint tor-
que sensors is not confirmed.
• Maximum Cartesian velocity has
been exceeded.
• Maximum torque of an axis has
been exceeded, e.g. due to a
crushing situation.
After changing to CRR mode, the in-
dustrial robot may once again be
moved.
If the cause of the stop is no longer
present and no further stop is reques-
ted for 4 seconds by one of the speci-
fied causes, the operating mode
switches automatically to T1.

4.5 Changing the user role

The user role can be changed by means of the user button in the status
bar of the user interface. Each user role is protected by means of a pass-
word.
• Change Role
The current user remains logged on until another user has logged on
with entry of the password. The role change can be canceled (close
the dialog via the X).
• Logout
The current user is logged out. To close the dialog, the user must log
on again with entry of the password.

• If no actions are carried out on the user interface for a specified time,
the current user is automatically logged out. Different times apply de-
pending on the user role:
‒ User: After 30 min. of inactivity
‒ Administrator: After 10 min. of inactivity
‒ Safety Commissioning Engineer: After 5 min. of inactivity

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 53/230


General operation iiQKA.OS 1.2

• If no user is logged on, the following operator actions are still possible:
‒ Stopping or pausing a program using the buttons on the smart-
PAD.

4.6 Displaying system information

Description

The following system information is available:


Tab Description
Info • Version of the KUKA Linux kernel system
• Version of the iiQKA.OS system software
• Robot type
• Name of the robot controller
Toolboxes Name and version of the installed toolboxes including
basic toolboxes (machine data of the robot; transla-
tion files for the system software)
smartPAD • Firmware version of the connected smartPAD
• Serial number of the connected smartPAD
Eula KUKA license conditions

Procedure

• In the main menu, select System Information.

4.7 Help

Description

The following help functions are available:


• Help center
All available instructions and support materials can be found in the
help center.
• Context help
The context help makes it possible to display help for selected fea-
tures directly in the interface context.

Procedure

Call the help center:


• In the main menu, select Help.
Activate and display the context help:
1. Activate context help by pressing the help button in the status bar. If
the context help is activated, the button is highlighted in orange.
Button Description

Context help is deactivated (dark display mode).

Context help is activated.

54/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
2. On the user interface, select the feature for which the context aid is to
be displayed.
3. If no context help is available for the selected feature, this is indicated
in a pop-up message: The help center can be called using the Open
Help button.

4.8 Backup & Restore

Description

The Backup & Restore dialog makes it possible to back up and restore
user-specific data. These data are:
• System settings
• I/O configuration
• Safety configuration
• Scene
• All programs
A USB stick is required as the storage medium. The USB stick must meet
the following requirements:
• Formatted as FAT32 or exFAT
• Sufficient free space

NOTICE
Data loss due to defective USB stick
A defect on the USB stick can cause a faulty backup to be created. In
this case, the backup cannot be restored. Restoration can also fail if a
correct backup has been created and a defect subsequently occurs on
the USB stick.
• Before every backup process, check the functionality of the USB
stick.
• Beyond this, save each backup at a second external storage loca-
tion.

Overview

The following functions are available in the Backup & Restore dialog win-
dow:
• Create a new backup
• Restoring a backup
• Deleting a backup

Once a change to the software installed on the robot controller is made,


all backups created up to that point are invalid:
• Update/upgrade of the system software
• Update/upgrade of a toolbox
• Reinstallation of a toolbox

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 55/230


General operation iiQKA.OS 1.2

Fig. 4-2: Backup & Restore

1 Main menu
2 New backup button
3 List of available backups
4 Restore button
5 Delete button (recycle bin)
6 Close button

Precondition

• Restoring a backup: “Safety maintenance” user role


• Operating mode T1 or CRR
• USB stick is connected to the robot controller.
• No program is running.

Procedure

Creating a backup:

1. Open the Backup & Restore dialog window via the main menu and
select the New backup button.
2. Enter a name for the backup and start the creation process using the
Create backup button.
The progress of the process is displayed. Once the process is com-
plete, the robot controller is automatically restarted.

NOTICE
Data loss due to premature removal of the USB stick
If the USB stick is removed while data are still being written, data may
be lost.
• Do not remove the USB stick until the robot controller has rebooted.

Restoring a backup:

1. Open the Backup & Restore dialog window via the main menu and
begin restoring the desired backup using the corresponding Restore
button.

56/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

The progress of the process is displayed. Once the process is com-

General operation
plete, the robot controller is automatically restarted.
2. If the restored safety configuration differs from the previous one, it
must be re-approved.
Deleting a backup:

• Open the Backup & Restore dialog window via the main menu and
delete the desired backup using the corresponding Delete button (re-
cycle bin).

4.9 Software

Description

The Software dialog window allows you to search for updates and up-
grades for the packages installed on the robot controller as well as to ex-
ecute updates and upgrades. It is also possible to search for compatible
toolboxes and to install and uninstall the toolboxes.

Procedure

• Select Software in the main menu to open the dialog window.

Overview

The following tabs are available in the dialog window:


• Operating System
Display of the installed operating system with the version number and
description
• Installed Toolboxes
Display of the installed toolboxes with the version number and descrip-
tion; uninstallation of the toolboxes
• Updates
Display and search for available updates; performing the updates
• Upgrades
Display and search for available upgrades; performing the upgrades
• Available Toolboxes
Display and search for available toolboxes; installation of toolboxes
• Settings
Configuration of software sources and activation/deactivation of devel-
oper mode

Software sources

Depending on the configuration, the following software sources are taken


into consideration when searching for available updates, upgrades and
toolboxes:
• Local source: USB stick on the robot controller
• Network source: my.kuka.com (update server)

4.9.1 Installed Toolboxes tab

Description

All installed toolboxes are displayed on the tab. Unnecessary toolboxes or


toolboxes that are no longer used can be uninstalled.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 57/230


General operation iiQKA.OS 1.2

Precondition

• “Administrator” user role


• Operating mode T1 or CRR
• No program is running.
• No motion is being executed.
• Developer mode is not active.

Procedure

1. Select the desired toolboxes for uninstallation (activate the check box).
2. Select the Continue to uninstall button. A list of the toolboxes selec-
ted for uninstallation is displayed.
• The delete button (recycle bin) can be used to remove a toolbox
from the list.
• To make a new selection, select the Go back button or remove all
toolboxes from the list.
3. Select the Uninstall button. A confirmation dialog window in which the
uninstallation can be canceled or started is displayed for 60 seconds.
4. Once the 60 seconds have elapsed, uninstallation starts automatically.
To start the uninstallation immediately, select the Start button.
• The progress of the uninstallation process is displayed.
• The uninstallation can be canceled at any time.
• Once the uninstallation is complete, the user interface is refreshed.

4.9.2 Updates tab and Upgrades tab

Description

The tabs can be used to check whether software updates/upgrades are


available for packages installed on the robot controller (e.g. system soft-
ware, toolboxes) or firmware updates for devices (e.g. smartPAD pro).
Available updates/upgrades are displayed on the corresponding tab and
can be carried out.
• During an update/upgrade, all installed packages for which newer ver-
sions are available are updated.
• The procedure for updates and upgrades is the same.
‒ In the case of upgrades, it must be noted that incompatible
changes may be included.
‒ For updates, on the other hand, compatibility is always guaran-
teed.

Once a change to the software installed on the robot controller is made,


all backups created up to that point are invalid:
• Update/upgrade of the system software
• Update/upgrade of a toolbox
• Reinstallation of a toolbox

Precondition

Searching for updates/upgrades:

• The desired software sources are available.


(>>> 4.9.4 "“Settings” tab" Page 60)

58/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Carrying out updates/upgrades:

General operation
• “Administrator” user role
• Operating mode T1 or CRR
• No program is running.
• No motion is being executed.

Procedure

1. Start the search for updates/upgrades under the corresponding tab us-
ing the Check for updates/Check for upgrades button.
• All available software sources are included in the search.
• If no software source is available, a corresponding error message
is displayed. For example, in the following cases:
‒ User not logged into my.KUKA and USB switch deactivated
‒ USB switch activated and no USB stick connected to the robot
controller
‒ USB switch activated and no update/upgrade available on the
USB stick
2. Select the Update/Upgrade button on the corresponding tab. A confir-
mation dialog window in which the update/upgrade can be canceled or
started is displayed for 60 seconds.
3. Once the 60 seconds have elapsed, the update/upgrade is started au-
tomatically. To start immediately, select the Start button.
• The progress of the update/upgrade is displayed.
• The update/upgrade can be canceled at any time.
• Once the update/upgrade is complete, depending on the software,
the robot controller is restarted or the user interface is refreshed.

4.9.3 Available Toolboxes tab

Description

On the tab, it is possible to check whether installable toolboxes are avail-


able. Available toolboxes are displayed on the tab and can be installed.

Precondition

Search for toolboxes:

• The desired software sources are available.


(>>> 4.9.4 "“Settings” tab" Page 60)
Installation of toolboxes:

• “Administrator” user role


• Operating mode T1 or CRR
• No program is running.
• No motion is being executed.

Procedure

1. Start the search for toolboxes using the Check for toolboxes button.
• All available software sources are included in the search.
• If no source is available, a corresponding error message is dis-
played. For example, in the following cases:

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 59/230


General operation iiQKA.OS 1.2

‒ User not logged into my.KUKA and USB switch deactivated


‒ USB switch activated and no USB stick connected to the robot
controller
‒ USB switch activated and no installable toolbox available on
USB stick
2. Select the desired toolboxes for installation (activate the check box).
3. Select the Continue button. A list of the toolboxes selected for instal-
lation is displayed.
• The delete button (recycle bin) can be used to remove a toolbox
from the list.
• To make a new selection, select the Go back button or remove all
toolboxes from the list.
4. Select the Install button. A confirmation dialog window in which the in-
stallation can be canceled or started is displayed for 60 seconds.
5. Once the 60 seconds have elapsed, installation starts automatically. To
start the installation immediately, select the Start button.
• The progress of the installation process is displayed.
• The installation can be canceled at any time.
• Once installation is complete, the user interface is refreshed.

4.9.4 “Settings” tab

Description

The software sources can be configured and Developer mode activated/


deactivated on the tab. In Developer mode, toolboxes created with the
SDK can be installed and tested on the system.

Software sources

• USB
This switch can be used to enable and disable a USB stick connected
to the robot controller as a source of software (precondition: “Adminis-
trator” user role).
• my.KUKA - Authentication
Displays the current authentication status for my.KUKA.
In order to be able to check whether new software or updates/
upgrades are available online, it is necessary to log into my.KUKA. To
be able to access my.KUKA, the robot controller must be connected to
the Internet.
• Authenticate
A user who is not logged in can use this button to start the authenti-
cation. The user is automatically redirected to the my.KUKA login page
and can log in there with the credentials of his or her my.KUKA profile.
‒ If no profile has been created yet, register with my.KUKA first (not
possible using the smartPAD).
‒ After successfully logging in, the user is returned to the scene
view and must reopen the Software dialog window.
• Logout from my.KUKA
A logged-in user can use this button to sign out of my.KUKA again.

60/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
Developer mode

• Activate/Deactivate
This button can be used to activate/deactivate Developer mode (pre-
condition: “Administrator” user role).
‒ The progress of the activation/deactivation process is displayed.
‒ Once activation/deactivation is complete, the robot controller is au-
tomatically restarted.
‒ A reboot is also carried out if activation/deactivation fails or is
aborted.

4.10 Firmware updates/upgrades

Description

Firmware updates/upgrades for the following devices, as is the case with


all available updates/upgrades, are displayed in the Software dialog win-
dow and can be carried out there.
• smartPAD pro
• KSP
• TPC

Procedure

1. In the main menu, select Software. The dialog opens.


2. Search for an update/upgrade on the Updates or Upgrades tab and
carry it out.
(>>> 4.9.2 "Updates tab and Upgrades tab" Page 58)

4.11 Coordinate systems

Coordinate systems or frames determine the position and orientation of an


object in space.
The following coordinate systems are relevant for the robot controller:
• WORLD
• BASE
• FLANGE
• TOOL

WORLD

The WORLD coordinate system is a permanently defined Cartesian coor-


dinate system. It is the root coordinate system for all other coordinate sys-
tems.
By default, the WORLD coordinate system is located at the robot base.

BASE

In order to define motions in Cartesian space, a reference coordinate sys-


tem (base) must be specified.
By default, the WORLD coordinate system is used as the BASE coordi-
nate system for a motion. In the 3D scene, further BASE coordinate sys-
tems can be defined relative to the WORLD coordinate system.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 61/230


General operation iiQKA.OS 1.2

FLANGE

The FLANGE coordinate system describes the current position and orien-
tation of the robot flange center point. It does not have a fixed location
and is moved with the robot.
The FLANGE coordinate system is used as an origin for coordinate sys-
tems which describe tools mounted on the flange.

TOOL

The TOOL coordinate system is a Cartesian coordinate system which is


located at the reference point of the currently selected load. This refer-
ence point can be the robot flange, the tool center point (TCP) of the tool
mounted on the flange, or the motion frame of a gripped workpiece. Multi-
ple TCPs can be created for a tool.
The origin of the TOOL coordinate system is generally identical to the
FLANGE coordinate system. When a TCP is calibrated, the TOOL coordi-
nate system is updated accordingly.

Position and orientation

In order to determine the position and orientation of an object, the coordi-


nates for translation and rotation relative to a reference coordinate system
(usually the parent object) are specified.

Coordinates for translation

Coordinate Description
X Translation along the X axis of the reference
coordinate system
Y Translation along the Y axis of the reference
coordinate system
Z Translation along the Z axis of the reference coordinate
system

Coordinates for rotation

Coordinate Description
Rx Rotation about the X axis of the reference coordinate
system
Ry Rotation about the Y axis of the reference coordinate
system
Rz Rotation about the Z axis of the reference coordinate
system

4.12 Moving the robot manually

The robot can be moved manually in the following ways:


• Axis-specific jogging
Each axis can be moved individually in the positive or negative direc-
tion using the jog keys on the smartPAD. Incremental jogging can also
be activated.
Precondition: Operating mode T1 or CRR
• Cartesian jogging
The set TCP or motion frame can be moved in the positive or nega-
tive direction along the axes of a coordinate system or rotated about

62/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

these axes using the jog keys on the smartPAD. Incremental jogging

General operation
can also be activated.
Precondition: Operating mode T1 or CRR
• Manual guidance
The robot can be moved in all directions using a hand guiding device.
The payload data are taken into consideration both in axis-specific and
Cartesian jogging and in manual guidance. It is possible to switch be-
tween different payloads, e.g. to move the robot manually with an empty
gripper or with a gripped workpiece.

4.12.1 Axis-specific jogging

Description

In axis-specific jogging, each robot axis is moved individually. This makes


all robot motions easy to predict.
• To do so, open the jogging options via the display in the status bar
and select the option Axis.

Fig. 4-3: Axis-specific jogging

1 Display/selection of jogging options


2 Show/hide control bar
3 Show/hide Axis limits window
4 Override button
5 Override window
6 Axis limits window (current axis positions)

Override

To move the robot more quickly or slowly, an override (in percent from 0
to 100%) can be set.
• The override refers to the maximum permissible velocity during jogging
(250 mm/s).
• The override button opens/closes the override window and displays
the current override setting.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 63/230


General operation iiQKA.OS 1.2

• The override can be set either by means of the corresponding plus/


minus key on the smartPAD or via the slider in the override window.
‒ Plus/minus key: The override can be set in steps to the following
values: 100%, 75%, 50%, 30%, 10%, 5%, 3%, 1%, 0%
‒ Slider: The override can be adjusted in 1% steps.

Motion enable

In order to receive the motion enable signal, an enabling switch on the


smartPAD must be pressed and held down.
• When motion is enabled, the axis designations are highlighted in white
on the control bar. The axes can be moved individually in the positive
or negative direction using the plus/minus jog keys on the smartPAD.
• The positive and negative direction of rotation of the axes is indicated
on the robot in the 3D scene.

Axis limits

The Axis limits window can be opened in order to move to a specific po-
sition in a more precise manner as well as to visualize the motion range.
• In the window, the current position of each axis relative to the
software limit switches is depicted graphically and in text form.
• The window can be freely moved on the user interface, so that it does
not conceal any currently required contents.

4.12.2 Cartesian jogging

Description

In Cartesian jogging, the robot is moved relative to a coordinate system.


• The robot flange, a tool TCP or a workpiece can be set as a motion
frame.
• The following coordinate systems can be selected in the jogging op-
tions:
‒ World
‒ Tool/Workpiece
The robot is moved in the coordinate system of the selected TCP
or in the motion frame of a gripped workpiece.
‒ Base
The robot is moved in the coordinate system of the selected base.

64/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
Fig. 4-4: Cartesian jogging

1 Display/selection of jogging options


2 Selection of TCP/motion frame
3 Selection of base (only with jogging option Base)
4 Show/hide control bar
5 Show/hide Axis limits window
6 Override button
7 Override window

Override

To move the robot more quickly or slowly, an override (in percent from 0
to 100%) can be set.
• The override refers to the maximum permissible velocity during jogging
(250 mm/s).
• The override button opens/closes the override window and displays
the current override setting.
• The override can be set either by means of the corresponding plus/
minus key on the smartPAD or via the slider in the override window.
‒ Plus/minus key: The override can be set in steps to the following
values: 100%, 75%, 50%, 30%, 10%, 5%, 3%, 1%, 0%
‒ Slider: The override can be adjusted in 1% steps.

Motion enable

In order to receive the motion enable signal, an enabling switch on the


smartPAD must be pressed and held down.
• When motion is enabled, the direction designations (X, Y, Z, Rz, Ry,
Rx) are highlighted in white on the control bar. The robot can be
moved in the positive or negative direction using the plus/minus jog
keys on the smartPAD.
• The jog keys for X, Y and Z move the set TCP or motion frame along
the X, Y or Z axis of the set coordinate system.
• The jog keys for Rz, Ry and Rx rotate the set TCP or motion frame
about the Z, Y or X axis of the set coordinate system.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 65/230


General operation iiQKA.OS 1.2

• The coordinate system, the TCP or motion frame and the directions of
motion are displayed in the 3D scene. The directions of motion are in-
dicated in color in the 3D scene and the control bar and assigned to
the jog keys.

Axis limits

The Axis limits window can be opened in order to move to a specific po-
sition in a more precise manner as well as to visualize the motion range.
• In the window, the current position of each axis relative to the
software limit switches is depicted graphically and in text form.
• The window can be freely moved on the user interface, so that it does
not conceal any currently required contents.

4.12.3 Incremental jogging

Description

Incremental jogging makes it possible to move the robot a defined dis-


tance, e.g. 10 mm or 3°.
• Incremental jogging can be activated for axis-specific and Cartesian
jogging.
• An enabling switch and the respective jog key must be kept pressed
until the set distance has been reached. The robot stops automatically
after reaching the set distance.
• If the robot motion is interrupted, e.g. by releasing the enabling switch,
the interrupted increment is not resumed with the next motion; a new
increment is started instead.
Areas of application:
• Positioning of equidistant points
• Moving a defined distance away from a position, e.g. in the event of a
fault

Fig. 4-5: Incremental jogging

1 Open the settings


2 Activate/deactivate incremental jogging
3 Select increment

66/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
Increments

Increment Description
100 mm / 10° 1 increment = 100 mm or 10°
10 mm / 3° 1 increment = 10 mm or 3°
1 mm / 1° 1 increment = 1 mm or 1°
0.1 mm / 0,005° 1 increment = 0.1 mm or 0.005°

Increments in mm:

• Valid for Cartesian jogging in the X, Y or Z direction


Increments in degrees:

• Valid for Cartesian jogging in the Rz, Ry or Rx direction


• Valid for axis-specific jogging

Precondition

• Operating mode T1 or CRR

Procedure

1. Open settings via the display in the status bar.


2. Activate incremental jogging.
3. Select the desired increment. Displayed in the status bar.
4. Press and hold down an enabling switch on the smartPAD.
5. Cartesian or axis-specific jogging of the robot over the set increment
can now be carried out using the jog keys.
6. If continuous jogging is to be resumed, open the settings again and
deactivate incremental jogging.

4.12.4 Aligning the tool with a base

Description

The Align Tool jogging option makes it possible to align the tool to a
base. The WORLD coordinate system can also be selected as the base.
• The tool can be aligned perpendicular to a plane of the selected base.
The plane can be selected:
‒ XY-Plane: Alignment to Z axis of the base
‒ XZ-Plane: Alignment to Y axis of the base
‒ YZ-Plane: Alignment to X axis of the base
• The tool can be aligned parallel to the selected plane.
• The motion between “perpendicular” and “parallel” can be continuous
or incremental.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 67/230


General operation iiQKA.OS 1.2

Fig. 4-6: Align Tool jogging option

1 Display/selection of jogging options


2 Selection of TCP/motion frame
3 Selection of base
4 Alignment to a base or to the world (switch)
5 Selection of the plane
6 Show/hide control bar
7 Jog keys display
8 Override display/setting

Jog keys

Special jog keys are available for the Align Tool jogging option.
The tool is aligned with the base using key 4. The other keys are as-
signed other jog options.
Key Icon Description
1+2 Example: Moving the tool along the base
When the jog keys are pressed, the TCP moves along the selected
plane of the base (in the example: XY plane).
Note: The axis of the base on which the tool is aligned is always the ax-
is perpendicular to the plane. This means the axis that is not (!) indica-
ted by an icon (in the example: Z axis).

3 Moving the tool in the Z direction


The tool moves in the positive or negative Z direction in the TCP coordi-
nate system.

• Plus: In the positive direction (+Z)


• Minus: In negative direction (-Z)

68/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
Key Icon Description
4 Aligning the tool with a base
The decisive factor is the axis that is perpendicular to the selected
plane. In the example above for keys 1+2: the Z axis in the XY plane).

• Plus: The Z axis of the TCP moves in the direction of the perpendic-
ular of the selected plane
• Minus: The Z axis of the TCP moves in the direction of the counter-
perpendicular of the selected plane
The motion extends over a maximum of 180°.
If, during the motion, the Z axis of the TCP reaches the position in which
it is aligned parallel to the selected plane (i.e. 90° to the perpendicular of
the plane), the robot stops there automatically.
The motion can be resumed by pressing the jog key again.
5 Rotate tool
The tool rotates about the Z axis of the TCP.

• Plus: Clockwise
• Minus: Counterclockwise
6 Swivel tool
The tool pivots about the axis perpendicular to the selected plane. The
angle relative to the base is not changed.

• Plus: Clockwise
• Minus: Counterclockwise

Precondition

• The desired override is set.


• The TCP and base for jogging have been selected.
• Operating mode T1 or CRR

Procedure

1. Move the TCP to the position from which the tool is to be aligned.
2. Align the tool to the desired base using key 4.
The orientation of the tool is visualized in the scene view.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 69/230


General operation iiQKA.OS 1.2

Fig. 4-7: Scene view when aligning the tool

1 Selected plane
2 Current tool orientation (Z axis of the selected TCP)
3 Perpendicular to the selected plane
4 Current direction of motion (here: plus direction / direction of
the perpendicular)

3. If the tool does not start to align, it may not be possible to address
the end point from the current position.
In this case, it is advisable to move incrementally and gradually ap-
proach the end point.
(>>> 4.12.3 "Incremental jogging" Page 66)
4. The motion extends over a maximum of 180°. If, during the motion,
the tool reaches the position in which it is aligned parallel to the selec-
ted plane, the robot stops there automatically.
5. The motion can be resumed by pressing the jog key again. As soon
as the tool is aligned perpendicular to the selected plane, the robot al-
so stops there automatically.

4.12.5 Manual guidance

Description

The robot can be guided manually with the LBR iisy Commander in all op-
erating modes.

Procedure

1. For manual guidance, grip the Commander on the robot with both
hands.
2. Press and hold down one of the enabling switches until the brakes re-
lease.

70/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
Fig. 4-8: Enabling switches on the Commander

• In manual guidance, the color of the LED ring on the Commander


changes to blue.
• In addition, the user interface on the smartPAD is bordered in blue
and a pop-up message indicates that manual guidance is in pro-
gress.
3. Guide the robot to the desired position.
4. Once the position has been reached, release the enabling switch. The
brakes are applied again.

4.13 Operating the user interface with the Commander

Description

The Commander enables operation of the robot in certain areas without


the need to use the smartPAD. The Commander has a rotary wheel and a
back key for this purpose. A dashed focus frame on the user interface in-
dicates which element is currently in focus. This focus frame can be shif-
ted using the rotary wheel. The rotary wheel can also be pressed and
thus functions as the OK key.
Operator control of the user interface with the Commander is currently
only possible in the object tree in the Feature menu Scene.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 71/230


General operation iiQKA.OS 1.2

Fig. 4-9: Rotary wheel and back key on the Commander

1 Rotary wheel with OK key


2 Back key

Functions of the rotary wheel

• Turn clockwise:
Switches to the next element down or to the right that can be focused
on.
• Turn counterclockwise:
Switches to the next element up or to the left that can be focused on.
• Short press:
Selects the currently focused element or triggers an action.
• Long press:
Opens a context menu if available in the focused element.
• Double press:
Opens or hides the focused element if it contains child elements.

Functions of the back key

• Short press:
Closes the context menu or dialog window and returns to the last fo-
cused element.
• Long press:
No function
• Double press:
No function

72/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
Fig. 4-10: Operating the user interface with the Commander

1 Focus frame (broken line)


2 Context menu

4.14 Program execution

A program opened in the program editor can be executed manually in T1


mode or automatically in AUT mode. The program displayed in the editor
is always started, unless another program is active in the background.
The current program is also displayed in the status bar.
During program execution, the LED ring on the LBR iisy Commander
lights up continuously green; in the case of a paused program, it flashes
green.
A program can be executed in any view. In the 3D scene, the robot will
move just like the robot in the real world.

4.14.1 Executing a program manually

1. Set operating mode T1.


2. Press and hold down the enabling switch on the smartPAD.
3. Press and hold down the Start key on the smartPAD.
The program runs as long as the enabling switch and Start key
remain pressed. Otherwise the program stops.

4.14.2 Executing a program automatically

1. Set the operating mode to AUT.


2. Press the Start key on the smartPAD. The program is executed auto-
matically.
To stop a program that has been started in Automatic mode, press the
Pause key on the smartPAD.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 73/230


General operation iiQKA.OS 1.2

4.14.3 Resetting a program

In order to start a paused program from the beginning, it must be reset.


• To reset the program, press the Pause key on the smartPAD.
• Alternatively, open the RUN SETTINGS window. There, press the Re-
set Program button.

Fig. 4-11: Reset Program (RUN SETTINGS)

4.14.4 Resuming a program

A paused program can be resumed at any time from the position at which
the program was interrupted. If the robot was moved manually during the
pause, the robot must first be returned to this position.
• The motion back to the starting position can be started in T1 and AUT
modes (using the Start key on the smartPAD).
• The enabling switch and Start key must be held down in T1 mode.
Otherwise, the motion will be stopped.
• The motion is executed automatically in AUT mode after the Start key
has been pressed. The motion can be stopped by pressing the Pause
key.
• Once the position at which the program can be resumed has been
reached, a confirmation dialog is displayed.
• The program is resumed by pressing the Start key on the smartPAD
again.

4.15 Brake test

Each robot axis has at least one holding brake integrated into the motor.
The brake test checks whether the braking torque is high enough. If the
brake test for an axis fails, the brake is defective and must be replaced.
The brake test ensures that any impairment of the braking function is de-
tected, e.g. due to wear, overheating, fouling or damage, thereby eliminat-
ing avoidable risks.
Unless otherwise determined by a risk assessment, the brake test must
be performed regularly for all axes:
• Before start-up and recommissioning of the industrial robot

74/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
• Every 48 hours during operation
A risk assessment can be used to determine whether the brake test is re-
quired for the specific application and how often the brake test must be
performed.

4.15.1 “Brake Test” view

Description

The view displays the brake test status of the individual robot axes.
Functions:

• Carrying out a brake test for all axes in one run


• Carrying out a brake test for an individual axis
• Settings for the cyclical brake test

Fig. 4-12: “Brake Test” view

1 Test all brakes


2 Open settings for the brake test
3 Test brake
4 Main view
5 Detail view

Procedure

• To open the view, select Setup > Brake Test in the Feature menu.

4.15.2 Brake Test Settings

Description

In the settings, the cyclical brake test can be activated and the brake test
cycle time can be set. The cycle time is composed of the following ele-
ments:
• Test interval
Once this time has elapsed, the brake test is requested.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 75/230


General operation iiQKA.OS 1.2

• Grace period
Once the test interval has elapsed, the grace period within which the
brake test has to be performed begins. When the grace period has
elapsed, the robot stops.

WARNING
Danger to life and limb due to inadmissible program start
Program execution must not be resumed following a failed brake test or
after the grace period has elapsed. Death, severe injuries or damage to
property may otherwise result.
• Shut down the robot immediately after a failed brake test and re-
place the defective brake.
• Do not restart the program after the grace period has elapsed. Per-
form the brake test first.
• Only restart the program after a successful brake test.

Procedure

1. Open the settings for the brake test (cogwheel).


2. Make and accept the required settings.

4.15.3 Performing a brake test

Description

The brake test can be performed for all axes or for individual axes. A wiz-
ard guides you through the required steps.

Precondition

• Operating mode T1 or CRR


• No program is running.
• Manual guidance is not active.
• In order to open the wizard, a safety stop must additionally be active.
Otherwise, the Test all brakes and Test brake buttons are deactiva-
ted.

Procedure

1. Start the brake test for all axes or an individual axis using the corre-
sponding button. The wizard opens.
2. Follow the instructions in the wizard.
3. Once the brake test has been successfully performed, the wizard is
automatically closed. The result of the brake test for each axis is dis-
played in the parameter view.

WARNING
Danger to life and limb due to inadmissible program start
Program execution must not be resumed following a failed brake test or
after the grace period has elapsed. Death, severe injuries or damage to
property may otherwise result.
• Shut down the robot immediately after a failed brake test and re-
place the defective brake.
• Do not restart the program after the grace period has elapsed. Per-
form the brake test first.
• Only restart the program after a successful brake test.

76/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
4.16 Mastering

Overview

Every robot must be mastered. Only with a mastered robot is it possible


for taught positions to be addressed with high repeatability. An unmas-
tered robot can only be moved manually (axis-specific jogging in T1 or
CRR mode).
During mastering, the robot is moved to a defined mechanical position:
the mastering position. Each robot axis is then assigned a motor angle in
this position.
The standard mastering position is similar, but not identical, for all robots.
The exact positions may even vary between individual robots of a single
robot type.

MMD mastering

All robot axes equipped with a magnetic mastering sensor (MMD) can be
mastered automatically. The mastering position of the axis (zero position)
is located in the center of a defined series of magnets. It is automatically
detected by the mastering sensor when it passes over the series of mag-
nets during a rotation of the axis.

4.16.1 Mastering view

Overview

The mastering view shows the mastering status of the individual robot ax-
es and enables the robot to be mastered. It is possible to master all axes
together in a single run or individual axes.
To open the mastering view, select Setup > Mastering in the Feature
menu.
• When the view is opened, the first unmastered axis is selected by de-
fault. Once all axes have been mastered, the first axis is selected.
• Mastering can be started using the following buttons:
‒ Master all axes button in the main view
‒ Master axis button in the detail view of a selected axis
A wizard opens which guides the user through all the required master-
ing steps.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 77/230


General operation iiQKA.OS 1.2

Fig. 4-13: Mastering

1 Master all axes button


2 Button for opening the mastering settings
3 Mastering position of the selected axis; graphical display or list of
axis values after Modify pose
4 Master axis button
5 Detail view
6 Main view

4.16.2 Mastering settings

Description

The following functions can be activated in the settings:


• Modify pose
‒ This setting allows the robot pose for mastering to be modified
(Move to pose for mastering page in the mastering wizard).
‒ It may be necessary to modify the pose if the recommended
standard mastering position cannot be used, e.g. due to the condi-
tions in the cell.
‒ An individual pose can be defined for each axis.
If at least one axis uses a user-defined pose for mastering, it is no
longer possible for all axes to be mastered in a single run. The
Master all axes button is grayed out.
‒ On exiting the mastering view, the Modify pose function is disa-
bled again (automatically).
‒ If at least one axis is unmastered while Modify pose is enabled,
Modify pose is also disabled again (automatically).
• Ignore mastering pose
‒ This setting makes it possible to master individual axes without the
robot standing in the currently configured pose for mastering.
‒ Ignoring the pose may be necessary, for example, if at least one
axis is unmastered and the robot cannot move to the pose due to
the circumstances in the cell.

78/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
As soon as all axes are mastered again, it is advisable to define
a suitable robot pose for mastering and to modify the pose ac-
cordingly.

‒ If the Ignore mastering pose function is activated, it is no longer


possible to master all axes in one run. The Master all axes button
is grayed out.
‒ On exiting the mastering view, the Ignore mastering pose func-
tion is disabled again (automatically).

Precondition

• Change pose: All axes are mastered

4.16.3 Mastering the robot

Description

The Master all axes and Master axis buttons in the mastering view open
a wizard that guides the user through the required mastering steps. These
steps are essentially independent of whether all axes are mastered in a
single run or a single axis is mastered.

Mastering rules

The repeatability and reproducibility of mastering are only guaranteed if


the procedure is always identical. The following rules must be observed:
• Always mount the same tool on the robot for mastering.
• Always use the same robot pose for mastering.
If a different tool or a different robot pose is used for mastering than with
the previous mastering, the mastering data will change.
NOTICE
Damage to property due to modified mastering data
Following a change to the mastering data, frames that have already
been taught may no longer be addressed correctly. Damage to property
may result.
• Reteach frames that have already been taught.

Precondition

• Operating mode T1 or CRR


• No program is being executed.
• Manual guidance is not active.
• In order to open the wizard, a safety stop must additionally be active.
Otherwise, the Master all axes and Master axis buttons are deactiva-
ted.

Procedure

The following pages in the wizard must be executed one after the other in
order to master the robot. Once a step has been successfully completed,
it is possible to switch to the next page with the Next button.
1. Set preconditions
• Set mastering tool

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 79/230


iiQKA.OS 1.2

The currently active tool mounted on the robot must be selected


General operation

for mastering. If the active tool differs from the tool used for the
previous mastering, the user has the following options:
‒ Use the load data of the tool from the previous mastering
again.
‒ Use the load data of the currently active tool.

NOTICE
Damage to property due to use of incorrect load data
The load data of the tool selected in the wizard are used for the
mastering motion. If a tool with different load data is mounted on
the robot, this can result in unexpected robot motions and dam-
age to property.
‒ Make sure that the selected tool is actually mounted on the
robot.

• Move to pose for mastering


For mastering, the robot must be in a defined pose.
The following functions are available:
‒ Option Move to pose
If the option is activated, the robot can automatically move to
the defined pose when an enabling switch and the Start key
on the smartPAD are pressed.
‒ Alternatively, each axis can be moved to the defined pose indi-
vidually using the jog keys on the smartPAD.
‒ Modify pose button
The button is only active if the Modify pose function is ena-
bled in the mastering settings, all axes are mastered and an
individual axis has been selected for mastering.
(>>> 4.16.2 "Mastering settings" Page 78)
Opens a dialog for modifying the robot pose for mastering. The
pose can be taught, its axis values entered manually or reset
to the default settings.

If the currently defined pose cannot be addressed and cannot be


changed due to at least one unmastered axis, the Ignore mas-
tering pose function can be activated in the mastering settings.
(>>> 4.16.2 "Mastering settings" Page 78)
If the setting is activated, it is possible to skip the page and
switch directly to the next page.

• Check position visually


The page is only displayed if the axis to be mastered has a user-
defined pose for mastering and if at least one axis has been un-
mastered.
In this case, it is not ensured that unmastered axes are actually in
the correct mastering positions, even though this is displayed in
the wizard. It must be checked visually on the robot that the real
positions of the unmastered axes match the expected positions:
‒ If the positions match, press the Position visually checked
check box and then Next.
‒ If the positions do not yet match, move the unmastered axes
to the correct positions first.
2. Execute mastering

80/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Press and hold down the enabling switch and Start key on the smart-

General operation
PAD as long as the mastering motion is in progress. Otherwise mas-
tering will be aborted.
3. Check result
The page is only displayed if all axes to be mastered had already
been mastered before mastering is performed.
(>>> 4.16.4 "Check result" Page 81)
4. Move to pose for mastering approval
In mastering confirmation, the correctness of the mastering is checked.
• After mastering, the robot is generally already in the defined pose
for mastering confirmation. The page is then skipped.
• If the robot is not yet correctly positioned, the following options are
available:
‒ Option Move to pose
If the option is activated, the robot can automatically move to
the defined pose when an enabling switch and the Start key
on the smartPAD are pressed.
‒ Alternatively, each axis can be moved to the defined pose indi-
vidually using the jog keys on the smartPAD.
5. Execute mastering approval
Press and hold down the enabling switch and Start key on the smart-
PAD as long as mastering confirmation is in progress. Otherwise, mas-
tering confirmation will be aborted.

4.16.4 Check result

Individual axes or all axes of a robot that has already been mastered can
be remastered in order to check the mastering result.
Once mastering has been carried out, the difference from the last master-
ing procedure is displayed on the Check result page. It is possible to as-
sess on the basis of the differences whether the previous mastering can
be retained or the new mastering applied.
• Discard button
Previous mastering is retained and wizard is closed.
• Apply mastering
New mastering is applied and wizard switches to next page.

NOTICE
Damage to property due to modified mastering data
Following a change to the mastering data, frames that have already
been taught may no longer be addressed correctly. Damage to property
may result.
• Reteach frames that have already been taught.

4.17 Calibration of the joint torque sensors

Description

The robot is supplied with calibrated joint torque sensors and can general-
ly be put into operation without recalibration. Calibration of the joint torque
sensors is only necessary if the factory settings no longer match. This can
be recognized as follows:
• Confirmation of the calibration of the joint torque sensors fails.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 81/230


General operation iiQKA.OS 1.2

• The robot begins to drift during manual guidance. If the enabling sig-
nal for manual guidance has been issued, the robot does not remain
stationary in its position. It drifts away, so slight counterpressure is
needed to keep it in position.

An inaccurate configuration of the load data or the installation direction


of the robot can also lead to a failure of the joint torque sensor calibra-
tion confirmation or drifting during manual guidance. It is therefore ad-
visable to check the correctness of these configuration data before reca-
librating the joint torque sensors.

The following functions are available in the view for calibration of the joint
torque sensors:
• Adjust all sensors button
Opens a wizard for calibration of the joint torque sensors.
• Factory reset button
Opens a dialog for resetting the joint torque sensors to the factory set-
tings.
The view also shows the robot pose required for the calibration. Calibra-
tion is only available for floor-mounted robots.

Procedure

• To open the view, select Setup > Service > Joint torque sensor in
the Feature menu.

4.17.1 Recalibrating all sensors

Description

The Adjust all sensors wizard guides the user through all the required
steps.

Precondition

• Operating mode T1 or CRR


• No program is being executed.
• Manual guidance is not active.
• In order to open the wizard, a safety stop must additionally be active.
Otherwise, the Adjust all sensors button is deactivated.

Procedure

1. Select the Adjust all sensors button. The wizard opens.


2. The following pages must be completed one after the other. Once a
step has been successfully completed, it is possible to switch to the
next page with Next.
a. Set preconditions
• Visual inspections
In order to achieve the best possible result, the following re-
quirements must be met:
‒ The load mounted on the robot matches the configured
load.
‒ There are no supplementary loads, e.g. dress packages,
mounted on the robot.

82/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General operation
‒ No external forces are applied to the robot during execu-
tion, e.g. by touching it.
• Move to pose for adjustment
The robot must be in a defined pose.
‒ Option Move to pose
If the option is activated, the robot can automatically move
to the defined pose when an enabling switch and the Start
key on the smartPAD are pressed.
‒ Alternatively, each axis can be moved to the defined pose
individually using the jog keys on the smartPAD.
b. Execute adjustment
Press the enabling switch and Start key on the smartPAD and hold
down until the process is completed.
Once calibration has been carried out successfully, the system au-
tomatically switches to the next page.
c. Move to pose for adjustment approval
• Option Move to pose
If the option is activated, the robot can automatically move to
the defined pose when an enabling switch and the Start key
on the smartPAD are pressed.
• Alternatively, each axis can be moved to the defined pose indi-
vidually using the jog keys on the smartPAD.
d. Execute adjustment approval
Press the enabling switch and Start key on the smartPAD and hold
down until the process is completed.
Once calibration has been successfully confirmed, the wizard is
automatically closed.

4.17.2 Resetting the sensors to factory settings

Description

The Factory reset dialog makes it possible to reset the sensors to the
factory settings.

Precondition

• Operating mode T1 or CRR


• No program is being executed.
• Manual guidance is not active.
• A safety stop is active.

Procedure

1. Select the Factory reset button. The dialog opens.


2. Select the Reset button. Once the sensors have been successfully re-
set, the dialog is automatically closed.

4.18 Confirmation of mastering and calibration of the joint torque sensors

Description

For start-up, it is necessary to check and confirm that the robot axes have
been correctly mastered and that the joint torque sensors have been cor-
rectly calibrated:

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 83/230


General operation iiQKA.OS 1.2

• Confirmation of mastering
The mastering of the axis position sensors of a kinematic system is
checked. This means that a check is performed as to whether the ac-
tual mechanical axis position matches the measured axis position.
• Confirmation of calibration of the joint torque sensors
The calibration of the joint torque sensors of a kinematic system is
checked. For this purpose, checks are made at various measurement
positions to determine whether the expected torques of the axes cor-
respond to the actual axis torques. The expected axis torques are cal-
culated on the basis of the robot model and the configured load data.

Certain events result in a loss of confirmation, e.g. a reboot of the robot


controller. The confirmation must then be performed again. Further infor-
mation can be found in the help function under “Safety configuration”.

“Approval” view

The view shows the status of the mastering confirmation and the status of
the calibration confirmation for each axis.
To open the view, select Setup > Approval in the Feature menu.

Approval settings

During execution of mastering confirmation, all axes are moved. Here it is


possible to set whether all axes are to be moved simultaneously (default
setting) or one after the other.

Fig. 4-14: Approval settings

Safety integrity of joint torque sensor calibration confirmation

The following points must be ensured before the confirmation is per-


formed:
• The load data of the tool mounted on the robot flange match the load
data with which the safety-oriented tool was configured.
• The tool has not picked up a workpiece.
• There are no supplementary loads, e.g. dress packages, mounted on
the robot.
If any of these points are not met, the safety integrity of the confirmation
is not given.

84/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

If the kinematic system to be checked is fastened to a carrier kinematic

General operation
system (e.g. mobile platform, linear unit), the following points must be en-
sured as well:
• The carrier kinematic system must not be moved while the confirma-
tion is being performed.
• The mounting direction of the kinematic system to be checked may
not differ from the configured mounting direction during confirmation
(e.g. due to tilting of the mobile platform).
If any of these points are not met, the safety integrity of the confirmation
is not given.

Procedure

1. In the Feature menu, select Setup > Approval.


2. Start the desired confirmation using the corresponding button:
• Approve mastering
• Approve joint torque sensor adjustment
A wizard opens which guides the user through all the required steps.
3. Once mastering or calibration has been successfully confirmed, the
wizard is automatically closed. The result of the confirmation is dis-
played in the main view.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 85/230


General operation iiQKA.OS 1.2

86/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General configuration
5 General configuration

5.1 User roles and rights management

A user has certain rights depending on the role. Each user role is protec-
ted with an initial default password. The default password for all user roles
is “kukakuka”. The password can be changed for each user role.
(>>> 5.2.4 "Changing a user password" Page 90)
Change default passwords
If the default passwords are not changed, this enables unauthorized
persons to log on.
• Before start-up, change the password for all user roles.
• Only communicate the passwords to authorized personnel.

Keep the administrator password in a secure place


The administrator password cannot be restored. If the password is for-
gotten, the System Software must be reinstalled.
• Keep the administrator password in a secure place.

The following user roles are available as standard:


• User
The user is authorized to access all functions required for operation of
the robot.
The user is not authorized to make safety-relevant or administrative
settings, but can view the safety-relevant settings.
• Safety Commissioning Engineer
The user “Safety Commissioning Engineer” is responsible for starting
up the safety equipment of the industrial robot. Only the Safety Com-
missioning Engineer is authorized to modify the safety configuration on
the robot controller, to approve the safety configuration and to move
the robot prior to approval of the safety configuration.
• Administrator
The administrator is responsible for administrative tasks, e.g. user and
password management or carrying out updates.
In addition to their role-specific rights, “Safety Commissioning Engineer”
and “Administrator” have the rights of the user role “User”.

5.2 System settings

5.2.1 Network settings

Description

The network addresses for the following Ethernet interfaces of the robot
controller can be configured in the system settings:
• KLI OT, interface XF5
• KLI IT, interface XF2
• KONI, interface XF7
The interfaces can be assigned either a static network address or a dy-
namic network address:

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 87/230


General configuration iiQKA.OS 1.2

• Automatic (DHCP)
If this option is selected, a DHCP server in the network automatically
assigns all settings.
• Manual (static)
If this option is selected, all settings can be entered manually.
• Optionally, a description or a comment can be entered for each inter-
face.

Fig. 5-1: Network settings, KLI OT

1 Main menu
2 Assignment options
3 IP Address
4 Subnet mask
5 Gateway
6 Preferred DNS server
7 Alternative DNS server
8 Description/comment (optional)

Precondition

• “Administrator” user role


• Operating mode T1 or CRR

Procedure

1. In the main menu, select System Settings > Network.


2. Select the interface and make the desired settings.
3. To save, select the Apply button.

5.2.2 Proxy network settings

Description

Communication with a proxy can be activated and configured in the sys-


tem settings.

88/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General configuration
Precondition

• “Administrator” user role


• Operating mode T1 or CRR

Procedure

1. In the main menu, select System Settings > Proxy.


2. Activate proxy via the Active switch.
3. Enter a valid proxy address (URL or IP address) and the associated
port.
4. To save, select the Apply button.

5.2.3 Firewall rules

Description

The firewall rules defined for the robot system can be displayed in the
system settings.
• Each firewall rule includes the following information:
‒ Network protocol, e.g. TCP or UDP
‒ Port number
‒ Status
‒ Name and description
‒ Origin, e.g. system or toolbox
‒ Network interface, e.g. KLI IT, KLI OT, KONI or KSI
• Firewall rules can be sorted by name, protocol, port and status (in de-
scending/ascending order).
• Each firewall rule opens a specific port via the defined network inter-
face. To close a specific port, the corresponding rule can be deactiva-
ted.
Deactivating a rule can limit the functionality of the system, toolbox,
etc.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 89/230


General configuration iiQKA.OS 1.2

Fig. 5-2: Firewall rules

1 Main menu
2 Open/close all rules
3 Sorting options, descending/ascending
4 Rule open
5 Status switch activated

Precondition

• “Administrator” user role

Procedure

1. In the main menu, select System Settings > Firewall.


2. Open the firewall rule.
3. Activate or deactivate the firewall rule using the Status switch.

5.2.4 Changing a user password

Description

The password for each user role can be changed in the system settings.

Precondition

• “Administrator” user role

Procedure

1. In the main menu, select System Settings > User roles.


2. Select user role.
3. Enter a new password 2 times for the selected user role.
4. Select the Change password button.

90/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

General configuration
5.2.5 Display settings

Description

The following display settings are possible:


• Theme
Dark or light display mode can be set. The change is effective imme-
diately.
• Brightness
The change via the slider control is effective immediately.
• Screensaver
Various screensavers and times for switching to the screensaver can
be set.
‒ The Preview button shows a preview of the screensaver.
‒ The following setting deactivates the screensaver: Show after >
Never

Procedure

1. In the main menu, select System Settings > Display.


2. Make the desired settings.

5.2.6 Date and time settings

Description

The time zone, date and time can be set in the system settings. Once the
date and time have been changed, the controller is restarted.

Precondition

• “Administrator” user role

Procedure

1. In the main menu, select System Settings > Date and Time.
2. Make the desired settings.
3. To save, select the Apply or Apply and restart button.

5.2.7 Configuring the name of the robot controller

Description

The name of the robot controller can be configured in the system settings.

Precondition

• “Administrator” user role


• Operating mode T1 or CRR

Procedure

1. In the main menu, select System Settings > Controller.


2. Assign the desired name.
3. To save, select the Apply button.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 91/230


General configuration iiQKA.OS 1.2

5.2.8 Service Account

Description

The service account can be activated in the system settings. Activation of


the account enables KUKA Customer Support to connect to the robot con-
troller via SSH.

Precondition

• “Administrator” user role

Procedure

1. In the main menu, select System Settings > Service Account.


2. Activate the service account via the switch. The service account is au-
tomatically deactivated once the specified timeout has expired.
3. The access time can be extended using the Timer reset button. The
timeout starts to run from the beginning.

92/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

I/O configuration
6 I/O configuration

6.1 Physical inputs and outputs

Description

Physical inputs and outputs are made available by the devices connected
to the bus. The system may contain multiple physical inputs and outputs
that can be displayed, parameterized or mapped as required. Inputs are
signals that the controller receives from an external source, e.g. the val-
ues of a sensor, while outputs are signals that the controller sends to ex-
ternal equipment, e.g. instructions to a gripper. The various inputs and
outputs are managed on the main page of the Physical I/O interface.
Changes to physical inputs and outputs can only be carried out in T1
mode. In the case of safe physical inputs and outputs, changes are only
possible with the Safety Commissioning Engineer role.
It is advisable to make all desired changes before saving the changes
via the Apply button.

Overview

Fig. 6-1: Main page of the Physical I/O interface

Item Description
1 Select the bus instance

• KUKA Controller Bus (KCB)


• KUKA System Bus (SYS-X48)
• KUKA Extension Bus (SYS-X44)
Only available if the bus is enabled in the Bus Topology in
the I/O configuration settings.
• PROFINET
Only available if the bus is enabled in the Bus Topology in
the I/O configuration settings.
2 Accept changes
Note: The button is active if changes have been made in T1
mode and no program is running.
3 Discard changes

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 93/230


I/O configuration iiQKA.OS 1.2

Item Description
4 Show and hide columns
Note: Hiding columns allows long I/O names to be displayed in
full.
5 I/O filter
The I/Os can be filtered by direction, safety and mapping.
6 Display of the mapped signals in the Mapped To area
The following actions can be executed by touching a mapped
signal:

• Edit signal parameters


• Cancel the mapping of signals
• Edit scaling parameters
7 Physical I/Os of the selected device
8 Expand and collapse the device

6.1.1 Mapping physical inputs and outputs

Physical inputs and outputs can be mapped to an existing signal or a new


signal.

Precondition

• When mapping the I/Os to the KUKA Extension Bus (SYS-X44) or


PROFINET:
The bus is enabled in the Bus Topology in the I/O configuration set-
tings.

Procedure

1. Select the desired bus and expand the device.


2. Select a physical I/O or an individual bit of a physical I/O and then
press the Map button in the Mapped To area. A dialog is opened.
3. Select a predefined bit length.
Alternative: Enter the bit length manually in the input box.
Only bits with the same properties (direction, safety) can be mapped
together.

4. Press Continue to switch to the Map selected bits to... page and se-
lect the desired mapping option:
• Option Map to existing signal
• Option New signal
5. Press Continue to switch to the mapping page.
6. If the Map to existing signal option is selected:
a. Select the signal that is to be mapped.
All available signals are displayed. If necessary, filter the availa-
ble signals.

b. Press Finish to apply the mapping.


7. If the New signal option is selected:
a. Set the signal parameters.

94/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

I/O configuration
By default, the parameters (direction, safety, name) of the selec-
ted I/Os are applied for the new signal.

Only for signals of type NUMBER:


b. Switch to the next page by means of Continue and set the param-
eters for conversion.
c. Optional: Switch to the next page by means of Continue and set
the parameters for scaling.
d. Press Finish to apply the mapping.
Detailed information can be found in the following section:
(>>> 6.2.2 "Creating and mapping a new signal" Page 96)

6.2 Signals

Description

Signals are the interface on the controller to physical inputs and outputs.
The system may contain multiple signals that can be displayed, parame-
terized or mapped as required. The different signals are managed on the
main page of the signals interface. Signals can be set in different data
types. The data types BOOL, Number and RAW are supported.
Changes to signals can only be made in T1 mode. In the case of safe
signals, changes are only possible with the Safety Commissioning Engi-
neer role.
It is advisable to make all desired changes before saving the changes
via the Apply button.

Overview

Fig. 6-2: Main page of the signals interface

Item Description
1 Create new signal
2 Delete non-mapped signals
3 Accept changes
Note: The button is active if changes have been made in T1
mode and no program is running.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 95/230


I/O configuration iiQKA.OS 1.2

Item Description
4 Discard changes
5 Show and hide columns
Note: Hiding columns allows long I/O names to be displayed in
full.
6 I/O filter
The I/Os can be filtered by direction, safety and mapping.
7 Detail view of the signal parameters
8 Detail view for signal mapping
If an unmapped signal is selected, the Map signal button is dis-
played.
If a mapped signal is selected, the Unmap signal button is dis-
played.
The scaling parameters can be edited using the Edit scaling
button.
9 Expand and collapse signal collection
10 Signals belonging to the selected signal collection

6.2.1 Signal collections

The following predefined signal collections are available:

User Signals

• On delivery, the collection contains predefined signals that are mapped


to physical I/Os of the IFB-STD.
• The user can create new signals in the signal collection.
• The user can edit or delete the signals if they are not mapped.

User Safety Signals

• On delivery, the collection contains predefined signals that are mapped


to physical I/Os of the KSP-300.
• The user can create new signals in the signal collection.
• The user can edit or delete the signals if they are not mapped.

SCHUNK Gripper Signals

• The signal collection is write-protected.


• On delivery, the collection contains predefined signals that are mapped
to physical I/Os of the IFB-STD.
• The user cannot create new signals in the signal collection.
• The user cannot edit or delete the signals, but may change their map-
ping.

6.2.2 Creating and mapping a new signal

New signals can be created and mapped on the main page of the signals
interface.

Procedure

1. Press the New signal button. A dialog is opened.

96/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

I/O configuration
2. Set the signal parameters.
3. Press Continue to switch to the mapping page.
Alternative: Press Finish to create the new signal without mapping. It
can subsequently be mapped in the detail view of the signal.
4. On the mapping page, select the physical I/O that is to be mapped.
If the list of I/Os displayed is too long, it is possible to filter for the bus
and device.
Multiple mapping is not possible.

Only for signals of type NUMBER:


5. Switch to the next page by means of Continue and set the parame-
ters for conversion.
6. Defines the type of number:
• Integer or floating-point number
• Signed or unsigned
7. Optional: Switch to the next page by means of Continue and set the
parameters for scaling.
8. Activate scaling to set parameters.
9. Select method:
• Min-Max
• Factor-Offset
10. If the Min-Max method is selected:
a. Optional: Enter the unit.
b. Define the input values (min and max).
c. Define the process values (min and max).
The scaling factor is determined.
11. If the Factor-Offset method is selected:
a. Optional: Enter the unit.
b. Enter the scaling factor and offset value.
The process value is calculated.
c. Add further calculations if necessary.
The input value is added.
12. The new signal is created with Finish and the mapping is applied.

6.3 Bus Topology

Description

The bus topology defines the structure of the bus system with all connec-
ted devices and their connections to one another.
The various buses are displayed on the main page of the Bus Topology
interface.
As standard, the bus topology configured on the controller and the de-
vice parameters available offline are displayed. For comparison with the
real bus structure – the display of the online parameters of the devices
including diagnostic information – the bus system must be updated.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 97/230


I/O configuration iiQKA.OS 1.2

Overview

Fig. 6-3: Main page of the bus topology interface

Item Description
1 Expand and collapse bus topology with device connections
2 Add device to KUKA Extension Bus (SYS-X44) or PROFINET
3 Delete device from KUKA Extension Bus (SYS-X44) or PROFI-
NET
4 Accept changes
Note: The button is active if changes have been made in T1
mode and no program is running.
5 Discard changes
6 Open I/O configuration settings
The KUKA Extension Bus (SYS-X44) and the PROFINET bus
instance can be enabled/disabled in the configuration settings.
In this way, the activated bus instance is added to/removed
from the bus topology.
7 Open Device manager
8 Parameter view of the selected device
9 Diagnostic data of the selected EtherCAT bus topology

6.3.1 Compare Online/Offline topology

Description

For the KUKA Extension Bus, it is possible to compare the online


topology with the offline topology by means of a bus scan using the Com-
pare Online/Offline topology button. In this way, the scanned devices
are saved in the topology. If the KUKA Extension Bus is empty before the
bus scan is performed, the scanned devices are automatically saved with
the standard configuration from their device description file. Devices that
have already been configured are retained.
The devices already configured are identified in the scanned topology by
assigning numbers. The newly scanned devices are highlighted in color
and are not assigned to any number.

98/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

It is possible to assign an existing configuration to another identical de-

I/O configuration
vice. The default configuration is then automatically assigned to the origi-
nal device.

Precondition

• The device description files of the connected devices have been im-
ported.

6.3.2 Update PDOs

Description

In the parameter view of a device in the KUKA Extension Bus, the proc-
ess data objects (PDOs) can be updated using the Update PDOs button.
The process data objects of a device can be displayed using the Open
device configuration button.

Precondition

• The device supports the Update PDOs function.


• The configured topology of the KUKA Extension Bus matches the top-
ology of the connected device.

6.3.3 Device manager

The Device manager window contains the following areas:


• Device overview
• Device description files
• Import

Device overview

• List of available devices with the name of the vendor, the version of
the device and the device description file
• Search box for quickly locating a device

Device description files

• List of devices already imported with the name of the vendor and the
devices it contains
• Search box for quickly locating a file or device in a file
• Select a specific vendor
• Delete selected files
• Only EtherCAT device description files are supported (ESI files)

Import

The following steps are required in order to import device description files
from a USB stick:
1. Prepare the USB stick with the KUKA folder at the top level.
2. Download the required device description files from the vendor and
save them in the KUKA folder.
3. Plug the USB stick into the robot controller.
4. Press the Refresh button.
A confirmation is displayed when the import has been successfully
completed.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 99/230


I/O configuration iiQKA.OS 1.2

• Files with an error cannot be imported.


• Files with a warning can be imported.
• A file that has already been imported cannot be imported again.
• To update a file already imported, the existing version must first be
deleted.

6.3.4 Configuration of EtherCAT devices

On the main page of the Bus Topologyinterface, the user can make the
following changes to EtherCAT devices.
By means of the Add device button:
• Add a bus instance
• Add a device at the end of an EtherCAT branch
• Continuous addition: Add a device with the option of directly adding
its children
• Add a device between two other devices
Only compatible devices are displayed for adding.

By means of the Delete button (recycle bin):


• Delete a bus instance
• Delete a device at the end of an EtherCAT branch
• Delete a device and its connected devices
• Delete a device but retain connected devices
• Delete an EK1100 and automatically also the configured EL devices
that cannot remain in the topology without the EK1100 gateway
By means of the Open device configuration button:
• Define general parameters, process data objects, slave settings, dis-
tributed clocks and modules

6.3.5 Diagnosis

The current state of a device is displayed symbolically.


• To update the state, select the desired bus instance and then press
Apply.

Icon Status
OK
There are no error messages.
Solvable problem
The device is sending error messages, but the problem can
be solved.
Device must be replaced
The device is defective and must be replaced.
Not available
The device has been configured but is not available in the
network.
Need to refresh
An update is required to retrieve the current device status.

100/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

I/O configuration
6.3.6 Updating MDPs

Description

In the parameter view of a device in the KUKA Extension Bus, the Ether-
CAT Modular Device Profiles (MDPs) can be updated using the Update
MDPs button. The device’s added modules can be displayed using the
Open device configuration button.

Precondition

• The device supports the Update MDPs function and is connected to


the KUKA Extension Bus.
• The configured topology of the KUKA Extension Bus matches the
physical structure on the controller.
• Manual configuration has been applied or a bus scan has been
carried out.

Procedure

• Select the device and press the Update MDPs button.


After successful updating, a message is displayed.

6.4 Configuring EtherCAT® Bridge FSoE M/M

Description

Safe and/or non-safe communication between a KR C5 robot controller


and an external controller (e.g. PLC) can be established using “Ether-
CAT® Bridge FSoE M/M”.
Non-safe communication between 2 KR C5 controllers is also possible.

Communication

Robot controller – external controller (safe)


In the case of safe communication between a robot controller and an ex-
ternal controller, the robot controller is the FSoE slave and the external
controller is the FSoE master.
Safe communication is only possible with “EtherCAT-bridge-terminal
EL6695” (= EL6695-1001).
If the “EtherCAT-bridge-terminal EL6695” (= EL6695-0000) by Beckhoff
is used, only non-safe I/O data can be exchanged.

Robot controller – external controller (not safe)


For the exchange of non-safe I/O data between a robot controller and an
external controller, both controllers must be configured as the master in
their bus line.
EtherCAT® Bridge FSoE M/M must be configured as a slave on both
sides. EtherCAT® Bridge FSoE M/M forwards the received data from one
line to the other. This enables the exchange of large amounts of data at
the bus clock rate.
Robot controller – robot controller (not safe)
In the case of communication between 2 robot controllers, only non-safe I/
O data can be exchanged.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 101/230


I/O configuration iiQKA.OS 1.2

Configuration

EtherCAT® Bridge FSoE M/M consists of a bus coupler and the Ether-
CAT® bridge terminal.
Bus coupler: primary side
The KUKA robot controller connected to the bus coupler is connected to
the primary side of the bridge terminal.
• A KUKA robot controller must always be connected to the primary
side.
The primary side must be configured in iiQKA.OS.
Bridge terminal: secondary side
The controller that is connected to the bridge terminal itself is connected
to the secondary side.
• An external controller (e.g. PLC) can be connected to the secondary
side.
• Or a second KUKA robot controller.
The secondary side must be configured on the external controller or in
iiQKA.OS (on the second robot controller).

Fig. 6-4: KR C5 robot controller as primary controller

1 KR C5 on the primary side of the terminal


2 Bus coupler “EtherCAT® coupler EK1100”
3 Bridge terminal “EtherCAT® Bridge FSoE M/M”
(= EL6695-1001)
4 Controller on the secondary side of the bridge terminal
5 EtherCAT device on the primary side
6 EtherCAT device on the secondary side

6.4.1 Configuring the primary side in iiQKA.OS

Description

This procedure must be carried out for all communication types:


• Robot controller – external controller (safe)
• Robot controller – external controller (not safe)
• Robot controller – robot controller (not safe)

Precondition

• KR C5 robot controller is connected to bus coupler.

102/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

I/O configuration
• Device description file for bus coupler is available.
The device description file can be obtained from the manufacturer of
the bus coupler.
• Only if safe communication is to be set up:
“Safety maintenance” user role

Procedure

1. Import the device description file of the bus coupler into iiQKA.OS.
Information about importing device description files can be found in
the help function under “I/O configuration”.

2. In iiQKA.OS in the Feature menu, select Setup > I/O.


3. Touch the cogwheel icon on the Bus Topology tab.
The I/O configuration settings view opens.
4. Activate the bus instance KUKA Extension Bus: To do so, activate
the check box in the corresponding line and touch the Confirm button.
5. On the Bus Topology tab, press the Add device button.
Activate the Continuous addition option if not already active.
6. Add the following devices:
a. EK1100 EtherCAT Coupler (…) or EK1100 EtherCAT-Koppler
(…)
(The name displayed depends on the selected interface language.)
Select the version that corresponds to the specification on the
bridge terminal.
b. Add to port B of the bus coupler:
KRC4 Primary EL6695-1001
Select the version that corresponds to the specification on the
bridge terminal.
7. Select the device KRC4 Primary EL6695-1001 and click on the Open
device configuration button.
8. Check and adapt the configuration: The configuration must match the
controller on the other side of the bridge terminal.
The main relevant settings are:
• Process data objects, safe I/Os, synchronization bits, size of the
non-safe I/Os
Accept the changes with Confirm changes.
9. Select the Physical I/O tab and select the bus instance KUKA Exten-
sion Bus.
10. Open the device KRC4 Primary EL6695-1001.
Map the inputs/outputs to safe signals.
Information about mapping can be found in the help function under
“I/O configuration”.

11. The remaining steps only need to be carried out in the following case:
• The external controller is a PLC.
• And: Safe communication is to be established.
Steps:
a. In the Feature menu, select Setup > Safety and switch to the EN-
GINEERING tab.
b. Touch the cogwheel icon. The “Safety Settings” dialog opens.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 103/230


iiQKA.OS 1.2

Check the EtherCAT safety ID and adapt if necessary. The value


I/O configuration

must correspond to the safety ID of the PLC.

6.4.2 Configuring the secondary side on an external controller

Description

This procedure must be carried out for the following communication types:
• Robot controller – external controller (safe)
• Robot controller – external controller (not safe)

Precondition

• External controller is connected to bridge terminal (not to bus coupler).


• For downloading the device description file: Laptop/PC with Internet
connection

Procedure

1. Call the KUKA Download Center on the laptop/PC.


(www.kuka.com/en/downloads)
2. If required: Change the display language in the Download Center us-
ing the globe icon in the top right-hand corner.
3. Search for “EtherCAT”. (Upper/lower case not relevant)
4. Click on the following search result:
KR C4 and KR C5 EtherCAT Master/Master Bridge ESI File
5. Download the following ZIP file:
Kuka_EL6695sec.zip
6. Unzip file. It contains the following file:
Kuka_EL6695sec.xml
7. Import the XML file into the configuration software of the external con-
troller.
8. In the configuration software, configure the secondary side of the ter-
minal “EtherCAT® Bridge FSoE M/M” in such a way that it corre-
sponds to the configuration of the primary side.

Information about the procedures in the configuration software can be


found in the documentation of the configuration software.

6.4.3 Configuring the safety interface

Description

This procedure must only be carried out for the following communication
type:
• Robot controller – external controller (safe)
In order to be able to use terminal “EtherCAT® Bridge FSoE M/M” also
for the safety interface, the described settings must be carried out in the
project of the external controller.

Procedure

1. In the slot configuration:


a. Select Safety Process Data in the left-hand area.

104/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

The following module is displayed in the right-hand area: Safety

I/O configuration
Data (8 bytes), ID 0x00000102
b. Add the module.

Fig. 6-5: Slot configuration

2. Insert the element Custom FSoE Connection in the safety program.

Fig. 6-6: Adding a custom FSoE connection

3. Select the following data structure:


• Inputs > Message Size: 19 bytes (8 bytes of safe data)
• Output > Message Size: 19 bytes (8 bytes of safe data)

Fig. 6-7: Data structure for inputs/outputs

The FSoE address of the EtherCAT Bridge in the project of the external
controller must correspond to the FSoE address in the safety configuration
of the robot controller.
• The address must be in the range from 1 to 65 535.
Default IP address: 999
• The watchdog times of the parameters for communication via the
FSoE must be in the range from 64 to 32 767 ms.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 105/230


I/O configuration iiQKA.OS 1.2

Fig. 6-8: FSoE address configuration

Information about the procedures in the configuration software can be


found in the documentation of the configuration software.

6.4.4 Configuring the secondary side in iiQKA.OS

Description

This procedure must only be carried out for the following communication
type:
• Robot controller – robot controller (not safe)

Precondition

• KR C5 robot controller is connected to bridge terminal (not to bus cou-


pler).

Procedure

1. In iiQKA.OS in the Feature menu, select Setup > I/O.


2. Touch the cogwheel icon on the Bus Topology tab.
The I/O configuration settings view opens.
3. Activate the bus instance KUKA Extension Bus: To do so, activate
the check box in the corresponding line and touch the Confirm button.
4. On the Bus Topology tab, press the Add device button.
Add the following device:
• KRC4 Secondary EL6695-1001
Select the version that corresponds to the specification on the
bridge terminal.
5. Select the device KRC4 Secondary EL6695-1001 and click on the
Open device configuration button.
6. Check and adapt the configuration: The configuration must match the
controller on the other side of the bridge terminal.
The main relevant settings are:

106/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

I/O configuration
• Process data objects, synchronization bits, size of the non-safe
I/Os
Accept the changes with Confirm changes.
7. Select the Physical I/O tab and select the bus instance KUKA Exten-
sion Bus.
8. Open the device KRC4 Secondary EL6695-1001.
Map the inputs/outputs.
Information about mapping can be found in the help function under
“I/O configuration”.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 107/230


I/O configuration iiQKA.OS 1.2

108/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Payload configuration
7 Payload configuration

7.1 Payload configuration, general

Payloads are all the loads mounted on the robot flange. These include the
following loads:
• Load of the tool mounted on the robot flange
• Load of the workpiece picked up by the tool

Check the safety configuration after any changes to the payload


configuration
The payload configuration affects load-dependent monitoring functions,
e.g. collision detection and maximum TCP force monitoring. After a
change to the payload configuration, the safety integrity of these moni-
toring functions is no longer assured.
• If load-dependent monitoring functions are configured, the safety
configuration must be checked and approved again after the payload
configuration has been modified (carry out safety acceptance).

7.2 Tool configuration editor

Description

A tool can be added to the robot, configured and calibrated in the tool
configuration editor. This tool is automatically connected to the robot
flange.
• Only one tool can be configured in the tool configuration editor.
• Additional tools outside the robot can be added in the scene editor.
This enables access to the capabilities of these tools.
Tools outside the robot cannot be used for jogging or for program mo-
tions.

Procedure

• To access the editor, select the Tool tab under Setup > Payload in
the Feature menu.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 109/230


Payload configuration iiQKA.OS 1.2

Fig. 7-1: Tool configuration editor

1 Main view
2 Detail view
3 Select and add tool/TCP
4 Configured tool (tree structure)

Main view

The main view shows the tool configuration as a tree structure and offers
the following functions:
• Select and add Tool.
‒ Generic tool
‒ Or tool from one of the installed toolboxes
• Select and add TCP.
Each tool includes at least one TCP. Further TCPs can be created.
• The toolbar at the bottom of the screen offers the following functions
for modifying the tool configuration:
‒ Delete selected element (recycle bin).
‒ Copy selected element.
‒ Paste copied element.

During configuration of the Tool Orientation Monitoring Monitoring


Block in the safety configuration editor, one of the available TCPs
can be selected as a tool orientation frame. The following applies in
this case:
‒ Neither the tool nor the selected TCP can be deleted from the
tool configuration editor.
‒ To edit the TCP data, a Safety Commissioning Engineer must be
logged on.

Detail view

The detail view displays the properties and parameters of the element se-
lected in the configuration tree in the main view.

110/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Payload configuration
• Parameters tab
The parameters of the selected tool or TCP can be entered manually.
Or calibration data have been saved.
• Capabilities tab (if a tool from a toolbox is selected)
‒ Gripper Capability
It is possible to switch to the available gripper capabilities in order
to configure the gripper functions.
‒ Actions
The gripper functions Grip and Release configured in the capabili-
ties can be executed and tested.
‒ Signals
The current values of the configured gripper signals are displayed.
It is possible to switch to the I/O configuration via the I/O names.
• Calibration tab (if a TCP is selected)
The tool can be calibrated here.

Load data

Only a Safety Commissioning Engineer can enter and edit the load data
of the tool.
• M
Mass of the tool
• Lx, Ly, Lz
Position of the center of mass in the FLANGE coordinate system
• lx, ly, lz
Mass moments of inertia about the principal inertia axes
• Rx, Ry, Rz
Orientation of the principal inertia axes relative to the FLANGE coordi-
nate system

TCP data

The TCP data can be entered manually or defined with the tool calibra-
tion. The following data are saved:
• X, Y, Z
Origin of the TOOL coordinate system relative to the FLANGE coordi-
nate system
• Rx, Ry, Rz
Orientation of the TOOL coordinate system relative to the FLANGE co-
ordinate system

7.2.1 Tool calibration

In tool calibration, a Cartesian coordinate system (TOOL coordinate sys-


tem) is assigned to a tool installed on the mounting flange.
Advantages of tool calibration:

• The tool can be moved in a straight line in the tool direction.


• The tool can be rotated about the TCP without changing the position
of the TCP.
• In program mode: The programmed velocity is maintained at the TCP
along the path.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 111/230


iiQKA.OS 1.2

The TOOL coordinate system has its origin at a user-defined point. This
Payload configuration

point is called the TCP (Tool Center Point). A tool can have multiple
TCPs.
The TCP of a tool can be calibrated in the parameter view of the TCP on
the Calibration tab:
• The origin and orientation of the TOOL coordinate system are calibra-
ted separately.
• It is possible to calibrate only the origin and enter the orientation man-
ually or vice versa.
• To start the calibration, select Calibrate/Recalibrate.
A wizard opens which guides you through all the required calibration
steps.
• Calibration can also be carried out by means of manual guidance on
the Commander. By turning the jog dial, the selection of the measure-
ment point can be changed and by pressing the jog dial, a touch-up
can be carried out.

7.2.1.1 Calibrating the origin

To calibrate the origin X, Y, Z, a reference point is addressed with the


TCP of the tool from 4 different directions and the measurement pose is
taught. The robot controller uses these 4 measurement poses to calculate
the position of the TCP.
• The reference point can be freely selected.
• The flange positions in the 4 measurement poses must be as different
as possible and maintain a certain minimum distance. If the points are
too close together, the pose cannot be taught. A corresponding mes-
sage is displayed in the wizard.
• Any measurement error is displayed in the parameter view of the TCP
on the Calibration tab.

7.2.1.2 Calibrating the orientation

To calibrate the orientation Rx, Ry and Rz, the following points on the tool
are moved to a reference point and the measurement pose is taught:
• Origin of the TOOL coordinate system
• Point in negative tool direction (in relation to the origin)
• Point on the XY plane of the TOOL coordinate system with a positive
Y value
The robot controller uses these 3 measurement poses to calculate the ori-
entation of the TCP.

7.3 Workpiece configuration editor

Description

In the workpiece configuration editor, workpieces picked up by a tool can


be configured and calibrated.

Procedure

• To access the editor, select the Workpiece tab under Setup > Pay-
load in the Feature menu.

112/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Payload configuration
Fig. 7-2: Workpiece configuration editor

1 Main view
2 Detail view
3 Add workpiece or open workpiece wizard
4 List of created workpieces

Main view

The main view displays the created workpieces and offers the following
functions:
• Create a workpiece manually
To do so, select Add workpiece in the Editor menu.
• Create a workpiece using a wizard
The workpiece wizard can be started via the corresponding entry in
the Editor menu. If no workpieces have been created yet, the work-
piece wizard can also be started using the Start workpiece wizard
button. The workpiece wizard guides you step by step through the
configuration of the workpiece and provides additional written and
graphical help.
• Delete a selected workpiece via the toolbar at the bottom of the
screen (recycle bin)

Detail view

The detailed view shows the properties and parameters of the selected
workpiece.
• Parameters tab
The load data of the workpiece can be entered here and the motion
frame can be selected.
• Origin tab
The origin of the workpiece can be defined here.
• Shape tab
A basic form for the workpiece in the 3D scene can be defined here
(optional).

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 113/230


Payload configuration iiQKA.OS 1.2

Parameters

Various parameters of the workpiece can be defined:


• Name
Name of the workpiece
• Mass
Mass of the workpiece
• Motion Frame
A motion frame can be defined for each workpiece. Cartesian motions
with the workpiece are executed with this frame by default. Besides
the robot flange, all TCPs configured for a tool are available for selec-
tion.
• Additional Load Data
The supplementary load data refer to the origin of the workpiece.
‒ Lx, Ly, Lz
Position of the center of mass relative to the origin of the work-
piece
‒ lx, ly, lz
Mass moments of inertia about the principal inertia axes of the
workpiece
‒ Rx, Ry, Rz
Orientation of the principal inertia axes through the center of mass
• Description
A description for the workpiece can be entered here. The description
has no further effects.

Origin

The origin of the workpiece can be defined in various ways:


• custom offset for workpiece origin
If this option is selected, the offset for the origin of the workpiece can
be manually entered or calibrated. The offset is specified relative to
the origin of the tool.
• align workpiece origin to TCP
If this option is selected, the origin of the workpiece can be aligned
with a TCP. All the TCPs configured for the tool are available for se-
lection.
Calibration of the origin and its orientation is carried out using the same
principle as tool calibration.

Shape

Optionally, a shape can be selected to represent the workpiece in the 3D


scene. The following shapes are available:
• Sphere
• Cuboid
• None (default)
The dimensions and origin of the shape can be freely selected.

114/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Payload configuration
7.4 Gripper toolboxes

Overview

The following toolboxes are preinstalled on the robot controller:


• KUKA iiQKA.Gripper Toolbox
The toolbox enables the configuration of a user-specific single gripper
(Custom Gripper) or double gripper (Custom Dual Gripper).
• KUKA iiQKA.Gripper CoAct Toolbox
The toolbox supports the SCHUNK Co-Act ESG 60 gripper.
‒ The tool data are preset in accordance with the SCHUNK CoAct
gripper specification.
‒ The gripper signals are preconfigured in the I/O configuration.
‒ The signals cannot be edited, deleted or their mapping modified.

Capabilities

The gripper capabilities are available as soon as the corresponding tool


has been added to the robot in the tool configuration editor or in the
scene editor outside the robot.
• The capabilities provide the functions for controlling the grippers.
• The gripper functions Grip and Release can be tested manually.
Do not operate the gripper via the signals in the I/O configuration,
but always by using the Grip and Release buttons in the capabili-
ties.

• The gripper functions Grip and Release can be used as commands in


programs.
• If multiple capabilities are configured, e.g. for a Custom Dual Gripper,
the capability with which the command is to be executed must be
specified when programming the gripper commands.
• In order to be able to test them, the gripper commands are available
as buttons in the toolbar of the program view.
• If multiple capabilities are configured, e.g. for a Custom Dual Gripper,
the capability to be operated can be assigned to the buttons by
means of quick access.

Further information about the gripper commands and the quick access
buttons can be found in the help function under “Programming”.

7.4.1 Configuring gripper functions

Description

The gripper functions can be configured in the Capabilities view. Depend-


ing on the gripper type, the capability includes various configurable param-
eters.

Procedure

1. To open the view, select Setup > Capabilities in the Feature menu.
2. Select the desired gripper capability in the drop-down menu of the
view.
• Main view: Displays the capability as a tree structure.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 115/230


Payload configuration iiQKA.OS 1.2

• Parameter view: Displays the properties and parameters of the el-


ement selected in the configuration tree in the main view.
3. Set the gripper parameters and configure the required gripper signals.
• If a required signal is already mapped, it can be selected via Se-
lect signal ....
• If a required signal has not yet been mapped, it can be created
via New signal ....

Further information about mapping signals can be found in the help


function under “I/O configuration”.

4. Save the configuration with Apply.

7.4.1.1 Custom Gripper Capability

A user-specific single gripper can be configured in the Custom Gripper


Capability.
For a user-specific double gripper, a gripper capability must be configured
for each gripper. The configuration corresponds analogously to configura-
tion of the capability of the single gripper in each case.

Fig. 7-3: Custom Gripper Capability

1 Gripper capability
2 General settings
3 Grip settings
4 Release settings

Gripper capability

Higher-level settings for the capability can be made here:


• Details
‒ Name: The name of the capability can be changed here.
‒ Tool: The name of the gripper is displayed.
• Properties
A service runs in the background in the toolbox, which queries the sta-
tus of the gripper every 300 ms. This status (e.g. Gripped) can be
used as a return value in the programming. The querying of an indi-

116/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

vidual status can be activated or deactivated using the Refresh

Payload configuration
switch. The status can also be opened in a separate window. All quer-
ies can be activated or deactivated simultaneously using the Activate
All and Deactivate All buttons.
• Actions
The gripper functions Grip and Release configured in the capabilities
can be executed and tested.
• Signals
The current values of the configured gripper signals are displayed. It is
possible to switch to the I/O configuration via the I/O names.

General settings

A minimum pause time between output signal changes and a debounce


time for input signals can be configured here:
• Option Limit frequency of outputs
If the option is enabled, the output signals do not change faster than
the specified delay.
• Option Debounce inputs
If the option is enabled, only those input signal changes that are sta-
bly present at an input for at least the specified time are detected.

Grip settings

The grip function of the tool is configured here:


• Section Grip action
‒ Configure output signals that are set during gripping.
‒ Configure output signals that are set after gripping.
• Section Gripped state
Configure the condition for detection of the Gripped state:
‒ Signal-based
The Gripped state is reached if input signals of a specific state
are present. These sensor signals of the gripper must be config-
ured.
A timeout can also be configured if the Gripped state is not
reached within a specified time.
‒ Time-based
The Gripped state is reached automatically when the time speci-
fied here has elapsed (e.g. 200 ms after the Close signal has
been set).

Release settings

The release function of the tool is configured here. The configuration is


analogous to that of the grip settings.

7.4.1.2 SCHUNK Gripper Capability

Gripper capability

Higher-level settings for the capability can be made here:


• Details
‒ Name: The name of the capability can be changed here.
‒ Tool: The name of the gripper is displayed.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 117/230


Payload configuration iiQKA.OS 1.2

• Properties
A service runs in the background in the toolbox, which queries the sta-
tus of the gripper every 300 ms. This status (e.g. Gripped) can be
used as a return value in the programming. The querying of an indi-
vidual status can be activated or deactivated using the Refresh
switch. The status can also be opened in a separate window. All quer-
ies can be activated or deactivated simultaneously using the Activate
All and Deactivate All buttons.
• Actions
The gripper functions Grip and Release configured in the capabilities
can be executed and tested.
• Signals
The current values of the configured gripper signals are displayed. It is
possible to switch to the I/O configuration via the I/O names.

Grip settings

The following grip settings can be configured in the capability of the


SCHUNK gripper:
• Grip type
‒ Outer (close to grip)
Tool grips object from outside and closes during gripping
‒ Inner (open to grip)
Tool grips object from inside and opens during gripping
• Gripped state
Condition for detecting the Gripped state:
‒ Signal-based
The Gripped state is reached when the associated sensor signals
are active.
‒ Time-based
The Gripped state is reached automatically when the time speci-
fied here has elapsed (e.g. 200 ms after the Close signal has
been set).
• Released state
Condition for detection of the Released state is configured analogous-
ly to detection of the Gripped state.

7.4.2 Executing and testing gripper functions

Description

In the parameter view of the gripper capability, buttons are available for
executing and testing the configured gripper functions:
• Grip
• Release
The buttons are also available under Setup > Payload in the parameter
view of the tool (Capabilities tab).

Precondition

• Operating mode T1 or KRF


• Enabling switch is pressed.
• No program is being executed.

118/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Payload configuration
Fig. 7-4: Executing and testing gripper functions

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 119/230


Payload configuration iiQKA.OS 1.2

120/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

3D scene
8 3D scene

8.1 Overview of 3D scene

The scene view shows the 3D visualization of the scene. To display it, se-
lect Scene in the Feature menu.
The 3D scene shows the model of the objects that are present in the
project. These include:
• Robot in the current pose
• All frames and bases
• All cuboids and prisms (monitoring spaces)
• Physical objects, e.g. SICK safety laser scanners
• Tool spheres and force interaction areas
• Workpiece with which the robot moves
• Safety spheres of the robot structure

Operation of the scene, e.g. creation and deletion of frames, is partly


possible with the Commander on the robot. Further information can be
found in the help function under “General operation”.

Operator control elements in the 3D scene

Fig. 8-1: Scene

1 3D view of the scene


2 Display and hide object tree
3 Object tree
4 Parameter view of the selected object
5 Create new object
6 Realign 3D view
7 Cut objects
8 Paste cut objects
9 Delete objects

Navigation in the 3D view

• Drag with one finger to rotate the 3D view.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 121/230


3D scene iiQKA.OS 1.2

• Drag with 2 fingers (panning) to move the 3D view.


• Make a pinch gesture with 2 fingers to zoom into the 3D view.
• Press the magnifying glass icon (Zoom to fit) to reset the view and
align it centrally so that all objects in the scene are visible.
• Press the cuboid icon in the view to switch between predefined orien-
tations and the Home view and to refresh the Home view with the cur-
rently selected orientation.
• All objects can be selected in the tree structure and in the 3D scene.
• Drag the object tree at the center of the edge to enlarge or reduce it.

Changing the scene

The scene editor can be used to change the scene itself.


• The robot visualization always represents the current pose.
• The object currently selected displays an auxiliary coordinate system
with the orientation of the parent object.
• The properties of a selected object are displayed in the parameter
view.
• Selected objects can be edited, cut or deleted.
• New objects can be added.

8.2 Managing frames

Frames

A frame is a 3-dimensional coordinate system that is described by its po-


sition and orientation relative to a reference system. Points in space can
be defined easily using frames.
Each end point of a robot motion is defined by a frame. The target frame
thus specifies not only the position in 3-dimensional space, but also the
orientation of the TCP at this point.
If a frame is recorded by means of touch-up, the current robot pose is al-
so saved in the frame in order to be able to address the frame exactly in
a reproducible manner at all times.

Parameters of a frame

• 6D coordinates:
‒ X, Y and Z coordinates: These 3 values determine the position of
the frame in space
‒ Rx, Ry, Rz: These 3 values specify the rotation angle about the X,
Y and Z axes. They determine the orientation of the frame in
space.
• Parent: Specifies the reference system for the frame.
All coordinates and rotation angles are specified relative to this refer-
ence system. If the reference system is changed, the absolute position
of the frame in space also changes. Further information about this can
be found in the section on bases.
If a frame is displayed under another object or frame in the object
tree, this means that this other object is the Parent of the frame.

Shared and unshared frames

Frames can be either shared with all programs in the project or not
shared.

122/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Unshared frames

3D scene
• Unshared frames are only visible in the robot program in which they
were created.
• Unshared frames cannot be created or modified in the 3D scene, but
only on the programming interface.
• Unshared frames are only visible in the 3D scene if the program to
which they belong is open in the programming interface.
• The use of unshared frames within a program ensures that no other
programs are affected if the unshared frame is modified or deleted.
Frames shared in the project

• Shared frames are visible for all robot programs in the current project.
• Shared frames can be created either in the programming interface or
directly in the 3D scene.
• Shared frames are used, for example, for defined reference positions
of the robot.
Shared and unshared frames can be converted from one to the other. If
an unshared frame is to be split subsequently, either a new shared frame
can be created for this, or an existing shared frame can be used.

Creating frames

Frames can be created and edited in several ways:


• The coordinates are entered manually in the parameter view.
• The robot is moved to the desired position by means of jogging or
manual guidance and the frame is recorded by means of Touch up.
• A frame is first created with the current robot position. This can be
changed subsequently.

Addressing frames with the robot

Fig. 8-2: Move to function

• In test mode (T1 mode), frames can be addressed independently of


program execution using the Move to function.
• The mode is activated by pressing the Move to switch in the parame-
ter view, changing the function of the Start key.
• The broken orange line indicates the connection between the TCP and
the selected frame.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 123/230


3D scene iiQKA.OS 1.2

• The frame to be addressed is displayed in the status bar instead of


the program name.
• In the status bar, the motion type can be changed from P2P to LIN
via the drop-down menu.
• In order to address the frame, the enabling switch and the Start key
must be held down.
• The mode can be terminated via Exit move to in the drop-down
menu in the status bar or by deactivating the Move to switch in the
parameter view. Changing the operating mode also terminates the
mode.

8.3 Configuring, calibrating and managing tools

Description

The tool added to the robot in the payload configuration is displayed in


the tree view of the scene editor. The tool can be configured and calibra-
ted in the scene editor (or right in the payload configuration).
Exception: The following safety-oriented tool parameters can only be con-
figured in the scene editor:
• Configuring tool spheres
(>>> 8.3.1 "Configuring tool spheres" Page 125)
• Configuring the force interaction area
(>>> 8.3.2 "Configuring the force interaction area" Page 126)

Tool configuration

To configure the tool, select the tool in the tree view:


• The tool has at least one TCP. Further TCPs can be created. For this,
select Tool > TCP in the object selection menu.
• The load data can be edited in the detail view on the Parameters tab
(precondition: “Safety maintenance” user role):
‒ M
Mass of the tool
‒ Lx, Ly, Lz
Position of the center of mass in the FLANGE coordinate system
‒ lx, ly, lz
Mass moments of inertia about the principal inertia axes
‒ Rx, Ry, Rz
Orientation of the principal inertia axes relative to the FLANGE co-
ordinate system
• If capabilities are available for the tool, the Capabilities tab is availa-
ble in the detail view:
‒ Link to the capability configuration
It is possible to switch to the capability configuration.
‒ Actions
The functions configured in the capabilities can be executed and
tested.
‒ Signals
The current values of the signals configured in the capabilities are
displayed. The signals can be used to switch to the signal configu-
ration in the I/O configuration.

124/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

3D scene
During configuration of the Tool Orientation Monitoring Monitoring
Block in the safety configuration editor, one of the available TCPs can
be selected as a tool orientation frame. The following applies in this
case:
• The selected TCP cannot be deleted from the scene editor.
• To edit the TCP data, a Safety Commissioning Engineer must be
logged on.

Tool calibration

For tool calibration, select a TCP in the tree view:


• The origin and orientation of a TCP can be entered manually in the
detail view on the Calibration tab or calibrated on the Calibration tab.
• The procedure is identical to calibration in the payload configuration.

8.3.1 Configuring tool spheres

Description

Up to 6 spheres can be configured for a tool. The tool spheres are rele-
vant for Cartesian velocity monitoring and space monitoring functions.
The tool spheres are monitored if the tool is selected as the structure to
be monitored in the corresponding Monitoring Blocks in the safety configu-
ration.
Further information about the monitoring functions can be found in the
help function under “Safety configuration”.

Precondition

• “Safety maintenance” user role

Example

Fig. 8-3: Example of tool spheres

Configuration example for tool spheres for a SCHUNK Co-Act ESG 60


gripper:

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 125/230


3D scene iiQKA.OS 1.2

Predefined position of the tool spheres


Sphere Offset relative to the FLANGE coordinate system Radius
1 X = 0 mm, Y = 0 mm, Z = 20 mm 58 mm
2 X = 0 mm, Y = 0 mm, Z = 85 mm 50 mm
The tool spheres for other tools can be configured in analogously to this
example.
• New tool spheres can be added if the tool is selected in the object
tree.
• In the parameter view, the tool spheres can be shifted and the radius
changed by entering coordinates.

8.3.2 Configuring the force interaction area

Description

The force interaction area is defined as a sphere that contains all the
points of a safety-oriented tool where expected external forces can occur.
Further information about the force interaction area can be found in the
help function under “Safety configuration”, in the section “Monitoring
Block Maximum TCP force”.

The more accurately the position of the force interaction point is defined
(i.e. the smaller the radius of the force interaction area is configured), the
better the Monitoring Block Maximum TCP Force can be used near sin-
gularities.

Precondition

• “Safety maintenance” user role

Example

Fig. 8-4: Example of force interaction area

Configuration example for the force interaction area for a SCHUNK Co-Act
ESG 60 gripper:

126/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

3D scene
Predefined position of the force interaction area
Sphere Offset relative to the FLANGE coordinate system Radius
1 X = 0 mm, Y = 0 mm, Z = 125 mm 50 mm
The force interaction area for other tools can be configured analogously to
this example.
• In the parameter view, the force interaction area can be shifted and
the radius changed by entering coordinates.
• The force interaction area should cover the collision area, but should
be kept as small as possible to make efficient use of the workspace.

8.4 Adding tools outside the robot

Description

Additional tools outside the robot can be added in the scene editor. This
enables access to the capabilities of these tools.
Tools outside the robot cannot be used for jogging or for program motions.

Procedure

1. In the World tree view and in the object selection menu, select Tool.
2. Select and add the desired tool.
3. To configure the tool, select the tool added in the tree view:
• The name can be changed in the detail view on the Parameters
tab. The load data for tools that are not connected to the robot
flange are irrelevant and cannot be edited.
• The capabilities can be configured as required in the detail view
on the Capabilities tab.
‒ Link to the capability configuration
It is possible to switch to the capability configuration.
‒ Actions
The functions configured in the capabilities can be executed
and tested.
‒ Signals
The current values of the signals configured in the capabilities
are displayed. The signals can be used to switch to the signal
configuration in the I/O configuration.

8.5 Managing workpieces

Description

The workpiece with which the robot is currently moving is displayed in the
3D scene and in the object tree.

Detail view

The detailed view shows the properties and parameters of the selected
workpiece.
• Parameters tab
The load data of the workpiece can be entered here and the motion
frame can be selected.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 127/230


3D scene iiQKA.OS 1.2

• Origin tab
The origin of the workpiece can be defined here.
• Shape tab
A basic form for the workpiece in the 3D scene can be defined here
(optional).

Parameters

Various parameters of the workpiece can be defined:


• Name
Name of the workpiece
• Mass
Mass of the workpiece
• Motion Frame
A motion frame can be defined for each workpiece. Cartesian motions
with the workpiece are executed with this frame by default. Besides
the robot flange, all TCPs configured for a tool are available for selec-
tion.
• Additional Load Data
The supplementary load data refer to the origin of the workpiece.
‒ Lx, Ly, Lz
Position of the center of mass relative to the origin of the work-
piece
‒ lx, ly, lz
Mass moments of inertia about the principal inertia axes of the
workpiece
‒ Rx, Ry, Rz
Orientation of the principal inertia axes through the center of mass
• Description
A description for the workpiece can be entered here. The description
has no further effects.

Origin

The origin of the workpiece can be defined in various ways:


• custom offset for workpiece origin
If this option is selected, the offset for the origin of the workpiece can
be manually entered or calibrated. The offset is specified relative to
the origin of the tool.
• align workpiece origin to TCP
If this option is selected, the origin of the workpiece can be aligned
with a TCP. All the TCPs configured for the tool are available for se-
lection.
Calibration of the origin and its orientation is carried out using the same
principle as tool calibration.

Shape

Optionally, a shape can be selected to represent the workpiece in the 3D


scene. The following shapes are available:
• Sphere
• Cuboid
• None (default)

128/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

The dimensions and origin of the shape can be freely selected.

3D scene
8.6 Calibrating and managing bases

A base is a 3-dimensional coordinate system, similar to a frame, which is


defined by its position and orientation relative to a reference system. Fur-
thermore, a base itself serves as a reference system for other objects,
such as frames, other bases, prisms or cubes.
In base calibration, a Cartesian coordinate system (BASE coordinate sys-
tem) is assigned to a work surface (or the workpiece on the work sur-
face). The TCP can then be moved manually along the work surface/work-
piece. Frames can be created with the base as a reference. If it is neces-
sary to offset the base, e.g. because the work surface has been offset,
the frames move with it and do not need to be retaught. Furthermore, the
entry and checking of coordinates is intuitive, e.g. Z = 100 mm can
always mean 100 mm above the work surface, irrespective of the angle
by which the work surface is inclined.

Creating bases

Fig. 8-5: Base in the 3D scene

• The BASE coordinate system can either be entered manually using


the X, Y and Z coordinates and the rotation angles Rx, Ry and Rz, or
the base can be calibrated.
• During base calibration, the robot moves to points on the XY plane of
the desired BASE coordinate system and the position of the coordi-
nate system is calculated from these points.
• To calibrate a base, first create a new base in the 3D scene and
switch to the Calibration tab in the parameter view.
‒ A wizard automatically performs base calibration and records the
required points. Recalibration of an existing base can be carried
out in the same way.
‒ Calibration can also be carried out by means of manual guidance
on the Commander. By turning the jog dial, the selection of the
measurement point can be changed and by pressing the jog dial,
a touch-up can be carried out.
• Bases are displayed as planes in the 3D scene. The origin of the
base is additionally displayed.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 129/230


3D scene iiQKA.OS 1.2

• A base can be set to active in the status bar. Jogging can be carried
out manually in the active base.
• Bases can be nested, i.e. a base can be created with another base as
its reference, e.g. a workpiece on a work surface.

8.7 Managing monitoring spaces: prisms and cuboids

In the 3D scene, monitoring spaces can be defined that can be assigned


to specific safety functions in the safety configuration.
There are two geometries for monitoring spaces:
• Cuboid with length, width, height and rotation angle about the Z axis
• Prism with 3 to 20 corners and a defined height
Spaces can only be created with the WORLD reference coordinate
system or a base and cannot be nested in one another. Creating cuboids
and prisms with a base enables the monitoring space to be rotated about
the X and Y axes relative to WORLD.
Spaces are displayed transparently in the 3D scene. This allows easy
checking of their position, shape and size. The corners of prisms can be
individually edited, added or deleted.

Fig. 8-6: Cuboid and Prism

Cuboids and prisms used in the safety configuration can only be edited in
the Safety Commissioning Engineer user role. In order to be able to de-
lete such spaces, they must first be removed in the safety configuration.

8.8 Configuring the Sick microScan3 laser scanner

In order to start up a SICK safety laser scanner, the laser scanner must
be configured in the scene editor. For this, an object of type SICK micro-
Scan3 is created in the scene editor.
In addition to the coordinates of the laser scanner in space, the checksum
of the laser scanner must be entered. The checksum can be found in the
scanner settings in the Safety Designer configuration tool under Check-
sum of the configuration (function).

130/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

3D scene
Fig. 8-7: Determining the checksum in Safety Designer

This checksum is automatically sent by the robot controller to the connec-


ted laser scanner. If the robot controller and laser scanner communicate
correctly, the input and output signals of the laser scanner are displayed
in the I/O configuration and can also be used in the safety configuration.
The laser scanner configured in the scene editor is automatically inserted
into the bus topology of the I/O configuration as the first device on the
KUKA Extension Bus. If the real laser scanner has been connected at a
different position on the KUKA Extension Bus, proceed as follows:
• In the I/O configuration, start a bus scan on the KUKA Extension Bus
(Compare Online/Offline topology button) and apply the result.

Further information about the bus scan can be found in the help func-
tion under “I/O configuration”.

8.9 Deleting objects from the 3D scene

• Objects can be deleted from the 3D scene using the recycle bin icon.
• Deleted objects cannot be restored.
• If an object that is selected for deleting has child objects assigned to
it, there are various options:
‒ Delete the object and all child objects.
‒ Delete only the object itself. The child objects are automatically
pushed up one level.
The child objects maintain their absolute position in space. They
can thus continue to be used in programs without restrictions.
• Objects that are used in the safety configuration (e.g. as a monitoring
space) cannot be simply deleted. This applies to direct deletion and al-
so if an object is to be deleted as a child object of a parent object.
‒ The safety configuration must first be edited in such a way that the
object is no longer used.
‒ A dialog displays the relevant points in the safety configuration
and it is possible to switch directly to the relevant point in the safe-
ty configuration.
‒ The Safety Commissioning Engineer user role is required for this.
Other user roles cannot delete or edit safety-relevant objects.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 131/230


3D scene iiQKA.OS 1.2

8.10 Cutting and pasting objects

• Frames, bases, cuboids and prisms can be cut from the object tree
using the scissors icon.
• Cut objects are saved to a clipboard.
• Cut objects can be pasted back into the object tree from the clipboard.
• If an object has been cut unintentionally, there are several ways to un-
do the cut action:
‒ Press the Cancel button in the pop-up message.
‒ Press the scissors icon again.
‒ Paste the cut object back in the same place.
• Objects that are used in the safety configuration (e.g. as a monitoring
space) cannot be simply cut.
• The object tree can be restructured by cutting and pasting objects.
• A cut frame that is pasted under another Parent remains in the identi-
cal location, but the coordinate values change, as they refer to the Pa-
rent.
• If a Parent is cut, the child objects are also cut.

132/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
9 Safety configuration
The safety configuration defines the safety-oriented functions in order to
integrate the industrial robot safely into the system. Safety-oriented func-
tions serve to protect human operators when they work with the robot.
The system integrator determines the required safety functions using the
risk assessment as a basis. The Safety Commissioning Engineer imple-
ments the safety specifications.
Verification of safety in the case of HRC
The safety configuration must sufficiently reduce the risks during collab-
orative operation (HRC). Death, severe injuries or damage to property
may otherwise result.
• The system integrator must verify that the safety configuration meets
the safety requirements for HRC systems.
• It is advisable to perform this verification in accordance with the in-
formation and instructions for operating collaborative robots in
ISO/TS 15066.

Tasks of the Safety Commissioning Engineer:


• The Safety Commissioning Engineer configures the safety functions.
• The Safety Commissioning Engineer carries out safety acceptance and
checks the safety functions for correct operation.
• The Safety Commissioning Engineer approves the safety configuration
on the robot controller.
• The Safety Commissioning Engineer is responsible for ensuring that
the safety configuration is only applied and approved on robots for
which it is intended.

Qualification of the Safety Commissioning Engineer


The tasks of the Safety Commissioning Engineer may only be per-
formed by personnel able to assess the work to be carried out and de-
tect potential hazards. Death, severe injuries or damage to property
may otherwise result. The following qualifications are required:
• Adequate specialist training, knowledge and experience
• Knowledge of the relevant operating or assembly instructions, knowl-
edge of the relevant standards
• All persons working with the industrial robot must have read and un-
derstood the industrial robot documentation, including the safety
chapter.

9.1 Safety configuration, general

On delivery, a safety configuration is preinstalled on the robot controller as


standard. If this standard safety configuration is not sufficient for the plan-
ned applications, it can be removed and newly created, or edited and ex-
panded.
The following basic configuration elements are available for creating the
safety configuration:
• Safety Rule Set
• Safety Rule
• Monitoring Block

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 133/230


Safety configuration iiQKA.OS 1.2

9.1.1 Safety Rule Set

Safety Rule Sets are higher-level structure elements of the safety configu-
ration. They group together one or more Safety Rules that jointly imple-
ment a specific safety function or support a device. All Safety Rules con-
tained in the Safety Rule Sets are processed in parallel by the safety sys-
tem. The grouping of various Safety Rules into Safety Rule Sets thus has
no effect on the execution of the configured safety monitoring functions.
One example is the triggering of several different safety reactions if a cer-
tain combination of Monitoring Blocks is violated, e.g. a safety stop and a
safe output. For this purpose, 2 Safety Rules with identical Monitoring
Block combinations can be included in the same Safety Rule Set.

9.1.2 Safety Rule

A Safety Rule links up to 6 Monitoring Blocks logically to one another.


This makes it possible to implement complex safety monitoring functions.
An appropriate safety reaction must be configured for each Safety Rule:
• Stop, Brake or output signal
A Safety Rule is considered to be violated if all incorporated Monitoring
Blocks are violated or invalid. The configured safety reaction is then trig-
gered.
The violation status of a Safety Rule is displayed on the RUNTIME tab of
the safety configuration editor.
(>>> 9.3 "Status of the current safety configuration" Page 139)

9.1.3 Monitoring Block

Each Monitoring Block monitors an elementary, safety-relevant aspect of


the system state, e.g. whether a safety-oriented input is set, automatic
mode is active or the velocity of a specific robot axis exceeds a defined
threshold.
A Monitoring Block is the smallest unit of monitoring in the safety system.
Within a Safety Rule, several Monitoring Blocks can be combined to form
more complex safety monitoring functions.
The violation status of a monitoring block is displayed on the RUNTIME
tab of the safety configuration editor.
(>>> 9.3 "Status of the current safety configuration" Page 139)

9.2 Safety configuration editor

To access the editor, select Setup > Safety in the Feature menu and
switch to the ENGINEERING tab.
On the tab, the Safety Commissioning Engineer can edit and approve the
safety configuration.

134/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
Fig. 9-1: Safety configuration editor

1 Feature menu
2 Add configuration element
3 Apply modified safety configuration
4 Approve safety configuration
5 Open safety settings
6 Display of grace period (safety stop canceled)
7 Cancel safety stop if safety configuration not approved
8 Main view
9 Parameter view
The editor contains the following elements:
• Main view: Shows the safety configuration as a tree structure.
• Parameter view: Displays the properties and parameters of the ele-
ment selected in the configuration tree in the main view. The parame-
ters can be edited.
(>>> 9.2.1 "Editing parameters" Page 136)
• Buttons with the following functions (log-on as Safety Commissioning
Engineer required):
‒ Add configuration element to the safety configuration:
‒ Safety Rule Set
‒ Safety Rule (below the selected Safety Rule Set)
‒ Monitoring Block (below the selected Safety Rule)
‒ Select and remove configuration element from the tree (recycle
bin).
‒ Apply modified safety configuration (Apply button).
(>>> 9.2.2 "Applying the safety configuration" Page 136)
‒ Cancel safety stop if safety configuration not approved (Unblock
button).
The button is only available after a modified safety configuration
has been applied. As soon as the safety configuration has been
approved, the button is no longer displayed.
(>>> 9.2.3 "Canceling the safety stop if the safety configuration is
not approved" Page 137)

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 135/230


Safety configuration iiQKA.OS 1.2

‒ Approve safety configuration (Start Approval button).


(>>> 9.2.4 "Approving the safety configuration" Page 138)
‒ Open safety settings (cogwheel).
(>>> 9.2.6 "Safety Settings" Page 139)

9.2.1 Editing parameters

Description

In the parameter view, the parameters of an element selected in the con-


figuration tree can be edited:
• Safety Rule Set
‒ Safety Rule Sets can be named and provided with a description.
• Safety Rule
‒ Safety Rules can be named and provided with a description.
‒ Safety Rules can be enabled or disabled using the Status button.
This is a simple way to test different configuration variants during
start-up.
‒ An appropriate safety reaction must be configured for each Safety
Rule.
‒ Stop, Brake or output signal
• Monitoring Block
‒ The definable monitoring parameters depend on the type of Moni-
toring Block.
‒ Monitoring Blocks can be named.
Exceptions:
‒ Monitoring Blocks with only one available instance have a pre-
defined name that cannot be changed.
‒ Monitoring Block “Input Signal”: The localized name of the se-
lected signal is used as the name of the Monitoring Block.
‒ Monitoring Block “Input Signal with Acknowledgement”: The
name of the Monitoring Block is composed of the localized
name of the selected signal and the acknowledgement signal.
First the input signal is named, then the acknowledgement sig-
nal, separated by a comma.
‒ Monitoring Block “Cartesian Monitoring Space”: The localized
name of the selected space shape is used as the name of the
Monitoring Block.

Precondition

• “Safety maintenance” user role

9.2.2 Applying the safety configuration

Description

Each safety configuration has a unique activation ID. With this ID, the
Safety Commissioning Engineer can unambiguously identify the safety
configuration on the robot controller.
• If changes are made to the safety configuration on the ENGINEERING
tab, the activation ID also changes.

136/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
• The modified safety configuration is no longer identical to the safety
configuration currently running on the robot controller and displayed on
the RUNTIME tab. This is indicated on the RUNTIME tab by a
crossed-out activation ID.
• If the modified safety configuration is applied, the safety configuration
on the RUNTIME tab is updated and the new activation ID is dis-
played.
Any modification of the activation ID requires a complete check of
all configuration parameters. It is not sufficient to check the modified
parameters only.

• The safety configuration is not yet enabled when the changes have
been applied.
The robot cannot be moved. A safety stop 1 (path-maintaining) is ac-
tive and all safe output signals are set to “0” (LOW level).

Precondition

• “Safety maintenance” user role

Procedure

1. Select the Apply button. A dialog is opened.


2. The following actions are available:
• Cancel
Closes the dialog without applying the changes.
• Apply
The validity of the modified safety configuration is checked.
‒ If the safety configuration is valid, the safety controller restarts
and the changes are applied.
‒ If the safety configuration is invalid, the dialog is closed without
the changes being applied. A pop-up message displays a cor-
responding error message.

9.2.3 Canceling the safety stop if the safety configuration is not approved

Description

The safety stop activated after a modified safety configuration has been
applied can be canceled for a grace period of 4 hours. The deactivation of
the safe output signals is also canceled during the grace period.
During the grace period, the robot can be moved in order to check the
safety configuration.

Precondition

• “Safety maintenance” user role

Procedure

1. Select the Unblock button. A dialog is opened.


2. The following actions are available:
• Cancel
Closes the dialog without canceling the safety stop.
• Unblock
Starts the grace period and closes the dialog.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 137/230


Safety configuration iiQKA.OS 1.2

3. As long as the started grace period has not yet elapsed, a message
with the remaining grace period is displayed in the safety configuration
editor.
4. The grace period that is already running can be extended. To do so,
select the Unblock button again and start the grace period from the
beginning.

9.2.4 Approving the safety configuration

Description

The safety configuration must not be approved until the correctness of all
configuration parameters has been successfully verified (safety accept-
ance).

Precondition

• “Safety maintenance” user role

Procedure

1. Select the Start Approval button. A dialog opens displaying the safety
configuration report.
The report contains all data that the Safety Commissioning Engineer
must check before the safety configuration is approved.
2. The following actions are available:
• Download to USB
The safety configuration report can be downloaded.
The button is active if a USB stick is connected to the smartPAD.
• Approve safety configuration
Approves the safety configuration.
Before approval, the activation ID in the safety configuration report
must be compared with the activation ID displayed on the RUN-
TIME tab. The IDs must match.
• Close
Closes the dialog.

9.2.5 Creating and downloading a safety configuration report

Description

The report can only be created for the safety configuration that is currently
running on the robot controller. The report can also be downloaded to a
USB stick and used, for example, to document the successful verification
and validation of the safety configuration.
The report can be created from both tabs of the safety configuration edi-
tor. On the ENGINEERING tab, however, only in the context of enabling a
safety configuration after any changes in the safety configuration have
been applied.

Precondition

• USB stick is connected to the smartPAD.


• Report on the approval of a modified safety configuration on the EN-
GINEERING tab:
‒ “Safety maintenance” user role

138/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
‒ Changes have been saved.
(>>> 9.2.2 "Applying the safety configuration" Page 136)

Procedure

1. In the Feature menu, select Setup > Safety.


2. On the RUNTIME tab, press the Open Report button.
Or: On the ENGINEERING tab, press the Start Approval button.
A dialog opens displaying the safety configuration report.
3. To download, select the Download to USB button.

9.2.6 Safety Settings

The Safety Commissioning Engineer can configure the following settings


in the Safety Settings dialog:
• Bus settings tab: EtherCAT safety ID (or FSoE slave address) of the
robot controller
The current value of the EtherCAT safety ID is displayed. The value
can be changed.
• Workpieces tab: Mass of the heaviest workpiece
The mass of the heaviest workpiece that the robot might pick up must
be configured if load-dependent Monitoring Blocks are used. The fol-
lowing Monitoring Blocks are load-dependent:
‒ Collision
‒ Maximum TCP Force
Each of the load-dependent Monitoring Blocks checks whether the
workpiece mass transferred to the safety controller with the load data
exceeds the configured mass of the heaviest workpiece. If the mass of
the heaviest workpiece is not configured, it is initialized with the de-
fault value (= 0.0 kg) and the Monitoring Block is violated when the
workpiece load data are used in the safety controller.
The current value of the heaviest workpiece is displayed on the Work-
pieces tab. The value can be changed by entering the desired value
or using the Apply from heaviest workpiece button.
The button sets the value to the maximum of all masses of the work-
pieces currently configured.
Further information about configuring workpieces can be found in
the help function under “Payload configuration”.

The following actions can be selected in the Safety Settings dialog:


• Cancel
Closes the dialog without applying the changes.
• Apply
Accepts the changed settings.

9.3 Status of the current safety configuration

Description

The RUNTIME tab of the safety configuration editor shows the safety con-
figuration currently running on the robot controller as a tree structure. The
activation ID of the safety configuration and diagnostic states for Safety
Rules and Monitoring Blocks are also displayed.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 139/230


Safety configuration iiQKA.OS 1.2

Procedure

• To access the tab, select Setup > Safety in the Feature menu.

Activation ID

If changes have been made to the safety configuration on the ENGI-


NEERING tab, but have not yet been applied, the activation ID is crossed
out.

Status of Safety Rules

The status is displayed in the line with the Safety Rule. Safety Rules can
have the following statuses:
• Violated
‒ Red icon with exclamation mark at the beginning of the line
‒ Highlighted line with red background color
A safety rule is violated if all of the contained monitoring blocks are
violated or invalid. The configured safety reaction is then triggered.
• Muted
‒ Gray icon with Reaction Muted display at the end of the line
A Safety Rule is triggered if the safety reaction has been canceled
through CRR mode.
• Not violated
‒ No icon
A Safety Rule is not violated if at least one of the contained monitor-
ing blocks is not violated.
When a Safety Rule Set is collapsed in the tree view, the aggregated vio-
lation status of the Safety Rules contained in it is displayed.

Status of Monitoring Blocks

The status is displayed on the Monitoring Block. Monitoring Blocks can


have the following statuses:
• Violated
‒ Red icon with exclamation mark
• Invalid
‒ Yellow icon with exclamation mark
There is an error or the desired aspect of the system state cannot be
monitored. A sensor error, for example, may be the cause.
• Not violated
‒ No icon
The status of all Monitoring Blocks for a safety rule is also displayed in
the line with the safety rule. Red/yellow dots indicate the number and se-
quence of the violated/invalid Monitoring Blocks.

9.4 Safety reactions

An appropriate safety reaction is defined for each Safety Rule. This reac-
tion must take place in the event of an error and switch the system to a
safe state.
The following safety reactions can be configured:

140/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
• Safety stop 1 (path-maintaining) is triggered.
The manipulator is braked on the programmed path. At standstill, the
drives are switched off and the mechanical brakes are applied.
The safety controller monitors the braking process. After a duration of
1.5 s at the latest, or less depending on the robot type, the brakes are
applied and the drives are switched off. In the event of an error, the
drives are switched off and the mechanical brakes are applied immedi-
ately (safety stop 0).
WARNING
Risk of injury due to safety stop 1 (path-maintaining) in safety
functions for detecting crushing situations
In crushing situations, safety stop 1 (path-maintaining) can lead to
higher crushing forces due to the controlled stopping on a planned
braking path. For this reason, safety stop 1 (path-maintaining) is not
suitable for safety functions for detecting crushing situations, e.g. by
means of the Monitoring Block Maximum TCP Force.
‒ Use safety stop 1 (HRC) for safety functions for detecting crush-
ing situations.

• Safety stop 1 (HRC) is triggered.


The manipulator switches to compliance control with increased damp-
ing in order to reduce the acting external forces and to come to a
standstill. The manipulator leaves the programmed path in this case.
At standstill, the drives are switched off and the mechanical brakes
are applied.
The safety controller monitors the braking process. Specifically, the
Cartesian velocity and the external axis torques are monitored. In the
event of an error, the drives are switched off and the mechanical
brakes are applied immediately (safety stop 0).
Conditions for use of the “Safety stop 1 (HRC)” reaction:
‒ Only compatible with Safety Rules that contain at least one of the
following Monitoring Blocks:
‒ Collision
‒ Maximum TCP Force
• Brake is triggered.
The manipulator is braked on the programmed path as long as the
Safety Rule is violated. The safety controller monitors the braking
process. In the event of an error, the drives are switched off and the
mechanical brakes are applied immediately (safety stop 0).
Unlike a safety stop 1, the braking process does not lead to a com-
plete standstill or deactivation of the drives. The velocity reduction and
safety-oriented monitoring of the braking process are only carried out
until the Safety Rule is no longer violated.
Conditions for use of the “Brake” reaction:
‒ Only compatible with Safety Rules that contain a Monitoring Block
Maximum Cartesian Velocity
‒ Not compatible with Safety Rules that contain a Monitoring Block
Timer Expired
‒ Not compatible with jogging

If the “Brake” reaction is triggered during jogging, no automatic brak-


ing with the drives occurs. If the velocity does not decrease, the
safety controller detects an error and triggers a safety stop 0.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 141/230


Safety configuration iiQKA.OS 1.2

• Safety-oriented output is set to “0” (LOW level).


The safety reactions can be used for any number of Safety Rules. The
safety system concurrently executes all the Safety Rules contained in the
safety configuration.
A safety reaction is triggered as soon as one of the Safety Rules using
this reaction is violated. This makes it possible, for example, to inform a
higher-level controller about a safety-oriented output if specific errors oc-
cur.
It is possible to trigger different safety reactions if a specific combination
of Monitoring Blocks is violated. For example, both a safety stop and an
output signal can be triggered. For this, 2 Safety Rules must be config-
ured with an identical combination of Monitoring Blocks.

9.4.1 Behavior of safety-oriented outputs

The following points must be observed when using Safety Rules with a
safety-oriented output as a reaction:
• All the safety-oriented outputs use LOW as the safe state.
• If a Safety Rule is violated that uses a safety-oriented output as a re-
action, the output is immediately set to LOW.
• Once the violation state has been resolved, the output is not reset to
HIGH until the following conditions are met:
‒ The Safety Rule is not violated for at least 24 ms. The reaction to
resolution of the violation state is always delayed.
‒ If the discrete safety interface is used:
The output has the LOW level for at least 200 ms beforehand. If
the LOW level has not yet been active for this time, the level is
not changed to HIGH until the period of 200 ms has elapsed.
‒ If the Ethernet safety interface is used:
The output has the LOW level for at least 500 ms beforehand. If
the LOW level has not yet been active for this time, the level is
not changed to HIGH until the period of 500 ms has elapsed.
• The level change from LOW to HIGH does not have to be acknowl-
edged.
• Connection errors are automatically acknowledged by the safety con-
troller at safety-oriented inputs/outputs once the connection has been
restored. The output level can therefore switch from LOW to HIGH af-
ter restoration of the connection.

WARNING
Danger to life and limb due to automatic restart of peripheral devi-
ces
Using Safety Rules with a safety-oriented output as a reaction may re-
sult in an automatic restart of peripheral devices connected to this out-
put. Death, severe injuries or damage to property may result.
• The Safety Commissioning Engineer must take appropriate meas-
ures to ensure that no automatic restart is possible.

9.5 Configuration of safety-oriented tools

The following safety-oriented tool parameters are not configured in the


safety configuration editor, but in other editors:

142/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
• Load data
The load data can be configured both in the tool configuration editor
and in the scene editor. The load data are taken into consideration
when the following Monitoring Blocks are used:
‒ Collision
‒ Maximum TCP Force
• TCP for monitoring the tool orientation
The TCP can be configured both in the tool configuration editor and in
the scene editor. The TCP can be selected as a tool orientation frame
when configuring the following Monitoring Block:
‒ Tool Orientation Monitoring
The same TCP is monitored in all Monitoring Blocks of the type Tool
Orientation Monitoring.
• Safety spheres
Up to 6 spheres can be configured in the scene editor for modeling
the tool geometry. The spheres are taken into consideration when the
following Monitoring Blocks are used, provided they are configured as
a structure to be monitored:
‒ Maximum Cartesian Velocity
‒ Cartesian Monitoring Space
• Force interaction area
A force interaction area can be configured in the scene editor. The
area is defined as a sphere that contains all the points of a safety-ori-
ented tool where expected external forces can occur. The area is used
by the following Monitoring Block:
‒ Maximum TCP Force

Further information can be found in the help function under “3D scene”
or under “Payload configuration”.

9.6 Configuration of further safety parameters in scene

The following additional safety parameters can be configured in the scene


editor:
• Monitoring spaces
Monitoring spaces can be created and configured as cuboids or
prisms in the scene editor. All created cuboids and prisms can be se-
lected as the space to be monitored when the following Monitoring
Blocks are used:
‒ Cartesian Monitoring Space
• Installation position and orientation of the robot
Relevant for the monitoring behavior of the following Monitoring
Blocks:
‒ Cartesian Monitoring Space
‒ Tool Orientation Monitoring
‒ Collision
‒ Maximum TCP Force
If the robot is selected in the 3D or tree view of the scene editor, the
position and alignment of the robot can be edited in the parameter ed-
itor.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 143/230


Safety configuration iiQKA.OS 1.2

Further information about the configuration of these parameters can be


found in the help function under “3D scene”.

9.7 Safety interfaces

Various safety interfaces are available for exchanging safe signals be-
tween a higher-level controller and a robot controller.
• The safety-oriented inputs of these interfaces can be used for connect-
ing safety devices, e.g. external EMERGENCY STOP devices or safe-
ty gates, and for evaluating the corresponding input signals.
• The safety-oriented outputs of these interfaces can be used to signal
the violation of Safety Rules.

9.7.1 Discrete safety interfaces

The robot controller provides the following discrete safety interfaces:


• XG11.1 (KSP-300)
‒ 2 safety-oriented inputs
‒ 1 safety-oriented output
• XG58 (KSP-300)
‒ 2 safety-oriented inputs

Use

• In the standard safety configuration, interface XG11.1 is used for con-


necting an external EMERGENCY STOP device and a safety gate.
Output XG11.1 is used to communicate the state of the EMERGENCY
STOP device on the smartPAD to the robot controller.
• Interface XG58 is not used in the standard safety configuration.

Further information about the safety interfaces is contained in the as-


sembly instructions of the robot controller in the “Planning” chapter.

9.7.2 Ethernet safety interfaces

The robot controller provides the following Ethernet safety interface:


• EtherCAT/FSoE

Use

The interface can be used for connecting the EL6695-1001 EtherCAT


bridge terminal. The terminal is connected to the KEI interface of the robot
controller:
• “Performance” system board: interface XF8

Configuration

In order to start up the EtherCAT bridge terminal, the EtherCAT safety ID


for establishing the FSoE communication with this device must be set in
the safety settings of the safety configuration.
(>>> 9.2.6 "Safety Settings" Page 139)
Further information about the start-up and configuration of the EtherCAT
bridge terminal can be found in the help function under “I/O configura-
tion”.

144/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
9.7.3 Safety interface for external laser scanner

A laser scanner of type SICK microScan3 Pro can be connected to the


robot controller via the EtherCAT/FSoE Ethernet safety interface.
The SICK safety laser scanner is connected to the KEI EtherCAT interface
of the robot controller:
• “Performance” system board: interface XF8

Configuration

The following settings in the configuration of the laser scanner are re-
quired for use with the system software iiQKA.OS:
• Set the FSoE address of the laser scanner to 777. The system soft-
ware only supports this FSoE address.
• Select the small process data object (PDO) for the FSoE PDO that is
used. The system software supports the module “Small process data
set”.
• It is recommended not to use the internal restart interlock of the laser
scanner. The system software does not support the resetting of the
lock via a network input signal from the scanner.
• Configure the response to a loss of connection as “Automatic start af-
ter reconnection”. The system software does not support a comman-
ded restart via the network.

For start-up, the laser scanner must be integrated into the 3D scene.
Further information can be found in the help function under “3D scene”.

Restart interlock

A restart interlock, e.g. to prevent the robot from restarting when a protec-
tive field is entered, can be implemented using the Monitoring Block Input
Signal with Acknowledgement. After an interruption of the protective
field, this monitoring function remains violated until this interruption has
been eliminated and a separate safe acknowledgement signal is set. For
example, the acknowledgement signal can be set by means of a connec-
ted pushbutton outside the danger zone.

No support for multiple monitoring functions

The system software iiQKA.OS does not support the internal function of
the Sick safety laser scanner to switch between multiple monitoring cases.
It only supports monitoring case 1, which is permanently active.
As an alternative to the monitoring cases, the system software offers the
Safety Rule mechanism. A Safety Rule can be used to change the system
reaction to interruption of a protective field.

9.8 Configuration of safe signals

Description

The safe signals are configured in the I/O configuration editor. The availa-
ble physical I/Os, the signal mapping and the bus topology are specified
there.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 145/230


Safety configuration iiQKA.OS 1.2

Fig. 9-2: List of available physical I/Os

1 Mapped safety-oriented I/Os


2 Non-mapped safety-oriented I/Os
3 Icon for non-safety-oriented I/Os
4 Icon for safety-oriented I/Os
As soon as safety-oriented I/Os have been mapped to a signal, they can
be used in the safety configuration. This only applies to I/Os that can be
used for connecting external devices to the robot controller.
Further information about the mappable safety-oriented I/Os can be
found in the assembly instructions of the robot controller.

There are also internal safe signals of the KUKA smartPAD pro and the
LBR iisy Commander (if present). These signals are not displayed in the I/
O configuration editor. They are predefined and can be selected directly in
the safety configuration.

Procedure

• To open the editor, select Setup > I/O from the Feature menu.

Further information about mapping the signals in the I/O configuration


editor can be found in the help function under “I/O configuration”.

9.9 Use of safe signals in the safety configuration

Description

Signals can be used in the safety configuration as follows:


• As parameters of a Safety Rule with an output as a safety reaction
If the Safety Rule is violated, the signal for the output is set to LOW.
• As parameters of a Monitoring Block
The LOW state is interpreted as a triggering state.

Monitoring of multiple enabling devices

The following Monitoring Blocks can be used to monitor 3-step enabling


devices of up to 3 devices in each case:

146/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
• Enabling Inactive
• Manual Guidance Inactive
2 safe input signals must be configured per enabling device (device). One
of the safe input signals supplies the signal from the enabling switches
and the other safe input signal supplies the signal from the panic
switches.

Fig. 9-3: Monitoring of multiple enabling devices

1 Device 1 (safe signals selected)


2 Device 2 (no safe signals selected)
3 Add Device button
4 Buttons for opening/editing the signal selection

Signal selection

Only signals that are assigned to a safety-oriented I/O can be selected.


No signal is preselected.
• The Select Safe Signal button opens the signal selection. All availa-
ble signals are displayed.
• After successful selection, the signal name is displayed on the button.
• The selection can be changed. The signal selection is opened again
by tapping on the signal name or on the pencil icon.

9.10 Overview of Monitoring Blocks

Monitoring Blocks for evaluating the operating mode

Monitoring Block Description


Test Mode Checks whether a test mode (T1, CRR) is active
Automatic Mode Checks whether an automatic mode (AUT) is active
Reduced Speed Mode Checks whether an operating mode with reduced velocity (T1,
CRR) is active
High Speed Mode Checks whether an operating mode with high velocity (AUT)
is active.
(>>> 9.12 "Evaluating the operating mode" Page 150)

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 147/230


Safety configuration iiQKA.OS 1.2

Monitoring Block for evaluating active safety stops

Monitoring Block Description


Safety Stop Checks whether a safety stop is active
(>>> 9.13 "Monitoring Block “Safety Stop”" Page 151)

Monitoring Blocks for monitoring enabling devices

Monitoring Block Description


Enabling Inactive Checks whether the enabling signal has not been issued on a
teach pendant
Manual Guidance Inactive Checks whether the enabling signal has not been issued on a
hand guiding device
Manual Guidance Active Checks whether the enabling signal has been issued on a
hand guiding device
(>>> 9.15 "Monitoring of enabling devices" Page 153)

Monitoring Blocks for evaluating the confirmation status of mastering and joint torque
sensor calibration

Monitoring Block Description


Mastering Not Approved Checks whether the mastering of the axis position sensors of
a kinematic system is confirmed
JTS Adjustment Not Ap- Checks whether the calibration of the joint torque sensors of
proved a kinematic system is confirmed
(>>> 9.16 "Evaluation of the confirmation status of mastering and joint tor-
que sensor calibration" Page 155)

Monitoring Blocks for monitoring safety-oriented inputs

Monitoring Block Description


Input Signal Monitors the signal at a safety-oriented input (e.g. on an
EMERGENCY STOP device)
Input Signal with Acknowl- Monitors the signal at a safety-oriented input (e.g. on a safety
edgement gate) which has to be acknowledged via a second input sig-
nal.
(>>> 9.17 "Monitoring of safety-oriented inputs" Page 156)

Monitoring Blocks for velocity monitoring

Monitoring Block Description


Maximum Axis Velocity Monitors the velocity of an axis
Maximum Cartesian Velocity Monitors the Cartesian translational velocity at defined points
of a kinematic system
(>>> 9.18 "Velocity monitoring functions" Page 158)

Monitoring Blocks for space monitoring

Monitoring Block Description


Axis Work Range Checks whether the position of one of the rotational axes of a
kinematic system is within a permissible axis range
Axis Protection Range Checks whether the position of one of the rotational axes of a
kinematic system is within a non-permissible axis range

148/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
Monitoring Block Description
Cartesian Monitoring Space Checks whether a part of the monitored structure of a kine-
matic system is located inside or outside of a Cartesian mon-
itoring space

• A Cartesian monitoring space can be configured as a cu-


boid or prism.
• A Cartesian monitoring space can be defined as a work-
space in which the robot must be located, or as a protec-
ted space that it must not enter.
(>>> 9.19 "Space monitoring functions" Page 160)

Monitoring Block for monitoring the tool orientation

Monitoring Block Description


Tool Orientation Monitoring Checks whether the orientation of the tool of a kinematic sys-
tem is inside a permissible space
(>>> 9.20 "Monitoring of tool orientation" Page 165)

Monitoring Blocks for monitoring forces and axis torques (HRC)

Monitoring Block Description


Collision Monitors the external axis torques of all axes of a kinematic
system
Note: The external axis torque is defined as that part of the
torque on an axis which is generated by the forces/torques
occurring as the robot (and/or the tools) interact(s) with its en-
vironment.
Maximum TCP Force Monitors the external force acting on the tool or the robot
flange of a kinematic system (on a point within the configured
force interaction area)
(>>> 9.21 "Monitoring of forces and axis torques" Page 168)

Monitoring Block for switching a delay

Monitoring Block Description


Timer Expired Delays the triggering of the reaction of a Safety Rule by a
specified time
(>>> 9.22 "Monitoring Block “Timer Expired”" Page 172)

9.11 Confirmation of mastering and calibration of the joint torque sensors

The confirmation checks and confirms the mastering of the axis position
sensors and the calibration of the joint torque sensors of a kinematic sys-
tem.
Further information about performing the confirmation can be found in
the help function under “General operation”.

The safety integrity of the following Monitoring Blocks is only assured if


the mastering and/or joint torque sensor calibration have been confirmed
successfully.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 149/230


Safety configuration iiQKA.OS 1.2

Confirmation of joint
Confirmation of mas-
Monitoring Block torque sensor calibra-
tering
tion
Axis Work Range

Axis Protection Range

Maximum Cartesian Velocity

Cartesian Monitoring Space

Tool Orientation Monitoring

Collision

Maximum TCP Force

The following events cause confirmation to be lost. The safety integrity of


the above-mentioned Monitoring Blocks is thus no longer assured. Confir-
mation of the mastering and/or confirmation of the calibration of the joint
torque sensors must be performed again:
• Robot controller is rebooted.
• New/modified safety configuration is applied.
• Confirmation of the mastering of an axis has failed.
• Confirmation of the joint torque sensor calibration of an axis has failed.
• Maximum torque of a joint torque sensor is exceeded.
• Only confirmation of mastering: the axis position is remastered.
• Only confirmation of joint torque sensor calibration: sensors are recali-
brated or reset to the factory settings.
The loss of confirmation does not result in a violation of the Monitoring
Blocks. The kinematic system can still be moved.
After these events, the Monitoring Blocks are only violated if the mastering
confirmation for an axis or the confirmation of calibration of a joint torque
sensor fails.
The following Monitoring Blocks can be used to evaluate the status of the
confirmation:
• Mastering Not Approved
• JTS Adjustment Not Approved
If mastering or joint torque sensor calibration is not confirmed, the safe
state can be initiated as a reaction.
(>>> 9.16 "Evaluation of the confirmation status of mastering and joint tor-
que sensor calibration" Page 155)

9.12 Evaluating the operating mode

9.12.1 Monitoring Block “Test Mode”

The Monitoring Block Test Mode can be used to check whether a test
mode (T1, CRR) is active.
The Monitoring Block is required for safety monitoring functions that are
dependent on the operating mode, e.g. operator safety.
The Monitoring Block is violated if a test mode (T1, CRR) is active.

150/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
9.12.2 Monitoring Block “Automatic Mode”

The Monitoring Block Automatic Mode can be used to check whether an


automatic mode (AUT) is active.
The Monitoring Block is required for safety monitoring functions that de-
pend on the operating mode.
The Monitoring Block is violated if an automatic mode (AUT) is active.

9.12.3 Monitoring Block “Reduced Speed Mode”

Description

The Monitoring Block Reduced Speed Mode can be used to check


whether an operating mode with reduced velocity (T1, CRR) is active.
In combination with other Monitoring Blocks, the Monitoring Block can be
used to disable the reaction of a Safety Rule in the case of an operating
mode with high velocity.
The Monitoring Block is violated if an operating mode with reduced veloci-
ty (T1, CRR) is active.

Example

(>>> 9.18.3 "Velocity monitoring in T1 and CRR" Page 159)

9.12.4 Monitoring Block “High Speed Mode”

The Monitoring Block High Speed Mode can be used to check whether
an operating mode with high velocity (AUT) is active.
In combination with other Monitoring Blocks, the Monitoring Block can be
used to disable the reaction of a Safety Rule in the case of an operating
mode with reduced velocity.
The Monitoring Block is violated if an operating mode with high velocity
(AUT) is active.

9.13 Monitoring Block “Safety Stop”

Description

The Monitoring Block Safety Stop checks whether a safety stop is active.
The Monitoring Block is required, for example, in the case of a safety stop
to set an output that affects the connected peripheral equipment.
The Monitoring Block is violated if a safety stop is active.
The “Brake” safety reaction is not a safety stop and does not cause a
violation.

Example

Safety Rule for switching off a tool


A tool (e.g. a laser) is switched off via a safety-oriented output if the fol-
lowing conditions are met:
• Robot stops with a safety stop.
• At the same time, the operator safety is violated (e.g. with the safety
gate open).

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 151/230


Safety configuration iiQKA.OS 1.2

Safety Rule
Monitoring Block 1 Monitoring Block 2 Reaction
Safety Stop Input Signal (safety gate) Safe Output

9.14 Monitoring of operator devices

The KUKA smartPAD pro and the LBR iisy Commander are used as
standard for operator control of the robot.
The preconfigured Safety Rule Set “Operator Devices” is essential for the
integration of operator devices. It contains the following Safety Rules:
• “Emergency Stop Operator Device”
(>>> 9.14.1 "Monitoring of the EMERGENCY STOP device on the
smartPAD pro" Page 152)
• “Enabling in Test Mode”
(>>> 9.14.2 "Monitoring of enabling in T1/CRR" Page 152)

9.14.1 Monitoring of the EMERGENCY STOP device on the smartPAD pro

The Safety Rule “Emergency Stop Operator Device” is used to monitor


the EMERGENCY STOP device on the smartPAD pro. If the EMERGEN-
CY STOP is pressed, a safety stop 1 (path-maintaining) is triggered.
Safety Rule Set “Operator Devices”
Safety Rule “Emergency Stop Operator Device”
Monitoring Block 1 Reaction
Input Signal Stop 1 on Path

9.14.2 Monitoring of enabling in T1/CRR

The enabling devices on the smartPAD and LBR iisy Commander are
monitored using the Safety Rule “Enabling in Test Mode”. In the following
cases, a safety stop 1 (path-maintaining) is triggered in T1 and CRR
modes:
• All enabling switches of both operator devices are released or one of
their enabling switches is fully pressed (panic position).
• An enabling switch on the Commander and an enabling switch on the
smartPAD are simultaneously held in the center position.

Safety Rule Set “Operator Devices”


Safety Rule “Enabling in Test Mode”
Monitoring Block 1 Monitoring Block 2 Monitoring Block 3 Reaction
Test Mode Enabling Inactive Manual Guidance In- Stop 1 on Path
active

152/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
9.15 Monitoring of enabling devices

9.15.1 Monitoring Block “Enabling Inactive”

Description

The Monitoring Block Enabling Inactive can be used to monitor 3-step


enabling devices of up to 3 teach pendants. For each enabling device,
2 safe input signals must be configured, one of which supplies the signal
of the enabling switches and one the signal of the panic switches.
The Monitoring Block implements the following normative requirements
and measures against foreseeable misuse:
• After an enabling switch has been pressed down fully, the signal will
not be issued if the switch is released to the center position.
• The signal is canceled in case of a stop request. To issue the signal
again, the enabling switch must be released and pressed again.
• The signal is only issued 100 ms after the enabling switch has been
pressed.
The following must be taken into consideration when using multiple ena-
bling switches of one or more enabling devices:
• If multiple enabling switches of an enabling device are held simultane-
ously in the center position, it is not possible to distinguish whether
one of them is intentionally released or unintentionally released as the
result of an accident. The enabling signal is not canceled until all ena-
bling switches have been released or one of the enabling switches is
fully pressed.
• If the enabling switches of different enabling devices are pressed si-
multaneously, e.g. an enabling switch on the smartPAD and an ena-
bling switch on the hand guiding device, a safety stop 1 (path-main-
taining) is triggered.
• If the enabling switches of the enabling devices of different teach
pendants configured in the Monitoring Block Enabling Inactive are
pressed simultaneously, a safety stop 1 (path-maintaining) will be trig-
gered.
The Monitoring Block is violated in the following cases:
• The input signal that supplies the signal of the enabling switches is
LOW (state “0”). This means that no enabling switch is pressed on the
teach pendant.
• The input signal that supplies the signal of the panic switches is LOW
(state “0”). This means that an enabling switch is fully pressed on the
teach pendant.

Parameter

Parameter Description
Enable Safe input signal used for the enabling switches of the ena-
bling device
A predefined input signal is available for the KUKA smartPAD.
Panic Safe input signal used for the panic switches of the enabling
device
A predefined input signal is available for the KUKA smartPAD.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 153/230


Safety configuration iiQKA.OS 1.2

9.15.2 Monitoring Block “Manual Guidance Inactive”

Description

The Monitoring Block Manual Guidance Inactive can be used to monitor


3-step enabling devices of up to 3 hand guiding devices. For each ena-
bling device, 2 safe input signals must be configured, one of which sup-
plies the signal of the enabling switches and one the signal of the panic
switches.
The Monitoring Block implements the following normative requirements
and measures against foreseeable misuse:
• After an enabling switch has been pressed down fully, the signal will
not be issued if the switch is released to the center position.
• The signal is canceled in case of a stop request. To issue the signal
again, the enabling switch must be released and pressed again.
• The signal is only issued 100 ms after the enabling switch has been
pressed.
The following must be taken into consideration when using multiple ena-
bling switches of one or more enabling devices:
• If multiple enabling switches of an enabling device are held simultane-
ously in the center position, it is not possible to distinguish whether
one of them is intentionally released or unintentionally released as the
result of an accident. The enabling signal is not canceled until all ena-
bling switches have been released or one of the enabling switches is
fully pressed.
• If the enabling switches of different enabling devices are pressed si-
multaneously, e.g. an enabling switch on the smartPAD and an ena-
bling switch on the hand guiding device, a safety stop 1 (path-main-
taining) is triggered.
• If the enabling switches of the enabling devices of different hand guid-
ing devices configured in the Monitoring Block Manual Guidance In-
active are pressed simultaneously, a safety stop 1 (path-maintaining)
will be triggered.
The Monitoring Block is violated in the following cases:
• The input signal that supplies the signal of the enabling switches is
LOW (state “0”). This means that no enabling switch is pressed on the
hand guiding device.
• The input signal that supplies the signal of the panic switches is LOW
(state “0”). This means that an enabling switch is fully pressed on the
hand guiding device.

Parameter

Parameter Description
Enable Safe input signal used for the enabling switches of the ena-
bling device
For robots equipped with a hand guiding device, e.g. LBR iisy
Commander, a predefined input signal is available.
Panic Safe input signal used for the panic switches of the enabling
device
For robots equipped with a hand guiding device, e.g. LBR iisy
Commander, a predefined input signal is available.

154/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
9.15.3 Monitoring Block “Manual Guidance Active”

Description

The Monitoring Block Manual Guidance Active checks whether the ena-
bling signal has been issued on a hand guiding device.
The Monitoring Block can be used in a Safety Rule to activate another
Monitoring Block. This can be a Cartesian velocity monitoring function, for
example, which is then active during manual guidance.
The Monitoring Block is violated if the enabling signal for manual guidance
has been issued:
• The configured input signals of the Monitoring Block Manual Guid-
ance Inactive are used for evaluating the Monitoring Block.
• The Monitoring Block constitutes an inversion of the Monitoring Block
Manual Guidance Inactive:
‒ The Monitoring Block Manual Guidance Active is violated if the
Monitoring Block Manual Guidance Inactive is not violated.
‒ If the Monitoring Block Manual Guidance Active is invalid, the
Monitoring Block Manual Guidance Inactive is also invalid.

Example

(>>> 9.18.4 "Velocity monitoring during manual guidance" Page 159)

9.16 Evaluation of the confirmation status of mastering and joint torque


sensor calibration

9.16.1 Monitoring Block “Mastering Not Approved”

Description

The Monitoring Block Mastering Not Approved can be used to check


whether the mastering of all axis position sensors of a monitored kinemat-
ic system has been confirmed.
The Monitoring Block is violated if the mastering of one or more axes of
the monitored kinematic system is not confirmed.

Example

Safety Rule for monitoring the confirmation status of the mastering


The confirmation status of the mastering is monitored in the operating
modes with high velocity. This ensures that the robot cannot be moved in
the operating modes with high velocity if mastering is not confirmed.
If the following condition is met, a safety stop 1 (path-maintaining) is exe-
cuted:
• Mastering of at least one axis has not been confirmed and an operat-
ing mode with high velocity is active.

Safety Rule
Monitoring Block 1 Monitoring Block 2 Reaction
High Speed Mode Mastering Not Approved Stop 1 on Path

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 155/230


Safety configuration iiQKA.OS 1.2

9.16.2 Monitoring Block “JTS Adjustment Not Approved”

Description

The Monitoring Block JTS Adjustment Not Approved can be used to


check whether the calibration of all joint torque sensors of a monitored
kinematic system has been confirmed.
The Monitoring Block is violated if the calibration of one or more joint tor-
que sensors of the monitored kinematic system is not confirmed.

9.17 Monitoring of safety-oriented inputs

Safety equipment, such as local and external EMERGENCY STOP devi-


ces, light curtains and safety gates, can be connected to safety-oriented
inputs.
The following Monitoring Blocks are available for monitoring the associ-
ated input signals:
• Input Signal
(>>> 9.17.1 "Monitoring Block “Input Signal”" Page 156)
• Input Signal with Acknowledgement
(>>> 9.17.2 "Monitoring Block “Input Signal with Acknowledgement”"
Page 157)

9.17.1 Monitoring Block “Input Signal”

Description

The Monitoring Block Input Signal can be used to monitor the status of
an input signal.
The Monitoring Block can be implemented as follows, for example:
• Monitor safety equipment that is connected via a safety-oriented input.
• Deactivate monitoring via a safety-oriented input.
• Trigger a stop via a safety-oriented input.

Parameter Description
Input Signal Input signal to be monitored
The Monitoring Block is violated if the input signal is LOW (state “0”).

Example 1

Predefined Safety Rule “Safety Door” in the Safety Rule Set “Standard
Safety Interface” (standard safety configuration)
If the following conditions apply, a safety stop 1 (path-maintaining) is exe-
cuted:
• Operating mode is AUT.
• Safety gate connected via XG11.1 is open.
• Enabling switches on the Commander are not actuated.

156/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
Safety Rule Set “Standard Safety Interface”
Safety Rule “Safety Door”
Monitoring Block 1 Monitoring Block 2 Monitoring Block 3 Reaction
Automatic Mode Input Signal (safety Manual Guidance In- Stop 1 on Path
gate) active

Example 2

Predefined Safety Rule “Emergency Stop External” in the Safety Rule Set
“Standard Safety Interface” (standard safety configuration)
If the following condition is met, a safety stop 1 (path-maintaining) is exe-
cuted:
• External EMERGENCY STOP device connected via XG11.1 is press-
ed.
The Safety Rule is disabled by default. In order to be able to use the
functionality, the Safety Rule must be enabled.
Safety Rule Set “Standard Safety Interface”
Safety Rule “Emergency Stop External”
Monitoring Block 1 Reaction
Input Signal (EMERGENCY STOP) Stop 1 on Path

9.17.2 Monitoring Block “Input Signal with Acknowledgement”

Description

The Monitoring Block Input Signal with Acknowledgement can be used


to monitor the state of an input signal which has to be acknowledged via
a second input signal. The Monitoring Block can be implemented as fol-
lows, for example:
• Monitoring of a safety device with acknowledgement, e.g. safety gate/
light curtain with acknowledgement via a pushbutton

Parameter Description
Input Signal Input signal to be monitored
Ack. Signal Input signal to be used for acknowledgement
The Monitoring Block is violated in the following cases:
• Input signal is LOW (state “0”).
• Input signal is HIGH (state “1”) but has not yet been confirmed by the
acknowledgement signal.

Example

Safety Rule for monitoring a safety gate with acknowledgement


If the following condition is met, a safety stop 1 (path-maintaining) is exe-
cuted:
• Safety gate is open while an operating mode with high velocity is ac-
tive.
The safety stop is not canceled until closing of the safety gate has been
confirmed via the acknowledgement signal.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 157/230


Safety configuration iiQKA.OS 1.2

Safety Rule
Monitoring Block 1 Monitoring Block 2 Reaction
Input Signal with Acknowl- High Speed Mode Stop 1 on Path
edgement

9.18 Velocity monitoring functions

9.18.1 Monitoring Block “Maximum Axis Velocity”

The Monitoring Block Maximum Axis Velocity can be used to monitor the
velocity of an axis.
The Monitoring Block is violated if the absolute velocity of the monitored
axis exceeds the configured limit value.
Parameter Description
Monitored Axis Axis to be monitored
Maximum Velocity Maximum velocity at which the monitored axis may move in
the positive and negative direction of rotation

9.18.2 Monitoring Block “Maximum Cartesian Velocity”

The Monitoring Block Maximum Cartesian Velocity can be used to moni-


tor the Cartesian velocity at defined points of a kinematic system.
The Monitoring Block is violated in the following cases:
• Cartesian velocity exceeds the configured limit value at one or more
points of the monitored kinematic system.
The Monitoring Block becomes invalid in the following cases:
• The position of one or more axes is unmastered.
• Confirmation of mastering of one or more axes has failed.

If the Monitoring Block is violated due to loss of mastering, it is neces-


sary to switch to CRR mode in order to be able to move the robot
again and master it.

Parameter Description
Structure Structure to be monitored

• Robot and Tool: The center points of the robot axes and
the safety spheres on the tool are monitored.
• Robot: The center points of the robot axes are monitored.
• Tool: The center points of the safety spheres on the tool
are monitored.
Maximum Velocity Maximum Cartesian velocity that must not be exceeded at
any of the monitored points
The following points must be observed when using the Monitoring Block
Maximum Cartesian Velocity:
• The system does not monitor the entire structure of the robot and tool
for violation of a velocity limit, but only defined points of the robot
structure and the center points of the safety spheres of the tool.
A total of up to 6 safety spheres can be configured for a tool in the
scene editor.

158/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
Further information about the configuration of the safety spheres of
the tool can be found in the help function under “3D scene”.

In particular with projecting tools and workpieces, the safety spheres


of the safety-oriented tool must be planned and configured in such a
way as to assure the safety integrity of the velocity monitoring.
Tools from toolboxes may have preconfigured safety spheres. For
example, the first two tool spheres of a SCHUNK gripper are pre-
configured.

• If the monitored kinematic system is fastened to a carrier kinematic


system (e.g. mobile platform, linear unit), the following applies:
‒ The Cartesian velocity of the monitored kinematic system is moni-
tored relative to the carrier kinematic system and not its absolute
velocity in space.

9.18.3 Velocity monitoring in T1 and CRR

In the Safety Rule “Velocity Limit T1” in the Safety Rule Set “Velocity
Monitoring” of the standard safety configuration, a safety-oriented velocity
monitoring function for the T1 and CRR operating modes is predefined:
• If the maximum Cartesian velocity of 250 mm/s is exceeded in the T1
or CRR operating mode and no enabling switch is pressed on the
Commander, a safety stop 1 (path-maintaining) is triggered.
• It is necessary for the Monitoring Block Maximum Cartesian Velocity
to be linked to the Monitoring Block Manual Guidance Inactive in or-
der to enable manual guidance at a velocity of more than 250 mm/s.

Safety Rule Set “Velocity Monitoring”


Safety Rule “Velocity Limit T1”
Monitoring Block 1 Monitoring Block 2 Monitoring Block 3 Reaction
Reduced Speed Manual Guidance In- Maximum Cartesian Stop 1 on Path
Mode active Velocity

9.18.4 Velocity monitoring during manual guidance

For manual guidance, a maximum velocity must be defined that may not
be exceeded during manual guidance. The value for this velocity limit
must be defined in a risk assessment.
In the Safety Rule “Velocity Limit Manual Guidance” in the Safety Rule
Set “Velocity Monitoring” of the standard safety configuration, a safety-ori-
ented velocity monitoring function for manual guidance is predefined:
• If an enabling switch on the Commander is pressed and the Cartesian
velocity of 500 mm/s is exceeded, a safety stop 1 (path-maintaining) is
triggered.
• The configured maximum Cartesian velocity is valid in all operating
modes. In other words, also for manual guidance in T1/CRR.
• If required by the risk assessment, the value for the maximum Cartesi-
an velocity must be reduced.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 159/230


Safety configuration iiQKA.OS 1.2

Safety Rule Set “Velocity Monitoring”


Safety Rule “Velocity Limit Manual Guidance”
Monitoring Block 1 Monitoring Block 2 Reaction
Manual Guidance Active Maximum Cartesian Velocity Stop 1 on Path

9.19 Space monitoring functions

The robot environment can be divided into areas in which it must be loca-
ted for execution of the application (workspace) and areas which it must
not enter or may only enter under certain conditions (protected space).
The system must then continuously monitor whether the robot is inside or
outside such a monitoring space.
The following Monitoring Blocks are available for this purpose:
• Axis Work Range
• Axis Protection Range
• Cartesian Monitoring Space
By linking these to other Monitoring Blocks, it is possible to define further
conditions that must be met if a monitoring space is violated. A monitoring
space can be activated via a safe input, for example, or may be applica-
ble in automatic mode only.
If the robot has violated a monitoring space and been stopped by the
safety controller, the robot can be moved out of the violated area in
CRR mode.

Stopping distance

If the robot is stopped by a monitoring function, it requires a certain stop-


ping distance before coming to a standstill.
The stopping distance depends primarily on the following factors:
• Robot type
• Velocity of the robot
• Position of the robot axes
• Payload

Include stopping distances in the risk assessment


The stopping distance when the safety reaction is triggered varies ac-
cording to the specific robot type. Failure to take this into consideration
when dimensioning a monitoring space may result in death, severe inju-
ries or damage to property.
• The system integrator must include the stopping distances in the
risk assessment and design the monitoring spaces accordingly.

Further information about the stopping distances and stopping times can
be found in the assembly instructions of the relevant robot.

9.19.1 Monitoring Block “Axis Work Range”

Description

The Monitoring Block Axis Work Range can be used to define for each
axis a permissible axis range that the axis must not leave.
The Monitoring Block is violated in the following cases:

160/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
• Monitored axis is located outside the permissible axis range.
The Monitoring Block becomes invalid in the following cases:
• The position of one or more axes is unmastered.
• Confirmation of mastering of the monitored axis has failed.

If the Monitoring Block is violated due to loss of mastering, it is neces-


sary to switch to CRR mode in order to be able to move the robot
again and master it.

Parameter Description
Monitored Axis Axis to be monitored
Lower Limit Lower limit of the permissible axis range in which the moni-
tored axis may move
Upper Limit Upper limit of the permissible axis range in which the moni-
tored axis may move
The following points must be observed when using the Monitoring Block
Axis Work Range:
• The value for the lower limit must be less than the value for the upper
limit.
• For personnel protection, only the axis position is relevant. For this
reason, the positions are converted to the axis range -180° … +180°,
even for axes which can rotate more than 360°.
• The limited range of values for the lower and upper limits does not al-
low the Monitoring Block to be used if the axis position at ±180° lies
within the permissible axis range. In this case, the Monitoring Block
Axis Protection Range must be used instead.
The diagram (>>> Fig. 9-4) shows an axis-specific work range from
90° to 360°. Since the axis position at 180° is located in this work
range, the Monitoring Block Axis Work Range cannot be used to
monitor whether the axis is within this range. Instead, the Monitoring
Block Axis Protection Range can be used to define a protected axis
range from 0° to 90°.

Fig. 9-4: Axis range monitoring example

9.19.2 Monitoring Block “Axis Protection Range”

Description

The Monitoring Block Axis Protection Range can be used to define for
each axis a protected axis range that the axis must not enter.
The Monitoring Block is violated in the following cases:

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 161/230


Safety configuration iiQKA.OS 1.2

• Monitored axis is located within the protected axis range.


The Monitoring Block becomes invalid in the following cases:
• The position of one or more axes is unmastered.
• Confirmation of mastering of the monitored axis has failed.

Parameter Description
Monitored Axis Axis to be monitored
Lower Limit Lower limit of the protected axis range in which the monitored
axis must not move
Upper Limit Upper limit of the protected axis range in which the monitored
axis must not move
The following points must be observed when using the Monitoring Block
Axis Protection Range:
• The value for the lower limit must be less than the value for the upper
limit.
• For personnel protection, only the axis position is relevant. For this
reason, the positions are converted to the axis range -180° … +180°,
even for axes which can rotate more than 360°.
• The limited range of values for the lower and upper limits does not al-
low the Monitoring Block to be used if the axis position at ±180° lies
within the protected axis range. In this case, the Monitoring Block
Axis Work Range must be used instead.
The diagram (>>> Fig. 9-5) shows an axis-specific protection range
from 90° to 270°. Since the axis position at 180° is located in this pro-
tection range, the Monitoring Block Axis Protection Range cannot be
used to monitor whether the axis is within this range. Instead, the
Monitoring Block Axis Work Range can be used to define a permissi-
ble axis range from -90° to 90°.

Fig. 9-5: Axis range monitoring example

9.19.3 Monitoring Block “Cartesian Monitoring Space”

Description

The Monitoring Block Cartesian Monitoring Space can be used to moni-


tor whether a part of the monitored structure of a kinematic system is in-
side or outside a Cartesian monitoring space.
• A Cartesian monitoring space can be configured as a cuboid or prism.
The space and its shape are created and managed in the scene edi-
tor.

162/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
Further information about managing Cartesian monitoring spaces
can be found in the help function under “3D scene”.

• A Cartesian monitoring space can be defined as a workspace in which


the robot must be located, or as a protected space that it must not en-
ter. The space type is set in the Monitoring Block.
The Monitoring Block is violated in the following cases:
• Workspace: Part of the monitored structure is located outside the
workspace.
• Protected space: Part of the monitored structure is located inside the
protected space.
The Monitoring Block becomes invalid in the following cases:
• The position of one or more axes is unmastered.
• Confirmation of mastering of one or more axes has failed.

If the Monitoring Block is violated due to loss of mastering, it is neces-


sary to switch to CRR mode in order to be able to move the robot
again and master it.

Parameter

Parameter Description
Workspace|Protected Select Space Shape
Space
The spaces created in the scene editor can be
(Depending on selec- selected using the button.
tion Space Type)
Space Type Space type

• Workspace
• Protected Space
Structure Structure to be monitored

• Robot and Tool: The safety spheres on


the robot and tool are monitored.
• Robot: The safety spheres on the robot are
monitored.
• Tool: The safety spheres on the tool are
monitored.
The following points must be observed when using the Monitoring Block
Cartesian Monitoring Space:
• The system does not monitor the entire structure of the robot and tool
for violation of a space, but only the safety spheres. The position of
the safety spheres of the robot and the tool is visualized in the 3D
scene.
A total of up to 6 safety spheres can be configured for a tool in the
scene editor.
Further information about the configuration of the safety spheres of
the tool can be found in the help function under “3D scene”.

In particular with projecting tools and workpieces, the safety spheres


of the safety-oriented tool must be planned and configured in such a
way as to assure the safety integrity of workspaces and protected
spaces.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 163/230


Safety configuration iiQKA.OS 1.2

Tools from toolboxes may have preconfigured safety spheres. For


example, the first two tool spheres of a SCHUNK gripper are pre-
configured.

• The definition of the Cartesian monitoring spaces in the WORLD coor-


dinate system is based on the assumption that the installation position
and orientation of the monitored kinematic system in WORLD do not
change. This means that the position of the monitoring space does not
change relative to the base of the monitored kinematic system.
‒ If the monitored kinematic system is mounted on a carrier kinemat-
ic system (e.g. mobile platform, linear unit), it must be taken into
consideration that the safety monitoring is based on a fixed posi-
tion of the monitoring space relative to the carrier kinematic sys-
tem. For this reason, the monitoring space, too, is moved in the
event of a change in position or inclination of the carrier kinematic
system.
• With very narrow protected spaces, there is a risk that the robot may
enter the protected space and leave it again without the space viola-
tion being detected. Possible cause: Due to a very high tool velocity,
the protected space is only violated during a very short interval.
Example:
The following minimum values are configured in the scene editor:
‒ Minimum radius of the tool sphere: 25 mm
‒ Minimum size of the protected space: 0 mm
With this minimum configuration, tool velocities of over 4 m/s are re-
quired to allow the robot to pass through the protected space without
being detected.
The following measures are recommended to prevent the robot from
moving through protected spaces without being detected:
‒ Configure a maximum Cartesian velocity that does not allow a val-
ue greater than 4 m/s.
‒ Alternatively: When configuring the protected space, select suffi-
ciently large values for the length, width and height.
‒ Alternatively: When configuring the tool spheres, select sufficiently
large values for the radius.

9.19.3.1 Unexpected protected space violation at corners and edges

When monitoring a protected space using the Monitoring Block Cartesian


Monitoring Space, violations of the protected space may occur in the
area of the corners and edges of the cuboid or prism, even though no
safety sphere enters the protected space.
• Cuboid as protected space:
Each safety sphere is replaced by a cube for calculation of the moni-
toring. The cube is just large enough to completely enclose the safety
sphere. The cube is aligned parallel to the cuboid. The cube cannot
be moved as close to the edges and corners of the cuboid as the
safety sphere could. This can result in unexpected violation of the pro-
tected space.
• Prism as protected space:
Each safety sphere is replaced by a cylinder for calculation of the
monitoring. The cylinder is just large enough to completely enclose the
safety sphere. The rotational axis of the cylinder is aligned parallel to
the Z axis of the base frame. The cylinder cannot be moved as close

164/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

to the lower and upper edges and corners of the prism as the safety

Safety configuration
sphere could. This can result in unexpected violation of the protected
space.

Fig. 9-6: Unexpected protected space violation at corners and edges

1 3D view of cuboid
2 Side view of cuboid
3 3D view of prism
4 Side view of prism

9.20 Monitoring of tool orientation

Description

The Monitoring Block Tool Orientation Monitoring can be used to moni-


tor the orientation of the tool of a kinematic system. The Monitoring Block
can, for example, be used in HRC applications in order to prevent danger-
ous parts of the mounted tool, e.g. sharp edges, from pointing towards hu-
mans.
Here, the TCP of the tool (= tool orientation frame) whose orientation is to
be monitored must first be determined:
• The Z axis of the TCP is always monitored.
• In all instances of the Monitoring Block Tool Orientation Monitoring,
the same TCP is monitored.
• The permissible range for the tool orientation can be different in the
Monitoring Blocks.
• The permissible range for the tool orientation is defined by a reference
vector with a fixed orientation relative to the WORLD coordinate sys-
tem and by a deviation angle of this reference vector.
• The reference vector is defined by the rotation of the unit vector of the
Z axis of the WORLD coordinate system about the 3 angles Rz, Ry
and Rx relative to the WORLD coordinate system.
The Monitoring Block is violated in the following cases:
• The angle between the Z axis of the monitored TCP (tool orientation
frame) and the reference vector is greater than the configured devia-
tion angle.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 165/230


iiQKA.OS 1.2

The Monitoring Block becomes invalid in the following cases:


Safety configuration

• The position of one or more axes is unmastered.


• Confirmation of mastering of one or more axes has failed.

Fig. 9-7: Monitoring of tool orientation

1 Monitored TCP (tool orientation frame)


2 Monitored axis (Z axis)
3 WORLD coordinate system
4 Reference coordinate system (rotates about Rx, Ry and Rz relative
to WORLD)
5 Reference vector (Z axis of the reference coordinate system)
6 Deviation angle
7 Permitted deviation exceeded

166/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
Parameter

Parameter Description
Monitored TCP Selection of the TCP whose orientation is to be
monitored (tool orientation frame)
The robot flange and all TCPs created in the
tool configuration editor or in the scene editor
for the tool used are available for selection.
The monitored TCP that is configured is jointly
used by all instances of the Tool Orientation
Monitoring Monitoring Block in the safety con-
figuration. If the monitored TCP that is config-
ured is edited, it is changed for all instances of
the Tool Orientation Monitoring Monitoring
Block.
Note: As soon as a TCP is configured as a
monitored TCP, the tool and the TCP can no
longer be deleted. To edit the TCP data, a
Safety Commissioning Engineer must be log-
ged on.
Reference Vector Reference vector with fixed orientation relative
(relative to World) to the WORLD coordinate system

• Rx
Rotation about the X axis of the WORLD
coordinate system
• Ry
Rotation about the Y axis of the WORLD
coordinate system
• Rz
Rotation about the Z axis of the WORLD
coordinate system
The orientation can be entered manually or
taught.
Allowed Deviation Permissible deviation relative to the reference
vector
The specified angle defines a monitoring cone.
The Z axis of the monitored TCP may move
within this cone.

WARNING
Risk of injury due to moving carrier kinematic system during moni-
toring of the tool orientation
If the monitored kinematic system is fastened to a carrier kinematic sys-
tem (e.g. mobile platform, linear unit), it must be taken into considera-
tion that the orientation of the reference vector is relative to the coordi-
nate system of the carrier kinematic system. This means that the refer-
ence orientation – for example, in the case of a change in inclination of
the carrier kinematic system – is moved along to a ramp.
• The carrier kinematic system must come to a standstill during moni-
toring and must not move.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 167/230


Safety configuration iiQKA.OS 1.2

9.21 Monitoring of forces and axis torques

Forces and axis torques can only be monitored on robots equipped with
position and joint torque sensors.
The accuracy of the monitoring of forces and axis torques depends on the
dynamics of the robot motion. If these monitoring functions are triggered
incorrectly, it is advisable to reduce the dynamics of the robot motion in
programs. This can be achieved by reducing the parameters “Velocity”
and “Acceleration” of the Motion group commands.
Further information about reducing the dynamics of the robot motion in
programs can be found in the help function under “Programming”.

If the permissible forces or torques are continuously exceeded due to


jamming, the robot can be retracted by switching to CRR mode.

WARNING
Risk of injury due to incorrectly configured workpiece pick-up
How workpiece load data affect the load-dependent Monitoring Blocks
Collision and Maximum TCP Force depends on how the workpiece is
picked up.
• The pick-up point of the workpiece and the resulting center of mass
must match the pick-up point and center of mass configured for the
workpiece in the payload configuration.

9.21.1 Monitoring Block “Collision”

Description

The Monitoring Block Collision can be used to monitor the external axis
torques of all axes of a kinematic system.
The Monitoring Block is violated in the following cases:
• The external torque exceeds the configured limit on at least one axis
of the monitored kinematic system.
The Monitoring Block becomes invalid in the following cases:
• Confirmation of the calibration of one or more joint torque sensors has
failed.

Parameter

Parameter Description
External Torque Limit Maximum external axis torque
The external axis torque is defined as that part of the torque on an axis
which is generated by the forces/torques occurring as the robot (and/or
the tools) interact(s) with its environment.
The external axis torque is not measured directly but is rather calculated
using the dynamic robot model. The accuracy of the calculated values de-
pends, among other things, on the dynamics of the robot motion and of
the interaction forces of the robot with its environment.

168/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
WARNING
Risk of injury due to incorrect use of the Monitoring Block “Colli-
sion”
The Monitoring Block Collision serves exclusively to reduce the risk of
transient collisions. A transient collision is the momentary impact of the
robot with an obstacle, e.g. if the obstacle can retract after the collision.
• Do not use the Monitoring Block to reduce pinching and crushing
hazards.
• Avoid pinching and crushing hazards through other measures, e.g.:
‒ Appropriate design of the robotic cell
‒ Cartesian or axis-specific workspace/protected space monitoring
functions
‒ Maximum TCP force monitoring
‒ Tool orientation monitoring

WARNING
Risk of injury due to errors in the workpiece load data
The Monitoring Block Collision does not automatically allow for possible
errors in the load data of the workpiece. Errors in the load data lead to
incorrectly determined external axis torques. Severe injuries or damage
to property may result.
• Configure the lowest possible values for the maximum external axis
torques for collision detection.
In this way, significant deviations in the load data are interpreted as
a collision and cause a violation of the Monitoring Block.

WARNING
Risk of injury due to loss of workpiece during collision monitoring
If workpieces that have been picked up are inadvertently released and
fall off while collision monitoring is active, this results in an error in de-
termining the external axis torques. Severe injuries or damage to prop-
erty may result.
• If the Monitoring Block Collision is used, test the gripper with the
workpiece in the application. It must be ensured that the workpiece
cannot be released, fall off or break during collision monitoring.

WARNING
Risk of injury due to non-reduced velocity during collision monitor-
ing
If violation of the Monitoring Block Collision triggers a safety stop in a
Safety Rule, the interaction forces may increase due to the stopping dis-
tance of the robot. A reduction of the velocity compensates for the pos-
sible increase of the interaction forces.
• Only use the Monitoring Block Collision at reduced velocity.
• To reduce the velocity using safe technology, the Monitoring Block
Collision must be combined with one of the following Monitoring
Blocks:
‒ Maximum Cartesian Velocity
‒ Maximum Axis Velocity

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 169/230


Safety configuration iiQKA.OS 1.2

WARNING
Risk of injury due to moving carrier kinematic system during colli-
sion monitoring
If the monitored kinematic system is fastened to a carrier kinematic sys-
tem (e.g. mobile platform, linear unit), the following applies:
• The carrier kinematic system must come to a standstill during moni-
toring and must not move.
The safety integrity of the Monitoring Block Collision is not assured
when the carrier kinematic system is moving.

WARNING
Risk of injury due to deviation from the installation position
If the monitored kinematic system is fastened to a carrier kinematic sys-
tem (e.g. mobile platform, linear unit), the following applies:
• The installation position of the monitored kinematic system must not
deviate from the configured installation position.
A deviation is given, for example, if the “floor” installation position is
configured, but the mobile platform moves onto a ramp and is thus
in an inclined position.
The safety integrity of the Monitoring Block Collision is otherwise not
assured.

9.21.2 Monitoring Block “Maximum TCP Force”

Description

The Monitoring Block Maximum TCP Force can be used to monitor the
external force acting on the tool or the robot flange of a kinematic system
(on a point within the configured force interaction area).
The force interaction area for a tool can be configured in the scene editor.
Further information about tool management and the force interaction
area can be found in the help function under “3D scene”:

The Monitoring Block is violated in the following cases:


• The external force acting on the tool or the robot flange of the moni-
tored kinematic system exceeds the configured limit.
The Monitoring Block becomes invalid in the following cases:
• Confirmation of the calibration of one or more joint torque sensors has
failed.

Parameter

Parameter Description
Force Interaction Open in Scene
Area
The link can be used to open the configuration
of the force interaction area in the scene.
Max TCP force Maximum external force on the TCP
The force interaction area is defined as a sphere that contains all the
points of a safety-oriented tool where expected external forces can occur.
It is used by the Monitoring Block Maximum TCP Force to determine the
safe external TCP forces.

170/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

The size of the force interaction area affects the accuracy of the TCP

Safety configuration
force calculation in robot poses near singularities. The more accurately the
position of the force interaction point is defined (i.e. the smaller the radius
of the force interaction area is configured), the better the Monitoring Block
Maximum TCP Force can be used near singularities.
Furthermore, the accuracy of the TCP force calculation depends on the
dynamics of the robot motion and of the interaction forces of the robot
with its environment.
WARNING
Risk of injury due to incorrect configuration of the force interaction
area
Incorrect configuration of the force interaction area may result in a loss
of the safety integrity when using the Monitoring Block Maximum TCP
Force.
• Select the interaction area so that all expected forces acting on the
tool lie within the configured area.
• If the TCP force monitoring is active, no forces may be applied out-
side the configured area, e.g. by pulling or pushing the robot struc-
ture.

WARNING
Risk of injury due to incorrectly configured mass of the heaviest
workpiece
Incorrect configuration of the mass of the heaviest workpiece may result
in a loss of the safety integrity when using the Monitoring Block Maxi-
mum TCP Force.
• The configuration must be verified when approving the safety config-
uration (safety acceptance).
(>>> 9.23.6.1 "Mass of the heaviest workpiece" Page 188)

WARNING
Risk of injury due to loss of workpiece during monitoring of the
maximum TCP force
If workpieces that have been picked up are inadvertently released and
fall off while TCP force monitoring is active, this results in an error in
determining the external force on the TCP. Severe injuries or damage to
property may result.
• If the Monitoring Block Maximum TCP Force is used, test the grip-
per with the workpiece in the application. It must be ensured that
the workpiece cannot be released, fall off or break during TCP force
monitoring.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 171/230


Safety configuration iiQKA.OS 1.2

WARNING
Risk of injury due to non-reduced velocity during monitoring of the
maximum TCP force
If violation of the Monitoring Block Maximum TCP Force triggers a
safety stop in a Safety Rule, the interaction forces may increase due to
the stopping distance of the robot. A reduction of the velocity compen-
sates for the possible increase of the interaction forces.
• Only use the Monitoring Block Maximum TCP Force at reduced ve-
locity.
• To reduce the velocity using safe technology, the Monitoring Block
Maximum TCP Force must be combined with one of the following
Monitoring Blocks:
‒ Maximum Cartesian Velocity
‒ Maximum Axis Velocity

WARNING
Risk of injury due to moving carrier kinematic system during moni-
toring of the maximum TCP force
If the monitored kinematic system is fastened to a carrier kinematic sys-
tem (e.g. mobile platform, linear unit), the following applies:
• The carrier kinematic system must come to a standstill during moni-
toring and must not move.
The safety integrity of the Monitoring Block Maximum TCP Force is not
assured when the carrier kinematic system is moving.

WARNING
Risk of injury due to deviation from the installation position
If the monitored kinematic system is fastened to a carrier kinematic sys-
tem (e.g. mobile platform, linear unit), the following applies:
• The installation position of the monitored kinematic system must not
deviate from the configured installation position.
A deviation is given, for example, if the “floor” installation position is
configured, but the mobile platform moves onto a ramp and is thus
in an inclined position.
The safety integrity of the Monitoring Block Maximum TCP Force is
otherwise not assured.

9.22 Monitoring Block “Timer Expired”

Description

The Monitoring Block Timer Expired can be used to delay triggering of


the reaction of a Safety Rule by a certain time.
• The Monitoring Block is violated if the timer has expired.
• The timer does not start running until all other Monitoring Blocks of
the Safety Rule have been violated.
• If a specific instance of the Monitoring Block is used in different Safety
Rules, the timer starts to run from the first activation.

172/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
Parameter Description
Timer Expired Delay time
Each delay is a multiple of 12 ms. In other words, each delay
is rounded up to the next multiple of 12, e.g.:

• A setting of 0 ms results in a delay of 12 ms


• A setting of 18 ms results in a delay of 24 ms

Example

The application requires that the robot can still be moved in automatic
mode for a limited time, e.g. 2 hours, if mastering is not confirmed. Once
this time has elapsed, a safety stop 1 (path-maintaining) is triggered.
Safety Rule
Monitoring Block 1 Monitoring Block 2 Monitoring Block 3 Reaction
Automatic Mode Mastering Not Ap- Timer Expired Stop 1 on Path
proved

9.23 Safety acceptance

Description

The system must not be put into operation until the safety acceptance
procedure has been completed successfully. Checklists must be used to
check and demonstrate that all monitoring functions are correctly config-
ured and work correctly.
Safety acceptance must be carried out in the following cases:
• For initial start-up and recommissioning of the industrial robot
If the preinstalled safety configuration is adopted without any changes,
it is sufficient to check its suitability on the basis of a risk assessment.
• After a change to the industrial robot
• After exchanging the robot controller
It is sufficient to check whether the activation ID of the loaded safety
configuration matches the activation ID of the desired safety configura-
tion.
• After a change to the safety configuration/activation ID
Any modification of the activation ID requires a complete check of
all configuration parameters. It is not sufficient to check the modified
parameters only.

• After a software update, e.g. of the system software


Safety acceptance after a software update is only necessary if the ac-
tivation ID changes as a result of the update.

Checklists

The safety acceptance procedure can be carried out and documented us-
ing the following checklists or using your own checklists.
• The items in the checklist must be completed fully and confirmed in
writing.
• The checklists confirmed in writing are to be kept as documentary evi-
dence.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 173/230


Safety configuration iiQKA.OS 1.2

9.23.1 Basic properties of the safety configuration

No. Task Yes Not relevant


1 Operator safety: is all operator safety equipment configured,
properly connected and tested for correct function?
2 Operator safety: a stop is triggered if AUT mode is active
and the operator safety (e.g. safety gate) is open.
3 Operator safety: is a manual acknowledgement function
present and is it activated to prevent resumption of automat-
ic operation by closing the operator safety alone?
4 Brake test: is a mandatory cyclical brake test planned and
configured?
5 Enabling on teach pendant: have all enabling devices that
were configured in the Monitoring Block Enabling Inactive
been properly connected and tested for correct function?
6 Enabling on hand guiding device: have all enabling devices
that were configured in the Monitoring Block Manual Guid-
ance Inactive been properly connected and tested for cor-
rect function?
7 Local EMERGENCY STOP: are all local EMERGENCY
STOP devices configured, properly connected and tested for
correct function?
8 External EMERGENCY STOP: are all external
EMERGENCY STOP devices configured, properly connected
and tested for correct function?
9 Local and external EMERGENCY STOP: are the local and
external EMERGENCY STOP devices each configured as an
individual Monitoring Block in a Safety Rule?
10 Safety stop: is all safety stop equipment configured, properly
connected and tested for correct function?
11 If position-specific Monitoring Blocks are used: is the limited
safety integrity of the position-specific Monitoring Blocks tak-
en into consideration if mastering has not been approved?
Note: Initiation of the safe state if mastering has not been
confirmed can be configured using the Monitoring Block
Mastering Not Approved.
12 If position-specific Monitoring Blocks are used: has the mas-
tering of all axis positions been successfully confirmed?
13 Velocity monitoring: have all necessary velocity monitoring
tests been configured and tested?
14 Manual guidance: has it been configured in such a way that
appropriate velocity monitoring is active for manual guidance
in every operating mode?
15 Workspace monitoring: have all required workspace monitor-
ing functions been configured and tested?
16 Cartesian workspace/protected space monitoring: has it been
taken into consideration that the system does not monitor
the entire structure of the robot, tool and workpiece for
space violation, but only the safety spheres on the robot and
on the tool?
17 Collision detection: have all required HRC functionalities
been configured and tested?

174/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
No. Task Yes Not relevant
18 Collision detection: has it been taken into consideration that
the Monitoring Block Collision is only approved for the re-
duction of hazards associated with transient contact (free
collisions), but not for crushing situations?
19 Collision detection: has it been configured in such a way
that velocity monitoring is always active when the Monitoring
Block Collision is active?
20 TCP force monitoring: has it been configured in such a way
that velocity monitoring is always active when the Monitoring
Block Maximum TCP Force is active?
21 TCP force monitoring: has a force interaction area been con-
figured?
22 If axis torque-specific Monitoring Blocks are used: is the limi-
ted safety integrity of the axis torque-specific Monitoring
Blocks taken into consideration when mastering and/or joint
torque sensor calibration has not been confirmed?
Note: Initiation of the safe state when mastering and/or joint
torque sensor calibration has not been confirmed can be
configured using the Monitoring Block Mastering Not Ap-
proved and/or JTS Adjustment Not Approved.
23 If axis torque-specific Monitoring Blocks are used: have the
mastering of all axis positions and the calibration of all joint
torque sensors been successfully confirmed?
24 Safety Rules: has it been taken into consideration that the
safe state of the Monitoring Blocks is the “violated” state
(state “0”)?
Note: In the event of an error, a Monitoring Block switches
to the safe state.
25 Safety Rules: in the configuration of the output signals for
the safety reaction, has it been taken into consideration that
an output is LOW (state “0”) in the safe state?
26 If the monitored kinematic system is fastened to a carrier
kinematic system (e.g. mobile platform, linear unit):
has it been taken into consideration that in the case of the
Monitoring Block Cartesian Monitoring Space the safety
monitoring is based on a fixed position of the monitoring
space relative to the carrier kinematic system? For this rea-
son, the monitoring space is also moved in the event of a
change in position or inclination of the carrier kinematic sys-
tem.
27 If the monitored kinematic system is fastened to a carrier
kinematic system (e.g. mobile platform, linear unit):
has it been taken into consideration that the Monitoring
Block Maximum Cartesian Velocity does not monitor the
absolute velocity in space, but the velocity of the monitored
kinematic system relative to the carrier kinematic system?
28 If the monitored kinematic system is fastened to a carrier
kinematic system (e.g. mobile platform, linear unit):
has the fact been taken into consideration that, with the
Tool Orientation Monitoring Monitoring Block, the
reference orientation is defined relative to the carrier kine-
matic system and moves with the carrier kinematic system?

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 175/230


Safety configuration iiQKA.OS 1.2

No. Task Yes Not relevant


29 If the monitored kinematic system is fastened to a carrier
kinematic system (e.g. mobile platform, linear unit):
has it been taken into consideration that the safety integrity
of the Monitoring Blocks Collision and Maximum TCP
Force is only assured as long as the carrier kinematic sys-
tem is stationary?

9.23.2 Safety-oriented tools

9.23.2.1 Geometry data of the tool

If one of the following Monitoring Blocks is used in the safety configura-


tion, it is necessary to check that the geometric tool data have been con-
figured correctly:
• Maximum Cartesian Velocity
Only if the safety spheres on the tool are configured as a structure to
be monitored.
• Cartesian Monitoring Space
Only if the safety spheres on the tool are configured as a structure to
be monitored.
The geometric tool data can be tested by deliberately violating one of the
configured monitoring spaces with each tool sphere and checking the re-
action. If no space monitoring functions are used, only the position of the
sphere center points is relevant.
The configured Cartesian velocity limit can be tested by deliberately ex-
ceeding this velocity for each tool sphere and checking the reaction.

Precondition

• Mastering of all axis positions has been successfully confirmed.

No. Task Yes Not relevant


1 Have the radius and position of all tool spheres been cor-
rectly configured and checked?

Configuration
Tool name: ______________
Tool sphere data:

• Sphere name: _______, X: _______, Y: _______, Z: _______, Radius: _______


• Sphere name: _______, X: _______, Y: _______, Z: _______, Radius: _______
• Sphere name: _______, X: _______, Y: _______, Z: _______, Radius: _______
• Sphere name: _______, X: _______, Y: _______, Z: _______, Radius: _______
• Sphere name: _______, X: _______, Y: _______, Z: _______, Radius: _______
• Sphere name: _______, X: _______, Y: _______, Z: _______, Radius: _______

9.23.2.2 Tool load data

Configuration of the tool load data has an effect on the monitoring behav-
ior of the following Monitoring Blocks:
• Collision

176/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
• Maximum TCP Force
Explicit verification of the tool load data is not required, as it is implicitly
included in the test procedures of the aforementioned Monitoring Blocks.

9.23.2.3 Tool orientation

A TCP selected as a tool orientation frame affects the monitoring behavior


of the Monitoring Block Tool Orientation Monitoring. It is not necessary
to explicitly check the configuration of the tool orientation, as it is implicitly
contained in the test procedures of the Monitoring Block Tool Orientation
Monitoring.

9.23.3 Installation position and orientation of the robot

The installation position and orientation of the robot have an effect on the
monitoring behavior of the following Monitoring Blocks:
• Cartesian Monitoring Space
• Tool Orientation Monitoring
• Collision
• Maximum TCP Force
Explicit verification of the installation position and orientation of the robot
is not required, as it is implicitly included in the test procedures of the
aforementioned Monitoring Blocks.

9.23.4 Safety Rules

Description

A Safety Rule can be tested by violating all but one of the contained Mon-
itoring Blocks simultaneously. The remaining Monitoring Block can then be
tested separately in a targeted manner.
Each Safety Rule must then be tested to determine whether the config-
ured safety reaction is triggered. If the reaction is to switch off an output,
the test must also ensure that the output is correctly connected.
Safety Rules with the Monitoring Block Maximum Cartesian Velocity and
a Stop or Brake as a reaction can be tested as follows:
1. Move the robot at a velocity exceeding the limit value of the Monitor-
ing Block involved Maximum Cartesian Velocity.
2. Once all other Monitoring Blocks of the Safety Rule have been viola-
ted, reduce the velocity to a value below this limit value.
• Stop as reaction: Stop until complete standstill
• Brake as reaction: No stop until complete standstill

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 177/230


Safety configuration iiQKA.OS 1.2

No. Task Yes Not relevant


1 Monitoring Block 1 has been tested successfully.
Precondition: Monitoring Blocks 2, 3, 4, 5 and 6 (if config-
ured) are violated.
Monitoring Block 1: ________________________
2 Monitoring Block 2 has been tested successfully.
Precondition: Monitoring Blocks 1, 3, 4, 5 and 6 (if config-
ured) are violated.
Monitoring Block 2: ________________________
3 Monitoring Block 3 has been tested successfully.
Precondition: Monitoring Blocks 1, 2, 4, 5 and 6 (if config-
ured) are violated.
Monitoring Block 3: ________________________
4 Monitoring Block 4 has been tested successfully.
Precondition: Monitoring Blocks 1, 2, 3, 5 and 6 (if config-
ured) are violated.
Monitoring Block 4: ________________________
5 Monitoring Block 5 has been tested successfully.
Precondition: Monitoring Blocks 1, 2, 3, 4 and 6 (if config-
ured) are violated.
Monitoring Block 5: ________________________
6 Monitoring Block 6 has been tested successfully.
Precondition: Monitoring Blocks 1, 2, 3, 4 and 5 (if config-
ured) are violated.
Monitoring Block 6: ________________________

Configuration
Safety Rule Set name: ______________
Safety Rule name: ______________
Safety Rule ID: ______________

9.23.5 Monitoring Blocks

Checking the Monitoring Blocks within a Safety Rule necessitates check-


ing the violation status of the Monitoring Blocks. The violation status can
be checked in 2 different ways:
• Via the status visualization of the Monitoring Block
(>>> 9.3 "Status of the current safety configuration" Page 139)
• Check whether the configured safety reaction of the Safety Rule is
triggered. Precondition:
‒ All other Monitoring Blocks within the Safety Rule are violated.

178/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

9.23.5.1 Monitoring Block “Enabling Inactive”

Safety configuration
No. Activity Yes Not relevant
1 The Monitoring Block is violated if all enabling switches of
enabling device 1 have been released.
2 The Monitoring Block is violated if any enabling switch of en-
abling device 1 is fully pressed (panic position).
3 The Monitoring Block is violated if all enabling switches of
enabling device 2 have been released.
4 The Monitoring Block is violated if any enabling switch of en-
abling device 2 is fully pressed (panic position).
5 The Monitoring Block is violated if all enabling switches of
enabling device 3 have been released.
6 The Monitoring Block is violated if any enabling switch of en-
abling device 3 is fully pressed (panic position).

Configuration
Signal for the enabling switch(es) of enabling device 1: _______________
Signal for the panic switch(es) of enabling device 1: _______________
Signal for the enabling switch(es) of enabling device 2: _______________
Signal for the panic switch(es) of enabling device 2: _______________
Signal for the enabling switch(es) of enabling device 3: _______________
Signal for the panic switch(es) of enabling device 3: _______________

9.23.5.2 Monitoring Block “Manual Guidance Inactive”

No. Activity Yes Not relevant


1 The Monitoring Block is violated if all enabling switches of
hand guiding device 1 have been released.
2 The Monitoring Block is violated if any enabling switch of
hand guiding device 1 is fully pressed (panic position).
3 The Monitoring Block is violated if all enabling switches of
hand guiding device 2 have been released.
4 The Monitoring Block is violated if any enabling switch of
hand guiding device 2 is fully pressed (panic position).
5 The Monitoring Block is violated if all enabling switches of
hand guiding device 3 have been released.
6 The Monitoring Block is violated if any enabling switch of
hand guiding device 3 is fully pressed (panic position).

Configuration
Signal for the enabling switch(es) of hand guiding device 1: _____________
Signal for the panic switch(es) of hand guiding device 1: ______________
Signal for the enabling switch(es) of hand guiding device 2: _____________
Signal for the panic switch(es) of hand guiding device 2: _____________
Signal for the enabling switch(es) of hand guiding device 3: _____________
Signal for the panic switch(es) of hand guiding device 3: _____________

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 179/230


iiQKA.OS 1.2

9.23.5.3 Monitoring Block “Manual Guidance Active”


Safety configuration

No. Activity Yes Not relevant


1 The Monitoring Block is violated if any enabling switch of
hand guiding device 1 is pressed.
2 The Monitoring Block is violated if any enabling switch of
hand guiding device 2 is pressed.
3 The Monitoring Block is violated if any enabling switch of
hand guiding device 3 is pressed.

9.23.5.4 Monitoring Block “Reduced Speed Mode”

No. Activity Yes


1 The Monitoring Block is violated in T1.
2 The Monitoring Block is violated in CRR.

9.23.5.5 Monitoring Block “High Speed Mode”

No. Activity Yes


1 The Monitoring Block is violated in AUT.

9.23.5.6 Monitoring Block “Test Mode”

No. Activity Yes


1 The Monitoring Block is violated in T1.
2 The Monitoring Block is violated in CRR.

9.23.5.7 Monitoring Block “Automatic Mode”

No. Activity Yes


1 The Monitoring Block is violated in AUT.

9.23.5.8 Monitoring Block “Safety Stop”

No. Activity Yes


1 The Monitoring Block is violated if a safety stop is active (e.g. if an
EMERGENCY STOP device is pressed).

9.23.5.9 Monitoring Block “Input Signal”

No. Activity Yes


1 The Monitoring Block is violated if the input signal is LOW (state “0”).

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Input signal: ______________

180/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

9.23.5.10 Monitoring Block “Input Signal with Acknowledgement”

Safety configuration
No. Activity Yes
1 The Monitoring Block is violated if the input signal is LOW (state “0”) or
if the input signal is HIGH (state “1”) but has not yet been acknowl-
edged.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Input signal: ______________
Acknowledgement signal: ______________

9.23.5.11 Monitoring Block “Mastering Not Approved”

No. Task Yes


1 The Monitoring Block is violated if the mastering of one or more axes of
the monitored kinematic system is not confirmed.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________

9.23.5.12 Monitoring Block “JTS Adjustment Not Approved”

No. Task Yes


1 The Monitoring Block is violated if the calibration of one or more joint
torque sensors of the monitored kinematic system is not confirmed.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________

9.23.5.13 Monitoring Block “Maximum Axis Velocity”

The Monitoring Block can be tested by moving the monitored axis at a ve-
locity of approx. 10% above the configured velocity limit.
No. Task Yes
1 The Monitoring Block is violated if the maximum permissible axis velocity
is exceeded.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Monitored axis: ______________
Maximum velocity: ______________

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 181/230


iiQKA.OS 1.2

9.23.5.14 Monitoring Block “Axis Work Range/Axis Protection Range”


Safety configuration

Precondition

• Mastering of all axis positions has been successfully confirmed.

No. Task Yes


1 The Monitoring Block is violated if the lower limit of the monitored axis
range is violated.
2 The Monitoring Block is violated if the upper limit of the monitored axis
range is violated.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Monitoring range type (work range or protection range): ______________
Monitored axis: ______________
Lower limit: ______________
Upper limit: ______________

9.23.5.15 Monitoring Block “Maximum Cartesian Velocity”

In order to test the configured velocity limit of the Monitoring Block, the
monitored kinematic system must be moved in such a way that the moni-
tored point that moves fastest is moved at a velocity of approx. 10%
above the configured limit value.
• If the safety reaction of the Safety Rule is a safety stop or a Brake,
this requires violation of another Monitoring Block of the Safety Rule,
as the controller would otherwise avoid violating the velocity limit.
• If the Safety Rule does not contain a second Monitoring Block, the ve-
locity limit can be checked by observing the automatic velocity limita-
tion of the controller. The controller reduces the programmed velocity
to a value below the velocity limit of the Monitoring Block.
It must also be checked whether the structure to be monitored is config-
ured correctly:
• If both structures (robot and tool) are monitored, the velocity monitor-
ing must be violated both by the monitoring points on the robot and by
the monitoring points on the tool.
• If only one of the two structures (robot or tool) is monitored, the veloc-
ity monitoring must be violated either by the monitoring points on the
robot or by the monitoring points on the tool.

Precondition

• Mastering of all axis positions has been successfully confirmed.

No. Task Yes Not relevant


1 The Monitoring Block is violated if the maximum Cartesian
velocity at the monitoring point that moves fastest is excee-
ded.
2 The Monitoring Block is violated if the velocity monitoring is
violated exclusively by monitoring points on the robot.

182/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
No. Task Yes Not relevant
3 The Monitoring Block is violated if the velocity monitoring is
violated exclusively by monitoring points on the tool.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Monitored structure: ______________
Maximum velocity: ______________

9.23.5.16 Monitoring Block “Cartesian Monitoring Space” (cuboid)

Description

It must be checked whether the orientation and size of the cuboid have
been correctly configured:
• In order to check the orientation, a first cuboid surface must be viola-
ted at 3 or more different points and an adjacent cuboid surface at 2
or more different points.
• In order to check the size, the other space surfaces must be violated
at 1 point in each case.
• In total, at least 9 points must be addressed.
It must also be checked whether the structure to be monitored is config-
ured correctly:
• If both structures (robot and tool) are monitored, the space monitoring
must be violated both by the safety spheres on the robot and by the
safety spheres on the tool.
• If only one of the two structures (robot or tool) is monitored, the space
monitoring must be violated either by the safety spheres on the robot
or by the safety spheres on the tool.

Precondition

• Mastering of all axis positions has been successfully confirmed.

No. Task Yes Not relevant


1 The correct configuration of the cuboid orientation has been
checked as described above. The Monitoring Block is viola-
ted every time a monitoring space is violated.
2 The correct configuration of the cuboid size has been
checked as described above. The Monitoring Block is viola-
ted every time a monitoring space is violated.
3 The Monitoring Block is violated if the space monitoring is
violated by the safety spheres on the robot.
4 The Monitoring Block is violated if the space monitoring is
violated by the safety spheres on the tool.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 183/230


Safety configuration iiQKA.OS 1.2

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Monitored structure: ______________
Monitoring space type (workspace or protected space): ______________
Cuboid parameters:

• Origin frame coordinates (relative to World):


‒ X: _________, Y: _________, Z: _________
‒ Rz: _________, Ry: _________, Rx: _________
• Dimensions:
‒ Length: _________, Width: _________, Height: _________

9.23.5.17 Monitoring Block “Cartesian Monitoring Space” (prism)

Description

It must be checked whether all corners, the Z coordinate and the orienta-
tion of the prism base and the height of the prism have been configured
correctly:
• In order to check the correct position of all corners, 2 different points
on each side surface of the prism must be violated. These 2 points
must differ in each case in the X or Y coordinate relative to the base
frame.
• In order to check the Z coordinate and the orientation of the prism
base, the monitoring function must be violated at 3 points of the prism
base in each case.
• In order to check the height of the prism, the monitoring function must
be violated at a point on the cover of the prism.
• In total, at least 4 + 2*(number of corners) points must be addressed.
It must also be checked whether the structure to be monitored is config-
ured correctly:
• If both structures (robot and tool) are monitored, the space monitoring
must be violated both by the safety spheres on the robot and by the
safety spheres on the tool.
• If only one of the two structures (robot or tool) is monitored, the space
monitoring must be violated either by the safety spheres on the robot
or by the safety spheres on the tool.

Precondition

• Mastering of all axis positions has been successfully confirmed.

No. Task Yes Not relevant


1 The correct configuration of the corners has been checked
as described above. The Monitoring Block is violated every
time a monitoring space is violated.
2 The correct configuration of the Z coordinate and the orien-
tation of the base have been checked as described above.
The Monitoring Block is violated every time a monitoring
space is violated.

184/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
No. Task Yes Not relevant
3 The correct configuration of the prism height has been
checked as described above. The Monitoring Block is viola-
ted every time a monitoring space is violated.
4 The Monitoring Block is violated if the space monitoring is
violated by the safety spheres on the robot.
5 The Monitoring Block is violated if the space monitoring is
violated by the safety spheres on the tool.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Monitored structure: ______________
Monitoring space type (workspace or protected space): ______________
Prism parameters:

• Origin frame coordinates (relative to World):


‒ X: _________, Y: _________, Z: _________
‒ Rz: _________, Ry: _________, Rx: _________
• Height: ______________
• Number of corners: ______________
• Coordinates of corners (relative to prism origin frame):
‒ Corner 1: X: _________, Y: _________
‒ Corner 2: X: _________, Y: _________
‒ Corner 3: X: _________, Y: _________
‒ Corner 4: X: _________, Y: _________
‒ Corner 5: X: _________, Y: _________
‒ Corner 6: X: _________, Y: _________
‒ Corner 7: X: _________, Y: _________
‒ Corner 8: X: _________, Y: _________
‒ Corner 9: X: _________, Y: _________
‒ Corner 10: X: _________, Y: _________
‒ Corner 11: X: _________, Y: _________
‒ Corner 12: X: _________, Y: _________
‒ Corner 13: X: _________, Y: _________
‒ Corner 14: X: _________, Y: _________
‒ Corner 15: X: _________, Y: _________
‒ Corner 16: X: _________, Y: _________
‒ Corner 17: X: _________, Y: _________
‒ Corner 18: X: _________, Y: _________
‒ Corner 19: X: _________, Y: _________
‒ Corner 20: X: _________, Y: _________

9.23.5.18 Monitoring Block “Tool Orientation Monitoring”

Description

In order to test the Monitoring Block, the permissible workspace (monitor-


ing cone) must be violated at 3 straight lines offset by approx. 120° to
one another. This ensures that the orientation of the reference vector, the

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 185/230


iiQKA.OS 1.2

permissible deviation angle and the tool orientation frame are correctly
Safety configuration

configured.

Fig. 9-8: Position of the straight lines on the monitoring cone

The orientation angles of the Z axis of the tool orientation frame (moni-
tored TCP) are defined using 3 straight lines situated on the edge of the
monitoring cone and offset at 120° to one another. These orientation an-
gles must be set in order to test the Monitoring Block Tool Orientation
Monitoring. The Monitoring Block must be violated if all 3 orientation an-
gles are exceeded.

Precondition

• Mastering of all axis positions has been successfully confirmed.

No. Task Yes


1 The correct configuration of the monitoring cone has been checked and
the configured reaction was triggered when the permissible deviation an-
gle for all 3 straight lines was exceeded.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Rotation of the reference vector (relative to WORLD):

• Rz: _________, Ry: _________, Rx: _________


Permissible workspace (deviation angle): ______________

9.23.5.19 Monitoring Block “Collision”

The Monitoring Block can be tested by applying forces to the robot at


standstill. The sensitivity of the collision detection function must be suita-
ble for the intended use or application.
The test must be repeated in 3 different robot positions. In each position,
several different directions of force application must be tested.

Precondition

• Calibration of all joint torque sensors has been successfully confirmed.


• Mastering of all axis positions has been successfully confirmed.

186/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Safety configuration
No. Task Yes
1 Robot position 1:
The Monitoring Block is violated if collision forces are exerted on the
monitored kinematic system. The test is successful for several different
directions in which the force is applied.
2 Robot position 2:
The Monitoring Block is violated if collision forces are exerted on the
monitored kinematic system. The test is successful for several different
directions in which the force is applied.
3 Robot position 3:
The Monitoring Block is violated if collision forces are exerted on the
monitored kinematic system. The test is successful for several different
directions in which the force is applied.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Maximum external axis torque: ______________

9.23.5.20 Monitoring Block “Maximum TCP Force”

In order to test the Monitoring Block, a suitable measuring instrument is


required, e.g. a spring balance.
During the test, it must be noted that the monitoring function automatically
takes into consideration possible errors in the workpiece load data. For
this reason, it is possible that the reaction will already be triggered at low-
er TCP forces. To avoid this, proceed as follows:
• Do not pick up a workpiece during the test.
• Apply the TCP force in the direction of gravity (i.e. downwards).

Precondition

• Calibration of all joint torque sensors has been successfully confirmed.


• Mastering of all axis positions has been successfully confirmed.

No. Task Yes Not relevant


1 The Monitoring Block is violated if the external force acting
on the TCP of the monitored kinematic system exceeds the
maximum permissible force.

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Maximum TCP force: ______________

9.23.5.21 Monitoring Block “Timer Expired”

No. Activity Yes


1 The Monitoring Block is violated if the configured delay time has expired.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 187/230


Safety configuration iiQKA.OS 1.2

Configuration
Monitoring Block name: ______________
Monitoring Block ID: ______________
Delay time: ______________

9.23.6 General safety-oriented parameters

9.23.6.1 Mass of the heaviest workpiece

If workpieces are picked up by a kinematic system in an application and,


at the same time, one of the following Monitoring Blocks is used in the
safety configuration, it is necessary to check whether the mass of the
heaviest workpiece is configured correctly:
• Collision
• Maximum TCP Force

No. Task Yes


1 Under Setup > Payload on the Workpiece tab, configure a workpiece
with a mass that is 10 g greater than the mass of the heaviest work-
piece configured in the safety settings.
Select the configured workpiece in the status bar and jog the robot with
the workpiece in Cartesian mode. A message must be displayed on the
smartPAD indicating that the load data of the workpiece used are invalid.
2 Under Setup > Payload on the Workpiece tab, configure a workpiece
with a mass that is 10 g less than the mass of the heaviest workpiece
configured in the safety settings.
Select the configured workpiece in the status bar and jog the robot with
the workpiece in Cartesian mode. No message may be displayed on the
smartPAD indicating that the load data of the workpiece used are invalid.

Configuration
Mass of the heaviest workpiece: ______________

188/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
10 Programming

10.1 Creating and managing programs

The system can contain multiple programs that can be opened, edited or
executed if required. The various programs are managed in the Feature
menu Program.

Fig. 10-1: Managing programs

These functions are available:


• Create a new program
• Manage existing programs in the OPEN PROGRAM dialog:
‒ Open an existing program
‒ Duplicate an existing program
‒ Delete an existing program

Recently opened programs are displayed directly in the program


menu and can be opened from there.

• In the Save dialog:


‒ Save the program currently open
‒ Save a copy of the current program under a new name

10.2 Node Palette: inserting nodes (program elements)

A program consists of multiple program elements or program lines, so-


called nodes. Nodes have a hierarchical structure and can be nested in
each other. New nodes are inserted into the program via the Node Pa-
lette.
It is advisable to start an application from a defined position. The com-
mand for addressing this position should be an Axis (PTP) motion that
is inserted into the new program as the first motion command.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 189/230


Programming iiQKA.OS 1.2

Fig. 10-2: Node Palette

• The node palette can be moved freely on the interface so that it does
not conceal any currently required content.
• The nodes in the pallet are divided into the categories BASIC and
ADVANCED.
• Press a node to insert it below the node selected in the program.
New nodes can be inserted as the last element below the current
node (Last child), or at the same hierarchy level behind the current
node (Sibling after).
The insertion position is indicated in the program tree structure.

• Alternatively, press a node and drag it to the desired position in the


program to place it there.
If a program line is marked in yellow after insertion, the hierarchy is
invalid or there are still entries missing in the command that are re-
quired to ensure that it is complete.

10.2.1 Basic nodes

10.2.1.1 Sequence

The Sequence node is used to structure the program, similar to files in a


folder system. The Sequence node only calls all child nodes one after the
other. Several nodes of the type Sequence can be nested in each other.
Each program contains a Sequence node named main at the highest lev-
el. This node can be renamed but not deleted.

10.2.1.2 Motion group

Description

The node can be used to program a motion group. A motion group


always consists of the node Motion group and one or more nodes of
type Move (motion).

190/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Parameters

The following parameters can be defined on the Parameters tab:


• Motion type: Motion type with which the motions of the group are car-
ried out
‒ Toolpath (Cartesian)
Cartesian motion in which the tool is moved along a defined path
‒ Axis (PTP)
Axis motion of the robot
• TCP: TCP with which the motions of the group are carried out
The TCP that is currently selected in the status bar is preselected by
default.
• Speed: Velocity at which the motions of the group are carried out
• Acceleration: Acceleration at which the motions of the group are car-
ried out
The parameters set here are automatically applied to all motions below
the Motion group node. Other values for velocity and acceleration can be
programmed for individual motions (node Move).
When teaching frames within a motion group, the parameters (TCP, ve-
locity and acceleration) set in the Motion group node are used and not
the TCP selected in the status bar.

It is advisable to start an application from a defined position. The com-


mand for addressing this position should be an Axis (PTP) motion that
is inserted into the new program as the first motion command.

CAUTION
Risk of injury and damage to property due to subsequent modifica-
tion of the payload
If the payload (and thus also the TCP) is modified after motion seg-
ments have already been inserted, all motion segments use the new
payload. This results in a different robot pose and the robot may exe-
cute unexpected motions. Injuries or damage to property may result.
• Always test new or modified programs in operating mode T1 first.

Sensitivity

Settings to move the robot under impedance control can be made on the
Sensitivity tab.
(>>> 10.7 "Programming of a compliant robot" Page 209)

Triggers

A trigger can be programmed on the Triggers tab.


(>>> 10.8 "Trigger programming" Page 216)

Error executing a Motion group

When executing a Motion group, it is possible that the program will be


stopped with the following error message: Motion command execution
did not succeed. State: {motionState}.
To remedy this, it is advisable to check the programming as follows:
• Check whether all end frames in the affected Motion group are ac-
cessible, for example by manually addressing the frames with Move to

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 191/230


Programming iiQKA.OS 1.2

• Check whether the frame coordinates are located in the workspace of


the robot, for example via the scene
• Check whether the correct payload has been selected
• Check whether the correct base has been selected
If the Toolpath (Cartesian) motion type has been selected:
• Check whether adding one or more intermediate frames changes the
behavior
• Check whether the motion type can be changed to Axis (PTP) (it is
possible that the path will change!)

10.2.1.3 Move (motion)

Description

The Move node is always part of a motion group (Motion group). The
node can be used to program the following motions:
• Absolute motion
By default, absolute motion is preselected.
• Relative motion

Absolute Motion

If absolute motion is selected, the Move node defines the motion type and
the target frame of the motion:
• The motion type must conform to the motion type of the motion group
(Motion group node):
‒ A Cartesian motion group can contain linear, circular and spline
motions.
‒ An axis-specific motion group can only contain Axis (PTP) motions.
• Target frames are the coordinates of the target position relative to the
TCP. The frame coordinates can be entered manually or taught. When
adding a new Move node, an unshared frame is automatically created.
The functional principle of frames is described in the 3D scene.
• Unshared frames can subsequently be converted to project frames
and vice versa. To do so, change the selection in Target Type. Project
frames are known in the entire project on the robot controller and can
be used in every program.
NOTICE
Unexpected robot motion due to retaught frames
If a frame is retaught, the change affects all motions that move to
this frame.
‒ If Move nodes with frames that have already been taught are
copied in order to use them for new motions, make sure to cre-
ate and teach new frames in the respective segments.
‒ To create a new frame, select Select or add frame and then
New project frame or New unshared frame in the Frame
menu.
Do not press the Touch up button. This button does not create
a new frame, but overwrites the existing frame with new coordi-
nates. If it is a global frame, it is modified in all programs that
use it.

192/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
• The link Open in scene can be used to display the current frame in
the 3D scene in order to be able to visualize its position better.
In the scene, press the program name in the status bar at the top to
return to the program.

Relative Motion

If relative motion is selected, the Move node defines the motion type and
the target or rotational position of the motion:
• The motion type must conform to the motion type of the motion group
(Motion group node):
‒ A Cartesian motion group can contain linear, circular and spline
motions.
‒ An axis-specific motion group can only contain Axis (PTP) motions.
• The reference determines the direction of the relative motion. By de-
fault, the reference is set to the TCP of the Motion group. Alternative-
ly, the reference can be set to the WORLD coordinate system.
• The Position offset parameter can be used to specify the relative mo-
tion from the current position of the robot. Depending on this position
and the respective reference coordinate system, the target position of
the relative motion is obtained.
• The Angle offset parameter can be used to specify a relative rotation
about each axis. This rotation is carried out relative to the previous ro-
tational position and depends on the respective reference coordinate
system.

Move type

• Axis (PTP):
The robot guides the TCP (Tool Center Point) along the fastest path to
the target point. Since the motions of all robot axes to the target point
are simultaneous and rotational, the resulting path is a curved path.
The axis (joint) motion is a fast positioning motion. The exact path of
the motion cannot be predicted and depends on the override, velocity
and acceleration, but can always be reproduced identically as long as
these general conditions are not altered.
• Linear:
The robot guides the TCP (Tool Center Point) at a defined velocity
and acceleration along a straight line to the target point.
• Circle:
The robot guides the TCP (Tool Center Point) at a defined velocity
and acceleration along a circular segment to the end point. In order to
define the radius of the circle segment, a circular segment requires
two end points: the end point of the motion (Target frame 2) and an
auxiliary point (Target frame 1) situated on the circular segment that
is passed through on the way to the end point.
• Spline:
Spline is a motion type that is particularly suitable for complex, curved
paths. The path is defined by several commands of type Move whose
end frames are located on the path. The desired path can thus be
generated easily. The path always remains the same, irrespective of
the override setting, velocity or acceleration. The robot moves as fast
as possible within the constraints of the programmed velocity, i.e. as
fast as its physical limits will allow.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 193/230


iiQKA.OS 1.2

10.2.1.4 Loop
Programming

A loop repeats all subordinate nodes in the specified order until a certain
condition is met.
Possible conditions for exiting the loop are:
• Count
The loop is executed exactly n times.
• Timeout
The loop is executed for n milliseconds.
• Infinite
The loop is executed for an infinite duration and not exited.
This is suitable if the break condition is to be programmed within the
loop.
• While
The loop is executed as long as a condition is met, e.g. as long as a
specific signal is present.
• Until
The loop is executed as long as a condition is met, e.g. until a
specific signal is present.
Conditions for exiting the loop cannot be nested or linked.

10.2.1.5 Wait

With this node, the program pauses until a condition is met.


Conditions for resuming the program can be the following:
• While
The program is paused as long as a condition is met, e.g. as long as
a signal is present.
• Until
The program is paused until a condition is met, e.g. until a signal is
present or a return value takes on a specific state.
• Millis
The program is paused for n milliseconds.
Conditions cannot be nested or linked.

10.2.1.6 Set

This node is used to assign values by means of expressions. It is possi-


ble, for example, to set the values of signals.
Further information about signals can be found in the help function un-
der “I/O configuration”.

10.2.1.7 Grip & Release

The two nodes of type Capability are only available if a gripper is selec-
ted from a preinstalled toolbox. Both nodes open or close the gripper on
the robot flange. The gripper must be configured for this.
Further information can be found in the help function under “Payload
configuration”.

194/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Fig. 10-3: Grip / Release

• For every Grip / Release command, a set of Capabilities must be se-


lected with which it is to be executed. The tool that executes the com-
mands is determined automatically by this set.
• To simplify program creation, the commands can be tested using the
buttons in the tool bar. For this, the robot must be in T1 mode, no pro-
gram may be executed and the enabling switch must be pressed.
• If several capabilities are configured, e.g. for a Custom Dual Gripper,
the capability to be operated can be assigned to the buttons in the
toolbar by means of quick access.
‒ Pressing briefly if not yet assigned: Assign capability
‒ Pressing briefly if already assigned: Operate assigned capability
‒ Pressing longer: Reassign capability
• Depending on how the set of Capabilities is configured, the command
returns a return value. This return value can be used in another fol-
lowing node, e.g. as a break condition for a loop or with the Wait
command.
This can be used, for example, to ensure that the gripper is complete-
ly open or closed before the program is resumed.

10.2.1.8 GetState

This node of type Capability is only available if a gripper is selected from


a preinstalled toolbox. This node can be used to query the status of the
gripper. The answer, e.g. Gripped, is saved in a variable. This variable
can be used in subsequent nodes, e.g. If nodes. The variable can be in-
serted in the selection menu of the Expression Editor under Library >
Variables > Return Variables.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 195/230


Programming iiQKA.OS 1.2

Fig. 10-4: GetState

10.2.1.9 If/else – simple branch

This node can be used to program the simplest form of a branch: If a


specific condition is fulfilled, then all nodes under the If node are execu-
ted. Otherwise, they are skipped and the program is resumed at the next
node.

Fig. 10-5: If/else

• Conditions which are mutually exclusive, i.e. no more than one of


which is to be executed in any case, are programmed in an If/else
group.
• An If node can easily be converted to an If/else group by adding an
Else If or an Else node in the parameter view.

196/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
10.2.2 Advanced nodes

10.2.2.1 If/else group – advanced branch

Advanced branches can be programmed using If/else group. It is possi-


ble to formulate multiple conditions of which at most one or exactly one is
executed.

Fig. 10-6: If/else group

• Every If/else group begins with an If node.


This condition is checked first. If it is met, the rest of the If/else group
will be skipped and the program will be resumed after the If/else
group.
• Multiple Else If nodes can be inserted after the first If node.
These conditions are checked one after the other if the previous con-
dition is not met. If an Else If condition is met, the subordinate branch
is executed and the remainder of the If/else group is skipped.
• If one of the branches is to be executed in any case, insert an Else
node as the last node. This is executed if none of the other conditions
is met.
• In the parameter view of the If/else group, the order of the conditions
can be changed and individual conditions can be deleted.

10.2.2.2 Break (exit loop or resume)

Description

The Break node can be used to exit a loop or resume it. The following
break types can be selected in the parameter view of the node:
• Break
Aborts the execution of the loop. The loop is exited and the program
is resumed with the next command.
• Continue
Aborts the current loop execution. The loop is resumed with the next
loop execution.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 197/230


Programming iiQKA.OS 1.2

Example

Fig. 10-7: Break node in a loop

1 Selection of break type


2 Name of the loop that is aborted
The robot takes a workpiece out of a compartment and places it on a
conveyor. The loop is executed as long as workpieces are available. If a
workpiece is available, but the robot cannot pick it up, the robot attempts
it again from the start position.
Line Description
2 … 14 Endless loop
7 … 8 Break
When the compartment is empty, the loop is exited and
the program is resumed at line 15.
10 … 11 Continue
If the removal of the workpiece was unsuccessful, the
rest of the loop is skipped. The program jumps back to
line 3.

10.2.2.3 Halt (pause or reset program)

There are two different types of Halt type available:


• Pause
The program is paused. Pressing the Start key again resumes it at the
same point; alternatively, the program can be reset manually.
• Stop and reset
The program is terminated and reset. The next time it is executed, it is
started from the beginning.

10.2.2.4 Subroutine (creating a subprogram)

The Subroutine node creates a new subroutine (subprogram). Subrou-


tines are small portions of a program that can be used multiple times in a
program. The subroutine is created on the Subroutines tab and can be

198/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

edited there. In the program, the subroutine is declared below the first Se-

Programming
quence node.
(>>> 10.5 "Creating and executing subroutines" Page 202)

10.2.2.5 Execute (execute subprogram)

The Execute node enables the execution of a predefined subroutine. In


the parameter view, the subroutine that is to be executed can be selected
under Subroutine. The subroutine is executed in the program at the point
where the node is located in the program structure. Once the subroutine
is completed, the program structure is resumed at the next node.

10.2.2.6 Position hold (holding position under impedance control)

The motion command Position hold makes it possible to hold an impe-


dance-controlled robot at its Cartesian setpoint position for an adjustable
period of time.
The Position hold motion command cannot be used in a motion group
(Motion group) and combined with Move nodes.

(>>> 10.7.3 "Holding position under impedance control" Page 214)

10.3 Editing the program structure

Fig. 10-8: Editing the program structure

• To move a node and all its child nodes, hold it down until it is highligh-
ted.
• Drag the node to the desired position. A white line displays the inser-
tion position and the hierarchy level at which the node will be inserted.
• If nodes are nested in an impermissible manner and the hierarchy is
invalid, the node in question is highlighted in yellow.
• The tool bar at the bottom of the screen contains additional functions
for modifying the program structure:
‒ Cut selected nodes.
‒ Copy nodes.
‒ Paste copied nodes.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 199/230


Programming iiQKA.OS 1.2

‒ Delete selected nodes or entire branches.


‒ Deactivate selected nodes.
Deactivated nodes are skipped during program execution and are
not executed; they are commented out.
‒ Toggle between single selection and multiple selection of nodes.
‒ Expand or collapse all child nodes of the node currently selected.
• Nodes can also be exchanged between different programs via the
commands in the tool bar.
• Nodes are inserted with default designations. Each node can be re-
named to provide a better overview.

Node deletion cannot be undone and moved nodes can only be man-
ually moved back to their previous position. For this reason, save
changes regularly during programming. Undesired changes can then be
discarded by closing the program without saving.

10.4 Program variables

Overview

The Variables tab is available in the first node of a program (sequence


with the default name main). There, variables for the program can be cre-
ated, edited with the Expression Editor or deleted.
• The variables are valid throughout the program and are initialized
when the program is started
• Variable values can be defined as constant
• Common data types are, for example, number, boolean, Vec3, qua-
ternion
• The variables are available in the selection menu of the Expression
Editor under LIBRARY > Variables
• The variables can be used in expressions:
‒ Variable values can be read in corresponding nodes, e.g. in “if”
conditions
‒ Variable values can be written in the Set node
• If the program is restarted, the variables are initialized with the speci-
fied value.

200/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Fig. 10-9: Variables

10.4.1 Creating value with new data type

Description

By default, a newly created variable receives a value of type “Number”. To


change the data type, proceed as follows. The procedure also applies if
the data type has to be changed again during subsequent processing of
the variable.

Procedure

1. Deleting default value/current value: To do so, select the value and se-
lect Delete from the context menu.
2. The value is now undefined. Select a new data type in the selection
menu of the Expression Editor.

10.4.2 Example of a program variable

Description

An axis-specific home position is created as a variable for a program and


used in a PTP motion to the home position.

Procedure

Create variable:
1. Add a new variable, select the default value and delete it via the con-
text menu.
2. To enter axis positions in degrees, select LIBRARY > Functions > ro-
bot > Joint6 > from-deg() in the selection menu.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 201/230


Programming iiQKA.OS 1.2

Fig. 10-10: Axis-specific home position as a variable

Use variable in motions:


1. In the motion group, select the motion type Axis (PTP) and the robot
flange as the TCP.
2. In the motion, select the target type Axis target.
3. Select the axis values in the target type and delete them via the con-
text menu.

Fig. 10-11: Deleting axis values in target type

4. Apply the variable in the target type: For this, select the variable under
LIBRARY > Variables.

10.5 Creating and executing subroutines

Description

Subroutines (subprograms) are small portions of a program that can be


used multiple times in a program. Subroutines can be created in the Fea-
ture menu Program via the Subroutines tab. The subroutines in the pro-
gram can be executed via the Execute node. A subroutine can use all
variables whose validity range includes the Subroutine node.

202/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Procedure

Creating subroutines:
1. In the Program Feature menu, open the Subroutines tab.
2. Press New subroutine.
3. Assign a name for the subroutine.
4. Create the subroutine by adding nodes.
Nodes can also be copied from the program and inserted into the sub-
routine.
5. Save the subroutine.
Executing subroutines:
1. In the Program Feature menu, open the Program tab.
2. Open the node palette and switch to the ADVANCED tab.
3. Insert the Execute node at the desired point.
4. Select the desired subroutine in the parameter view under Subrou-
tine.

10.6 Expression Editor

Description

The Expression Editor extends the programming capability of variables


and nodes. Logical operators and mathematical functions enable the pro-
gramming of complex expressions. The expressions are evaluated during
the runtime of the program.
Unless otherwise stated, the expressions indicate lengths in millimeters
(mm) and angles in degrees (°). The system calculates in the back-
ground for lengths in meters (m) and axis angles in radians (rad).
Therefore, when expressions are edited, values may be displayed in the
converted unit.

Fig. 10-12: Expression Editor

• The Expression Editor is recursive. Any number of expressions can be


nested together in a logic command.
• The Expression Editor only allows type-safe entries.
• Press on an empty expression to open a selection menu.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 203/230


Programming iiQKA.OS 1.2

• Under BASICS, the selection menu suggests useful programming op-


tions for filling in the expression. All of the programming options avail-
able in the context, such as data, variables and functions, can be
found under in the LIBRARY.
• Placeholders are displayed for mathematical operations, e.g. ? + ? for
addition. 0 must be selected for entering numbers.
• Values can be entered and edited using the keyboard.
• There is a context menu at the edge of each expression. The context
menu can be used, for example, to open full screen mode or to delete
the expression.
• Beyond a certain nesting depth, expressions can only be edited in full
screen mode.
• Certain logic commands, e.g. the Wait node, are displayed in a simpli-
fied view (short form). They can also be displayed in their long form
via the context menu.
• Expressions can be expanded and collapsed using the plus and minus
icons.

Full screen mode

The Expression Editor can be opened in full screen mode in order to edit
complex expressions in a larger view. To do so, select the desired expres-
sion and open the context menu at the side.

Fig. 10-13: Expression Editor in full screen mode

• The Expression Editor can be moved freely on the screen.


• Move the slider between the magnifying glass icons to reduce or en-
large the Editor.
• Press the button (Zoom to fit) next to the magnifying glass icons to
reset the view and align the Expression Editor to the left.
• Press the left arrow to exit full screen mode.

10.6.1 Functions in the Expression Editor

Description

The following namespaces are available in the Expression Editor:

204/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Name-
Description
space
geo Functions and data types with reference to the modeled
world
kuka Functions and data types from toolboxes
lang Basic functions and data types
math Computational functions and mathematical data types
nodes Data types with reference to specific nodes
robot Functions and data types with reference to the robotics
trigger Functions and data types for configuring triggers
The elements of a namespace are divided into the following menus by
means of automatic categorization:
• Data
The elements used to generate a data structure directly are always lo-
cated under Data. These elements are referred to as constructors.
• Functions
All remaining functions can be found under Functions.
• Variables
All remaining values that are not functions can be found under Varia-
bles.

Structure of Expressions

Expressions are composed of function calls, values, variables and some


other constructs. There is exactly one constructor function for most data
types.
Many functions accept 2 parameters. Functions can, however, also accept
only one or multiple parameters.

Fig. 10-14: Example of a function call

1 1st parameter: Variable reference


2 2nd parameter: Value of the variable reference
The values to be specified depend on the selected variable type. For ex-
ample, if a variable reference of the Boolean data type is selected, only
one Boolean value can be entered.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 205/230


Programming iiQKA.OS 1.2

Functions as value
It is possible to treat functions as values. Functions proposed as “Func-
tion as value” can be transferred to other functions or saved as varia-
bles.

10.6.2 Namespace lang

Description

The lang namespace contains basic programming options.

Expressions

Call:

• Under Library, select Functions > lang.

Expression Expression
Description
1st level 2nd level
Ref get-id Function accepts a lang.Ref and returns
the value of the attribute "id".
? = ? Function compares if 1st and 2nd parame-
ters are equal.
? != ? Function compares if 1st and 2nd parame-
ters are unequal.
? or ? Function checks whether 1st or 2nd pa-
rameter is true.
not(?) Function negates a logical expression.
? and ? Function checks whether the 1st and 2nd
parameters are true.
if(cond: ?, Conditional expression:
then: ?,
Function accepts a Boolean value cond as
else: ?)
well as the values then and else. If cond
is true, the result is then. Otherwise, it is
else.

10.6.2.1 lang.List data type

Description

The lang.List data type represents lists of any length.

Expressions

Call:

• Under Library, select Functions > lang > List.

Expression Expression
Description
1st level 2nd level
Cons get-head(?) Function reads the header element of a
non-empty list.
get-tail(?) Function reads the rest (all elements ex-
cept header elements) of a non-empty list.

206/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Expression Expression
Description
1st level 2nd level
is-Nil?(?) Function checks whether a list is an emp-
ty list.
? concat ? Function appends the second list to the
first.
get(value: ?, Function accepts a list value value and a
at: ?) number at. Function returns the list ele-
ment at this index.
filter(pred: ?, Function returns a list containing only the
value: ?) value elements that are true when applied
to pred.
map(func: ?, Function returns a new list where each el-
value: ?) ement has been converted from value to
func through application.
reverse(?) Function returns a list consisting of the el-
ements of value in reverse order.
set(value: ?, Function returns a list. The element at is
at: ?, to: ?) replaced by to.
length(?) Function returns the number of characters
or elements in this object.
is-Cons?(?) Function checks whether a list is a non-
empty list.

Constructors

Call:

• Under Library, select Data > lang > List.

Constructor Description
Cons(head: ?, Constructor generates a list from a header element
tail: ?) and another list.
Nil The constant Nil is an empty list.

10.6.2.2 Data type “lang.Maybe”

Description

The data type “lang.Maybe” represents optional values.

Expressions

Call:

• Under Library, select Functions > lang > Maybe.

Expression Description
get-value(?) Function returns the value of a Maybe if it was cre-
ated via Just.
is-Nothing?(?) Function checks whether a Maybe really is a Nothing.
An optional value is missing.
is-Just?(?) Function checks whether a Maybe really is a Just. An
optional value is present.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 207/230


Programming iiQKA.OS 1.2

Constructors

Call:

• Under Library, select Data > lang > Maybe.

Constructor Description
Just(?) Constructor creates a Maybe with a contained value.
Nothing Nothing is the constant for a Maybe with no value in
it.

10.6.3 Namespace math

Description

The namespace math contains mathematical operations and data types.

Expressions

Call:

• Under Library, select Functions > math.

Expression Expression
Description
1st level 2nd level
Vec3 get-x(?) Function supplies the X component of the
3 vector.
get-y(?) Function supplies the Y component of the
3 vector.
from- Function creates a vector (in m) from
mm(x: ?, components in millimeters.
y: ?, z: ?)
get-z(?) Function supplies the Z component of the
3 vector.
Vec6 get- Function supplies the X1 … X6 compo-
x1(?) … get- nent of the 6 vector.
x6(?)
Quaternion Rota- Generates a quaternion from three Euler
tion(rx: ?, angles in the KUKA convention. Here, the
ry: ?, rz: ?) angles are specified in degrees.
get- Function supplies the W, X, Y or Z com-
w(?) … get- ponent of the quaternion.
z(?)
? + ? Function adds the 1st and 2nd parameter.
cos(?) Cosine function
The argument is expected in radians.
? * ? Function multiplies the 1st and 2nd pa-
rameter.
? >= ? Function compares whether the 1st pa-
rameter is greater than the 2nd parameter
or equal to the 2nd parameter.
? <= ? Function compares whether the 1st pa-
rameter is smaller than the 2nd parameter
or equal to the 2nd parameter.

208/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Expression Expression
Description
1st level 2nd level
? - ? Function subtracts the 2nd parameter from
the 1st.
? / ? Function divides the 1st parameter by the
2nd.
neg(?) Function negates the parameter.
deg-to-rad(?) Function converts from degrees to radi-
ans.
sin(?) Sine function
The argument is expected in radians.
rad-to-deg(?) Function converts from radians to de-
grees.
? < ? Function compares whether the 1st pa-
rameter is smaller than the 2nd parameter.
? > ? Function compares whether the 1st pa-
rameter is greater than the 2nd parameter.
? % ? Function carries out integer division using
the 1st and 2nd parameter and returns
the remainder.

Constructors

Call:

• Under Library, select Data > math.

Constructor Description
Rotation(rx: 0, Constructor creates a rotation from three Euler an-
ry: 0, rz: 0) gles.
The resulting value is of type math.Quaternion.
Vec3(x: ?, y: ?, Constructor creates a 3 vector.
z: ?)
Vec6(x1: ?, Constructor creates a 6 vector.
x2: ?, x3: ?,
x4: ?, x5: ?,
x6: ?)

10.7 Programming of a compliant robot

Overview

Robots with integrated joint torque sensors can be moved under impe-
dance control. Impedance control can be parameterized for a motion
group (node Motion group) and for the motion command Position hold.
(>>> 10.7.3 "Holding position under impedance control" Page 214)
The following control modes are available on the Sensitivity tab of the
specified nodes:
• Position Control (default)
Position control is preselected by default. In position control, the robot
is not compliant and follows the programmed path as accurately as
possible. Position control has no adjustable parameters.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 209/230


Programming iiQKA.OS 1.2

• Cartesian impedance
Cartesian impedance control can be used if the robot is to react in a
compliant manner to external forces/torques, e.g. to obstacles on the
programmed path or process forces.
(>>> 10.7.1 "Cartesian impedance control" Page 210)
• Axis impedance
Axis impedance control can be used if one or more axes are to react
in a compliant manner to external forces/torques.
(>>> 10.7.2 "Axis impedance control" Page 213)
The control mode selected in a Motion group node as well as its param-
eters apply to all motions of this motion group.

10.7.1 Cartesian impedance control

Description

The Cartesian impedance control is modeled on a virtual spring damper


system with configurable values for stiffness and damping. This spring is
extended between the setpoint and actual positions of the TCP. As a re-
sult, the robot reacts in a compliant manner to externally applied forces or
torques.
(>>> 10.7.1.1 "Calculation of the forces on the basis of Hooke’s law"
Page 211)
Compliance can also be used to apply Cartesian forces or torques to the
robot in a targeted manner. These applied forces and torques overlay the
forces and torques generated by the spring stiffness.
Cartesian impedance control always refers to the TCP (motion frame) set
in Motion group node or Position hold node. The values for stiffness,
damping and overlaid forces/torques can be set for each of the 6 degrees
of freedom for this frame.
• Translational degrees of freedom: X, Y, Z
• Rotational degrees of freedom: Rx, Ry, Rz

Stiffness

The stiffness parameters determine how much the robot yields when a
force is applied.
• If a low stiffness is set for a degree of freedom, the robot is very com-
pliant in this direction. It reacts to obstacles and external forces by de-
viating from its path.
• Conversely, high stiffness leads to good path tracking with low compli-
ance along the degree of freedom.

WARNING
Risk of unpredictable motions with zero stiffness
Setting zero stiffness can cause the robot to move freely and uncontrol-
lably in the corresponding directions. This particularly applies to joint tor-
que sensors that are not properly mastered. Injuries or damage to prop-
erty may result.
• Use zero stiffness values only in contact situations combined with
external force application in order to achieve a controlled application
of force.

210/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Damping

The damping parameters determine how much the robot oscillates after a
force has been applied.
• If high damping is set for a degree of freedom, the oscillation is re-
duced in this direction.

Force/Torque overlay

External Cartesian forces and torques can also be applied here. These
overlay the Cartesian forces and torques that result from the spring stiff-
ness.
WARNING
Risk of injury and damage to property due to strong acceleration
of the robot in the direction of force application
An application of force can result in strong acceleration and rapid mo-
tion of the robot in the corresponding direction. Injuries or damage to
property may result.
• Only apply forces if the robot has already moved on contact in the
corresponding direction.

Example

High stiffness is set in the Z direction of the TCP (motion frame) and low
stiffness in the X/Y direction. In this way, the TCP can follow the program-
med path well during a motion in the tool direction Z and at the same
time swerve in the XY plane.

10.7.1.1 Calculation of the forces on the basis of Hooke’s law

Description

If the measured and specified robot positions correspond, the virtual


springs are slack. As the robot’s behavior is compliant, an external force
or a motion command results in a deviation between the setpoint and ac-
tual positions of the robot. This results in a deflection of the virtual
springs, leading to a force in accordance with Hooke’s law.
The resultant force F can be calculated on the basis of Hooke’s law using
the set spring stiffness C and the deflection Δx:
F = C · Δx

Fig. 10-15: Virtual spring with spring stiffness C

1 Deflection Δx
2 Virtual spring

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 211/230


Programming iiQKA.OS 1.2

3 Actual position
4 Resulting force F
5 Setpoint position
If the robot is at a resistance, it exerts the calculated force. If it is in free
space, it moves to the setpoint position. On the way to the setpoint posi-
tion, path deviations occur due to internal frictional forces in the joints.
The extent of these deviations depends on the set spring stiffness. Higher
stiffness values lead to smaller deviations.
If the robot is already at the setpoint position and an external force is ap-
plied to the system, the robot yields to this force until the forces resulting
from compliance control cancel out the external forces.

Examples

The force exerted at the contact point depends on the difference between
the setpoint position and the actual position and the set stiffness.

Fig. 10-16: Force exerted on contact

As shown in the figure (>>> Fig. 10-16), a large position difference and
low stiffness can result in the same force as a smaller position difference
and greater stiffness. If the force is increased by a motion in a contact sit-
uation, the time required to reach this force differs if the Cartesian velocity
is identical.
If higher stiffness values are used, a desired force can be reached earlier,
as only a small position difference is required. Since the setpoint position
is reached quickly, a jerk can be produced in this way.

Fig. 10-17: Force over time (high stiffness, small position difference)

In the case of a large position difference and low stiffness, the force is
built up more slowly. This can be used, for example, if the robot moves to
the contact point and the impact loads are to be reduced.

212/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Fig. 10-18: Force over time (low stiffness, large position difference)

Setpoint/actual deviations in more than one direction lead to deflection of


all the affected virtual springs. The magnitude and direction of the overall
force results from vector addition of the individual forces for each direc-
tion.
The deflection in the X direction by Δx and in the Y direction by Δy result
in force Fx in the X direction and Fy in the Y direction. The vector addition
results in the overall force Fres.

Fig. 10-19: Overall force in the case of deflection in 2 directions

10.7.2 Axis impedance control

Description

With axis impedance control, the following parameters can be set for each
individual axis:
• Stiffness
The stiffness parameter determines the degree of compliance of an
axis when force is applied
‒ If a low stiffness is set for an axis, the axis is very compliant and
can be easily moved by hand.
‒ Conversely, high stiffness for an axis results in low compliance.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 213/230


Programming iiQKA.OS 1.2

WARNING
Risk of unpredictable motions with zero stiffness
Setting zero stiffness can cause the robot to move freely and uncon-
trollably in the corresponding directions. This particularly applies to
joint torque sensors that are not properly mastered. Injuries or dam-
age to property may result.
‒ Use zero stiffness values only in contact situations combined
with external force application in order to achieve a controlled
application of force.

• Damping
The damping parameters determine how much an axis oscillates after
a force has been applied
‒ If high damping is set for an axis, the oscillation is reduced.

10.7.3 Holding position under impedance control

Description

Using the Position hold motion command, the robot can hold its Cartesi-
an setpoint position over a set period of time and remain under servo con-
trol.
This can be used in combination with corresponding settings for impe-
dance control so that the robot exerts corresponding forces and/or torques
at the current position. In addition, the impedance-controlled robot can re-
spond in a compliant manner to external forces – thus enabling, for exam-
ple, position corrections.
During a Position Hold, the impedance-controlled robot can be brought
away from its setpoint position by external forces. Whether and in which
direction the robot moves from the setpoint position depends on the set
controller parameters and the resulting forces.

The Position hold motion command cannot be used in a motion group


(Motion group) and combined with Move nodes.

Parameters

The following parameters can be defined on the Parameters tab:


• TCP
The TCP defines the motion frame to which the parameters of the
Cartesian impedance control refer (not relevant for position control or
axis impedance control).
• Duration
The following switches can be used to define how long the motion
command Position hold is executed.
‒ Fixed: The exact duration can be set (default: 10000 ms).
‒ Infinite: If this switch is active, the duration is not limited.
The command can only be aborted by means of a stop condition
(trigger with action Break).

Triggers

In addition to the defined duration, a condition can be programmed on the


Triggers tab in order to cancel the motion command.
(>>> 10.8 "Trigger programming" Page 216)

214/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Example

A robot is to move on contact and press against a workpiece for 5 sec-


onds with a force of 15 N in the contact direction.
1. Move the robot into the contact position, e.g. by means of manual
guidance or by a programmed motion used for moving on contact.
Example of programming a motion to contact: (>>> "Example"
Page 218)
2. Program the motion command Position hold for a duration of 5 sec-
onds with Cartesian impedance control.
• Maximum stiffness and damping in all directions, with the excep-
tion of the contact direction, zero stiffness there
• External force application of 15 N in the contact direction

10.7.4 Notes on using impedance control

Setpoint-actual comparison

In a setpoint-actual comparison, the commanded position (setpoint) of the


robot is compared to the actual position (actual) of the robot. This corrects
a possible deviation of the setpoint position from the actual position in the
case of compliant impedance control. This prevents unexpected jumps
from occurring if the stiffness of the robot changes.
• If a change is made from a motion under impedance control to anoth-
er motion (Motion group or Position hold), an automatic setpoint-ac-
tual comparison of the robot position is always carried out. Exception:
The subsequent motion is an impedance-controlled motion with identi-
cal parameters.
• If no further motion follows, a setpoint-actual comparison is carried out
when the brakes of the robot are applied. A simultaneous relaxation of
any contact forces that may be present is also carried out.
• If an application is paused during the execution of a motion under im-
pedance control, setpoint-actual comparison is carried out when the
brakes are applied.

Repositioning

Setpoint-actual comparison while a motion is paused under impedance


control has the effect that the application cannot be resumed until the ro-
bot has been repositioned using the Start key.
The motion back to the setpoint position is always carried out using the
controller parameters of the paused motion.
It is advisable to perform repositioning approximately from the position
at which the motion was interrupted. If this is not observed, it may be
that the motion is not resume from the position at which it was actually
interrupted.

WARNING
Risk of injury and damage to property due to strong acceleration
of the robot during repositioning with external force application
If an impedance-controlled motion with external force application has
been paused, repositioning with external force application also takes
place. If the robot is in free space during repositioning, this can lead to
strong accelerations of the robot. Injuries or damage to property may re-
sult.
• Manually bring the robot back in contact before repositioning.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 215/230


Programming iiQKA.OS 1.2

10.8 Trigger programming

Description

Triggers can be programmed in the Motion group node and the Position
hold node.
Triggers consist of a condition and an action. The action is executed if the
condition is fulfilled.
The following condition types can be programmed on the Triggers tab of
the above-mentioned nodes:
• Force component condition
The condition is met if the external Cartesian force measured along
the set axis of the set TCP lies outside a defined range (Min…Max).
• Torque component condition
The condition is met if the external Cartesian torque measured about
the set axis of the set TCP lies outside a defined range (Min…Max).
If the condition is met, the Break action is triggered by default. This action
ends the current motion (Motion group or Position hold) and executes
the next program command. Other actions cannot be programmed.

Fig. 10-20: Trigger: Cancellation of motion due to force or torque

1 Minimum external force/minimum external torque


2 Maximum external force/maximum external torque
3 Measured external force/measured external torque
4 Action Break is triggered
Furthermore, the negation of a force component condition or torque com-
ponent condition can be programmed. The negation of a condition is met
if the measured external force or the measured external force torque is
within a defined range (Min…Max).

216/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Fig. 10-21: Trigger: Cancellation of motion due to force or torque
(negation “not”)

1 Minimum external force/minimum external torque


2 Maximum external force/maximum external torque
3 Measured external force/measured external torque
4 Action Break is triggered

Procedure

1. On the Triggers tab of the nodes Motion group or Position hold,


press the Add trigger button.
2. Assign a name for the trigger.
3. Select the type of condition:
• Force Component
• Torque Component
• Not
Negation of a force component condition or torque component con-
dition; see step 5.
4. Define the parameters of the condition:
• Measuring axis
Axis of the measurement frame at which the external force or tor-
que is measured
• Measurement Frame
Reference frame for measuring the external force or torque
• Min
Minimum value for the external force or the external torque
• Max
Maximum value for the external force or the external torque
5. If the condition type Not is selected, proceed as follows:
a. Select the following entry under LIBRARY in the selection menu of
the Expression Editor:
• Data >Trigger > ForceComponent(…) or TorqueCompo-
nent(…)
b. In order to be able to define the parameters of the condition, the
expression must be opened in full-screen mode. To do so, select

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 217/230


iiQKA.OS 1.2

the expression and select the corresponding entry in the context


Programming

menu to the right.

Example

Move robot on contact


As soon as contact is established and a defined force is measured, a trig-
ger is triggered and the motion is stopped.
1. Bring the robot into the pre-position for the expected contact.
2. Create the Motion group node.
3. Program the search run as a relative motion (LIN) in the direction of
the expected contact.
a. Select TCP.
b. Select tool direction Z.
4. Configure Cartesian impedance control on the Sensitivity tab of the
Motion group node.
a. Set maximum stiffness and damping in all directions.
b. Set stiffness to medium stiffness in search direction (1000 N/m).
5. On the Triggers tab, add a trigger with the condition Force Compo-
nent to the search run.
• Select measuring axis Z to measure the force along the Z axis of
the TCP.
• Set minimum force to -10 N.
• Set maximum force to high value, e.g. to 100000 N.

If, in the search direction, a force of < -10 N is measured during the
search run, the trigger is triggered and the motion stops. The meas-
ured contact forces act against the direction of travel.

10.8.1 Checking whether trigger is triggered

Description

Whether a trigger programmed for a motion group has been triggered can
be checked as follows.

Fig. 10-22: Checking whether trigger is triggered

218/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
Procedure

1. Create and select a If/else node in the motion group.


2. Set the 1st operator in the If/else node:
a. Select 1st value: Functions > nodes > MOTIONRESULT get-trig-
gerFired(?)
b. Select 2nd value: Variables > RETURN VARIABLES

The return variable has the same name as the motion group.

3. Compare the result of the trigger with the desired value:


Operand lang.= is preset.

• Set the 2nd operator to true/false in the If/else node.


The result is a Boolean value:
• True: Trigger is triggered.
• False: Trigger is not triggered.

10.9 Grid Patterns toolbox

Overview

The Grid Patterns toolbox is pre-installed on the robot controller. Grid pat-
terns make it possible to move the robot by means of a programmed pat-
tern.
Grid patterns are defined in the scene editor and in the capabilities. Grid
patterns can be integrated into programs.

10.9.1 Defining grid patterns in scene

Procedure

1. In the Feature menu, select Scene.


2. In the object selection menu, select Devices > Grid Patterns.
A new grid pattern can only be created under World.

3. Show the object tree and check whether the grid pattern has been
created.
4. Rename grid pattern.
5. Manually enter coordinates in the parameter view.
6. In the object tree, select World.
7. Select Frame in the object selection menu. The first frame is added.
Overall, the following frames must be created:
• Origin
• Corner X
• Corner Y
• Iteration
8. Specify frame accordingly.
9. Move the robot to the desired position by jogging or manual guidance
and record the frame via Touch up.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 219/230


Programming iiQKA.OS 1.2

Fig. 10-23: Grid patterns in scene - Example

1 Grid Patterns
2 Origin
This frame defines the gripper orientation at the removal points.
By default, the cell index is 0. The cell index can be changed man-
ually in the Feature menu Capabilities in the Parameter view.
(>>> 10.9.2 "Defining grid patterns in capabilities" Page 220)
3 Corner X
This frame defines the direction of the first iteration.
4 Corner Y
This frame defines the direction of the second iteration.
5 Iteration
This frame can be generated at any position.

10.9.2 Defining grid patterns in capabilities

Precondition

• At least one grid pattern has already been created in the scene editor.

Procedure

1. In the Feature menu, select Setup > Capabilities.


2. Select the newly created grid pattern in the drop-down menu.
3. Open the grid pattern and press Parameters.
4. Enter the X and Y values in the parameter view.
The X and Y values correspond to the array size.

5. Select parameters for the traversal order.


There are 2 options to choose from:
• ZIG_ZAG
• SNAKE

220/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Programming
6. Select the frame references for the respective frames Origin, Corner
X, Corner Y and Iteration:
• New project frame
• Existing project frame...
7. If New project frame is selected:
• Frame is created at the current position.
8. If Existing project frame... is selected:
a. A dialog is opened. Show object tree.
b. Select frame.
c. Press Select target. The assignment is applied.
9. Optional: Change index.
The index is preset to 0 by default.
10. Click on Apply to save the change.

10.9.3 Using grid patterns in a program

Procedure

1. In the Feature menu, select Program.


2. Create a new program.
3. Open the node palette and select Motion group.
4. Add the Loop node.
5. Under the Loop node, add the GridIteration node.
6. Under the Loop node, add a Move node.
7. Configuring the first node Motion group:
a. Select the Motion group node.
b. Rename Motion group.
c. Select the motion type Axis (PTP).
d. Set the motion as required.
8. Configuring the Loop node:
a. Select the Loop node.
b. Rename Loop.
c. Select the loop type Infinite.
9. Configuring the GridIteration node:
a. Select the GridIteration node.
b. Select the available grid patterns under Capability.
10. Configuring the Move node under Loop node:
a. Select the Move node.
b. Select the Linear motion type.
c. Select the Frame Reference target target type. A dialog is
opened.
d. Select Use existing project frame and confirm the selection.
e. Show the object tree and select the iteration frame.
f. Press Select target.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 221/230


Programming iiQKA.OS 1.2

Example

Fig. 10-24: Using grid patterns in a program – Example

Nodes

The following nodes are available in the node palette:


Node Description
GridIteration Automatically selects the available grid pattern
capability. If more than one grid pattern capabil-
ity is available, the desired grid pattern can be
selected in the node.
GridReset Resets the grid pattern

222/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Diagnosis
11 Diagnosis

11.1 Creating a diagnosis package

Description

If it is necessary for an error to be analyzed by KUKA, a diagnosis pack-


age can be created on the robot controller. All relevant data are collected
and compressed in a ZIP file.
The following storage media can be used:
1. SD card
XGSD interface (SD card slot) on the front of the robot controller
2. USB stick (formatted as FAT32 or exFAT)
Interface XFUSB1 or XFUSB2 on the front of the robot controller
There is an optional setting to create a subfolder on the storage medium
with the name of the robot controller.
• The name can be changed in the system settings (Controller tab).

Fig. 11-1: Creating a diagnosis package

Precondition

• A storage medium is connected to the robot controller.


• There is sufficient free space on the storage medium.

Procedure

1. In the main menu, select Create diagnostic package. A dialog is


opened.
2. Select the storage medium.
3. If desired, activate the Use Controller name "{controllerName}" as
subfolder option (activate the check box).
4. Select the Create button. Creation of the diagnosis package starts.
• The progress of the creation process is displayed. It may take a
few minutes to complete the creation process.
• The creation process can be canceled at any time.

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 223/230


Diagnosis iiQKA.OS 1.2

• Once the creation process has been completed, a message is dis-


played.

NOTICE
Incomplete data due to premature removal of the storage medium
If the storage medium is removed while data are still being written, the
diagnosis package is incomplete.
• Do not remove the storage medium until the message indicating
completion of the creation process has been displayed.

11.2 Message log

Description

All messages about events and changes in state of the system are log-
ged. The message log displays the messages in the order in which they
occur.
• The messages can be filtered by time interval, source and category.
• The filter window can be moved on the user interface.
• Depending on the filter and the number of messages, the messages
are displayed on one or more pages (maximum 20 messages per
page).
• The category of the messages is displayed using symbols (icons).
• If a message is selected that is related to other messages, this is rep-
resented graphically as follows:
‒ Solid gray line with nodes for the associated messages, e.g. be-
tween the error message and the notification message that signals
the elimination of the underlying error.
‒ Broken gray line for messages that are not loaded.
‒ Messages that are not related to the selected message can be
hidden. See filter button (>>> Fig. 11-2).
• The detail view shows the details of a selected message.

Fig. 11-2: Message log

1 Message log
2 Detail view

224/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Diagnosis
3 Message filter
4 Filter by category
5 Filter button (inactive)
6 Associated messages
7 Navigation between the pages
8 To top of page

Procedure

• To display the message log, select Monitoring in the Feature menu.

11.3 Alert display

Description

An alarm indicator in the status bar of the user interface indicates the
number of warning and error messages that are currently active.

Procedure

• To display more details about the warning and error messages, tap on
the display in the status bar.

Overview

The tabs in the Alerts window display various messages.


• RUNTIME tab
Messages that have been generated during the runtime
• ENGINEERING tab
Messages concerning the configuration

Fig. 11-3: “Alerts” window

1 Alert display
2 Safety-related message
3 Alert filter
4 Alert details
5 Show Message History

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 225/230


Diagnosis iiQKA.OS 1.2

Functions

The following functions are available in the tabs:


• Filter messages
• Show Message History button
Switch to the message log
(>>> 11.2 "Message log" Page 224)
• Display of safety-related messages
The following messages may be generated:
‒ Safety system paused
(>>> 11.4 "Resuming the safety controller" Page 226)
‒ Safety needs to be re-applied
Changes have been made to the safety configuration that have not
yet been applied and approved. The Go to Safety button can be
used to navigate directly to the safety configuration.

11.4 Resuming the safety controller

If there are connection or periphery errors, the safety controller is paused


(after one or more occurrences depending on the error). As a result, the
robot is stopped and all safe outputs are deactivated.
• If the safety controller is paused, this is indicated by the Safety sys-
tem paused message in the Alerts window.
• Depending on the error, the Resume button is displayed together with
the message, or no button is displayed.
• If the Resume button is present, the safety controller can be resumed
once the cause of the error has been eliminated.
• If no button is present, proceed as follows:
1. Eliminate the cause of the error.
2. Reboot the robot controller.
3. If the safety controller is still paused after the reboot, contact
KUKA Customer Support.

226/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

KUKA Service
12 KUKA Service

12.1 Requesting support

Introduction

This documentation provides information on operation and operator con-


trol, and provides assistance with troubleshooting. For further support,
please contact your local subsidiary.

Information

The following information is required for processing a support re-


quest:
• Description of the problem, including information about the duration
and frequency of the fault
• The greatest possible amount of information about the hardware and
software components of the overall system
The following list gives an indication of the information which is rele-
vant in many cases:
‒ Model and serial number of the kinematic system, e.g. the manip-
ulator
‒ Model and serial number of the controller
‒ Model and serial number of the energy supply system
‒ Designation and version of the system software
‒ Designations and versions of other software components or modifi-
cations
‒ System software diagnosis package
Additionally for KUKA Sunrise: Existing projects including applica-
tions
For versions of KUKA System Software older than V8: Archive of
the software (Diagnosis package is not yet available here.)
‒ Application used
‒ External axes used

12.2 KUKA Customer Support

The contact details of the local subsidiaries can be found at:


www.kuka.com/customer-service-contacts

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 227/230


KUKA Service iiQKA.OS 1.2

228/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024


iiQKA.OS 1.2

Index F
3D scene...................................................... 121 Faults.............................................................. 34
Function test................................................... 36
Functions
A Expression Editor.................................... 204
Accessories.............................................. 14, 17
Advanced nodes...........................................197
AUT (operating mode)....................................18 G
Automatic (operating mode)...........................18 General configuration..................................... 87
Automatic mode..............................................38 General operation...........................................49
Axis range.......................................................18 General safety measures............................... 33

B H
Basic nodes.................................................. 190 Hazardous substances................................... 40
Brake defect................................................... 33 Hooke’s law.................................................. 211
Braking distance............................................. 18 HRC................................................................ 19

C I
CE mark..........................................................18 I/O configuration............................................. 93
Cleaning work.................................................39 Industrial robot......................................... 13, 17
Collaborative operation, HRC........................ 29 Intended use...................................................15
Commander.................................................... 18 Introduction..................................................... 11
Configuration, primary side.......................... 102
Configuration, secondary side............. 104, 106
Connecting cables....................................13, 17 J
CRR................................................................ 19 Jog mode........................................................30

D K
Danger zone.............................................18, 21 KUKA Customer Support............................. 227
Declaration of conformity............................... 17 KUKA Service...............................................227
Declaration of incorporation.....................17, 18 KUKA smartPAD pro...................................... 19
Decommissioning............................................40
Diagnosis...................................................... 223
Diagnosis package....................................... 227
Disclaimer....................................................... 17
L
Labeling.......................................................... 30
Disposal.......................................................... 40
Laser scanner, external................................145
Documentation, industrial robot......................11
Licenses..........................................................12
Low Voltage Directive.....................................18
E
EC declaration of conformity......................... 17
EMC Directive.................................................18
M
Machinery Directive........................................ 18
EMERGENCY STOP
Maintenance................................................... 39
External......................................................19
Manipulator........................................ 13, 17, 19
Local.......................................................... 19
Manual mode..................................................37
EMERGENCY STOP device................... 25, 28
Misuse.............................................................15
External......................................................19
Mode selection............................................... 31
Local.......................................................... 19
Monitoring Block........................................... 134
EMERGENCY STOP device, local................ 25
Monitoring, physical safeguards.....................27
EMERGENCY STOP, external.......................28
EMERGENCY STOP, output..........................29
Enabling device.............................................. 26
Enabling device, external............................... 29 N
Enabling switches...........................................26 Network connections...................................... 14
New signal, creating.......................................96
New signal, mapping......................................96

iiQKA.OS 1.2 V3 | Issued: 19.01.2024 www.kuka.com | 229/230


iiQKA.OS 1.2

O STOP 0...........................................................19
Open-source................................................... 12 STOP 2...........................................................20
Operator safety........................................ 24, 27 Stop category 0.............................................. 19
Operators........................................................ 21 Stop category 2.............................................. 20
Options..................................................... 14, 17 Stop category 1 (HRC).................................. 20
Overload......................................................... 33 Stop category 1 (path-maintaining)............... 20
Overview of the industrial robot.....................13 Stop reactions.................................................22
STOP 1 (HRC)............................................... 20
STOP 1 (path-maintaining)............................ 20
Stopping distance.................................. 18, 160
P Storage........................................................... 40
Panic position................................................. 26 Support request............................................ 227
Performance Level......................................... 23 System integrator.............................. 18, 20, 21
Personal protective equipment...................... 21 System requirements......................................14
Personnel........................................................20
Physical inputs and outputs...........................93
Plant integrator............................................... 20
PPE.................................................................21
T
Preventive maintenance work........................ 39 T1 (operating mode).......................................20
Product description.........................................13 Teach pendant......................................... 13, 17
Programming................................................ 189 Terms, safety.................................................. 18
Protected space..............................................21 Training........................................................... 11
Protective equipment......................................30 Transportation................................................. 35

R U
Reaction distance........................................... 18 User.......................................................... 18, 21
Recommissioning............................................35
Repair............................................................. 39
Robot controller........................................13, 17 V
Velocity monitoring......................................... 27

S
Safeguards, external...................................... 31 W
Safety..............................................................17 Warnings......................................................... 11
Safety-oriented tools.....................................176 Workspace................................................18, 21
Safety acceptance........................................ 173
Safety configuration......................................133
Safety controller..............................................25
Safety functions.............................................. 23
Safety functions, overview............................. 23
Safety instructions.......................................... 11
Safety interfaces...........................................144
Safety reactions............................................140
Safety Rule................................................... 134
Safety Rule Set............................................ 134
Safety stop......................................................19
Safety stop 0.................................................. 19
Safety stop 1 (HRC)...................................... 19
Safety stop 1 (path-maintaining)....................19
Safety zone.....................................................19
Safety, general................................................17
Signals............................................................ 95
Simulation....................................................... 38
Single Point of Control...................................40
smartPAD........................................................34
Software................................................... 14, 17
Software limit switches...................................30
SPOC..............................................................40
Start-up........................................................... 35

230/230 | www.kuka.com iiQKA.OS 1.2 V3 | Issued: 19.01.2024

You might also like