You are on page 1of 235

K-IDE

Kawasaki IDE
User manual
Manual of the K-IDE Foreword

Foreword

This manual describes the K-IDE software used for Kawasaki robots. The
purpose of this manual is to provide information on the structure of the K-
IDE system, basic usage and all commands/instructions. The operation of
the robot is only partially described here; please refer to the correspond-
ing user manual for this information. This manual should be read with due
regard to the manuals that accompany it. Once the contents of all manu-
als have been thoroughly read and understood, the K-IDE can be used
with the robot.

The contents of this manual are described on the assumption that the in-
stallation and connection of the robot has been carried out in accordance
with the manuals provided.

The explanations provided in this manual also include information on op-


tional devices; depending on the specification of each unit, not every opti-
cal function performed here may be included in the robot or controller. If
any questions arise during operation of the robot that are not answered by
this manual, please contact Kawasaki Robotics GmbH. The address and
the forum are given below.

Contact:

Kawasaki Robotics EMEA


tech-support@kawasakirobot.de
+49 (0) 2131 – 3426 – 1310
Forum:

https://www.kide-forum.eu

I
Manual of the K-IDE Foreword

1. The described software K-IDE is a freeware, which is provided free of


charge.
2. Kawasaki shall not be liable for any accidents, damages, and/or prob-
lems related to commercial property as a result of using the software.
3. It is recommended that all personnel assigned to activate the opera-
tion, teaching, maintenance or inspection of the robot attend the nec-
essary education/training course(s) prepared by Kawasaki before as-
suming their responsibilities.
4. Kawasaki reserves the right to change, revise or update this manual
without notice.
5. This manual may not be reprinted or copied in whole or in part without
prior written permission from Kawasaki Robotics GmbH.
6. Keep this manual carefully and within easy reach so that it can be used
at any time. If the manual is lost or seriously damaged, contact Kawa-
saki Robotics GmbH.

Copyright © 2021 by KAWASAKI Robotics EMEA

All rights reserved.

II
Manual of the K-IDE Symbols

Symbols

The elements that require special attention in this manual are marked
with the following symbols.

Ensure correct operation of the robot and prevent injury or damage to


property by following the safety instructions in the boxes with these sym-
bols.

WARNING

Failure to observe the specified contents may re-


sult in injury or death.

[ATTENTION]
Indicates precautions regarding robot specifi-
cations, handling, teaching, operation and
maintenance.

WARNING
1. The accuracy and effectiveness of the diagrams, proce-
dures and explanations in this manual cannot be con-
firmed with absolute certainty. Should any unexplained
problems occur, please contact Kawasaki Robotics GmbH
at the above address.

2. To ensure that all work can be carried out safely, please


read and understand this manual. Furthermore, all rele-
vant laws, regulations and related materials must be ob-
served, as well as the safety declarations described in
each chapter. Prepare appropriate safety measures and
procedures for actual work.

III
Manual of the K-IDE Descriptions

Descriptions

The following writing rules are used in this manual:

For a specific key press, the respective key is placed in angle brackets,
e.g. <F1> or <Enter>.

The button designation for a particular button in a dialogue box or from


the toolbar is enclosed in square brackets, e.g. [Ok] or [Cancel].

IV
Manual of the K-IDE Table of contents

Table of contents

Foreword .......................................................................................... I
Symbols ........................................................................................ III
Descriptions .................................................................................... IV
Table of contents .............................................................................. V
1 Nomenclature in this manual ........................................................ 1
1.1 Gender declaration ................................................................. 1
1.2 Loading and saving files .......................................................... 1
1.3 Upload and download of AS data to and from the robot ............... 3
1.4 Naming AS data ..................................................................... 3
2 Overview of the K-IDE ................................................................. 4
2.1 Description of the K-IDE system ............................................... 4
2.2 The K-IDE in interaction with the robot ...................................... 5
2.2.1 Supported controllers ...................................................... 7
2.3 Installation of the K-IDE Software............................................. 8
2.4 First launch of the K-IDE ....................................................... 12
2.5 Connection of the K-IDE to the robot ...................................... 13
2.5.1 Connection to the robot via Ethernet (recommended) ........ 13
2.5.1.1 Parameterization of the Ethernet interface .................... 14
2.5.1.2 Settings in the K-IDE ................................................. 19
2.5.2 Connection to the robot via RS-232C ............................... 20
2.5.3 Connection to the robot via Bluetooth .............................. 22
2.5.3.1 Parameterization of the Bluetooth connection on the
controller............................................................................... 23
2.5.3.2 Settings in Windows ................................................... 24
2.5.3.3 Bluetooth settings in the K-IDE.................................... 27
2.5.4 Connection to a virtual robot (K-Roset) ............................ 28
2.5.5 Advanced network connectivity ....................................... 30
3 The user interface of the K-IDE ................................................... 32
3.1 General Information .............................................................. 32
3.1.1 The offline and online mode ........................................... 32

V
Manual of the K-IDE Table of contents
3.1.2 Generating and regenerating an AS file ............................ 33
3.2 Menu bar ............................................................................. 34
3.2.1 File management .......................................................... 34
3.2.1.1 New ......................................................................... 34
3.2.1.2 Open ........................................................................ 34
3.2.1.3 Open "DaSi" directory ................................................ 34
3.2.1.4 Last opened .............................................................. 35
3.2.1.5 Close file................................................................... 35
3.2.1.6 Save ........................................................................ 35
3.2.1.7 Save as .................................................................... 35
3.2.1.8 Save as template ....................................................... 35
3.2.1.9 Compare AS file with each other .................................. 35
3.2.1.10 End program. .......................................................... 36
3.2.2 Connection ................................................................... 36
3.2.2.1 Connection Manager................................................... 36
3.2.2.2 Connect .................................................................... 36
3.2.2.3 Disconnect ................................................................ 37
3.2.2.4 Reinitialize connection ................................................ 37
3.2.2.5 Switch on source code monitoring ................................ 37
3.2.2.6 Switch off source code monitoring................................ 37
3.2.2.7 File operations ........................................................... 38
3.2.2.8 Loading data from the robot ........................................ 38
3.2.2.9 Load system data from robot... ................................... 38
3.2.2.10 Send everything to the robot ..................................... 38
3.2.2.11 Marry project with robot ........................................... 38
3.2.2.12 Online toolbox ......................................................... 39
3.2.2.13 Remove synchronization mark ................................... 41
3.2.3 The AS Toolbox............................................................. 42
3.2.3.1 Signal allocation ........................................................ 42
3.2.4 Search bar ................................................................... 43
3.2.5 Tab pages .................................................................... 43
3.2.6 Window ....................................................................... 43
VI
Manual of the K-IDE Table of contents
3.2.7 Options........................................................................ 44
3.2.7.1 Settings .................................................................... 44
3.2.7.2 AS-Syntax ................................................................ 44
3.2.7.3 Colours ..................................................................... 44
3.2.8 Help ............................................................................ 44
3.2.8.1 Manual ..................................................................... 44
3.2.8.2 Check for updates... ................................................... 44
3.2.8.3 Support Forum .......................................................... 44
3.2.8.4 Program Info ............................................................. 45
3.3 The parent toolbar ................................................................ 46
3.4 Project structure tree ............................................................ 47
3.5 AS structure tree .................................................................. 48
3.5.1 Operations in the AStree ................................................ 49
3.5.1.1 Toolbar of the AS Structure Tree.................................. 49
3.5.1.2 Context menu in the AS Structure Tree ........................ 52
3.5.1.3 The tab bar of the editor area ...................................... 56
3.5.2 AS Source code ............................................................ 56
3.5.3 Robot / controller .......................................................... 56
3.5.4 Protocols ...................................................................... 57
3.5.4.1 Error log ................................................................... 58
3.5.4.2 Operating protocol ..................................................... 60
3.5.4.3 Program execution protocol ......................................... 60
3.5.5 Project comment........................................................... 61
3.5.6 Interface panel ............................................................. 64
3.5.7 Translation points ......................................................... 66
3.5.8 Precision points ............................................................ 67
3.5.9 Reals ........................................................................... 68
3.5.10 Integer ........................................................................ 69
3.5.11 Strings ........................................................................ 69
3.5.12 Signals ........................................................................ 70
3.5.13 Boolean definitions ........................................................ 70
3.5.14 Tool/ Frame/ Basic definitions......................................... 71
VII
Manual of the K-IDE Table of contents
3.5.15 Programs, Tasks, NumPG ............................................... 71
3.5.16 Visualizations in the AS Structure Tree ............................ 72
3.5.16.1 Filled categories ....................................................... 72
3.5.16.2 Changed categories .................................................. 72
3.6 Editor area........................................................................... 73
3.6.1 Text editor ................................................................... 73
3.6.2 Variable list editor ......................................................... 75
3.7 Terminal window .................................................................. 76
3.8 Inspection list ...................................................................... 77
3.8.1 Adding expressions to the inspection list .......................... 79
3.8.1.1 Parameterization of single command multi-line result ..... 80
3.8.1.2 Multicommand single result parameterization ................ 81
3.8.2 List of predefined commands .......................................... 81
4 Dialogue windows...................................................................... 82
4.1 File operations...................................................................... 82
4.1.1 File New....................................................................... 82
4.1.2 Close file ...................................................................... 83
4.1.3 Save file as template ..................................................... 83
4.1.4 New project comment.................................................... 87
4.1.5 Entry in the project history ............................................. 87
4.1.6 Compare AS files with each other .................................... 88
4.1.6.1 Recommended settings of WinMerge ............................ 89
4.2 Connection operations ........................................................... 89
4.2.1 Connection Manager ...................................................... 89
4.2.1.1 Add a connection ....................................................... 90
4.2.1.2 Edit connection data ................................................... 90
4.2.2 Establish connection ...................................................... 90
4.2.3 Disconnect ................................................................... 93
4.2.4 Reinitialize connection ................................................... 94
4.2.5 Load system data from the robot .................................... 95
4.2.6 Send everything to the robot .......................................... 96
4.2.7 Marry project with robot ...............................................100
VIII
Manual of the K-IDE Table of contents
4.2.8 Abort and kill programs ................................................102
4.2.8.1 Abort and kill the foreground program .........................102
4.2.8.2 Abort and kill background programs ............................104
4.2.8.3 Abort and kill NumPG program ...................................104
4.2.9 Start main program ......................................................104
4.2.10 Set coordinate systems.................................................106
4.2.11 Moving robots..............................................................107
4.2.12 Online variable list .......................................................109
4.2.13 Remove online variables and programs ...........................110
4.2.14 Clean up signal name list ..............................................111
4.3 AS-Toolbox .........................................................................112
4.3.1 Signal allocation ..........................................................112
4.3.1.1 Simple signal allocation .............................................112
4.3.1.2 Extended signal allocation ..........................................114
4.4 Search operations ................................................................117
4.4.1 Search for an identifier .................................................117
4.4.2 Search text .................................................................119
4.5 Program Options..................................................................122
4.5.1 Settings ......................................................................122
4.5.1.1 General settings .......................................................122
4.5.1.2 Online options ..........................................................124
4.5.1.3 Text comparison .......................................................126
4.5.1.4 Connection settings ...................................................127
4.5.2 AS-Syntax...................................................................128
4.5.3 Colors.........................................................................129
4.6 Help operations ...................................................................131
4.6.1 Updates ......................................................................131
4.6.1.1 Check for updates .....................................................131
4.6.1.2 Update ....................................................................132
4.6.2 The K-IDE Support Forum .............................................132
4.6.3 Program information ....................................................134
4.7 Dialog box in the project tree ................................................135
IX
Manual of the K-IDE Table of contents
4.7.1 Create customer group .................................................135
4.7.2 Edit customer group .....................................................135
4.7.3 Create new customer ...................................................136
4.7.4 Edit customer data .......................................................136
4.7.5 Create new project group ..............................................137
4.7.6 Edit project group ........................................................137
4.7.7 Create new project .......................................................138
4.7.8 Edit project .................................................................138
4.7.9 Create new project file..................................................139
4.7.10 Edit project file ............................................................139
4.8 Dialog boxes in the editor windows ........................................139
4.8.1 Operations in the Text Editor .........................................139
4.8.1.1 Search function ........................................................139
4.8.1.2 Search and replace ...................................................140
4.8.1.3 Local variables..........................................................141
4.8.1.4 Regenerate ..............................................................143
4.8.2 Keyword operations......................................................143
4.8.2.1 Keyword assistance ...................................................143
4.8.3 Identifier operations .....................................................144
4.8.3.1 Create identifier (variable) .........................................145
4.8.3.2 Edit identifier ...........................................................150
4.8.3.3 Teach position ..........................................................150
4.8.3.4 Teach current position with reference ..........................151
4.8.3.5 Move to position .......................................................151
4.8.3.6 Change / control variable content ...............................152
4.9 Program Operations .............................................................155
4.9.1 Create new program .....................................................155
4.9.2 Edit Program Header ....................................................156
4.9.3 Create new program group............................................156
4.9.4 Delete program ...........................................................156
4.9.5 Loading programs from the robot ...................................157
4.9.6 Send programs to the robot ..........................................158
X
Manual of the K-IDE Table of contents
4.9.7 Program error during upload .........................................159
4.9.8 Program Manager ........................................................159
4.9.8.1 Editing the program structure.....................................160
4.9.8.2 Selection of programs ...............................................161
5 Using the K-IDE (Workflow) .......................................................164
5.1 General handling of the various control elements .....................164
5.1.1 Selection of objects ......................................................164
5.1.2 Filtering lists................................................................166
5.1.3 Copy, cut and paste .....................................................167
5.1.4 Edit, add and delete object ............................................168
5.2 Load / Receive / Import AS data into the K-IDE .......................168
5.2.1 Open file (load project from AS file) ...............................170
5.2.1.1 Import AS data .........................................................170
5.2.2 Receive AS data from robot ...........................................170
5.2.2.1 Partial loading from robot ..........................................171
5.2.3 Paste AS data from the clipboard ...................................171
5.3 Save / Send / Export AS data ................................................174
5.3.1 Save file (Save project to AS file)...................................174
5.3.1.1 Export AS data .........................................................175
5.3.2 Send AS data to the robot .............................................175
5.3.2.1 Partial sending of AS data to the robot ........................175
5.3.2.2 Handling K-IDE documentation during upload ...............175
5.3.3 Copy or cut data to the clipboard ...................................176
5.4 Creation of programs and program structures .........................176
5.4.1 Program call structure using the example of "KRG ............177
5.4.2 Create new program .....................................................178
5.4.3 Include the new program into the call structure ...............183
5.4.4 Tips on how to use the auto-complete function ................183
5.4.5 Naming of variables / identifiers ....................................183
5.5 Creating and editing variables ...............................................185
5.5.1 Creating variables ........................................................185
5.5.2 Editing variables ..........................................................186
XI
Manual of the K-IDE Table of contents
5.5.3 Change of the variable name .........................................187
5.5.4 Variable handling in offline and online mode ....................188
5.5.5 Transmission of variables and variable lists .....................190
5.5.5.1 The synchronization marker for variable lists ................190
5.6 Data transmission between K-IDE and robot during commissioning
191
5.6.1 Upload of programs ......................................................191
5.6.2 Download of programs ..................................................192
5.6.3 Up- and download of the interface panel .........................193
5.6.4 Up- and download of system data ..................................193
5.7 Troubleshooting in robot programs ........................................193
5.7.1 Troubleshooting during commissioning ...........................193
5.7.1.1 Inspection of variables ..............................................193
5.7.1.2 Cyclical observation ..................................................194
5.7.1.3 Observe signals ........................................................195
5.7.1.4 Checking the program sequence .................................195
5.7.2 Troubleshooting after commissioning ..............................195
5.8 Working with additional axes .................................................196
5.9 Working in "DuAro mode ......................................................197
6 Annex .....................................................................................198
6.1 Short-cut commands in the K-IDE .........................................198
6.2 Hotkey commands in the text editor.......................................200
6.3 Motion types of the robot ......................................................203
6.4 Editing menus of the interface panel ......................................204
6.4.1 Pilot Lamp ...................................................................205
6.4.2 Push button.................................................................206
6.4.3 Push Button with lamp ..................................................207
6.4.4 Two-position switch ......................................................208
6.4.5 Three-position switch ...................................................209
6.4.6 Digital switch ...............................................................210
6.4.7 Digital display ..............................................................211
6.4.8 Variable display ...........................................................211

XII
Manual of the K-IDE Table of contents
6.4.9 String window .............................................................212
6.4.10 Monitor Command........................................................212
6.4.11 Palletiser Icon..............................................................213
6.4.12 String Data Display ......................................................213
6.4.13 Two-position switch with lamp .......................................214
6.4.14 Three position switch with lamp .....................................215
6.4.15 Servo Dispenser ..........................................................216
6.5 Tab Actions .........................................................................217

XIII
Manual of the K-IDE Nomenclature in this manual

1 Nomenclature in this manual

In this section you will find the definitions of the terms used in this man-
ual.

The author of the manual tries to use general terms to achieve the great-
est possible logical sense. Unfortunately, it must be noted that the terms
are reversed depending on the point of view when looking at one and the
same topic. It should also be noted that in the course of computer and
software history, concepts have developed in different ways. Therefore,
you will not find any terms in a modern manual that always do 100% jus-
tice to every expert opinion.

1.1 Gender declaration

For better readability, this manual uses the language form of the generic
masculine. It is pointed out at this point that the exclusive use of the mas-
culine form should be understood independently of gender.

However, this is in no way intended to express gender discrimination or a


violation of the principle of equality.

1.2 Loading and saving files

The terms "load" and "save" are very clear and are used in almost every
software. Most of the time it describes the opening of a file and, in return,
the saving of the edited data into a file.

If we look in the "AS Language Manual" e.g. for the Kawasaki E-Controller,
the terms "Load" and "Save" are used in connection with the "KRTerm"
software. This is a terminal program with which you can log on to the ro-
bot and perform actions from there. Here the point of view is very im-
portant! Since one is virtually "on the robot" after logging on to the robot
using KRTerm, loading an AS file means both opening the file and trans-
ferring it to the robot. The same applies to saving the data. The "KRTerm"
program used has no meaning in this logic, because the program itself
does not process the data.

The situation is different when you look at the K-IDE. Here the data is not
loaded into the robot when a file is opened, but into the K-IDE. The data is
then displayed on the screen for editing and can be saved again after edit-
ing. This loading and saving do not imply a transfer of data to and from
the robot.

1
Manual of the K-IDE Nomenclature in this manual
In connection with the loading and saving of data, one must also mention
the import and export of AS data. This is a special form of loading and
saving.

While loading and saving is rather based on a complete AS file (here called
AS project or K-IDE project), the files for import or export are mostly not
complete AS files or not all parts of the AS file are used for import or ex-
port. Another difference between Load/Save and Import/Export is that
when you load an AS file, this file is displayed as a new K-IDE project,
whereas an Import adds the AS file to the project that is currently open.

2
Manual of the K-IDE Nomenclature in this manual
1.3 Upload and download of AS data to and from the robot

Different terms are generally used for sending and receiving data. In our
opinion, the terms "upload" and "download" have become widely accepted
in recent years.

The K-IDE uses the following terminology to describe sending and receiv-
ing:

Send data to the robot Receive data from the robot


Upload Download

Please also note the arrow direction in the diagram above, which indicates
the direction of data flow and can be found on all icons related to sending
and receiving AS data to/from the robot.

1.4 Naming AS data

AS data is handled in the form of text data. When the data is stored, it is
called an AS file. In this manual, AS files are also occasionally referred to
as "project files". AS data that is currently loaded in the K-IDE is called AS
project or K-IDE project in this manual.

3
Manual of the K-IDE Overview of the K-IDE

2 Overview of the K-IDE

The Kawasaki robots are controlled by a software-based system called AS.


An integrated development environment (IDE) has been developed for this
system, which makes it much easier to use the AS language, as it offers a
wide range of functions and allows the files to be better structured. In this
chapter the complete overview of the K-IDE is presented.

WARNING

When operating a robot with the K-IDE, it is nec-


essary to always have an emergency stop switch
close to the operator, because the K-IDE can be
used to move the robot.

2.1 Description of the K-IDE system

The K-IDE provides an environment where all functions are combined to


create, edit and commission a robot program. In addition, the K-IDE sup-
ports troubleshooting during program development and also afterwards
during operation.

The K-IDE supports the programmer in the management of variable lists


and programs with different types of editors. In addition, the K-IDE pro-
vides logical links between the individual components of the AS system,
which makes it easier for the programmer to recognize connections and to
get a quicker overview of program structures.

4
Manual of the K-IDE Overview of the K-IDE
2.2 The K-IDE in interaction with the robot

For the interface between robot and K-IDE a controller of the F series has
been chosen as an example. However, the K-IDE also supports other con-
troller series.

By connecting a PC on which the K-IDE is installed, the following activities


can be carried out, among others:
 Creating and editing AS projects
 Download and upload of AS data from robot to PC and vice versa
 Creating projects for structuring AS files
 Documentation of the AS file by implemented comment function
 Comparison of the PC AS file with that of the robot

5
Manual of the K-IDE Overview of the K-IDE
The following figure shows the connection of the F-Controller including K-
IDE schematically:

F-Controller
(front)

F-Controller
(Rear)

Teach pendant

Robot connection
cable

Robot arm

(RS007)

6
Manual of the K-IDE Overview of the K-IDE
2.2.1 Supported controllers

The K-IDE is mainly designed for newer E-controllers and for F-controllers
with the “standard firmware” (handling firmware). In addition, the K-IDE
also supports DuAro robots with D- and F-Controllers. More controller and
firmware types will follow in the future.

Controller type (standard firmware) Support


C-controller untested
D-controller partial
D+-controller partial
D-controller DuAro full
older E-controllers partial
newer E-controllers full
F-controller full

The long-term goal is a comprehensive support of all controllers and all


firmware types.

7
Manual of the K-IDE Overview of the K-IDE
2.3 Installation of the K-IDE Software

The robot can be controlled with the K-IDE from a personal computer (PC)
using the AS language. For this purpose, you have to install the software
K-IDE - Kawasaki IDE on the PC. The minimum PC requirements are listed
in the table below:

Feature Minimum requirement


Operating system Microsoft Windows 7 32 bit or higher
Storage space about 100 MB
RAM 1 GB
Display resolution XGA
necessary pro- .NET Framework (version 4.5 or higher)
grams

[ATTENTION]
The software may not function properly if the
features are not described or are of inferior
quality.

The K-IDE Software must be installed on the PC according to the following


procedure.

Copy the software for the K-IDE provided by Kawasaki to any location on
the PC. Start the installation file KIDE-Setup-X.X.X.X.exe and execute the
program. The following steps show the installation with pictures. In gen-
eral, you can go back one step with the [Back] button and go to the next
step with the [Next] button. If the program is aborted, a warning message
will also appear, stating that the installation should be aborted. There you
have the opportunity to reconsider whether the installation should not be
carried out.

8
Manual of the K-IDE Overview of the K-IDE
1. The first step is to select the lan-
guage for the setup. Here you
can select German, English or
Japanese. This decision influ-
ences the language of the actual
program at the first start. There
you can subsequently set or
change the language in the options. (see chapter "3.2.7.1 Settings" on
page 44)

2. The second step is the license


agreement for the K-IDE, which
you should read thoroughly. If the
agreement is accepted, the next
step is the installation. Only if the
license agreement is accepted can
the installation be continued.

9
Manual of the K-IDE Overview of the K-IDE
3. In the further course of the installa-
tion a welcome text and the data
protection information will follow.
These texts serve as information
that should be read thoroughly. It
should be mentioned that the data
protection information explains that
the program does not send any
personal data. The software only
starts a query to the servers and
asks for an update. A special case is the feedback. There you can find
further information regarding data security.

4. At the next step you should decide


for a **-bit version. This decision
depends on the system type of the
computer. If you don't have exact
information about this, you can look
under the Windows settings Device
Info System Type to see what
system type your PC has.
Recommendation: 64 bit, if possi-
ble.

5. In this step, you should select for


whom the software is made availa-
ble. This can only be selected if you
are the administrator of the com-
puter. Otherwise, the only option is
to perform an installation for your-
self.

10
Manual of the K-IDE Overview of the K-IDE
6. Here you are asked for the target directory where the installation files
are to be saved. If an older K-IDE version already exists, you should
choose the same directory.

[ATTENTION]
Multiple parallel installed ver-
sions may cause error messages
in the program, because fea-
tures may not have been availa-
ble or implemented in the older
version.

7. This step checks whether files from


older K-IDE versions already exist in
the selected directory. You can de-
cide whether the displayed files are
to be overwritten or whether they
are to remain the same. Since these
files are used to save e.g. own set-
tings of the program, it is recom-
mended not to overwrite them. In
case of a first installation no existing files are displayed.

8. Additional tasks can be set up in the


further course, which are executed
by the setup. You can choose
whether you want to have a desktop
icon or not.

11
Manual of the K-IDE Overview of the K-IDE
9. In this step you only have to press
the install button. If there are still
changes to be made, you can press
the [Back] button.

10. When the installation is com-


plete, the information that it is fin-
ished will appear. You can now use
the K-IDE. The Setup Wizard can be
continued to the last step by press-
ing the [Next] button.

11. In the last step, you can select


whether you want to start the K-IDE
directly before exiting the setup
wizard. Finally, press the [Finish]
button to close the wizard and com-
plete the installation.

Once the installation is complete, the K-IDE can be used.

2.4 First launch of the K-IDE

After the installation you can start the K-IDE. To do this, click on the cor-
responding program icon on the desktop or select the program from the
Windows Start menu.

12
Manual of the K-IDE Overview of the K-IDE
The K-IDE always starts in offline mode.

You can now open existing AS files, load AS data from the robot or start
with a template under "File / New" (e.g. "KRG").

2.5 Connection of the K-IDE to the robot

The following describes the steps to connect the K-IDE to the robot. Since
the K-IDE supports multiple controllers, the connection is shown with the
F series controller as an example.

The connection can be made in the two or three ways described in the fol-
lowing subchapters.

2.5.1 Connection to the robot via Ethernet (recommended)

The notebook can be connected to the controller with an Ethernet cable.


To do this, plug the Ethernet cable into the corresponding connector on
the notebook and the other end into the port shown in the picture below:

13
Manual of the K-IDE Overview of the K-IDE
For the Ethernet cables use straight cables with an RJ45 connector. The
connectors are assigned as shown below:

Pole Name Content


1 TD+ Send+
2 TD- Submit-
3 RD+ Receive+
4 Not used
5 Not used
6 RD- Received-
7 Not used
8 Not used

2.5.1.1 Parameterization of the Ethernet interface


When configuring the Ethernet interface, make sure that the interface on
the notebook is set to "Static IP address" and that the IP address on the
notebook is in the same number circle (subnet) as the IP address of the
robot.

First check the robot's network settings and set the IP address if neces-
sary. By default, Ethernet port 1 is set to the IP address 192.168.0.2.

You can use the teach pendant to check and set the IP address on the ro-
bot. To do this, press the "Aux" button in the main screen:

14
Manual of the K-IDE Overview of the K-IDE
Then follow the menu items in the "Aux Menu" under "System/Network
Setting/Ethernet Port Setting":

The "Ethernet Port Settings" window appears with the settings of the first
Ethernet port (on the front of the controller). If you want to use the sec-
ond Ethernet port (back of the controller), you can press on the “Next
Page” page or <A>+<Down Arrow> on the teach pendant.

Make a note of the displayed address or change the address to your liking
and exit the settings.

15
Manual of the K-IDE Overview of the K-IDE
Then set the IP address of your network card in the notebook or PC. You
will find the settings under "Windows Start/Settings/Network and Inter-
net":

In the window that now appears, select the "Change adapter options" but-
ton:

The selection of network cards installed in the computer opens:

16
Manual of the K-IDE Overview of the K-IDE
Select the entry "Ethernet" from the selection shown above. The following
window opens:

Click here on "Properties" and the following window will open:

17
Manual of the K-IDE Overview of the K-IDE
Here you select Internet Protocol Version 4 (IPv4) to finally get to the IP
address settings:

Set a fixed IP address in this dialog by selecting the radio box "Use the
following IP address". You can then enter the IP address of your network
card. Note that the IP address must match the robot’s IP address in the
first three digits. In the fourth digit, however, the address must be differ-
ent. For the above-mentioned IP address on the robot (192.168.0.2), the
first three digits (192.168.0) must therefore also be assigned in the net-
work configuration. The fourth digit (the "2" on the robot) must be differ-
ent. In the example, "99" was selected as the address of the network
card.

Robot setting

PC setting

Please also note that the network address setting depends on many other
factors. The above-mentioned setting is not possible or useful in all envi-
ronments. Especially if several different participants are also present in
this network, one is forced to use other network addresses.

18
Manual of the K-IDE Overview of the K-IDE
2.5.1.2 Settings in the K-IDE
This chapter describes the settings in the K-IDE to establish an Ethernet
connection to the robot.

Start the K-IDE and select the button with the lightning icon from the
toolbar or the entry "Connect" from the "Connection" menu.

A list with predefined connections appears. The following connections are


already available ex works:

Since the default address of our example is already available in the list,
we can select the entry "Standard" and establish the connection with
[Connect] or by double-clicking on the entry.

If you have selected a different address in the robot, you must create a
new entry in the list before you can establish the connection. Please refer
to chapter "3.2.2.2 Connect" on page 36.

19
Manual of the K-IDE Overview of the K-IDE
2.5.2 Connection to the robot via RS-232C

Another possibility to connect the K-IDE to the controller is the serial con-
nection. Since this connection type is very slow, it is nowadays only rec-
ommended if no Ethernet connection is available.

For the PC connection cable use a straight cable with two DSUB 9-pin fe-
male connectors. The connectors are assigned as follows:

Pole Name Content


1 CD Carrier detection
2 RD receive data
3 SD send data
4 ER Data terminal ready
5 SG Ground
6 DR data ready
7 RS Send query
8 CS send legitimately
9 CI Display call

No special settings in the robot or on the notebook are necessary for a se-
rial connection.

Start the K-IDE from the program icon or from the Windows Start menu.

20
Manual of the K-IDE Overview of the K-IDE

Then select the symbol with the flash from the toolbar or the menu item
"Connection/Connect".

The following dialog box appears:

If there is no serial connection in the list yet, as in the standard setting of


the K-IDE, it must be created first. To do this, use the gear symbol at the
bottom of the dialog window and refer to chapter "3.2.2.1Connection
Manager" on page 36 how to create a new connection.

21
Manual of the K-IDE Overview of the K-IDE
2.5.3 Connection to the robot via Bluetooth

With the introduction of the F-Controller it is possible to connect to the ro-


bot via Bluetooth. To do this, use a special Bluetooth adapter as described
in the corresponding manual.

A Bluetooth connection to the robot is exclusively a so-called point-to-


point connection, i.e. no network of several participants can be estab-
lished. For this reason, the setting described below can remain at the "ex
works" default settings for all robots.

22
Manual of the K-IDE Overview of the K-IDE
2.5.3.1 Parameterization of the Bluetooth connection on the controller
The Bluetooth settings on the robot controller are very close to the set-
tings for the Ethernet connection. To do this, open the "Aux Menu" again:

Then follow the menu structure "System/Network Setting/Bluetooth Set-


ting":

23
Manual of the K-IDE Overview of the K-IDE
The Bluetooth settings page is then displayed:

Here you can set the IP address and the network mask. You also have the
possibility to change the device name. The default value corresponds to
the robot type designation (in the example "RS007N-A001") with attached
serial number (in the example "497"). It is recommended to leave the set-
tings as they are.

2.5.3.2 Settings in Windows


On the operating system side, you first have to "pair up" the Bluetooth
device to make it generally known to the system. Then the device is con-
nected and ready for use.

The following steps must be carried out:

1. To open the "Network and Internet Settings"


Look for the network icon in the Windows start bar. Click on it with
the right mouse button and select the corresponding context menu
entry:

24
Manual of the K-IDE Overview of the K-IDE
2. In the window that now appears, select the "Change adapter op-
tions" button:

3. A window will now open which may look something like this:

Click on the icon for the Bluetooth connection or select "Show Blue-
tooth devices" from the context menu of this connection.
4. Click on Add device in the window that appears, a list of available
Bluetooth devices will appear:

Select the device "RSxxx-xxxx-xxx" (the desired robot) and click


[Next].

25
Manual of the K-IDE Overview of the K-IDE
5. The device is addressed and paired.

6. The device now appears in the list of paired Bluetooth devices and
still needs to be connected. To do this, select the entry "Connect us-
ing..." from the menu and then "Access point":

The Bluetooth connection is now ready for connection to the K-IDE. The
next time the connection is established with the adapter just added, only
point 6 needs to be executed because the controller has already been
paired and installed.

26
Manual of the K-IDE Overview of the K-IDE
2.5.3.3 Bluetooth settings in the K-IDE
For the connection via Bluetooth a new connection setting must be cre-
ated in the K-IDE in the connection manager.

Since a Bluetooth connection is a TCP/IP connection, the procedure is sim-


ilar to that of the Ethernet connection.

The following figure shows the connection settings for a standard Blue-
tooth configuration:

27
Manual of the K-IDE Overview of the K-IDE
2.5.4 Connection to a virtual robot (K-Roset)

An important feature of the K-IDE software is the possibility to connect to


the Kawasaki simulation software "K-Roset". To establish the connection,
K-Roset must be started and a corresponding robot must be already in-
serted in the current K-Roset project.

IP address : Port
127.0.0.1 : 9105
127.0.0.1 : 9205
127.0.0.1 : 9305
127.0.0.1 : 9405
127.0.0.1 : 9505

The procedure is similar to connecting the K-IDE to the real robot via net-
work. However, when connecting to K-Roset, note that there is no sepa-
rate IP address for the virtual robots. In this case, you must use the IP
address of the "Local Host" (127.0.0.1) to address the virtual robot.

In K-Roset it is possible to use up to 8 virtual robots. To differentiate the


robots, they are addressed under a different port number. The port num-
ber assignment in K-Roset is done as follows: the first inserted robot gets
the port number 9105, the next one gets the port number 9205 and so
on. The eighth robot would be assigned port number 9805.

In the K-IDE default setting, all 8 virtual robots are already pre-parame-
terized for K-Roset, so you can connect immediately. They are entered in
the connection settings under the names "KROSET R01" to "KROSET R08".

Then select the symbol with the flash or the menu item
"Connection/Connect" from the toolbar.

28
Manual of the K-IDE Overview of the K-IDE

The following dialog box appears:

In the "factory state" of the K-IDE all 8 possible virtual robots are already
present in the connection list.

Please keep in mind that each K-IDE can only be connected to one robot
at a time. But you can open multiple instances of the K-IDE to access all
robots at the same time.

29
Manual of the K-IDE Overview of the K-IDE
2.5.5 Advanced network connectivity

Often a simple point-to-point connection via Ethernet with the robot is not
useful or possible. Particularly in larger plants, the individual plant sec-
tions are usually networked and thus depend on the same Ethernet net-
work. In such a case it makes sense to connect to the whole network and
you get access to all components and possibly to several robots.

Another alternative is the connection via a WLAN router. This allows a rel-
atively flexible choice of workstation and independence from cables.

Another connection method via Ethernet is the connection via VPN and In-
ternet. This connection method is often used for remote maintenance.

30
Manual of the K-IDE Overview of the K-IDE

VPN
VPN

Please pay urgent attention to the connection security when using this
connection method! Always use a VPN tunnel when connecting via the In-
ternet!

31
Manual of the K-IDE The user interface of the K-IDE

3 The user interface of the K-IDE

This chapter describes the user interface of the K-IDE. Among other
things, the meanings of the symbols are explained. Existing Short-cut
commands for the respective actions can be found on page 198.

3.1 General Information

3.1.1 The offline and online mode

The K-IDE basically distinguishes between two modes, which are de-
scribed below:

1. Offline mode
This is the basic mode of the K-IDE. When you open the program, you
automatically go to offline mode. A significant feature of this mode is
that you have no connection to a robot or controller. Furthermore, the
terminal and watch list are not available on the user interface.

2. Online mode
In this mode you are connected to a robot. This is visualized by the ter-
minal window and by the watch list, which are located in the lower part
of the program interface. Here you can follow, for example, which pro-
gram the robot is executing or how an observed value behaves. You
will find more details in chapters 3.7 (page 76) and 3.8 (page 77).

32
Manual of the K-IDE The user interface of the K-IDE

3.1.2 Generating and regenerating an AS file

1. Generate an AS file
During generation, a new AS file is created from the project data. Dur-
ing this process, the AS source code is rebuilt so that a new source
code is generated. To generate, choose the Generate function in the
context menu for the AS source code.

Remark: When saving a project the source code is automatically gener-


ated.

2. Regenerating an AS file
Regeneration recreates the AS structure tree from the changed source
code. Here the changes you have made in the AS source code are
transferred to the tree. Great care must be taken here, as all unsaved
information from the AS tree is lost during regeneration.

33
Manual of the K-IDE The user interface of the K-IDE
[ATTENTION]
Furthermore, the greatest caution must be exercised, since
the file could possibly be irreparably destroyed by changing
the AS source code. Only use this function if you are sure
what may be changed in the file.

3.2 Menu bar

The menu bar gives you a quick overview of numerous function groups of
the K-IDE. Among other things you can create or load new files, connect
to the robot, marry the project to the robot, or change the settings of the
K-IDE.

3.2.1 File management

Under the menu item “File” you can create new files, open an existing file,
open the “DaSi” directory or view the last opened files. The file can also
be closed or saved with a save option. At the very bottom of the menu
you can close the program by clicking.

3.2.1.1 New
When you create a new file, a window (see page 82) opens, in which you
can decide whether to use a template or an empty file. After selecting the
option, a new AS file is created.

3.2.1.2 Open
When opening, a window appears in which you can select an AS file to be
opened. To do this, you can search all directories on your PC.

3.2.1.3 Open "DaSi" directory


When this function is selected, an Explorer window is opened which dis-
plays the contents of the DaSi directory. If the settings are correct, the

34
Manual of the K-IDE The user interface of the K-IDE
data backups that are created each time a connection is established are
stored in this directory.

3.2.1.4 Last opened


This menu item hides the 8 most recently opened AS files. Selecting one
of these entries directly opens the corresponding file without having to
search for it first.

3.2.1.5 Close file


When closing a modified file, you will be asked whether the changes
should be saved (see page 83). If there are no changes, the project is
closed directly.

3.2.1.6 Save
If the currently opened K-IDE project has been opened with "File / Open",
the "Save" function will save the data to the original file. But if the K-IDE
project has been created with "File / New" or by downloading the AS data
from the robot, the function "Save as" is used.

The "Save" function can also be executed at any time simply by using the
shortcut keys <Ctrl>+<S>.

3.2.1.7 Save as
When this save function is selected, you will be asked for a file name and
location.

3.2.1.8 Save as template


A special saving option is the saving of a template. This opens a dialog
box in which you can select which components of the K-IDE project are to
be saved as templates (see page 83).

3.2.1.9 Compare AS file with each other


You can use this function to compare two AS files with each other. The
current project file is compared with another AS file on the computer that
is selected for this purpose.

[ATTENTION]
The WinMerge program is required for comparing 2 AS
files. A download link can be found under [Settings]
[Options] [Text comparison]. After installation, the
software must be restarted.

After selecting the appropriate file, the WinMerge window appears. See
page 88 more information about the comparison.

35
Manual of the K-IDE The user interface of the K-IDE
3.2.1.10 End program.
The last item you can select is whether you want to end the program. If
you make any changes to the current project, you will be asked whether
you want to save it (see page 83). If there is a connection to the robot, a
dialog box appears in which you can set how the connection to the robot is
to be terminated (see page 93).

3.2.2 Connection

The Connection menu depends on the mode you are in. Here you can
manage your connections, establish a connection to the robot, disconnect
an existing connection to the robot, turn source code monitoring on and
off, and load or send data from or to the robot. In addition, you can marry
the project to the robot, select the online toolbox, and remove synchroni-
zation marks.

3.2.2.1 Connection Manager


The Connection Manager menu item opens the Connection Settings, where
you can set the connections to the various robots (see page 89). Exam-
ples for creating a connection can also be found on page 13.

3.2.2.2 Connect
Under the item “Connect” you establish a connection to a robot. Two dif-
ferent dialog boxes may appear (see page 90).

Possibility 1: A list with already parameterized connections appears from


which you may select an entry. If there is no entry for the desired connec-
tion to the robot yet, e.g. because a different IP address is required, a
new connection can be created.

Possibility 2: A "Quick Connect" dialog box appears, which suggests the


last connection used with this K-IDE project. Simply press <Enter> in this

36
Manual of the K-IDE The user interface of the K-IDE
window or select the [Connect] button. If you want to use a different con-
nection, press the [Other Connection] button and the connection selection
list will appear.

3.2.2.3 Disconnect
When you click on "Disconnect", a dialog box appears with actions to be
performed before disconnection, depending on the setting (see page 93).

3.2.2.4 Reinitialize connection


If you want to reinitialize a connection, the dialog box on page 94 ap-
pears. With this action you can correct connection errors so that the pro-
gram and the connection are operational again.

3.2.2.5 Switch on source code monitoring


By means of the source code observation, a continuous observation status
of variables can be carried out in the text editor. If you move the mouse
pointer over a variable in the source code after switching on the observa-
tion, a note text appears with the current contents of the variable. In the
following figure, the mouse is held over the command line with the varia-
ble "Count", whereupon the current content of the variable (5) is dis-
played.

This feature can be very helpful during programming. If the watch list is
switched on in online mode, the source code watch is automatically
switched off. The switched on observation is visualized by the toolbar.

Switch on

Switch off

3.2.2.6 Switch off source code monitoring


This option can only be selected if source code monitoring is enabled.
Confirming this selection switches the source code monitoring off. The vis-
ual status of the function is shown in the upper chapter.

37
Manual of the K-IDE The user interface of the K-IDE
3.2.2.7 File operations
In the file operations, you can save a file backup, save a full backup, save
the error log, save the operation log or send an AS file to the robot.

In the saving options, a file selection dialog is opened where you can se-
lect the location where the file is to be saved. When sending an AS file to
the robot, a similar window is opened. However, a file to be sent to the ro-
bot is to be selected in this window.

With the "normal" backup, all data necessary to restore all settings, varia-
bles and programs on the robot to the state they were in when the backup
was made are saved. A normal backup should be performed as often as
possible, but at least after the robot has been switched on for the first
time.

The "full" backup on the other hand saves more data. This additional data
is not needed to restore the robot state. These are mostly log entries.

3.2.2.8 Loading data from the robot


Under this item the existing data is loaded from the robot and displayed
as a project in the K-IDE. You will be asked if you want to save changes, if
there are unsaved changes in the previous project file (see page 83). Af-
terwards the project is displayed by the robot and can now be edited.

3.2.2.9 Load system data from robot...


When this item is selected, only the system data is loaded from the robot.
You can select which components of the system data should be trans-
ferred. The displayed dialog box is explained on page 95

3.2.2.10 Send everything to the robot


If you select "Send all to robot", a selection window appears in which you
can set numerous parameters for sending (see page 96).

3.2.2.11 Marry project with robot


By the marriage of the K-IDE data with the robot, both AS data sets are
written together and compared. Thereby the robot data is added to the
project in the K-IDE and in return the project data of the K-IDE is trans-
ferred to the robot. After the marriage the K-IDE project has the system
data of the robot and the robot has the programs and variables from the

38
Manual of the K-IDE The user interface of the K-IDE
K-IDE project. For the exact application, see the dialog box with explana-
tion on page 100.

3.2.2.12 Online toolbox


In the online toolbox you will find many special functions that you can ap-
ply to the connected robot.

1. Switching motors on and off

At this point the robot's motors are either switched off or on. In the termi-
nal or progress window, you can observe which action is currently being
performed in the robot. To switch off the motor voltage, a "HOLD" is first
sent to the robot to stop any movement that may be in progress. Then,
after a waiting period, the motor is switched off.

2. Reset robot error

Selecting this item resets the errors in the robot. In the terminal or pro-
gress window you can observe which action is currently being performed
in the robot.

3. Cancel and kill foreground programs

After selecting this menu item, a dialog box is displayed with which you
can confirm the action. Selecting [Ok] cancels and kills the current fore-
ground program (ABORT & KILL) and selecting [Cancel] does not perform
any action (see page 65).

4. Cancel and kill background programs

39
Manual of the K-IDE The user interface of the K-IDE
The function is similar to the one described in point 3, but here the back-
ground programs are raked and killed (PCABORT & PCKILL). You can se-
lect here which background programs you want to terminate. You can also
specify the order in which the tasks are killed (see page 96 f.).

5. Cancel and kill NumPG

The function is similar to the one described in point 3, but here the
"NumPG" programs are aborted and killed (NUMABORT & NUMKILL).

6. Start main program

For this point a program must be selected as the main program. If this is
not yet the case, you can do this in the AS tree on a program using the
context menu. To do this, select the option that the selected program
should be set as the main program. After this selection, the program is
marked with an asterisk in the AS tree.

When a main program has been selected, the dialog box on page 104 ap-
pears, in which you have several options for decision. First, you can set
the start options. Here you can decide whether to clear the previous er-
rors, turn on the robot's motors, kill the existing foreground process, and
kill the background programs. On the other hand, you can select the exe-
cution type with which the main program should be started. For this you
have the option to choose whether the execution should be started in the
foreground or in the background by tasks.

7. Pause or resume the current program

With the two points you can pause or continue the currently running fore-
ground program (HOLD & CONTINUE).

[ATTENTION]
These actions only have an effect on a running pro-
gram. Furthermore, a program cannot be started by
the action [Continue program].

8. Set the base or tool coordinates

Here you can select the base or tool definitions from the project file to set
new coordinate systems (see page 106). The selection is made via a drop-
down menu with all base or tool definitions entered so far. By default both
40
Manual of the K-IDE The user interface of the K-IDE
coordinate systems are set to ZERO. This means that all parameters (X-Y-
Z-O-A-T) are set to zero. In the standard configuration one also speaks of
"Tool Zero" and "Base Zero".

9. Compare the project file with the online AS file

The procedure for point 9 is similar to that described in Chapter 3.2.1.9:


Compare AS file with each other. Here the online file of the robot is com-
pared with the current project file. The description of the dialog box is on
page 88.

10. Moving the robot

In the tenth point, the robot can be moved to defined points using numer-
ous commands (see page 107). Here you can select the type of movement
to be performed. The individual meanings of the commands are explained
in blue letters after selection. Parameters that can be set for the type of
movement appear as white boxes where you can enter the desired values.
Irrelevant parameters for the selected movement type are grayed out.
The movement types are described in chapter 6.3 on page 203.

11. See the online variable list

After selecting the online list of variables from the toolbox, a window
opens with all variables currently available on the robot (see page 109).

12. Remove the unnecessary online variables and programs

This item cleans up the online AS file by removing unused variables and
programs (see page 109). Here a dialog box displays which variables were
deleted.

13. Clean up the signal list.

When this item is executed, the signal list in the robot is cleaned up (see
page 111). This is the list of signal names that can be displayed on the
teach pendant in the Monitor Area.

3.2.2.13 Remove synchronization mark


When you perform this action, the synchronization marks are removed
without affecting the robot or the project file. As an example, the image
shows the Real identifier, where the removal of the marker is performed.

41
Manual of the K-IDE The user interface of the K-IDE

The synchronization marking is used to identify programs or groups of


variables that are "possibly different" compared to online and offline. This
is assumed if, for example, a variable content is changed in the K-IDE.
Please do not make the mistake of simply transferring the marked variable
groups to the robot as a lump sum! Please see the marking rather as a
"memory aid". The situation is different with changed programs. A mark-
ing at this point is to draw your attention to the fact that the correspond-
ing program has not yet been transferred to the robot.

3.2.3 The AS Toolbox

The AS Toolbox provides functions that are not directly related to pro-
gramming, but which relate to the configuration of the robot. This toolbox
is new in version 1.1 and will be further expanded in future versions.

3.2.3.1 Signal allocation


The first AS Toolbox function is the signal assignment. Here it is a matter
of assigning the various inputs and outputs of different devices (local,
master, slave) to the inputs and outputs of the robot to be addressed.

With the help of the first two functions the fieldbus can be activated and
deactivated. These functions are only available if the K-IDE is connected
to a robot and the controller is not an F-controller. With an F-controller,
the fieldbus is always active and cannot be deactivated. However, with a D
and E controller, the function can be executed and replaces the loading of
the corresponding option files.

3.2.3.1.1 Simple signal allocation


The simple signal allocation allows a simple and fast assignment of the
signals, if there are no gaps in the input and output ranges of the devices,
all devices are to start at signal 1 and all devices form a coherent range.
In most cases you will be able to get along with this function.

The simple signal assignment is described in more detail in chapter xxx,


page xxx.

42
Manual of the K-IDE The user interface of the K-IDE
3.2.3.1.2 Extended signal allocation
In cases where the simple signal allocation is not sufficient (e.g. if the
start address of a device should not be signal 1 or a device should be dis-
tributed to several areas), the extended signal assignment can be used.
Here the I/O blocks of each device can be assigned to arbitrary positions
of the I/O list of the robot.

For a more detailed description of the extended signal allocation see chap-
ter xxx on page xxx.

3.2.4 Search bar

In the search bar you can search for an identifier or for a text. A separate
search window opens for this purpose.

With the identifier search you can search for an exact name. This means
that you can locate all places where, for example, a precision point is lo-
cated (see page 117).

With the text search you proceed similarly to the identifier search. Here
you can enter a free text to be searched for (see page 119).

3.2.5 Tab pages

Under the menu item Tab Pages you can see all open tabs and switch to
them directly. You can also close all tabs.

3.2.6 Window

In the window options you can see all open windows and switch to them
by clicking on them. You can also close all windows at the same time.

43
Manual of the K-IDE The user interface of the K-IDE
3.2.7 Options

In the options you can change the program settings, the AS syntax and
the colors.

3.2.7.1 Settings
A detailed description of the four setting options is given from page 122.

3.2.7.2 AS-Syntax
In this category you can change the syntax display of the AS language
(see page 128). However, you are not advised to do this, as other project
members usually use the regular syntax.

3.2.7.3 Colours
In the color settings, you can select your desired colors and the desired
font for the text editor (see page 129).

3.2.8 Help

Under the menu item Help you can use the help function, search for up-
dates, switch to the K-IDE forum and view information about the program.

3.2.8.1 Manual
Selecting this menu item opens the K-IDE manual. The corresponding
manual must be located in the "Doc" directory of the K-IDE installation di-
rectory.

3.2.8.2 Check for updates...


When searching for updates, the system searches the Internet for a new
software version (see page 131). An Internet connection is required for
this.

3.2.8.3 Support Forum


The K-IDE support forum has been set up to share wishes, suggestions,
questions and problems with the software with other users and to discuss

44
Manual of the K-IDE The user interface of the K-IDE
possible solutions. Often solutions have already been discussed before, so
that you can easily implement them.
The following link will take you to the Forum's website:
https://www.kide-forum.eu

3.2.8.4 Program Info


At the bottom of the help section is the program information about the
software (see page 134).

45
Manual of the K-IDE The user interface of the K-IDE
3.3 The parent toolbar

The toolbar is displayed permanently for you. You can execute a command
by clicking on it. Among other things, you can manage the project file, set
the connection settings to the robot, switch source code monitoring on
and off, save a backup from the robot, load data from or send data to the
robot, compare the online AS file with the offline AS file, execute the se-
lected main program or move the robot.

Since the toolbar is a quick click button from the menu bar, the corre-
sponding entries are referred to below. After clicking on the icons, the
same dialogs appear. The numbering is from left to right.

1. Create new AS file  see page 34.


2. Open AS file  see page 34.
3. Save AS file  see page 35.
4. Save AS file as  see page 35.
5. Connection settings  see page 36.
6. Establish connection  see page 36.
7. Disconnect connection  see page 37.
8. Source code observation on  see page 37.
9. Source code observation from  see page 37.
10. Backing up data from the robot  see page 38.
11. Load AS file from robot  see page 38.
12. Send AS file to robot  see page 38.
13. Offline / Online AS file comparison  see page 35.
14. Start main program  see page 39.
15. Move robot arm  see page 41.

46
Manual of the K-IDE The user interface of the K-IDE
3.4 Project structure tree

In the project structure tree, you can set up your own project structure so
that the AS files can be found directly for customers or projects. You can
set up the structure with numerous layers, as shown in the following
graphic. The structure tree is particularly suitable for frequently used data.

You can use the context menu to add a customer group, a customer, a
project group or a project (see page 135 ff.). After setting up the struc-
ture, several AS files can be assigned to each project. This is suitable, for
example, for accessing backups.

The context menu, which can be opened with a right click, varies with the
corresponding category. If customers or customer groups do not yet exist,
for example, only these can be created. Projects and project groups can
only be created under Customers. You can only assign AS files to one pro-
ject. A double click on a project file loads it into the GUI (Graphical User
Interface) and the focus changes to the AS file tree. The project files are
only created as links, so that when you delete the project structure tree,
the files are still available on the hard disk of your PC.

[ATTENTION]
The names of the entities within a cus-
tomer group must be unique.

47
Manual of the K-IDE The user interface of the K-IDE
3.5 AS structure tree

The AS structure tree displays the essential components of the AS file for
the K-IDE in a clearly arranged form. These are mainly programs and vari-
ables, but also logs with runtime information and comments.

Double-clicking on one of the entries in the AS tree opens a corresponding


page in the tab area of the K-IDE.

48
Manual of the K-IDE The user interface of the K-IDE
3.5.1 Operations in the AStree

3.5.1.1 Toolbar of the AS Structure Tree


To make it easier to make changes, each category has its own toolbar.
The different toolbar icons are explained below.

Symbol Function

Searches for a specific object in this tab.

Replaces a specific text with a predefined text.

Copies a selected range.

Cuts out a marked area.

Pastes the clipboard into a selected area.

Undoes a change.

Revoke an undone change.

Plays back a recorded macro.

Records a macro on a circle and stops recording on a red


square. Macros are small activity records, which allow you to
copy and paste a text passage, for example. Macros can also
record cursor movements in the editor and repeat them after-
wards.
Comments out a text block line by line. This prevents the ro-
bot from executing the code in the line.

Compares an AS file with the existing project file.

Regenerates the file. The structure tree is regenerated from


the current source code.

Opens the selected tab in a separate window.

Closes the selected tab.

Transfers the robot data to the project file.

Imports data from the computer.

Exports data to the computer.

49
Manual of the K-IDE The user interface of the K-IDE
Symbol Function

Loads tab-specific files from the robot.

Sends tab specific data to the robot.

Adds an identifier in the tab.

Removes the selected element from the tab.

Opens a dialog box for editing the selected element.

Adds the selected entry to the watch list.

Moves the translation point into the tool definition.

Moves the translation point into the frame definition.

Moves the translation point to the base definition.

Takes the current position of the robot for the point.

Teaches a relative position.

Moves the robot to the selected point.

Adds the selected real to the signals.

Adds the selected real to the Boolean definitions.

Returns the selected signal to the reals.

Imports elements from a CSV file.

Exports a CSV file from the existing data.

Returns a Boolean definition to the Reals.

Returns tool/ frame/ base definition to the translation points.

Formats the text.

Prepares the program.

50
Manual of the K-IDE The user interface of the K-IDE
Symbol Function

Starts the selected program.

Displays the list of local variables.

Adds all existing local variables to the list.

51
Manual of the K-IDE The user interface of the K-IDE
3.5.1.2 Context menu in the AS Structure Tree
In the AS Structure Tree, there are a number of possibilities that result
from the context menu when different categories are selected. The indi-
vidual icons are explained below.

Symbol Function

Opens the selected category in a separate window

Regenerates the AS source code from the category changes.

Imports data for the selected category

Exports the data of the selected category

Receives the robot data for the selected category

Sends the selected category to the robot and overwrites the


data

Copies the complete data of the selected element

Pastes the matching data from the clipboard into the category.

Sends the changed programs to the robot.

Stops the current program sequence (ABORT)

Kills the current program sequence

Adds an element to the selected category. For Programs,


Tasks and NumPG, groups or programs can be added.

Deletes the data of the selected item

Reformats the selected element. If a group is selected, all ele-


ments in the group are formatted.

Starts the selected program.

Prepares the selected program.

Sets the selected program as main program. This allows you


to always start the program from the main toolbar.

Removes the mark as main program.

52
Manual of the K-IDE The user interface of the K-IDE
Symbol Function
Duplicates the selected program. After clicking on it, a dialog
box is opened in which you can specify the new name.
Opens the dialog box for editing the program header data.
You can use this function to change the program name and
the call parameters.

Opens the Program Manager or adds a program group.

Adds a new program to the program directory or program


group.

3.5.1.2.1 Context menu of the AS project file


This menu contains functions that affect the entire project file:

1. Export: This function is similar to the “Save as” function, but here
you can select which components and sections of the AS data are
to be written to a file.
2. Export project documentation: This feature exports and saves
only the project documentation to a file.
3. Receive system data: Selecting this function loads all system
data from the robot and adds it to the K-IDE project.
4. Send: Corresponds to the function "Send everything to robot"
(see page 96). A dialog box appears for selecting the components
to be sent.
5. Send project documentation: This function only transfers the pro-
ject documentation to the robot.

3.5.1.2.2 Context menu of the AS source

With the menu item 'Generate', the AS source can be generated from the
changes made in the AS project (see page 33).

3.5.1.2.3 Context menu of the "Robot / Controller" entry


There is only one entry in this context menu: "Open in separate window".

53
Manual of the K-IDE The user interface of the K-IDE
3.5.1.2.4 Context menus of the log entries

This menu is the same for all protocol entries and for all variable groups.
The individual menu entries are already described above in the superordi-
nate chapter.

3.5.1.2.5 Context menus of the variable groups


The menu corresponds to that of the log entries.

The individual menu items are already described above in the superordi-
nate chapter.

3.5.1.2.6 Context menu of the program groups (programs, tasks, NumPG programs)

The individual menu items are already described above in the superordi-
nate chapter.

3.5.1.2.7 Context menu of individual foreground programs

54
Manual of the K-IDE The user interface of the K-IDE
The individual menu items are already described above in the superordi-
nate chapter.

3.5.1.2.8 Context menu of individual background and NumPG programs

The individual menu items are already described above in the superordi-
nate chapter.

55
Manual of the K-IDE The user interface of the K-IDE
3.5.1.3 The tab bar of the editor area
To provide a clear layout for you, a tab bar has been implemented in the
editor area. This shows the tabs you have opened. The currently active
tab has a white background and is displayed slightly higher than the other
tabs (see figure).

You can use different mouse clicks to modify the tab order. These are ex-
plained on page 217 in the appendix.

3.5.2 AS Source code

When you select the AS source code, the text editor displays the complete
source code, which is provided with robot specifications, programs, varia-
bles and K-IDE comments.

[ATTENTION]
Changing the AS file can cause problems. A simultaneous
change of project data and source code inevitably leads to
inconsistency! Make sure that you have generated the AS
file before editing it.

The following toolbar is displayed for AS source code:

You can view the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained. The symbol
with the two red gearwheels (regenerate) is particularly important for the
symbols. Great care must be taken when carrying out this action. In addi-
tion to this selection, you can carry out a large number of actions in the
AS file for which dialog boxes appear, which are described on pages 139
to 155.

3.5.3 Robot / controller

The following toolbar is displayed in the "Robot / Controller" window:

56
Manual of the K-IDE The user interface of the K-IDE

You can view the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained.

This window displays information about the robot used in the project. If
there is a connection to a robot, you can switch between online and offline
view with the leftmost button of the toolbar.

Important information on this page includes the robot type, serial number
and software versions.

3.5.4 Protocols

The following toolbar is displayed in the window for the protocols:

You can view the relevant symbols in Chapter "3.5.1 Operations in the
AStree" on page 49. This explains the meaning of each symbol.

57
Manual of the K-IDE The user interface of the K-IDE
3.5.4.1 Error log
After double-clicking on Error log in the AS tree, the following editor is dis-
played:

1 2 4

3 6

Up to 1000 error messages are displayed in this window. If the error list
has not yet been loaded, this can be done using the robot icon from the
toolbar.

If you select an entry in the list (3), the data in fields (4) to (7) is updated
and then refers to the selected error number.

Detailed description of the fields:

1. Date filter: Here you can select the start and end date for the list
display. When the page is called up for the first time or when the
list is reloaded, the start date is set to the first date and the end
date to the last date in the entire list, so that all entries are
displayed.
The buttons [1], [2], [7], [31] are used to quickly select the
maximum age of the entry in the list in days. For example, if you
select [7], all entries with a maximum age of 7 days will be
displayed. The [Complete] button sets the filter back to the total
duration of all entries.

2. Error number: A selection of a specific error number causes only


this selected error to be displayed in the list. All other error
messages are hidden.
Only the errors that actually occurred in the entire period are
displayed in the selection list.
58
Manual of the K-IDE The user interface of the K-IDE
3. Error list: The entries of the error list are displayed here.
Selecting a specific entry causes the error data to be displayed on
the right-hand side.

4. Error number and text from the list:

The [?] button can be used to search for the error number in the
"Trouble Shooting Manual". If the corresponding PDF document is
parametrized in the settings (see "3.2.7.1 Settings" on page 44),
the PDF document will automatically appear and the page with
the error description will be displayed if available:

5. Current status: This displays the current status of the robot


controller when the error occurred.

6. Programs: This area displays the programs currently running


when the error message was triggered.

In the list of running programs, the currently running program is


displayed for each running task (foreground and background). If
you select an entry in the program list, the data in the fields on
the right-hand side is updated so that you can see the exact step
number of the displayed program.
By pressing the [magnifying glass] button you can jump directly

59
Manual of the K-IDE The user interface of the K-IDE
to the program step that triggered the program. An editor
window opens in which the corresponding step is marked.

7. Operation history: The last operator actions are displayed here.


See also next chapter.

3.5.4.2 Operating protocol


In the Operation Log window you can see all actions performed by the op-
erator on the controller and also those actions performed with the K-IDE.
Also in this log a maximum of 1000 entries are stored.

1. Filter: The filter has the same meaning as the date filter in the
previous chapter "3.5.4.1 Error log" on page 58.
2. Operation list: This list shows all operator actions. For each ac-
tion a consecutive number, date and time are displayed. The
origin of the action is also indicated. Where [TP] means teach
pendant, [PNL] Control Panel on the controller and [Aux] Actions
from the K-IDE or KRTerm.

3.5.4.3 Program execution protocol


In the program execution log, the program steps for each process (fore-
ground and background) are displayed in the execution sequence. The list
always starts with the oldest entry (usually 1000) and runs in the direc-
tion of the time sequence. Entry number 0001 indicates the last recorded
step.

60
Manual of the K-IDE The user interface of the K-IDE

1
2 3

1. Task name: Here you can select the task whose process you want to
see. Available are usually "Robot Program" (i.e. the foreground task)
and "PC Program x" for the background tasks.
2. History: Depending on the selected task, the progress of the individ-
ual steps is displayed here in the order of execution. The first entry
indicates the oldest entry, the last the most recent. You can scroll
through this list with the cursor keys (<arrow up> and <arrow
down>).
3. Program display: This displays the currently selected program in the
currently selected task. The currently selected step is highlighted.
When scrolling through the history list, the marking in the currently
executed program is moved, or another program is selected for dis-
play.
Above the program display, the date and time of the step and the
execution duration are shown:

This protocol is especially important if you want to check conditional


jumps in the program flow. Here you can check, for example, whether IF
queries or WHILE loops are run through as desired.

3.5.5 Project comment

The following toolbar is displayed in the "Project Comment" window:

You can view the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained.

61
Manual of the K-IDE The user interface of the K-IDE

There are three areas in the editor area. The upper area (1) is for entering
a general comment as a project comment. Here, for example, the project
name, the customer name and / or the name of the contact person can be
entered (Please remember to respect data protection!). The project com-
ment can be queried via a dialog box after the file has been created (see
page 87).

In the lower area (2) you can find the project history. If desired, several
entries can be created here (e.g. for each day that this project was
worked on or for important changes). The individual entries are displayed
in the list on the left side. If an entry in this list is selected, the text for
this entry is displayed on the right side.

You can create a new entry with the [Add] button. The [Edit] button al-
lows you to change the currently selected entry. In both cases the right-
hand area is displayed with a white background and entries / changes can
be made. In addition, two buttons for confirming ([Ok]) or rejecting
([Cancel]) the entry appear at the bottom right.

62
Manual of the K-IDE The user interface of the K-IDE

When adding a new entry, the current date and time are used by default.
You can change this "time stamp" after the entry has been created. To do
this, right-click the required entry and select "Edit time stamp". A dialog
box for selecting the date and time will appear:

63
Manual of the K-IDE The user interface of the K-IDE
3.5.6 Interface panel

The following toolbar is used for the interface panel:

You can view the corresponding symbols in chapter 3.5.1 on page 49.
There you will find a brief explanation of the meaning of the respective
symbol.

The interface panel editor of the K-IDE offers the possibility to edit the in-
terface panel on the teach pendant. This is a simple HMI (Human-Machine
Interface) that can be used on the teach pendant and is designed to sup-
port the operator in working with the robot.

1. Page title area: The individual pages of the interface panel can be
selected via the buttons [Page 1] to [Page 8]. Each page can be as-
signed a page title. A change of the title can be initiated with the
[pencil] button.

A change can be accepted with the [confirmation] button or can-


celled with the [cancel] button.
2. Page area: Here the individual switching and display elements can
be placed. A grid of 4 x 7 = 28 fields per page is available for this
purpose.
The individual fields can be selected with the mouse or the key-
board. Multiple selection is also possible. These can be selected with
the mouse button together with the <Shift> or the <Ctrl> key or
with the cursor keys in conjunction with the <Shift> key. A multiple
selection is useful when copying or cutting.

64
Manual of the K-IDE The user interface of the K-IDE
By double-clicking on an empty field, a context menu for creating a
new display or control panel appears.

On the other hand, if you double-click an already occupied field, this


field will be displayed in the Editing Area and at the same time set
to the Edit Mode.
3. Editing area: When selecting a specific field, an editing dialog is dis-
played here, depending on the field type.
By pressing the [Pen] button, editing of the data of the selected field
is enabled. The [Ok] and [Cancel] buttons are activated at the same
time.

If an empty field is selected in the page area, the editing area re-
mains empty for the time being. If you then click on the [Pen] but-
ton, the selection list for the field type is activated first. You can se-
lect the desired field type from this list.

65
Manual of the K-IDE The user interface of the K-IDE
After selecting a field type from the list, the list is locked again and
the data of the selected field type is displayed in the Editing Area:

3.5.7 Translation points

In the Translation Points view, you can see all previously taught and newly
added translation points.

You can find the corresponding symbols of the toolbar in chapter 3.5.1 on
page 49. There, the meaning of the respective symbol is explained.

As with the online variable list, different lines can be selected (see page
109).

You can select the following functions for a translation point using the con-
text menu:

 Edit identifier... see page 150


 Find the place of use... see page 117
 Search text... see page 119
 Define as (Tool, Base, Frame) Translation point is entered into
the corresponding category
moved
 Add to watch list Translation point is added to the
current watch list.
 Teach current position see page 150
 Current position with reference see page 151

66
Manual of the K-IDE The user interface of the K-IDE
 Move into position... see page 151
 ControlsChange content see page 152

3.5.8 Precision points

In the list of precision points, many features are identical to the transla-
tion points, but the axis angles are entered and saved for these points.
This guarantees that the robot will move to the point in the same way.

You can find the corresponding symbols in chapter 3.5.1 on page 49. The
meaning of the respective symbol is explained there.

As with the online variable list, different lines can be selected (see page
109).

67
Manual of the K-IDE The user interface of the K-IDE
You can select the following functions for a precision point using the con-
text menu:

 Edit identifier... see page 150


 Find the place of use... see page 155
 Search text... see page 119
 Add to watch list Precision point is placed in the
current list.
 Teach current position see page 150
 Move into position... see page 151
 ControlsChange content see page 153

[ATTENTION]
Changing precision points only by entering a different an-
gle is complex. Use the possibility to correct the point
with the new current position.

3.5.9 Reals

All numeric variables are entered for the real. This gives you an overview
of which variables are available. These variables can be assigned to the
specific forms of identifiers. These include the signals, for example.

You can find the corresponding symbols in chapter 3.5.1 on page 49.
There you will find a brief explanation of the meaning of the respective
symbol.

You can select the following functions for a real using the context menu:

 Edit identifier... s. page 150


 Find the place of use... s. page 155
 Search text... s. page 119
 Define as (Signal, Boole) Real is moved into the
respective Category

68
Manual of the K-IDE The user interface of the K-IDE
 Add to watch list Real is added to the
inspection list.
 ControlsChange content see page 153

3.5.10 Integer

The following toolbar is displayed for integers:

You can find the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained.

Integers are a type of variable that is not often used. In AS programming,


these variables are often used as “User Timers”. Please refer to the refer-
ence manual of the AS language on this subject!

You can select the following functions for an integer using the context
menu:

 Edit identifier... see page 150


 Find the place of use... see page 155
 Add to watch list Integer will be added to the
current inspection list.

3.5.11 Strings

The following toolbar is displayed for the character string:

You can find the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained.

Strings are used to output a defined text when a program is executed.

You can select the following functions for a character string using the con-
text menu:

 Edit identifier... see page 150


 Find the place of use... see page 155
 Search text... see page 119

69
Manual of the K-IDE The user interface of the K-IDE
 Add to watch list Real will be added to the current
inspection list.
 ControlsChange content see page 155

3.5.12 Signals

The following toolbar is displayed for the signals:

You can view the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained.

This toolbar applies to all signal types. The signal types are classified as
follows:

Value Signal type


0001 to 0960 Output signals
1001 to 1960 Input signals
2001 to 2960 Internal signals
3001 to 3128 System signals

You can select the following functions for a signal using the context menu:

 Edit identifier... see page 150


 Find the place of use... see page 155
 Search text... see page 119
 Undefine Signal will be undefined and
becomes a REAL
 Change signal number / type see page 148
 Add to watch list Real will added to the
current inspection list.
 ControlsChange content sets or resets the signals see
page 152

3.5.13 Boolean definitions

The following toolbar is displayed for the Boolean definitions:

You can view the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained.

70
Manual of the K-IDE The user interface of the K-IDE
A Bool (truth value) has by definition only two values: 0 = false and -1 =
true. However, since a Boolean variable is a real value, the following
agreement applies in the AS system: 0 = false and unequal to 0 = true.
This is not a special feature of the AS system, but similar in many other
programming languages.

The possibilities of the context menu correspond to the possibilities of the


signals (see page 70).

3.5.14 Tool/ Frame/ Basic definitions

The different definitions of the translation points allow the AS file to be


much better organized. It is possible for you to get an overview of the
project file in a short time, even if it was created by another programmer.

For example, the following toolbar is displayed for definitions:

You can view the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained.

The functions for these points are essentially identical to the translation
points, which are described on page 66 ff.

3.5.15 Programs, Tasks, NumPG

In the folders for programs, tasks or NumPG you create your programs.
Here you write in the text editor which is described in chapter 3.6.1 on
page 73.

The following toolbar is displayed for the programs:

You can view the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained.

The color of the editor is changed in the settings. For a description, see
page 44.

The AS syntax for writing the program can be found in the document "AS
Language Reference Manual".

Using the context menu on the Program Files folder or on an individual


program, dialog boxes can be called up, which are described on page 155
ff.

71
Manual of the K-IDE The user interface of the K-IDE
Important note: the AS system does not distinguish between
foreground, background and NumPG programs. Nevertheless, from an
understanding point of view, it can be very important to distinguish
programs according to these criteria. Such a differentiation can help to call
programs from different processes at the same time.

The K-IDE distinguishes the different program types by means of a


naming convention. For example, background programs are identified by
convention by the name appendix ".pc", while NumPG programs are
identified either by the name "NumPG" or by the name appendix ".np".
Foreground programs do not have a special addition. This convention is
optional and does not necessarily have to be used to create an executable
robot project. However, it is strongly recommended that you adhere to
this convention for clarity!

The K-IDE sorts the programs according to the above convention when
loading them into the appropriate folders. Programs whose names do not
conform to the convention are therefore sorted as foreground programs
after loading.

3.5.16 Visualizations in the AS Structure Tree

3.5.16.1 Filled categories


In the AS tree, filled folders or categories are marked with bold font. This
allows you to see directly which categories are filled with content.

3.5.16.2 Changed categories


Changed and not yet saved categories are marked with italic blue letters.
This allows you to see if there are unsaved changes in the file. When sav-
ing, the font is formatted back again. Furthermore, red arrows are visible
next to the symbol for programs and variables. These mean that the cur-
rent variables or points may not match those in the online version.

72
Manual of the K-IDE The user interface of the K-IDE

3.6 Editor area

The editor area is used by the programmer to make changes to the AS


file. The editor area is located in the upper right-hand corner of the K-IDE.
You can make changes using the following tools.

3.6.1 Text editor

In the text editor you can edit the source code of a file or program. The
editor supports you in your work with numerous features, which are ex-
plained briefly below.

1. The colors of the editor make it easy to assign the individual com-
mands and variables. Comments are displayed in grey, numerical val-
ues in turquoise, program starts and ends in olive green, commands in
white and bold and variables in yellow (standard color setting).
2. If you wipe over a command or variable and then stop with the mouse
pointer, a hint box appears. This hint box provides information about
the word. The hint text for keywords can be changed individually (see
"4.8.2.1Keyword assistance", page 143). The note fields for variables
cannot be changed. These texts are generated by the current values of
the variable. The variables are shown in the figure with yellow text.
3. In addition to the color visualization, a code folding is automatically
generated. This means that WHILE or IF conditions are further in-
dented. Furthermore, an auto-completion function has been imple-
mented in the text editor. This allows you to search for the right com-
mand or the right identifier.
4. When changes are made to the text, the changed lines are marked yel-
low on the left side. This gives you an easy overview of the changes
you have made.
5. With the context menu on an element in the editor, various actions can
be performed. The individual actions are shown in the following list.

73
Manual of the K-IDE The user interface of the K-IDE
Searches the selected string in the K-IDE project. The result
is a window that displays each location where the character
string is used. The search function is described on page 119

Created a new short help for the selected AS command.

Allows you to change the short help of the selected AS com-


mand.

Deletes the short help for the selected AS command.

Displays a short help text for the selected identifier. This


icon cannot be clicked.
Opens a window with which the variable can be changed.
The window is customized for each type of variable.
Searches the selected identifier in the whole K-IDE project.
The system displays a window in which you specify each lo-
cation where the identifier is used.
This icon allows you to change the extended variable type.
Here the type can be selected via the continued menu area.
This cancels the definition of the extended variables. A sig-
nal definition then becomes a normal real variable.

Adds the selected variable to the watch list.

Teaches the currently selected position.

Teaches the currently selected position taking into account


another position variable.

Enables a movement to the specified position.

This menu item provides the control options for the various
variable types.
Allows the contents of real and position variables to be
changed.
Sets the selected signal to "on" or the selected truth value
to "true".
Sets the selected signal to "off" or the selected truth value
(Bool) to "false".

The following shows how the text editor looks schematically with the basic
color settings. The horizontal, yellow line is a special feature. This can be
dragged up and down by holding down the left mouse button. If the bar is

74
Manual of the K-IDE The user interface of the K-IDE
pulled up, you can see two areas of a project file. This allows you to com-
pare text passages in the currently open program or in the source code.

3.6.2 Variable list editor

In the variable editor, entered variables are shown with name, value and
comment. Variables can be real, boolean values, signals, translation or
precision points. This editor has a toolbar with which you can create, edit
and delete values.

By clicking on a characteristic description, you can sort the variables by


this characteristic in ascending or descending order. This is indicated by a
grey triangle next to the respective selected value. By default, the varia-
bles are sorted by name in ascending order.

To edit an element, it must be selected. The first column, with which you
can select an element, helps you to do this. If you want to select all ele-
ments, you can click on the first row of the characteristic descriptions in
the first column. This selects the whole row. You can also select a range of

75
Manual of the K-IDE The user interface of the K-IDE
elements or several elements. To select a range of elements, first click on
the element with which the range starts. Then press [Shift] on the last el-
ement of the range. For an exact selection of several elements, hold down
[Ctrl] (see page 109).

One way of editing is to move the element to another category. This


means, for example, that a real can be shifted to the signals. To do this,
the element must be selected and the corresponding symbol in the toolbar

Another way of editing is to adapt an element or an identifier. To do this,


you can either double-click on the corresponding element or select the
Edit icon in the toolbar. A dialog box appears for you (see page 143).

3.7 Terminal window

The terminal window is a simplified version of the previously valid KR


term. This window now only displays the necessary information for you. In
addition, there is a bar below the terminal window for entering com-
mands. These commands are identical to those for the KR Term software.
The advantage of the bar is that previously entered commands can also
be displayed and entered there again using the arrow keys (up).

At the top of the Terminal & Log there are numerous symbols, below
which there are functions. These functions include killing the foreground
program, killing the background programs, turning the motors on and off,
resetting the errors, and starting and pausing the current program. The
speed display can be used to influence the monitor speed. Furthermore,
the current connection is shown above in bold blue letters, as well as the
quality of the connection, which is indicated by a heartbeat. Next to the
heart there is an output showing the current connection status.

76
Manual of the K-IDE The user interface of the K-IDE
There is a significant difference in the background color of the terminal
window and the watch list. If you are in online mode with a real robot, the
toolbar of the terminals and the watch list will be green. If you are con-
nected to a virtual robot, the toolbar is displayed in blue.

A feature of the terminal window is the blue font of the robot, because you
can open further options with one click. These options are used for faster
operation of the robot. The individual options are taken from the menu bar
in the chapter on page36.

3.8 Inspection list

In the inspection list, a large number of identifiers can be read out in real
time.

There is a toolbar for this area to make it easier for you to use the watch
list.

You can view the corresponding symbols in chapter 3.5.1 on page 49.
There, the meaning of the respective symbol is explained. As the symbols
of the green flag and the three bars have not been described so far, this
will be done here. The green flag means a separate observation of the sig-
nals from the controller. This observation is opened in a new window. The
symbol with the three bars is implemented for the function to record the
values. However, this function can only be used if the watch list is
switched on. An interval in milliseconds is specified for the recording of
data. This entry is made after pressing the symbol. Furthermore, both the
file name and the storage location can be specified in the dialog window.

77
Manual of the K-IDE The user interface of the K-IDE

Another possibility for individualization is the selection of a predefined list.


You can do this using the bold blue font. After selecting to manage the
lists, the following window appears. Here you can create a new watch list
by using the [+] button. In this list, you can insert identifiers that are to
be observed together in the later program run. Further buttons allow you
to delete or edit a list. The last two option fields serve to confirm or cancel
the change ([Ok] button and [Cancel] button).

By generating specific lists, you save time and computing effort, since not
all variables have to be observed.

If the inspection list is switched on as shown in the picture below, the


toolbar appears in a green or blue color. Furthermore, a heart is shown,
which visualizes by means of a heartbeat how often the values in the list
are updated.

The values entered are located under the toolbar. These can be added by
using the [+] button, for example.

78
Manual of the K-IDE The user interface of the K-IDE
[ATTENTION]
If too many values are observed, the program can
become very slow or even the connection to the ro-
bot can be interrupted.

3.8.1 Adding expressions to the inspection list

In the simplest case, new entries can be added to the inspection list via
the various editors. However, there is another possibility: if you click on
the [+] button in the watch list, a dialog for selecting the new entry ap-
pears.

On the left side of the dialog, you will find the selection of the designators
used in the project. New from version 1.1 are the so-called "system varia-
bles" from the category translation points and precision points. This now
allows e.g., the cyclic display of the target position (DEST resp. #DEST).

79
Manual of the K-IDE The user interface of the K-IDE

On the right side the possibility is offered to add special additional expres-
sions to the watch list. This is needed if there is no variable for a certain
information in the robot and this also cannot / should not be created.

For the commands to be specified, a distinction must be made between


three different types:

1. Single command / single result.


A single command that returns a single value, e.g. "TYPE var".
2. Single command / multiline result
A single command that returns a multi-line result. In the picture
above, for example, the command "WHERE 11" is selected.
3. Multi command / single result
A command that is provided with a loop counter and is called corre-
spondingly often, e.g. "DEXT (HERE,<i>)". The number of loop
passes is parameterized below (for all axes or from-to).

3.8.1.1 Parameterization of single command multi-line result


For this command type, the K-IDE must know which line of the command
output contains the values to be displayed. This information can be en-
tered in the input line "Result line". To find out this line, you can click the
[Read] button. The K-IDE then executes the selected command and in-
serts the output into the text box.

80
Manual of the K-IDE The user interface of the K-IDE

You can see from the text above that the result is in the third line. Clicking
on the third line in the text box enters the number "3" under Result line. If
you want to use a line of the output as a comment, click first on the line
containing the desired comment and then on the [-> Comment] button.
Do not forget to set the result line correctly before confirming this dialog.

3.8.1.2 Multicommand single result parameterization


For this command type a loop counter ("<i>") is inserted and the specified
command is repeated according to the parameterization.

In most cases this command type will be used to read out the axis values
of the individual axes. However, it is also possible to select a free count.

3.8.2 List of predefined commands

The K-IDE offers the possibility to save frequently used commands in or-
der to be able to select them from a list the next time. To display this list,
click on the [...] button at the top right of the dialog box next to the com-
mand. The "Commands for the watch list" window opens, in which all pre-
defined commands are listed.

By double-clicking on an entry, the corresponding command including its


parameters is entered in the previous dialog.

81
Manual of the K-IDE Dialogue windows
Using the first three buttons [+], [-], [Pen] you can add new entries to
the list or delete entries, as well as edit entries. When adding or editing an
entry, the following dialog appears:

The dialog is similar to the right half of the dialog for creating a new entry
in the inspection list and is operated in the same way.

4 Dialogue windows

The following chapter introduces all dialog boxes of the K-IDE. It does not
refer back to the chapters that appear. The references are based on the
user interface.

4.1 File operations

4.1.1 File New

All available templates are displayed in the "New AS file" dialog box. When
you select a template from the list, a short description of the template ap-
pears.

82
Manual of the K-IDE Dialogue windows

1 2

1. Templates: A list of all available templates is displayed here. The


picture shows the templates supplied "ex works". You can create ad-
ditional templates yourself.
2. Description: A short description of the currently selected template is
displayed here. This is the project comment of the template.
3. Do not use a template: If you select this option, no template is
opened, but you start with an empty project file. Enabling this op-
tion locks the template selection.

4.1.2 Close file

If you want to close an AS file that has been modified but not yet saved,
the following dialog box appears. Here you are informed whether the
changes are to be saved.

4.1.3 Save file as template

If an AS file is to be saved as a template for further projects, you can se-


lect which components are to be included in the template in the window
shown below. Here you can roughly divide the data into system data (1)
and user data (2).

83
Manual of the K-IDE Dialogue windows

1 2

The system data includes the fixed components "AS file comment" and
"Network configuration 1 and 2", as well as the dynamic components un-
der "Sections". The number and type of sections depends on the robot,
controller and firmware type.

The user data includes all data required to create a robot program, i.e. es-
sentially programs and variables.

84
Manual of the K-IDE Dialogue windows

1. The following elements can be selected in the system data column:

• The AS file Comments


This is the text that each file loaded by the robot starts with. It
contains version information about the controller software.

• The network configuration 1 + 2


The setting of the two Ethernet interfaces is stored here.

• The different sections


The sections found in the AS file are listed in the list. Since the K-
IDE does not use the sections, they are only "passed through",
i.e. loaded and saved with the AS file. Among the most used sec-
tions are the following:

• ROBDATA
Among other things, the robot type, the serial number and
the language are transferred from the robot / controller.

• SYSDATA
Here the SYSTEM data is transferred in the AS file

• AUXDATA
Transfer of AUXDATA in the AS file if signals are present
(even if they are deleted afterwards)

2. The following functions can be selected in the robot program:

• Interface panel
Transfer of the interface panel // Both in the tree and in AS file

• Programs
Transfer of the programs // Both in the tree and in AS file

• IDE comments
Transfer for the declaration of the identifiers / only visible in the
AS file

• Translation points
Transfer of all points without definition into different categories

• Precision points
Transfer of the precision points

• REAL identifier
All REALS are accepted (REALS, Signals, Booles)

85
Manual of the K-IDE Dialogue windows
• STRING identifier
Transfer of the strings

• INTEGER identifier
Takeover of the integer

86
Manual of the K-IDE Dialogue windows
4.1.4 New project comment

After a new AS file has been created, the following dialog box appears. In
this dialog box, you can enter a comment for the created AS file. In this
way, later users can also see for which application area the file was cre-
ated.

If no comment is required, the window can be closed with the [Close] but-
ton in the upper right corner or with the [No comment] button.

If an entry has been written, it can be viewed, changed or deleted in the


AS tree on the Project Comment tab.

4.1.5 Entry in the project history

After opening a project, the following dialog box is displayed. Here you
can create an entry for the project so that you can later track how the AS
file was developed. To do this, you can set the date and time at which the
project starts. The current date and time are displayed there by default. If
no documentation is to be made for the project history, the checkbox in
the middle of the window can be ticked so that no further prompts appear
when opening a file.

If an entry has been written, it can be viewed, changed or deleted in the


AS tree on the Project Comment tab.

87
Manual of the K-IDE Dialogue windows

4.1.6 Compare AS files with each other

If you compare two AS files, the external program (WinMerge) shown be-
low is called. Here you can see the project file on the left and the compari-
son file on the right.

Furthermore, an overview of the two files is shown on the left side (posi-
tion bar).

To see the number of differences at a glance, a counter is displayed in the


lower right corner of the WinMerge window, so that the size of the vari-
ance can be estimated directly from the files.

In general, identical lines are marked white, similar lines yellow and differ-
ent or missing lines grey when comparing.

88
Manual of the K-IDE Dialogue windows
4.1.6.1 Recommended settings of WinMerge
In order to compare two AS files meaningfully, some changes should be
made in the configuration of WinMerge. These changes take into account
the different formatting of the AS file.

The settings shown in the picture have led to good results in practice
when comparing programs.

4.2 Connection operations

4.2.1 Connection Manager

The Connection Manager allows you to create and modify a list of connec-
tions. For each IP address with which you want to connect to the robot,
there must be an entry in this list. The list maintained here is displayed
when a connection is established.

The screen displays the list of connections that are shipped "ex works"
with the K-IDE (1). The first 8 entries are used to connect up to 8 virtual
robots parameterized in K-Roset. Below this you can see the "Default" en-
try, which addresses Ethernet port 1 with its default IP address.

89
Manual of the K-IDE Dialogue windows
The area (2) is the editing area for a new or currently selected entry. If
you select an entry in the list, the data of the connection appears in the
editor area. The selected data can then be made editable by using the
[Pen] button to make changes. With the help of the [+] button a new con-
nection can be created and with the [Delete] button the current entry can
be deleted.

4.2.1.1 Add a connection


Press the [+] button to enter a new entry:

1 2

The input fields of the editing area are enabled and the input cursor
moves to the "Name" field in which the name of the new connection to be
created must be entered. You can also select a serial connection type by
clicking on the "COM" tab.

In the picture above you can see that the edit buttons (1) are shown in
grey which means that these buttons are no longer selectable. You are in
editing mode. You can also see that the two buttons for confirmation and
cancellation (2) have been activated.

4.2.1.2 Edit connection data


When you press the [Pen] button in the Editing Area, the editing of the
currently selected item is enabled.

The edit and confirm buttons behave exactly the same as when adding a
connection.

4.2.2 Establish connection

To establish a connection, the following dialog window is called up. The


window shows all stored connections with name, connection IP/COM, and
port/BAUD that were created for the K-IDE. You can connect a connection
by double-clicking on the corresponding line.

90
Manual of the K-IDE Dialogue windows

When clicking the [+] button you can add a single connection to the list
and immediately connect to the robot.

The [Gear] button allows you to access the connection settings or the con-
nection manager.

If a robot was connected to the K-IDE during a previous operation and the
K-IDE is restarted, the following dialog box appears. It shows the details
of the last connection with name, IP/COM and port/BAUD.

This window allows you to reconnect to the last used robot. Optionally you
can select another connection with the button [Other connection]. If you
want to use the displayed connection, simply press <Enter> or press the
[Connect] button.

After pressing the [Connect] button in one of the two windows shown
above, a progress dialog will appear informing about the status of the con-
nection.

If the "Backup on connection" function is enabled, an automatic backup of


the connected robot is created after a successful connection.

If the robot cannot be connected, an error message appears. This can


have several causes (wrong choice of connection, robot switched off, cable
not plugged in, etc.).

91
Manual of the K-IDE Dialogue windows

1 2

92
Manual of the K-IDE Dialogue windows
4.2.3 Disconnect

Before disconnecting a connection, a dialog box appears, depending on


the relevant setting in the options, in which you can specify which data
should be synchronized with the K-IDE project before disconnection.

1. Send project documentation to the robot: Before disconnect-


ing, all comments of the K-IDE are sent to the robot. This is a
good way to keep a current comment status on the robot.
2. Clean up the list of signal names: The list of signal names for
the display on the teach pendant is newly generated on the
basis of the current signal lists (see "4.2.14 Clean up signal
name list" on page 111).
3. Load system data from the robot and add it to the project:
The current system data is loaded from the robot and replaces
the (possibly older) system data existing in the K-IDE project.
4. Load variable contents from the robot and add it to the pro-
ject: All variables are loaded from the robot with their current
values and are then added to the K-IDE project.
5. Switch off sending robot messages: The sending of messages
from the AS program is switched off after the connection is
disconnected. This serves to optimize the execution speed of
the robot program. All output commands of your software that
refer to the terminal (PRINT or TYPE) are ignored. The mes-
sage sending is automatically switched on again with every
connection, so that the K-IDE can always display messages.

The default setting of each of these checkboxes can be changed in the


settings. You can also specify in the settings whether this dialog is dis-
played at all when the connection is disconnected.

93
Manual of the K-IDE Dialogue windows
4.2.4 Reinitialize connection

Background: The connection to the robot is managed in the K-IDE in a


special process (thread). This process runs parallel to the rest of the pro-
gram of the K-IDE. When a connection action (sending or requesting data)
is performed, the foreground process starts a request to the background
process. The background process handles the request by performing the
desired actions through the connection to the robot. This may take some
time depending on the transfer speed. During this processing time, the
foreground process must wait for the data. The foreground process is then
in a wait loop until the background process delivers the data.

During an online session, the connection may "hang" under certain cir-
cumstances. In such a case it may be useful to reinitialize the blocked
connection. This can be done in three different stages.

The following dialog appears before re-initialization:

1. Break the communication loops: The wait loop of K-IDE’s fore-


ground process is terminated and the system no longer waits for
the result of the request to the background process. Of course,
the background process may still be busy with the request and
will not accept another request. This is the re-initialization with
the least depth.
2. Disconnect and reconnect: First, as in step one, the waiting loops
are aborted. Then an attempt is made to disconnect the connec-
tion. After a short waiting period, an attempt is made to reestab-
lish the connection.
3. Abort the communication process and reinitialize: This is the
most extensive stage of re-initialization. First, all waiting loops
are aborted and the connection is terminated (stages 1 and 2).
Then the complete background process is terminated and reset.
Then the background process is restarted and the connection is
reestablished.
94
Manual of the K-IDE Dialogue windows
Please note that this function should only be called in exceptional cases.
An interruption of the normal connection process can have far-reaching
and unforeseeable consequences. If a transmission from or to the robot is
interrupted, this may result in longer waiting times for a new transmis-
sion. The reason for this is a timeout while waiting for data on the control-
ler side. This means that you may have to wait some time after a trans-
mission abort before you can send or receive data again. This can take up
to several minutes.

4.2.5 Load system data from the robot

This function is used to transfer the current system data from the robot to
the K-IDE project. After selecting the menu item, the following dialog ap-
pears:

1. AS File Comment: In this area the firmware version numbers of the


AS and servo software are given. This information is not functional,
but informal, i.e. a change to this data has no effect on the control-
ler's function. The area is marked by AS comments (".*").
2. Network configuration 1: The setting of the first Ethernet interface is
stored here.
3. Network configuration 2: The setting of the second Ethernet inter-
face is stored here.
4. Sections: Here all sections of the robot are listed. The number and
names of the sections can differ from controller to controller and
from robot to robot.

If you want to save the current robot settings in your project, it is safest
to select all the data shown.

95
Manual of the K-IDE Dialogue windows
4.2.6 Send everything to the robot

This function is useful if you want to transfer many different or all data
from your project to the robot. After selecting the function, the following
dialog box appears where you can select the data to be sent:

1 2

1. System data: For a description of the system data, refer to chapter


"4.2.5 Load system data from the robot" on page 95. Important
note: Only send the system data to the robot if you have detailed
knowledge of the data contained and its effects! Incorrect system
data can lead to damage!
2. User data: Here you can select which program parts are to be sent
to the robot. Important note: When transmitting variable lists,
please note that the variables already on the robot are set to the
value entered in the K-IDE project!
3. Transfer options: Here you can select which actions should take
place before the transfer. For most transfer functions it is necessary
to kill the currently running program and/or the currently running
background programs and to switch off the motor. Please change
this default setting only if you are sure that this is not necessary!
The last-mentioned item "Deletion of (no longer) existing variables
and programs from the robot's memory" will only take place after
the actual transfer. Here the system searches for all programs and
variables in the robot which are not available in the K-IDE project
and these are displayed for selection.
4. List of background processes: Here you can select the background
processes to be terminated. The processes are terminated in the

96
Manual of the K-IDE Dialogue windows
specified order. This is important if you are using a so-called "watch-
dog process". This must then be terminated first. You can change
the order by "Drag & Drop".

The pictures show exemplarily the new arrangement of the 5th task as the
first task to be killed.

97
Manual of the K-IDE Dialogue windows
The following message is displayed after pressing the [Ok] button if you
have selected one of the variable types:

The following message is displayed if you have selected the ".RO-


BOTDATAx" entry in the sections:

After all requests have been confirmed with [Yes], a progress window ap-
pears with information on the execution of the commands for the trans-
mission options:

98
Manual of the K-IDE Dialogue windows
The desired AS data is then transferred:

If you have chosen to delete programs and variables from the robot that
no longer exist in the project, a selection of the relevant programs and
variables will appear at the end. You can read a detailed description in
chapter "4.2.13 Remove online variables and programs" on page 110.

99
Manual of the K-IDE Dialogue windows
4.2.7 Marry project with robot

The function "Marry" is used to transfer an existing K-IDE project to an-


other robot with simple means and as safe as possible. The goal is to
match the data in the K-IDE project and in the robot. For this purpose, the
AS data is, roughly speaking, divided into two parts: the system data and
the program data (user data). This division is done on the robot side as
well as on the K-IDE side and the resulting relevant parts are then assem-
bled to a new project.

For the new (resulting) K-IDE project, the system data from the currently
connected robot and the program data from the original K-IDE project are
used. The following graphic illustrates this relationship:

Robots New project Old project

System data System data System data

Program data Program data Program data

100
Manual of the K-IDE Dialogue windows
The following dialog box is called up when you select this function:

In this window all steps of the wedding are listed.

1. Data backup: At the beginning a data backup of the current K-IDE


project as well as the connected robot is created in the current pro-
ject directory. This is for security purposes and allows to return to
the original state at any time.
2. Acceptance of the robot settings: All system data are loaded from
the robot and transferred to the K-IDE project. The system data
previously existing in the K-IDE project is deleted.
3. Transfer of the program data: All program data (user data) is de-
leted in the robot and replaced by the program data of the K-IDE
project. This data includes:
- Programs
- Variables
- Interface Panel
- IDE comments

After confirming the dialog with [Ok], all steps are performed one after
the other. As a success message, each completed step is marked with a
check mark instead of the horizontal bar.

101
Manual of the K-IDE Dialogue windows

After completion of the function, the same AS data are on the robot and in
the K-IDE project.

4.2.8 Abort and kill programs

In order to transfer running programs, they must first be aborted and


killed. If you try to transfer a program that is currently running, you will
receive an error message.

Cancel (ABORT) stops and resets a program. It can then no longer be con-
tinued. When killing (KILL) the entire call memory and the program selec-
tion is deleted. This can be seen on the teach pendant by the fact that the
field at "Program" is empty.

A termination or kill does not, as one might think, terminate a specific


program, but rather terminates a process in a specific context (task, pro-
cess, thread).

The robot controller knows three different types of tasks:

1. Foreground Task
2. Background Task
3. NumPG Task

The foreground task exists only once for each robot arm and only in this
task can robot movements be performed for the specific arm. In most
cases this task is only present once in the controller. An exception is the
special DuAro (Dual-Arm-Robot). In this case there are two foreground
tasks.

There are other independent tasks, but they cannot be used for robot
movement. They are therefore called "background tasks". Normally
there are 5 background tasks available.

Furthermore, there is another very special task available: the “NumPG


task”. This is mostly used in connection with the integrated PLC function-
ality (K-Logic).

4.2.8.1 Abort and kill the foreground program


Cancels the program running in the foreground and kills it. When you se-
lect this function, the following message appears first:

102
Manual of the K-IDE Dialogue windows

After confirmation with [Ok] the command "ABORT" and "KILL" is


transmitted to the robot.

Please note that a foreground program cannot be aborted while the robot
is moving. In such a case, you can switch off the motors before. This will
cause the robot movement to stop (soft stop) and the motors to be
switched off. Afterwards, the program can be aborted without any
problems.

103
Manual of the K-IDE Dialogue windows
4.2.8.2 Abort and kill background programs
When this function is selected, the following dialog is displayed:

Here you can select which background programs are to be aborted. You
can also change the order of the tasks in this dialog. For more infor-
mation, refer to chapter "4.2.6 Send everything to the robot" on page 96.

After selecting [Ok], the commands "PCABORT" and "PCKILL" are sent to
the robot for each selected task.

4.2.8.3 Abort and kill NumPG program


When this function is selected, the following dialog appears:

If [Yes] is selected, the "NUMABORT" and "NUMKILL" commands are sent


to the robot.

4.2.9 Start main program

A main program is a specially marked foreground program. It designates


the first program to be started in the foreground. The robot programmer
chooses which program is to be the main program. All other foreground
programs are called from this main program.

Look at the AS file template "KRG" as an example. In this example "Main"


is used as the main program. From “Main” the programs "Init", "GoHome"
and "Work" are called. In the program "Work" an endless loop is pro-
grammed, which describes the process. If for any reason the robot pro-
gram is aborted, it should be safely restarted by calling "Main". The re-
spective robot programmer is responsible for ensuring that this is safely
possible.

To give other programmers an indication of which program should be used


as the main program, this program can be defined. A main program is

104
Manual of the K-IDE Dialogue windows
shown in the AS Tree with an asterisk instead of the usual program sym-
bol:

If no main program is selected when you select this function, the following
message appears:

If a main program is defined, the dialog box for starting programs is dis-
played:

In this window, you can select what should take place before the transfer
(start options) and in which task the program should be started.

The following is selected by default in the startup options:

 Clear error: A possibly pending error is reset.


 Engage engines: Engaging engines.
 Kill foreground process: Any program selected in the foreground is
terminated.

The start option "kill background processes" can usually be neglected


when starting the main program.

For the options "Execute" (where should the program be started) only the
foreground makes sense for the main program.

105
Manual of the K-IDE Dialogue windows

WARNING

When operating a robot with the K-IDE, it is nec-


essary to always have an emergency stop switch
close to the operator, because the K-IDE can be
used to move the robot.

4.2.10 Set coordinate systems

To set the base coordinate system, the following dialog box opens, in
which you can define a new coordinate system using the drop-down list.
The entry "NULL" sets the base coordinate system to 0 (base zero), which
is the default setting. Click the [OK] button to confirm this action.

To set the tool coordinate system, the following dialog box opens, in which
you can define a new coordinate system using the drop-down list. The en-
try "NULL" sets the tool coordinate system to 0 (tool zero), which is the
default setting. Click the [OK] button to confirm this action.

106
Manual of the K-IDE Dialogue windows
4.2.11 Moving robots

During commissioning and testing of the program, it often happens that


robot movements to certain positions have to be tested or that the robot
has to be brought to a defined position to test a certain movement. To be
able to do this easily and clearly, the K-IDE implements the function
"Move Robot".

After selecting this function, the following dialog box appears:

1 7 6

3 4

10 11 9

The following flow types are supported:

 JMOVE
 LMOVE
 HMOVE
 JAPPRO
 LAPPRO
 JDEPART
 LDEPART
 DRAW
 TDRAW
 DRIVE
 HOME
 ALIGN

To be able to use the functionality, first choose the desired movement


type from the selection list "Movement type" (1). Once you have made
your selection, various input fields are released under "Target / Movement
107
Manual of the K-IDE Dialogue windows
parameters" (2), depending on which parameters are permitted for the
selected movement type. In addition, a short note (3) describing the
movement type appears for each movement type. For more detailed infor-
mation on the individual commands, please refer to the "AS Language
Reference Manual" for the relevant controller.

The input field for the target position in (2) has a special functionality: all
previously selected positions are saved here, which can then be selected
again more quickly. It is a selection list in which an input is possible. If
you know the exact name of the position, you can simply enter it here. If
you do not know the name, press the [...] button to obtain a selection of
all position variables available in the project.

Under "Travel parameters" (4) you can specify the speed and ramps at
which the movement is to be executed. Please also refer to the above-
mentioned manual for more detailed information.

In addition, under "Preparation" (5) you can select whether any existing
error should be deleted for the movement and/or the motors should be
switched on. If there is no error or the motors are already switched on,
the two functions have no effect. They can therefore be left selected by
default.

After starting a movement, the movement command including the param-


eters is entered in the "Movement history" list (6) in order to be able to
easily execute this movement again later.

The "Arm" selection list (7) is only enabled if you are connected to a
"DuAro". In this case you can select the corresponding arm with which the
movement is to be performed.

Under "BASE and TOOL" you can set the tool and/or base reference for
the next movement.

The actual movement is executed with [Start] (9). ATTENTION: Please


observe the safety precautions for moving the robot (emergency stop but-
ton nearby, no persons in the movement area of the robot, etc.)! To start
the movement, the robot must be in REPEAT mode and the TEACH-LOCK
switch must be in the "LOCK" position. See also the "AS Language Refer-
ence Manual" or "User's Manual" for more information.

With [Close] (10) the dialog window "Move Robot" is closed. Since this
window is not a "modal" dialog, you can always leave it open while work-
ing with the K-IDE and use it when needed.

108
Manual of the K-IDE Dialogue windows
The [Hold] button (11) is used to briefly stop the movement currently be-
ing executed. To continue the movement, the corresponding movement is
simply selected again and then restarted. ATTENTION: The [Hold] button
described here is not used to safely stop the movement! In a dangerous
situation, the emergency stop button on the teach pendant or on the con-
troller must be used! The Hold button on the teach pendant is best suited
for fast, gentle stopping, as it reacts much faster than the [Hold] button in
the dialog window described here.

4.2.12 Online variable list

The "Online Variable List" provides a quick overview of all variables availa-
ble in the robot and their contents. The aim is a variable overview of the
connected robot (as far as possible) independent of the currently loaded
project.

3 1 2

The window displays the individual variable categories in lists. By selecting


the variable category in the toolbar (1) the variables to be displayed in the
list below (4) are selected. The current selection is shown on the respec-
tive button (here "REALS") and in the text line (2).

A variable that exists in the robot but not in the K-IDE project is specially
marked (5). However, variables that are in the K-IDE project but not in
the robot are not displayed!

This window primarily has an informal function. However, it is possible to


transfer selected variables with current contents to the K-IDE project. To
do so, select the desired variables with the usual methods in Windows
(right click, <Ctrl> -right click and <Shift> -right click) and press the
download button (robot symbol with green arrow pointing downwards).
Then all variables are loaded with current online content and transferred
to the current K-IDE project. Previously marked variables will no longer be
marked after this action, because now these variables are also available in
the K-IDE project.

The left column is used to select lines in a variable list. The selection of
one or more rows is indicated by the blue row. You can...

109
Manual of the K-IDE Dialogue windows
 Select a point with a single click
 Select several separate points by clicking and holding the [Ctrl] key

Ctrl +

 Select a series of points below or above each other. To do this, select


the first point with a single mouse click and then select the last point of
the series by holding down the [Shift] key.

Shift +

 Select all points by pressing the upper left cell.

4.2.13 Remove online variables and programs

At the end of a commissioning there may be some variables and programs


in the controller that are no longer needed and no longer exist in the K-
IDE project. This can happen if you delete or rename variables or pro-
grams in the project.

It is therefore advisable to clean up the program in the controller from


time to time. To do this, select "Connection / Online toolbox / Remove
online variables and programs" in the menu. Alternatively, the function
can also be selected when transferring the project data to the robot (see
Chapter "4.2.6 Send everything to the robot" on page 96). After starting
the action, all program data is first loaded from the robot and searched for

110
Manual of the K-IDE Dialogue windows
identifiers which no longer exist. Then the result is displayed in the follow-
ing window:

If no unused identifiers are found, the following message is displayed:

If you want to remove online variables and programs, the system will first
search for unused identifiers and programs. If they are not used in the AS
file, they appear in an ordered list as shown in the figure above. Here you
can now select all variables and programs to be deleted by the robot. The
whole thing is used to clean up the robot after the commissioning is fin-
ished.

4.2.14 Clean up signal name list

The signal name list is generated by the K-IDE based on the configured in-
puts and outputs and is transferred to the robot when signals are trans-
mitted. However, it may happen that signals are deleted during program-
ming and commissioning. These signals remain in the list even after dele-
tion.

To delete signal names that no longer exist from the list, the list must be
rebuilt and transferred to the robot.

If the list is already current when you call this function, the following mes-
sage is displayed:

111
Manual of the K-IDE Dialogue windows

4.3 AS-Toolbox

The AS-Toolbox is a collection of functions that are intended to make the


programmer's work easier. Essentially, the functions map the parameteri-
zation of the robot in the K-IDE, which otherwise must be carried out via
the teach counterpart. In the K-IDE, an attempt is always made to display
the functions in an optimized manner in the context of programming and
thus to increase convenience.

4.3.1 Signal allocation

4.3.1.1 Simple signal allocation


The aim of the simple signal assignment is to assign signals from different
sources as quickly as possible in a generally valid way. In most cases, a
simple signal assignment is sufficient to map the different bus systems on
the robot.

The requirements for the use of the simple signal assignment are:

 The three signal blocks (local, master, slave) must be contiguous.


 Each block must start with the first signal.
 Signals from different blocks cannot be mixed.
 The blocks must follow each other without gaps.

The simple signal assignment is parameterized in the following dialog


window:

5
1 4

112
Manual of the K-IDE Dialogue windows
Under signal definition (1) the respective block size is entered. This indi-
cates the maximum size of the block, but it may be that not all signals of
the block are assigned. The value for Internal designates the internal sig-
nals and is thus detached from the order of the I/O signals.

The selection field Order (2) allows to specify in which order the blocks
should be mapped to the signal area of the robot. By default, the order is
specified as follows:

Lokal -> Master -> Slave

In the third section of the window (Result (3)) the result of the values
given above is displayed. Here you can quickly read which signals of the
robot are in which blocks of the individual devices.

The radio buttons under Unit (4) can be used to change the display and
input. By default, the input is made in the unit Bits. However, the entries
can also be made in bytes (8 bits) or words (16 bits), which could corre-
spond more to the respective specification in the manuals of the bus de-
vices.

The dialog window offers a toolbar (5) in the upper left corner with the
possibility to transfer or export and import signal assignment data from
and to the robot.

113
Manual of the K-IDE Dialogue windows
When calling the simple signal assignment, the data from the currently
opened project are loaded and when leaving the dialog with OK, the en-
tered or changed data are saved in the project.

4.3.1.2 Extended signal allocation


In some rare cases, the simple signal assignment cannot meet the specific
requirements. This is the case if the areas of the individual bus systems
are divided into segments or if areas are not to start at the first signal. In
such cases, the extended signal assignment is available.

1 2

On the left side (1) the I/O area of the robot is shown. All possible signals
of the robot from 1 to 960 are listed here. The signals are grouped in
groups of 16 signals each. These groups indicate the smallest division of
the I/O signals. For each group one line is provided. The columns indicate
the respective device, whereby a distinction is made here between the de-
vices local, master and slave.

On the right side of the dialog (2) the address range of the devices is
shown. Exactly as on the robot side so also here in each line an address
group of 16 bits is indicated. Above the list it can be specified from which
bit (signal) the address range starts and how large the total address range
should be. All entries in the input lines must be made in steps of 16, be-
cause the address assignment is only allowed in steps of 16. The easiest
way is to use the up and down arrows in the respective input line, because
these already work in steps of 16.

As in the dialog window for simple signal assignment, it is also possible


here to load an existing signal assignment from the robot or from a file

114
Manual of the K-IDE Dialogue windows
and to send the displayed signal assignment to the robot or to export it to
a file.

4.3.1.2.1 Procedure
If you work with the extended signal assignment, you should first remove
the already assigned signals from the robot. Then enter the maximum
number of signals of the devices (local, master, slave) on the right side.
Please set devices that are not to be used to the maximum number of sig-
nals 0. In the event of an incorrect entry (e.g. 16-pitch not observed), the
input field is displayed in red and the original value is restored. If possible,
use the arrow buttons next to the input fields!

In the respective list the blocks of 16 are displayed according to your in-
put. You can then select from which bit the I/O area of the relevant device
is to start. This is useful if signals at the beginning of the device range are
not relevant for the communication to the robot.

For example, the following picture emerges:

Please note the respective selection of the individual blocks in the follow-
ing assignment! In the picture above the first block (signal 1 to 16) is se-
lected.

In the robot I/O list, you can now insert a currently selected block from
the device at the corresponding position by double-clicking on a desired
field and thus assign it. Depending on which column you double-click, a
block from the respective device is assigned.

For example, if you want to assign the blocks shown above from the slave
device, double-click on a field in the slave column of the robot list.

115
Manual of the K-IDE Dialogue windows

The block of slave signals 0001-0016 is then deleted from the list of slave
signals and inserted into the list of robot I/Os. In the picture shown above
the slave area has been assigned to the robot signals 0001-0016.

You can also assign several signals of a device at once. To do this, select
all signals in the device that you want to assign:

If you then double-click in the robot list on the desired field in the column
of the device and the line of the desired signal range, the complete se-
lected range appears in the robot list and is thus assigned.

116
Manual of the K-IDE Dialogue windows

To delete an already assigned area from the robot list and return it to the
pool of available device signals, select the corresponding fields in the ro-
bot list and press the right mouse button. Then select the "Remove" menu
item. All entries are then removed and reappear with the devices on the
right side. You also have the possibility to remove the signals from several
devices at once. You can even select the complete list and press Remove.

The selection of the whole list is done, as usual, by clicking on the first
field of the list in the upper left corner.

4.4 Search operations

4.4.1 Search for an identifier

"Identifier" in the terminology of the K-IDE are all units relevant to the
program of the robot. Identifiers include variables and programs. Identifi-

117
Manual of the K-IDE Dialogue windows
ers are grouped together in groups that differ in variable types or pro-
grams. Each identifier has a name. Unfortunately, the AS system does not
allow a clear assignment of name and identifier. This means that the same
names can be chosen for different identifiers without any errors occurring.
However, you as a programmer should avoid this!

After selecting the function, the following dialog box appears:

The [...] button allows you to select the desired identifier from a list:

By double-clicking on the desired identifier or selecting it with a single


click and then clicking [Ok], the selection is accepted and the identifier is
searched for. The search result is displayed in the search window:

118
Manual of the K-IDE Dialogue windows
As an example for the identifier search, "MyTool" from the "KRG" template
was used here. As you can see, the variable was found in the tool defini-
tion (variable list for tools) and in the program "Init", line 16. In pro-
grams, the entire line is given for the location of the variable found, in the
example the command "TOOL MyTool" with a corresponding line com-
ment.

By double-clicking on the desired location, K-IDE opens the corresponding


window in the tab area and marks the entry (e.g. the location in the pro-
gram):

As you can see, the search window now becomes transparent and the in-
put focus switches to the location of the search result. So you can view
the search window as well as the place where the identifier was found. In
programs, the identifier name is marked, while in variable lists the com-
plete line is selected. The search window can remain open while you look
into the program. Afterwards you can use the window again at any time
and jump to the next found location, for example. When the search is
complete, the window can be closed with [Close].

4.4.2 Search text

The text search is very similar to the identifier search. However, here a
free text in programs or variables is searched for. The free text can be in
identifier names and comments, as well as in program texts as part of AS
commands, identifier names, static strings and comments.

The Text Search dialog box looks very similar to the Identifier Search
dialog box:

119
Manual of the K-IDE Dialogue windows

Enter the text you want to search for under "Text" and then press
<Enter> or the [Search] button. As an example, in the template "KRG" we
search the text "init" and get the following result:

The character string "init" is therefore found at the positions shown. By


default, the search is not case-sensitive and will also find parts in words,
such as in base definition. If you now select the option "Case sensitive"
and press [Search] again, a slightly different picture is displayed:

As you can see, the program "Init" and the comment "Initialization" are no
longer found, because the case does not fit here.

In the same way, you can try the option "Only whole words", which leads
to the following result:

120
Manual of the K-IDE Dialogue windows

In this example, only the program "Init" is found, because it is a whole


word and is not case-sensitive. If you select both options for the given
example, nothing will be found.

The selection of the desired location and the behavior of the window is
analogous to the previous section "4.4.1 Search for an identifier" page
117. Please read there for further information.

121
Manual of the K-IDE Dialogue windows
4.5 Program Options

4.5.1 Settings

Under "Settings" you can select options that influence the behavior and
operation of the K-IDE. The dialog box is divided into four areas that can
be accessed via a tab bar.

4.5.1.1 General settings


When the "Settings" dialog box is opened, the first page is displayed di-
rectly. This page contains the general program settings for the K-IDE:

1
2
3

5
6
7

1. Language: Here you can set the language of the K-IDE interface.
2. Project root directory: Here you can specify a base directory for
storing projects. If you work with the project tree, you can select
the origin of your project tree here (e.g. "D:\Develop\Kawasaki\Ro-
bot"). With the help of this entry it is very easy to switch to another
data structure without having to rebuild the complete project tree.
3. Author: This entry is taken into account when creating new pro-
grams. If this line is left empty, the current Windows user name is
entered.
4. Troubleshooting Manual: Here you can select the location of the
Troubleshooting Manual. This PDF document is not part of the K-IDE
and must be obtained separately from Kawasaki. The manual can be
used in the "Error Log" dialog (see section "3.5.4.1 Error log" on
page 58) to facilitate troubleshooting.
5. Load last opened project at program start: When the K-IDE is
started, the last opened project is automatically loaded and the edi-
tors previously opened in it are also displayed.
6. Query project comment when opening the project: If a new project
is created, this setting is used to query a new project comment. In

122
Manual of the K-IDE Dialogue windows
addition, an entry in the project history is queried each time the
project is reopened.
7. Use Document Map in the text editor: This option displays a so-
called "Document Map" on the right-hand side in every text editor,
which provides a better overview of the entire program text.

8. Prevent screen timeout: Prevents the screen saver from switching


on or locking the screen while using the K-IDE. The "Online mode
only" option restricts this functionality to the time the K-IDE is con-
nected to a robot. ATTENTION: When using this option, please take
care of the security of your data on your Programming Unit! If nec-
essary, log out manually when you leave your workstation.

123
Manual of the K-IDE Dialogue windows
4.5.1.2 Online options
The second page of the dialog box is dedicated to the options for the
online mode.

1 4

2 5

1. Establishing the connection: Here you can set what should be done
immediately after a connection to a robot has been established. The
only selectable action here is the creation of a data backup. This
setting is strongly recommended, as it allows you to reset the robot
to the state it was in before the connection was established. The
data backups created in this way are collected and can also be re-
used later. They are saved in the "DaSi" directory (see section
"3.2.1.2 Open" on page 34).
2. Disconnection of the connection: These options relate to the actions
to be performed before disconnecting the connection. The first entry
selects whether a query should be displayed before disconnecting. If
this first entry is deselected, the other options have no effect and
the connection is disconnected directly each time. Deselecting the
query before disconnecting is not recommended!
3. The options shown here all refer to the query dialog when discon-
necting and indicate the default setting of this query. An option se-
lected here is also selected in the query dialog. However, the option
can be individually selected or deselected each time the connection
is disconnected. The individual settings mean:
a. Send project documentation to the robot: This includes varia-
ble comments, the project structure, the classification of sub-
variables (Tools, Base, Signals, ...), the project comment and
the project progress etc.
b. Clearing the list of signal names: See section "4.2.14 Clean up
signal name list" on page 111.
124
Manual of the K-IDE Dialogue windows
c. Load system data from the robot: All system data is loaded
from the robot and replaces the existing system data in the
project. See also section "4.2.5 Load system data from the ro-
bot" on page 95.
d. Load variable contents from the robot: The contents of all var-
iables in the project are set to the current value in the robot.
e. Switch off message transmission: This option sets a "switch"
in the robot that suppresses output to the terminal using the
"TYPE" and "PRINT" commands. This is an optimization setting
to make the robot program run faster. Note: When connecting
the K-IDE to the robot, this switch is always turned on, other-
wise the K-IDE may not communicate with the robot or may
communicate incorrectly. Do not use this option if you or other
programmers work with other connection tools (e.g. KRTerm,
...) on the robot!
4. Timeout during cyclical observation: Switches off cyclical monitoring
after the time that can be changed below it. This setting is used to
reduce the network activities that occur during cyclic monitoring.
5. Add / Remove Identifier: This area decides what should happen
when a new identifier is created and/or changed in online mode.
a. Create identifier offline only: If an identifier is created in
online mode, it is not automatically transferred to the robot.
The identifier is therefore not available in the robot until it is
explicitly sent to the robot.
b. Create identifiers online as well: When you create a new iden-
tifier, it is immediately transferred to the robot and is immedi-
ately available there.
c. Check if identifier already exists: Before sending a newly cre-
ated identifier, checks whether it already exists in the robot
and prevents automatic transfer. This is for security reasons:
if a variable already exists on the robot, it would be overwrit-
ten with the newly created value.
6. Create new position: This area offers setting options for creating a
new item. It is about the default values of the new item variable.
a. Create new position with "0" values: All values of a new posi-
tion (X, Y, Z, O, A, T, JT1, JT2, ...) are set to "0".
b. Create new "safe" position: Assigns numerical values to all
values of a new position that are not accessible to the robot.
This is used to safely mark this position as "not yet taught".

125
Manual of the K-IDE Dialogue windows
c. Read out current position: When creating a new position, the
current position of the robot is read in and suggested as posi-
tion value.
d. Accept current position immediately: The current position of
the robot is not only suggested, but also set directly as the
start value.

4.5.1.3 Text comparison


On this page you can select the external program "WinMerge", which
should help you to compare programs and projects.

If you have not yet installed "WinMerge", you can use the link "Download
WinMerge" to go to the download page of the manufacturer and download
the program. After installing the program, you can select the location of
the exe file under "File path to WinMerge".

126
Manual of the K-IDE Dialogue windows
4.5.1.4 Connection settings
On this page, you can set the TCP/IP parameters for connecting via net-
work.

The value "Timeout (ms)" specifies how long the protocol should wait for a
connection request before the connection is considered failed (unreacha-
ble).

The option "TCP NoDelay" leads to a faster processing of the data to be


sent, but in return also to a higher data volume in the network.

The exact background to these settings can be found on the Internet. The
subject would go beyond the scope of this manual.

127
Manual of the K-IDE Dialogue windows
4.5.2 AS-Syntax

In the "AS Syntax" dialog box, the individual sections for "syntax high-
lighting" the AS language are stored. A change to the data provided here
is far-reaching and only recommended to a limited extent.

These settings tell the Editor component which words and text passages
are used for a specific label.

The text position recognition works with the so-called "regular


expressions" or in short "RegEx". For many of the settings shown, a
precise knowledge of this technique is absolutely necessary. Only the word
lists are easy to use and changes can be made here in urgent cases.

To complete a word list, simply add additional words to the list. Please
note to take a separate line for each word!

128
Manual of the K-IDE Dialogue windows
4.5.3 Colors

In the color settings dialog you can configure the colors of the editor with
syntax highlighting.

2
3

On the first page you can select the scheme. There are up to four color
schemes available, of which the first two are already preset. The first
scheme is the "DOS IDE" scheme, which is somewhat similar to the "good
old" DOS development environment. The second schema is named "Win-
dows" and is rather inspired by development environments on this plat-
form. The other two schemes can also be adapted and used.

Furthermore, you can make the basic settings of the selected scheme on
the first page.

1. Character set: Here you can select the desired character set of the
schema. A standard Windows dialog is displayed:

2. Font color: Here you can select the color of the font that does not
correspond to any category defined in the syntax. A corresponding
Windows standard dialog is also displayed here:

129
Manual of the K-IDE Dialogue windows
3. Background color: Here you can set the default background color for
the editor. The same dialog opens as for the font color.

On the second page of the dialog box, the colors of the individual syntax
elements can be specified.

1
2

3
4

1. Category: This is the list of syntax categories as described in the


previous section ("4.5.2 AS-Syntax" page 128). Select the category
to be changed here.
2. Preview
3. Text attributes: Here you can select how the text for this category
should look like.
4. Font color and background color: Here you can set the colors for this
category. This is done analogous to the color selection on the first
page of this dialog box.

130
Manual of the K-IDE Dialogue windows
4.6 Help operations

4.6.1 Updates

4.6.1.1 Check for updates


Selecting this menu item searches for updates of the K-IDE on the update
server. The result of this search is displayed in the window. Prerequisite is
of course a working internet connection and a firewall that allows this
search.

1 2

1. This line displays the result of the update search. In the case shown
above, the K-IDE version is up to date.
2. The [?] button displays the release notes of the current K-IDE ver-
sion.

3. Download and install Setup: This downloads the latest K-IDE version
from the update server and then runs the setup.
4. Visit update server: A click on this link takes you to the update
server in your default browser. There you can view additional docu-
ments, such as the version history. There you will also find a setup
file for WinMerge.

If updates are available, the window looks like this:

131
Manual of the K-IDE Dialogue windows

The release notes of the new version are automatically displayed in this
case.

4.6.1.2 Update
With every K-IDE start a new version of the software is searched for. Of
course, this only works with a working internet access and a suitable fire-
wall.

If a new version is found, the following dialog box is displayed:

The displays and buttons provided here correspond to those already de-
scribed in the last section. Only the [Skip this version] button has been
added. If you press this button, the displayed version will be ignored and
at the next start this version will not be reported as new version anymore.
Only if another new version appears, it will be reported again when start-
ing the K-IDE.

4.6.2 The K-IDE Support Forum

Selecting this menu item opens a dialog box which redirects you to the K-
IDE support forum:

132
Manual of the K-IDE Dialogue windows

Please familiarize yourself with the Privacy Policy and Forum Rules before
registering with the Forum. You can quickly access the relevant docu-
ments using the links provided. Alternatively, you can go directly to the
forum and register there. When you register, you will be asked to read
and confirm the Forum Rules and Privacy Policy.

133
Manual of the K-IDE Dialogue windows

1. Choose a username, password and enter your email address. Atten-


tion: A confirmation email will be sent to the email address you en-
tered. You will have to reply to this email before the registration is
really complete!
2. Use the two checkboxes to confirm that you have read the Privacy
Policy and the Forum Rules.
3. Confirm the security check by entering the letters shown.

You will then receive an e-mail with a link. Only after you have clicked on
this link, the registration is complete.

4.6.3 Program information

The following dialog box appears when the program information is called
up:

134
Manual of the K-IDE Dialogue windows
The version and the libraries used are displayed.

4.7 Dialog box in the project tree

4.7.1 Create customer group

When you select this function, the following dialog box appears:

In this dialog, enter the desired name in the description of the customer
group and confirm with [Ok] to add the group.

4.7.2 Edit customer group

When you select this function, the following dialog box appears:

Change the name and/or description and confirm with [Ok] to accept the
changes.

135
Manual of the K-IDE Dialogue windows
4.7.3 Create new customer

When you select this function, the following dialog box appears:

In this dialog, enter the desired name in the description of the customer
and confirm with [Ok] to add the customer.

4.7.4 Edit customer data

When you select this function, the following dialog box appears:

Change the name and/or description and confirm with [Ok] to accept the
changes.

136
Manual of the K-IDE Dialogue windows
4.7.5 Create new project group

When you select this function, the following dialog box appears:

Enter the desired name in the description of the project group in this dia-
log and confirm with [Ok] to add the group.

4.7.6 Edit project group

When you select this function, the following dialog box appears:

Change the name and/or description and confirm with [Ok] to accept the
changes.

137
Manual of the K-IDE Dialogue windows
4.7.7 Create new project

When you select this function, the following dialog box appears:

Enter the desired name in the description of the project in this dialog and
confirm with [Ok] to add the project.

4.7.8 Edit project

When you select this function, the following dialog box appears:

Change the name and/or description and confirm with [Ok] to accept the
changes.

138
Manual of the K-IDE Dialogue windows
4.7.9 Create new project file

After selecting this function, a file selection dialog box opens first in which
you can select the desired AS file. After confirming the selection, the data
of the selected file is entered in the "Create new entry" dialog.

You can now change the name and/or the description and then confirm
the entry with [Ok].

4.7.10 Edit project file

The same window opens as in the previous section. You can also change
the name and/or the description and accept the changes with [Ok].

4.8 Dialog boxes in the editor windows

In the following, the dialog boxes that are displayed by calling them from
the editor windows are discussed. The editor windows include the text edi-
tors, the variable list editors, and the interface panel editor.

4.8.1 Operations in the Text Editor

4.8.1.1 Search function


The text editor (for source code and programs) has a "Search" dialog,
which is similarly structured as in other text programs.

You can access the dialog via the magnifying glass button or by pressing
<Ctrl>+<F> from the text editor.

139
Manual of the K-IDE Dialogue windows
In the "Find" input line you can enter the text to be searched for. If you
had selected a text before calling up the search function, this text is auto-
matically written in the input line. In the example, the text "Parallel task"
was marked and then <Ctrl>+<F> was pressed:

The results of the search can be influenced via the search options. If the
options are switched off, the entered text is searched without regard to
upper and lower case. The options mean in detail:

1. "Match case": Limits the search to text passages that exactly match
the specified spelling.
2. "Match whole word": Restricts the search to whole words only.
3. "RegEx" (Regular Expression): Allows you to enter search patterns.
This topic is a very broad field and a description would go beyond
the scope of this manual. An example of a regular expression would
be: "Para.*".

After entering the text you want to search for, press [Find next] to start
the search or alternatively simply press the <Enter> button.

4.8.1.2 Search and replace


This function is similar to the search function described above with the dif-
ference that a text can be entered here to replace the text to be searched
for. Also this dialog should be familiar to everyone from other text pro-
grams.

The first part of the dialog refers to the search and corresponds exactly to
the description of the search function in the last section. In the "Replace"

140
Manual of the K-IDE Dialogue windows
input line you can enter the text with which the text to be searched for will
be replaced. The buttons have the following meaning:

1. "Find next": Searches for the next occurrence without replacing the
currently selected occurrence.
2. "Replace: Replaces the currently selected location and searches for
the next location.
3. "Replace all": Replaces all found places in the text. Caution is ad-
vised here, as all texts are replaced without further inquiry.

4.8.1.3 Local variables


In addition to the management of global variables, the K-IDE also offers
the possibility to manage local variables. As you know, these are only ever
valid in one program.

4.8.1.3.1 Create local variables


Local variables are automatically created when the AS file is loaded, pro-
vided they are not already in the list of local variables for the program in
question. When creating a new program, this is only the case for the pa-
rameter variables.

You can add new local variables via the context menu with the command
"Add local variable":

The following dialog box appears in which you can enter a comment:

Alternatively, you can add all local variables that are not yet in this list at
once. To do this, use the following button from the toolbar:

As soon as the local variable is in the list, it is also taken into account in
automatic word completion.

141
Manual of the K-IDE Dialogue windows
4.8.1.3.2 Delete local variables
To delete a local variable from the list you can also use the context menu.
To do this, select the "Delete local variable from list" command and con-
firm the security prompt.

4.8.1.3.3 Edit local variable


The comment of the local variable can also be changed afterwards. Again,
use the context menu and select the command "Edit local variable". The
same window opens as when you create a local variable.

4.8.1.3.4 Manage local variables


For a complete overview of the local variables used in a particular pro-
gram, use the Local Variables Manager. It is selected from the toolbar with
the following button:

The following dialog box opens:

From this manager dialog you can also add, remove and edit local varia-
bles. The same input and confirmation dialogs are displayed as when you
call it from the context menu.

In addition, two more buttons are available to simplify the work with local
variables:

1. Distribute local variables from the current program to other pro-


grams in whose source code they occur and in whose list they are
not yet present. Example: In many programs you use the loop coun-
ter ".i" as a local variable and have just given it the comment "My
default loop counter". You can use this function to assign this varia-
ble with this comment to other programs.

142
Manual of the K-IDE Dialogue windows

2. Delete all local variables from the list that are no longer used.
This deletes all local variables for this program that are not used in
the source code of this program.

4.8.1.4 Regenerate
After selecting this function the following dialog appears:

Please refer to section "3.1.2 Generating and regenerating an AS file" on


page 33 for more information.

4.8.2 Keyword operations

4.8.2.1 Keyword assistance


For keyword help for an AS command, you can enter a text that appears
as a tooltip in the text editor.

To enter keyword help, move the mouse over the relevant command and
press the right mouse button. Then select "Add keyword help". The follow-
ing dialog box appears:

In this window you can now enter the text that is displayed as a short help
under Help Text. You can then confirm the entry with [Ok].
143
Manual of the K-IDE Dialogue windows
To edit the keyword help, select the menu item "Edit Keyword Help" in the
context menu of the relevant command. The following dialog box appears:

In this window you can edit the existing help text and then accept the
changes with [Ok].

When deleting a keyword help the following question dialog is displayed:

4.8.3 Identifier operations

From the text editor, various functions can be applied to the different
identifiers. The functions that open a dialog box are described below.

It can happen that a certain variable name is assigned twice with different
variable types. This would not be a good programming style, but is cer-
tainly permissible in the AS system. If such an identifier is clicked with the
right mouse button, the following dialogue opens:

This shows that the identifier "Test" exists twice in the project, once as a
translation point and once as a real variable. In this case, select which of
these two identifiers you mean and confirm the entry with [Ok]. The con-
text menu of the identifier based on the selected variable type then opens.

144
Manual of the K-IDE Dialogue windows
4.8.3.1 Create identifier (variable)
Variables can be created from the text editor for programs or the source
code, as well as from the variable list editors.

In the text editor, go with the mouse to the desired name of the not yet
defined variable and press the right mouse button. From the context
menu that appears, select "Add as" and then the desired data type (e.g.
"Translation point"). The list of suggested variable types in the sub-menu
of "Add as" is restricted by the name of the variable selected. For exam-
ple, if the variable name begins with a hash (double cross, "#"), only pre-
cision points are proposed as the variable type.

After selecting the variable type from the submenu, the following dialog
box appears:

The appearance of the window varies slightly depending on the variable


type or on the connection state. This example shows the window for creat-
ing a translation point variable. The selected name is entered directly in
the input field of the name. You can now enter a comment for the new
variable and change the default values under Contents. You can also clas-
sify the variables under "Subtype". Only subtypes that are permitted for
the variable type are displayed or made selectable here.

145
Manual of the K-IDE Dialogue windows
If the variable previously selected in the editor is an array variable, the
"Array" area is enabled and you can set the dimensions of the array:

A start and end index of "-1" means that the corresponding dimension is
not defined. In the example an index of the first dimension in the range
from 1 to 100 is defined for the variable array. The second and third di-
mension is not defined.

Press [Ok] to accept the entry and create the selected variable. It then
appears in the corresponding variable list.

The dialog box for the individual variable types is described below.

4.8.3.1.1 Creating a translation point variable

For translation points, the sub-variable definitions "Tool", "Base" and


"Frame" can be specified. For a normal position variable none of these
sub-variable definitions are used.

Under "Content" you can select the start value or default value of the vari-
able. You also have the option of performing an offset calculation. To do
this, enter the required offset in the "Calculation" column of the table for
each item component and then press [Perform calculation]. The values
entered are then added to the variable values line by line.

In online mode, depending on the settings for online operation, you have
additional selection options for translation and precision points. The win-
dow is extended by an additional column in the "Contents" table:

146
Manual of the K-IDE Dialogue windows

Here, the current position of the robot arm is also displayed and/or di-
rectly transferred. You now have the option of transferring the values from
the "Current" column directly to the "Value" column if it’s not automati-
cally copied. To do this, press [Take over current position].

4.8.3.1.2 Creating a precision point variable

Precision point variables are not used as sub-variables. Therefore there is


no corresponding selection option here. Otherwise, the functionality corre-
sponds to the dialog box for creating translation variables.

147
Manual of the K-IDE Dialogue windows
4.8.3.1.3 Creating a real variable

Real variables also form the basis for the sub-variable types "Signals" and
"Boolean". Unlike position variables, real variables only provide one value
as content.

The sub-variable "Signals" has some special features when it is created:


here, a value must be assigned to "Content" in any case. This value
serves as the signal number. If no value is entered here, an error mes-
sage appears:

If the entered signal number already exists, the following error message is
displayed:

The [...] button can be used to assist in the assignment of signal num-
bers. This leads to a dialog window "Change signal number / signal type":

This dialog also has a [...] button which leads to the dialog window "Selec-
tion of free signals":

148
Manual of the K-IDE Dialogue windows

In this dialog window, all signals already assigned are entered and sorted
in the corresponding categories. The dialog starts with the default setting
for the first free signal in the previously selected category (here for output
2, since output 1 was previously specified).

In this dialog, select the line with the desired free signal number and
press <Enter> or the [Ok] button.

4.8.3.1.4 Creating an integer variable

This dialog box allows you to create a new integer variable. This variable
type does not support sub-variable types.

4.8.3.1.5 Creating a String Variable

In this window you can store the information about string variables. The
content of this variable type is not entered under "Content" but under
"String content". This variable type does not support sub-variable types.

149
Manual of the K-IDE Dialogue windows
4.8.3.2 Edit identifier
By selecting the corresponding menu item, the same window is opened in
principle as described in the previous chapter. However, the values al-
ready entered are offered for modification here.

Some options of the identifier can no longer be changed. Only the name,
comment and content of the variable are offered for modification. In par-
ticular, it is not possible to select sub-variable types or parameterize array
definitions with this method. Other functions and mechanisms are respon-
sible for this.

A special feature is the name change of an identifier: After pressing [Ok]


another dialog is displayed which takes care of renaming the identifier for
the entire project:

1 2

1. Previous name: The previous name is displayed here.


2. New name: The newly selected name is displayed here.
3. Findings: Here a list of found locations in the project is displayed.
In this list, select the locations where the previous name should be
replaced with the new name.
Press [All] to select all entries in the list or [None] to deselect all en-
tries in the list.

Please note that it is possible to name several different variables with the
same name. The K-IDE then cannot distinguish between these variables
and displays all identifiers with the same name in the list. In this case,
please pay attention to which variable you want to rename. In the worst
case, an incorrect name can lead to an error that is difficult to find.

After pressing [Ok] the old identifier name is overwritten with the new
identifier name at the selected positions. In online mode, the new identi-
fier is also transferred to the robot.

4.8.3.3 Teach position


When teaching the selected translation or precision point, the following
safety query appears:

150
Manual of the K-IDE Dialogue windows

4.8.3.4 Teach current position with reference


When teaching the selected translation point relatively, the following dia-
log box appears:

You can select the desired reference point using [...]:

After double-clicking on the desired reference variable, the position is


taught relatively.

4.8.3.5 Move to position


You can move to a position directly from the program in online mode by
clicking on this position with the right mouse button and selecting the
menu item "Move to position". The following dialog appears:

4
1

3 5

151
Manual of the K-IDE Dialogue windows
1. Movement type: Select the movement command with which the
movement is to be executed. The following commands are available:
a. JMOVE
b. LMOVE
c. HMOVE
d. JAPPRO
e. LAPPRO
2. Distance for approach: Select the distance for the "JAPPRO" and
"LAPPRO" positioning commands here.
3. Indirect positioning: Select an optional reference here so that the
desired position is approached relative to this point.
4. Driving parameters: Ramps and travel speed can be set here.
5. Preparation: Select here whether a possibly pending error should be
deleted and/or the motors switched on before the movement. Both
are switched on by default and this is also the recommended set-
ting.
6. Reference: When moving to a translation point, the base and tool
coordinate systems are taken into account. These two coordinate
systems can be set on the robot with the two buttons [BASE] and
[TOOL] before starting the movement.

4.8.3.6 Change / control variable content


From the editor, you can change the variable content on the robot in
online mode. To do this, right-click on the variable and select the menu
item "Change content" from the context menu under "Control".

4.8.3.6.1 Change variable content of translation points online


When selecting the menu item for a translation point, the following win-
dow opens:

1 2 3 4

Meaning of the individual fields:

152
Manual of the K-IDE Dialogue windows
1. Current content: This displays the current online content of the vari-
able when the dialog box is called up. The value is for information
purposes and cannot be changed.
2. New content: The new content of the variable is entered here. These
values are transferred to the robot when [Ok] is pressed.
3. Compute: An offset can be entered here, which is added to the cur-
rently entered values. To do this, press the [Calculate] button below
the column. Each press of the button adds the specified offset again.
4. Current arm position: Shows the current arm position of the con-
nected robot. If nothing is displayed there, as shown in the picture
above, the current position can be read out with the [Read current
position] button.

5. Set position: Sets the content of the variable to the values from the
"current arm position" fields.

4.8.3.6.2 Change variable content of precision points online


The displayed dialog is structured in the same way as the dialog for trans-
lation points (see previous section).

4.8.3.6.3 Change the variable content of real variables online


This dialog box has a very simple structure and offers a display of the cur-
rent content and the possibility to enter a new value:

153
Manual of the K-IDE Dialogue windows

4.8.3.6.4 Change the variable content of string variables online


This dialog has the same structure as the dialog for changing the real vari-
ables:

154
Manual of the K-IDE Dialogue windows
4.9 Program Operations

4.9.1 Create new program

To create a new program, the following dialog box is provided:

1 2

4 3

1. Program name: Name of the new program to be created.


2. Comment: Enter a "line comment" for the program here. This com-
ment is also displayed in the teach pendant in the program selec-
tion.
3. Parameters: Here you can enter the parameters required for the
new program. Enter the desired name of the parameter and press
<Enter> or [Add]. To remove a parameter, select it from the list
and press <Del> or [Remove].
4. Program description: Here you can optionally enter a slightly longer
description for the program to be created.

155
Manual of the K-IDE Dialogue windows
After confirming the dialog with [Ok] the following program is created and
opened for editing:

1 3 2

The text passages marked here are taken from the previous dialog.

4.9.2 Edit Program Header

To change program names or parameters, select the 'Change program


header' menu item in the context menu of the relevant program in the AS
tree. The following dialog appears:

4.9.3 Create new program group

When creating a new program group in the program directory, you can
specify a name for it.

4.9.4 Delete program

Before you delete a program, you will be asked if the program should be
deleted.

156
Manual of the K-IDE Dialogue windows

4.9.5 Loading programs from the robot

The following dialog box is displayed if programs already exist in the K-


IDE project and programs are to be loaded by the robot. If at least one of
the programs available in the robot also exists in the K-IDE project, this
window is displayed:

Here you can select which programs are to be loaded from the robot and
thus overwrite the programs existing in the project. All programs of the
robot that are not yet in the K-IDE project will be taken over without
prompting.

157
Manual of the K-IDE Dialogue windows
4.9.6 Send programs to the robot

If you send multiple programs to the robot, the following dialog box ap-
pears where you can select which programs to send to the robot.

The picture shows an example of the call from the context menu of the
program directory. Use the [All] or [None] buttons to select all or no
entries. After pressing [Ok] the transfer options are displayed:

This window is similar to the transfer options from the dialog box in sec-
tion "4.2.6 Send everything to the robot" on page 96, see there for a
more detailed description.

158
Manual of the K-IDE Dialogue windows
4.9.7 Program error during upload

If a program error is detected while uploading data, the program error


display appears, describing the error.

By double-clicking on the error message displayed in the list, you are


guided to the point in the program where the error was detected. The dia-
log behaves similar to the "Find text" or "Find identifier" dialog: the dialog
is not closed, but only transparent, and you can leave the window open in
the background while checking the error location in the program.

4.9.8 Program Manager

With the help of the program manager it is possible to move several pro-
grams to or from groups at the same time.

1 2

The picture shows a normal program structure of the foreground programs


from a project. On the left side (1) of the window the program structure is
displayed and on the right side (2) the programs in the currently selected
program group.

1. Program structure display: Here the root directory of the selected


program type and all program groups used there are displayed. If

159
Manual of the K-IDE Dialogue windows
another program group is selected, the program directory on the
right-hand side is updated accordingly.
2. Program directory: All programs available in the currently selected
program group are displayed here. Here the programs can be se-
lected and dragged to another program group in the program struc-
ture tree (Drag & Drop).

4.9.8.1 Editing the program structure


Three different buttons are available on the left side of the window for ed-
iting the program structure.

 Add a new program group


 Dissolve program group
 Edit program group

Depending on the selection in the structure tree, the buttons are either
activated or not activated. The [+] button is only active in the root direc-
tory, since only there a new program group can be created. The [Explode]
and [Edit] buttons are only active if a group is selected, as only this group
can be edited or exploded.

160
Manual of the K-IDE Dialogue windows
4.9.8.2 Selection of programs
To select the programs to be moved, the program directory is available on
the right side.

Here no changes can be made to the programs themselves, but only the
location of the programs with regard to the program structure is defined
here. To do this, the programs to be moved are selected and moved to a
new location using "Drag & Drop".
Three buttons are available above the list to select several programs. You
can also use the standard methods available in Windows to select multiple
objects:

1. "Rubber band" pick: With the help of the mouse, a so-called "rubber
band" is drawn up while holding down the left mouse button. This
allows several programs lying next to each other to be selected.

2. Multiple selection with left-click and <Shift>: This also allows you to
select several programs lying next to each other. To do so, first click
on the first and then, together with the <Shift> key, on the last pro-
gram to be selected. Then all programs between the first and the
last selected program are marked.
3. Multiple selection with left-click and <Ctrl>: This allows you to se-
lect several programs that are not next to each other. To do this,
first click on the first program to be selected and then, together with

161
Manual of the K-IDE Dialogue windows
the <Ctrl> key, click on all others.

4. Select [All]: The [All] button allows you to quickly select all pro-
grams in the displayed directory.
5. Select [None]: The [None] button allows you to quickly deselect all
programs.
6. Select with [Filter]: Here you can select several programs that cor-
respond to a filter to be defined. The filter is entered after pressing
the [Filter] button in the form of a "regular expression" ("RegEx").

Explaining the many possibilities of regular expressions would go


beyond the scope of this manual. As an example the following ex-
pression is only mentioned here: "^[A-Z].*[0-9]$".
A selection via filter is only useful if there is a large number of pro-
grams.

After selecting the programs, they can be moved with "Drag & Drop". Sev-
eral options are available for this:

1. Move to a program group from the structure tree: Here the pro-
grams are moved from the right to the left side. The respective
shape of the mouse cursor indicates whether this move is possible /
allowed. Shifts into the same group are not supported.

2. Move to a program group from the selected directory: In the root


directory it is possible to drag the selected programs into a group

162
Manual of the K-IDE Dialogue windows
that exists there.

3. Changing the order within a group: It is possible to change the order


of the programs by "Drag & Drop". To do this, drag the selected
programs to any place in the program directory on the right side. All
selected programs will then be moved to the desired position,
whereupon all other programs will be moved to the back.

163
Manual of the K-IDE Using the K-IDE (Workflow)

5 Using the K-IDE (Workflow)

After we have more or less dealt with the pure description of the user in-
terface in the previous chapters, we now devote ourselves to the opera-
tion of the program and the necessary procedures and work steps.

5.1 General handling of the various control elements

Basically, the K-IDE tries, as far as possible and reasonable, to stick to the
operating concepts that are common today and known from most other
programs. This is especially true for the selection of objects and for the
"clipboard functions" copy, cut and paste.

5.1.1 Selection of objects

A single object can be selected simply by using the right mouse button. It
is also possible to select an object with the <cursor> keys, which is very
useful in lists and tables.

There are also several options for multiple selection. For example, it is
possible to select several objects lying next to each other (one behind the
other / one below the other) with <Shift>+<left mouse button> or to se-
lect several objects that do not necessarily lie next to each other with
<Ctrl>+<left mouse button>. The alternative with pure keyboard opera-
tion only allows the selection of adjacent objects.

In some cases it is also possible to select objects with the so-called "rub-
ber band" by clicking with the mouse on a free area in the corresponding
view and keeping the mouse button pressed. Then drag the mouse over
all objects to be selected and finally release the mouse button. This selec-
tion method is implemented in the K-IDE only in very few places.

In tables, it is still possible to quickly select the entire table with the
mouse by clicking in the upper left field.

164
Manual of the K-IDE Using the K-IDE (Workflow)
Here are a few examples of multiple selections in a table:

Selection with <Ctrl>+<left mouse button>

Selection with <Shift>+<left mouse button>

Selection of all entries

165
Manual of the K-IDE Using the K-IDE (Workflow)
5.1.2 Filtering lists

In order to keep the overview in large variable lists, the K-IDE offers the
possibility to use a filter. To activate this filter, click with the right mouse
button on the column header in the variable list. Thereupon an input field
appears under the mouse pointer.

You can now enter a filter text in this field. The filter text can contain the
following special features:

1. Normal text: filters all lines in which the entered text occurs as it
was entered in the filter line (case sensitive). Example: "Offs
2. Text preceded by "|" character: same as (1), but case-insensitive.
Example: "|offs"
3. Regular expressions in square brackets "[]": filters all lines whose
text matches the specified regular expression. For example:
"[.*\[[0-9]*\]]".

166
Manual of the K-IDE Using the K-IDE (Workflow)
For purely numeric fields there are the following special features:

1. Normal numbers: filters all lines with exactly this value. Example:
"10".
2. Number preceded by "<" character: filters all lines whose value is
less than but not equal to the specified number. Example: "<10".
3. Number preceded by ">" character: filters all rows whose value is
greater than, but not equal to, the specified number. Example:
">10".
4. Two numbers preceded by a "~", "-" or "_" character: filters all rows
with values from the first number to the second number, including
the numbers themselves. Example: "10~100", "10-100", "10_100".
5. Number preceded by "~" or "_" character: filters all rows with val-
ues less than or equal to the specified number. Example: "~100",
"_100".
6. Number followed by "~", "_" or "-" character: filters all rows with
values greater than or equal to the specified number. Example:
"100~", "100_", "100-".

5.1.3 Copy, cut and paste

The K-IDE supports the standard clipboard functions such as copy, cut and
paste. If possible, the usual key combinations are also used: <Ctrl>+<C>
for copy, <Ctrl>+<X> for cut and <Ctrl>+<V> for paste.

Note: While you can still derive the key combination for copying from
"Copy", the other keys are slightly different: for cutting, the key <X> was
chosen, which can be seen here rather symbolically. It is the symbol for
scissors. Just like the key <V>. Here, a symbol is used for pasting into a

167
Manual of the K-IDE Using the K-IDE (Workflow)
text, instead of using the "P" key for "paste". Why all this? - The goal was
to select keys for this often used function that can be reached with one
hand in combination with the <Ctrl> key. The keys <X>, <C> and <V>
are located next to each other on most keyboards and in close proximity
to the left <Ctrl> key.

The clipboard functions cannot be performed so elegantly with the mouse.


Here, one chooses either from the context menu or via a button above the
window.

5.1.4 Edit, add and delete object

In many places in the K-IDE the "standard action" is selected for editing
objects. This action is performed when the <Return> key is pressed for
the selected object. The default action in many places is "Edit" or "Open".

In most cases, the deletion is carried out as usual by pressing the <DEL>
button (Delete button). In return, the <Ins> key (Insert key) is used to
add a new object.

All these functions can also be executed with the mouse via the context
menu and/or a corresponding button.

5.2 Load / Receive / Import AS data into the K-IDE

The first of our "workflow processes" is dedicated to the question of how


to start a project and how to get to usable data as quickly as possible.

The question of how to access data after starting any program is a very
natural question, which has been and is usually answered by many pro-
grams in a very natural way: you select a "data unit" (e.g. a file) from a
"data pool" (e.g. hard disk), which is then loaded into the program. While
in many standard programs like word processing or spreadsheet pro-
grams, "data pool" and "data unit" are usually hard disk or file, other pro-
grams, like the K-IDE, are more versatile by nature.

With the K-IDE there are many different ways to get data into the pro-
gram. On the one hand this is due to the fact that a connected robot can
contain a complete K-IDE project, which may not be available on the hard
disk, on the other hand it is due to the historical development concerning
the handling of AS files in the past.

168
Manual of the K-IDE Using the K-IDE (Workflow)
The following picture shows an overview of the possibilities:

Data pool: Data pool:


Hard disk Data pool:
Robots
Clipboard

Load
everything
from robot
File import
(mostly parts of
an AS file) Partial loa-
ding from Pasting
Open file robot from the
(usually a com- clipboard
plete AS project)

Create new file


from template

Load data into the K-IDE

169
Manual of the K-IDE Using the K-IDE (Workflow)
Another way to start with a specific data set is to create a new file without
a template. In this case you start with no data. This could be the basis for
a project that is initially composed of many different components from
other projects.

This brings us to the possibility of combining the above points. Thus, with
the help of the K-IDE, different parts from different sources can be easily
transferred to the currently opened project.

5.2.1 Open file (load project from AS file)

The easiest and probably most used method to load data into the K-IDE is
to open an AS file. In most cases an AS file will be a complete project or a
backup. In the default setting of the K-IDE the last AS-file is automatically
reloaded every time the software is started. This also falls under the cate-
gory "Open file", even if it is not actively triggered.

An already existing project can be used as a basis for a new project by


opening the existing project and saving it again under a new name. After-
wards, changes and adjustments can be made to the project and then
married to the robot. With this methodology, existing projects can be
quickly applied to new robots.

5.2.1.1 Import AS data


When importing data, unlike opening a file, parts of an AS file are added
to the currently open project. This allows you, for example, to add real
variables from another file to your project without having to import the
entire file.

5.2.2 Receive AS data from robot

Another important method to load AS data or an AS project into the K-IDE


is to download the AS data from the robot. To do this you proceed as fol-
lows:

1. Close current project (optional). The currently open project is also


automatically closed when the AS data is loaded from the robot.
2. Connect to the robot (or K-Roset).
3. Load data from the robot. With the menu command "Connec-
tion/Load data from robot" or the button [Robot with arrow down]
from the main toolbar, all AS data from the robot are loaded into the
K-IDE.

170
Manual of the K-IDE Using the K-IDE (Workflow)
Loading AS data from the robot is similar to opening a project file, but the
"data pool" is the robot and the "data unit" is the text file of the robot.

This function is the safest way to get an up-to-date program status if you
are not sure whether you have the latest status of the AS source on your
computer. Because the K-IDE stores its data completely AS-compatible, all
settings in the project are also transferred to the robot and can be used
during download. So you get exactly the program structure which was set
during the last transfer.

5.2.2.1 Partial loading from robot


Just like importing individual AS files from the hard disk, it is also possible
to load certain parts of the AS data from the robot during an online con-
nection. For example, in an open project, you could load all real variables
from the robot and add them to the project.

Partial loading is also very often used when viewing the maintenance ar-
eas (log view). At this point, the current program status is not important.
It is simply a matter of viewing the current logs.

5.2.3 Paste AS data from the clipboard

Most copy and cut actions in the K-IDE create AS-compatible text data in
the Windows clipboard. This text data can then be pasted elsewhere in the
current project or in another K-IDE with another open project. With this
method a fast and transparent data exchange between the different pro-
jects can take place.

Additionally, it is possible to copy a text from a normal text editor and


paste it into the K-IDE. For example, you can mark a program that is cur-
rently open in Notepad++ and copy it to the clipboard. The marked text
must contain the lines with ".PROGRAM" (program header) and ".END"
(program footer). By means of these two "marks" the K-IDE recognizes a
program in the clipboard and offers to paste it into the project.

171
Manual of the K-IDE Using the K-IDE (Workflow)

You can do the same with AS variables: To do this, select the list of varia-
bles including the header (".REALS", ".TRANS", ...) and footer (".END") in
the text editor. Again, the K-IDE recognizes the type of variable and offers
the corresponding insert option.

Several different sections can be copied to the clipboard at the same time,
e.g. several different variables and several programs. These different sec-
tions can then be copied into the open project at different locations.

To insert, right-click on an element in the AS tree and select the "Insert"


command from the context menu. If this command cannot be selected,
the K-IDE cannot find the desired data in the clipboard (if no header and
footer can be found for the corresponding section).
172
Manual of the K-IDE Using the K-IDE (Workflow)
If you have copied several, different data to the clipboard, you can con-
tinue the paste operation for all desired sections.

When inserting, all elements not yet available in the project are inserted
without further inquiry. For elements that already exist, a decision is re-
quested whether the element in question should be overwritten.

173
Manual of the K-IDE Using the K-IDE (Workflow)
5.3 Save / Send / Export AS data

Just as when "fetching" data from the last chapter, the same applies when
"delivering" data from the K-IDE to a specific "data pool". Here the same
pools are supported, so that data exchange between different processes
can be easily performed.

The diagram known from the last chapter can be used in the opposite di-
rection for this chapter as well:

Data pool: Data pool:


Hard disk Data pool:
Robots
Clipboard

Send
everything
File export to the robot
(mostly parts of
an AS file)
Partial Copying
Save file to the
sending to
(usually a com- clipboard
the robot
plete AS project)

Save current project


as a template

Save / send / copy data from the K-IDE

5.3.1 Save file (Save project to AS file)

During this process the currently opened project in the K-IDE is written
into an AS file with all changes made. First a new "AS source" is created
("generated") and this is then saved. This means that after saving, the AS
source is updated to the current status. This can be seen from the fact
that the corresponding tree entry is no longer displayed in blue.

174
Manual of the K-IDE Using the K-IDE (Workflow)
The saved AS file is fully AS-compatible and can be transferred to the ro-
bot as it is, without any loss of data, and can also be downloaded from the
robot again.

5.3.1.1 Export AS data


For almost every point in the AS Structure Tree, it is possible to save the
stored data in a separate AS file. This file export is fully AS-compatible
and can be transferred to the robot, for example.

File exports are useful, for example, if you want to transfer data to a robot
with which you cannot connect directly. So you can create export files
which can be sent by email to the operating personnel of the robot. The
recipients can then copy these files to a USB stick and load them into the
robot.

5.3.2 Send AS data to the robot

The transfer of the complete AS project to the robot is probably not done
that often. This is only useful if a complete backup has to be restored or if
a project without system data is loaded in the K-IDE.

The complete upload of all AS data, including system data, should be


viewed with great care. That is why the K-IDE does not offer a complete
upload without previous request. The only exception is the upload of an
external .as file (see chapter "3.2.2.7 File operations" page 38).

5.3.2.1 Partial sending of AS data to the robot


This function is used very often. Especially during commissioning, new
program states and newly created variables are very often transferred to
the robot. Also the recommended method for merging the K-IDE project
with the robot, the so-called marriage (see chapter "3.2.2.11 Marry pro-
ject with robot", page 38), uses partial uploads to exchange data in a tar-
geted way.

5.3.2.2 Handling K-IDE documentation during upload


When working with the K-IDE Project in connection with uploads to the ro-
bot, there is a special feature in connection with the K-IDE documenta-
tion: For security reasons, this documentation is not automatically
transferred with the upload! The transfer is only performed on explicit
request by selecting the corresponding menu item in the context menu of
the AS Structure Tree or the corresponding option in the Send dialog.

175
Manual of the K-IDE Using the K-IDE (Workflow)
The K-IDE documentation contains the extended functionalities that allow,
for example, to add comments to variables or to arrange programs in se-
quence and to divide them into groups. The K-IDE documentation also
controls the classification into sub-variable groups such as signals or tools.

For this reason, always make sure that the current documentation is avail-
able on the robot after work. The best way to do this is to use the option
when disconnecting the connection (see chapter "4.2.3 Disconnect" on
page 93).

5.3.3 Copy or cut data to the clipboard

As with many other modern programs, the K-IDE allows you to use the
clipboard to exchange data with other applications. Also the data for the
clipboard is provided in text format in an AS-compatible form. So data can
be exchanged not only between two instances of the K-IDE, but also be-
tween K-IDE and other programs like text editor, without having to create
an AS file first.

5.4 Creation of programs and program structures

The creation of programs and the associated program structure is one of


the central tasks when creating a robot project. For this reason, the pro-
gram editor and the associated tools are also one of the central compo-
nents of the K-IDE.

In the last chapter we dealt with loading data and learned how to load al-
ready existing programs into the K-IDE. This chapter deals with the crea-
tion and editing of new programs.

Before you start creating a new program structure, you should consider
the future call structure of the programs. For larger projects, the following
questions arise at the beginning regarding the future program structure:

176
Manual of the K-IDE Using the K-IDE (Workflow)
1. Should the project be divided into several programs?
2. Which program is the "Start Program"?
3. Which programs are called from the Start program and how is the
structure structured?
4. Is it possible to form groups of programs and how are they logically
divided?
5. Are background programs required?
6. Are foreground programs called from the background?

As a simple example of a program structure and a program call structure,


the template "KRG" can be used, which can be opened under "File / New".

5.4.1 Program call structure using the example of "KRG

The project template "KRG" contains examples of some programs that are
already linked to each other. The "Main" program has been marked as the
start program (program icon "Star", see chapter "4.2.9 Start main pro-
gram", page 104).

From the main program three further programs are already called up:

1. Init: Program to initialize variables during a complete restart. Here,


most of the variables used in the program should be set to a reason-
able initial value. Robot settings should also be set to a defined
state. Attention: Please consider carefully which variables should
be reset! This can lead to collisions if, for example, you reset stack
counters whose value is used to calculate storage positions without
emptying the stack.
2. GoHome: Program for safe approach to the home position. This
program moves the robot to a defined starting position.
3. Work: This program takes over the automatic process. All pro-
cesses are executed in an endless loop. The program "Work" is nor-
mally never terminated. In the template, the endless loop is empty
and must still be completed with the desired program calls.

177
Manual of the K-IDE Using the K-IDE (Workflow)
The program flow structure of the foreground process looks like this in the
template "KRG" (the hatched programs do not belong to the template)

Main Init

GoHome

Work Get

Edit

Filling

The template also contains the autostart background programs. The first
four autostart programs are preset with endless loops. The commands to
be executed can be inserted into these loops.

Autostart5.pc has a very special position. This program serves as a so-


called "WatchDog" process. It checks cyclically whether the other back-
ground programs are still running. If a program is no longer running, it is
restarted.

5.4.2 Create new program

As an exercise for creating a new program, we first load the template


"KRG" with the menu item "File / New". After the template has been
loaded, we can select the menu item "Add" and then "Program" by right-
clicking on the program directory "Programs".

178
Manual of the K-IDE Using the K-IDE (Workflow)

The dialog box "Create new program" appears.

We assume that we want to write a "Fetch" program that fetches a prod-


uct from a conveyor belt. In this case we can fill in the dialog as follows:

179
Manual of the K-IDE Using the K-IDE (Workflow)
After pressing [Ok] the following program is created and opened:

The input cursor (vertical line in the line before the ".END") is located at
the position at which the input of program steps can be started.

We will now begin to enter the program steps. Please note the support
provided by the K-IDE (auto-complete, short help, ...). Enter the following
program step:

JAPPRO PickPos, 100

Here we have already programmed the first variable (PickPos). This varia-
ble is not yet known to the K-IDE. To make the identifier of the variable
known to the K-IDE, the variable must be added. It is a good idea to add
the variable immediately after the first writing, so that it will be consid-
ered in the auto-completion later on.

Now click with the right mouse button on the identifier "PickPos". A con-
text menu opens with the options for an unknown identifier:

Select "Add as" from the menu and then "Translation point" to add the
identifier as a translation variable. The following dialog box appears:

180
Manual of the K-IDE Using the K-IDE (Workflow)
Enter a comment and confirm the entry with [Ok] or with <Enter>. The
identifier has now been added as a translation variable. You can see this
from the fact that the entry for the translation points in the AS Structure
Tree is displayed in blue and italics.

You can now enter the next command line in the program. We neglect
some of the program text that should actually follow and move linearly to
the pickup point with the next command:

LMOVE PickPos

During the input of "PickPos" the corresponding identifier is suggested let-


ter by letter, because the K-IDE already knows it. The list of suggestions
becomes smaller and smaller the more letters you enter from the desired
identifier. You can also select the identifier from the list as soon as it is
displayed (usually after entering the first letter). When the desired identi-
fier is selected, you can transfer it to the program by pressing <Enter>.
Please also note the short help, which is located behind the identifier in
the selection list. It is also clear why it is useful to add a comment to the
identifier.

Complete the program as follows and then close the editor using the [x]
symbol from the toolbar:

You need not be afraid that something will be lost when you close the win-
dow, because the change to the program is already registered. You will
then see the following screen in the AS structure tree:

181
Manual of the K-IDE Using the K-IDE (Workflow)
At first we recognize the "Pick" program as the last
entry in the "Programs" program directory. We notice
that this program has been changed and not yet
saved (the entry is blue and italic). Furthermore, the
program directory has been changed (a program has
been added). The translation points have also
changed: a new variable has been added. The AS
source code has also changed or no longer corre-
sponds to the new changes in the AS structure tree.
Finally, the topmost entry indicates that the current
project has undergone changes that have not yet
been saved.

The program "Pick" and the entry for the translation


points have an additional marker, the so-called "syn-
chronization marker". This is intended to remind the
programmer that changes have been made to this
data that most likely have not yet been transferred to
the robot.

182
Manual of the K-IDE Using the K-IDE (Workflow)
5.4.3 Include the new program into the call structure

In the diagram from chapter "5.4.1 Program call structure using the ex-
ample of "KRG” on page 177 we have determined that the program
"Fetch" is to be called from the endless loop in the program "Work". Now
open the "Work" program by double-clicking:

Move the cursor to the line after the comment "; here CALLS to own sub-
routines" and there after the comment character. Then press <Enter> so
that a new line is created. There you write "CALL Pick", paying attention to
the auto-completion. Note that the "Get" program is already in auto-com-
plete.

5.4.4 Tips on how to use the auto-complete function

If possible, please always use auto-completion for the known identifiers


and commands. This ensures that the same spelling is used throughout.
Commands are always written in capital letters and identifiers are always
written as you have created them. This makes the program much easier
to read.

5.4.5 Naming of variables / identifiers

The AS language is very tolerant with regard to naming variables. Apart


from the 15-character limit and the selection of possible characters and
special characters, there are hardly any restrictions regarding naming.
Nevertheless, for the smooth handling of the K-IDE you should follow a
few simple rules.

183
Manual of the K-IDE Using the K-IDE (Workflow)
1. Avoid naming with keyword names! The AS language tolerates such
a naming. But for the K-IDE it is difficult to find out if it is a com-
mand or a variable. This can lead to misleading displays in the edi-
tor. Furthermore, when naming local variables, the variable may be
recognized as a section name, such as ".end".
2. Avoid double naming! It is possible with the AS language, e.g. to
name translation points and real variables the same. You can write
the following lines, for example:
POINT var = TRANS (0, 0, 0)
var = 0
var = var + 1
The AS language recognizes from the context of the variable what
type it is. The K-IDE does not proceed in this way and therefore has
difficulty recognizing the correct type of the variable. For this rea-
son, you will always be asked what type of variable is involved if the
variable is named twice. Avoiding double naming makes working
with the K-IDE easier and increases the readability of the program.
3. Use the mixed capitalization! Often you use variable names from
compound words like "AblPos" (filing position). To indicate the sepa-
ration of the individual words, the underscore "_" was used "back
then". The AS language does not distinguish between upper and
lower case letters and converts all identifiers to lower case letters,
while key words are converted to upper case letters. Thus, "AblPos"
would become -> "ablpos", which is not easy to read. Therefore,
"back then" the variables were always written like this: "abl_pos".
But by doing so, you give away a character in the name for the word
separator.
But thanks to the extended functions of the K-IDE it is possible to
use the mixed notation and the K-IDE takes care of the conversion
when reading the AS data from the robot.

184
Manual of the K-IDE Using the K-IDE (Workflow)
5.5 Creating and editing variables

5.5.1 Creating variables

One method of creating variables has already been discussed in the previ-
ous section: defining them directly when entering the program. This is
also the preferred method for creating new variables.

Another method is to create the variables in the respective variable list. To


do this, open the desired variable list from the AS structure tree by dou-
ble-clicking. In the list that then opens, add a new entry by pressing the
[+] button.

The same window appears as when you call "Add as / <Variable type"
from the editor. However, one difference to the definition from the editor
is that no subtypes can be changed here. For example, you cannot create
a signal from this dialog if you are in the list of reals. To create signals,
you must create a real and then define it as a signal outside the dialog or
go directly to the list of signals and create the signal there.

Another difference is the possibility to create an array directly. This is not


possible from within the editor, because the recognition of an array is
done before the dialog is called, so it is known whether it is an array or
not. When adding a variable to the list, this is not known when the dialog
is called.

185
Manual of the K-IDE Using the K-IDE (Workflow)

First, you can use "Variable is an array" to determine whether the variable
is an array variable. In this case you can select the respective index to de-
fine an element from the array. If you also select "Create array field", you
can create several array elements at once. For example, to create an ar-
ray of a variable in the range "Var[0]" to "Var[10]", enter the following
data:

This creates a one-dimensional variable field. The AS language supports


arrays with up to three dimensions. In the picture above, the dimensions
two and three are locked, which is indicated by the "-1". If you enter
numbers with a value greater than or equal to zero in the corresponding
input fields, you also unlock the second and third dimensions. After con-
firming the dialogue the variables just created appear in the list:

As we have already seen in chapter "5.2Load / Receive / Import AS data


into the K-IDE" on page 168 it is also possible to import variables, load
them from the robot or paste them from the clipboard. These actions also
create new variables and thus make work easier.

5.5.2 Editing variables

There are two starting points for editing a variable. You can edit variables
from the program editor and the variable list.

186
Manual of the K-IDE Using the K-IDE (Workflow)
In the program editor, right-click on the relevant variable. The corre-
sponding context menu for the variable opens, which varies slightly from
type to type. Select the menu item "Edit identifier".

From the corresponding variable list, you can also right-click the entry and
select "Edit" or double-click the entry. You can also select the entry and
open the edit dialogue for the variable using the [Pen] button in the
toolbar.

In all cases, the same window opens and this window also corresponds to
the window for creating a variable:

Here you have the possibility to change the name, the comment and the
variable content.

You can also convert the variable into an array variable by selecting the
"Variable is an array" option and setting the index accordingly. Please use
the conversion with care! If the variable is already in the robot as a "non-
array variable" and you convert it into an array variable, an error message
will be displayed during a transfer. You must then delete the variable in
the robot and switch it off and on again if necessary.

5.5.3 Change of the variable name

While changing the comment and the variable content has no further ef-
fect, changing the name entails further actions. If the name of a variable
changes, all references to this variable must also be changed. When the
variable change is complete, a query is therefore displayed, which pro-
vides the option of selecting the changes to be made in the project.

187
Manual of the K-IDE Using the K-IDE (Workflow)

In the example the position variable "#PosAbn" was renamed to "#Pos-


Abn1" and the change was confirmed. In the list "Locations" you can see
the program lines where the variable is used. You can see that the varia-
ble is used in lines 11, 17 and 23 in the "Get" program. By default, all
places in the project are marked for modification. But you can also ex-
clude certain places from the change. This is especially useful if there is a
double naming of different variable types. In this case extreme caution is
required, because renaming at the wrong place could lead to a very hard
to find error!

By confirming the selection dialogue, the changes are carried out at the
selected program locations. This is then also reflected in the AS structure
tree:

5.5.4 Variable handling in offline and online mode

The variable handling differs slightly between offline and online mode. In
offline mode, variables are also only created offline and no further request
is made. If you are in the online mode (K-IDE is connected to the robot),
it depends on the settings in how far variables are automatically trans-
ferred to the robot and how this transfer takes place.

Therefore let's have a look at the K-IDE's "Settings" dialog, which can be
accessed in the main menu under "Options / Settings". On the second
page (Online Options) we find two setting ranges, with which we can con-
trol the behavior in online mode:

The first area deals with the general creation of variables in online mode.
The setting "Create identifier offline only" would also create a newly added
variable offline only in online mode and not automatically transfer it to the
robot. This setting saves time, because otherwise a transfer would also
188
Manual of the K-IDE Using the K-IDE (Workflow)
take place after each new creation of a variable. The setting "Create iden-
tifier also online", on the other hand, transfers each individual variable to
the robot directly after it has been created. This setting has an option to
check whether the variable is already in the robot before transfer. If this is
the case, it will not be transferred again. However, this option also re-
quires a transfer time again, so that with this setting up to two transfers
can take place after each new creation of a variable.

The second area of the settings shown above is specifically dedicated to


the creation of new position variables. While the first two points deal with
the preassignment of variables independently of the offline and online
mode, the lower two points control the preassignment exclusively in online
mode. The first point allows the current robot position to be read out when
the dialog for creating a new position variable is called. The second point
depends on the first one and specifies whether the previously read posi-
tion is to be set immediately as default for the position variable. If the
second point is not selected, the current position of the robot is displayed
in an additional column and can be transferred to the value range of the
variable by pressing a button.

Please note that the column "Current" and the button [Accept current po-
sition] are only displayed if the option "Read current position" is activated
in the settings. If this is not the case, the position variables are always
preset with default values and can then be taught using the corresponding
functions in the variable list or editor.

Please note that only newly created variables are automatically


transferred to the robot! If you make changes to the variables, they are
not automatically transferred. It would be fatal, for example, to transfer a
counter variable to the robot while the robot is running (and thus possibly
change the current counter reading) just because you have changed the
comment of this variable. If you want to change the variable content of a
variable already in the robot, you can use the "Control Variable" function

189
Manual of the K-IDE Using the K-IDE (Workflow)
from the context menu of the respective variable or change the offline
content of the variable and send it explicitly to the robot.

An exception to the automatic transfer rule just described is the name


change of a variable. Although you rename a variable, and that variable is
now listed with a new name in the K-IDE, renaming it on the robot side
means that the variable is created with a new name, but the old variable
remains in the robot. Please note in this case that the variable con-
tent of the new variable in the robot does not necessarily corre-
spond to the content of the old variable, but rather the content of
the offline variable is used for the new variable!

5.5.5 Transmission of variables and variable lists

Caution is always required when transferring variables and lists of varia-


bles. If the robot is currently in automatic mode or in pause mode in the
middle of the sequence to be able to continue working later, the transfer
of variables with corresponding contents can cause problems. For exam-
ple, positions that were taught in the robot using the teach pendant and
that were not transferred back after teaching could be overwritten. Or
counter variables could be reset that are used in the robot program se-
quence. Before each transfer of variables from the K-IDE to the ro-
bot, consider carefully what consequences the transfer could have!

5.5.5.1 The synchronization marker for variable lists


We have already raised this issue several times and pointed out the spe-
cial features of this marking. While this marking is a label for programs to
transfer the offline data to the robot, it should always be seen as a re-
minder for variable lists.

The marking can be considered according to the following philosophy: Af-


ter you have finished your work on the robot and the changes are running

190
Manual of the K-IDE Using the K-IDE (Workflow)
in the robot, you can look at the AS structure tree and check all entries
with synchronization marking. If you find programs with this marking,
they will in most cases still have to be transferred to the robot because
they have been forgotten. However, if you find marks on variable lists,
you can check and think about which changes you have made there and
whether these changes have to be transferred to the robot. Please pay at-
tention to the warnings in the last section!

5.6 Data transmission between K-IDE and robot during commis-


sioning

This topic follows on seamlessly from the last topic on the transmission of
variables. There we already mentioned the special caution when transmit-
ting variables. In this chapter, we extend the considerations to the trans-
mission of programs and other data.

5.6.1 Upload of programs

In principle, before any transfer, one must think carefully about what the
consequences of this transfer might be. There are also some things to
consider when transferring programs while the robot is running. For ex-
ample, it is strongly discouraged to transfer programs while the robot is
running, even if this could work smoothly if some conditions are met.

The safe way to transfer a program is to stop the robot, turn off the mo-
tors and kill the foreground program (and/or the background programs).
This is the only way to ensure with certainty that the program to be trans-
ferred is not currently in execution.

Unfortunately, in practice, it is sometimes not possible or very costly to


stop the robot and reset the program sequence in order to transfer a pro-
gram change. In such cases, it is possible ("at your own risk!") to trans-
fer a program to the robot without prior kill. However, it is important to
make sure that the program to be transferred is not currently being exe-
cuted and is not addressed during the transfer.

It should also be noted that a program is also regarded as active if an-


other program has been called from it and the process is currently running
in this called program. Also in this case a transfer without Kill is not possi-
ble. An example would be the program "Main" from the template "KRG",
from which the other programs are called and which is therefore always
active. Also the program "Work" from the same template would not be
transferable if the sequence is currently in one of the subprograms called

191
Manual of the K-IDE Using the K-IDE (Workflow)
from there. However, by clever division of the programs and correspond-
ing program structure, you can design your project in such a way that as
many changes as possible can be transferred during operation.

Warning: In spite of everything, it is important to remember that


you should be aware of the consequences if you transfer a pro-
gram during operation. This may result in error messages, mal-
functions or, in the worst case, even damage!

To transfer programs to the robot, select the [Upload] button from the
toolbar of the relevant program or select the corresponding menu item
from the context menu of the program or the associated program group in
the AS structure tree.

5.6.2 Download of programs

The download of programs is, compared to the upload, very unproblem-


atic. This function can be carried out in all operating modes of the robot
without expected problems. Please consider when downloading a program
that any changes made to the offline program in the K-IDE will be over-
written by the online version!

The download of a single program is only in the rarest cases really useful.
You can use this function, for example, if you only want to make a very
manageable change to a single program. So you can download this pro-
gram in the current version from the robot, make your changes and then
send it back to the robot. In case of larger changes, the previous complete
download of the whole project from the robot is much more reasonable in
any case.

192
Manual of the K-IDE Using the K-IDE (Workflow)
5.6.3 Up- and download of the interface panel

Up- and download of data for the interface panel is possible at any time
without having to consider the current status of the robot. When you
transfer the panel to the robot, it is possible that, if displayed, the current
page on the teach pendant is not updated. In this case you have to switch
the IFP page once or hide and show the IFP again.

5.6.4 Up- and download of system data

While system data can be downloaded at any time without regard to the
current robot status, great care must be taken when uploading. The sys-
tem data contains many different data, settings and information that are
required by the robot for smooth operation. Uploading incorrect system
data can cause malfunctions or damage to the robot.

Before uploading system data, please check if you have a current backup
of the robot! In case of an error, you can restore the robot to the state at
the time of the data backup. It is safest to create a data backup directly
before transferring the system data to the robot. In this way you will have
as up-to-date a status as possible.

For the transmission of some sections of the system data, it is necessary


that the robot is not in operation and that the motors are switched off.
Otherwise, a message may appear in the terminal during the transfer,
which must be acknowledged during the transfer. In order to avoid this
situation, most of the upload dialog boxes contain the "Switch off motors"
option, which ensures that the motors are switched off before the transfer.
If possible, please always leave this option switched on!

5.7 Troubleshooting in robot programs

5.7.1 Troubleshooting during commissioning

During the commissioning of a robot program, you often find yourself in


the situation of having to find out why the programmed logic does not run
as you had imagined. In such a case, it must be possible to reproduce the
program sequence. It is also very important to be able to capture the cur-
rent content of the variables with simple means. For these situations the
K-IDE offers many different possibilities to simplify the finding of errors.

5.7.1.1 Inspection of variables


In order to be able to view the current contents of a variable during a pro-
gram check, you can use the "Source code monitoring" function. To do

193
Manual of the K-IDE Using the K-IDE (Workflow)
this, activate the observation mode with the [Eye] button in the main
toolbar (see Chapter "3.2.2.5Switch on source code monitoring", page
37). Then, move the mouse over the variable to be inspected and wait un-
til the tooltip is displayed. There you can read the current content of the
variable.

In this case, the content is only read out if the mouse changes its position
and remains over a variable. To read the content again, the mouse must
be moved again.

5.7.1.2 Cyclical observation


Another possibility to read out the content of a variable is the cyclical ob-
servation. To do this, the relevant variable is added to the watch list. This
can be done from the text editor or from the variable list. The entry then
appears in the watch list.

Subsequently, cyclical monitoring can be activated with the green [Eye]


button in the toolbar above the watch list.

The content of the variables from the list is now read "as soon as possi-
ble". The reading speed is indicated by the pulsating heart symbol and is
displayed as a time indication next to the heart.

Please regard that a high number of variables in the list extends the cycle
time for reading each variable. For fast processes the list should therefore
be as short as possible. Please note that you can create several lists and
then switch back and forth between these lists (see chapter "3.8Inspection
list", page 77).

194
Manual of the K-IDE Using the K-IDE (Workflow)
5.7.1.3 Observe signals
A special form of the cyclic watch list is the function "Watch signals",
which can be called up via the [Flag] button in the toolbar above the
watch list. Since signals play an important role in most robot projects, the
watch list for signals is generated automatically.

Cyclical observation can also be started here via the green [Eye] button.

5.7.1.4 Checking the program sequence


In addition to checking the variable contents, there is another way to de-
tect errors in the program: a look at the "program flow log". This log is
written in the robot during program run and can be downloaded to the K-
IDE (see chapter "3.5.4.3Program execution protocol", page 60).

A look into this protocol is worthwhile, if you want to check if and how of-
ten a loop or query was passed.

Please note that the entries in the program flow trace always represent a
snapshot. If the program has been changed after the entry in the log (e.g.
by adding or deleting lines), the step number from the log may no longer
point to the command currently specified in the program text.

5.7.2 Troubleshooting after commissioning

Even after commissioning, errors may still occur during normal operation
of the robot. The causes of such errors are manifold and cannot always be
attributed solely to the robot itself. For example, the cause of an error can
also be due to incorrect operation, incorrect behavior of sensors or errors
of higher-level controllers.

Such errors are usually difficult to locate, because one is usually no longer
on site and has to rely on the error description of third parties.

195
Manual of the K-IDE Using the K-IDE (Workflow)
For these cases the K-IDE offers some possibilities which have already
been described above:

 The error log: This is where error messages from the robot are col-
lected and stored with many other useful details (see chapter
"3.5.4.1Error log", page 58).
 The operating protocol: This is where operating actions are saved
(see section "3.5.4.2Operating protocol", page 60).
 The program flow chart: Here the program flow is stored step by
step (see last chapter or chapter "3.5.4.3Program execution proto-
col", page 60).

In case of an error, always have the complete backup including all logs
sent to you or, in case of a remote maintenance, have a look at the above
mentioned log entries of the K-IDE. Please make sure to check the logs
with the current program version! A difference between your offline status
and the current program status in the robot could lead to wrong conclu-
sions!

5.8 Working with additional axes

If you are working with additional axes in your robot project, the K-IDE
must recognize this and manage an additional value in the position varia-
bles for each additional axis. This detection can be done in two ways:

1. Recognition based on the system data of the robot: The K-IDE anal-
yses the system data and finds possible settings for external axes.
2. Detection via the number of position values: If the K-IDE finds more
than 6 values in the variable area for position variables, it activates
a corresponding number of axes. This detection is for safety reasons
and should prevent the values of the external axes in the position
variables from being lost if no system data of the robot is available
for a project file.

If the K-IDE has detected additional axes, the values of these axes are
also displayed in the variable lists.

After activating the external axes in the robot, please make sure
that the current system data is transferred to the K-IDE project as

196
Manual of the K-IDE Using the K-IDE (Workflow)
soon as possible! In this way you prevent malfunctions and data
loss!

5.9 Working in "DuAro mode

The Kawasaki "DuAro" is a double arm robot. In order to cope with this
fact and the associated operating and configuration effort, the K-IDE sup-
ports special functionalities that differ from other Kawasaki robots.

Due to the presence of two arms that can be programmed and controlled
separately, there are changes in many places in the K-IDE compared to
robots with single arms:

1. Separate foreground programs for the upper and lower arm.


2. Different positions for the upper and lower arm.
3. Separate motor voltage.
4. Separate functions to pause, cancel, resume the foreground pro-
grams.
5. Increase the number of background programs to 8.
6. Special orders.

The K-IDE must be able to recognize from the system data of the robot
whether it is a DuAro or not, and in this case it activates the special func-
tions. The recognition is based on the controller type.

This manual does not cover all specifics of DuAro programming, but rather
refers to the corresponding Kawasaki manual.

Here are some screenshots of some changes of the DuAro mode compared
to other robots:

Position variables for the DuAro

197
Manual of the K-IDE Annex

Movement types for the DuAro

Killing the foreground programs

6 Annex

6.1 Short-cut commands in the K-IDE

The Short-Cut commands serve to make the user's operation easier. It is


no longer necessary to drag the mouse over the corresponding button, but
the key combination can be pressed directly to execute the corresponding
function. In the following all Short-Cut commands are listed, which are
used in the K-IDE:

Hotkey Impact / Meaning Reference


Change the info for the selected Context menu
F2
object for programs
F3 Send AS file to robot 38

Alt + F4 File/ Program Close 36


Opens the Connection window to
F4 36
connect a robot

198
Manual of the K-IDE Annex
Hotkey Impact / Meaning Reference
Disconnects the current connection
Ctrl + F4 37
to the robot
Shift + Ctrl +
Loading data from the robot 38
F5

Ctrl + F5 Load system data from the robot 38


Send everything to the robot
F6 38
(should be updated before)
Combine project with robot
F7 38
(marry)
Ctrl + F8 Start and execute main program 46

F8 Stop program 40, 41

Shift + F8 Continue program 40

F9 Save backup 38

Ctrl + F9 Save full backup 38

Shift + Ctrl +
Switch off the robot motor 39
F10

Ctrl + F10 Switch on the robot motor 39


Cancel background program and
Alt + F11 39
kill...
Ctrl + F11 Abort front program and kill... 39
Switches on the source code moni-
F12 37
toring
Switches off the source code moni-
Ctrl + F12 37
toring
Ctrl + C Copies the selected element(s) -

Ctrl + G Add new customer group Project tree

Ctrl + H Search and Replace Text editor

Ctrl + K Add new customer Project tree


New project /New
Ctrl + M Project tree
project file
Ctrl + N Create new file 34

Ctrl + O Open file... 34

199
Manual of the K-IDE Annex
Hotkey Impact / Meaning Reference
Create new project group /
Ctrl + P
current AS file as project file
Ctrl + S File Quick Save 35

Shift + Ctrl +
File Save As... 35
S

Ctrl + V Pasting from the clipboard -

Ctrl + W Close file 34

Del Deletes the selected object -


Adds a new entry to the selected
Ins -
list

Selecting the "default action" for


 the currently selected object
-

6.2 Hotkey commands in the text editor

Hotkey Impact / Significance


   
Home End Moves the text input cursor through the text
Page  Page 

Ctrl + F Search in text (“Find”)

Ctrl + H Search and replace in Text

Ctrl + G Shows the “Go to” dialogue

Ctrl + C Copy selected text to the clipboard


Paste text from the clipboard into the text editor
Ctrl + V
at the current position.
Ctrl + X Move selected text to the clipboard (cut)

Ctrl + A Select entire text

Ctrl + Z
Undo (Undo last change)
Alt + ←
Ctrl + R Redo (Re-apply last withdrawn change)

Tab Insert tab/indent

200
Manual of the K-IDE Annex
Hotkey Impact / Significance
Shift + Tab Remove tab/indent

Ctrl + Home Jump to the first character in the editor

Ctrl + End Jump to the last character in the editor

Shift + Ctrl +
Jump to the first character of the selected text
Home

Shift + Ctrl +
Jump to the last character of the selected text
End
Jumps to the beginning of the current word or to
Ctrl + 
the beginning of the previous word
Ctrl +  Jumps to the beginning of the next word
Jumps to the beginning of the current word or to
Shift + Ctrl +
the beginning of the previous word in the selected
 text
Shift + Ctrl + Jumps to the beginning of the next word in the se-
 lected text

Navigates to the last line where the cursor was lo-


Ctrl + -
cated
Shift + Ctrl + Navigates to the next line where the cur-sor was
located
-
Ctrl + U Converts the selected text to uppercase letters

Shift + Ctrl +
Converts the selected text to lowercase letters
U

Shift + Ctrl +
Turns the comment for the current line on or off
C
Ins Toggles between input and override mode

Ctrl + ← Deletes the word to the left of the cursor

Ctrl + Del Deletes the word to the right of the cursor

Alt + Enables column-oriented text selection

Shift + Alt +
Enables column-oriented text selection
   

201
Manual of the K-IDE Annex
Hotkey Impact / Significance
Alt +  Moves the current line up by one line

Alt +  Moves the current line down by one line

Shift + Del Deletes the current line

Ctrl + B Creates a bookmark at the current line

Shift + Ctrl +
Removes the bookmark at the current line
B
Ctrl + P Jumps to the next bookmark

Shift + Ctrl +
Jumps to the previous bookmark
P

Ctrl + Increases / decreases the font size

Ctrl + M Starts/stops a macro recording

Ctrl + E Executes the recorded macro

Alt + F +
Searches the nearest [character].
[character]
Ctrl +   Scrolls the text up/down

Ctrl + Num + Enlarges the font

Ctrl + Num - Reduces the font size

Alt + 0 (Null) Collapses all codefolding blocks

Shift + Alt +
Unfolds all codefolding blocks
0 (Null)

Alt + T Define current word as translation point

Alt + J Define current word as precision point

Alt + R Define current word as REAL variable

Alt + I Define current word as INTEGER variable

Alt + S Define current word as STRING variable

202
Manual of the K-IDE Annex
6.3 Motion types of the robot

JMOVE Moves the robot in a joint interpolation motion to a given posi-


tion. In the K-IDE an additional displacement to the selected
position can be set.

LMOVE Moves the robot in a linear interpolation motion to a given po-


sition. In the K-IDE an additional displacement to the selected
position can be set.

HMOVE Moves in a linear interpolation motion. (The wrist moves in a


joint interpolation movement.) In the K-IDE, an additional dis-
placement to the selected position can be set.

JAPPRO Approaching the target in a joint interpolation movement. A


distance in Z direction to the tool is specified here.

LAPPRO Approaching the target in a linear interpolation movement. A


distance in the Z direction to the tool is specified here.

JDEPART Leaves the current position in a joint interpolation movement.


A distance in Z direction to the tool is specified here.

LDEPART Leaves the current position in a linear interpolation movement.


A distance in Z-direction to the tool is specified here.

DRAW Moves by the specific value in the direction of the X, Y, Z axis


of the basic coordinates.

TDRAW Moves around the specific value in the X, Y, Z axis of the tool
coordinates.

DRIVE Moves a single axis by the specified value. For rotational axes
the unit is degrees, for translational axes the unit is mm.

HOME Moves the robot to the home position.

ALIGN Aligns the tool Z axis with the basic coordinate axis.

203
Manual of the K-IDE Annex

6.4 Editing menus of the interface panel

As already explained in the chapter Interface panel on page 64 you will


find the editing menus for the interface panel here. These are numbered
in the following. The respective menu can be found in the title, which is lo-
cated in the top figure to the right of the pencil symbol.

The [Pen] button enables editing in the editing menus. When pressing the
[Pen] button the grayed out areas to the right of the descriptions turn
white, indicating that the areas can be described and/or modified.

Basically, next to input fields where variable names or signal numbers can
be entered are the buttons for selecting and cross-referencing the varia-
bles. These are marked by [...] and [Magnifying glass]. If you enter a sig-
nal number known to the K-IDE, the signal number is replaced by the cor-
responding signal name after confirming the entry with [Ok].

For a more detailed description of the interface panel, please refer to the
chapter "9.0 Control Panel Screen" in the Robot Controller User's Manual
of the relevant robot controller.

204
Manual of the K-IDE Annex
6.4.1 Pilot Lamp

The first editing menu describes the "pilot lamp". Here you can use the
four labels to place a note on the symbol to indicate the usefulness of the
pilot lamp. In addition, the colors of the text, the background and the
lamp color can be set. The light itself operates with the signal that has
been selected.

205
Manual of the K-IDE Annex
6.4.2 Push button

The second editing menu deals with the Push Button. Here you can use
the four labels to place a note on the symbol, so that it becomes clear
what use the Signal button has. As with the first editing field, the colors
can also be set here. Furthermore, you can select a signal here that is
switched on as long as the button is held down. You can use the same
functions as in the first menu for editing and overview purposes.

206
Manual of the K-IDE Annex
6.4.3 Push Button with lamp

The third editing menu is extended with a signal lamp in contrast to the
second one. This function combines the first and second item. The previ-
ous functions are also available here with the text hint, color individualiza-
tion and selection of signals.

207
Manual of the K-IDE Annex
6.4.4 Two-position switch

In the editing menu of the fourth point you can create a switch for two po-
sitions. Again, the customization options are available with the labels and
the color selection for the editing field. Pressing the button switches be-
tween the two signals, which are entered below.

There are two ways to display the switch: as a rotary knob or as a slider.

208
Manual of the K-IDE Annex
6.4.5 Three-position switch

The fifth edit box option is similar to the fourth. However, here you can
add another signal to the field so that you can select from three signals
with the button. The customization options are identical to the fourth edit
field option.

209
Manual of the K-IDE Annex
6.4.6 Digital switch

The sixth editing field belongs to the Digital Switch. Here you can write a
text note with the labels and design the button individually with the color
elements.

For the function select a start signal with the number of signals.

210
Manual of the K-IDE Annex
6.4.7 Digital display

In the editing menu of the seventh point you can set up a digital display.
Here you can compose a text note with the labels and design the button
individually with the color elements.

6.4.8 Variable display

In the eighth editing menu, you can select a variable in addition to the in-
dividualization of the field, which is always displayed.

211
Manual of the K-IDE Annex
6.4.9 String window

The ninth editing menu allows you to use one or more surfaces for text
output. The background color can be set for this purpose.

6.4.10 Monitor Command

In the tenth editing option, you can design a field for the Monitor Com-
mand. Here you can design a descriptive text using the labels, vary the
different colors, and enter a command that is executed by pressing the
control element.

212
Manual of the K-IDE Annex
6.4.11 Palletiser Icon

The palletizer icon alternates between On and Off. In this dialog box, you
can define the labeling with the labels, vary the different text colors and
define the respective signals for the panel.

6.4.12 String Data Display

The String Data Display allows you to specify a character string. All rele-
vant customization options are available for the field.

213
Manual of the K-IDE Annex
6.4.13 Two-position switch with lamp

With the two-position switch with lamp you can write a text note with the
labels and customize the button with the color elements. By turning the
switch, either the "signal left" or the "signal right" is output, depending on
the position. Alternatively, this control element can also be displayed as a
slider or slide button in addition to the rotary knob.

214
Manual of the K-IDE Annex
6.4.14 Three position switch with lamp

The three-position switch with lamp is an extension to the switch listed


above. In addition, it is possible to select three signals.

215
Manual of the K-IDE Annex
6.4.15 Servo Dispenser

With the "Servo Dispenser" you can write a text note with the labels and
design the symbol individually with the colour elements. You can also se-
lect various symbols to be displayed on the button of the display element.

216
Manual of the K-IDE Annex
6.5 Tab Actions

Below you will find all the actions that can be performed from the editor
area in the tab bar.

 A single left click on a tab will show the selected editor in front
 Click and hold the left mouse button to move the tab to another lo-
cation in the tab bar
 Right-click on a tab to open the context menu
 Middle click on a tab to close the tab and remove it from the tab bar

The first action you can perform on the tab bar is a simple left mouse click
on an inactive tab, after pressing the mouse button it is activated, high-
lighted in white and its editor area is opened. The previous active tab is
greyed out.



With the mouse button pressed down on the active tab, the order can be
moved as desired. Make sure that only the active tab can be moved.

Right-clicking on a tab opens the context menu, which contains numerous


items. Among them are the actions to open the selected tab in a separate
window, close the selected tab, close all other tabs, or close all tabs.

217
Manual of the K-IDE Annex
You can close a selected tab directly by pressing the middle mouse button.

218
Kawasaki Robotics
MANUAL OF THE K-IDE

November 2021: 2nd edition

Publication: KAWASAKI Robotics EMEA

Copyright © 2021 by KAWASAKI Robotics EMEA


All rights reserved.

You might also like