KST OPC UA 10 en
KST OPC UA 10 en
KUKA.OPC UA 1.0
KUKA.OPC UA
1.0
Issued: 18.05.2018
© Copyright 2018
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 software
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 regular basis, how-
ever, 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
Contents
1 Introduction .................................................................................................. 5
1.1 Target group .............................................................................................................. 5
1.2 Industrial robot documentation ................................................................................... 5
1.3 Representation of warnings and notes ...................................................................... 5
1.4 Terms used ................................................................................................................ 6
1.5 Trademarks ................................................................................................................ 6
1.6 Licenses ..................................................................................................................... 6
3 Safety ............................................................................................................ 9
3.1 Safety measures for “single point of control” ............................................................. 9
4 Installation .................................................................................................... 11
4.1 System requirements ................................................................................................. 11
4.2 Installation via WorkVisual ......................................................................................... 11
4.2.1 Installing or updating KUKA.OPC UA 1.0 ............................................................. 11
4.3 Installation via smartHMI ............................................................................................ 12
4.3.1 Installing or updating KUKA.OPC UA 1.0 ............................................................ 12
4.3.2 Uninstalling KUKA.OPC UA 1.0 ............................................................................ 13
5 Configuration ............................................................................................... 15
5.1 Configuring process data ........................................................................................... 15
6 Operation ...................................................................................................... 17
6.1 Adding the server in the client .................................................................................... 17
6.2 Overview: Information model ..................................................................................... 17
6.2.1 Information about the robot controller ................................................................... 18
6.2.2 Information about the kinematic system ............................................................... 19
6.2.3 Application-specific process variables .................................................................. 21
6.2.4 Information about statuses of the safety controller ............................................... 21
6.3 Integrating customer specific-information .................................................................. 21
6.4 Displaying the system messages in the client ........................................................... 23
7 Troubleshooting .......................................................................................... 25
7.1 No connection to the OPC UA server ........................................................................ 25
8 Appendix ...................................................................................................... 27
8.1 Configuration file “ProcessData.opcj” ........................................................................ 27
Index ............................................................................................................. 37
1 Introduction
t
This documentation is aimed at users with the following knowledge and skills:
Advanced knowledge of the robot controller system
Advanced knowledge of network connections
Notices These notices serve to make your work easier or contain references to further
information.
Term Description
IP Internet Protocol
The Internet Protocol is used to define subnetworks by
means of physical MAC addresses.
JSON JavaScript Object Notation
Data format for data exchange between applications
KLI KUKA Line Interface
Ethernet interface of the robot controller for external
communication (not real-time-capable).
OPC Open Platform Communication
Previously also known as OLE for Process Control
Specification for data exchange between applications
based on Microsoft Windows COM/DCOM technology
OPC-UA OPC Unified Architecture
Software framework for data exchange between appli-
cations based on platform-independent technologies
TCP/IP Transmission Control Protocol
Protocol of the data exchange between devices of a
network.
TCP constitutes a virtual channel between 2 sockets in
a network connection. Data can be transmitted on this
channel in both directions.
1.5 Trademarks
1.6 Licenses
The KUKA license conditions and the license conditions of the open-source
software used can be found in the following folders:
Under .\LICENSE on the data storage medium with the installation files of
the KUKA software
Under D:\KUKA_OPT\Option package name\LICENSE after installation on
the robot controller
2 Product description
2
2.1
t
Overview
Description
terface on the robot controller. The interface provides a predefined set of robot
data that can be read using an OPC UA client, e.g. in order to use them for
further external data processing and evaluation.
It is also possible to configure that application-specific process variables can
be read and modified using an OPC UA client.
Templates A file template for configuration of the process variables is available following
installation of the option package on the robot controller.
Directory C:\KRC\ROBOTER\Config\User\Common
File ProcessData.opcj
Restriction The data provided by the OPC UA server are not automatically updated in the
OPC UA client if a value is changed. On the client side, it must be ensured that
the data are regularly requested from the server.
OPC UA client In order to be able to process the data published with KUKA.OPC UA 1.0, an
OPC UA client is required. We recommend using the following demo client for
test purposes.
UaExpert v1.4.x and higher
The UaExpert demo client can be downloaded free of charge from the website
of Unified Automation GmbH:
www.unified-automation.com
Communication An OPC UA client must connect to the OPC UA server via the KLI of the robot
controller. As standard, the following port is specified for this:
Port 4840
Safety certificate KUKA.OPC UA 1.0 uses a self-signed safety certificate. This is transferred to
the OPC UA client when it connects to the OPC UA server on the robot con-
troller.
Use KUKA.OPC UA 1.0 is a control-related assembly and is used for reading and
writing variables. There are absolutely no safety-relevant functions. Safety-rel-
evant data cannot be influenced/written to via the interface.
The OPC UA server may be incorrectly configured so that some variables can
no longer be output. Operation in accordance with the intended use thus also
involves compliance with the configuration instructions in this documentation.
Misuse Any use or application deviating from the intended use is deemed to be misuse
and is not allowed. The manufacturer cannot be held liable for any damage re-
sulting from such use. The risk lies entirely with the user.
3 Safety
f
Overview If certain components in the industrial robot are operated, safety measures
must be taken to ensure complete implementation of the principle of “single
point of control” (SPOC).
The relevant components are:
Submit interpreter
PLC
OPC server
Remote control tools
Tools for configuration of bus systems with online functionality
KUKA.RobotSensorInterface
Since only the system integrator knows the safe states of actuators in the pe-
riphery of the robot controller, it is his task to set these actuators to a safe
state, e.g. in the event of an EMERGENCY STOP.
T1, T2 In modes T1 and T2, the components referred to above may only access the
industrial robot if the following signals have the following states:
Submit inter- If motions, (e.g. drives or grippers) are controlled with the submit interpreter or
preter, PLC the PLC via the I/O system, and if they are not safeguarded by other means,
then this control will take effect even in T1 and T2 modes or while an EMER-
GENCY STOP is active.
If variables that affect the robot motion (e.g. override) are modified with the
submit interpreter or the PLC, this takes effect even in T1 and T2 modes or
while an EMERGENCY STOP is active.
Safety measures:
In T1 and T2, the system variable $OV_PRO must not be written to by the
submit interpreter or the PLC.
Do not modify safety-relevant signals and variables (e.g. operating mode,
EMERGENCY STOP, safety gate contact) via the submit interpreter or
PLC.
If modifications are nonetheless required, all safety-relevant signals and
variables must be linked in such a way that they cannot be set to a dan-
gerous state by the submit interpreter or PLC. This is the responsibility of
the system integrator.
OPC server, These components can be used with write access to modify programs, outputs
remote control or other parameters of the robot controller, without this being noticed by any
tools persons located inside the system.
Safety measure:
If these components are used, outputs that could cause a hazard must be de-
termined in a risk assessment. These outputs must be designed in such a way
that they cannot be set without being enabled. This can be done using an ex-
ternal enabling device, for example.
Tools for configu- If these components have an online functionality, they can be used with write
ration of bus access to modify programs, outputs or other parameters of the robot control-
systems ler, without this being noticed by any persons located inside the system.
WorkVisual from KUKA
Tools from other manufacturers
Safety measure:
In the test modes, programs, outputs or other parameters of the robot control-
ler must not be modified using these components.
4 Installation
4
The option package can either be installed on the robot controller via the sm-
t
artHMI or via WorkVisual.
Resources Port 4840 must not be assigned in the KLI network configuration.
Compatibility KUKA.OPC UA 1.0 must not be installed on a robot controller together with the
following option packages:
KUKA.OPC Server 4.0 and 4.1
Procedure 1. Install the KUKA.OPC UA 1.0 option package in WorkVisual via Extras >
Option package management....
2. Load the active project from the robot controller insert the KUKA.OPC UA
1.0 option package into the project.
3. Configure the option package in WorkVisual as required.
4. Transfer the project to the robot controller, but do not activate it!
This means that if WorkVisual shows the transfer has been successfully
completed, click on Cancel in the WorkVisual Project Deployment win-
dow.
5. On the smartPAD: In the main menu, select Start-up > Additional soft-
ware.
5 Configuration
f
Description In addition to the predefined data from KUKA, the user can publish application-
specific process variables with the OPC UA server.
Publishable process variables are:
System variables ($ variables)
Global KRL variables
A file template for configuration of the process variables is available following
installation of the option package on the robot controller. The file follows a
JSON syntax and contains a configuration example.
(>>> 8.1 "Configuration file “ProcessData.opcj”" Page 27)
For configuration, the file template can be edited directly, or copied and edited
and then saved in the aforementioned directory with a different user-defined
name. Multiple opcj files can be saved in the directory.
The following is a description of the procedure for configuration using WorkVi-
sual.
6 Operation
Description In order to connect to the OPC UA server on the robot controller, it must be
added to the OPC UA client. The connection is established via the IP address
of the robot controller.
If the OPC UA client is connected to the OPC UA server, the current data are
retrieved from the robot controller and displayed in the Address Space win-
dow.
If an element is selected, its properties are displayed in the Attributes win-
dow.
Item Description
1 Objects folder
The folder contains the currently retrieved robot data.
2 Information about the robot system
Robot controller
Customer information
Kinematic systems
Process data
Safety status
3 Information from the OPC Foundation (not currently used by
KUKA)
4 Runtime information about the OPC UA server
5 Views folder
No Views are currently defined by KUKA.
6 Types folder
The folder contains the definitions for each object type used in the
Objects folder.
7 Information from the OPC Foundation (not currently used by
KUKA)
Item Description
1 Controller_1 object
The Controller_1 object provides the system messages of the sys-
tem software as OPC UA events.
(>>> 6.4 "Displaying the system messages in the client" Page 23)
2 KLI network configuration and performance indicators
Item Description
3 Electronic identification plate of the robot controller
Article number
Manufacturer
Model
Serial number
4 CPU and memory utilization plus operating system specification
5 Installed KUKA software package
6 Activity of robot interpreter and submit interpreter
7 Operating information
Robot controller runtime
Battery status
Activated project
8 Electronic components of the robot controller
For each kinematic system, a separate motion device object provides the fol-
lowing information:
Item Description
1 Motion device object
2 List with the axes of the kinematic system
3 Active load on the flange
4 Information about the active TCP and other coordinate systems
Item Description
5 Information about the motion execution
Path-maintaining
Motion status
Programmed Cartesian velocity
6 Electronic identification plate of the kinematic system
Article number
Manufacturer
Model
Serial number
For each axis of a kinematic system, the corresponding axis object provides
the following information:
Item Description
1 Axis object
2 Gear unit information
3 List with the motors of the axis
4 Electronic identification plate of the motor
Article number
Manufacturer
Model
Serial number
5 Information about the axis (current status)
Axis position
Axis velocity
Overall time axis is under servo control (operating hours)
Item Description
6 Information about the motor (current status)
Status of axis brake
Motor temperature
7 Active axis load (if present)
The safety states object provides information about statuses of the safety con-
troller, e.g.:
E-STOP
Operator safety
Enabling device
Operating mode
Description The OPC UA client can save any amount of static information in the OPC UA
server. Using the OPC UA client, the user can create the nodes with the de-
sired information and delete them again as required.
Description The system messages can be displayed in the UAExpert demo client. They
are provided by the Controller_1 object as OPC UA events.
Procedure 1. Select the menu sequence Document > Add > Event View to display the
Event View window.
2. Drag the Controller_1 object in the Address Space window to the Serv-
er/Object box in the Event View window by means of Drag&Drop. The
messages are displayed in the Events box.
7
T
Troubleshooting
7.1
s
No connection to the OPC UA server
Error
t
The OPC UA client can no longer establish the connection to the OPC UA
server on the robot controller.
Cause Port 4840 of the KLI, which is used for the OPC UA communication, has been
deactivated, e.g. by activating an earlier version of a WorkVisual project on the
robot controller following installation of KUKA.OPC UA 1.0.
Solution In order to be able to use the currently active project with KUKA.OPC UA 1.0,
the port must be enabled and the project must then be activated on the robot
controller again via WorkVisual.
Procedure 1. In the KLI network configuration, check whether port 4840 is present in the
NAT list; if not, enable the port:
a. In the main menu, select Start-up > Network configuration. The Net-
work configuration window opens.
b. Press Activate (KSS/VSS 8.2) or Advanced... (KSS/VSS 8.3). The
window for advanced network configuration opens.
c. Select the NAT tab. A list of all the enabled ports of the Windows in-
terface is displayed in the Available ports: area.
d. If the port is to be enabled:
i. Press Add port. A new port with the number “0” is added to the list.
ii. Enter 4840 in the Port number: box.
iii. Select tcp in the Permitted protocols: box.
iv. Press Save.
A maximum total of 40 ports can be enabled.
e. Close the Network configuration window using the Close icon.
f. Only if modifications have been made:
Reboot the robot controller so that the changes take effect. To do so,
if PROFINET is used, select Shutdown in the main menu and select
the option Reload files.
2. Load the active project from the robot controller in WorkVisual.
3. Transfer the project back from WorkVisual to the robot controller and acti-
vate it.
8
A
Appendix
8.1
x
Configuration file “ProcessData.opcj”
{
"data_sets": [
/* // Uncomment here.
{
// Name of the parent node in the OPC-UA structure.
"node": "ProcessData",
// Hierarchical path for the child node to be generated.
"id": "Example",
// Desired sampling rate applied to all variables in the data set
// (supported values >= 100)
"min_sample_time": 1000,
"descr": "A Commentary for the data set!",
// List of the system variables.
"data_points": [
{
// Alias (mandatory).
"id": "ControllerUptime",
// Complete variable system name (mandatory).
"sys_name": "$ROB_TIMER",
// Desired sampling rate applied to a single variable
// (optional, supported values >= 100).
"min_sample_time": 100,
// Mode of value update between OPC UA server and KSS.
// Push=false makes OPC UA server synchronously read variable
// values from controller via cyclic ShowVar calls
// (default and recommended setting).
// Push=true makes OPC UA server subscribe to acyclic SetInfo
// events (recommended if user is familiar with behaviour of
// controller’s Cross interface).
"push": false,
//Indicates whether the variable may be written by client
"writeable": false
}
]
}
,
{
"node": "ProcessData",
"id": "Special/SpecialData",
"min_sample_time": 1000,
"descr": "A commentary for the data set!",
"data_points": [
{
"id": "ModeOP",
"sys_name": "$MODE_OP",
"min_sample_time": 100,
"push": true,
"writeable": false
}
]
}*/ //Uncomment here.
]
}
9 KUKA Service
A
Availability KUKA Customer Support is available in many countries. Please do not hesi-
tate to contact us if you have any questions.
Index
A Safety instructions 5
Appendix 27 Server, adding in the client 17
Single point of control 9
C Software 11
Communication 7 SPOC 9
Compatibility 11 Support request 29
Configuration 15 System messages, displaying in the client 23
Controller_1 object 18 System requirements 11
Customer specific-information, integrating 21
T
D Target group 5
Documentation, industrial robot 5 TCP/IP 6
Templates 7
F Terms used 6
Functions 7 Trademarks 6
Training 5
H Troubleshooting 25
Hardware 11
U
I Uninstallation, smartHMI 13
Information model, overview 17 Update 11
Installation 11 Update, smartHMI 12
Installation via smartHMI 12 Use, intended 8
Installation via WorkVisual 11
Installation, smartHMI 12 W
Introduction 5 Warnings 5
IP 6
J
JSON 6
K
KLI 6
Knowledge, required 5
KUKA Customer Support 29
KUKA Service 29
L
Licenses 6
O
OPC 6
OPC UA client 7
OPC UA events 18
OPC-UA 6
Open source 6
Operation 17
Overview, information model 17
Overview, KUKA.OPC UA 1.0 7
P
Process data, configuring 15
Process variables 21
Product description 7
S
Safety 9
Safety certificate 7