kuka. camrob krc v3 - cadcamstore.nl · 1. robot: (by preference of type ha + absolute accurate)...

41
KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 1/41 Language : English Version : 2017-01-02 Reference : KUKA Software Documentation Author: KUKA Automatisering + Robots N.V. KUKA.CAMRob KRC V3.0 Option to KSS 8.3

Upload: dinhtruc

Post on 01-Mar-2019

335 views

Category:

Documents


14 download

TRANSCRIPT

Page 1: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 1/41

Language : English Version : 2017-01-02 Reference : KUKA Software Documentation Author: KUKA Automatisering + Robots N.V.

KUKA.CAMRob KRC V3.0 Option to KSS 8.3

Page 2: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 2/41

Copyright 2011/2012/2013/2014/2015/2016/2017 KUKA Automatisering + Robots N.V. Centrum-Zuid 1031 B-3530 Houthalen-Helchteren Belgium This documentation or excerpts therefrom may not be reproduced or disclosed to third parties without the express and written permission of the publishers. Other functions not described in this documentation may be operable in the robot controller or on the installation operation panel(s). The user has no claims to these functions, however, in the case of a replacement or service work. We have checked the content of the documentation for conformity with the hardware and software described. Nevertheless, discrepancies cannot be precluded, for which reason we are notable to guarantee total conformity. The information in this documentation is checked on a regular basis, however, and necessary corrections will be incorporated in subsequent editions. Subject to technical alterations without an effect on the function. KUKA Automatisering + Robots N.V. accepts no liability for any errors in technical information communicated orally or in writing in the training courses or contained in the documentation. Nor will liability be accepted for any resultant damage or consequential damage. In some cases, the documentation describes the functionality of non-KUKA material. These descriptions are added to obtain a consequent documentation. The sole valid documentation of these non-KUKA materials is the documentation of this equipment itself made by its manufacturer. Translation of the original documentation

Page 3: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 3/41

Contents

1 Introduction ....................................................................................................................................................... 5

1.1 Global concept ................................................................................................................................... 6

1.2 Concept of KUKA.CAMRob ................................................................................................................ 7

1.3 Components of a KUKA.CAMRob installation ................................................................................... 8

1.4 Milling tool components.................................................................................................................. 10

1.5 Definition of the tool frame ............................................................................................................. 11

2 Installation ........................................................................................................................................................12

2.1 Hardware requirements .................................................................................................................. 12

2.2 Software requirements.................................................................................................................... 12

2.3 Installing the software ..................................................................................................................... 12

2.4 Updating the software ..................................................................................................................... 12

2.5 Uninstalling the software ................................................................................................................ 12

2.6 Automatic software update............................................................................................................. 12

2.7 Configuration of the software ......................................................................................................... 13

3 License ..............................................................................................................................................................14

3.1 Requesting a license ........................................................................................................................ 14

3.2 Entering a license ............................................................................................................................. 14

3.3 Exchanging a robot .......................................................................................................................... 15

4 Configuration ....................................................................................................................................................16

4.1 Tool and base settings ..................................................................................................................... 16

4.2 I/O Interface assignment example .................................................................................................. 17

4.2.1 Digital inputs ............................................................................................................................ 17

4.2.2 Digital outputs ......................................................................................................................... 17

4.2.3 Analogue outputs .................................................................................................................... 17

4.3 Data path location ........................................................................................................................... 18

4.4 User defined parameters ................................................................................................................. 18

4.5 User KRL Subroutines ...................................................................................................................... 19

4.6 Visibility of the user routines ........................................................................................................... 20

4.7 Approximate positioning ................................................................................................................. 20

4.8 Optimal accelerations ...................................................................................................................... 22

5 Commands ........................................................................................................................................................23

5.1 Print message .................................................................................................................................. 24

5.2 Coolant ............................................................................................................................................ 24

Page 4: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 4/41

5.3 Feedrate........................................................................................................................................... 24

5.4 Delay ................................................................................................................................................ 24

5.5 UnloadTool ...................................................................................................................................... 25

5.6 LoadTool .......................................................................................................................................... 25

5.7 SpindleState ..................................................................................................................................... 25

5.8 SpindleVel ........................................................................................................................................ 26

5.9 Process file ....................................................................................................................................... 26

6 Examples ...........................................................................................................................................................28

6.1 Example program KUKA_Logo.src ................................................................................................... 28

6.2 Example program BotlleBottom.src ................................................................................................ 28

6.3 Configuration of the software ......................................................................................................... 28

7 Operating a CAMRob robot cell .........................................................................................................................29

7.1 The production screen ..................................................................................................................... 29

7.2 Production screen softkeys ............................................................................................................. 31

7.3 Configuring the production screen .................................................................................................. 31

7.4 Interrupting and restarting process commands .............................................................................. 31

8 Troubleshooting ................................................................................................................................................32

8.1 Error messages ................................................................................................................................ 32

8.2 Log files ............................................................................................................................................ 35

8.3 Monitoring KRL variables ................................................................................................................. 35

9 Using KUKA.CAMRob KRC without KUKA.CAMRob PC.......................................................................................37

10 File formats supported by the PROCESS command............................................................................................37

CSV Files ................................................................................................................................................... 37

BIN Files ................................................................................................................................................... 38

11 Contact address.................................................................................................................................................39

12 Release notes ....................................................................................................................................................40

13 Software license terms ......................................................................................................................................41

Page 5: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 5/41

1 Introduction The KUKA.CAMRob technology package makes it possible to machine shaped parts by means of tools adapted for use on the robot, and on the basis of data created using common CAD programs. Examples of practical applications include applications with soft-hard contact or no contact such as:

milling of shaped parts from soft materials such as wood, plastic, aluminum, etc., but not hard materials such as steel,

polishing of shaped parts,

coating of complex contours.

Fig. 1. Application example: Milling of a shaped part The KUKA.CAMRob technology package consists of two components:

KUKA.CAMRob KRC module for installation on a robot controller

KUKA.CAMRob PC module to convert CAM files, and to generate robot KRL (KUKA Robot Language) code. This module is installed on a PC or notebook computer.

This document concentrates on KUKA.CAMRob KRC. For the documentation on KUKA.CAMRob PC, see the on-line help which is installed together with this software.

Note. Although KUKA.CAMRob is suitable to control the robot in a lot of “path oriented processes”, this manual will concentrate on milling processes. Note. KUKA.CAMRob KRC also can be used without KUKA.CAMRob PC. Look for the appendix of this document for a description.

Page 6: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 6/41

1.1 Global concept

The global data flow between a CAD system and the program execution of a path process (such as milling), is visualized in the figure below. Following components can be distinguished

CAD (Computer Aided Drawing) system in which the CAD files are made

CAM (Computer Aided Manufacturing) system, which reads in the CAD files and which generates the CAM files used to process the parts

KUKA.CAMRob PC software, which reads in the CAD files and the CAM files and which writes out the KRL programs

KUKA.CAMRob KRC software, which runs on the robot controller

Fig. 2. Data flow between a CAD system and the program execution on a robot controller

Note. The CAD system, the CAM system are not part of KUKA.CAMRob. The PLC is not part of KUKA.CAMRob.

Page 7: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 7/41

1.2 Concept of KUKA.CAMRob

KUKA.CAMRob PC generates the KRL program which is loaded into the robot controller. At the same time, KUKA.CAMRob PC generates the BIN files containing the positions of the robot path. Both files are copied (e.g. by Ethernet access) to the robot controller. On the robot controller, the KRL program is loaded into the memory. When the robot program encounters the inline fold with the command “Process file”, a signal is sent to a “CAMRob DataTransfer” DLL. This program starts reading the points and process parameters from the BIN file and sends it to a ring buffer in the real-time system of the robot controller. The robot reads the data from the ring buffer and executes the path in the ring buffer and sets the process parameters found in the ring buffer.

Fig. 3. Concept of KUKA.CAMRob

Page 8: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 8/41

1.3 Components of a KUKA.CAMRob installation

The figure below shows the typical components of a robotic installation and which can be controlled by the KUKA.CAMRob software.

Fig. 4. Components in a small milling cell

1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC controller. 2. Additional control cabinet with digital IO, safety relais (optional) 3. Controller of high speed milling tool. 4. KRC2 Controller with additional control cabinet. 5. High speed milling tool. 6. Fixed table to position parts on and workpiece. 7. PC with CAM Software (not shown)

The following figures show more extended robot cells

Page 9: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 9/41

Fig. 5. Components in an extended milling cell

1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet. 3. Controller of high speed milling tool. 4. Automatic tool change system (eventually) 5. PC with CAM Software 6. Notebook computer of the robot programmer (eventually) 7. KL Linear axis (eventually). 8. Operator panel (eventually) 9. Positioner, configured as external robot axis (synchronous or asynchronous). 10. Fixed table to position parts on. 11. High speed milling tool. 12. Work piece: Part being milled 13. Two axis turn table

Notes

The above figure shows a possible CAMRob milling cell. Not all milling cells have all these components.

The combination of for example a turn table with a robot on a linear axis is possible.

Page 10: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 10/41

1.4 Milling tool components

Fig. 6. Milling tool mounted on a robot arm Figure 5 shows a milling tool on a robot arm. Following components can be distinguished

1. Robot dress package. 2. Motor, used to drive the cone and the tool. 3. The cone is a combination of an ISO cone and a holder. The ISO cone is clamped in the motor, the

holder contains the tool. 4. Tool, performing the milling process on the part being milled. 5. TCP or Tool Center Point, referenced to the robot flange. Defined as TOOL_DATA[xx]

Notes

KUKA.CAMRob is a software package and does not include any of the hardware listed above.

KUKA.CAMRob is a software toolbox which allows system integrators to build installations such as listed above. However, the software provided with KUKA.CAMRob needs to be adapted to every installation installed at the customer. For this, the system integrator, or even the end user has full access to the KRL code which drives the robot. This integration step is not included in the delivery of KUKA.CAMRob. This integration step requires profound knowledge in following areas: cell design, KRL expert level programming, machine data.

KUKA.CAMRob does not provide any process knowledge on this milling or deburring processes. The selection of the appropriate components, of the process parameters to control these components

Page 11: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 11/41

is the responsibility of the system integrator.

KUKA.CAMRob provides a method for the off-line programming of robots. Extra care is required for these applications. Read the license agreement carefully for this topic.

1.5 Definition of the tool frame

Fig. 7. Definition of the tool frame

In order to obtain proper orientation interpolation during the milling process, make sure the x-axis of the tool is defined as indicated in the figure above. The x-axis should be the negative push-direction of the robot tool.

Tool and base can be measured in different ways. We refer to the KUKA documentation on how to measure the tool and the base.

Page 12: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 12/41

2 Installation

2.1 Hardware requirements

A standard KR C4 Controller is needed. To communicate with the milling tool equipment or to the PLC controlling the milling equipment, typically digital IO is used.

2.2 Software requirements

- The KUKA controller should be equipped with Software 8.2 or 8.3. - Before KUKA.CAMRob KRC can be installed, KUKA.UserTech need to be installed.

Note. The software has been tested and released with Software 8.2 and 8.3. For other versions of the software, contact KUKA.

2.3 Installing the software

Detailed installing instructions can be found in the readme.txt file of the CD.

2.4 Updating the software

Before updating make an archive. Detailed installing instructions can be found in the readme.txt file of the CD. Check if the user routines are correct. If this is not the case copy the incorrect user routines from the archive to the robot controller.

2.5 Uninstalling the software

Select start up Additional software. Now select the software you wish to uninstall. After this press the uninstall button. Now reboot the controller.

2.6 Automatic software update

After an automatic software update of the KUKA System Software without a change in the release (e.g. 8.2.x1 to 8.2.x2), KUKA.CAMRob KRC will still be available. After an automatic software update of the KUKA System Software with a change in the release (e.g. 8.2 to 8.3), KUKA.CAMRob KRC will no longer be available. To perform an automatic software update while keeping KUKA.CAMRob KRC the following steps have to be followed: First step:

Make a backup of the robot controller Second step:

Perform the automatic software update Third step:

If KUKA.UserTech is no longer available on the controller, install KUKA.UserTech

Page 13: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 13/41

If KUKA.CAMRob KRC is no longer available on the controller, install KUKA.CAMRob KRC Fourth step:

If needed: copy back the user files from the backup

2.7 Configuration of the software

KUKA.CAMRob KRC does not support by default any spindle type. On the other hand, the software is versatile and allows configuring any spindle type to be controlled from within the robot controller. For this purpose a number of user programs are provided. In the section on the configuration of the software, these user programs are explained by using an example application.

Page 14: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 14/41

3 License

3.1 Requesting a license

All the information needed to order a license can be filled in on the SmartPad. Select MENU BUTTON > View > CAMROB PRODUCTION SCREEN. In the bottom section of the screen there is a LICENSE button. When you press this button you get the license request screen in which all the necessary data can be entered in order to request a license.

The product name and Robot serial number are already filled in and cannot be changed. For license type you can choose between a full license or a temporary license. Under Customer information the Name, company, address, email, order number and a comment should be filled in. Then by pressing the save button a file is written to C:\KRC\Roboter\Log\CAMRob_LicenseRequest.txt. This file contains all the data needed to generate the license key and it can be attached to the official order of the product. Should this file not be attached, then the product name, robot serial number and license type should be clearly mentioned in the order.

Fig. 1. The License request screen.

Note: When the software is installed in KUKA.OfficeLite or on an Office PC, no license is needed.

3.2 Entering a license

After receiving a license it can be entered on the Smartpad. Select MENU BUTTON > Start-UP > Licenses > CAMRob. The license key can be entered in the text box. Then press the “Validate” button. If the license key is correct then the textbox and validate button will disappear and instead it will show a “Valid license” message.

Page 15: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 15/41

Fig. 2. The License key screen.

3.3 Exchanging a robot

The license key is only valid for the robot with the given serial-number. When there is a full license installed and the robot has to be exchanged due to a hardware malfunction or crash. Then instead of shutting down the license will switch to a 30 day grace period during which a new key can be requested for the new robot.

Page 16: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 16/41

4 Configuration The configuration of a robot milling cell is explained on the basis of the following example: The KUKA logo is to be milled in a block (Width 180mm / Length 380 mm / Height 150 mm), by a robot, type KR60HA. The robot is controlled by the KR C controller, the milling tool by a controller type IBAG 35KWAL10.

Notes

The example below uses a bus interface to communicate with the controller of the milling tool. We refer to the standard KUKA documentation on how to setup other bus systems or how to assign the inputs and outputs to other addresses as in the example.

The KRL programs and the BIN files for milling this logo are installed by the setup of KUKA.CAMRob KRC. Do not execute these programs without measuring the tool and base used in these programs. The program for milling the robot is made for a KR60HA robot. When executing this program on another robot, be sure that the positions are correct.

The examples listed below might differ from your installation. The example is provided as an example and is provided as-is.

4.1 Tool and base settings

The tool centre point is to be defined in the top of the milling tool, in this way that the X-axis lays inwards the milling tool (see figure 7). The base is defined in the corner of the logo, see figure below.

Fig. 7. Tool and base for the example program

Page 17: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 17/41

Notes

In order to obtain proper orientation interpolation during the milling process, make sure the x-axis of the tool is defined as indicated in the figure above.

Tool and base can be measured in different ways. We refer to the KUKA documentation on how to measure the tool and the base.

4.2 I/O Interface assignment example

The file R1\System\$config.dat can be extended to contain the communication signals to the controller of the milling equipment. The interface signals needed for the logo example are described here. The configuration of digital IO on a KUKA KRC controller is outside the scope of this manual. It is assumed for the rest of the manual that following digital IO is defined:

4.2.1 Digital inputs

Inputs coming from the spindle controller:

Input Input nr. Meaning

I_SPINDLE_READY $IN[9] Drive controller : production ready

I_SPINDLE_FREQ_0 $IN[10] Drive controller : frequency 0

I_SPINDLE_FREQ_REACHED $IN[11] Drive controller : requested frequency reached

Inputs coming from the tool change unit:

Input Input nr. Meaning

I_TOOL_CLAMPED $IN[13] Tool clamped in tool change unit on robot

I_TOOL_FREE $IN[14] Tool in tool change unit on robot, not clamped

I_NO_TOOL $IN[15] No tool in tool change unit on robot

4.2.2 Digital outputs

Output Output nr. Meaning

O_IBAG_ON $OUT[4] Switch on IBAG Controller (MAINS)

O_RESET_SPINDLE $OUT[9] Drive controller : Reset

O_SPINDLE_START $OUT[10] Drive controller : Start / Stop

O_CLAMP_TOOL $OUT[11] Clamp tool in tool change unit on robot

4.2.3 Analogue outputs

Output Output nr. Meaning

AO_SPINDLE_V $ANOUT[1] Desired spindle rotation speed

Page 18: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 18/41

4.3 Data path location

After processing the CAM input data, KUKA.CAMRob PC writes out a KRL (KUKA Robot Language) program, as well as a robot position data file (*.bin). These programs are written to a user defined network place. As these files are read out by the “CAMRob-DataTransfer”, this network place should be entered in R1\TP\CAMROB\CAMROB.DAT. The data file location is determined by the KRL variable “CR_sDATA_PATH[]”, which determines the network location of the CAMRob data files. The default location is set to the directory “D:\ApplicationsData\”. Example:

DECL CHAR CR_sDATA_PATH[200] CR_sDATA_PATH[]="D:\ApplicationsData\"

Example 1: Definition of the application path in R1\TP\CAMROB\CAMROB.DAT.

4.4 User defined parameters

In addition to the necessary position data, the CAM data file can contain up to 26 user parameters (See also section CAM Data format information). In this way, process parameter settings can be set for each position in the data file. On the controller these 26 user parameters are declared as CR_rPARAMS[1], CR_rPARAMS[2], …CR_rPARAMS[26]. In case of the example of the KUKA logo, the following user parameters are used:

CR_rPARAMS[1] = CNC Line number.

CR_rPARAMS[2] = Feedrate in mm/s. This is the robot speed.

CR_rPARAMS[3] = Spindle state. (Off=0/On=1)

CR_rPARAMS[4] = Spindle speed (rpm)

CR_rPARAMS[5] = Spindle rotation (CLW=0/CCLW=1)

CR_rPARAMS[6] = Coolant (Off=0/On=1/Mist=2/Flood=3)

CR_rPARAMS[7] = Tool number.

CR_rPARAMS[8] = Acceleration in mm/s². This is the robot acceleration.

CR_rPARAMS[9..14] = External axis1..6. The user defined parameters are split into two groups depending on the moment they are set. The first group of parameters is set by the robot advance run, these parameters are correlated with the robots movements (CR_rPARAMS[2, 8, 9-14]). The second group of parameters are set at the moment the robot moves to the corresponding position, they are correlated with the process parameters (CR_rPARAMS[1, 3-7]).

Page 19: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 19/41

These parameters are read together with the position data, and executed when starting the motion to the according position. The code to activate these settings is written into the user subroutines “CR_USER_PARAMS_ADV” and “CR_USER_PARAMS_TRIG” and can be found in the detailed program description. In the case of user programs that have been generated for an older version of KUKA.CAMRob PC, the user subroutine “CR_USER_PARAMS” is still available on the controller. For these older programs the robot accelerations are not yet declared in the robot position data file (*.bin).

4.5 User KRL Subroutines

As there are several milling tool controllers, the interface to these components is to be programmed by the user in so called “user subroutines”. These routines are executed when the according inline form is accessed in the robot program. The next chart gives an overview of the inline forms and their corresponding user routines:

Inline form According user routine

Coolant (option OFF) cr_user_coolant_off.src

Coolant (option ON) cr_user_coolant_on.src

Coolant (option FLOOD) cr_user_coolant_flood.src

Coolant (option MIST) cr_user_coolant_mist.src

SpindleState (option ON) cr_user_spindle_on.src

SpindleState (option OFF) cr_user_spindle_off.src

SpindleVel cr_user_spindle_vel.src

LoadTool cr_user_load_tool.src

LoadTool cr_user_load_tool.dat

UnloadTool cr_user_unload_tool.src

UnloadTool cr_user_unload_tool.dat

These user routines can be found under C:\KRC\ROBOTER\KRC\R1\TP\CAMRob.

Concept

When configuring KUKA.CAMRob KRC for your robot installation, you need to edit and adapt the above listed subroutines. Editing these subroutines only can be made in Expert Mode. The exact contents of your subroutines depends on the milling tool (or other tool) which needs to be controlled. In the various subroutines, the example of controlling an IBAG motor over digital IO is already provided (but commented out).

Notes

Using trigger commands in the User KRL Subroutines should be avoided. This can lead to the errors “1433 max number of interrupts on" and "1441 interrupt priority inadmissible"

An advance run stop should be prevented in all User KRL Routines. The command CONTINUE must be programmed immediately before the relevant instruction. The controller then allows the advance run to continue. (See KUKA Expert Programming Handbook)

Page 20: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 20/41

4.6 Visibility of the user routines

By default the visibility of the camrob.src program is switched off. This means that the robot interpreter will not show the program run inside the camrob.src program whenever a call to this program is made. The visibility of camrob.src is switched off because it may slow down the processing speed of the controller. The visibility of the user routines is switched on, but because these routines are called from inside camrob.src they will also not be shown. If they are called directly from inside a user program, they will be shown by the robot controller. For debugging of the user routines it might be useful to temporarily switch the visibility of camrob.src on. This can only be done in expert mode. Make sure that camrob.src is highlighted in blue in the navigator. Then go to the module info screen by pressing the menu key ‘File > Attributes’ and selecting the tab page ‘Module info’. On that tab page, the module attribute ‘Visible’ can be switched on or off. In the same way, the visibility of the user routines can be switched off if desired.

4.7 Approximate positioning

In order to increase velocity, the robot does not position exact in each point. Instead of stopping in each position, the positions are approximated. Although the approximate positioning contour is

automatically generated by the controller, the operator can influence this contour. We refer to the KUKA documentation for the complete approximate positioning settings, but basically, the following possibilities are offered: Velocity criterion A percentage value (%) can be assigned to the variable CR_rAPO_CVEL. This value specifies the percentage

of the programmed velocity ($VEL) at which the approximate positioning process is started, at the earliest, in the deceleration phase of the individual block. Distance criterion A translational distance (mm) can be assigned to the variable CR_rAPO_CDIS. If the approximate

positioning is triggered by this variable, the controller leaves the individual block contour, at the earliest, when the distance from the end point falls below the value in CR_rAPO_CDIS. By default, the distance criterion is activated, at 2mm. This is generally a good setting. If necessary, this setting can be changed by editing the following variables in R1\TP\CAMROB\CAMROB.DAT:

Parameter Meaning

CR_eAPO #CDIS The distance criterion is activated for the CAMRob process command #CVEL The distance velocity is activated for the CAMRob process command

CR_rAPO_CDIS 2 mm Approximation distance in mm

CR_rAPO_CVEL 10 % Approximation velocity in % of programmed velocity

In R1\TP\CAMROB\CAMROB.DAT these variables are declared as followed:

DECL CR_APO_TYPE CR_eAPO=#CDIS … REAL CR_rAPO_CDIS=2 REAL CR_rAPO_CVEL=10

Page 21: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 21/41

Example 2: Definition of the corner rounding values in R1\TP\CAMROB\CAMROB.DAT

It is also possible to use different approximation settings for each program or for each process command in a program. This can be done by editing the user program and adding the following expert code: To activate the distance criterion:

CR_eAPO=#CDIS CR_rAPO_CDIS=2

Example 3: Definition of the corner rounding for distance in a SRC program file or in R1\TP\CAMROB\CAMROB.DAT

To activate the velocity criterion:

CR_eAPO=#CVEL CR_rAPO_CVEL=10

Example 4: Definition of the velocity rounding values in a SRC program file or in R1\TP\CAMROB\CAMROB.DAT.

Notes

The larger the values in $APO.CDIS or $APO.CVEL, the earlier the approximate positioning begins. In certain circumstances, the system may shorten approximate positioning (middle of the block, symmetry criterion), but will never lengthen it. For the complete explanation, we refer to the KUKA documentation.

These approximation settings only apply to the motions executed by the CAMRob Process command. For all other motions the normal KRL approximation settings apply

Beware that if the approximation settings are changed at program level, these settings will stay active until they are changed by another program. A user program that does not change the approximation settings itself will therefore take over the settings made by a previously run program.

Page 22: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 22/41

4.8 Optimal accelerations

In order to smooth the motions during a milling process KUKA.CAMRob PC calculates an optimal acceleration for the motions towards every point. It is possible to switch of the use of these accelerations and simply use the standard KRC acceleration settings. This can be done by editing the following variable in the R1\TP\CAMROB\CAMROB.DAT:

Parameter Meaning

CR_bUPDATE_ACC TRUE The optimal accelerations that are stored in the robot position data file (*.bin) are used FALSE The standard KRC acceleration settings are used.

Page 23: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 23/41

5 Commands KUKA.CAMRob KRC provides a number of inline folds which extend the standard set of robot commands to commands suitable for milling processes. These commands are accessible in the “CAMRob” menu available under “COMMANDS”.

Notes

Every command can be modified or edited in user mode or in expert mode

Every command does call a subroutine, to which the parameters of the command are passed. These routines are listed in section on the configuration of the software. The system integrator or the end user adapts the called routines to his own needs.

Print message Write a message to the message bar. Coolant Turn the supply of coolant on / off, or set it to mist or flood. Feedrate Set the robot speed during motion execution. DelayTime Delay the program execution for a certain time. UnloadTool Decouple the current tool on a tool change unit. LoadTool Couple a tool from a tool change unit. SpindleState Switch the motor of the spindle on or off. SpindleVelocity Activate the motor rotation speed and direction settings. ProcessFile Execute a CAM file.

Page 24: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 24/41

5.1 Print message

“Print message” writes the entered text to the message bar. The length of the text to be written to the screen is limited to 40 characters. Inline form for “Print message” command

5.2 Coolant

Using the “Coolant” command, the supply of coolant can be switched on / off, or set to flood and mist.

Parameter Meaning

State OFF Deactivate the supply of coolant. ON Activate the supply of coolant. FLOOD Supply a flood of coolant to the tool. MIST Supply a mist of coolant to the tool.

Inline form for “Coolant” command

As a result of this command, the according user routine will be executed (cr_user_coolant_off.src, cr_user_coolant_on.src, cr_user_coolant_flood.src or cr_user_coolant_mist.src)

5.3 Feedrate

The robot speed during motion execution can be determined using the command “Feedrate”. The robot speed is limited from 60mm/min to 120000mm/min. (=0.001m/s to 2m/s). By default, the feedrate is set to 1000 mm/min. Inline form for “Feedrate” command

5.4 Delay

The delay command allows to program wait times between 0 and 60 seconds.

Page 25: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 25/41

5.5 UnloadTool

Unload the current tool from the robot. To be used only in case of a tool change unit. Inline form for “UnloadTool” command

This command results in the execution of the user routine, cr_user_unload_tool.src.

Note. This command is normally programmed by the system integrator or the end user so that the robot undocks the currently loaded tool and sets itself in a safe home position.

5.6 LoadTool

In order to attach a tool to the robot, in case of a tool change unit, CAMRob provides in the command “Load Tool”. Inline form for “LoadTool” command

As a result of this command, the user routine, cr_user_load_tool.src, will be executed.

5.7 SpindleState

“SpindleState” is used to switch the motor on or off.

Parameter Meaning

State ON Activate the spindle (or turn motor on). OFF Deactivate the spindle (or turn motor off).

Inline form for “SpindleState” command

As a result of this command, the according user routine will be executed (cr_user_spindle_on.src, cr_user_spindle_off.src).

Page 26: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 26/41

5.8 SpindleVel

Using the “SpindleVel” command, motor settings can be adjusted. The spindle velocity is limited from 0 to 100000 rpm. By default, the spindle velocity is set to 1000 rpm.

Parameter Meaning

SpindleVel Spindle rotation speed, in RPM Minimum value : 0 RPM Maximum value : 100.000 RPM

Rotation CLW Clockwise CCLW Counter clockwise

Inline form for “SpindleVel” command

To activate these settings, the according code should be written in the user routine cr_user_spindle_vel.src.

Note. For safety issues the maximum spindle velocity for motions executed inside a process command is limited to 15000 rpm. This value can be changed by editing the CR_iSPINDLE_MAX variable in the R1\TP\CAMROB\CAMROB.DAT.

5.9 Process file

Reading out the position data file and executing it, is done over the command “Process file”. The parameters to give in are listed below:

Parameter Meaning

File Contains the name of the file to be processed. The name length, including the extension is limited to 200 characters. The following file types are supported: - Files with extension BIN - Files with extension CSV - Files with extension TXT More information can be found in section CAM Data format information

Start record First record to be processed in the position data file. This is the robot start position. Minimum value: 1. This corresponds to the beginning of the file. Maximum value: Last record number in the position data file.

End record End record to be processed in the position data file. If the parameter “End record” is set to -1, the position data file is processed until the end.

Checksum Checksum on compatibility of src and bin file.

Inline form for “Process file” command

Page 27: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 27/41

Notes.

This is the most important command of the KUKA.CAMRob KRC technology package. Once this command is executed, a signal is sent to the communication program which starts sending position values and process parameters to the ring buffer. Depending on the size of the file, the motions start typically after 2 or 3 seconds. The delay is caused by the calculation of the Checksum of the BIN file. For bigger files, this delay might be longer. Setting the Checksum value to OK, the calculation of the Checksum is suppressed. It is not advised to suppress the calculation of the Checksum as this guarantees that the SRC and BIN file are compatible.

The file logo_3ax.bin is located in the subdirectory KUKA_Logo\ of the data path. Typically the file is located at D:\ApplicationData\KUKA_Logo\logo_3ax.bin with D: being the second partition on the hard disk of the robot controller.

KUKA.CAMRob PC writes out BIN files.

Page 28: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 28/41

6 Examples

6.1 Example program KUKA_Logo.src

On the CDRom of KUKA.CAMRob KRC, an example program for milling the KUKA Roboter Logo (Edition 2004) is provided. Look for the source code on the KUKA.CAMRob KRC CD-Rom for more information on the source code executed. The example focusses on the manufacturing of this logo on a robot cell which is equipped with a KUKA KR60HA robot and an IBAG high speed spindle. This is an example of 2D milling without changes in the orientation during milling.

6.2 Example program BotlleBottom.src

On the CDRom of KUKA.CAMRob KRC, an example program for milling the bottom of a bottle (Edition 2004) is provided. Look for the source code on the KUKA.CAMRob KRC CD-Rom for more information on the source code executed. The example focusses on the manufacturing of this logo on a robot cell which is equipped with a KUKA KR60HA robot and an IBAG high speed spindle. This is an example of 3D milling with changes in the orientation during milling.

6.3 Configuration of the software

Notes.

Both examples are tailored for a milling cell with a spindle of the company IBAG. Spindles of other manufactures or even other spindles of company IBAG might have to be controlled in a different way as explained below. It is the responsibility of the system integrator to write the appropriate KRL code for his application. Note that the example displayed below is also available in the files installed by the setup of KUKA.CAMRob, but has been commented out (remove the comment signs “;” to make the code available).

For an explanation of the KRL code used, the user is referred to the KUKA programming manuals.

The configuration of the user routines, such as listed in the configuration chapter, only has to be made once, during the commissioning of the robot.

Page 29: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 29/41

7 Operating a CAMRob robot cell The operation of a CAMRob cell is defined by the system integrator. KUKA.CAMRob KRC adds a production screen for a visualisation process for the operator and adds a method for interrupting and restarting process commands.

7.1 The production screen

KUKA.CAMRob KRC provides a plugin, accessible over the menu ‘CAMRob Production Screen’, under ‘Monitor’, which visualizes the actual milling process:

Page 30: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 30/41

Fig. 8. The KUKA.CAMRob KRC Production Screen This production screen provides the following information: Indicators 1. Position data file which is being processed (in the example d:\camrob_data\kuka_logo\logo_3ax.bin. 2. Indication of the ring buffer usage. The ring buffer can have 1000 points in 20 sectors of 50 points (in

the example the buffer is filled for 99.9%). . 3. Start position in the position data file. This number corresponds to the ‘Start record’ into the process

command (in the example, the start position is 1). 4. End position in the position data file (in the example, the end position is 18322). This number

corresponds to the ‘End record’ into the process command. 5. Actual point being processed (in the example, the robot is at point 5974) 6. Remaining time for the Process to be completed (in this example the remaining time is 30 minutes) Watches 7. Actual robot feed rate [mm/min]. 8. Actual time and indication of the remaining time 9. Actual spindle rotation speed [rpm]. Soft keys 10. Operator soft keys to adjust the spindle speed and federate (See 5.2).

Note. Updating the production screen is done using the subroutine “UPDATE_VISU” in the submit interpreter SPS.sub. The status of the submit interpreter can be checked in the status bar on the robot controller. Start SPS.sub if necessary. For more information on the use of the submit interpreter, we do refer to the KUKA documentation.

Page 31: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 31/41

7.2 Production screen softkeys

KUKA.CAMRob KRC provides 2 softkeys for the operator to change the speed of the spindle, as well as the speed of the robot:

Using this softkey, the operator can change the spindle speed. By default, the speed can be changed between 1% and 200% of the spindle speed as set in the position data file, or by the command “SpindleVel”. It is an additional override, valid for all positions in a position data file, as well as for all executed process commands.

Using this softkey, the operator can change the robot speed. By default, the speed can be changed between 1% and 200% of the robot speed as set in the position data file, or by the command “Feedrate”. It is an additional override, valid for all positions in a position data file, as well as for all executed process commands.

7.3 Configuring the production screen

Softkey settings The production screen softkeys „Spindle“ and „Feed“ can by default vary between 1 and 200%. These limits however can be adjusted using the following KRL variables:

Parameter Meaning

CRV_iMAN_SPINDLE_MIN Integer value to determine the minimum spindle speed override [%]. Default value: 1%.

CRV_iMAN_SPINDLE_MAX Integer value to determine the maximum spindle speed override [%]. Default value: 200%.

CRV_iMAN_FEED_MIN Integer value to determine the minimum robot speed override [%]. Default value: 1%.

CRV_iMAN_FEED_MAX Integer value to determine the maximum robot speed override [%]. Default value: 200%.

7.4 Interrupting and restarting process commands

During the execution of a process command the robot will actually perform a multitude of small linear motions. When pressing the red stop button on the KCP during the execution of the process command, the robot behaviour is the same as with a normal motion command. The robot will stop. Even when the operating mode is changed from automatic to manual and the robot is jogged, the process command can still be resumed. The last motion that was being executed before interrupting the robot program will be executed as a block coincidence run.

Page 32: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 32/41

8 Troubleshooting

8.1 Error messages

The following is a list of possible error messages and how to eliminate them: Message: (1) File not found Cause: Requested data file not found. Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible if the problem is

solved. Remedy: Check the file name / path entered in the inline form “ProcessFile”. Otherwise, check the

file path, entered in the R1\TP\CAMROB\CAMROB.DAT, under the parameter “CR_sDATA_PATH[]”.

Message: (2) Unknown file type Cause: File extension differs from the known file types “*.txt”, “*.bin”, “*.csv”. Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible if the problem is

solved. Remedy Check the file name entered in the inline form “ProcessFile”. Message: (4) CAMRob DataTransfer does not react Cause: The 'CAMRob – PlugIn’, which reads out the position data file, does not react within the

allowed time, on a request of the controller to set/reset its counters, or to process a file. Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Remedy: Check whether the 'CAMRob – PlugIn’ runs. Check whether the location of the data file

corresponds to the path, entered in the R1\TP\CAMROB\CAMROB.DAT. If needed, restart the robot controller.

Message: (5) Sequence error previous point was... Cause: The CAMRob data file contains records with non-successive record numbers. The previous

record number, as indicated in the error message, should be successive to the next record number, which is indicated in the additional error message 'Next point is ...'. (Next should be previous + 1).

Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible in hand mode

(T1/T2). Remedy: Verify the contents of the CAMRob data file. Check whether the file is complete, and the

record numbers successive. Regenerate the file if necessary and reset the robot program. Message: (6) Next point is...

Page 33: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 33/41

Cause: The CAMRob data file contains records with non-successive record numbers. The record number which is being processed, as indicated in the error message, should be successive to the previous record number.

Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible in hand mode

(T1/T2). Remedy: Verify the contents of the CAMRob data file. Check whether the file is complete, and the

record numbers successive. Regenerate the file if necessary and reset the robot program. Message: (7) Ring buffer empty Cause: The 'CAMRob - DataTransfer' DLL was not able to fill a sub-buffer within the allowed time. Monitoring: On execution of the inline form “Process file“. Effect: Robot keeps checking whether valid data is present or not. Remedy: Check whether the 'CAMRob - DataTransfer' DLL runs, and start if necessary. Message: (8) Undefined error Cause: Data transfer program encountered an unexpected internal error. Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible if the problem is

solved. Remedy: Check the file format. Otherwise, restart the controller. Message: (9) Record ... not found in Cause: Start record number not found in the data file. Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible if the problem is

solved. Remedy: Change the start record number. Message: (10) Problem with reading data from file Cause: File format not according specifications. Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible if the problem is

solved. Remedy: Check the file format. Message: (11) Problem with writing KRL variable Cause: Communication error between windows and KRC. Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible if the problem is

solved. Remedy: Restart the controller. Message: (12) Process-file stopped incorrectly

Page 34: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 34/41

Cause: The record being processed contains data, which is by windows defined as invalid. The 'CAMRob-PlugIn' is possibly shut down during file processing.

Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible in hand mode

(T1/T2). Remedy: Reset the robot program. Message: (13) Requested end record not reached Cause: The requested number of records to be processed differs from the number of processed

records. E.g. The requested 'Total records' exceeds the number of records in the position data file.

Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible in hand mode

(T1/T2). Remedy: Modify the parameter 'Total records' in the corresponding inline form and reset the

program. Message: (14) Invalid record input Cause: The end record number precedes the start record number. Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible in hand mode

(T1/T2). Remedy: Modify the parameters 'Start record' and ‘End record’ in the corresponding inline form. Message: (15) Robot status changed due to singularity Cause: An unwanted status change in a singularity point is expected. Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Continuation of the program is only possible in hand mode

(T1/T2). Remedy: Move the base to avoid sigularity. Message: (16) Inconsistence SRC and DAT Cause: The KRL program src file is generated for another dat file. Monitoring: On KRL program start. Effect: Program execution stops. Continuation of the program is only possible in hand mode

(T1/T2). Remedy: Reload src- and dat- file from hard drive. Message: (17) Inconsistence SRC and BIN Cause: The KRL program src file is generated for another bin file . Monitoring: On execution of the inline form “Process file“. Effect: Program execution stops. Remedy: Check the bin file or type “OK” in the crc-field of the process file inline form

Page 35: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 35/41

8.2 Log files

Serious errors during setup or process are logged into the directory C:\KRC\ROBOTER\LOG. - Setup errors: V3_0_0_CAMRob_Setup.log

8.3 Monitoring KRL variables

All the KRL Variables can be monitored by the KUKA-HMI: - A single variable, over the menu MENU BUTTON > VARIABLE > SINGLE - Multiple variables, over the menu MENU BUTTON > VARIABLE > OVERVIEW > DISPLAY. Over the tabbed

panels “Data Transfer” and “RingBuffer Status”, the process state is reported:

Fig. 9 KRL variables Tab-panel DataTransfer:

Variable Meaning

Sub-buffer Number of sub-buffer which is being executed by the robot controller.

Record in sub-buffer

Number of record in the sub-buffer, that is being executed by the robot controller.

Point number Record/point number which is being processed by KRL or executed by the robot.

Prev point number

Last executed record/point number.

Page 36: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 36/41

Tab-panel RingBuffer status:

Variable Meaning

Sub-buffer x Status of sub-buffer x. Possible status is:

Status Meaning

UNVALID Initialisation value at the beginning of executing the inline form “file process”.

KRC_READS KRC (VxWorks) is copying the data of the sub-buffer .

KRC_FINISHED KRC (VxWorks) has finished reading out the sub-buffer. From now on, the sub-buffer is being executed.

WIN_FILLS Windows (Progr. CAMRob-DataTransfer) is filling the sub-buffer.

WIN_WRITTEN Windows (Progr. CAMRob-DataTransfer) has finished filling the sub-buffer. KRC can start reading it out.

Note. Before using the variable overview visualisation, this menu has to be configured first. This can be done by overwriting the contents of the “C:\KRC\USER\configmon.ini” file with those of the “C:\KRC\USER\configMon_CAMRob_EN.ini” file.

Page 37: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 37/41

9 Using KUKA.CAMRob KRC without KUKA.CAMRob PC The KRC controller stores by default all program files into memory. As the memory of the robot is limited, the number of motion commands which can be executed are limited. KUKA.CAMRob KRC offers a way to overcome this memory limitation by introducing a ring buffer mechanism. The point data and the corresponding process data are stored in a BIN file which is read by a CAMRobDataTransfer DLL which passes the points and the process data to the robot controller. This mechanism allows to work with data sets of more than 100.000 points. Example - An example program file kuka_logo.src is located on the cdrom of KUKA.CAMRob KRC

10 File formats supported by the PROCESS command The CAMRob position data file, read by the PROCESS command, contains all necessary information for the robot to execute a complete milling cycle. This position data file can be supplied in different data formats, but basically it always contains the following data: - A record number. This is the line number in the data file, or the robot position number. - The actual robot position (X,Y,Z) and orientation (A,B,C). - The positions are expressed in millimetres, the orientation angles in degrees - All position values are valid with respect to the currently active base - Additional process data, which is optional, and can contain up to 26 values.

Nr. X[mm] Y[mm] Z[mm] A[deg] B[deg] C[deg] P1 … P26

CSV Files A file with extension “CSV” contains values, divided into rows for each record. The records are divided into columns (maximum 34) by using a semicolon as separator sign. Common remarks - The columns P1 to P26 defining the process parameters are optional and may be omitted. - A CSV-file can contain empty lines. - Comments can be added to the CSV file, as long as it starts with a “#” sign - When adding process parameters P1 to P26, make sure the CR_rPARAMS[] variables in the robot

controller are defined (projected) properly. - The use of BIN files is favoured over the use of CSV files. Example

1;196.204;84.325;-0.277;0.000;0.000;0.000;0.025 2;177.646;84.325;-0.413;0.000;0.000;0.000;0.025 3;55.479;84.325;-1.674;0.000;0.000;0.000;0.025 4;54.863;84.325;-1.722;0.000;0.000;0.000;0.025

Page 38: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 38/41

BIN Files BIN-files are binary files defined by KUKA. These files contain the same data set as described above, preceded by a header. Header The BIN file contains a header of 96 bytes. This header is defined as

(5char) "MOMLI" : unique sequence of characters (Long) Number of points (rows) in file (Byte) Number of bytes on one row (Long) Not used (26char) Dataset of 26 characters, defining the data for each point (row) (Single) Minimum X value of all points (Single) Minimum Y value of all points (Single) Minimum Z value of all points (Single) Minimum A value of all points (Single) Minimum B value of all points (Single) Minimum C value of all points (Single) Minimum delta distance value of all points (Single) Maximum X value of all points (Single) Maximum Y value of all points (Single) Maximum Z value of all points (Single) Maximum A value of all points (Single) Maximum B value of all points (Single) Maximum C value of all points (Single) Maximum delta distance value of all points

The dataset (26 chars) for robot cells without external axes is "SSBSBBBS" followed by 18 blancs. The dataset (26 chars) for a robot with external axes is "SSBSBBBSSSSSSS" followed by 12 blancs. Positions The positions in the BIN file are expressed in X, Y, Z, A, B, C coordinates. X, Y, Z are positions, which are expressed in millimeters. A, B, C are angles, which are expressed in degrees. The A, B, C angles are so called Euler Angles defining uniquely defining the orientation of the tool with respect to the current active base. The position data hence is

(Single) X value, expressed in mm (Single) Y value, expressed in mm (Single) Z value, expressed in mm (Single) A value, expressed in degrees (Single) B value, expressed in degrees (Single) C value, expressed in degrees

Process parameters Depending on the definition in the header, multiple process parameters can be added to each point coordinate. These parameters are

(Long) Line number (Single) Feedrate, expressed in m/s

Page 39: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 39/41

(Byte) Spindle on command (OFF=0, ON=1) (Single) Spindle speed, expressed in rpm (Byte) Spindle rotation direction (CLW=0, CCLW=1) (Byte) Coolant command (OFF=0, ON=1, FLOOD=2, MIST=3) (Byte) Tool number (Single) Acceleration, expressed in m/s2 (Single) E1 value, expressed in mm or degrees (Single) E2 value, expressed in mm or degrees (Single) E3 value, expressed in mm or degrees (Single) E4 value, expressed in mm or degrees (Single) E5 value, expressed in mm or degrees (Single) E6 value, expressed in mm or degrees

Remarks

The tool number needs to be the same for all points in the file

The line number is an increasing value, which starts at 1 (one)

For robots without external axes, the values E1 to E6 are not used

A Long is represented by 4 bytes, a single is represented by 4 bytes, a char is one byte

Metric units are used (MM, MPS, RPM, DEG) Example The file logo_3ax.00.bin, located on the CDRom of KUKA.CAMRob KRC contains a header with following data

XMax = 200 YMax = 263.434 ZMax = 50 DMax = 88;899 XMin = 0 YMin = 0 ZMin = -1 DMin = 0 Number of lines = 379

11 Contact address KUKA Automatisering + Robots N.V. Centrum-Zuid 1031 B-3530 Houthalen Tel +32 (0)11.51.61.60 Fax +32 (0)11.52.67.94 Email. [email protected] Web. www.kuka.be

Note When contacting KUKA, make sure to have following data available at hand:

Page 40: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 40/41

Version of KUKA.Sim Pro

Version of the KUKA.Connect PC product

Product key and order confirmation number of KUKA.

Telephone number and e-mail address at which you can be reached

Detailed description of your problem (screen shots, English, German)

12 Release notes Look for the file ReleaseNotes\ReleaseNotes.txt on the product CD-Rom, USB-Stick or software downoload of this product for the latest release notes..

Page 41: KUKA. CAMRob KRC V3 - cadcamstore.nl · 1. Robot: (by preference of type HA + absolute accurate) driven by the KUKA KRC2 controller. 2. KRC Controller with additional control cabinet

KUKA Automatisering + Robots N.V. | Centrum-Zuid 1031 | B-3530 Houthalen-Helchteren | Belgium | [email protected] | www.kuka.be

WP | 2017-01-02 | E:\Perforce_Local\KUKA.CAMRobKRC\3.0\Docu\KST_CAMRob_KRC_30_EN.docx Page 41/41

13 Software license terms Please read the following License carefully. By purchasing the Software product, or by installing or using it, Licensee agrees with the

terms and conditions contained herein

1. The subject matter of this License is the Software product which has been pre-installed or recorded on a data medium, including contents such as illustrations, diagrams, text and sample applications, and all associated documentation.

2. Licensor grants Licensee a nonexclusive, irrevocable, perpetual license to use the Software, subject to the confidentiality provisions of this License. No right to grant sublicenses is granted hereunder, unless the prior written consent of Licensor is obtained. All copyrights and other intellectual property rights are retained by the Licensor and the Licensor’s subcontractors.

3. The License includes:

· use of the Software product on a single computer;

· if multiple licenses are purchased, use of the Software product on as many computers as Licenses were purchased;

· creation of one backup copy. Licensee agrees to reproduce and include the copyright notice on any such copy.

The License does not include updates/upgrades, unless such were expressly specified as part of the scope of supply.

4. Neither the Licensee nor third parties may copy, modify, or separate components of the Software product, i.e. they may not disassemble or decompile it or carry out reverse engineering. In addition, the Software product may not be transferred on to third parties, leased, or sold.

5. The Licensee may not remove copyright notes or any other indications of legal ownership from the Software product.

6. Licensor warrants Licensor has the right to license the Software product and grant the rights granted herein. The Licensor further warrants: that the data medium is free of material and manufacturing defects; that when used as agreed the Software product substantially conforms to the associated documentation; and that it does not contain any defects which render it incapable of use or substantially reduces its utility. The warranty period is 3 months, commencing on the date of delivery.

All other warranties and guarantees, whether statutory or implied in law, are excluded, and waived by Licensee, including, but not limited to merchantability, fitness for a particular purpose, or assurance that intellectual property rights of third parties will not be infringed.

7. The Licensor shall be liable only for damage resulting from

wilful or gross negligence. Licensor shall not be liable for

indirect, special, incidental, or consequential damages,

expenses or lost profits, lost savings, loss of data, business

interruption or other similar damages resulting from use of the

Software product, or from the fact that the Software product

could not be used. Licensor's entire liability with respect to the Software shall be as set forth herein.

8. In addition, the Licensee and User is responsible for the selection of software and hardware, for installation and use, for the expected results, and for data privacy and data protection.

9. Licensor may at any time, verify (audit) the use of the Software product and in such case, Licensee agrees to provide reasonable assistance to the Licensor.

10. The Licensee is obliged to treat all corporate and technical information of Licensor confidentially. Licensee agrees to protect such information by using the same degree of care, but no less than a reasonable degree of care, to prevent the unauthorized use, dissemination, or publication of the corporate and technical information of Licensor as Licensee uses to protect its own corporate and technical information of a like nature. Belgian laws on honest trade practices shall apply.

11. KUKA Automatisering + Robots N.V.”s General Terms of Delivery and Performance shall apply to this License. In case of contrariness of any clause this licence agreement is overriding applicable.

12. If individual provisions of this License are or become invalid, the validity of the remaining provisions shall remain unaffected. Invalid provisions shall be replaced by valid provisions whose effect comes closest to the intended commercial purpose of the invalid provisions.

13. This Agreement shall be construed according to, and the rights and obligations of the parties shall be governed under the laws of Belgium.

14. This License and all documents specifically referenced herein constitute the entire agreement between Licensor and Licensee in connection with this License and supersedes all prior and contemporaneous agreements, understandings, negotiations, and discussions of the parties.

15. This License may be cancelled by Licensor if any material provisions hereof or of KUKA Automatisering + Robots N.V.’s General Terms of Delivery and Performance are breached by Licensee.

16. Licensee warrants that, in the use of the Software, it shall comply with all applicable governmental laws, codes and regulations.

17. Any waiver of strict compliance with this License or KUKA

Automatisering + Robots N.V.”s General Terms of Delivery and

Performance by Licensor must be in writing and signed by

Licensor, and any such waiver shall not constitute a waiver of

Licensor’s rights under any other provision of this License or

the General Terms of Delivery and Performance.